UNPKG

koval-ui

Version:

React components collection with minimalistic design. Supports theming, layout, and input validation.

1 lines 1.48 kB
{"version":3,"file":"TabButton.cjs","sources":["../../../../src/lib/Tabs/TabButton.tsx"],"sourcesContent":["import type {FC, HTMLAttributes} from 'react';\nimport {useCallback} from 'react';\nimport classNames from 'classnames';\n\nimport classes from './Tabs.module.css';\n\ntype Props = {\n tabName: string;\n activeName: string;\n onClick: (tabName: string) => void;\n icon?: FC<HTMLAttributes<HTMLOrSVGElement> & unknown>;\n};\n\nexport const TabButton: FC<Props> = ({tabName, onClick, icon: Icon, activeName}) => {\n const handleClick = useCallback(() => {\n onClick(tabName);\n }, [onClick, tabName]);\n return (\n <button\n type=\"button\"\n key={tabName}\n onClick={handleClick}\n className={classNames(classes.button, {[classes.selected]: activeName === tabName})}>\n {Icon && <Icon className={classes.icon} />}\n {tabName}\n </button>\n );\n};\n"],"names":["TabButton","tabName","onClick","Icon","activeName","handleClick","useCallback","jsxs","classNames","classes","jsx"],"mappings":"gNAaaA,EAAuB,CAAC,CAAC,QAAAC,EAAS,QAAAC,EAAS,KAAMC,EAAM,WAAAC,KAAgB,CAC1E,MAAAC,EAAcC,EAAAA,YAAY,IAAM,CAClCJ,EAAQD,CAAO,CAAA,EAChB,CAACC,EAASD,CAAO,CAAC,EAEjB,OAAAM,EAAA,KAAC,SAAA,CACG,KAAK,SAEL,QAASF,EACT,UAAWG,EAAWC,EAAA,QAAQ,OAAQ,CAAC,CAACA,EAAAA,QAAQ,QAAQ,EAAGL,IAAeH,EAAQ,EACjF,SAAA,CAAAE,GAASO,EAAA,IAAAP,EAAA,CAAK,UAAWM,EAAAA,QAAQ,KAAM,EACvCR,CAAA,CAAA,EAJIA,CAKT,CAER"}