@undp/design-system-react
Version:
React based design system for UNDP
1 lines • 4.83 kB
Source Map (JSON)
{"version":3,"file":"Breadcrumb.cjs","names":[],"sources":["../src/components/ui/breadcrumb.tsx"],"sourcesContent":["import { MoreHorizontal } from 'lucide-react';\nimport React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nconst Breadcrumb = React.forwardRef<HTMLElement, React.ComponentPropsWithoutRef<'nav'>>(\n ({ ...props }, ref) => <nav ref={ref} aria-label='breadcrumb' {...props} />,\n);\nBreadcrumb.displayName = 'Breadcrumb';\n\nconst BreadcrumbList = React.forwardRef<HTMLOListElement, React.ComponentPropsWithoutRef<'ol'>>(\n ({ className, ...props }, ref) => (\n <ol\n {...props}\n ref={ref}\n className={cn(\n 'flex list-none flex-wrap items-center gap-1.5 break-words font-semibold text-xs uppercase sm:gap-2.5',\n className,\n )}\n />\n ),\n);\nBreadcrumbList.displayName = 'BreadcrumbList';\n\nconst BreadcrumbItem = React.forwardRef<HTMLLIElement, React.ComponentPropsWithoutRef<'li'>>(\n ({ className, ...props }, ref) => (\n <li {...props} ref={ref} className={cn('inline-flex items-center gap-1.5', className)} />\n ),\n);\nBreadcrumbItem.displayName = 'BreadcrumbItem';\n\nconst BreadcrumbLink = React.forwardRef<\n HTMLAnchorElement,\n React.ComponentPropsWithoutRef<'a'> & { variant?: 'default' | 'reverse' }\n>(({ className, variant = 'default', ...props }, ref) => {\n const Comp = 'a';\n\n const combinedClasses = cn(\n 'transition-all',\n variant === 'reverse'\n ? 'text-content-reverse hover:opacity-80'\n : 'text-primary hover:text-primary-hover',\n className,\n );\n\n return <Comp ref={ref} className={combinedClasses} {...props} />;\n});\nBreadcrumbLink.displayName = 'BreadcrumbLink';\n\nconst BreadcrumbPage = React.forwardRef<\n HTMLSpanElement,\n React.ComponentPropsWithoutRef<'span'> & { variant?: 'default' | 'reverse' }\n>(({ className, variant = 'default', ...props }, ref) => {\n return (\n <span\n {...props}\n ref={ref}\n aria-disabled='true'\n aria-current='page'\n className={cn(\n 'text-xs',\n variant === 'reverse' ? 'text-content-reverse' : 'text-content-primary',\n className,\n )}\n />\n );\n});\nBreadcrumbPage.displayName = 'BreadcrumbPage';\n\nfunction BreadcrumbSeparator({ variant = 'default' }: { variant?: 'default' | 'reverse' }) {\n return (\n <li role='presentation' aria-hidden='true'>\n <div\n className={cn(\n variant === 'reverse' ? 'text-content-reverse text-xs' : 'text-primary text-xs',\n )}\n >\n /\n </div>\n </li>\n );\n}\nBreadcrumbSeparator.displayName = 'BreadcrumbSeparator';\n\nfunction BreadcrumbEllipsis({\n className,\n variant = 'default',\n ...props\n}: React.ComponentProps<'span'> & { variant?: 'default' | 'reverse' }) {\n return (\n <span\n {...props}\n role='presentation'\n aria-hidden='true'\n className={cn(\n 'flex h-9 w-9 items-center justify-center',\n variant === 'reverse' ? 'text-content-reverse' : 'text-content-primary',\n className,\n )}\n >\n <MoreHorizontal className='h-4 w-4' />\n <span className='sr-only'>More</span>\n </span>\n );\n}\nBreadcrumbEllipsis.displayName = 'BreadcrumbElipssis';\n\nexport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n};\n"],"mappings":"kQAKA,IAAM,EAAa,EAAA,QAAM,YACtB,CAAE,GAAG,GAAS,KAAQ,EAAA,EAAA,IAAA,CAAC,MAAD,CAAU,MAAK,aAAW,aAAa,GAAI,CAAQ,CAAA,CAC5E,EACA,EAAW,YAAc,aAEzB,IAAM,EAAiB,EAAA,QAAM,YAC1B,CAAE,YAAW,GAAG,GAAS,KACxB,EAAA,EAAA,IAAA,CAAC,KAAD,CACE,GAAI,EACC,MACL,UAAW,EAAA,EACT,uGACA,CACF,CACD,CAAA,CAEL,EACA,EAAe,YAAc,iBAE7B,IAAM,EAAiB,EAAA,QAAM,YAC1B,CAAE,YAAW,GAAG,GAAS,KACxB,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,GAAI,EAAY,MAAK,UAAW,EAAA,EAAG,mCAAoC,CAAS,CAAI,CAAA,CAE5F,EACA,EAAe,YAAc,iBAE7B,IAAM,EAAiB,EAAA,QAAM,YAG1B,CAAE,YAAW,UAAU,UAAW,GAAG,GAAS,KAWxC,EAAA,EAAA,IAAA,CAAC,IAAD,CAAW,MAAK,UARC,EAAA,EACtB,iBACA,IAAY,UACR,wCACA,wCACJ,CAGgC,EAAiB,GAAI,CAAQ,CAAA,CAChE,EACD,EAAe,YAAc,iBAE7B,IAAM,EAAiB,EAAA,QAAM,YAG1B,CAAE,YAAW,UAAU,UAAW,GAAG,GAAS,KAE7C,EAAA,EAAA,IAAA,CAAC,OAAD,CACE,GAAI,EACC,MACL,gBAAc,OACd,eAAa,OACb,UAAW,EAAA,EACT,UACA,IAAY,UAAY,uBAAyB,uBACjD,CACF,CACD,CAAA,CAEJ,EACD,EAAe,YAAc,iBAE7B,SAAS,EAAoB,CAAE,UAAU,WAAkD,CACzF,OACE,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,KAAK,eAAe,cAAY,iBAClC,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,UAAW,EAAA,EACT,IAAY,UAAY,+BAAiC,sBAC3D,WACD,GAEI,CAAA,CACH,CAAA,CAER,CACA,EAAoB,YAAc,sBAElC,SAAS,EAAmB,CAC1B,YACA,UAAU,UACV,GAAG,GACkE,CACrE,OACE,EAAA,EAAA,KAAA,CAAC,OAAD,CACE,GAAI,EACJ,KAAK,eACL,cAAY,OACZ,UAAW,EAAA,EACT,2CACA,IAAY,UAAY,uBAAyB,uBACjD,CACF,WARF,EAUE,EAAA,EAAA,IAAA,CAAC,EAAA,EAAD,CAAgB,UAAU,SAAW,CAAA,GACrC,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,mBAAU,MAAU,CAAA,CAChC,GAEV,CACA,EAAmB,YAAc"}