import "../../../chunks/chunk.QU3DSPNU.js";
import { createElement, useRef } from "react";
import { GdsButton as GdsButtonClass } from "../../../components/button/button.component.js";
import { getReactComponent, useControlledValue } from "../../../utils/react.js";
const GdsButton = (props) => {
  GdsButtonClass.define();
  const JSXElement = getReactComponent("gds-button");
  const internalRef = useRef(null);
  const ref = props.ref || internalRef;
  useControlledValue(
    ref,
    props.value,
    props.defaultValue,
    props.onChange,
    props.onInput
  );
  const { onChange, onInput, ref: _ref, ...restProps } = props;
  const propsWithClass = { ...restProps, class: props.className, ref };
  return createElement(JSXElement, propsWithClass);
};
GdsButton.displayName = "GdsButton";
export {
  GdsButton
};
