@exxatdesignux/ui 0.5.0 → 0.5.2

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.
Files changed (79) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/dist/components/data-table/filter-text-value-input.js +1 -1
  3. package/dist/components/data-table/filter-text-value-input.js.map +1 -1
  4. package/dist/components/data-table/index.js +3 -3
  5. package/dist/components/data-table/index.js.map +1 -1
  6. package/dist/components/data-table/pagination.js +3 -3
  7. package/dist/components/data-table/pagination.js.map +1 -1
  8. package/dist/components/data-views/data-row-list.js +1 -1
  9. package/dist/components/data-views/data-row-list.js.map +1 -1
  10. package/dist/components/data-views/hub-table.js +6 -6
  11. package/dist/components/data-views/hub-table.js.map +1 -1
  12. package/dist/components/data-views/index.js +6 -6
  13. package/dist/components/data-views/index.js.map +1 -1
  14. package/dist/components/table-properties/column-row.js +1 -1
  15. package/dist/components/table-properties/column-row.js.map +1 -1
  16. package/dist/components/table-properties/drawer-button.js +5 -5
  17. package/dist/components/table-properties/drawer-button.js.map +1 -1
  18. package/dist/components/table-properties/drawer.js +5 -5
  19. package/dist/components/table-properties/drawer.js.map +1 -1
  20. package/dist/components/table-properties/filter-card.js +2 -2
  21. package/dist/components/table-properties/filter-card.js.map +1 -1
  22. package/dist/components/table-properties/index.js +5 -5
  23. package/dist/components/table-properties/index.js.map +1 -1
  24. package/dist/components/table-properties/sort-card.js +1 -1
  25. package/dist/components/table-properties/sort-card.js.map +1 -1
  26. package/dist/components/templates/index.js +4 -4
  27. package/dist/components/templates/index.js.map +1 -1
  28. package/dist/components/templates/list-page.js +4 -4
  29. package/dist/components/templates/list-page.js.map +1 -1
  30. package/dist/components/ui/banner.js +1 -1
  31. package/dist/components/ui/banner.js.map +1 -1
  32. package/dist/components/ui/coach-mark.js +1 -1
  33. package/dist/components/ui/coach-mark.js.map +1 -1
  34. package/dist/components/ui/context-menu.js +1 -1
  35. package/dist/components/ui/context-menu.js.map +1 -1
  36. package/dist/components/ui/date-picker-field.js +1 -1
  37. package/dist/components/ui/date-picker-field.js.map +1 -1
  38. package/dist/components/ui/dropdown-menu.js +2 -2
  39. package/dist/components/ui/dropdown-menu.js.map +1 -1
  40. package/dist/components/ui/export-drawer.js +3 -3
  41. package/dist/components/ui/export-drawer.js.map +1 -1
  42. package/dist/components/ui/hover-card.js +1 -1
  43. package/dist/components/ui/hover-card.js.map +1 -1
  44. package/dist/components/ui/key-metrics.js +6 -6
  45. package/dist/components/ui/key-metrics.js.map +1 -1
  46. package/dist/components/ui/page-header.js +1 -1
  47. package/dist/components/ui/page-header.js.map +1 -1
  48. package/dist/components/ui/popover.js +1 -1
  49. package/dist/components/ui/popover.js.map +1 -1
  50. package/dist/components/ui/select.js +1 -1
  51. package/dist/components/ui/select.js.map +1 -1
  52. package/dist/components/ui/sheet.js +1 -1
  53. package/dist/components/ui/sheet.js.map +1 -1
  54. package/dist/components/ui/sidebar.d.ts +1 -1
  55. package/dist/components/ui/sidebar.js +3 -3
  56. package/dist/components/ui/sidebar.js.map +1 -1
  57. package/dist/components/ui/tip.js +1 -1
  58. package/dist/components/ui/tip.js.map +1 -1
  59. package/dist/components/ui/tooltip.js +1 -1
  60. package/dist/components/ui/tooltip.js.map +1 -1
  61. package/dist/components/ui/view-segmented-control.js +1 -1
  62. package/dist/components/ui/view-segmented-control.js.map +1 -1
  63. package/dist/index.js +16 -16
  64. package/dist/index.js.map +1 -1
  65. package/package.json +1 -1
  66. package/src/components/data-views/data-row-list.tsx +1 -1
  67. package/src/components/ui/banner.tsx +0 -2
  68. package/src/components/ui/coach-mark.tsx +1 -2
  69. package/src/components/ui/context-menu.tsx +1 -1
  70. package/src/components/ui/dropdown-menu.tsx +2 -2
  71. package/src/components/ui/hover-card.tsx +1 -1
  72. package/src/components/ui/key-metrics.tsx +4 -4
  73. package/src/components/ui/popover.tsx +1 -1
  74. package/src/components/ui/select.tsx +1 -1
  75. package/src/components/ui/sheet.tsx +1 -1
  76. package/src/components/ui/sidebar.tsx +3 -3
  77. package/src/components/ui/tooltip.tsx +1 -1
  78. package/template/package.json +10 -0
  79. package/tokens/hooks-index.json +2 -2
@@ -38,7 +38,7 @@ function TooltipContent({
38
38
  "data-slot": "tooltip-content",
39
39
  sideOffset,
40
40
  className: cn(
41
- "z-50 inline-flex w-fit max-w-xs origin-(--radix-tooltip-content-transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pe-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
41
+ "z-50 inline-flex w-fit max-w-xs origin-(--radix-tooltip-content-transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pe-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-end-2 data-[side=right]:slide-in-from-start-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
42
42
  className
43
43
  ),
44
44
  ...props,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/utils.ts","../../../src/components/ui/tooltip.tsx","../../../src/components/ui/tip.tsx","../../../src/components/ui/drag-handle-grip.tsx","../../../src/components/ui/toggle-switch.tsx","../../../src/components/table-properties/column-row.tsx"],"names":["TooltipPrimitive","jsxs","jsx"],"mappings":"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","file":"column-row.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n","\"use client\"\n\nimport * as React from \"react\"\nimport { Tooltip as TooltipPrimitive } from \"radix-ui\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n )\n}\n\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n}\n\nfunction TooltipTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return (\n <TooltipPrimitive.Trigger\n data-slot=\"tooltip-trigger\"\n suppressHydrationWarning\n className={cn(\"cursor-pointer\", className)}\n {...props}\n />\n )\n}\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"z-50 inline-flex w-fit max-w-xs origin-(--radix-tooltip-content-transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pe-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95\",\n className\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n )\n}\n\nexport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger }\n","\"use client\"\nimport * as React from \"react\"\nimport { Tooltip, TooltipContent, TooltipTrigger } from \"./tooltip\"\n\ninterface TipProps {\n /** Plain string or text + `<Kbd />` — see `.cursor/rules/exxat-kbd-shortcuts.mdc` */\n label: React.ReactNode\n children: React.ReactNode\n side?: \"top\" | \"bottom\" | \"left\" | \"right\"\n}\n\nexport function Tip({ label, children, side = \"top\" }: TipProps) {\n return (\n <Tooltip>\n <TooltipTrigger asChild>{children}</TooltipTrigger>\n <TooltipContent side={side} className=\"flex flex-wrap items-center gap-1.5\">\n {label}\n </TooltipContent>\n </Tooltip>\n )\n}\n","import { cn } from \"../../lib/utils\"\n\n/**\n * Solid grip icon for drag handles — use anywhere rows/cards reorder (dashboard, Properties, etc.).\n */\nexport function DragHandleGripIcon({ className }: { className?: string }) {\n return (\n <i className={cn(\"fa-solid fa-grip-dots-vertical shrink-0\", className)} aria-hidden=\"true\" />\n )\n}\n","\"use client\"\nimport * as React from \"react\"\nimport { cn } from \"../../lib/utils\"\n\ninterface ToggleSwitchProps {\n checked: boolean\n onChange: (value: boolean) => void\n id?: string\n}\n\nexport function ToggleSwitch({ checked, onChange, id }: ToggleSwitchProps) {\n return (\n <button\n id={id}\n type=\"button\"\n role=\"switch\"\n aria-checked={checked}\n onClick={() => onChange(!checked)}\n className={cn(\n \"relative inline-flex h-5 w-9 shrink-0 cursor-pointer rounded-full border-2 border-input transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1\",\n checked ? \"bg-primary\" : \"bg-input\"\n )}\n >\n <span className={cn(\n \"pointer-events-none inline-block size-4 rounded-full bg-primary-foreground shadow-sm transition-transform\",\n checked ? \"translate-x-4\" : \"translate-x-0\"\n )} />\n </button>\n )\n}\n","\"use client\"\nimport * as React from \"react\"\nimport { cn } from \"../../lib/utils\"\nimport { Tip } from \"../ui/tip\"\nimport { DragHandleGripIcon } from \"../ui/drag-handle-grip\"\nimport { ToggleSwitch } from \"../ui/toggle-switch\"\n\nexport interface ColumnRowProps {\n label: string\n isFirst: boolean\n isLast: boolean\n visible: boolean\n onToggleVisible: () => void\n onMoveUp: () => void\n onMoveDown: () => void\n // drag-and-drop props spread from useDraggableList\n draggable: true\n onDragStart: React.DragEventHandler\n onDragOver: React.DragEventHandler\n onDrop: React.DragEventHandler\n onDragEnd: React.DragEventHandler\n isDragging: boolean\n isOver: boolean\n}\n\nexport function ColumnRow({\n label,\n isFirst,\n isLast,\n visible,\n onToggleVisible,\n onMoveUp,\n onMoveDown,\n draggable,\n onDragStart,\n onDragOver,\n onDrop,\n onDragEnd,\n isDragging,\n isOver,\n}: ColumnRowProps) {\n return (\n <div\n role=\"listitem\"\n draggable={draggable}\n onDragStart={onDragStart}\n onDragOver={onDragOver}\n onDrop={onDrop}\n onDragEnd={onDragEnd}\n className={cn(\n \"flex items-center gap-2 px-2 py-2 rounded-lg group hover:bg-interactive-hover-subtle transition-colors cursor-grab active:cursor-grabbing\",\n isDragging && \"opacity-40\",\n isOver && \"ring-2 ring-ring bg-accent/30\",\n )}\n >\n <DragHandleGripIcon className=\"text-[13px] text-muted-foreground/40 transition-colors group-hover:text-muted-foreground\" />\n <span className=\"flex-1 text-sm text-foreground\">{label}</span>\n {/* Up / Down priority buttons */}\n <div className=\"flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity\">\n <Tip label={`Move ${label} up`} side=\"top\">\n <button\n type=\"button\"\n aria-label={`Move ${label} up`}\n disabled={isFirst}\n onClick={onMoveUp}\n className=\"inline-flex items-center justify-center size-6 rounded text-muted-foreground hover:text-interactive-hover-foreground hover:bg-interactive-hover disabled:opacity-30 disabled:pointer-events-none transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n >\n <i className=\"fa-light fa-chevron-up text-xs\" aria-hidden=\"true\" />\n </button>\n </Tip>\n <Tip label={`Move ${label} down`} side=\"top\">\n <button\n type=\"button\"\n aria-label={`Move ${label} down`}\n disabled={isLast}\n onClick={onMoveDown}\n className=\"inline-flex items-center justify-center size-6 rounded text-muted-foreground hover:text-interactive-hover-foreground hover:bg-interactive-hover disabled:opacity-30 disabled:pointer-events-none transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n >\n <i className=\"fa-light fa-chevron-down text-xs\" aria-hidden=\"true\" />\n </button>\n </Tip>\n </div>\n {/* Visibility toggle */}\n <ToggleSwitch\n checked={visible}\n onChange={onToggleVisible}\n />\n </div>\n )\n}\n"]}
1
+ {"version":3,"sources":["../../../src/lib/utils.ts","../../../src/components/ui/tooltip.tsx","../../../src/components/ui/tip.tsx","../../../src/components/ui/drag-handle-grip.tsx","../../../src/components/ui/toggle-switch.tsx","../../../src/components/table-properties/column-row.tsx"],"names":["TooltipPrimitive","jsxs","jsx"],"mappings":"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","file":"column-row.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n","\"use client\"\n\nimport * as React from \"react\"\nimport { Tooltip as TooltipPrimitive } from \"radix-ui\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n )\n}\n\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n}\n\nfunction TooltipTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return (\n <TooltipPrimitive.Trigger\n data-slot=\"tooltip-trigger\"\n suppressHydrationWarning\n className={cn(\"cursor-pointer\", className)}\n {...props}\n />\n )\n}\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"z-50 inline-flex w-fit max-w-xs origin-(--radix-tooltip-content-transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pe-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-end-2 data-[side=right]:slide-in-from-start-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95\",\n className\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n )\n}\n\nexport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger }\n","\"use client\"\nimport * as React from \"react\"\nimport { Tooltip, TooltipContent, TooltipTrigger } from \"./tooltip\"\n\ninterface TipProps {\n /** Plain string or text + `<Kbd />` — see `.cursor/rules/exxat-kbd-shortcuts.mdc` */\n label: React.ReactNode\n children: React.ReactNode\n side?: \"top\" | \"bottom\" | \"left\" | \"right\"\n}\n\nexport function Tip({ label, children, side = \"top\" }: TipProps) {\n return (\n <Tooltip>\n <TooltipTrigger asChild>{children}</TooltipTrigger>\n <TooltipContent side={side} className=\"flex flex-wrap items-center gap-1.5\">\n {label}\n </TooltipContent>\n </Tooltip>\n )\n}\n","import { cn } from \"../../lib/utils\"\n\n/**\n * Solid grip icon for drag handles — use anywhere rows/cards reorder (dashboard, Properties, etc.).\n */\nexport function DragHandleGripIcon({ className }: { className?: string }) {\n return (\n <i className={cn(\"fa-solid fa-grip-dots-vertical shrink-0\", className)} aria-hidden=\"true\" />\n )\n}\n","\"use client\"\nimport * as React from \"react\"\nimport { cn } from \"../../lib/utils\"\n\ninterface ToggleSwitchProps {\n checked: boolean\n onChange: (value: boolean) => void\n id?: string\n}\n\nexport function ToggleSwitch({ checked, onChange, id }: ToggleSwitchProps) {\n return (\n <button\n id={id}\n type=\"button\"\n role=\"switch\"\n aria-checked={checked}\n onClick={() => onChange(!checked)}\n className={cn(\n \"relative inline-flex h-5 w-9 shrink-0 cursor-pointer rounded-full border-2 border-input transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1\",\n checked ? \"bg-primary\" : \"bg-input\"\n )}\n >\n <span className={cn(\n \"pointer-events-none inline-block size-4 rounded-full bg-primary-foreground shadow-sm transition-transform\",\n checked ? \"translate-x-4\" : \"translate-x-0\"\n )} />\n </button>\n )\n}\n","\"use client\"\nimport * as React from \"react\"\nimport { cn } from \"../../lib/utils\"\nimport { Tip } from \"../ui/tip\"\nimport { DragHandleGripIcon } from \"../ui/drag-handle-grip\"\nimport { ToggleSwitch } from \"../ui/toggle-switch\"\n\nexport interface ColumnRowProps {\n label: string\n isFirst: boolean\n isLast: boolean\n visible: boolean\n onToggleVisible: () => void\n onMoveUp: () => void\n onMoveDown: () => void\n // drag-and-drop props spread from useDraggableList\n draggable: true\n onDragStart: React.DragEventHandler\n onDragOver: React.DragEventHandler\n onDrop: React.DragEventHandler\n onDragEnd: React.DragEventHandler\n isDragging: boolean\n isOver: boolean\n}\n\nexport function ColumnRow({\n label,\n isFirst,\n isLast,\n visible,\n onToggleVisible,\n onMoveUp,\n onMoveDown,\n draggable,\n onDragStart,\n onDragOver,\n onDrop,\n onDragEnd,\n isDragging,\n isOver,\n}: ColumnRowProps) {\n return (\n <div\n role=\"listitem\"\n draggable={draggable}\n onDragStart={onDragStart}\n onDragOver={onDragOver}\n onDrop={onDrop}\n onDragEnd={onDragEnd}\n className={cn(\n \"flex items-center gap-2 px-2 py-2 rounded-lg group hover:bg-interactive-hover-subtle transition-colors cursor-grab active:cursor-grabbing\",\n isDragging && \"opacity-40\",\n isOver && \"ring-2 ring-ring bg-accent/30\",\n )}\n >\n <DragHandleGripIcon className=\"text-[13px] text-muted-foreground/40 transition-colors group-hover:text-muted-foreground\" />\n <span className=\"flex-1 text-sm text-foreground\">{label}</span>\n {/* Up / Down priority buttons */}\n <div className=\"flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity\">\n <Tip label={`Move ${label} up`} side=\"top\">\n <button\n type=\"button\"\n aria-label={`Move ${label} up`}\n disabled={isFirst}\n onClick={onMoveUp}\n className=\"inline-flex items-center justify-center size-6 rounded text-muted-foreground hover:text-interactive-hover-foreground hover:bg-interactive-hover disabled:opacity-30 disabled:pointer-events-none transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n >\n <i className=\"fa-light fa-chevron-up text-xs\" aria-hidden=\"true\" />\n </button>\n </Tip>\n <Tip label={`Move ${label} down`} side=\"top\">\n <button\n type=\"button\"\n aria-label={`Move ${label} down`}\n disabled={isLast}\n onClick={onMoveDown}\n className=\"inline-flex items-center justify-center size-6 rounded text-muted-foreground hover:text-interactive-hover-foreground hover:bg-interactive-hover disabled:opacity-30 disabled:pointer-events-none transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n >\n <i className=\"fa-light fa-chevron-down text-xs\" aria-hidden=\"true\" />\n </button>\n </Tip>\n </div>\n {/* Visibility toggle */}\n <ToggleSwitch\n checked={visible}\n onChange={onToggleVisible}\n />\n </div>\n )\n}\n"]}
@@ -56,7 +56,7 @@ function TooltipContent({
56
56
  "data-slot": "tooltip-content",
57
57
  sideOffset,
58
58
  className: cn(
59
- "z-50 inline-flex w-fit max-w-xs origin-(--radix-tooltip-content-transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pe-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
59
+ "z-50 inline-flex w-fit max-w-xs origin-(--radix-tooltip-content-transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pe-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-end-2 data-[side=right]:slide-in-from-start-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
60
60
  className
61
61
  ),
62
62
  ...props,
@@ -554,7 +554,7 @@ function DropdownMenuContent({
554
554
  sideOffset,
555
555
  align,
556
556
  className: cn(
557
- "z-50 max-h-(--radix-dropdown-menu-content-available-height) origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:overflow-hidden data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
557
+ "z-50 max-h-(--radix-dropdown-menu-content-available-height) origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-end-2 data-[side=right]:slide-in-from-start-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:overflow-hidden data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
558
558
  DROPDOWN_MENU_CONTENT_SURFACE_CLASS,
559
559
  className
560
560
  ),
@@ -677,7 +677,7 @@ function SheetContent({
677
677
  "data-slot": "sheet-content",
678
678
  "data-side": side,
679
679
  className: cn(
680
- "fixed z-50 flex flex-col gap-4 bg-background bg-clip-padding text-sm shadow-lg outline-none duration-300 ease-out data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-e data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-s data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-[side=bottom]:data-open:slide-in-from-bottom-6 data-[side=left]:data-open:slide-in-from-left-6 data-[side=right]:data-open:slide-in-from-right-6 data-[side=top]:data-open:slide-in-from-top-6 data-closed:animate-out data-closed:fade-out-0 data-[side=bottom]:data-closed:slide-out-to-bottom-6 data-[side=left]:data-closed:slide-out-to-left-6 data-[side=right]:data-closed:slide-out-to-right-6 data-[side=top]:data-closed:slide-out-to-top-6",
680
+ "fixed z-50 flex flex-col gap-4 bg-background bg-clip-padding text-sm shadow-lg outline-none duration-300 ease-out data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=left]:inset-y-0 data-[side=left]:start-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-e data-[side=right]:inset-y-0 data-[side=right]:end-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-s data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-[side=bottom]:data-open:slide-in-from-bottom-6 data-[side=left]:data-open:slide-in-from-start-6 data-[side=right]:data-open:slide-in-from-end-6 data-[side=top]:data-open:slide-in-from-top-6 data-closed:animate-out data-closed:fade-out-0 data-[side=bottom]:data-closed:slide-out-to-bottom-6 data-[side=left]:data-closed:slide-out-to-start-6 data-[side=right]:data-closed:slide-out-to-end-6 data-[side=top]:data-closed:slide-out-to-top-6",
681
681
  className
682
682
  ),
683
683
  ...props,
@@ -761,7 +761,7 @@ function SelectContent({
761
761
  {
762
762
  "data-slot": "select-content",
763
763
  "data-align-trigger": position === "item-aligned",
764
- className: cn("relative z-50 max-h-(--radix-select-content-available-height) min-w-36 origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 rtl:data-[side=left]:translate-x-1 data-[side=right]:translate-x-1 rtl:data-[side=right]:-translate-x-1 data-[side=top]:-translate-y-1", className),
764
+ className: cn("relative z-50 max-h-(--radix-select-content-available-height) min-w-36 origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-end-2 data-[side=right]:slide-in-from-start-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 rtl:data-[side=left]:translate-x-1 data-[side=right]:translate-x-1 rtl:data-[side=right]:-translate-x-1 data-[side=top]:-translate-y-1", className),
765
765
  position,
766
766
  align,
767
767
  ...props,
@@ -1263,7 +1263,7 @@ function PopoverContent({
1263
1263
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1264
1264
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
1265
1265
  "data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2",
1266
- "data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",
1266
+ "data-[side=left]:slide-in-from-end-2 data-[side=right]:slide-in-from-start-2",
1267
1267
  className
1268
1268
  ),
1269
1269
  ...props