{"version":3,"file":"ActionIconGroup.mjs","sources":["../../../../src/components/ActionIcon/ActionIconGroup/ActionIconGroup.tsx"],"sourcesContent":["import {\n  Box,\n  BoxProps,\n  createVarsResolver,\n  factory,\n  Factory,\n  rem,\n  StylesApiProps,\n  useProps,\n  useStyles,\n} from '../../../core';\nimport { ActionIconGroupStyle } from '../ActionIcon.css';\n\nexport type ActionIconGroupStylesNames = 'group';\nexport type ActionIconGroupCssVariables = {\n  group: '--ai-border-width';\n};\n\nexport interface ActionIconGroupProps extends BoxProps, StylesApiProps<ActionIconGroupFactory> {\n  /** `ActionIcon` components only */\n  children?: React.ReactNode;\n\n  /** Controls group orientation, `'horizontal'` by default */\n  orientation?: 'horizontal' | 'vertical';\n\n  /** `border-width` of the child `ActionIcon` components. Default value in `1` */\n  borderWidth?: number | string;\n}\n\nexport type ActionIconGroupFactory = Factory<{\n  props: ActionIconGroupProps;\n  ref: HTMLDivElement;\n  stylesNames: ActionIconGroupStylesNames;\n  vars: ActionIconGroupCssVariables;\n}>;\n\nconst defaultProps: Partial<ActionIconGroupProps> = {\n  orientation: 'horizontal',\n};\n\nconst varsResolver = createVarsResolver<ActionIconGroupFactory>((_, { borderWidth }) => ({\n  group: { '--ai-border-width': rem(borderWidth) },\n}));\n\nexport const ActionIconGroup = factory<ActionIconGroupFactory>((_props, ref) => {\n  const props = useProps('ActionIconGroup', defaultProps, _props);\n  const {\n    className,\n    style,\n    classNames,\n    styles,\n    unstyled,\n    orientation,\n    vars,\n    borderWidth,\n    variant,\n    mod,\n    ...others\n  } = useProps('ActionIconGroup', defaultProps, _props);\n\n  const getStyles = useStyles<ActionIconGroupFactory>({\n    name: 'ActionIconGroup',\n    props,\n    classes: {\n      group: ActionIconGroupStyle,\n    },\n    className,\n    style,\n    classNames,\n    styles,\n    unstyled,\n    vars,\n    varsResolver,\n    rootSelector: 'group',\n  });\n\n  return (\n    <Box\n      {...getStyles('group')}\n      ref={ref}\n      variant={variant}\n      mod={[{ 'data-orientation': orientation }, mod]}\n      role=\"group\"\n      {...others}\n    />\n  );\n});\n\nActionIconGroup.displayName = '@raikou/core/ActionIconGroup';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAoCA,MAAM,YAA8C,GAAA;AAAA,EAClD,WAAa,EAAA;AACf,CAAA;AAEA,MAAM,eAAe,kBAA2C,CAAA,CAAC,CAAG,EAAA,EAAE,aAAmB,MAAA;AAAA,EACvF,KAAO,EAAA,EAAE,mBAAqB,EAAA,GAAA,CAAI,WAAW,CAAE;AACjD,CAAE,CAAA,CAAA;AAEK,MAAM,eAAkB,GAAA,OAAA,CAAgC,CAAC,MAAA,EAAQ,GAAQ,KAAA;AAC9E,EAAA,MAAM,KAAQ,GAAA,QAAA,CAAS,iBAAmB,EAAA,YAAA,EAAc,MAAM,CAAA;AAC9D,EAAM,MAAA;AAAA,IACJ,SAAA;AAAA,IACA,KAAA;AAAA,IACA,UAAA;AAAA,IACA,MAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA;AAAA,IACA,IAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACD,GAAA,QAAA,CAAS,iBAAmB,EAAA,YAAA,EAAc,MAAM,CAAA;AAEpD,EAAA,MAAM,YAAY,SAAkC,CAAA;AAAA,IAClD,IAAM,EAAA,iBAAA;AAAA,IACN,KAAA;AAAA,IACA,OAAS,EAAA;AAAA,MACP,KAAO,EAAA;AAAA,KACT;AAAA,IACA,SAAA;AAAA,IACA,KAAA;AAAA,IACA,UAAA;AAAA,IACA,MAAA;AAAA,IACA,QAAA;AAAA,IACA,IAAA;AAAA,IACA,YAAA;AAAA,IACA,YAAc,EAAA;AAAA,GACf,CAAA;AAED,EACE,uBAAA,GAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MACE,GAAG,UAAU,OAAO,CAAA;AAAA,MACrB,GAAA;AAAA,MACA,OAAA;AAAA,MACA,KAAK,CAAC,EAAE,kBAAoB,EAAA,WAAA,IAAe,GAAG,CAAA;AAAA,MAC9C,IAAK,EAAA,OAAA;AAAA,MACJ,GAAG;AAAA;AAAA,GACN;AAEJ,CAAC;AAED,eAAA,CAAgB,WAAc,GAAA,8BAAA;;;;"}