import { jsx } from 'react/jsx-runtime';
import { forwardRef, Button as Button$1, Tooltip } from '@chakra-ui/react';

var __defProp = Object.defineProperty;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
  for (var prop in b || (b = {}))
    if (__hasOwnProp.call(b, prop))
      __defNormalProp(a, prop, b[prop]);
  if (__getOwnPropSymbols)
    for (var prop of __getOwnPropSymbols(b)) {
      if (__propIsEnum.call(b, prop))
        __defNormalProp(a, prop, b[prop]);
    }
  return a;
};
var __objRest = (source, exclude) => {
  var target = {};
  for (var prop in source)
    if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
      target[prop] = source[prop];
  if (source != null && __getOwnPropSymbols)
    for (var prop of __getOwnPropSymbols(source)) {
      if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
        target[prop] = source[prop];
    }
  return target;
};
const BUTTON_VARIANTS = [
  "solid",
  "solid-brand",
  "brand",
  // alias/shortcut to 'solid-brand'
  "outline",
  "outline-delete",
  "delete",
  "link",
  "icon",
  "ghost",
  "ghost-white",
  "subtle",
  "unstyled",
  "inputOutline",
  "nav"
];
const DEFAULT_BUTTON_VARIANT = "solid";
const DEFAULT_BUTTON_SIZE = "md";
const Button = forwardRef((props, ref) => {
  let _a = props, { variant = DEFAULT_BUTTON_VARIANT, size = DEFAULT_BUTTON_SIZE, tooltip } = _a, rest = __objRest(_a, ["variant", "size", "tooltip"]);
  if (typeof variant === "string") {
    variant = BUTTON_VARIANTS[BUTTON_VARIANTS.indexOf(variant)] || "solid";
  }
  const button = /* @__PURE__ */ jsx(Button$1, __spreadValues({ variant, size, ref }, rest));
  return tooltip ? /* @__PURE__ */ jsx(Tooltip, { label: tooltip, placement: "bottom", hasArrow: true, color: "white", children: button }) : button;
});
Button.displayName = "RPButton";

export { Button as default };
//# sourceMappingURL=Button.js.map
