@mdigital_ui/ui 0.2.6 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +1023 -341
- package/dist/accordion/index.js +3 -3
- package/dist/avatar/index.js +4 -0
- package/dist/avatar/index.js.map +1 -0
- package/dist/badge/index.js +3 -3
- package/dist/breadcrumbs/index.js +5 -5
- package/dist/button/index.js +4 -4
- package/dist/button-group/index.js +2 -2
- package/dist/card/index.js +2 -2
- package/dist/carousel/index.js +2 -2
- package/dist/cascader/index.js +2 -2
- package/dist/chart/index.js +2 -2
- package/dist/checkbox/index.js +3 -3
- package/dist/checkbox-group/index.js +2 -2
- package/dist/{chunk-GFQXGLFD.js → chunk-22MY7IWD.js} +82 -62
- package/dist/chunk-22MY7IWD.js.map +1 -0
- package/dist/{chunk-IRNJZ754.js → chunk-2J57G7XG.js} +76 -18
- package/dist/chunk-2J57G7XG.js.map +1 -0
- package/dist/{chunk-SOIF4SHB.js → chunk-2NYVRAG4.js} +24 -15
- package/dist/chunk-2NYVRAG4.js.map +1 -0
- package/dist/{chunk-3WVJE5MF.js → chunk-2OUGJBXK.js} +19 -12
- package/dist/chunk-2OUGJBXK.js.map +1 -0
- package/dist/{chunk-JFGLDCAK.js → chunk-2REG4OUB.js} +19 -7
- package/dist/chunk-2REG4OUB.js.map +1 -0
- package/dist/{chunk-YII4K64U.js → chunk-2WZVD7P3.js} +36 -10
- package/dist/chunk-2WZVD7P3.js.map +1 -0
- package/dist/chunk-3HBMVZF5.js +72 -0
- package/dist/chunk-3HBMVZF5.js.map +1 -0
- package/dist/{chunk-7ODPSHIQ.js → chunk-3UCZ4GMN.js} +10 -4
- package/dist/chunk-3UCZ4GMN.js.map +1 -0
- package/dist/{chunk-QVCGNOBE.js → chunk-43RDFTC5.js} +78 -31
- package/dist/chunk-43RDFTC5.js.map +1 -0
- package/dist/{chunk-7YPX6NJK.js → chunk-4LSKRZOT.js} +12 -7
- package/dist/chunk-4LSKRZOT.js.map +1 -0
- package/dist/chunk-5PUATOLR.js +127 -0
- package/dist/chunk-5PUATOLR.js.map +1 -0
- package/dist/{chunk-6IPISGTP.js → chunk-7UCNBMCV.js} +102 -27
- package/dist/chunk-7UCNBMCV.js.map +1 -0
- package/dist/{chunk-Y2CXG3PT.js → chunk-C5YO5VZS.js} +8 -8
- package/dist/chunk-C5YO5VZS.js.map +1 -0
- package/dist/chunk-CLLNXRYZ.js +234 -0
- package/dist/chunk-CLLNXRYZ.js.map +1 -0
- package/dist/{chunk-INH7KYCK.js → chunk-CMGCJXE5.js} +275 -95
- package/dist/chunk-CMGCJXE5.js.map +1 -0
- package/dist/{chunk-MDY3HCRC.js → chunk-CPDVBHA3.js} +47 -18
- package/dist/chunk-CPDVBHA3.js.map +1 -0
- package/dist/{chunk-6MYKJE6A.js → chunk-CSRMVLPR.js} +109 -27
- package/dist/chunk-CSRMVLPR.js.map +1 -0
- package/dist/{chunk-IHKPZOE5.js → chunk-DQQLJ5C5.js} +6 -4
- package/dist/chunk-DQQLJ5C5.js.map +1 -0
- package/dist/{chunk-555KXZRK.js → chunk-EGNF7BRT.js} +6 -4
- package/dist/chunk-EGNF7BRT.js.map +1 -0
- package/dist/{chunk-7BUNJYZO.js → chunk-FEMHXG2P.js} +22 -6
- package/dist/chunk-FEMHXG2P.js.map +1 -0
- package/dist/chunk-FIGSNRWY.js +382 -0
- package/dist/chunk-FIGSNRWY.js.map +1 -0
- package/dist/{chunk-JGQOEAWL.js → chunk-FVTMKQUE.js} +5 -3
- package/dist/chunk-FVTMKQUE.js.map +1 -0
- package/dist/chunk-H47C2ENJ.js +215 -0
- package/dist/chunk-H47C2ENJ.js.map +1 -0
- package/dist/{chunk-77YTCM7G.js → chunk-HEV27FUK.js} +75 -32
- package/dist/chunk-HEV27FUK.js.map +1 -0
- package/dist/chunk-HWFI4GJE.js +130 -0
- package/dist/chunk-HWFI4GJE.js.map +1 -0
- package/dist/{chunk-DV5J5NLI.js → chunk-ILQQTKD4.js} +8 -5
- package/dist/chunk-ILQQTKD4.js.map +1 -0
- package/dist/{chunk-AVPPV5OM.js → chunk-IMGVPMHJ.js} +6 -4
- package/dist/chunk-IMGVPMHJ.js.map +1 -0
- package/dist/{chunk-23BPDLT4.js → chunk-ITZBSE5F.js} +42 -22
- package/dist/chunk-ITZBSE5F.js.map +1 -0
- package/dist/{chunk-HBEJ4S2Y.js → chunk-JIREY2VB.js} +19 -13
- package/dist/chunk-JIREY2VB.js.map +1 -0
- package/dist/{chunk-L6EVOPWH.js → chunk-JZ5F6XDO.js} +6 -4
- package/dist/chunk-JZ5F6XDO.js.map +1 -0
- package/dist/{chunk-TWZ5LXLL.js → chunk-KPI7MN5V.js} +45 -16
- package/dist/chunk-KPI7MN5V.js.map +1 -0
- package/dist/{chunk-GGREAJO5.js → chunk-KTHWXHDN.js} +10 -5
- package/dist/chunk-KTHWXHDN.js.map +1 -0
- package/dist/{chunk-TUTOU4X6.js → chunk-LK4EPTNG.js} +13 -142
- package/dist/chunk-LK4EPTNG.js.map +1 -0
- package/dist/{chunk-35K7N4JT.js → chunk-LMR7TKDJ.js} +17 -6
- package/dist/chunk-LMR7TKDJ.js.map +1 -0
- package/dist/{chunk-BYWYC7RC.js → chunk-MRFCITKK.js} +19 -10
- package/dist/chunk-MRFCITKK.js.map +1 -0
- package/dist/{chunk-TG2AECIN.js → chunk-MXDTUN3V.js} +22 -9
- package/dist/chunk-MXDTUN3V.js.map +1 -0
- package/dist/{chunk-PQZB43VJ.js → chunk-N32VWE6V.js} +38 -23
- package/dist/chunk-N32VWE6V.js.map +1 -0
- package/dist/{chunk-NZA526GC.js → chunk-N3ZVPIFC.js} +16 -13
- package/dist/chunk-N3ZVPIFC.js.map +1 -0
- package/dist/{chunk-2OGZENFC.js → chunk-NGYLRX6F.js} +2 -16
- package/dist/chunk-NGYLRX6F.js.map +1 -0
- package/dist/{chunk-NQB4V5P7.js → chunk-PHQOHVG3.js} +5 -5
- package/dist/chunk-PHQOHVG3.js.map +1 -0
- package/dist/{chunk-SYDNDYZJ.js → chunk-PXOHJJBE.js} +22 -9
- package/dist/chunk-PXOHJJBE.js.map +1 -0
- package/dist/{chunk-HWSLJGT7.js → chunk-Q57THXIU.js} +28 -10
- package/dist/chunk-Q57THXIU.js.map +1 -0
- package/dist/{chunk-22FIGRGO.js → chunk-QF3NJUUG.js} +31 -7
- package/dist/chunk-QF3NJUUG.js.map +1 -0
- package/dist/{chunk-CPPFXCNB.js → chunk-QKSDVYKF.js} +4 -4
- package/dist/chunk-QKSDVYKF.js.map +1 -0
- package/dist/{chunk-7TN4PGYF.js → chunk-REKWBXAQ.js} +49 -33
- package/dist/chunk-REKWBXAQ.js.map +1 -0
- package/dist/{chunk-DP6AWUH5.js → chunk-ROA7BYGB.js} +49 -19
- package/dist/chunk-ROA7BYGB.js.map +1 -0
- package/dist/{chunk-XG3KLPPS.js → chunk-RPIJ2KY7.js} +9 -4
- package/dist/chunk-RPIJ2KY7.js.map +1 -0
- package/dist/{chunk-C2MZL644.js → chunk-RW4RW4DV.js} +80 -30
- package/dist/chunk-RW4RW4DV.js.map +1 -0
- package/dist/chunk-RYKVZFGB.js +607 -0
- package/dist/chunk-RYKVZFGB.js.map +1 -0
- package/dist/chunk-SAVEKACZ.js +552 -0
- package/dist/chunk-SAVEKACZ.js.map +1 -0
- package/dist/{chunk-SMVVCZNM.js → chunk-SGRACNBP.js} +12 -7
- package/dist/chunk-SGRACNBP.js.map +1 -0
- package/dist/chunk-UUP7YGOS.js +299 -0
- package/dist/chunk-UUP7YGOS.js.map +1 -0
- package/dist/chunk-VY3X4SDU.js +143 -0
- package/dist/chunk-VY3X4SDU.js.map +1 -0
- package/dist/{chunk-SGMIDNPI.js → chunk-W3ES3UPV.js} +73 -19
- package/dist/chunk-W3ES3UPV.js.map +1 -0
- package/dist/{chunk-EFMKUCGX.js → chunk-WTGCXWNX.js} +8 -5
- package/dist/chunk-WTGCXWNX.js.map +1 -0
- package/dist/chunk-WUBMNJGC.js +141 -0
- package/dist/chunk-WUBMNJGC.js.map +1 -0
- package/dist/{chunk-O2VJ6KP4.js → chunk-X5SCI7KH.js} +190 -142
- package/dist/chunk-X5SCI7KH.js.map +1 -0
- package/dist/{chunk-ARK3EROZ.js → chunk-YAAV7FQG.js} +20 -12
- package/dist/chunk-YAAV7FQG.js.map +1 -0
- package/dist/{chunk-MLNIKNLI.js → chunk-YFK2DHCY.js} +57 -11
- package/dist/chunk-YFK2DHCY.js.map +1 -0
- package/dist/{chunk-R2FZO7AM.js → chunk-YTUB2Q7P.js} +26 -9
- package/dist/chunk-YTUB2Q7P.js.map +1 -0
- package/dist/clipboard/index.js +2 -2
- package/dist/collapse/index.js +2 -2
- package/dist/command/index.js +3 -3
- package/dist/context-menu/index.js +4 -0
- package/dist/context-menu/index.js.map +1 -0
- package/dist/date-picker/index.js +4 -4
- package/dist/descriptions/index.js +2 -2
- package/dist/divider/index.js +4 -0
- package/dist/divider/index.js.map +1 -0
- package/dist/drawer/index.js +2 -2
- package/dist/dropdown/index.js +4 -4
- package/dist/empty/index.js +2 -2
- package/dist/fetching-overlay/index.js +4 -4
- package/dist/grid/index.js +2 -2
- package/dist/image/index.js +2 -2
- package/dist/index.d.ts +1249 -168
- package/dist/index.js +63 -883
- package/dist/index.js.map +1 -1
- package/dist/input/index.js +4 -4
- package/dist/input-group/index.js +2 -2
- package/dist/input-otp/index.js +2 -2
- package/dist/input-password/index.js +5 -5
- package/dist/kbd/index.js +3 -3
- package/dist/modal/index.js +2 -2
- package/dist/multi-select/index.js +4 -4
- package/dist/notification/index.js +3 -3
- package/dist/pagination/index.js +2 -2
- package/dist/popover/index.js +3 -3
- package/dist/progress/index.js +2 -2
- package/dist/radio/index.js +3 -3
- package/dist/radio-group/index.js +2 -2
- package/dist/rating/index.js +2 -2
- package/dist/ribbon/index.js +2 -2
- package/dist/select/index.js +5 -5
- package/dist/skeleton/index.js +3 -3
- package/dist/slider/index.js +2 -2
- package/dist/spinner/index.js +3 -3
- package/dist/stepper/index.js +2 -2
- package/dist/styles/base.css +204 -99
- package/dist/styles/global.css +1330 -721
- package/dist/styles/themes/dark.css +3 -1
- package/dist/styles/themes/light.css +3 -1
- package/dist/styles/themes/presets/corporate.css +126 -0
- package/dist/styles/themes/presets/minimal.css +126 -0
- package/dist/styles/themes/presets/vibrant.css +126 -0
- package/dist/switch/index.js +3 -3
- package/dist/table/index.js +10 -10
- package/dist/tabs/index.js +3 -3
- package/dist/tag/index.js +5 -0
- package/dist/tag/index.js.map +1 -0
- package/dist/textarea/index.js +2 -2
- package/dist/theme/index.js +3 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/toggle/index.js +2 -2
- package/dist/toggle-group/index.js +2 -2
- package/dist/tooltip/index.js +3 -3
- package/dist/transfer/index.js +4 -4
- package/dist/tree/index.js +2 -2
- package/dist/tree-select/index.js +5 -5
- package/dist/upload/index.js +2 -2
- package/package.json +439 -66
- package/dist/chunk-22FIGRGO.js.map +0 -1
- package/dist/chunk-23BPDLT4.js.map +0 -1
- package/dist/chunk-2OGZENFC.js.map +0 -1
- package/dist/chunk-35K7N4JT.js.map +0 -1
- package/dist/chunk-3QKPSJTV.js +0 -120
- package/dist/chunk-3QKPSJTV.js.map +0 -1
- package/dist/chunk-3WVJE5MF.js.map +0 -1
- package/dist/chunk-555KXZRK.js.map +0 -1
- package/dist/chunk-6IPISGTP.js.map +0 -1
- package/dist/chunk-6MYKJE6A.js.map +0 -1
- package/dist/chunk-6PFBSVLK.js +0 -39
- package/dist/chunk-6PFBSVLK.js.map +0 -1
- package/dist/chunk-77YTCM7G.js.map +0 -1
- package/dist/chunk-7BUNJYZO.js.map +0 -1
- package/dist/chunk-7ODPSHIQ.js.map +0 -1
- package/dist/chunk-7TN4PGYF.js.map +0 -1
- package/dist/chunk-7YPX6NJK.js.map +0 -1
- package/dist/chunk-ARK3EROZ.js.map +0 -1
- package/dist/chunk-AVPPV5OM.js.map +0 -1
- package/dist/chunk-BYWYC7RC.js.map +0 -1
- package/dist/chunk-C2MZL644.js.map +0 -1
- package/dist/chunk-CPPFXCNB.js.map +0 -1
- package/dist/chunk-DP6AWUH5.js.map +0 -1
- package/dist/chunk-DV5J5NLI.js.map +0 -1
- package/dist/chunk-EFMKUCGX.js.map +0 -1
- package/dist/chunk-GFQXGLFD.js.map +0 -1
- package/dist/chunk-GGREAJO5.js.map +0 -1
- package/dist/chunk-GH3CNX5N.js +0 -178
- package/dist/chunk-GH3CNX5N.js.map +0 -1
- package/dist/chunk-HBEJ4S2Y.js.map +0 -1
- package/dist/chunk-HWSLJGT7.js.map +0 -1
- package/dist/chunk-IHKPZOE5.js.map +0 -1
- package/dist/chunk-INH7KYCK.js.map +0 -1
- package/dist/chunk-IRNJZ754.js.map +0 -1
- package/dist/chunk-IUUEYOMN.js +0 -470
- package/dist/chunk-IUUEYOMN.js.map +0 -1
- package/dist/chunk-JFGLDCAK.js.map +0 -1
- package/dist/chunk-JGQOEAWL.js.map +0 -1
- package/dist/chunk-L6EVOPWH.js.map +0 -1
- package/dist/chunk-LSQLUYTD.js +0 -192
- package/dist/chunk-LSQLUYTD.js.map +0 -1
- package/dist/chunk-MDY3HCRC.js.map +0 -1
- package/dist/chunk-MLNIKNLI.js.map +0 -1
- package/dist/chunk-NQB4V5P7.js.map +0 -1
- package/dist/chunk-NZA526GC.js.map +0 -1
- package/dist/chunk-O2VJ6KP4.js.map +0 -1
- package/dist/chunk-PQZB43VJ.js.map +0 -1
- package/dist/chunk-QVCGNOBE.js.map +0 -1
- package/dist/chunk-R2FZO7AM.js.map +0 -1
- package/dist/chunk-SGMIDNPI.js.map +0 -1
- package/dist/chunk-SMVVCZNM.js.map +0 -1
- package/dist/chunk-SOIF4SHB.js.map +0 -1
- package/dist/chunk-SYDNDYZJ.js.map +0 -1
- package/dist/chunk-TG2AECIN.js.map +0 -1
- package/dist/chunk-TIMRHEKH.js +0 -452
- package/dist/chunk-TIMRHEKH.js.map +0 -1
- package/dist/chunk-TUTOU4X6.js.map +0 -1
- package/dist/chunk-TWZ5LXLL.js.map +0 -1
- package/dist/chunk-XG3KLPPS.js.map +0 -1
- package/dist/chunk-Y2CXG3PT.js.map +0 -1
- package/dist/chunk-YII4K64U.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/select/index.tsx"],"names":[],"mappings":"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","file":"chunk-QVCGNOBE.js","sourcesContent":["import { useVirtualizer } from '@tanstack/react-virtual'\nimport { cva } from 'class-variance-authority'\nimport { Check, ChevronDown, ChevronUp, Search, X } from 'lucide-react'\nimport React, { useCallback, useId } from 'react'\n\nimport Spinner from '../spinner'\n\nimport { Popover, PopoverContent, PopoverTrigger } from '../popover'\nimport {\n cn,\n getValidationStatus,\n iconSizes,\n statusMessageVariants,\n} from '../utils'\nimport type { SelectOption, SelectProps } from './types'\n\nconst selectTriggerVariants = cva(\n 'w-full flex items-center justify-between rounded-md bg-background text-text-primary border focus:border-primary outline-none disabled:opacity-50 disabled:cursor-not-allowed cursor-pointer transition-colors',\n {\n variants: {\n status: {\n default: 'border-border hover:border-primary/50',\n error: 'border-error',\n warning: 'border-warning',\n info: 'border-info',\n success: 'border-success',\n },\n size: {\n xs: 'h-(--select-height-xs) px-(--select-padding-x-xs) text-xs gap-1.5',\n sm: 'h-(--select-height-sm) px-(--select-padding-x-sm) text-sm gap-2',\n md: 'h-(--select-height-md) px-(--select-padding-x-md) text-base gap-2',\n lg: 'h-(--select-height-lg) px-(--select-padding-x-lg) text-lg gap-3',\n },\n fullWidth: {\n true: 'w-full',\n false: 'max-w-full',\n },\n },\n defaultVariants: {\n status: 'default',\n size: 'md',\n fullWidth: true,\n },\n },\n)\n\nconst selectOptionVariants = cva(\n 'relative cursor-pointer select-none px-3 py-2 text-text-primary rounded-sm transition-colors',\n {\n variants: {\n selected: {\n true: 'bg-primary/10 text-primary font-medium',\n false: 'hover:bg-surface',\n },\n disabled: {\n true: 'opacity-50 cursor-not-allowed',\n false: '',\n },\n },\n defaultVariants: {\n selected: false,\n disabled: false,\n },\n },\n)\n\nconst selectGroupVariants = cva(\n 'px-3 py-2 text-xs font-semibold text-text-secondary uppercase tracking-wider bg-surface/50',\n)\n\nconst Select = React.memo<SelectProps>(\n ({\n size = 'md',\n label,\n helperText,\n error,\n warning,\n info,\n success,\n options = [],\n placeholder = 'Select an option',\n loading = false,\n fullWidth = true,\n value,\n defaultValue,\n onChange,\n clearable = false,\n disabled,\n required,\n virtualizeThreshold = 50,\n maxDropdownHeight = 300,\n className,\n ref,\n ...props\n }) => {\n const [isOpen, setIsOpen] = React.useState(false)\n const [parentNode, setParentNode] = React.useState<HTMLDivElement | null>(\n null,\n )\n const [internalValue, setInternalValue] = React.useState<string | number>(defaultValue || '')\n const [searchQuery, setSearchQuery] = React.useState('')\n const [highlightedIndex, setHighlightedIndex] = React.useState(-1)\n const [showTopArrow, setShowTopArrow] = React.useState(false)\n const [showBottomArrow, setShowBottomArrow] = React.useState(false)\n\n const triggerRef = React.useRef<HTMLButtonElement>(null)\n const inputRef = React.useRef<HTMLInputElement>(null)\n const scrollContainerRef = React.useRef<HTMLDivElement>(null)\n const currentValue = value !== undefined ? value : internalValue\n\n // Generate unique IDs for accessibility\n const uniqueId = useId()\n const labelId = `select-label-${uniqueId}`\n const listboxId = `select-listbox-${uniqueId}`\n const helperId = `select-helper-${uniqueId}`\n\n // Use shared validation status utility\n const { status, message: helperMessage } = getValidationStatus({\n error,\n warning,\n info,\n success,\n helperText,\n })\n\n const groupedOptions = React.useMemo(() => {\n const groups: Record<string, SelectOption[]> = {}\n const ungrouped: SelectOption[] = []\n\n options.forEach((option) => {\n if (option.group) {\n if (!groups[option.group]) {\n groups[option.group] = []\n }\n groups[option.group]!.push(option)\n } else {\n ungrouped.push(option)\n }\n })\n\n return { groups, ungrouped }\n }, [options])\n\n const flattenedOptions = React.useMemo(() => {\n const items: Array<{\n type: 'option' | 'group'\n data: SelectOption | string\n }> = []\n\n groupedOptions.ungrouped.forEach((option) => {\n items.push({ type: 'option', data: option })\n })\n\n Object.entries(groupedOptions.groups).forEach(\n ([groupName, groupOptions]) => {\n items.push({ type: 'group', data: groupName })\n groupOptions.forEach((option) => {\n items.push({ type: 'option', data: option })\n })\n },\n )\n\n return items\n }, [groupedOptions])\n\n const filteredOptions = React.useMemo(() => {\n if (!searchQuery) return flattenedOptions\n\n return flattenedOptions.filter((item) => {\n if (item.type === 'group') return true\n const option = item.data as SelectOption\n return option.label.toLowerCase().includes(searchQuery.toLowerCase())\n })\n }, [flattenedOptions, searchQuery])\n\n const shouldVirtualize = filteredOptions.length > virtualizeThreshold\n\n const virtualizer = useVirtualizer({\n count: filteredOptions.length,\n getScrollElement: () => parentNode,\n estimateSize: () => 40,\n enabled: shouldVirtualize,\n overscan: 10,\n })\n\n // Store virtualizer in ref to avoid recreating handleKeyDown on every render\n const virtualizerRef = React.useRef(virtualizer)\n React.useEffect(() => {\n virtualizerRef.current = virtualizer\n }, [virtualizer])\n\n const refCallback = useCallback((node: HTMLDivElement) => {\n if (node) {\n setParentNode(node)\n // Also set as scroll container for virtualized lists\n scrollContainerRef.current = node\n }\n }, [])\n\n const selectedOption = options.find((opt) => opt.value === currentValue)\n const displayValue = isOpen ? searchQuery : selectedOption?.label || ''\n\n const handleSelect = React.useCallback(\n (optionValue: string | number) => {\n if (value === undefined) {\n setInternalValue(optionValue)\n }\n onChange?.(optionValue)\n setIsOpen(false)\n setSearchQuery('')\n setHighlightedIndex(-1)\n },\n [value, onChange],\n )\n\n const handleClear = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation()\n if (value === undefined) {\n setInternalValue('')\n }\n onChange?.('')\n setSearchQuery('')\n setHighlightedIndex(-1)\n },\n [value, onChange],\n )\n\n const handleInputChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(e.target.value)\n if (!isOpen) setIsOpen(true)\n },\n [isOpen],\n )\n\n const handleInputFocus = React.useCallback(() => {\n setIsOpen(true)\n }, [])\n\n const handleKeyDown = React.useCallback(\n (e: React.KeyboardEvent) => {\n if (!isOpen && e.key !== 'Tab') {\n if (e.key === 'Enter' || e.key === ' ' || e.key === 'ArrowDown') {\n e.preventDefault()\n setIsOpen(true)\n }\n return\n }\n\n const selectableOptions = filteredOptions.filter(\n (item) =>\n item.type === 'option' && !(item.data as SelectOption).disabled,\n )\n\n switch (e.key) {\n case 'Escape':\n e.preventDefault()\n setIsOpen(false)\n setSearchQuery('')\n setHighlightedIndex(-1)\n inputRef.current?.blur()\n break\n\n case 'ArrowDown':\n e.preventDefault()\n setHighlightedIndex((prev) => {\n const nextIndex = Math.min(prev + 1, selectableOptions.length - 1)\n const option = selectableOptions[nextIndex]\n if (option) {\n const optionIndex = filteredOptions.indexOf(option)\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(optionIndex, {\n align: 'auto',\n })\n }\n }\n return nextIndex\n })\n break\n\n case 'ArrowUp':\n e.preventDefault()\n setHighlightedIndex((prev) => {\n const nextIndex = Math.max(prev - 1, 0)\n const option = selectableOptions[nextIndex]\n if (option) {\n const optionIndex = filteredOptions.indexOf(option)\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(optionIndex, {\n align: 'auto',\n })\n }\n }\n return nextIndex\n })\n break\n\n case 'Enter':\n e.preventDefault()\n if (\n highlightedIndex >= 0 &&\n highlightedIndex < selectableOptions.length\n ) {\n const item = selectableOptions[highlightedIndex]\n if (item) {\n const option = item.data as SelectOption\n handleSelect(option.value)\n }\n }\n break\n\n case 'Home':\n e.preventDefault()\n setHighlightedIndex(0)\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(0)\n }\n break\n\n case 'End':\n e.preventDefault()\n setHighlightedIndex(selectableOptions.length - 1)\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(filteredOptions.length - 1)\n }\n break\n\n default:\n break\n }\n },\n [\n isOpen,\n filteredOptions,\n highlightedIndex,\n handleSelect,\n shouldVirtualize,\n ],\n )\n\n // Handle scroll to update arrow visibility\n const handleScroll = React.useCallback(\n (e: React.UIEvent<HTMLDivElement>) => {\n const element = e.currentTarget\n const { scrollTop, scrollHeight, clientHeight } = element\n\n setShowTopArrow(scrollTop > 0)\n setShowBottomArrow(scrollTop + clientHeight < scrollHeight - 1)\n },\n [],\n )\n\n // Check initial scroll state when dropdown opens\n React.useEffect(() => {\n if (isOpen) {\n // Use a small delay to ensure the DOM is fully rendered\n const timeoutId = setTimeout(() => {\n const element = scrollContainerRef.current\n if (element) {\n const { scrollTop, scrollHeight, clientHeight } = element\n setShowTopArrow(scrollTop > 0)\n setShowBottomArrow(scrollTop + clientHeight < scrollHeight - 1)\n }\n }, 50)\n\n return () => clearTimeout(timeoutId)\n } else {\n setShowTopArrow(false)\n setShowBottomArrow(false)\n return undefined\n }\n }, [isOpen, filteredOptions, shouldVirtualize])\n\n const renderOptionsList = () => (\n <div className=\"relative\">\n {/* Top scroll indicator */}\n <div className=\"flex items-center justify-center h-4\">\n {showTopArrow && <ChevronUp className=\"size-4 text-text-primary\" />}\n </div>\n\n <div\n ref={scrollContainerRef}\n className=\"overflow-auto relative\"\n style={{ maxHeight: maxDropdownHeight }}\n role=\"listbox\"\n id={listboxId}\n aria-labelledby={label ? labelId : undefined}\n onScroll={handleScroll}\n >\n {!filteredOptions.length ? (\n <div className=\"px-3 py-4 text-center text-sm text-text-secondary\">\n No options found\n </div>\n ) : shouldVirtualize ? (\n <div\n ref={refCallback}\n style={{\n height: `${Math.min(virtualizer.getTotalSize(), maxDropdownHeight)}px`,\n overflow: 'auto',\n }}\n onScroll={handleScroll}\n >\n <div\n style={{\n height: `${virtualizer.getTotalSize()}px`,\n width: '100%',\n position: 'relative',\n }}\n >\n {virtualizer.getVirtualItems().map((virtualItem) => {\n const item = filteredOptions[virtualItem.index]\n\n if (!item) return null\n\n if (item.type === 'group') {\n return (\n <div\n key={`group-${virtualItem.index}`}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: `${virtualItem.size}px`,\n transform: `translateY(${virtualItem.start}px)`,\n }}\n className={selectGroupVariants()}\n >\n {item.data as string}\n </div>\n )\n }\n\n const option = item.data as SelectOption\n const isSelected = option.value === currentValue\n const selectableOptions = filteredOptions.filter(\n (i) =>\n i.type === 'option' && !(i.data as SelectOption).disabled,\n )\n const selectableIndex = selectableOptions.findIndex(\n (i) => i === item,\n )\n const isHighlighted = selectableIndex === highlightedIndex\n\n return (\n <div\n key={option.value}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: `${virtualItem.size}px`,\n transform: `translateY(${virtualItem.start}px)`,\n }}\n className={cn(\n selectOptionVariants({\n selected: isSelected,\n disabled: !!option.disabled,\n }),\n isHighlighted && 'bg-surface',\n )}\n onClick={() =>\n !option.disabled && handleSelect(option.value)\n }\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={option.disabled}\n >\n {option.label}\n {isSelected && (\n <span className=\"absolute right-3 top-1/2 -translate-y-1/2\">\n <Check\n className={cn('text-primary', iconSizes[size])}\n />\n </span>\n )}\n </div>\n )\n })}\n </div>\n </div>\n ) : (\n <div className=\"py-1\">\n {filteredOptions.map((item, index) => {\n if (item.type === 'group') {\n return (\n <div\n key={`group-${index}`}\n className={selectGroupVariants()}\n >\n {item.data as string}\n </div>\n )\n }\n\n const option = item.data as SelectOption\n const isSelected = option.value === currentValue\n const selectableOptions = filteredOptions.filter(\n (i) =>\n i.type === 'option' && !(i.data as SelectOption).disabled,\n )\n const selectableIndex = selectableOptions.findIndex(\n (i) => i === item,\n )\n const isHighlighted = selectableIndex === highlightedIndex\n\n return (\n <div\n key={option.value}\n className={cn(\n selectOptionVariants({\n selected: isSelected,\n disabled: !!option.disabled,\n }),\n isHighlighted && 'bg-surface',\n )}\n onClick={() =>\n !option.disabled && handleSelect(option.value)\n }\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={option.disabled}\n >\n {option.label}\n {isSelected && (\n <span className=\"absolute right-3 top-1/2 -translate-y-1/2\">\n <Check\n className={cn('text-primary', iconSizes[size])}\n />\n </span>\n )}\n </div>\n )\n })}\n </div>\n )}\n </div>\n\n {/* Bottom scroll indicator */}\n <div className=\"flex items-center justify-center h-4\">\n {showBottomArrow && (\n <ChevronDown className=\"size-4 text-text-primary\" />\n )}\n </div>\n </div>\n )\n\n // Trigger button (used in both desktop and mobile)\n const triggerButton = (\n <button\n ref={triggerRef}\n type=\"button\"\n className={cn(\n selectTriggerVariants({ status, size, fullWidth }),\n loading && 'opacity-50',\n className,\n )}\n disabled={disabled || loading}\n aria-haspopup=\"listbox\"\n aria-expanded={isOpen}\n aria-controls={listboxId}\n aria-labelledby={label ? labelId : undefined}\n aria-describedby={helperMessage ? helperId : undefined}\n onClick={() => setIsOpen(!isOpen)}\n >\n <input\n ref={inputRef}\n type=\"text\"\n className=\"w-full text-ellipsis flex-1 bg-transparent outline-none cursor-pointer placeholder:text-text-secondary/50 pointer-events-none\"\n placeholder={placeholder}\n value={displayValue}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onKeyDown={handleKeyDown}\n disabled={disabled || loading}\n readOnly={!isOpen}\n tabIndex={-1}\n />\n <div className=\"flex items-center gap-1 text-text-secondary\">\n {clearable && currentValue && !disabled && !loading && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"hover:text-text-primary transition-colors\"\n aria-label=\"Clear selection\"\n >\n <X className={iconSizes[size]} />\n </button>\n )}\n {loading ? (\n <Spinner />\n ) : (\n <>\n {isOpen ? (\n <Search className={iconSizes[size]} />\n ) : (\n <ChevronDown className={iconSizes[size]} />\n )}\n </>\n )}\n </div>\n </button>\n )\n\n const selectElement = (\n <div\n className={cn('relative group', fullWidth ? 'w-full' : 'inline-block')}\n ref={ref}\n {...props}\n >\n <Popover\n open={isOpen}\n onOpenChange={setIsOpen}\n >\n <PopoverTrigger asChild>{triggerButton}</PopoverTrigger>\n\n <PopoverContent\n className=\"p-0 w-[var(--radix-popover-trigger-width)]\"\n align=\"start\"\n onOpenAutoFocus={(e: Event) => {\n e.preventDefault()\n inputRef.current?.focus()\n }}\n >\n {renderOptionsList()}\n </PopoverContent>\n </Popover>\n </div>\n )\n\n if (!label && !helperText && !error) return selectElement\n\n return (\n <div className={cn('w-full flex flex-col', !fullWidth && 'inline-block')}>\n <div className=\"flex gap-2 items-center\">\n {label && (\n <label\n id={labelId}\n className=\"block mb-0.5\"\n >\n <span className=\"text-sm font-medium text-text-secondary\">\n {label}\n {required && <span className=\"text-error ml-1\">*</span>}\n </span>\n </label>\n )}\n {helperMessage && (\n <p\n id={helperId}\n className={statusMessageVariants({ status })}\n >\n {helperMessage}\n </p>\n )}\n </div>\n {selectElement}\n </div>\n )\n },\n)\n\nSelect.displayName = 'Select'\n\nexport type * from './types'\nexport default Select\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/tree-select/index.tsx"],"names":["info"],"mappings":"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","file":"chunk-R2FZO7AM.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport { ChevronDown, Loader2, Search, X } from 'lucide-react'\nimport React from 'react'\n\nimport { Popover, PopoverContent, PopoverTrigger } from '../popover'\nimport Tree from '../tree'\nimport type { TreeNode } from '../tree/types'\nimport {\n cn,\n getValidationStatus,\n iconSizes,\n statusMessageVariants,\n} from '../utils'\nimport type { TreeSelectProps } from './types'\n\nconst treeSelectTriggerVariants = cva(\n 'w-full flex items-center justify-between rounded-md bg-background text-text-primary border focus:border-primary outline-none disabled:opacity-50 disabled:cursor-not-allowed cursor-pointer transition-colors',\n {\n variants: {\n status: {\n default: 'border-border hover:border-primary/50',\n error: 'border-error',\n warning: 'border-warning',\n info: 'border-info',\n success: 'border-success',\n },\n size: {\n xs: 'h-(--select-height-xs) px-(--select-padding-x-xs) text-xs gap-1.5',\n sm: 'h-(--input-height-sm) px-1 text-sm gap-2',\n md: 'h-(--input-height-md) px-2 text-base gap-2',\n lg: 'h-(--input-height-lg) px-3 text-lg gap-3',\n },\n fullWidth: {\n true: 'w-full',\n false: 'max-w-full',\n },\n },\n defaultVariants: {\n status: 'default',\n size: 'md',\n fullWidth: true,\n },\n },\n)\n\nconst TreeSelect = React.memo<TreeSelectProps>(\n ({\n size = 'md',\n label,\n helperText,\n error,\n warning,\n info,\n success,\n data = [],\n placeholder = 'Select an option',\n loading = false,\n fullWidth = true,\n value,\n defaultValue,\n onChange,\n disabled,\n required,\n multiple = false,\n checkable = false,\n searchable = true,\n maxChipsVisible = 3,\n maxDropdownHeight = 300,\n defaultExpandAll = false,\n defaultExpandedKeys = [],\n showLine = false,\n showIcon = true,\n className,\n ref,\n ...props\n }) => {\n const [isOpen, setIsOpen] = React.useState(false)\n const [internalValue, setInternalValue] = React.useState<string | string[]>(\n defaultValue || (multiple ? [] : ''),\n )\n const [searchQuery, setSearchQuery] = React.useState('')\n const [expandedKeys, setExpandedKeys] = React.useState<string[]>(\n defaultExpandAll ? [] : defaultExpandedKeys,\n )\n const [visibleChipsCount, setVisibleChipsCount] =\n React.useState(maxChipsVisible)\n\n const triggerRef = React.useRef<HTMLButtonElement>(null)\n const inputRef = React.useRef<HTMLInputElement>(null)\n const currentValue = value !== undefined ? value : internalValue\n\n // Use shared validation status utility\n const { status, message: helperMessage } = getValidationStatus({\n error,\n warning,\n info,\n success,\n helperText,\n })\n\n // Get all nodes in a flat structure for search and lookup\n const getAllNodes = React.useCallback((nodes: TreeNode[]): TreeNode[] => {\n const result: TreeNode[] = []\n const traverse = (items: TreeNode[]) => {\n items.forEach((item) => {\n result.push(item)\n if (item.children) {\n traverse(item.children)\n }\n })\n }\n traverse(nodes)\n return result\n }, [])\n\n const allNodes = React.useMemo(() => getAllNodes(data), [data, getAllNodes])\n\n // Find node by key\n const getNodeByKey = React.useCallback(\n (key: string): TreeNode | null => {\n return allNodes.find((node) => node.key === key) || null\n },\n [allNodes],\n )\n\n // Get selected nodes\n const getSelectedNodes = React.useCallback(\n (keys: string | string[]): TreeNode[] => {\n const keyArray = Array.isArray(keys) ? keys : [keys]\n return keyArray\n .map((key) => getNodeByKey(key))\n .filter((node): node is TreeNode => node !== null)\n },\n [getNodeByKey],\n )\n\n // Filter tree data based on search query\n const filteredData = React.useMemo(() => {\n if (!searchQuery) return data\n\n const matchingKeys = new Set<string>()\n\n // Find all nodes that match the search\n allNodes.forEach((node) => {\n if (node.label.toLowerCase().includes(searchQuery.toLowerCase())) {\n // Add the node and all its ancestors\n let current: TreeNode | null = node\n while (current) {\n matchingKeys.add(current.key)\n // Find parent\n const parent = allNodes.find((n) =>\n n.children?.some((child) => child.key === current!.key),\n )\n current = parent || null\n }\n }\n })\n\n // Filter tree to only include matching nodes and their paths\n const filterTree = (nodes: TreeNode[]): TreeNode[] => {\n return nodes\n .filter((node) => matchingKeys.has(node.key))\n .map((node) => ({\n ...node,\n children: node.children ? filterTree(node.children) : undefined,\n }))\n }\n\n return filterTree(data)\n }, [data, searchQuery, allNodes])\n\n // Get display value\n const selectedNodes = React.useMemo(\n () => getSelectedNodes(currentValue),\n [currentValue, getSelectedNodes],\n )\n\n const getDisplayValue = React.useMemo(() => {\n if (!selectedNodes.length) return ''\n if (selectedNodes.length === 1) return selectedNodes[0]?.label\n return `${selectedNodes.length} selected`\n }, [selectedNodes])\n\n const handleSelect = React.useCallback(\n (_: string[], info: { selected: boolean; node: TreeNode }) => {\n if (disabled) return\n\n // Prevent selection of directory nodes (nodes with children)\n if (info.node.children && info.node.children.length > 0) {\n return\n }\n\n let newValue: string | string[]\n\n if (multiple) {\n // For multiple selection\n const currentArray = Array.isArray(currentValue) ? currentValue : []\n if (info.selected) {\n newValue = [...currentArray, info.node.key]\n } else {\n newValue = currentArray.filter((k) => k !== info.node.key)\n }\n } else {\n // For single selection\n if (info.selected) {\n newValue = info.node.key\n setIsOpen(false)\n setSearchQuery('')\n } else {\n newValue = ''\n }\n }\n\n if (value === undefined) {\n setInternalValue(newValue)\n }\n\n const selectedNodesResult = getSelectedNodes(newValue)\n onChange?.(newValue, selectedNodesResult)\n },\n [disabled, multiple, currentValue, value, onChange, getSelectedNodes],\n )\n\n const handleCheck = React.useCallback(\n (\n keys: string[],\n info: {\n checked: boolean\n node: TreeNode\n checkedNodes: TreeNode[]\n },\n ) => {\n if (disabled) return\n\n // Filter out directory nodes (nodes with children) from checked keys\n const leafKeys = keys.filter((key) => {\n const node = getNodeByKey(key)\n return node && (!node.children || node.children.length === 0)\n })\n\n const leafNodes = info.checkedNodes.filter(\n (node) => !node.children || node.children.length === 0,\n )\n\n if (value === undefined) {\n setInternalValue(leafKeys)\n }\n\n onChange?.(leafKeys, leafNodes)\n },\n [disabled, value, onChange, getNodeByKey],\n )\n\n const handleInputChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(e.target.value)\n if (!isOpen) setIsOpen(true)\n },\n [isOpen],\n )\n\n const handleInputFocus = React.useCallback(() => {\n setIsOpen(true)\n }, [])\n\n const handleClear = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation()\n const newValue = multiple ? [] : ''\n if (value === undefined) {\n setInternalValue(newValue)\n }\n onChange?.(newValue, [])\n setSearchQuery('')\n },\n [multiple, value, onChange],\n )\n\n const handleRemoveItem = React.useCallback(\n (\n e: React.MouseEvent<HTMLButtonElement, MouseEvent>,\n keyToRemove: string,\n ) => {\n e.stopPropagation()\n if (!multiple || disabled) return\n\n const currentArray = Array.isArray(currentValue) ? currentValue : []\n const newValue = currentArray.filter((k) => k !== keyToRemove)\n\n if (value === undefined) {\n setInternalValue(newValue)\n }\n\n const selectedNodesResult = getSelectedNodes(newValue)\n onChange?.(newValue, selectedNodesResult)\n },\n [multiple, disabled, currentValue, value, onChange, getSelectedNodes],\n )\n\n const handleKeyDown = React.useCallback(\n (e: React.KeyboardEvent) => {\n if (!isOpen && e.key !== 'Tab') {\n if (e.key === 'Enter' || e.key === ' ' || e.key === 'ArrowDown') {\n e.preventDefault()\n setIsOpen(true)\n }\n return\n }\n\n if (e.key === 'Escape') {\n e.preventDefault()\n setIsOpen(false)\n setSearchQuery('')\n triggerRef.current?.focus()\n }\n },\n [isOpen],\n )\n\n const handleInputKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (\n e.key === 'Backspace' &&\n !searchQuery &&\n multiple &&\n Array.isArray(currentValue) &&\n currentValue.length > 0\n ) {\n e.preventDefault()\n const lastKey = currentValue[currentValue.length - 1]\n handleRemoveItem(e as any, lastKey || '')\n } else {\n handleKeyDown(e)\n }\n },\n [searchQuery, currentValue, multiple, handleRemoveItem, handleKeyDown],\n )\n\n // Dynamic badge size calculation\n React.useEffect(() => {\n if (selectedNodes.length === 0 || !triggerRef.current) {\n setVisibleChipsCount(maxChipsVisible)\n return\n }\n\n const calculateVisibleChips = () => {\n const container = triggerRef.current\n if (!container) return\n\n const hiddenChips = container.querySelectorAll('[data-hidden-chip]')\n if (hiddenChips.length === 0) return\n\n const containerWidth = container.offsetWidth\n const padding =\n size === 'sm' ? 12 : size === 'md' ? 16 : size === 'lg' ? 20 : 16\n\n // Account for icons on the right (clear + chevron/search)\n // Use a generous estimate to avoid overflow\n const iconsWidth = 60 // Enough space for clear button + chevron + gap\n\n const gap = 4\n const plusIndicatorWidth = 40 // Width of \"+X\" badge\n\n const availableWidth = containerWidth - padding * 2 - iconsWidth\n let totalWidth = 0\n let visibleCount = 0\n\n for (let i = 0; i < hiddenChips.length; i++) {\n const chipWidth = hiddenChips[i]?.getBoundingClientRect().width || 0\n const requiredSpace =\n totalWidth + chipWidth + (visibleCount > 0 ? gap : 0)\n\n const needsPlusIndicator = i < hiddenChips.length - 1\n const spaceWithIndicator =\n requiredSpace + (needsPlusIndicator ? gap + plusIndicatorWidth : 0)\n\n if (spaceWithIndicator <= availableWidth) {\n totalWidth = requiredSpace\n visibleCount++\n } else {\n break\n }\n }\n\n setVisibleChipsCount(Math.max(1, visibleCount))\n }\n\n const timeoutId = setTimeout(calculateVisibleChips, 0)\n\n const resizeObserver = new ResizeObserver(() => {\n calculateVisibleChips()\n })\n\n if (triggerRef.current) {\n resizeObserver.observe(triggerRef.current)\n }\n\n return () => {\n clearTimeout(timeoutId)\n resizeObserver.disconnect()\n }\n }, [selectedNodes, size, maxChipsVisible])\n\n const treeSelectElement = (\n <div\n className={cn('relative group', fullWidth ? 'w-full' : 'inline-block')}\n ref={ref}\n {...props}\n >\n <Popover\n open={isOpen}\n onOpenChange={setIsOpen}\n >\n <PopoverTrigger asChild>\n <button\n ref={triggerRef}\n type=\"button\"\n className={cn(\n treeSelectTriggerVariants({ status, size, fullWidth }),\n loading && 'opacity-50',\n className,\n )}\n disabled={disabled || loading}\n aria-haspopup=\"tree\"\n aria-expanded={isOpen}\n aria-labelledby={label ? 'tree-select-label' : undefined}\n >\n {multiple && selectedNodes.length > 0 && (\n <div className=\"flex gap-1 flex-shrink-0\">\n {selectedNodes.slice(0, visibleChipsCount).map((node) => (\n <span\n key={node.key}\n className=\"inline-flex items-center gap-1 px-2 py-0.5 bg-primary/10 text-primary rounded text-sm whitespace-nowrap\"\n >\n {node.label}\n <button\n type=\"button\"\n onClick={(e) => handleRemoveItem(e, node.key)}\n className=\"hover:bg-primary/20 rounded-sm\"\n disabled={disabled}\n >\n <X className=\"h-3 w-3\" />\n </button>\n </span>\n ))}\n {selectedNodes.length > visibleChipsCount && (\n <span className=\"inline-flex items-center px-2 py-0.5 bg-surface text-text-secondary rounded text-sm whitespace-nowrap\">\n +{selectedNodes.length - visibleChipsCount}\n </span>\n )}\n </div>\n )}\n <div\n className=\"absolute opacity-0 pointer-events-none whitespace-nowrap\"\n aria-hidden=\"true\"\n >\n {selectedNodes.map((node) => (\n <span\n key={node.key}\n data-hidden-chip\n className=\"inline-flex items-center gap-1 px-2 py-0.5 bg-primary/10 text-primary rounded text-sm whitespace-nowrap\"\n >\n {node.label}\n <X className=\"h-3 w-3\" />\n </span>\n ))}\n </div>\n <input\n ref={inputRef}\n type=\"text\"\n className=\"bg-transparent outline-none cursor-pointer placeholder:text-text-secondary/50 flex-1 min-w-0 pointer-events-none\"\n placeholder={selectedNodes.length > 0 ? '' : placeholder}\n value={searchQuery}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onKeyDown={handleInputKeyDown}\n disabled={disabled || loading}\n readOnly={!isOpen || !searchable}\n tabIndex={-1}\n />\n <div className=\"flex items-center gap-1 text-text-secondary\">\n {getDisplayValue && !disabled && !loading && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"hover:text-text-primary transition-colors\"\n tabIndex={-1}\n >\n <X className={iconSizes[size]} />\n </button>\n )}\n {loading ? (\n <Loader2 className={cn('animate-spin', iconSizes[size])} />\n ) : (\n <>\n {isOpen && searchable ? (\n <Search className={iconSizes[size]} />\n ) : (\n <ChevronDown\n className={cn(\n iconSizes[size],\n 'transition-transform duration-200',\n isOpen && 'rotate-180',\n )}\n />\n )}\n </>\n )}\n </div>\n </button>\n </PopoverTrigger>\n\n <PopoverContent\n className=\"p-2 w-[var(--radix-popover-trigger-width)]\"\n align=\"start\"\n onOpenAutoFocus={(e: Event) => {\n e.preventDefault()\n inputRef.current?.focus()\n }}\n >\n <div\n className=\"overflow-auto\"\n style={{ maxHeight: maxDropdownHeight }}\n role=\"tree\"\n aria-labelledby={label ? 'tree-select-label' : undefined}\n >\n {filteredData.length === 0 ? (\n <div className=\"px-3 py-4 text-center text-sm text-text-secondary\">\n No options found\n </div>\n ) : (\n <Tree\n data={filteredData}\n checkable={checkable}\n checkedKeys={\n checkable && Array.isArray(currentValue)\n ? currentValue\n : undefined\n }\n onCheck={checkable ? handleCheck : undefined}\n selectable={!checkable}\n selectedKeys={\n !checkable\n ? Array.isArray(currentValue)\n ? currentValue\n : currentValue\n ? [currentValue]\n : []\n : undefined\n }\n onSelect={!checkable ? handleSelect : undefined}\n disabled={disabled}\n size={size}\n showLine={showLine}\n showIcon={showIcon}\n defaultExpandAll={defaultExpandAll || !!searchQuery}\n expandedKeys={searchQuery ? undefined : expandedKeys}\n onExpand={setExpandedKeys}\n />\n )}\n </div>\n </PopoverContent>\n </Popover>\n </div>\n )\n\n if (!label && !helperMessage) return treeSelectElement\n\n return (\n <div className={cn('w-full flex flex-col', !fullWidth && 'inline-block')}>\n <div className=\"flex gap-2 items-center\">\n {label && (\n <label\n id=\"tree-select-label\"\n className=\"block mb-0.5\"\n >\n <span className=\"text-sm font-medium text-text-secondary\">\n {label}\n {required && <span className=\"text-error ml-1\">*</span>}\n </span>\n </label>\n )}\n {helperMessage && (\n <p className={statusMessageVariants({ status })}>{helperMessage}</p>\n )}\n </div>\n {treeSelectElement}\n </div>\n )\n },\n)\n\nTreeSelect.displayName = 'TreeSelect'\n\nexport type * from './types'\nexport default TreeSelect\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/breadcrumbs/index.tsx"],"names":[],"mappings":"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","file":"chunk-SGMIDNPI.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport { ChevronRight, MoreHorizontal, MoreVertical } from 'lucide-react'\nimport React from 'react'\n\nimport Dropdown from '../dropdown'\nimport { cn, iconSizes } from '../utils'\nimport { textColorVariants } from '../variants'\nimport type {\n BreadcrumbEllipsisProps,\n BreadcrumbItemProps,\n BreadcrumbLinkProps,\n BreadcrumbListProps,\n BreadcrumbPageProps,\n BreadcrumbProps,\n BreadcrumbsColor,\n BreadcrumbSeparatorProps,\n BreadcrumbsSize,\n} from './types'\n\nexport type { BreadcrumbItemData } from './types'\n\ninterface BreadcrumbContextValue {\n color?: BreadcrumbsColor\n size?: BreadcrumbsSize\n}\n\nconst BreadcrumbContext = React.createContext<BreadcrumbContextValue>({})\n\nconst breadcrumbVariants = cva('', {\n variants: {\n size: {\n xs: 'text-xs',\n sm: 'text-sm',\n md: 'text-base',\n lg: 'text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nconst Breadcrumb = React.memo<BreadcrumbProps>(\n ({\n children,\n items,\n color = 'default',\n size = 'md',\n separator,\n className,\n }) => {\n const content = items?.length ? (\n <BreadcrumbList>\n {items.map((item, index) => {\n const isLast = index === items.length - 1\n return (\n <React.Fragment key={index}>\n <BreadcrumbItem>\n {item.ellipsis ? (\n <BreadcrumbEllipsis\n orientation={item.ellipsisOrientation || 'horizontal'}\n items={item.ellipsisItems || []}\n size={size}\n />\n ) : isLast ? (\n <BreadcrumbPage\n leftIcon={item.leftIcon}\n rightIcon={item.rightIcon}\n >\n {item.label}\n </BreadcrumbPage>\n ) : (\n <BreadcrumbLink\n href={item.href || ''}\n onClick={item.onClick}\n leftIcon={item.leftIcon}\n rightIcon={item.rightIcon}\n >\n {item.label}\n </BreadcrumbLink>\n )}\n </BreadcrumbItem>\n {!isLast && (\n <BreadcrumbSeparator size={size}>\n {separator}\n </BreadcrumbSeparator>\n )}\n </React.Fragment>\n )\n })}\n </BreadcrumbList>\n ) : (\n children\n )\n\n return (\n <BreadcrumbContext.Provider value={{ color, size }}>\n <nav\n aria-label=\"breadcrumb\"\n className={cn(\n breadcrumbVariants({ size }),\n textColorVariants({ color }),\n className,\n )}\n >\n {content}\n </nav>\n </BreadcrumbContext.Provider>\n )\n },\n)\n\nBreadcrumb.displayName = 'Breadcrumb'\n\nexport const BreadcrumbList = React.memo<BreadcrumbListProps>(\n ({ children, className }) => {\n return (\n <ol className={cn('flex items-center gap-1.5', className)}>{children}</ol>\n )\n },\n)\n\nBreadcrumbList.displayName = 'BreadcrumbList'\n\nexport const BreadcrumbItem = React.memo<BreadcrumbItemProps>(\n ({ children, className }) => {\n return (\n <li className={cn('inline-flex items-center gap-1.5', className)}>\n {children}\n </li>\n )\n },\n)\n\nBreadcrumbItem.displayName = 'BreadcrumbItem'\n\nexport const BreadcrumbLink = React.memo<BreadcrumbLinkProps>(\n ({ children, href, onClick, leftIcon, rightIcon, className }) => {\n const handleClick = (e: React.MouseEvent) => {\n if (onClick) {\n e.preventDefault()\n onClick()\n }\n }\n\n const content = (\n <>\n {leftIcon && (\n <span className=\"inline-flex items-center\">{leftIcon}</span>\n )}\n {children}\n {rightIcon && (\n <span className=\"inline-flex items-center\">{rightIcon}</span>\n )}\n </>\n )\n\n if (href) {\n return (\n <a\n href={href}\n onClick={handleClick}\n className={cn(\n 'inline-flex items-center gap-1.5 transition-colors hover:underline cursor-pointer',\n className,\n )}\n >\n {content}\n </a>\n )\n }\n\n if (onClick) {\n return (\n <button\n type=\"button\"\n onClick={handleClick}\n className={cn(\n 'inline-flex items-center gap-1.5 transition-colors hover:underline cursor-pointer',\n className,\n )}\n >\n {content}\n </button>\n )\n }\n\n return (\n <span className={cn('inline-flex items-center gap-1.5', className)}>\n {content}\n </span>\n )\n },\n)\n\nBreadcrumbLink.displayName = 'BreadcrumbLink'\n\nexport const BreadcrumbPage = React.memo<BreadcrumbPageProps>(\n ({ children, leftIcon, rightIcon, className }) => {\n return (\n <span\n aria-current=\"page\"\n className={cn(\n 'inline-flex items-center gap-1.5 font-medium',\n className,\n )}\n >\n {leftIcon && (\n <span className=\"inline-flex items-center\">{leftIcon}</span>\n )}\n {children}\n {rightIcon && (\n <span className=\"inline-flex items-center\">{rightIcon}</span>\n )}\n </span>\n )\n },\n)\n\nBreadcrumbPage.displayName = 'BreadcrumbPage'\n\nexport const BreadcrumbSeparator = React.memo<BreadcrumbSeparatorProps>(\n ({ children, className, size = 'md' }) => {\n return (\n <span className={cn('text-text-secondary', className)}>\n {children ?? <ChevronRight className={iconSizes[size]} />}\n </span>\n )\n },\n)\n\nBreadcrumbSeparator.displayName = 'BreadcrumbSeparator'\n\nexport const BreadcrumbEllipsis = React.memo<BreadcrumbEllipsisProps>(\n ({ orientation = 'horizontal', items, children, className, size = 'md' }) => {\n const Icon = orientation === 'horizontal' ? MoreHorizontal : MoreVertical\n const isInteractive = !!(items?.length || children)\n\n const ellipsisButton = (\n <span\n role={isInteractive ? 'button' : 'presentation'}\n aria-hidden={isInteractive ? undefined : true}\n aria-label={isInteractive ? 'Show more breadcrumbs' : undefined}\n tabIndex={isInteractive ? 0 : undefined}\n className={cn(\n 'flex items-center justify-center',\n isInteractive && 'cursor-pointer',\n className,\n )}\n >\n <Icon className={iconSizes[size]} />\n <span className=\"sr-only\">More</span>\n </span>\n )\n\n // If items or children are provided, wrap in Dropdown\n if (items || children) {\n const dropdownItems = (items || []).map((item) => ({\n label: item.label || '',\n value: item.label || '',\n onClick:\n item.onClick ||\n (() => {\n if (item.href) {\n window.location.href = item.href\n }\n }),\n }))\n\n return <Dropdown items={dropdownItems}>{ellipsisButton}</Dropdown>\n }\n\n return ellipsisButton\n },\n)\n\nBreadcrumbEllipsis.displayName = 'BreadcrumbEllipsis'\n\nexport type * from './types'\nexport default Breadcrumb\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/radio-group/index.tsx"],"names":[],"mappings":";;;;AAKO,IAAM,aAAa,KAAA,CAAM,IAAA;AAAA,EAC9B,CAAC;AAAA,IACC,KAAA;AAAA,IACA,UAAA;AAAA,IACA,KAAA;AAAA,IACA,WAAA,GAAc,UAAA;AAAA,IACd,SAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AACJ,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAW,EAAA,CAAG,QAAA,EAAU,SAAS,CAAA;AAAA,QACjC,IAAA,EAAK,YAAA;AAAA,QACJ,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,KAAA,oBACC,GAAA,CAAC,SAAI,SAAA,EAAU,MAAA,EACb,8BAAC,MAAA,EAAA,EAAK,SAAA,EAAU,yCAAA,EACb,QAAA,EAAA,KAAA,EACH,CAAA,EACF,CAAA;AAAA,0BAEF,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,MAAA;AAAA,gBACA,WAAA,KAAgB,aACZ,gBAAA,GACA;AAAA,eACN;AAAA,cAEC;AAAA;AAAA,WACH;AAAA,UAAA,CACE,cAAc,KAAA,qBACd,GAAA;AAAA,YAAC,GAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,cAAA;AAAA,gBACA,QAAQ,YAAA,GAAe;AAAA,eACzB;AAAA,cAEC,QAAA,EAAA,KAAA,IAAS;AAAA;AAAA;AACZ;AAAA;AAAA,KAEJ;AAAA,EAEJ;AACF;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA;AAGzB,IAAO,mBAAA,GAAQ","file":"chunk-SMVVCZNM.js","sourcesContent":["import React from 'react'\n\nimport { cn } from '../utils'\nimport type { RadioGroupProps } from './types'\n\nexport const RadioGroup = React.memo<RadioGroupProps>(\n ({\n label,\n helperText,\n error,\n orientation = 'vertical',\n className,\n children,\n ref,\n ...props\n }) => {\n return (\n <div\n ref={ref}\n className={cn('w-full', className)}\n role=\"radiogroup\"\n {...props}\n >\n {label && (\n <div className=\"mb-2\">\n <span className=\"text-sm font-medium text-text-secondary\">\n {label}\n </span>\n </div>\n )}\n <div\n className={cn(\n 'flex',\n orientation === 'vertical'\n ? 'flex-col gap-2'\n : 'flex-row flex-wrap gap-4',\n )}\n >\n {children}\n </div>\n {(helperText || error) && (\n <p\n className={cn(\n 'mt-2 text-xs',\n error ? 'text-error' : 'text-text-secondary',\n )}\n >\n {error || helperText}\n </p>\n )}\n </div>\n )\n },\n)\n\nRadioGroup.displayName = 'RadioGroup'\n\nexport type * from './types'\nexport default RadioGroup\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/textarea/index.tsx"],"names":[],"mappings":"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","file":"chunk-SOIF4SHB.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport React from 'react'\n\nimport { cn, getValidationStatus, statusMessageVariants } from '../utils'\nimport type { TextareaProps } from './types'\n\nconst textareaVariants = cva(\n 'w-full rounded-md focus:border-primary transition-colors text-text-primary placeholder:text-text-secondary/50 disabled:opacity-50 disabled:cursor-not-allowed read-only:bg-surface read-only:cursor-default outline-none',\n {\n variants: {\n variant: {\n outline: 'bg-background border border-border',\n filled: 'bg-surface border border-transparent',\n },\n status: {\n default: '',\n error: '!border-error focus:!border-error',\n warning: '!border-warning focus:!border-warning',\n info: '!border-info focus:!border-info',\n success: '!border-success focus:!border-success',\n },\n size: {\n xs: 'min-h-(--textarea-min-height-xs) p-(--textarea-padding-xs) text-xs',\n sm: 'min-h-(--textarea-min-height-sm) p-(--textarea-padding-sm) text-sm',\n md: 'min-h-(--textarea-min-height-md) p-(--textarea-padding-md) text-base',\n lg: 'min-h-(--textarea-min-height-lg) p-(--textarea-padding-lg) text-lg',\n },\n resize: {\n none: 'resize-none',\n vertical: 'resize-y',\n horizontal: 'resize-x',\n both: 'resize',\n },\n fullWidth: {\n true: 'w-full',\n false: 'max-w-full',\n },\n },\n defaultVariants: {\n variant: 'outline',\n status: 'default',\n size: 'md',\n resize: 'vertical',\n fullWidth: true,\n },\n },\n)\n\nconst Textarea = React.memo<TextareaProps>(\n ({\n variant = 'outline',\n size = 'md',\n label,\n helperText,\n messagePosition = 'bottom',\n error,\n warning,\n info,\n success,\n resize = 'vertical',\n showCount = false,\n maxLength,\n autoResize = false,\n fullWidth = true,\n className,\n value,\n onChange,\n ref,\n ...props\n }) => {\n const internalRef = React.useRef<HTMLTextAreaElement>(null)\n const textareaRef =\n (ref as React.RefObject<HTMLTextAreaElement>) || internalRef\n const [internalValue, setInternalValue] = React.useState(value || '')\n const currentValue = value !== undefined ? value : internalValue\n const currentLength = String(currentValue).length\n\n // Use shared validation status utility\n const { status, message: helperMessage } = getValidationStatus({\n error,\n warning,\n info,\n success,\n helperText,\n })\n\n const handleChange = React.useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n if (value === undefined) {\n setInternalValue(e.target.value)\n }\n onChange?.(e)\n },\n [value, onChange],\n )\n\n React.useEffect(() => {\n if (autoResize && textareaRef.current) {\n textareaRef.current.style.height = 'auto'\n textareaRef.current.style.height = `${textareaRef.current.scrollHeight}px`\n }\n }, [currentValue, autoResize, textareaRef])\n\n const textareaElement = (\n <textarea\n ref={textareaRef}\n className={cn(\n textareaVariants({\n variant,\n status,\n size,\n resize: autoResize ? 'none' : resize,\n fullWidth,\n }),\n autoResize && 'overflow-hidden',\n className,\n )}\n maxLength={maxLength}\n value={currentValue}\n onChange={handleChange}\n aria-invalid={status === 'error'}\n aria-describedby={\n helperMessage ? `textarea-helper-${status}` : undefined\n }\n {...props}\n />\n )\n\n if (!label && !helperMessage && !showCount) return textareaElement\n\n return (\n <div\n className={cn(\n 'w-full flex flex-col relative',\n !fullWidth && 'inline-block',\n )}\n >\n <div className=\"flex gap-2 items-center relative mb-0.5\">\n {label && (\n <p className=\"text-sm font-medium text-text-secondary\">\n {label}\n {props.required && <span className=\"text-error ml-1\">*</span>}\n </p>\n )}\n {helperMessage && messagePosition === 'top' && (\n <p\n id={`textarea-helper-${status}`}\n className={statusMessageVariants({ status })}\n >\n {helperMessage}\n </p>\n )}\n {showCount && maxLength && (\n <span className=\"text-xs text-text-secondary absolute right-0\">\n {currentLength}/{maxLength}\n </span>\n )}\n </div>\n {textareaElement}\n {helperMessage && messagePosition === 'bottom' && (\n <p\n id={`textarea-helper-${status}`}\n className={cn(statusMessageVariants({ status }), 'mt-0.5')}\n >\n {helperMessage}\n </p>\n )}\n </div>\n )\n },\n)\n\nTextarea.displayName = 'Textarea'\n\nexport type * from './types'\nexport default Textarea\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/clipboard/index.tsx"],"names":[],"mappings":"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","file":"chunk-SYDNDYZJ.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport { Check, Copy } from 'lucide-react'\nimport React, { useState } from 'react'\n\nimport { cn, iconSizes } from '../utils'\nimport type { ClipboardProps } from './types'\n\nconst clipboardVariants = cva(\n 'inline-flex items-center justify-between gap-2 rounded-md font-medium transition-all cursor-pointer border',\n {\n variants: {\n size: {\n xs: 'px-2 py-1 text-xs',\n sm: 'px-3 py-1.5 text-xs',\n md: 'px-4 py-2 text-sm',\n lg: 'px-5 py-2.5 text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n)\n\nconst colorStyles = {\n default: {\n default: 'bg-background border-border text-text-primary hover:bg-surface',\n solid: 'bg-surface border-border text-text-primary hover:bg-surface/80',\n soft: 'bg-surface/50 border-border text-text-primary hover:bg-surface',\n },\n primary: {\n default: 'bg-background border-primary text-primary hover:bg-primary/10',\n solid: 'bg-primary border-primary text-background hover:bg-primary/90',\n soft: 'bg-primary/10 border-primary/30 text-primary hover:bg-primary/20',\n },\n secondary: {\n default:\n 'bg-background border-secondary text-secondary hover:bg-secondary/10',\n solid:\n 'bg-secondary border-secondary text-background hover:bg-secondary/90',\n soft: 'bg-secondary/10 border-secondary/30 text-secondary hover:bg-secondary/20',\n },\n accent: {\n default: 'bg-background border-accent text-accent hover:bg-accent/10',\n solid: 'bg-accent border-accent text-background hover:bg-accent/90',\n soft: 'bg-accent/10 border-accent/30 text-accent hover:bg-accent/20',\n },\n success: {\n default: 'bg-background border-success text-success hover:bg-success/10',\n solid: 'bg-success border-success text-background hover:bg-success/90',\n soft: 'bg-success/10 border-success/30 text-success hover:bg-success/20',\n },\n error: {\n default: 'bg-background border-error text-error hover:bg-error/10',\n solid: 'bg-error border-error text-background hover:bg-error/90',\n soft: 'bg-error/10 border-error/30 text-error hover:bg-error/20',\n },\n warning: {\n default: 'bg-background border-warning text-warning hover:bg-warning/10',\n solid: 'bg-warning border-warning text-background hover:bg-warning/90',\n soft: 'bg-warning/10 border-warning/30 text-warning hover:bg-warning/20',\n },\n info: {\n default: 'bg-background border-info text-info hover:bg-info/10',\n solid: 'bg-info border-info text-background hover:bg-info/90',\n soft: 'bg-info/10 border-info/30 text-info hover:bg-info/20',\n },\n}\n\nconst Clipboard = React.memo<ClipboardProps>(\n ({\n value,\n color = 'default',\n size = 'md',\n variant = 'default',\n showValue = true,\n successDuration = 2000,\n disabled = false,\n onCopy,\n className,\n ref,\n }) => {\n const [copied, setCopied] = useState(false)\n\n const handleCopy = async () => {\n if (disabled) return\n\n try {\n await navigator.clipboard.writeText(value)\n setCopied(true)\n onCopy?.()\n\n setTimeout(() => {\n setCopied(false)\n }, successDuration)\n } catch (err) {\n console.error('Failed to copy:', err)\n }\n }\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleCopy()\n }\n }\n\n return (\n <div\n ref={ref}\n role=\"button\"\n tabIndex={disabled ? -1 : 0}\n onClick={handleCopy}\n onKeyDown={handleKeyDown}\n aria-label={copied ? 'Copied to clipboard' : `Copy ${showValue ? value : 'to clipboard'}`}\n aria-disabled={disabled}\n className={cn(\n clipboardVariants({ size }),\n colorStyles[color][variant],\n disabled && 'opacity-50 cursor-not-allowed',\n className,\n )}\n >\n {showValue && <span className=\"font-mono truncate\">{value}</span>}\n {copied ? (\n <Check className={cn(iconSizes[size], 'flex-shrink-0')} />\n ) : (\n <Copy className={cn(iconSizes[size], 'flex-shrink-0')} />\n )}\n </div>\n )\n },\n)\n\nClipboard.displayName = 'Clipboard'\n\nexport type * from './types'\nexport default Clipboard\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/card/index.tsx"],"names":[],"mappings":"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","file":"chunk-TG2AECIN.js","sourcesContent":["import { cva } from \"class-variance-authority\";\nimport React from \"react\";\n\nimport { cn } from \"../utils\";\nimport type {\n CardActionProps,\n CardContentProps,\n CardDescriptionProps,\n CardFooterProps,\n CardHeaderProps,\n CardImageProps,\n CardProps,\n CardSize,\n CardTitleProps,\n} from \"./types\";\n\nconst cardVariants = cva(\"rounded-lg transition-all\", {\n variants: {\n variant: {\n default: \"bg-card text-card-foreground border\",\n solid: \"border\",\n outline: \"bg-transparent border\",\n soft: \"border-transparent\",\n ghost: \"border-transparent bg-transparent\",\n elevated: \"bg-card text-card-foreground border-transparent shadow-md\",\n },\n color: {\n default: \"border-border\",\n primary: \"border-primary\",\n secondary: \"border-secondary\",\n accent: \"border-accent\",\n success: \"border-success\",\n error: \"border-error\",\n warning: \"border-warning\",\n info: \"border-info\",\n },\n shadow: {\n none: \"\",\n sm: \"shadow-sm\",\n md: \"shadow-md\",\n lg: \"shadow-lg\",\n },\n hoverable: {\n true: \"hover:shadow-lg hover:-translate-y-0.5 cursor-pointer\",\n false: \"\",\n },\n clickable: {\n true: \"cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2\",\n false: \"\",\n },\n bordered: {\n true: \"\",\n false: \"border-transparent\",\n },\n },\n compoundVariants: [\n // Default variant with colors - just border color\n {\n variant: \"default\",\n color: \"default\",\n class: \"bg-card text-card-foreground border-border\",\n },\n {\n variant: \"default\",\n color: \"primary\",\n class: \"bg-card text-card-foreground border-primary\",\n },\n {\n variant: \"default\",\n color: \"secondary\",\n class: \"bg-card text-card-foreground border-secondary\",\n },\n {\n variant: \"default\",\n color: \"accent\",\n class: \"bg-card text-card-foreground border-accent\",\n },\n {\n variant: \"default\",\n color: \"success\",\n class: \"bg-card text-card-foreground border-success\",\n },\n {\n variant: \"default\",\n color: \"error\",\n class: \"bg-card text-card-foreground border-error\",\n },\n {\n variant: \"default\",\n color: \"warning\",\n class: \"bg-card text-card-foreground border-warning\",\n },\n {\n variant: \"default\",\n color: \"info\",\n class: \"bg-card text-card-foreground border-info\",\n },\n // Solid variant - full background color\n {\n variant: \"solid\",\n color: \"default\",\n class: \"bg-surface border-border text-text-primary\",\n },\n {\n variant: \"solid\",\n color: \"primary\",\n class: \"bg-primary border-primary text-background\",\n },\n {\n variant: \"solid\",\n color: \"secondary\",\n class: \"bg-secondary border-secondary text-background\",\n },\n {\n variant: \"solid\",\n color: \"accent\",\n class: \"bg-accent border-accent text-background\",\n },\n {\n variant: \"solid\",\n color: \"success\",\n class: \"bg-success border-success text-background\",\n },\n {\n variant: \"solid\",\n color: \"error\",\n class: \"bg-error border-error text-background\",\n },\n {\n variant: \"solid\",\n color: \"warning\",\n class: \"bg-warning border-warning text-background\",\n },\n {\n variant: \"solid\",\n color: \"info\",\n class: \"bg-info border-info text-background\",\n },\n // Outline variant - colored border, transparent bg\n {\n variant: \"outline\",\n color: \"default\",\n class: \"border-border text-text-primary\",\n },\n {\n variant: \"outline\",\n color: \"primary\",\n class: \"border-primary text-text-primary\",\n },\n {\n variant: \"outline\",\n color: \"secondary\",\n class: \"border-secondary text-text-primary\",\n },\n {\n variant: \"outline\",\n color: \"accent\",\n class: \"border-accent text-text-primary\",\n },\n {\n variant: \"outline\",\n color: \"success\",\n class: \"border-success text-text-primary\",\n },\n {\n variant: \"outline\",\n color: \"error\",\n class: \"border-error text-text-primary\",\n },\n {\n variant: \"outline\",\n color: \"warning\",\n class: \"border-warning text-text-primary\",\n },\n {\n variant: \"outline\",\n color: \"info\",\n class: \"border-info text-text-primary\",\n },\n // Soft variant - subtle background color (like button soft)\n {\n variant: \"soft\",\n color: \"default\",\n class: \"bg-surface text-text-primary\",\n },\n { variant: \"soft\", color: \"primary\", class: \"bg-primary/10 text-primary\" },\n {\n variant: \"soft\",\n color: \"secondary\",\n class: \"bg-secondary/10 text-secondary\",\n },\n { variant: \"soft\", color: \"accent\", class: \"bg-accent/10 text-accent\" },\n { variant: \"soft\", color: \"success\", class: \"bg-success/10 text-success\" },\n { variant: \"soft\", color: \"error\", class: \"bg-error/10 text-error\" },\n { variant: \"soft\", color: \"warning\", class: \"bg-warning/10 text-warning\" },\n { variant: \"soft\", color: \"info\", class: \"bg-info/10 text-info\" },\n // Ghost variant - no bg, no border\n { variant: \"ghost\", color: \"default\", class: \"text-text-primary\" },\n { variant: \"ghost\", color: \"primary\", class: \"text-primary\" },\n { variant: \"ghost\", color: \"secondary\", class: \"text-secondary\" },\n { variant: \"ghost\", color: \"accent\", class: \"text-accent\" },\n { variant: \"ghost\", color: \"success\", class: \"text-success\" },\n { variant: \"ghost\", color: \"error\", class: \"text-error\" },\n { variant: \"ghost\", color: \"warning\", class: \"text-warning\" },\n { variant: \"ghost\", color: \"info\", class: \"text-info\" },\n // Elevated - shadow, no border\n {\n variant: \"elevated\",\n color: \"default\",\n class: \"bg-card text-card-foreground\",\n },\n {\n variant: \"elevated\",\n color: \"primary\",\n class: \"bg-card text-card-foreground ring-1 ring-primary/20\",\n },\n {\n variant: \"elevated\",\n color: \"secondary\",\n class: \"bg-card text-card-foreground ring-1 ring-secondary/20\",\n },\n {\n variant: \"elevated\",\n color: \"accent\",\n class: \"bg-card text-card-foreground ring-1 ring-accent/20\",\n },\n {\n variant: \"elevated\",\n color: \"success\",\n class: \"bg-card text-card-foreground ring-1 ring-success/20\",\n },\n {\n variant: \"elevated\",\n color: \"error\",\n class: \"bg-card text-card-foreground ring-1 ring-error/20\",\n },\n {\n variant: \"elevated\",\n color: \"warning\",\n class: \"bg-card text-card-foreground ring-1 ring-warning/20\",\n },\n {\n variant: \"elevated\",\n color: \"info\",\n class: \"bg-card text-card-foreground ring-1 ring-info/20\",\n },\n ],\n defaultVariants: {\n variant: \"default\",\n color: \"default\",\n shadow: \"none\",\n hoverable: false,\n clickable: false,\n bordered: true,\n },\n});\n\n/**\n * Size-based padding classes\n */\nconst sizeClasses: Record<CardSize, string> = {\n xs: \"[--card-padding:0.5rem] [--card-content-padding:0.5rem] [--card-footer-padding:0.5rem]\",\n sm: \"[--card-padding:1rem] [--card-content-padding:1rem] [--card-footer-padding:1rem]\",\n md: \"[--card-padding:1.5rem] [--card-content-padding:1.5rem] [--card-footer-padding:1.5rem]\",\n lg: \"[--card-padding:2rem] [--card-content-padding:2rem] [--card-footer-padding:2rem]\",\n};\n\n/**\n * Card Component\n *\n * A versatile container component for grouping related content and actions.\n *\n * @example\n * <Card>\n * <CardHeader>\n * <CardTitle>Title</CardTitle>\n * <CardDescription>Description</CardDescription>\n * </CardHeader>\n * <CardContent>Content here</CardContent>\n * <CardFooter>\n * <Button>Action</Button>\n * </CardFooter>\n * </Card>\n */\nconst Card = React.memo<CardProps>(\n ({\n className,\n variant = \"default\",\n color = \"default\",\n size = \"md\",\n shadow = \"none\",\n hoverable = false,\n clickable = false,\n bordered = true,\n loading = false,\n onClick,\n ref,\n children,\n ...props\n }) => {\n const cardContent = loading ? (\n <div className=\"animate-pulse\">\n <div className=\"p-(--card-padding)\">\n <div className=\"h-4 bg-surface rounded w-3/4 mb-2\" />\n <div className=\"h-3 bg-surface rounded w-1/2\" />\n </div>\n <div className=\"p-(--card-content-padding) pt-0\">\n <div className=\"h-3 bg-surface rounded w-full mb-2\" />\n <div className=\"h-3 bg-surface rounded w-full mb-2\" />\n <div className=\"h-3 bg-surface rounded w-2/3\" />\n </div>\n </div>\n ) : (\n children\n );\n\n const cardClassName = cn(\n cardVariants({\n variant,\n color,\n shadow,\n hoverable,\n clickable,\n bordered,\n }),\n sizeClasses[size],\n className,\n );\n\n if (clickable) {\n return (\n <div\n ref={ref}\n role=\"button\"\n tabIndex={0}\n className={cardClassName}\n onClick={onClick}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n onClick?.(e as unknown as React.MouseEvent<HTMLDivElement>);\n }\n }}\n {...props}\n >\n {cardContent}\n </div>\n );\n }\n\n return (\n <div ref={ref} className={cardClassName} onClick={onClick} {...props}>\n {cardContent}\n </div>\n );\n },\n);\nCard.displayName = \"Card\";\n\n/**\n * CardHeader Component\n */\nconst CardHeader = React.memo<CardHeaderProps>(\n ({ className, ref, ...props }) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col gap-1.5 p-(--card-padding)\", className)}\n {...props}\n />\n ),\n);\nCardHeader.displayName = \"CardHeader\";\n\n/**\n * CardTitle Component\n */\nconst CardTitle = React.memo<CardTitleProps>(\n ({ className, as: Tag = \"h3\", ref, ...props }) => (\n <Tag\n ref={ref}\n className={cn(\n \"text-lg font-semibold leading-none tracking-tight\",\n className,\n )}\n {...props}\n />\n ),\n);\nCardTitle.displayName = \"CardTitle\";\n\n/**\n * CardDescription Component\n */\nconst CardDescription = React.memo<CardDescriptionProps>(\n ({ className, ref, ...props }) => (\n <p\n ref={ref}\n className={cn(\"text-sm text-text-secondary\", className)}\n {...props}\n />\n ),\n);\nCardDescription.displayName = \"CardDescription\";\n\n/**\n * CardContent Component\n */\nconst CardContent = React.memo<CardContentProps>(\n ({ className, ref, ...props }) => (\n <div\n ref={ref}\n className={cn(\"p-(--card-content-padding) pt-0\", className)}\n {...props}\n />\n ),\n);\nCardContent.displayName = \"CardContent\";\n\n/**\n * CardFooter Component\n */\nconst CardFooter = React.memo<CardFooterProps>(\n ({ className, ref, ...props }) => (\n <div\n ref={ref}\n className={cn(\n \"flex items-center p-(--card-footer-padding) pt-0\",\n className,\n )}\n {...props}\n />\n ),\n);\nCardFooter.displayName = \"CardFooter\";\n\n/**\n * CardAction Component - for buttons/actions in the header\n */\nconst CardAction = React.memo<CardActionProps>(\n ({ className, ref, ...props }) => (\n <div\n ref={ref}\n className={cn(\"ml-auto flex items-center gap-2\", className)}\n {...props}\n />\n ),\n);\nCardAction.displayName = \"CardAction\";\n\n/**\n * Aspect ratio classes for CardImage\n */\nconst aspectRatioClasses = {\n square: \"aspect-square\",\n video: \"aspect-video\",\n wide: \"aspect-[21/9]\",\n auto: \"\",\n};\n\n/**\n * Object fit classes for CardImage\n */\nconst objectFitClasses = {\n cover: \"object-cover\",\n contain: \"object-contain\",\n fill: \"object-fill\",\n none: \"object-none\",\n};\n\n/**\n * CardImage Component - for displaying images in cards\n */\nconst CardImage = React.memo<CardImageProps>(\n ({\n src,\n alt,\n position = \"top\",\n aspectRatio = \"video\",\n objectFit = \"cover\",\n className,\n ref,\n ...props\n }) => (\n <div\n className={cn(\n \"overflow-hidden\",\n position === \"top\" && \"rounded-t-lg\",\n position === \"bottom\" && \"rounded-b-lg\",\n aspectRatio !== \"auto\" && aspectRatioClasses[aspectRatio],\n )}\n >\n <img\n ref={ref}\n src={src}\n alt={alt}\n className={cn(\"w-full h-full\", objectFitClasses[objectFit], className)}\n loading=\"lazy\"\n {...props}\n />\n </div>\n ),\n);\nCardImage.displayName = \"CardImage\";\n\n// Attach sub-components to Card\nconst CardWithSubComponents = Object.assign(Card, {\n Header: CardHeader,\n Footer: CardFooter,\n Title: CardTitle,\n Description: CardDescription,\n Content: CardContent,\n Action: CardAction,\n Image: CardImage,\n});\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n CardAction,\n CardImage,\n cardVariants,\n};\n\nexport type * from \"./types\";\nexport default CardWithSubComponents;\n"]}
|