{"version":3,"file":"Button.mjs","names":["Button","AntdButton"],"sources":["../../src/Button/Button.tsx"],"sourcesContent":["'use client';\n\nimport { Button as AntdButton } from 'antd';\nimport { cx, useThemeMode } from 'antd-style';\nimport { Loader2Icon } from 'lucide-react';\nimport { type FC, isValidElement } from 'react';\n\nimport Icon from '@/Icon';\n\nimport { variants } from './style';\nimport type { ButtonProps } from './type';\n\nconst Button: FC<ButtonProps> = ({\n  icon,\n  variant,\n  glass,\n  shadow,\n  loading,\n  className,\n  type,\n  color,\n  danger,\n  children,\n  iconProps,\n  ref,\n  ...rest\n}) => {\n  const { isDarkMode } = useThemeMode();\n\n  const defaultVariant = type ? undefined : variant || (isDarkMode ? 'filled' : 'outlined');\n\n  return (\n    <AntdButton\n      color={color || (defaultVariant === 'filled' ? 'default' : undefined)}\n      danger={danger}\n      ref={ref}\n      type={type}\n      variant={defaultVariant}\n      className={cx(\n        variants({\n          glass,\n          shadow,\n        }),\n        className,\n      )}\n      icon={\n        icon &&\n        (isValidElement(icon) ? (\n          icon\n        ) : (\n          <Icon icon={icon} {...iconProps} size={iconProps?.size || { size: '1.2em' }} />\n        ))\n      }\n      loading={\n        loading\n          ? {\n              icon: (\n                <Icon\n                  icon={Loader2Icon}\n                  {...iconProps}\n                  spin\n                  size={iconProps?.size || { size: '1.2em' }}\n                />\n              ),\n            }\n          : false\n      }\n      {...rest}\n    >\n      {children}\n    </AntdButton>\n  );\n};\n\nexport default Button;\n"],"mappings":";;;;;;;;;AAYA,MAAMA,YAA2B,EAC/B,MACA,SACA,OACA,QACA,SACA,WACA,MACA,OACA,QACA,UACA,WACA,KACA,GAAG,WACC;CACJ,MAAM,EAAE,eAAe,cAAc;CAErC,MAAM,iBAAiB,OAAO,KAAA,IAAY,YAAY,aAAa,WAAW;AAE9E,QACE,oBAACC,QAAD;EACE,OAAO,UAAU,mBAAmB,WAAW,YAAY,KAAA;EACnD;EACH;EACC;EACN,SAAS;EACT,WAAW,GACT,SAAS;GACP;GACA;GACD,CAAC,EACF,UACD;EACD,MACE,SACC,eAAe,KAAK,GACnB,OAEA,oBAAC,MAAD;GAAY;GAAM,GAAI;GAAW,MAAM,WAAW,QAAQ,EAAE,MAAM,SAAS;GAAI,CAAA;EAGnF,SACE,UACI,EACE,MACE,oBAAC,MAAD;GACE,MAAM;GACN,GAAI;GACJ,MAAA;GACA,MAAM,WAAW,QAAQ,EAAE,MAAM,SAAS;GAC1C,CAAA,EAEL,GACD;EAEN,GAAI;EAEH;EACU,CAAA"}