{"version":3,"file":"IconButton.cjs","sources":["../src/Button/IconButton.tsx"],"sourcesContent":["import type { ButtonOwnerState as ButtonUnstyledOwnerState } from '@mui/base/Button';\n\nimport type {\n  ComponentProps,\n  SlotComponentPropsWithoutOverride,\n} from '../components.ts';\nimport { assocDefaultStyle } from '../utils/assign-default-style.ts';\nimport { Button } from './Button.tsx';\n\ninterface SlotProps {\n  root?: SlotComponentPropsWithoutOverride<'button', ButtonUnstyledOwnerState>;\n}\n\nexport type IconButtonProps = ComponentProps<SlotProps>;\n\nexport function IconButton({\n  children,\n  'data-testid': testId,\n  disableDefaultClasses,\n  slotProps: givenSlotProps,\n  ...rest\n}: IconButtonProps) {\n  let slotProps = givenSlotProps;\n\n  if (!disableDefaultClasses) {\n    slotProps = assocDefaultStyle<SlotProps>({\n      slotWithDefaultClasses: {\n        root: 'tw-rounded-3xl',\n      },\n    })(givenSlotProps);\n  }\n\n  return (\n    <Button\n      data-testid={testId ?? 'busybox-icon-button'}\n      disableDefaultClasses={disableDefaultClasses}\n      slotProps={slotProps}\n      {...rest}\n    >\n      {children}\n    </Button>\n  );\n}\n"],"names":["IconButton","children","testId","disableDefaultClasses","givenSlotProps","rest","slotProps","assocDefaultStyle","jsx","Button"],"mappings":"ynBAeO,SAASA,EAAW,CACzB,SAAAC,EACA,cAAeC,EACf,sBAAAC,EACA,UAAWC,EACX,GAAGC,CACL,EAAoB,CAClB,IAAIC,EAAYF,EAEhB,OAAKD,IACHG,EAAYC,EAAAA,kBAA6B,CACvC,uBAAwB,CACtB,KAAM,gBACR,CAAA,CACD,EAAEH,CAAc,GAIjBI,EAAA,kBAAA,IAACC,EAAA,OAAA,CACC,cAAaP,GAAU,sBACvB,sBAAAC,EACA,UAAAG,EACC,GAAGD,EAEH,SAAAJ,CAAA,CAAA,CAGP"}