"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var BoxedIcon_stories_exports = {};
__export(BoxedIcon_stories_exports, {
  BoxedIcon: () => BoxedIcon,
  default: () => BoxedIcon_stories_default
});
module.exports = __toCommonJS(BoxedIcon_stories_exports);
var import_react = __toESM(require("react"));
var import_Icon = __toESM(require("./Icon"));
var import_BoxedIcon = __toESM(require("./BoxedIcon"));
const ExampleIcon = ({ size, color, name }) => /* @__PURE__ */ import_react.default.createElement(import_Icon.default, { name, ...{ size, color } });
const Story = {
  title: "Asorted/Icons/BoxedIcon",
  component: import_BoxedIcon.default,
  argTypes: {
    exampleIconName: {
      type: "enum",
      description: "[Not a BoxedIcon prop, only for this Storybook example] - Icon name. Value is passed to the `Icon` component of this UI library which is then used for the `Icon` prop.",
      options: import_Icon.iconNames,
      control: { type: "select" }
    },
    exampleBadgeName: {
      type: "enum",
      description: "[Not a BoxedIcon prop, only for this Storybook example] - Badge icon name. Value is passed to the `Icon` component of this UI library which is then used for the `Badge` prop.",
      options: import_Icon.iconNames,
      control: { type: "select" }
    },
    exampleBadgeEnabled: {
      type: "boolean",
      description: "[Not a BoxedIcon prop, only for this Storybook example] - Controls whether a `Badge` prop is passed to the `BoxedIcon` component."
    },
    Badge: {
      control: false
    },
    Icon: {
      control: false
    },
    iconColor: {
      type: "string",
      control: { type: "color" }
    },
    badgeColor: {
      type: "string",
      control: { type: "color" }
    },
    borderColor: {
      type: "string",
      control: { type: "color" }
    },
    iconSize: {
      type: "number"
    },
    badgeSize: {
      type: "number"
    },
    size: {
      type: "number"
    }
  },
  args: {
    exampleIconName: "Activity",
    exampleBadgeName: "CircledCheckSolid",
    exampleBadgeEnabled: true,
    iconColor: "hsla(110, 50%, 57%, 1)",
    badgeColor: "hsla(110, 50%, 57%, 1)",
    borderColor: "success.c40",
    iconSize: import_BoxedIcon.DEFAULT_ICON_SIZE,
    badgeSize: import_BoxedIcon.DEFAULT_BADGE_SIZE,
    size: import_BoxedIcon.DEFAULT_BOX_SIZE
  }
};
var BoxedIcon_stories_default = Story;
const BoxedIconTemplate = (args) => {
  const badgeColor = args.badgeColor;
  const badgeSize = args.badgeSize;
  const borderColor = args.borderColor;
  const iconColor = args.iconColor;
  const IconComp = args.Icon || ((props) => /* @__PURE__ */ import_react.default.createElement(ExampleIcon, { ...props, name: args.exampleIconName }));
  const BadgeComp = args.Badge || ((props) => /* @__PURE__ */ import_react.default.createElement(ExampleIcon, { ...props, name: args.exampleBadgeName }));
  const iconSize = args.iconSize;
  const size = args.size;
  return /* @__PURE__ */ import_react.default.createElement(
    import_BoxedIcon.default,
    {
      Icon: IconComp,
      Badge: args.exampleBadgeEnabled ? BadgeComp : void 0,
      badgeColor,
      badgeSize,
      borderColor,
      iconColor,
      iconSize,
      size
    }
  );
};
const BoxedIcon = BoxedIconTemplate.bind({});
//# sourceMappingURL=BoxedIcon.stories.js.map
