flowbite-react
Version:
Official React components built for Flowbite and Tailwind CSS
1 lines • 2.98 kB
Source Map (JSON)
{"version":3,"file":"BreadcrumbItem.cjs","sources":["../../../../src/components/Breadcrumb/BreadcrumbItem.tsx"],"sourcesContent":["import type { ComponentProps, FC } from \"react\";\nimport { forwardRef } from \"react\";\nimport { HiOutlineChevronRight } from \"react-icons/hi\";\nimport { twMerge } from \"tailwind-merge\";\nimport { mergeDeep } from \"../../helpers/merge-deep\";\nimport { getTheme } from \"../../theme-store\";\nimport type { DeepPartial } from \"../../types\";\nimport type { FlowbiteBoolean } from \"../Flowbite\";\n\nexport interface FlowbiteBreadcrumbItemTheme {\n base: string;\n chevron: string;\n href: FlowbiteBoolean;\n icon: string;\n}\n\nexport interface BreadcrumbItemProps extends Omit<ComponentProps<\"li\">, \"ref\"> {\n href?: string;\n icon?: FC<ComponentProps<\"svg\">>;\n theme?: DeepPartial<FlowbiteBreadcrumbItemTheme>;\n}\n\nexport const BreadcrumbItem = forwardRef<HTMLAnchorElement | HTMLSpanElement, BreadcrumbItemProps>(\n ({ children, className, href, icon: Icon, theme: customTheme = {}, ...props }, ref) => {\n const isLink = typeof href !== \"undefined\";\n const Component = isLink ? \"a\" : \"span\";\n\n const theme = mergeDeep(getTheme().breadcrumb.item, customTheme);\n\n return (\n <li className={twMerge(theme.base, className)} {...props}>\n <HiOutlineChevronRight aria-hidden className={theme.chevron} data-testid=\"flowbite-breadcrumb-separator\" />\n <Component\n ref={ref as never}\n className={theme.href[isLink ? \"on\" : \"off\"]}\n data-testid=\"flowbite-breadcrumb-item\"\n href={href}\n >\n {Icon && <Icon aria-hidden className={theme.icon} />}\n {children}\n </Component>\n </li>\n );\n },\n);\n\nBreadcrumbItem.displayName = \"Breadcrumb.Item\";\n"],"names":["forwardRef","mergeDeep","getTheme","jsxs","twMerge","jsx","HiOutlineChevronRight"],"mappings":";;;;;;;;;AAOY,MAAC,cAAc,GAAGA,gBAAU;AACxC,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAK;AACzF,IAAI,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,WAAW,CAAC;AAC/C,IAAI,MAAM,SAAS,GAAG,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC;AAC5C,IAAI,MAAM,KAAK,GAAGC,mBAAS,CAACC,cAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACrE,IAAI,uBAAuBC,eAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAEC,qBAAO,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE;AACvG,sBAAsBC,cAAG,CAACC,wBAAqB,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,+BAA+B,EAAE,CAAC;AACnJ,sBAAsBH,eAAI;AAC1B,QAAQ,SAAS;AACjB,QAAQ;AACR,UAAU,GAAG;AACb,UAAU,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC;AACtD,UAAU,aAAa,EAAE,0BAA0B;AACnD,UAAU,IAAI;AACd,UAAU,QAAQ,EAAE;AACpB,YAAY,IAAI,oBAAoBE,cAAG,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;AAC7F,YAAY,QAAQ;AACpB,WAAW;AACX,SAAS;AACT,OAAO;AACP,KAAK,EAAE,CAAC,CAAC;AACT,GAAG;AACH,EAAE;AACF,cAAc,CAAC,WAAW,GAAG,iBAAiB;;;;"}