@alkimi.org/ui-kit 0.13.3 → 0.13.4
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/dist/COMPONENTS.md +1 -1
- package/dist/chunk-24EJLBGD.js.map +1 -1
- package/dist/chunk-372VUZFE.js.map +1 -1
- package/dist/chunk-3BVMHDYA.js.map +1 -1
- package/dist/chunk-3DUPSGEY.js.map +1 -1
- package/dist/chunk-3N5K4X23.js.map +1 -1
- package/dist/chunk-3PEPOFYU.js.map +1 -1
- package/dist/chunk-5L5DM2X5.js.map +1 -1
- package/dist/chunk-5X26XR44.js.map +1 -1
- package/dist/chunk-73MWZSJI.js.map +1 -1
- package/dist/chunk-7SOZ6MOV.js.map +1 -1
- package/dist/chunk-ALSJLUSL.js.map +1 -1
- package/dist/chunk-C4GUY2JQ.js.map +1 -1
- package/dist/chunk-CT2CRYC2.js.map +1 -1
- package/dist/chunk-DEWWZMYC.js.map +1 -1
- package/dist/chunk-EBNJXPHG.js.map +1 -1
- package/dist/chunk-EIM5R7AJ.js.map +1 -1
- package/dist/chunk-ETE5IUMO.js.map +1 -1
- package/dist/chunk-FUYXCJOQ.js.map +1 -1
- package/dist/chunk-I5INE4KG.js.map +1 -1
- package/dist/chunk-IJRJBDSO.js.map +1 -1
- package/dist/chunk-IJVB2BVO.js.map +1 -1
- package/dist/chunk-JFGDGMTA.js.map +1 -1
- package/dist/chunk-JOEQLSHD.js.map +1 -1
- package/dist/chunk-NCBOTFZQ.js.map +1 -1
- package/dist/chunk-PLQY2UFN.mjs +3 -0
- package/dist/chunk-PLQY2UFN.mjs.map +1 -0
- package/dist/chunk-RJMIOBXZ.js.map +1 -1
- package/dist/chunk-RRAIGAHU.js.map +1 -1
- package/dist/chunk-S6HVCOPV.js.map +1 -1
- package/dist/chunk-TDMRUCR6.js.map +1 -1
- package/dist/chunk-UJZP6L4S.js.map +1 -1
- package/dist/chunk-ULIOO55I.js.map +1 -1
- package/dist/chunk-UNR6ATUH.js.map +1 -1
- package/dist/chunk-WFD523CV.js.map +1 -1
- package/dist/chunk-WKRZIVSX.js.map +1 -1
- package/dist/chunk-WN6ZMWXU.js +3 -0
- package/dist/chunk-WN6ZMWXU.js.map +1 -0
- package/dist/chunk-WYRD4UAK.js.map +1 -1
- package/dist/chunk-XUVA7BXG.js.map +1 -1
- package/dist/chunk-XVF3OJWZ.js.map +1 -1
- package/dist/chunk-XYO4VLMF.js.map +1 -1
- package/dist/chunk-YE7OOLWB.js.map +1 -1
- package/dist/chunk-Z56XUN4K.js.map +1 -1
- package/dist/chunk-Z5V4P3EC.js.map +1 -1
- package/dist/components/GeometricFluidGrid.js.map +1 -1
- package/dist/components/GlitchLink.d.mts +2 -0
- package/dist/components/GlitchLink.d.ts +2 -0
- package/dist/components/GlitchLink.js +1 -1
- package/dist/components/GlitchLink.js.map +1 -1
- package/dist/components/GlitchLink.mjs +1 -1
- package/dist/components/PixelLoad.js.map +1 -1
- package/dist/components/TextDecoder.js.map +1 -1
- package/dist/components/accordion.js.map +1 -1
- package/dist/components/avatar.js.map +1 -1
- package/dist/components/breadcrumb.js.map +1 -1
- package/dist/components/button.d.mts +1 -1
- package/dist/components/button.d.ts +1 -1
- package/dist/components/button.js.map +1 -1
- package/dist/components/calendar.js.map +1 -1
- package/dist/components/card.js.map +1 -1
- package/dist/components/checkbox.js.map +1 -1
- package/dist/components/combobox.js.map +1 -1
- package/dist/components/command.js.map +1 -1
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/date-range-picker.js.map +1 -1
- package/dist/components/dialog.js.map +1 -1
- package/dist/components/drawer.js.map +1 -1
- package/dist/components/dropdown-menu.js.map +1 -1
- package/dist/components/field.js.map +1 -1
- package/dist/components/file-upload.js.map +1 -1
- package/dist/components/input.js.map +1 -1
- package/dist/components/label.js.map +1 -1
- package/dist/components/popover.js.map +1 -1
- package/dist/components/progress.js.map +1 -1
- package/dist/components/radio-group.js.map +1 -1
- package/dist/components/scroll-area.js.map +1 -1
- package/dist/components/separator.js.map +1 -1
- package/dist/components/sheet.js.map +1 -1
- package/dist/components/sidebar.js.map +1 -1
- package/dist/components/skeleton.js.map +1 -1
- package/dist/components/slider.js.map +1 -1
- package/dist/components/switch.js.map +1 -1
- package/dist/components/table.js.map +1 -1
- package/dist/components/tabs.js.map +1 -1
- package/dist/components/textarea.js.map +1 -1
- package/dist/components/toast.js.map +1 -1
- package/dist/components/tooltip.js.map +1 -1
- package/dist/components/tree-select.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-AEZ5XKKG.mjs +0 -3
- package/dist/chunk-AEZ5XKKG.mjs.map +0 -1
- package/dist/chunk-EJTY2ABY.js +0 -3
- package/dist/chunk-EJTY2ABY.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/aktoriukas/Documents/Projects/alkimi/alkimi-ui-kit/dist/chunk-Z56XUN4K.js","../src/components/combobox.tsx"],"names":["ComboboxChips","selectedOptions","onRemove","showRemoveIcon","disabled","className","chipClassName","handleRemove","value","e","jsx","Fragment","option","jsxs","cn","X","Combobox","options","groups","onValueChange","placeholder","searchPlaceholder","emptyMessage","disableLabelControls","error","multiple","values","onValuesChange","variant","searchable","onTriggerClick","showChipRemoveIcon","triggerProps","externalChipsOnly","open","setOpen","isMetrics","effectiveMultiple","allOptions","g","selectedOption","handleSelect","currentValue","newValues","v","handleRemoveValue","valueToRemove","getDisplayText"],"mappings":"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","file":"/Users/aktoriukas/Documents/Projects/alkimi/alkimi-ui-kit/dist/chunk-Z56XUN4K.js","sourcesContent":[null,"import * as React from \"react\"\nimport { Check, ChevronDown, Plus, X } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/components/command\"\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/popover\"\n\nexport interface ComboboxOption {\n value: string\n label: string\n color?: string\n}\n\nexport interface ComboboxGroup {\n label: string\n options: ComboboxOption[]\n}\n\nexport interface ComboboxProps {\n options?: ComboboxOption[]\n groups?: ComboboxGroup[]\n value?: string\n onValueChange?: (value: string) => void\n placeholder?: string\n searchPlaceholder?: string\n emptyMessage?: string\n disabled?: boolean\n disableLabelControls?: boolean\n className?: string\n error?: boolean\n multiple?: boolean\n values?: string[]\n onValuesChange?: (values: string[]) => void\n variant?: \"default\" | \"metrics\"\n searchable?: boolean\n onTriggerClick?: () => void\n showChipRemoveIcon?: boolean\n triggerProps?: React.ButtonHTMLAttributes<HTMLButtonElement>\n /** When true, external chips are not rendered inside the Combobox. Use ComboboxChips to render them externally. */\n externalChipsOnly?: boolean\n}\n\nexport interface ComboboxChipsProps {\n /** The selected options to display as chips */\n selectedOptions: ComboboxOption[]\n /** Callback when a chip is removed */\n onRemove?: (value: string) => void\n /** Whether to show the remove icon on chips */\n showRemoveIcon?: boolean\n /** Whether the chips are disabled */\n disabled?: boolean\n /** Additional class name for the chip container */\n className?: string\n /** Additional class name for individual chips */\n chipClassName?: string\n}\n\nexport function ComboboxChips({\n selectedOptions,\n onRemove,\n showRemoveIcon = true,\n disabled = false,\n className,\n chipClassName,\n}: ComboboxChipsProps) {\n if (selectedOptions.length === 0) return null\n\n const handleRemove = (value: string, e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n onRemove?.(value)\n }\n\n return (\n <>\n {selectedOptions.map((option) => (\n <div\n key={option.value}\n className={cn(\n \"inline-flex items-center gap-2 rounded-3xl border bg-transparent px-2 lg:px-3 py-1.5 text-sm\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n className,\n chipClassName\n )}\n style={{ borderColor: option.color || \"var(--border)\" }}\n >\n <span\n className=\"truncate text-xs font-medium\"\n style={{ color: option.color }}\n >\n {option.label}\n </span>\n {showRemoveIcon && !disabled && onRemove && (\n <button\n type=\"button\"\n onClick={(e) => handleRemove(option.value, e)}\n >\n <X\n className=\"size-3.5 cursor-pointer opacity-70 hover:opacity-100\"\n style={{ color: option.color }}\n />\n </button>\n )}\n </div>\n ))}\n </>\n )\n}\n\nexport function Combobox({\n options = [],\n groups,\n value,\n onValueChange,\n placeholder = \"Select option...\",\n searchPlaceholder = \"Search...\",\n emptyMessage = \"No option found.\",\n disabled = false,\n disableLabelControls = false,\n className,\n error = false,\n multiple = false,\n values = [],\n onValuesChange,\n variant = \"default\",\n searchable = true,\n onTriggerClick,\n showChipRemoveIcon = true,\n triggerProps,\n externalChipsOnly = false,\n}: ComboboxProps) {\n const [open, setOpen] = React.useState(false)\n const isMetrics = variant === \"metrics\"\n const effectiveMultiple = isMetrics ? true : multiple\n\n const allOptions = React.useMemo(() => {\n if (groups) return groups.flatMap((g) => g.options)\n return options\n }, [groups, options])\n\n const selectedOption = allOptions.find((option) => option.value === value)\n const selectedOptions = allOptions.filter((option) =>\n values.includes(option.value)\n )\n\n const handleSelect = (currentValue: string) => {\n if (effectiveMultiple) {\n const newValues = values.includes(currentValue)\n ? values.filter((v) => v !== currentValue)\n : [...values, currentValue]\n onValuesChange?.(newValues)\n } else {\n onValueChange?.(currentValue === value ? \"\" : currentValue)\n setOpen(false)\n }\n }\n\n const handleRemoveValue = (valueToRemove: string, e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n const newValues = values.filter((v) => v !== valueToRemove)\n onValuesChange?.(newValues)\n }\n\n const getDisplayText = () => {\n if (isMetrics) return placeholder\n if (effectiveMultiple) {\n if (selectedOptions.length === 0) return placeholder\n if (selectedOptions.length === 1) return selectedOptions[0].label\n return `${selectedOptions.length} selected`\n }\n return selectedOption ? selectedOption.label : placeholder\n }\n\n const renderOption = (option: ComboboxOption) => {\n const isSelected = effectiveMultiple\n ? values.includes(option.value)\n : value === option.value\n\n return (\n <CommandItem\n key={option.value}\n value={option.value}\n onSelect={handleSelect}\n className=\"rounded-[12px]\"\n >\n <span className=\"truncate\">{option.label}</span>\n <Check\n className={cn(\n \"ml-auto h-4 w-4 shrink-0\",\n isSelected ? \"opacity-100\" : \"opacity-0\"\n )}\n />\n </CommandItem>\n )\n }\n\n const renderSelectedChips = () => {\n if (isMetrics || !effectiveMultiple || selectedOptions.length === 0)\n return null\n\n return (\n <div className=\"px-2 py-1.5\">\n <div className=\"flex flex-wrap gap-1\">\n {selectedOptions.map((option) => (\n <div\n key={option.value}\n className=\"inline-flex items-center gap-1 rounded-md bg-secondary px-2 py-0.5 text-xs\"\n >\n <span className=\"truncate\">{option.label}</span>\n <X\n className=\"h-3 w-3 cursor-pointer\"\n onClick={(e) => handleRemoveValue(option.value, e)}\n />\n </div>\n ))}\n </div>\n </div>\n )\n }\n\n const renderExternalChips = () => {\n if (!isMetrics || externalChipsOnly || selectedOptions.length === 0)\n return null\n\n const canRemove = showChipRemoveIcon && !disabled && !disableLabelControls\n\n return (\n <ComboboxChips\n selectedOptions={selectedOptions}\n onRemove={canRemove ? handleRemoveChip : undefined}\n showRemoveIcon={canRemove}\n disabled={disabled || disableLabelControls}\n />\n )\n }\n\n const handleRemoveChip = (valueToRemove: string) => {\n const newValues = values.filter((v) => v !== valueToRemove)\n onValuesChange?.(newValues)\n }\n\n const popover = (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <button\n type=\"button\"\n role=\"combobox\"\n aria-expanded={open}\n disabled={disabled}\n {...triggerProps}\n onClick={\n onTriggerClick\n ? (e) => {\n e.preventDefault()\n onTriggerClick()\n }\n : undefined\n }\n className={cn(\n \"cursor-pointer flex h-8 lg:h-9 items-center justify-between rounded-3xl border border-border bg-background hover:bg-secondary px-2 lg:px-4 py-2 text-sm text-primary-accent ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 active:opacity-50 disabled:cursor-not-allowed disabled:opacity-50\",\n !isMetrics && \"my-2 w-full\",\n isMetrics && \"w-auto gap-2\",\n !value && !values.length && \"text-secondary-text\",\n error &&\n \"border-destructive-foreground focus-visible:ring-destructive-foreground\",\n isMetrics &&\n \"bg-muted text-primary-accent hover:bg-muted/20 border-muted text-xs font-medium\",\n className\n )}\n >\n {isMetrics && <Plus className=\"h-4 w-4 shrink-0\" />}\n <span className=\"truncate\">{getDisplayText()}</span>\n {!isMetrics && (\n <ChevronDown className=\"ml-2 h-4 w-4 shrink-0 opacity-50\" />\n )}\n </button>\n </PopoverTrigger>\n <PopoverContent\n className=\"overflow-hidden rounded-xl p-0\"\n align=\"start\"\n style={\n isMetrics\n ? { minWidth: 200 }\n : { width: \"var(--radix-popover-trigger-width)\" }\n }\n >\n <Command>\n {searchable && <CommandInput placeholder={searchPlaceholder} />}\n <CommandList>\n <CommandEmpty>{emptyMessage}</CommandEmpty>\n {groups ? (\n <>\n {renderSelectedChips()}\n {groups.map((group) => (\n <CommandGroup key={group.label} heading={group.label}>\n {group.options.map(renderOption)}\n </CommandGroup>\n ))}\n </>\n ) : (\n <CommandGroup>\n {renderSelectedChips()}\n {options.map(renderOption)}\n </CommandGroup>\n )}\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n )\n\n if (isMetrics) {\n return (\n <div className=\"flex flex-wrap items-center gap-2\">\n {popover}\n {renderExternalChips()}\n </div>\n )\n }\n\n return popover\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-Z56XUN4K.js","../src/components/combobox.tsx"],"names":["ComboboxChips","selectedOptions","onRemove","showRemoveIcon","disabled","className","chipClassName","handleRemove","value","e","jsx","Fragment","option","jsxs","cn","X","Combobox","options","groups","onValueChange","placeholder","searchPlaceholder","emptyMessage","disableLabelControls","error","multiple","values","onValuesChange","variant","searchable","onTriggerClick","showChipRemoveIcon","triggerProps","externalChipsOnly","open","setOpen","isMetrics","effectiveMultiple","allOptions","g","selectedOption","handleSelect","currentValue","newValues","v","handleRemoveValue","valueToRemove","getDisplayText"],"mappings":"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","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-Z56XUN4K.js","sourcesContent":[null,"import * as React from \"react\"\nimport { Check, ChevronDown, Plus, X } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/components/command\"\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/popover\"\n\nexport interface ComboboxOption {\n value: string\n label: string\n color?: string\n}\n\nexport interface ComboboxGroup {\n label: string\n options: ComboboxOption[]\n}\n\nexport interface ComboboxProps {\n options?: ComboboxOption[]\n groups?: ComboboxGroup[]\n value?: string\n onValueChange?: (value: string) => void\n placeholder?: string\n searchPlaceholder?: string\n emptyMessage?: string\n disabled?: boolean\n disableLabelControls?: boolean\n className?: string\n error?: boolean\n multiple?: boolean\n values?: string[]\n onValuesChange?: (values: string[]) => void\n variant?: \"default\" | \"metrics\"\n searchable?: boolean\n onTriggerClick?: () => void\n showChipRemoveIcon?: boolean\n triggerProps?: React.ButtonHTMLAttributes<HTMLButtonElement>\n /** When true, external chips are not rendered inside the Combobox. Use ComboboxChips to render them externally. */\n externalChipsOnly?: boolean\n}\n\nexport interface ComboboxChipsProps {\n /** The selected options to display as chips */\n selectedOptions: ComboboxOption[]\n /** Callback when a chip is removed */\n onRemove?: (value: string) => void\n /** Whether to show the remove icon on chips */\n showRemoveIcon?: boolean\n /** Whether the chips are disabled */\n disabled?: boolean\n /** Additional class name for the chip container */\n className?: string\n /** Additional class name for individual chips */\n chipClassName?: string\n}\n\nexport function ComboboxChips({\n selectedOptions,\n onRemove,\n showRemoveIcon = true,\n disabled = false,\n className,\n chipClassName,\n}: ComboboxChipsProps) {\n if (selectedOptions.length === 0) return null\n\n const handleRemove = (value: string, e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n onRemove?.(value)\n }\n\n return (\n <>\n {selectedOptions.map((option) => (\n <div\n key={option.value}\n className={cn(\n \"inline-flex items-center gap-2 rounded-3xl border bg-transparent px-2 lg:px-3 py-1.5 text-sm\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n className,\n chipClassName\n )}\n style={{ borderColor: option.color || \"var(--border)\" }}\n >\n <span\n className=\"truncate text-xs font-medium\"\n style={{ color: option.color }}\n >\n {option.label}\n </span>\n {showRemoveIcon && !disabled && onRemove && (\n <button\n type=\"button\"\n onClick={(e) => handleRemove(option.value, e)}\n >\n <X\n className=\"size-3.5 cursor-pointer opacity-70 hover:opacity-100\"\n style={{ color: option.color }}\n />\n </button>\n )}\n </div>\n ))}\n </>\n )\n}\n\nexport function Combobox({\n options = [],\n groups,\n value,\n onValueChange,\n placeholder = \"Select option...\",\n searchPlaceholder = \"Search...\",\n emptyMessage = \"No option found.\",\n disabled = false,\n disableLabelControls = false,\n className,\n error = false,\n multiple = false,\n values = [],\n onValuesChange,\n variant = \"default\",\n searchable = true,\n onTriggerClick,\n showChipRemoveIcon = true,\n triggerProps,\n externalChipsOnly = false,\n}: ComboboxProps) {\n const [open, setOpen] = React.useState(false)\n const isMetrics = variant === \"metrics\"\n const effectiveMultiple = isMetrics ? true : multiple\n\n const allOptions = React.useMemo(() => {\n if (groups) return groups.flatMap((g) => g.options)\n return options\n }, [groups, options])\n\n const selectedOption = allOptions.find((option) => option.value === value)\n const selectedOptions = allOptions.filter((option) =>\n values.includes(option.value)\n )\n\n const handleSelect = (currentValue: string) => {\n if (effectiveMultiple) {\n const newValues = values.includes(currentValue)\n ? values.filter((v) => v !== currentValue)\n : [...values, currentValue]\n onValuesChange?.(newValues)\n } else {\n onValueChange?.(currentValue === value ? \"\" : currentValue)\n setOpen(false)\n }\n }\n\n const handleRemoveValue = (valueToRemove: string, e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n const newValues = values.filter((v) => v !== valueToRemove)\n onValuesChange?.(newValues)\n }\n\n const getDisplayText = () => {\n if (isMetrics) return placeholder\n if (effectiveMultiple) {\n if (selectedOptions.length === 0) return placeholder\n if (selectedOptions.length === 1) return selectedOptions[0].label\n return `${selectedOptions.length} selected`\n }\n return selectedOption ? selectedOption.label : placeholder\n }\n\n const renderOption = (option: ComboboxOption) => {\n const isSelected = effectiveMultiple\n ? values.includes(option.value)\n : value === option.value\n\n return (\n <CommandItem\n key={option.value}\n value={option.value}\n onSelect={handleSelect}\n className=\"rounded-[12px]\"\n >\n <span className=\"truncate\">{option.label}</span>\n <Check\n className={cn(\n \"ml-auto h-4 w-4 shrink-0\",\n isSelected ? \"opacity-100\" : \"opacity-0\"\n )}\n />\n </CommandItem>\n )\n }\n\n const renderSelectedChips = () => {\n if (isMetrics || !effectiveMultiple || selectedOptions.length === 0)\n return null\n\n return (\n <div className=\"px-2 py-1.5\">\n <div className=\"flex flex-wrap gap-1\">\n {selectedOptions.map((option) => (\n <div\n key={option.value}\n className=\"inline-flex items-center gap-1 rounded-md bg-secondary px-2 py-0.5 text-xs\"\n >\n <span className=\"truncate\">{option.label}</span>\n <X\n className=\"h-3 w-3 cursor-pointer\"\n onClick={(e) => handleRemoveValue(option.value, e)}\n />\n </div>\n ))}\n </div>\n </div>\n )\n }\n\n const renderExternalChips = () => {\n if (!isMetrics || externalChipsOnly || selectedOptions.length === 0)\n return null\n\n const canRemove = showChipRemoveIcon && !disabled && !disableLabelControls\n\n return (\n <ComboboxChips\n selectedOptions={selectedOptions}\n onRemove={canRemove ? handleRemoveChip : undefined}\n showRemoveIcon={canRemove}\n disabled={disabled || disableLabelControls}\n />\n )\n }\n\n const handleRemoveChip = (valueToRemove: string) => {\n const newValues = values.filter((v) => v !== valueToRemove)\n onValuesChange?.(newValues)\n }\n\n const popover = (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <button\n type=\"button\"\n role=\"combobox\"\n aria-expanded={open}\n disabled={disabled}\n {...triggerProps}\n onClick={\n onTriggerClick\n ? (e) => {\n e.preventDefault()\n onTriggerClick()\n }\n : undefined\n }\n className={cn(\n \"cursor-pointer flex h-8 lg:h-9 items-center justify-between rounded-3xl border border-border bg-background hover:bg-secondary px-2 lg:px-4 py-2 text-sm text-primary-accent ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 active:opacity-50 disabled:cursor-not-allowed disabled:opacity-50\",\n !isMetrics && \"my-2 w-full\",\n isMetrics && \"w-auto gap-2\",\n !value && !values.length && \"text-secondary-text\",\n error &&\n \"border-destructive-foreground focus-visible:ring-destructive-foreground\",\n isMetrics &&\n \"bg-muted text-primary-accent hover:bg-muted/20 border-muted text-xs font-medium\",\n className\n )}\n >\n {isMetrics && <Plus className=\"h-4 w-4 shrink-0\" />}\n <span className=\"truncate\">{getDisplayText()}</span>\n {!isMetrics && (\n <ChevronDown className=\"ml-2 h-4 w-4 shrink-0 opacity-50\" />\n )}\n </button>\n </PopoverTrigger>\n <PopoverContent\n className=\"overflow-hidden rounded-xl p-0\"\n align=\"start\"\n style={\n isMetrics\n ? { minWidth: 200 }\n : { width: \"var(--radix-popover-trigger-width)\" }\n }\n >\n <Command>\n {searchable && <CommandInput placeholder={searchPlaceholder} />}\n <CommandList>\n <CommandEmpty>{emptyMessage}</CommandEmpty>\n {groups ? (\n <>\n {renderSelectedChips()}\n {groups.map((group) => (\n <CommandGroup key={group.label} heading={group.label}>\n {group.options.map(renderOption)}\n </CommandGroup>\n ))}\n </>\n ) : (\n <CommandGroup>\n {renderSelectedChips()}\n {options.map(renderOption)}\n </CommandGroup>\n )}\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n )\n\n if (isMetrics) {\n return (\n <div className=\"flex flex-wrap items-center gap-2\">\n {popover}\n {renderExternalChips()}\n </div>\n )\n }\n\n return popover\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-Z5V4P3EC.js","../src/components/radio-group.tsx"],"names":["RadioGroup","className","props","ref","jsx","cn","RadioGroupItem","Circle"],"mappings":"AAAA,uWAAY;AACZ,sDAAkC,uECCX,iHACc,2CACd,+CASnB,IALEA,CAAAA,CAAmB,CAAA,CAAA,UAAA,CAGvB,CAAC,CAAE,SAAA,CAAAC,CAAAA,CAAW,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAExBC,6BAAAA,CAAqB,CAAA,IAAA,CAApB,CACC,SAAA,CAAWC,gCAAAA,YAAG,CAAcJ,CAAS,CAAA,CACpC,GAAGC,CAAAA,CACJ,GAAA,CAAKC,CAAAA,CACP,CAEH,CAAA,CACDH,CAAAA,CAAW,WAAA,CAAkC,CAAA,CAAA,IAAA,CAAK,WAAA,CAElD,IAAMM,CAAAA,CAAuB,CAAA,CAAA,UAAA,CAG3B,CAAC,CAAE,SAAA,CAAAL,CAAAA,CAAW,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAExBC,6BAAAA,CAAqB,CAAA,IAAA,CAApB,CACC,GAAA,CAAKD,CAAAA,CACL,SAAA,CAAWE,gCAAAA,sUACT,CACAJ,CACF,CAAA,CACC,GAAGC,CAAAA,CAEJ,QAAA,CAAAE,6BAAAA,CAAqB,CAAA,SAAA,CAApB,CAA8B,SAAA,CAAU,kCAAA,CACvC,QAAA,CAAAA,6BAAAA,mBAACG,CAAA,CAAO,SAAA,CAAU,uCAAA,CAAwC,CAAA,CAC5D,CAAA,CACF,CAEH,CAAA,CACDD,CAAAA,CAAe,WAAA,CAAkC,CAAA,CAAA,IAAA,CAAK,WAAA,CAAA,6BAAA","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-Z5V4P3EC.js","sourcesContent":[null,"\"use client\"\n\nimport * as React from \"react\"\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\"\nimport { Circle } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>\n>(({ className, ...props }, ref) => {\n return (\n <RadioGroupPrimitive.Root\n className={cn(\"grid gap-2\", className)}\n {...props}\n ref={ref}\n />\n )\n})\nRadioGroup.displayName = RadioGroupPrimitive.Root.displayName\n\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => {\n return (\n <RadioGroupPrimitive.Item\n ref={ref}\n className={cn(\n \"aspect-square h-4 w-4 rounded-full border border-accent-muted bg-background ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 active:opacity-50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:border-accent data-[state=checked]:text-accent\",\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator className=\"flex items-center justify-center\">\n <Circle className=\"h-2.5 w-2.5 fill-current text-current\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n )\n})\nRadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName\n\nexport { RadioGroup, RadioGroupItem }\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/GeometricFluidGrid.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,qCAAqB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/GeometricFluidGrid.js"}
|
|
@@ -9,6 +9,8 @@ type GlitchLinkProps = {
|
|
|
9
9
|
className?: string;
|
|
10
10
|
asChild?: boolean;
|
|
11
11
|
duration?: number;
|
|
12
|
+
target?: string;
|
|
13
|
+
rel?: string;
|
|
12
14
|
};
|
|
13
15
|
declare const GlitchLink: ({ href, children, symbols, className, asChild, duration, ...props }: GlitchLinkProps) => react_jsx_runtime.JSX.Element;
|
|
14
16
|
|
|
@@ -9,6 +9,8 @@ type GlitchLinkProps = {
|
|
|
9
9
|
className?: string;
|
|
10
10
|
asChild?: boolean;
|
|
11
11
|
duration?: number;
|
|
12
|
+
target?: string;
|
|
13
|
+
rel?: string;
|
|
12
14
|
};
|
|
13
15
|
declare const GlitchLink: ({ href, children, symbols, className, asChild, duration, ...props }: GlitchLinkProps) => react_jsx_runtime.JSX.Element;
|
|
14
16
|
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
-
"use client";var
|
|
2
|
+
"use client";var _chunkWN6ZMWXUjs = require('../chunk-WN6ZMWXU.js');require('../chunk-FUYXCJOQ.js');require('../chunk-XYO4VLMF.js');exports.DEFAULT_SYMBOLS = _chunkWN6ZMWXUjs.a; exports.default = _chunkWN6ZMWXUjs.b;
|
|
3
3
|
//# sourceMappingURL=GlitchLink.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/GlitchLink.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAqC,gCAA6B,gCAA6B,mFAA0C","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/GlitchLink.js"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use client";import{a,b}from"../chunk-
|
|
2
|
+
"use client";import{a,b}from"../chunk-PLQY2UFN.mjs";import"../chunk-S5TKCF6T.mjs";import"../chunk-KPAOPUY2.mjs";export{a as DEFAULT_SYMBOLS,b as default};
|
|
3
3
|
//# sourceMappingURL=GlitchLink.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/PixelLoad.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,uCAAuB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/PixelLoad.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/TextDecoder.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,qCAAqB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/TextDecoder.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/accordion.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAyC,gCAA6B,gCAA6B,iLAAsF","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/accordion.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/avatar.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAA2C,gCAA6B,gCAA6B,yNAAqG","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/avatar.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/breadcrumb.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAA+C,gCAA6B,gCAA6B,+TAAyJ","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/breadcrumb.js"}
|
|
@@ -3,7 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const buttonVariants: (props?: ({
|
|
6
|
-
variant?: "default" | "
|
|
6
|
+
variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
7
7
|
size?: "default" | "sm" | "lg" | "icon" | "none" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
@@ -3,7 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const buttonVariants: (props?: ({
|
|
6
|
-
variant?: "default" | "
|
|
6
|
+
variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
7
7
|
size?: "default" | "sm" | "lg" | "icon" | "none" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/button.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAqC,gCAA6B,gCAA6B,iFAAwC","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/button.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/calendar.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAqC,gCAA6B,gCAA6B,gCAA6B,sFAA6C","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/calendar.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/card.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAA6C,gCAA6B,gCAA6B,oPAAuG","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/card.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/checkbox.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,sCAAsB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/checkbox.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/combobox.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAqC,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,kFAAyC","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/combobox.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/command.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAmD,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,mYAA2K","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/command.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/date-picker.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,gCAA6B,gCAA6B,wCAAwB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/date-picker.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/date-range-picker.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,gCAA6B,gCAA6B,6CAA6B","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/date-range-picker.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/dialog.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAqD,gCAA6B,gCAA6B,gCAA6B,gCAA6B,6aAA4L","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/dialog.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/drawer.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAA6C,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,qPAAwG","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/drawer.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/dropdown-menu.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAA+D,gCAA6B,gCAA6B,6uBAA+X","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/dropdown-menu.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/field.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAuC,gCAA6B,gCAA6B,2HAAyD","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/field.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/file-upload.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAmC,gCAA6B,gCAA6B,gCAA6B,wCAAwB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/file-upload.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/input.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAmC,gCAA6B,gCAA6B,mCAAmB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/input.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/label.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,mCAAmB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/label.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/popover.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAuC,gCAA6B,gCAA6B,+HAA6D","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/popover.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/progress.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,sCAAsB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/progress.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/radio-group.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAqC,gCAA6B,gCAA6B,qFAA4C","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/radio-group.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/scroll-area.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAqC,gCAA6B,gCAA6B,gFAAuC","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/scroll-area.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/separator.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,uCAAuB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/separator.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/sheet.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAqD,gCAA6B,gCAA6B,maAAkL","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/sheet.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/sidebar.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmF,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,gCAA6B,inCAAygB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/sidebar.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/skeleton.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAmC,gCAA6B,gCAA6B,sCAAsB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/skeleton.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/slider.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,oCAAoB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/slider.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/switch.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,oCAAoB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/switch.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/table.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmD,gCAA6B,gCAA6B,+WAAuJ","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/table.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/tabs.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAyC,gCAA6B,gCAA6B,6JAAkE","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/tabs.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/textarea.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,uDAAmC,gCAA6B,gCAA6B,sCAAsB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/textarea.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/toast.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAqC,gCAA6B,yEAAgC","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/toast.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/tooltip.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAyC,gCAA6B,gCAA6B,6KAAkF","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/tooltip.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/tree-select.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY,CAAC,uDAAmC,gCAA6B,gCAA6B,gCAA6B,gCAA6B,wCAAwB","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/components/tree-select.js"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
-
var _chunkALSJLUSLjs = require('./chunk-ALSJLUSL.js');var _chunkETE5IUMOjs = require('./chunk-ETE5IUMO.js');var _chunk5X26XR44js = require('./chunk-5X26XR44.js');var _chunkWKRZIVSXjs = require('./chunk-WKRZIVSX.js');var _chunkTDMRUCR6js = require('./chunk-TDMRUCR6.js');var _chunkDEWWZMYCjs = require('./chunk-DEWWZMYC.js');var _chunkYE7OOLWBjs = require('./chunk-YE7OOLWB.js');var _chunkC4GUY2JQjs = require('./chunk-C4GUY2JQ.js');var _chunkZ5V4P3ECjs = require('./chunk-Z5V4P3EC.js');var _chunk3N5K4X23js = require('./chunk-3N5K4X23.js');var _chunkRRAIGAHUjs = require('./chunk-RRAIGAHU.js');var _chunk7SOZ6MOVjs = require('./chunk-7SOZ6MOV.js');var _chunkUNR6ATUHjs = require('./chunk-UNR6ATUH.js');var _chunk5L5DM2X5js = require('./chunk-5L5DM2X5.js');var _chunk24EJLBGDjs = require('./chunk-24EJLBGD.js');var _chunkIJRJBDSOjs = require('./chunk-IJRJBDSO.js');var _chunkRJMIOBXZjs = require('./chunk-RJMIOBXZ.js');var _chunkEIM5R7AJjs = require('./chunk-EIM5R7AJ.js');var _chunkCT2CRYC2js = require('./chunk-CT2CRYC2.js');var _chunkXUVA7BXGjs = require('./chunk-XUVA7BXG.js');var _chunkXVF3OJWZjs = require('./chunk-XVF3OJWZ.js');var _chunkI5INE4KGjs = require('./chunk-I5INE4KG.js');var _chunk73MWZSJIjs = require('./chunk-73MWZSJI.js');var _chunkJOEQLSHDjs = require('./chunk-JOEQLSHD.js');var _chunkWYRD4UAKjs = require('./chunk-WYRD4UAK.js');var _chunkZ56XUN4Kjs = require('./chunk-Z56XUN4K.js');var _chunkULIOO55Ijs = require('./chunk-ULIOO55I.js');var _chunkS6HVCOPVjs = require('./chunk-S6HVCOPV.js');var _chunkJFGDGMTAjs = require('./chunk-JFGDGMTA.js');require('./chunk-3BVMHDYA.js');var _chunkNCBOTFZQjs = require('./chunk-NCBOTFZQ.js');var _chunk3DUPSGEYjs = require('./chunk-3DUPSGEY.js');var _chunkIJVB2BVOjs = require('./chunk-IJVB2BVO.js');var _chunk3PEPOFYUjs = require('./chunk-3PEPOFYU.js');var
|
|
2
|
+
var _chunkALSJLUSLjs = require('./chunk-ALSJLUSL.js');var _chunkETE5IUMOjs = require('./chunk-ETE5IUMO.js');var _chunk5X26XR44js = require('./chunk-5X26XR44.js');var _chunkWKRZIVSXjs = require('./chunk-WKRZIVSX.js');var _chunkTDMRUCR6js = require('./chunk-TDMRUCR6.js');var _chunkDEWWZMYCjs = require('./chunk-DEWWZMYC.js');var _chunkYE7OOLWBjs = require('./chunk-YE7OOLWB.js');var _chunkC4GUY2JQjs = require('./chunk-C4GUY2JQ.js');var _chunkZ5V4P3ECjs = require('./chunk-Z5V4P3EC.js');var _chunk3N5K4X23js = require('./chunk-3N5K4X23.js');var _chunkRRAIGAHUjs = require('./chunk-RRAIGAHU.js');var _chunk7SOZ6MOVjs = require('./chunk-7SOZ6MOV.js');var _chunkUNR6ATUHjs = require('./chunk-UNR6ATUH.js');var _chunk5L5DM2X5js = require('./chunk-5L5DM2X5.js');var _chunk24EJLBGDjs = require('./chunk-24EJLBGD.js');var _chunkIJRJBDSOjs = require('./chunk-IJRJBDSO.js');var _chunkRJMIOBXZjs = require('./chunk-RJMIOBXZ.js');var _chunkEIM5R7AJjs = require('./chunk-EIM5R7AJ.js');var _chunkCT2CRYC2js = require('./chunk-CT2CRYC2.js');var _chunkXUVA7BXGjs = require('./chunk-XUVA7BXG.js');var _chunkXVF3OJWZjs = require('./chunk-XVF3OJWZ.js');var _chunkI5INE4KGjs = require('./chunk-I5INE4KG.js');var _chunk73MWZSJIjs = require('./chunk-73MWZSJI.js');var _chunkJOEQLSHDjs = require('./chunk-JOEQLSHD.js');var _chunkWYRD4UAKjs = require('./chunk-WYRD4UAK.js');var _chunkZ56XUN4Kjs = require('./chunk-Z56XUN4K.js');var _chunkULIOO55Ijs = require('./chunk-ULIOO55I.js');var _chunkS6HVCOPVjs = require('./chunk-S6HVCOPV.js');var _chunkJFGDGMTAjs = require('./chunk-JFGDGMTA.js');require('./chunk-3BVMHDYA.js');var _chunkNCBOTFZQjs = require('./chunk-NCBOTFZQ.js');var _chunk3DUPSGEYjs = require('./chunk-3DUPSGEY.js');var _chunkIJVB2BVOjs = require('./chunk-IJVB2BVO.js');var _chunk3PEPOFYUjs = require('./chunk-3PEPOFYU.js');var _chunkWN6ZMWXUjs = require('./chunk-WN6ZMWXU.js');var _chunkWFD523CVjs = require('./chunk-WFD523CV.js');var _chunkEBNJXPHGjs = require('./chunk-EBNJXPHG.js');var _chunkUJZP6L4Sjs = require('./chunk-UJZP6L4S.js');var _chunk372VUZFEjs = require('./chunk-372VUZFE.js');var _chunkFUYXCJOQjs = require('./chunk-FUYXCJOQ.js');require('./chunk-XYO4VLMF.js');exports.Accordion = _chunkUJZP6L4Sjs.a; exports.AccordionContent = _chunkUJZP6L4Sjs.d; exports.AccordionItem = _chunkUJZP6L4Sjs.b; exports.AccordionTrigger = _chunkUJZP6L4Sjs.c; exports.Breadcrumb = _chunk73MWZSJIjs.a; exports.BreadcrumbEllipsis = _chunk73MWZSJIjs.g; exports.BreadcrumbItem = _chunk73MWZSJIjs.c; exports.BreadcrumbLink = _chunk73MWZSJIjs.d; exports.BreadcrumbList = _chunk73MWZSJIjs.b; exports.BreadcrumbPage = _chunk73MWZSJIjs.e; exports.BreadcrumbSeparator = _chunk73MWZSJIjs.f; exports.Button = _chunkIJVB2BVOjs.b; exports.Calendar = _chunk3DUPSGEYjs.a; exports.Card = _chunkJOEQLSHDjs.a; exports.CardContent = _chunkJOEQLSHDjs.e; exports.CardDescription = _chunkJOEQLSHDjs.d; exports.CardFooter = _chunkJOEQLSHDjs.f; exports.CardHeader = _chunkJOEQLSHDjs.b; exports.CardTitle = _chunkJOEQLSHDjs.c; exports.Checkbox = _chunkWYRD4UAKjs.a; exports.Combobox = _chunkZ56XUN4Kjs.b; exports.ComboboxChips = _chunkZ56XUN4Kjs.a; exports.Command = _chunkS6HVCOPVjs.a; exports.CommandDialog = _chunkS6HVCOPVjs.b; exports.CommandEmpty = _chunkS6HVCOPVjs.e; exports.CommandGroup = _chunkS6HVCOPVjs.f; exports.CommandInput = _chunkS6HVCOPVjs.c; exports.CommandItem = _chunkS6HVCOPVjs.h; exports.CommandList = _chunkS6HVCOPVjs.d; exports.CommandSeparator = _chunkS6HVCOPVjs.g; exports.CommandShortcut = _chunkS6HVCOPVjs.i; exports.DatePicker = _chunkNCBOTFZQjs.a; exports.DateRangePicker = _chunk24EJLBGDjs.a; exports.Dialog = _chunkJFGDGMTAjs.a; exports.DialogClose = _chunkJFGDGMTAjs.d; exports.DialogContent = _chunkJFGDGMTAjs.f; exports.DialogDescription = _chunkJFGDGMTAjs.j; exports.DialogFooter = _chunkJFGDGMTAjs.h; exports.DialogHeader = _chunkJFGDGMTAjs.g; exports.DialogOverlay = _chunkJFGDGMTAjs.e; exports.DialogPortal = _chunkJFGDGMTAjs.c; exports.DialogTitle = _chunkJFGDGMTAjs.i; exports.DialogTrigger = _chunkJFGDGMTAjs.b; exports.Drawer = _chunkIJRJBDSOjs.b; exports.DrawerBody = _chunkIJRJBDSOjs.e; exports.DrawerFooter = _chunkIJRJBDSOjs.f; exports.DrawerHeader = _chunkIJRJBDSOjs.c; exports.DrawerTitle = _chunkIJRJBDSOjs.d; exports.DropdownMenu = _chunkEIM5R7AJjs.a; exports.DropdownMenuCheckboxItem = _chunkEIM5R7AJjs.k; exports.DropdownMenuContent = _chunkEIM5R7AJjs.i; exports.DropdownMenuGroup = _chunkEIM5R7AJjs.c; exports.DropdownMenuItem = _chunkEIM5R7AJjs.j; exports.DropdownMenuLabel = _chunkEIM5R7AJjs.m; exports.DropdownMenuPortal = _chunkEIM5R7AJjs.d; exports.DropdownMenuRadioGroup = _chunkEIM5R7AJjs.f; exports.DropdownMenuRadioItem = _chunkEIM5R7AJjs.l; exports.DropdownMenuSeparator = _chunkEIM5R7AJjs.n; exports.DropdownMenuShortcut = _chunkEIM5R7AJjs.o; exports.DropdownMenuSub = _chunkEIM5R7AJjs.e; exports.DropdownMenuSubContent = _chunkEIM5R7AJjs.h; exports.DropdownMenuSubTrigger = _chunkEIM5R7AJjs.g; exports.DropdownMenuTrigger = _chunkEIM5R7AJjs.b; exports.Field = _chunkCT2CRYC2js.a; exports.FieldDescription = _chunkCT2CRYC2js.c; exports.FieldLabel = _chunkCT2CRYC2js.b; exports.FileUpload = _chunkXUVA7BXGjs.a; exports.GeometricFluidGrid = _chunk3PEPOFYUjs.a; exports.GlitchLink = _chunkWN6ZMWXUjs.b; exports.Input = _chunkXVF3OJWZjs.a; exports.Label = _chunkI5INE4KGjs.a; exports.PixelLoad = _chunkWFD523CVjs.a; exports.Popover = _chunkULIOO55Ijs.a; exports.PopoverContent = _chunkULIOO55Ijs.c; exports.PopoverTrigger = _chunkULIOO55Ijs.b; exports.Progress = _chunkC4GUY2JQjs.a; exports.RadioGroup = _chunkZ5V4P3ECjs.a; exports.RadioGroupItem = _chunkZ5V4P3ECjs.b; exports.ScrollArea = _chunkRJMIOBXZjs.a; exports.ScrollBar = _chunkRJMIOBXZjs.b; exports.Separator = _chunk7SOZ6MOVjs.a; exports.Sheet = _chunkUNR6ATUHjs.a; exports.SheetClose = _chunkUNR6ATUHjs.c; exports.SheetContent = _chunkUNR6ATUHjs.f; exports.SheetDescription = _chunkUNR6ATUHjs.j; exports.SheetFooter = _chunkUNR6ATUHjs.h; exports.SheetHeader = _chunkUNR6ATUHjs.g; exports.SheetOverlay = _chunkUNR6ATUHjs.e; exports.SheetPortal = _chunkUNR6ATUHjs.d; exports.SheetTitle = _chunkUNR6ATUHjs.i; exports.SheetTrigger = _chunkUNR6ATUHjs.b; exports.Sidebar = _chunk3N5K4X23js.d; exports.SidebarBanner = _chunk3N5K4X23js.c; exports.SidebarContent = _chunk3N5K4X23js.l; exports.SidebarFooter = _chunk3N5K4X23js.j; exports.SidebarGroup = _chunk3N5K4X23js.m; exports.SidebarGroupAction = _chunk3N5K4X23js.o; exports.SidebarGroupContent = _chunk3N5K4X23js.p; exports.SidebarGroupLabel = _chunk3N5K4X23js.n; exports.SidebarHeader = _chunk3N5K4X23js.i; exports.SidebarInput = _chunk3N5K4X23js.h; exports.SidebarInset = _chunk3N5K4X23js.g; exports.SidebarMenu = _chunk3N5K4X23js.q; exports.SidebarMenuAction = _chunk3N5K4X23js.t; exports.SidebarMenuBadge = _chunk3N5K4X23js.u; exports.SidebarMenuButton = _chunk3N5K4X23js.s; exports.SidebarMenuItem = _chunk3N5K4X23js.r; exports.SidebarMenuSkeleton = _chunk3N5K4X23js.v; exports.SidebarMenuSub = _chunk3N5K4X23js.w; exports.SidebarMenuSubButton = _chunk3N5K4X23js.y; exports.SidebarMenuSubItem = _chunk3N5K4X23js.x; exports.SidebarProvider = _chunk3N5K4X23js.b; exports.SidebarRail = _chunk3N5K4X23js.f; exports.SidebarSeparator = _chunk3N5K4X23js.k; exports.SidebarTrigger = _chunk3N5K4X23js.e; exports.Skeleton = _chunk5L5DM2X5js.a; exports.Slider = _chunkALSJLUSLjs.a; exports.Switch = _chunkETE5IUMOjs.a; exports.Table = _chunk5X26XR44js.a; exports.TableBody = _chunk5X26XR44js.c; exports.TableCaption = _chunk5X26XR44js.i; exports.TableCell = _chunk5X26XR44js.g; exports.TableCellAction = _chunk5X26XR44js.h; exports.TableFooter = _chunk5X26XR44js.d; exports.TableHead = _chunk5X26XR44js.f; exports.TableHeader = _chunk5X26XR44js.b; exports.TableRow = _chunk5X26XR44js.e; exports.Tabs = _chunkWKRZIVSXjs.a; exports.TabsContent = _chunkWKRZIVSXjs.d; exports.TabsList = _chunkWKRZIVSXjs.b; exports.TabsTrigger = _chunkWKRZIVSXjs.c; exports.TextDecoder = _chunkEBNJXPHGjs.a; exports.Textarea = _chunkTDMRUCR6js.a; exports.Toaster = _chunkDEWWZMYCjs.b; exports.Tooltip = _chunkRRAIGAHUjs.b; exports.TooltipContent = _chunkRRAIGAHUjs.d; exports.TooltipProvider = _chunkRRAIGAHUjs.a; exports.TooltipTrigger = _chunkRRAIGAHUjs.c; exports.TreeSelect = _chunkYE7OOLWBjs.a; exports.buttonVariants = _chunkIJVB2BVOjs.a; exports.cn = _chunkFUYXCJOQjs.a; exports.getSeedColor = _chunk372VUZFEjs.b; exports.getSphericalGradient = _chunk372VUZFEjs.a; exports.toast = _chunkDEWWZMYCjs.a; exports.useDrawer = _chunkIJRJBDSOjs.a; exports.useSidebar = _chunk3N5K4X23js.a;
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/index.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ,sDAAwC,sDAAyC,sDAAyG,sDAA6D,sDAAyC,sDAAiD,sDAAyC,sDAAyC,sDAAiD,sDAA2M,sDAA6D,sDAAwC,sDAAuG,sDAAwC,sDAAyC,sDAAiF,sDAAgD,sDAAyJ,sDAAyD,sDAAyC,sDAAwC,sDAAyC,sDAAyF,sDAAiF,sDAAyC,sDAAiD,sDAAyD,sDAAyG,sDAAiH,+BAA4B,sDAAyC,sDAAyC,sDAA0C,sDAAwC,sDAAwC,sDAAwC,sDAAwC,sDAAiE,sDAAiD,sDAAwC,+BAA4B,irMAAotF","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/index.js"}
|
package/dist/index.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{a as Da}from"./chunk-VGPTOLNX.mjs";import{a as Ta}from"./chunk-NHM7DO42.mjs";import{a as It,b as Ft,c as jt,d as Bt,e as Lt,f as Gt,g as Ht,h as Rt,i as At}from"./chunk-C7GTPYMH.mjs";import{a as e,b as o,c as i,d as n}from"./chunk-NU2US7UW.mjs";import{a as ct}from"./chunk-MQMO7DMT.mjs";import{a as ba,b as fa}from"./chunk-RRJV4OGF.mjs";import{a as pa}from"./chunk-MKZJL4AD.mjs";import{a as Ca}from"./chunk-XY6RUEAT.mjs";import{a as ha,b as ga}from"./chunk-IKJ4QRNB.mjs";import{a as T,b as M,c as P,d as I,e as F,f as j,g as B,h as L,i as G,j as H,k as R,l as A,m as N,n as E,o as U,p as O,q,r as V,s as J,t as K,u as Q,v as W,w as X,x as Y,y as Z}from"./chunk-YIVVQTGD.mjs";import{a as _,b as S,c as C,d as D}from"./chunk-QC5MA4WL.mjs";import{a as h}from"./chunk-YBV4CPVD.mjs";import{a as g,b as v,c as w,d as u,e as m,f as b,g as f,h as x,i as y,j as k}from"./chunk-QVMQ55JW.mjs";import{a as z}from"./chunk-CNRZOMR4.mjs";import{a as ht}from"./chunk-EDOMXQSZ.mjs";import{a as at,b as rt,c as et,d as ot,e as it,f as nt}from"./chunk-JD2CTTZW.mjs";import{a as $,b as tt}from"./chunk-5TVDBV74.mjs";import{a as ut,b as mt,c as bt,d as ft,e as xt,f as yt,g as kt,h as zt,i as _t,j as St,k as Ct,l as Dt,m as Tt,n as Mt,o as Pt}from"./chunk-NKLBPY3T.mjs";import{a as gt,b as vt,c as wt}from"./chunk-L36V45FD.mjs";import{a as dt}from"./chunk-JYA3425I.mjs";import{a as p}from"./chunk-YSIF7HA3.mjs";import{a as st}from"./chunk-WY4HCUAP.mjs";import{a as Ma,b as Pa,c as Ia,d as Fa,e as ja,f as Ba,g as La}from"./chunk-OLF2HLRF.mjs";import{a as xa,b as ya,c as ka,d as za,e as _a,f as Sa}from"./chunk-TUADTU4Z.mjs";import{a as la}from"./chunk-NKELJSLY.mjs";import{a as da,b as sa}from"./chunk-CXU655N7.mjs";import{a as Nt,b as Et,c as Ut}from"./chunk-FZ3NXOFK.mjs";import{a as $t,b as ta,c as aa,d as ra,e as ea,f as oa,g as ia,h as na,i as ca}from"./chunk-GI7CX63V.mjs";import{a as Ot,b as qt,c as Vt,d as Jt,e as Kt,f as Qt,g as Wt,h as Xt,i as Yt,j as Zt}from"./chunk-O5KQEJGL.mjs";import"./chunk-4LR7SOCY.mjs";import{a as pt}from"./chunk-KN2ZJ5E6.mjs";import{a as lt}from"./chunk-EOFZPG26.mjs";import{a,b as r}from"./chunk-QZKQORLQ.mjs";import{a as l}from"./chunk-Z6RAFZ3C.mjs";import{b as d}from"./chunk-
|
|
2
|
+
import{a as Da}from"./chunk-VGPTOLNX.mjs";import{a as Ta}from"./chunk-NHM7DO42.mjs";import{a as It,b as Ft,c as jt,d as Bt,e as Lt,f as Gt,g as Ht,h as Rt,i as At}from"./chunk-C7GTPYMH.mjs";import{a as e,b as o,c as i,d as n}from"./chunk-NU2US7UW.mjs";import{a as ct}from"./chunk-MQMO7DMT.mjs";import{a as ba,b as fa}from"./chunk-RRJV4OGF.mjs";import{a as pa}from"./chunk-MKZJL4AD.mjs";import{a as Ca}from"./chunk-XY6RUEAT.mjs";import{a as ha,b as ga}from"./chunk-IKJ4QRNB.mjs";import{a as T,b as M,c as P,d as I,e as F,f as j,g as B,h as L,i as G,j as H,k as R,l as A,m as N,n as E,o as U,p as O,q,r as V,s as J,t as K,u as Q,v as W,w as X,x as Y,y as Z}from"./chunk-YIVVQTGD.mjs";import{a as _,b as S,c as C,d as D}from"./chunk-QC5MA4WL.mjs";import{a as h}from"./chunk-YBV4CPVD.mjs";import{a as g,b as v,c as w,d as u,e as m,f as b,g as f,h as x,i as y,j as k}from"./chunk-QVMQ55JW.mjs";import{a as z}from"./chunk-CNRZOMR4.mjs";import{a as ht}from"./chunk-EDOMXQSZ.mjs";import{a as at,b as rt,c as et,d as ot,e as it,f as nt}from"./chunk-JD2CTTZW.mjs";import{a as $,b as tt}from"./chunk-5TVDBV74.mjs";import{a as ut,b as mt,c as bt,d as ft,e as xt,f as yt,g as kt,h as zt,i as _t,j as St,k as Ct,l as Dt,m as Tt,n as Mt,o as Pt}from"./chunk-NKLBPY3T.mjs";import{a as gt,b as vt,c as wt}from"./chunk-L36V45FD.mjs";import{a as dt}from"./chunk-JYA3425I.mjs";import{a as p}from"./chunk-YSIF7HA3.mjs";import{a as st}from"./chunk-WY4HCUAP.mjs";import{a as Ma,b as Pa,c as Ia,d as Fa,e as ja,f as Ba,g as La}from"./chunk-OLF2HLRF.mjs";import{a as xa,b as ya,c as ka,d as za,e as _a,f as Sa}from"./chunk-TUADTU4Z.mjs";import{a as la}from"./chunk-NKELJSLY.mjs";import{a as da,b as sa}from"./chunk-CXU655N7.mjs";import{a as Nt,b as Et,c as Ut}from"./chunk-FZ3NXOFK.mjs";import{a as $t,b as ta,c as aa,d as ra,e as ea,f as oa,g as ia,h as na,i as ca}from"./chunk-GI7CX63V.mjs";import{a as Ot,b as qt,c as Vt,d as Jt,e as Kt,f as Qt,g as Wt,h as Xt,i as Yt,j as Zt}from"./chunk-O5KQEJGL.mjs";import"./chunk-4LR7SOCY.mjs";import{a as pt}from"./chunk-KN2ZJ5E6.mjs";import{a as lt}from"./chunk-EOFZPG26.mjs";import{a,b as r}from"./chunk-QZKQORLQ.mjs";import{a as l}from"./chunk-Z6RAFZ3C.mjs";import{b as d}from"./chunk-PLQY2UFN.mjs";import{a as s}from"./chunk-7ONK6HHN.mjs";import{a as c}from"./chunk-23ZKDWV4.mjs";import{a as va,b as wa,c as ua,d as ma}from"./chunk-4PTRLHCB.mjs";import{a as Ga,b as Ha}from"./chunk-4LUOGI24.mjs";import{a as t}from"./chunk-S5TKCF6T.mjs";import"./chunk-KPAOPUY2.mjs";export{va as Accordion,ma as AccordionContent,wa as AccordionItem,ua as AccordionTrigger,Ma as Breadcrumb,La as BreadcrumbEllipsis,Ia as BreadcrumbItem,Fa as BreadcrumbLink,Pa as BreadcrumbList,ja as BreadcrumbPage,Ba as BreadcrumbSeparator,r as Button,lt as Calendar,xa as Card,_a as CardContent,za as CardDescription,Sa as CardFooter,ya as CardHeader,ka as CardTitle,la as Checkbox,sa as Combobox,da as ComboboxChips,$t as Command,ta as CommandDialog,ea as CommandEmpty,oa as CommandGroup,aa as CommandInput,na as CommandItem,ra as CommandList,ia as CommandSeparator,ca as CommandShortcut,pt as DatePicker,ht as DateRangePicker,Ot as Dialog,Jt as DialogClose,Qt as DialogContent,Zt as DialogDescription,Xt as DialogFooter,Wt as DialogHeader,Kt as DialogOverlay,Vt as DialogPortal,Yt as DialogTitle,qt as DialogTrigger,rt as Drawer,it as DrawerBody,nt as DrawerFooter,et as DrawerHeader,ot as DrawerTitle,ut as DropdownMenu,Ct as DropdownMenuCheckboxItem,_t as DropdownMenuContent,bt as DropdownMenuGroup,St as DropdownMenuItem,Tt as DropdownMenuLabel,ft as DropdownMenuPortal,yt as DropdownMenuRadioGroup,Dt as DropdownMenuRadioItem,Mt as DropdownMenuSeparator,Pt as DropdownMenuShortcut,xt as DropdownMenuSub,zt as DropdownMenuSubContent,kt as DropdownMenuSubTrigger,mt as DropdownMenuTrigger,gt as Field,wt as FieldDescription,vt as FieldLabel,dt as FileUpload,l as GeometricFluidGrid,d as GlitchLink,p as Input,st as Label,s as PixelLoad,Nt as Popover,Ut as PopoverContent,Et as PopoverTrigger,Ca as Progress,ha as RadioGroup,ga as RadioGroupItem,$ as ScrollArea,tt as ScrollBar,h as Separator,g as Sheet,w as SheetClose,b as SheetContent,k as SheetDescription,x as SheetFooter,f as SheetHeader,m as SheetOverlay,u as SheetPortal,y as SheetTitle,v as SheetTrigger,I as Sidebar,P as SidebarBanner,A as SidebarContent,H as SidebarFooter,N as SidebarGroup,U as SidebarGroupAction,O as SidebarGroupContent,E as SidebarGroupLabel,G as SidebarHeader,L as SidebarInput,B as SidebarInset,q as SidebarMenu,K as SidebarMenuAction,Q as SidebarMenuBadge,J as SidebarMenuButton,V as SidebarMenuItem,W as SidebarMenuSkeleton,X as SidebarMenuSub,Z as SidebarMenuSubButton,Y as SidebarMenuSubItem,M as SidebarProvider,j as SidebarRail,R as SidebarSeparator,F as SidebarTrigger,z as Skeleton,Da as Slider,Ta as Switch,It as Table,jt as TableBody,At as TableCaption,Ht as TableCell,Rt as TableCellAction,Bt as TableFooter,Gt as TableHead,Ft as TableHeader,Lt as TableRow,e as Tabs,n as TabsContent,o as TabsList,i as TabsTrigger,c as TextDecoder,ct as Textarea,fa as Toaster,S as Tooltip,D as TooltipContent,_ as TooltipProvider,C as TooltipTrigger,pa as TreeSelect,a as buttonVariants,t as cn,Ha as getSeedColor,Ga as getSphericalGradient,ba as toast,at as useDrawer,T as useSidebar};
|
|
3
3
|
//# sourceMappingURL=index.mjs.map
|
package/package.json
CHANGED
package/dist/chunk-AEZ5XKKG.mjs
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import{a as k}from"./chunk-S5TKCF6T.mjs";import S from"next/link";import w,{useState as b,useEffect as x,useRef as _,isValidElement as L,useMemo as A}from"react";import{Slot as T}from"@radix-ui/react-slot";import{jsx as r,jsxs as G}from"react/jsx-runtime";var q="!<>-_\\/[]{}\u2014=+*^?#________",C=({href:f,children:a,symbols:m=q,className:N,asChild:R=!1,duration:p=40,...E})=>{let[i,h]=b(!1),[g,c]=b(0),s=_(null),d=_([]),y=t=>{if(typeof t=="string"||typeof t=="number")return String(t);if(L(t)){let e=t.props.children;if(e)return y(e)}return""},o=A(()=>y(a),[a]),v=()=>{let t=[];for(let e=0;e<o.length;e++){let n=o[e],M=Math.floor(Math.random()*(p*.5)),F=M+Math.floor(Math.random()*(p*.5));t.push({to:n,start:M,end:F})}d.current=t,c(0)};x(()=>{if(i&&o){v();let t=()=>{c(e=>e+1),s.current=requestAnimationFrame(t)};s.current=requestAnimationFrame(t)}else s.current&&cancelAnimationFrame(s.current),c(0);return()=>{s.current&&cancelAnimationFrame(s.current)}},[i,o]);let u=()=>i?o.split("").map((t,e)=>{let n=d.current[e];return!n||g>=n.end?r("span",{children:t},e):g>=n.start?t===" "?r("span",{children:" "},e):((!n.char||Math.random()<.28)&&(n.char=m[Math.floor(Math.random()*m.length)]),G("span",{className:"relative inline-block",children:[r("span",{className:"invisible opacity-0","aria-hidden":"true",children:t}),r("span",{className:"absolute inset-0 flex items-center justify-center font-mono opacity-50",children:n.char})]},e)):r("span",{children:t},e)}):a,l={className:k("inline-block whitespace-nowrap",N),onMouseEnter:t=>{let e=t.currentTarget;e&&!e.style.width&&(e.style.width=`${e.offsetWidth}px`),h(!0)},onMouseLeave:()=>h(!1),...E};return R&&L(a)?r(T,{...l,children:w.cloneElement(a,{},u())}):f?r(S,{href:f,...l,children:u()}):r("span",{...l,children:u()})},I=C;export{q as a,I as b};
|
|
3
|
-
//# sourceMappingURL=chunk-AEZ5XKKG.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/GlitchLink.tsx"],"sourcesContent":["\"use client\"\nimport Link from \"next/link\"\nimport React, {\n useState,\n useEffect,\n useRef,\n ReactNode,\n isValidElement,\n useMemo,\n} from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cn } from \"@/lib/utils\"\n\nexport const DEFAULT_SYMBOLS = \"!<>-_\\\\/[]{}—=+*^?#________\"\n\ntype GlitchLinkProps = {\n href?: string\n children: ReactNode\n symbols?: string\n className?: string\n asChild?: boolean\n duration?: number\n}\n\nconst GlitchLink = ({\n href,\n children,\n symbols = DEFAULT_SYMBOLS,\n className,\n asChild = false,\n duration = 40,\n ...props\n}: GlitchLinkProps) => {\n const [isHovering, setIsHovering] = useState(false)\n const [frame, setFrame] = useState(0)\n const rafRef = useRef<number | null>(null)\n const queueRef = useRef<\n { to: string; start: number; end: number; char?: string }[]\n >([])\n\n const getTextContent = (node: ReactNode): string => {\n if (typeof node === \"string\" || typeof node === \"number\")\n return String(node)\n if (isValidElement(node)) {\n const children = (node.props as any).children\n if (children) return getTextContent(children)\n }\n return \"\"\n }\n\n const originalText = useMemo(() => getTextContent(children), [children])\n\n const setupQueue = () => {\n const newQueue = []\n for (let i = 0; i < originalText.length; i++) {\n const to = originalText[i]\n const start = Math.floor(Math.random() * (duration * 0.5))\n const end = start + Math.floor(Math.random() * (duration * 0.5))\n newQueue.push({ to, start, end })\n }\n queueRef.current = newQueue\n setFrame(0)\n }\n\n useEffect(() => {\n if (isHovering && originalText) {\n setupQueue()\n const update = () => {\n setFrame((prev) => prev + 1)\n rafRef.current = requestAnimationFrame(update)\n }\n rafRef.current = requestAnimationFrame(update)\n } else {\n if (rafRef.current) cancelAnimationFrame(rafRef.current)\n setFrame(0)\n }\n return () => {\n if (rafRef.current) cancelAnimationFrame(rafRef.current)\n }\n }, [isHovering, originalText])\n\n const renderContent = () => {\n // When not hovering, just render children as-is\n if (!isHovering) {\n return children\n }\n\n // When hovering, apply glitch effect to the text\n return originalText.split(\"\").map((char, i) => {\n const item = queueRef.current[i]\n\n // If animation for this char hasn't started, or it's finished\n if (!item || frame >= item.end) {\n return <span key={i}>{char}</span>\n }\n\n // If we are in the scrambling phase for this specific character\n if (frame >= item.start) {\n // Don't scramble spaces, just render them\n if (char === \" \") {\n return <span key={i}> </span>\n }\n\n if (!item.char || Math.random() < 0.28) {\n item.char = symbols[Math.floor(Math.random() * symbols.length)]\n }\n return (\n <span key={i} className=\"relative inline-block\">\n {/* The invisible real character preserves the exact width */}\n <span className=\"invisible opacity-0\" aria-hidden=\"true\">\n {char}\n </span>\n {/* The absolute symbol sits exactly on top of that width */}\n <span className=\"absolute inset-0 flex items-center justify-center font-mono opacity-50\">\n {item.char}\n </span>\n </span>\n )\n }\n\n // Default: show original character\n return <span key={i}>{char}</span>\n })\n }\n\n const commonProps = {\n className: cn(\"inline-block whitespace-nowrap\", className),\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => {\n const target = e.currentTarget\n if (target && !target.style.width) {\n target.style.width = `${target.offsetWidth}px`\n }\n setIsHovering(true)\n },\n onMouseLeave: () => setIsHovering(false),\n ...props,\n }\n\n if (asChild && isValidElement(children)) {\n return (\n <Slot {...commonProps}>\n {React.cloneElement(children as any, {}, renderContent())}\n </Slot>\n )\n }\n\n // If no href is provided, render as a span instead of a Link\n if (!href) {\n return <span {...commonProps}>{renderContent()}</span>\n }\n\n return (\n <Link href={href} {...commonProps}>\n {renderContent()}\n </Link>\n )\n}\n\nexport default GlitchLink\n"],"mappings":"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","names":["Link","React","useState","useEffect","useRef","isValidElement","useMemo","Slot","jsx","jsxs","DEFAULT_SYMBOLS","GlitchLink","href","children","symbols","className","asChild","duration","props","isHovering","setIsHovering","useState","frame","setFrame","rafRef","useRef","queueRef","getTextContent","node","isValidElement","originalText","useMemo","setupQueue","newQueue","i","to","start","end","useEffect","update","prev","renderContent","char","item","commonProps","cn","e","target","Slot","React","Link","GlitchLink_default"]}
|
package/dist/chunk-EJTY2ABY.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }"use client";
|
|
2
|
-
var _chunkFUYXCJOQjs = require('./chunk-FUYXCJOQ.js');var _link = require('next/link'); var _link2 = _interopRequireDefault(_link);var _react = require('react'); var _react2 = _interopRequireDefault(_react);var _reactslot = require('@radix-ui/react-slot');var _jsxruntime = require('react/jsx-runtime');var q="!<>-_\\/[]{}\u2014=+*^?#________",C=({href:f,children:a,symbols:m=q,className:N,asChild:R=!1,duration:p=40,...E})=>{let[i,h]=_react.useState.call(void 0, !1),[g,c]=_react.useState.call(void 0, 0),s=_react.useRef.call(void 0, null),d=_react.useRef.call(void 0, []),y=t=>{if(typeof t=="string"||typeof t=="number")return String(t);if(_react.isValidElement.call(void 0, t)){let e=t.props.children;if(e)return y(e)}return""},o=_react.useMemo.call(void 0, ()=>y(a),[a]),v=()=>{let t=[];for(let e=0;e<o.length;e++){let n=o[e],M=Math.floor(Math.random()*(p*.5)),F=M+Math.floor(Math.random()*(p*.5));t.push({to:n,start:M,end:F})}d.current=t,c(0)};_react.useEffect.call(void 0, ()=>{if(i&&o){v();let t=()=>{c(e=>e+1),s.current=requestAnimationFrame(t)};s.current=requestAnimationFrame(t)}else s.current&&cancelAnimationFrame(s.current),c(0);return()=>{s.current&&cancelAnimationFrame(s.current)}},[i,o]);let u=()=>i?o.split("").map((t,e)=>{let n=d.current[e];return!n||g>=n.end?_jsxruntime.jsx.call(void 0, "span",{children:t},e):g>=n.start?t===" "?_jsxruntime.jsx.call(void 0, "span",{children:" "},e):((!n.char||Math.random()<.28)&&(n.char=m[Math.floor(Math.random()*m.length)]),_jsxruntime.jsxs.call(void 0, "span",{className:"relative inline-block",children:[_jsxruntime.jsx.call(void 0, "span",{className:"invisible opacity-0","aria-hidden":"true",children:t}),_jsxruntime.jsx.call(void 0, "span",{className:"absolute inset-0 flex items-center justify-center font-mono opacity-50",children:n.char})]},e)):_jsxruntime.jsx.call(void 0, "span",{children:t},e)}):a,l={className:_chunkFUYXCJOQjs.a.call(void 0, "inline-block whitespace-nowrap",N),onMouseEnter:t=>{let e=t.currentTarget;e&&!e.style.width&&(e.style.width=`${e.offsetWidth}px`),h(!0)},onMouseLeave:()=>h(!1),...E};return R&&_react.isValidElement.call(void 0, a)?_jsxruntime.jsx.call(void 0, _reactslot.Slot,{...l,children:_react2.default.cloneElement(a,{},u())}):f?_jsxruntime.jsx.call(void 0, _link2.default,{href:f,...l,children:u()}):_jsxruntime.jsx.call(void 0, "span",{...l,children:u()})},I= exports.b =C;exports.a = q; exports.b = I;
|
|
3
|
-
//# sourceMappingURL=chunk-EJTY2ABY.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/aktoriukas/Documents/Projects/alkimi/alkimi-ui-kit/dist/chunk-EJTY2ABY.js","../src/components/GlitchLink.tsx"],"names":["DEFAULT_SYMBOLS","GlitchLink","href","children","symbols","className","asChild","duration","props","isHovering","setIsHovering","useState","frame","setFrame","rafRef","useRef","queueRef","getTextContent","node","isValidElement","originalText","useMemo","setupQueue","newQueue","i","to","start","end","useEffect","update","prev","renderContent","char","item","jsx","jsxs","commonProps","cn","e","target"],"mappings":"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","file":"/Users/aktoriukas/Documents/Projects/alkimi/alkimi-ui-kit/dist/chunk-EJTY2ABY.js","sourcesContent":[null,"\"use client\"\nimport Link from \"next/link\"\nimport React, {\n useState,\n useEffect,\n useRef,\n ReactNode,\n isValidElement,\n useMemo,\n} from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cn } from \"@/lib/utils\"\n\nexport const DEFAULT_SYMBOLS = \"!<>-_\\\\/[]{}—=+*^?#________\"\n\ntype GlitchLinkProps = {\n href?: string\n children: ReactNode\n symbols?: string\n className?: string\n asChild?: boolean\n duration?: number\n}\n\nconst GlitchLink = ({\n href,\n children,\n symbols = DEFAULT_SYMBOLS,\n className,\n asChild = false,\n duration = 40,\n ...props\n}: GlitchLinkProps) => {\n const [isHovering, setIsHovering] = useState(false)\n const [frame, setFrame] = useState(0)\n const rafRef = useRef<number | null>(null)\n const queueRef = useRef<\n { to: string; start: number; end: number; char?: string }[]\n >([])\n\n const getTextContent = (node: ReactNode): string => {\n if (typeof node === \"string\" || typeof node === \"number\")\n return String(node)\n if (isValidElement(node)) {\n const children = (node.props as any).children\n if (children) return getTextContent(children)\n }\n return \"\"\n }\n\n const originalText = useMemo(() => getTextContent(children), [children])\n\n const setupQueue = () => {\n const newQueue = []\n for (let i = 0; i < originalText.length; i++) {\n const to = originalText[i]\n const start = Math.floor(Math.random() * (duration * 0.5))\n const end = start + Math.floor(Math.random() * (duration * 0.5))\n newQueue.push({ to, start, end })\n }\n queueRef.current = newQueue\n setFrame(0)\n }\n\n useEffect(() => {\n if (isHovering && originalText) {\n setupQueue()\n const update = () => {\n setFrame((prev) => prev + 1)\n rafRef.current = requestAnimationFrame(update)\n }\n rafRef.current = requestAnimationFrame(update)\n } else {\n if (rafRef.current) cancelAnimationFrame(rafRef.current)\n setFrame(0)\n }\n return () => {\n if (rafRef.current) cancelAnimationFrame(rafRef.current)\n }\n }, [isHovering, originalText])\n\n const renderContent = () => {\n // When not hovering, just render children as-is\n if (!isHovering) {\n return children\n }\n\n // When hovering, apply glitch effect to the text\n return originalText.split(\"\").map((char, i) => {\n const item = queueRef.current[i]\n\n // If animation for this char hasn't started, or it's finished\n if (!item || frame >= item.end) {\n return <span key={i}>{char}</span>\n }\n\n // If we are in the scrambling phase for this specific character\n if (frame >= item.start) {\n // Don't scramble spaces, just render them\n if (char === \" \") {\n return <span key={i}> </span>\n }\n\n if (!item.char || Math.random() < 0.28) {\n item.char = symbols[Math.floor(Math.random() * symbols.length)]\n }\n return (\n <span key={i} className=\"relative inline-block\">\n {/* The invisible real character preserves the exact width */}\n <span className=\"invisible opacity-0\" aria-hidden=\"true\">\n {char}\n </span>\n {/* The absolute symbol sits exactly on top of that width */}\n <span className=\"absolute inset-0 flex items-center justify-center font-mono opacity-50\">\n {item.char}\n </span>\n </span>\n )\n }\n\n // Default: show original character\n return <span key={i}>{char}</span>\n })\n }\n\n const commonProps = {\n className: cn(\"inline-block whitespace-nowrap\", className),\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => {\n const target = e.currentTarget\n if (target && !target.style.width) {\n target.style.width = `${target.offsetWidth}px`\n }\n setIsHovering(true)\n },\n onMouseLeave: () => setIsHovering(false),\n ...props,\n }\n\n if (asChild && isValidElement(children)) {\n return (\n <Slot {...commonProps}>\n {React.cloneElement(children as any, {}, renderContent())}\n </Slot>\n )\n }\n\n // If no href is provided, render as a span instead of a Link\n if (!href) {\n return <span {...commonProps}>{renderContent()}</span>\n }\n\n return (\n <Link href={href} {...commonProps}>\n {renderContent()}\n </Link>\n )\n}\n\nexport default GlitchLink\n"]}
|