koval-ui
Version:
React components collection with minimalistic design. Supports theming, layout, and input validation.
1 lines • 1.71 kB
Source Map (JSON)
{"version":3,"file":"ButtonGroup.cjs","sources":["../../../../src/lib/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["import type {ReactNode} from 'react';\nimport {forwardRef} from 'react';\nimport classNames from 'classnames';\n\nimport type {DataAttributes, LibraryProps} from '@/internal/LibraryAPI';\n\nimport classes from './ButtonGroup.module.css';\n\nenum Layouts {\n horizontal = 'horizontal',\n vertical = 'vertical',\n}\n\nexport type Props = DataAttributes &\n LibraryProps & {\n children?: ReactNode;\n layout?: keyof typeof Layouts;\n };\n\nexport const ButtonGroup = forwardRef<HTMLDivElement, Props>(\n ({children, className, layout = Layouts.horizontal, ...nativeProps}, ref) => {\n return (\n <div\n {...nativeProps}\n className={classNames(\n classes.buttonGroup,\n {\n [classes.horizontal]: layout === Layouts.horizontal,\n [classes.vertical]: layout === Layouts.vertical,\n },\n className\n )}\n ref={ref}>\n {children}\n </div>\n );\n }\n);\n\nButtonGroup.displayName = 'ButtonGroup';\n"],"names":["ButtonGroup","forwardRef","children","className","layout","nativeProps","ref","jsx","classNames","classes"],"mappings":"uNAmBaA,EAAcC,EAAA,WACvB,CAAC,CAAC,SAAAC,EAAU,UAAAC,EAAW,OAAAC,EAAS,aAAoB,GAAGC,CAAW,EAAGC,IAE7DC,EAAA,IAAC,MAAA,CACI,GAAGF,EACJ,UAAWG,EACPC,EAAAA,QAAQ,YACR,CACI,CAACA,EAAA,QAAQ,UAAU,EAAGL,IAAW,aACjC,CAACK,EAAA,QAAQ,QAAQ,EAAGL,IAAW,UACnC,EACAD,CACJ,EACA,IAAAG,EACC,SAAAJ,CAAA,CACL,CAGZ,EAEAF,EAAY,YAAc"}