@kubetail/ui 3.0.0-rc9-mm → 3.0.0

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 (127) hide show
  1. package/dist/elements/alert.cjs +1 -1
  2. package/dist/elements/alert.cjs.map +1 -1
  3. package/dist/elements/alert.d.ts +3 -3
  4. package/dist/elements/alert.js.map +1 -1
  5. package/dist/elements/avatar.cjs +1 -1
  6. package/dist/elements/avatar.cjs.map +1 -1
  7. package/dist/elements/avatar.d.ts +6 -6
  8. package/dist/elements/avatar.js.map +1 -1
  9. package/dist/elements/button.cjs +1 -1
  10. package/dist/elements/button.cjs.map +1 -1
  11. package/dist/elements/button.d.ts +1 -1
  12. package/dist/elements/button.js.map +1 -1
  13. package/dist/elements/calendar.cjs +1 -1
  14. package/dist/elements/calendar.cjs.map +1 -1
  15. package/dist/elements/calendar.d.ts +1 -1
  16. package/dist/elements/calendar.js.map +1 -1
  17. package/dist/elements/card.cjs +1 -1
  18. package/dist/elements/card.cjs.map +1 -1
  19. package/dist/elements/card.d.ts +7 -7
  20. package/dist/elements/card.js.map +1 -1
  21. package/dist/elements/checkbox.cjs +1 -1
  22. package/dist/elements/checkbox.cjs.map +1 -1
  23. package/dist/elements/checkbox.d.ts +1 -1
  24. package/dist/elements/checkbox.js.map +1 -1
  25. package/dist/elements/context-menu.cjs +1 -1
  26. package/dist/elements/context-menu.cjs.map +1 -1
  27. package/dist/elements/context-menu.d.ts +15 -15
  28. package/dist/elements/context-menu.js.map +1 -1
  29. package/dist/elements/dialog.cjs +1 -1
  30. package/dist/elements/dialog.cjs.map +1 -1
  31. package/dist/elements/dialog.d.ts +10 -10
  32. package/dist/elements/dialog.js.map +1 -1
  33. package/dist/elements/dropdown-menu.cjs +1 -1
  34. package/dist/elements/dropdown-menu.cjs.map +1 -1
  35. package/dist/elements/dropdown-menu.d.ts +15 -15
  36. package/dist/elements/dropdown-menu.js.map +1 -1
  37. package/dist/elements/field.cjs +1 -1
  38. package/dist/elements/field.cjs.map +1 -1
  39. package/dist/elements/field.d.ts +10 -10
  40. package/dist/elements/field.js.map +1 -1
  41. package/dist/elements/form.cjs +1 -1
  42. package/dist/elements/form.cjs.map +1 -1
  43. package/dist/elements/form.d.ts +7 -7
  44. package/dist/elements/form.js.map +1 -1
  45. package/dist/elements/input-group.cjs +1 -1
  46. package/dist/elements/input-group.cjs.map +1 -1
  47. package/dist/elements/input-group.d.ts +6 -6
  48. package/dist/elements/input-group.js.map +1 -1
  49. package/dist/elements/input.cjs +1 -1
  50. package/dist/elements/input.cjs.map +1 -1
  51. package/dist/elements/input.d.ts +1 -1
  52. package/dist/elements/input.js.map +1 -1
  53. package/dist/elements/label.cjs +1 -1
  54. package/dist/elements/label.cjs.map +1 -1
  55. package/dist/elements/label.d.ts +1 -1
  56. package/dist/elements/label.js.map +1 -1
  57. package/dist/elements/link.cjs +1 -1
  58. package/dist/elements/link.cjs.map +1 -1
  59. package/dist/elements/link.d.ts +1 -1
  60. package/dist/elements/link.js.map +1 -1
  61. package/dist/elements/pagination.cjs +1 -1
  62. package/dist/elements/pagination.cjs.map +1 -1
  63. package/dist/elements/pagination.d.ts +7 -7
  64. package/dist/elements/pagination.js.map +1 -1
  65. package/dist/elements/popover.cjs +1 -1
  66. package/dist/elements/popover.cjs.map +1 -1
  67. package/dist/elements/popover.d.ts +3 -3
  68. package/dist/elements/popover.js.map +1 -1
  69. package/dist/elements/search-box.cjs +1 -1
  70. package/dist/elements/search-box.cjs.map +1 -1
  71. package/dist/elements/search-box.js.map +1 -1
  72. package/dist/elements/select.cjs +1 -1
  73. package/dist/elements/select.cjs.map +1 -1
  74. package/dist/elements/select.d.ts +9 -9
  75. package/dist/elements/select.js.map +1 -1
  76. package/dist/elements/separator.cjs +1 -1
  77. package/dist/elements/separator.cjs.map +1 -1
  78. package/dist/elements/separator.d.ts +1 -1
  79. package/dist/elements/separator.js.map +1 -1
  80. package/dist/elements/sheet.cjs +1 -1
  81. package/dist/elements/sheet.cjs.map +1 -1
  82. package/dist/elements/sheet.d.ts +8 -8
  83. package/dist/elements/sheet.js.map +1 -1
  84. package/dist/elements/sidebar.cjs +1 -1
  85. package/dist/elements/sidebar.cjs.map +1 -1
  86. package/dist/elements/sidebar.d.ts +19 -19
  87. package/dist/elements/sidebar.js.map +1 -1
  88. package/dist/elements/skeleton.cjs +1 -1
  89. package/dist/elements/skeleton.cjs.map +1 -1
  90. package/dist/elements/skeleton.d.ts +1 -1
  91. package/dist/elements/skeleton.js.map +1 -1
  92. package/dist/elements/spinner.cjs +1 -1
  93. package/dist/elements/spinner.cjs.map +1 -1
  94. package/dist/elements/spinner.d.ts +1 -1
  95. package/dist/elements/spinner.js.map +1 -1
  96. package/dist/elements/switch.cjs +1 -1
  97. package/dist/elements/switch.cjs.map +1 -1
  98. package/dist/elements/switch.d.ts +1 -1
  99. package/dist/elements/switch.js.map +1 -1
  100. package/dist/elements/table.cjs +1 -1
  101. package/dist/elements/table.cjs.map +1 -1
  102. package/dist/elements/table.d.ts +8 -8
  103. package/dist/elements/table.js.map +1 -1
  104. package/dist/elements/tabs.cjs +1 -1
  105. package/dist/elements/tabs.cjs.map +1 -1
  106. package/dist/elements/tabs.d.ts +4 -4
  107. package/dist/elements/tabs.js.map +1 -1
  108. package/dist/elements/textarea.cjs +1 -1
  109. package/dist/elements/textarea.cjs.map +1 -1
  110. package/dist/elements/textarea.d.ts +1 -1
  111. package/dist/elements/textarea.js.map +1 -1
  112. package/dist/elements/toggle.cjs +1 -1
  113. package/dist/elements/toggle.cjs.map +1 -1
  114. package/dist/elements/toggle.d.ts +1 -1
  115. package/dist/elements/toggle.js.map +1 -1
  116. package/dist/elements/tooltip.cjs +1 -1
  117. package/dist/elements/tooltip.cjs.map +1 -1
  118. package/dist/elements/tooltip.d.ts +4 -4
  119. package/dist/elements/tooltip.js.map +1 -1
  120. package/dist/hooks/use-mobile.cjs +1 -1
  121. package/dist/hooks/use-mobile.cjs.map +1 -1
  122. package/dist/hooks/use-mobile.js.map +1 -1
  123. package/dist/index.css +6 -6
  124. package/dist/lib/utils.cjs +1 -1
  125. package/dist/lib/utils.cjs.map +1 -1
  126. package/dist/lib/utils.js.map +1 -1
  127. package/package.json +34 -34
@@ -1 +1 @@
1
- {"version":3,"file":"context-menu.js","names":[],"sources":["../../src/elements/context-menu.tsx"],"sourcesContent":["'use client';\n\nimport { ContextMenu as ContextMenuPrimitive } from '@base-ui/react/context-menu';\nimport { CheckIcon, ChevronRightIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\nfunction ContextMenu({ ...props }: ContextMenuPrimitive.Root.Props) {\n return <ContextMenuPrimitive.Root data-slot=\"context-menu\" {...props} />;\n}\n\nfunction ContextMenuPortal({ ...props }: ContextMenuPrimitive.Portal.Props) {\n return <ContextMenuPrimitive.Portal data-slot=\"context-menu-portal\" {...props} />;\n}\n\nfunction ContextMenuTrigger({ className, ...props }: ContextMenuPrimitive.Trigger.Props) {\n return (\n <ContextMenuPrimitive.Trigger\n data-slot=\"context-menu-trigger\"\n className={cn('select-none', className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuContent({\n className,\n align = 'start',\n alignOffset = 4,\n side = 'right',\n sideOffset = 0,\n ...props\n}: ContextMenuPrimitive.Popup.Props &\n Pick<ContextMenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>) {\n return (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <ContextMenuPrimitive.Popup\n data-slot=\"context-menu-content\"\n className={cn(\n 'z-50 max-h-(--available-height) min-w-36 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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',\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Positioner>\n </ContextMenuPrimitive.Portal>\n );\n}\n\nfunction ContextMenuGroup({ ...props }: ContextMenuPrimitive.Group.Props) {\n return <ContextMenuPrimitive.Group data-slot=\"context-menu-group\" {...props} />;\n}\n\nfunction ContextMenuLabel({\n className,\n inset,\n ...props\n}: ContextMenuPrimitive.GroupLabel.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.GroupLabel\n data-slot=\"context-menu-label\"\n data-inset={inset}\n className={cn('px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7', className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: ContextMenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n}) {\n return (\n <ContextMenuPrimitive.Item\n data-slot=\"context-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 focus:*:[svg]:text-accent-foreground data-[variant=destructive]:*:[svg]:text-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuSub({ ...props }: ContextMenuPrimitive.SubmenuRoot.Props) {\n return <ContextMenuPrimitive.SubmenuRoot data-slot=\"context-menu-sub\" {...props} />;\n}\n\nfunction ContextMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: ContextMenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.SubmenuTrigger\n data-slot=\"context-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"cn-rtl-flip ml-auto\" />\n </ContextMenuPrimitive.SubmenuTrigger>\n );\n}\n\nfunction ContextMenuSubContent({ ...props }: React.ComponentProps<typeof ContextMenuContent>) {\n return <ContextMenuContent data-slot=\"context-menu-sub-content\" className=\"shadow-lg\" side=\"right\" {...props} />;\n}\n\nfunction ContextMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: ContextMenuPrimitive.CheckboxItem.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.CheckboxItem\n data-slot=\"context-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute right-2\">\n <ContextMenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n );\n}\n\nfunction ContextMenuRadioGroup({ ...props }: ContextMenuPrimitive.RadioGroup.Props) {\n return <ContextMenuPrimitive.RadioGroup data-slot=\"context-menu-radio-group\" {...props} />;\n}\n\nfunction ContextMenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: ContextMenuPrimitive.RadioItem.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.RadioItem\n data-slot=\"context-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute right-2\">\n <ContextMenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n );\n}\n\nfunction ContextMenuSeparator({ className, ...props }: ContextMenuPrimitive.Separator.Props) {\n return (\n <ContextMenuPrimitive.Separator\n data-slot=\"context-menu-separator\"\n className={cn('-mx-1 my-1 h-px bg-border', className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"context-menu-shortcut\"\n className={cn(\n 'ml-auto text-xs tracking-widest text-muted-foreground group-focus/context-menu-item:text-accent-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n ContextMenu,\n ContextMenuTrigger,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuCheckboxItem,\n ContextMenuRadioItem,\n ContextMenuLabel,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuGroup,\n ContextMenuPortal,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuRadioGroup,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"context-menu.js","names":[],"sources":["../../src/elements/context-menu.tsx"],"sourcesContent":["'use client';\n\nimport { ContextMenu as ContextMenuPrimitive } from '@base-ui/react/context-menu';\nimport { CheckIcon, ChevronRightIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\nfunction ContextMenu({ ...props }: ContextMenuPrimitive.Root.Props) {\n return <ContextMenuPrimitive.Root data-slot=\"context-menu\" {...props} />;\n}\n\nfunction ContextMenuPortal({ ...props }: ContextMenuPrimitive.Portal.Props) {\n return <ContextMenuPrimitive.Portal data-slot=\"context-menu-portal\" {...props} />;\n}\n\nfunction ContextMenuTrigger({ className, ...props }: ContextMenuPrimitive.Trigger.Props) {\n return (\n <ContextMenuPrimitive.Trigger\n data-slot=\"context-menu-trigger\"\n className={cn('select-none', className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuContent({\n className,\n align = 'start',\n alignOffset = 4,\n side = 'right',\n sideOffset = 0,\n ...props\n}: ContextMenuPrimitive.Popup.Props &\n Pick<ContextMenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>) {\n return (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <ContextMenuPrimitive.Popup\n data-slot=\"context-menu-content\"\n className={cn(\n 'z-50 max-h-(--available-height) min-w-36 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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',\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Positioner>\n </ContextMenuPrimitive.Portal>\n );\n}\n\nfunction ContextMenuGroup({ ...props }: ContextMenuPrimitive.Group.Props) {\n return <ContextMenuPrimitive.Group data-slot=\"context-menu-group\" {...props} />;\n}\n\nfunction ContextMenuLabel({\n className,\n inset,\n ...props\n}: ContextMenuPrimitive.GroupLabel.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.GroupLabel\n data-slot=\"context-menu-label\"\n data-inset={inset}\n className={cn('px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7', className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: ContextMenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n}) {\n return (\n <ContextMenuPrimitive.Item\n data-slot=\"context-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 focus:*:[svg]:text-accent-foreground data-[variant=destructive]:*:[svg]:text-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuSub({ ...props }: ContextMenuPrimitive.SubmenuRoot.Props) {\n return <ContextMenuPrimitive.SubmenuRoot data-slot=\"context-menu-sub\" {...props} />;\n}\n\nfunction ContextMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: ContextMenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.SubmenuTrigger\n data-slot=\"context-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"cn-rtl-flip ml-auto\" />\n </ContextMenuPrimitive.SubmenuTrigger>\n );\n}\n\nfunction ContextMenuSubContent({ ...props }: React.ComponentProps<typeof ContextMenuContent>) {\n return <ContextMenuContent data-slot=\"context-menu-sub-content\" className=\"shadow-lg\" side=\"right\" {...props} />;\n}\n\nfunction ContextMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: ContextMenuPrimitive.CheckboxItem.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.CheckboxItem\n data-slot=\"context-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute right-2\">\n <ContextMenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n );\n}\n\nfunction ContextMenuRadioGroup({ ...props }: ContextMenuPrimitive.RadioGroup.Props) {\n return <ContextMenuPrimitive.RadioGroup data-slot=\"context-menu-radio-group\" {...props} />;\n}\n\nfunction ContextMenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: ContextMenuPrimitive.RadioItem.Props & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.RadioItem\n data-slot=\"context-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute right-2\">\n <ContextMenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n );\n}\n\nfunction ContextMenuSeparator({ className, ...props }: ContextMenuPrimitive.Separator.Props) {\n return (\n <ContextMenuPrimitive.Separator\n data-slot=\"context-menu-separator\"\n className={cn('-mx-1 my-1 h-px bg-border', className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"context-menu-shortcut\"\n className={cn(\n 'ml-auto text-xs tracking-widest text-muted-foreground group-focus/context-menu-item:text-accent-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n ContextMenu,\n ContextMenuTrigger,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuCheckboxItem,\n ContextMenuRadioItem,\n ContextMenuLabel,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuGroup,\n ContextMenuPortal,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuRadioGroup,\n};\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../lib/utils.cjs`),t=require(`./button.cjs`);let n=require(`react/jsx-runtime`),r=require(`lucide-react`),i=require(`@base-ui/react/dialog`);function a({...e}){return(0,n.jsx)(i.Dialog.Root,{"data-slot":`dialog`,...e})}function o({...e}){return(0,n.jsx)(i.Dialog.Trigger,{"data-slot":`dialog-trigger`,...e})}function s({...e}){return(0,n.jsx)(i.Dialog.Portal,{"data-slot":`dialog-portal`,...e})}function c({...e}){return(0,n.jsx)(i.Dialog.Close,{"data-slot":`dialog-close`,...e})}function l({className:t,...r}){return(0,n.jsx)(i.Dialog.Backdrop,{"data-slot":`dialog-overlay`,className:e.cn(`fixed inset-0 isolate z-50 bg-black/50 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,t),...r})}function u({className:a,children:o,showCloseButton:c=!0,...u}){return(0,n.jsxs)(s,{children:[(0,n.jsx)(l,{}),(0,n.jsxs)(i.Dialog.Popup,{"data-slot":`dialog-content`,className:e.cn(`fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm 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`,a),...u,children:[o,c&&(0,n.jsx)(i.Dialog.Close,{"data-slot":`dialog-close`,render:(0,n.jsxs)(t.Button,{variant:`ghost`,className:`absolute top-2 right-2`,size:`icon-sm`,children:[(0,n.jsx)(r.XIcon,{}),(0,n.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function d({className:t,...r}){return(0,n.jsx)(`div`,{"data-slot":`dialog-header`,className:e.cn(`flex flex-col gap-2`,t),...r})}function f({className:r,showCloseButton:a=!1,children:o,...s}){return(0,n.jsxs)(`div`,{"data-slot":`dialog-footer`,className:e.cn(`-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end`,r),...s,children:[o,a&&(0,n.jsx)(i.Dialog.Close,{render:(0,n.jsx)(t.Button,{variant:`outline`,children:`Close`})})]})}function p({className:t,...r}){return(0,n.jsx)(i.Dialog.Title,{"data-slot":`dialog-title`,className:e.cn(`cn-font-heading text-base leading-none font-medium`,t),...r})}function m({className:t,...r}){return(0,n.jsx)(i.Dialog.Description,{"data-slot":`dialog-description`,className:e.cn(`text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground`,t),...r})}exports.Dialog=a,exports.DialogClose=c,exports.DialogContent=u,exports.DialogDescription=m,exports.DialogFooter=f,exports.DialogHeader=d,exports.DialogOverlay=l,exports.DialogPortal=s,exports.DialogTitle=p,exports.DialogTrigger=o;
1
+ "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../lib/utils.cjs"),t=require("./button.cjs");let n=require("react/jsx-runtime"),r=require("lucide-react"),i=require("@base-ui/react/dialog");function a({...e}){return(0,n.jsx)(i.Dialog.Root,{"data-slot":`dialog`,...e})}function o({...e}){return(0,n.jsx)(i.Dialog.Trigger,{"data-slot":`dialog-trigger`,...e})}function s({...e}){return(0,n.jsx)(i.Dialog.Portal,{"data-slot":`dialog-portal`,...e})}function c({...e}){return(0,n.jsx)(i.Dialog.Close,{"data-slot":`dialog-close`,...e})}function l({className:t,...r}){return(0,n.jsx)(i.Dialog.Backdrop,{"data-slot":`dialog-overlay`,className:e.cn(`fixed inset-0 isolate z-50 bg-black/50 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,t),...r})}function u({className:a,children:o,showCloseButton:c=!0,...u}){return(0,n.jsxs)(s,{children:[(0,n.jsx)(l,{}),(0,n.jsxs)(i.Dialog.Popup,{"data-slot":`dialog-content`,className:e.cn(`fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm 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`,a),...u,children:[o,c&&(0,n.jsx)(i.Dialog.Close,{"data-slot":`dialog-close`,render:(0,n.jsxs)(t.Button,{variant:`ghost`,className:`absolute top-2 right-2`,size:`icon-sm`,children:[(0,n.jsx)(r.XIcon,{}),(0,n.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function d({className:t,...r}){return(0,n.jsx)(`div`,{"data-slot":`dialog-header`,className:e.cn(`flex flex-col gap-2`,t),...r})}function f({className:r,showCloseButton:a=!1,children:o,...s}){return(0,n.jsxs)(`div`,{"data-slot":`dialog-footer`,className:e.cn(`-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end`,r),...s,children:[o,a&&(0,n.jsx)(i.Dialog.Close,{render:(0,n.jsx)(t.Button,{variant:`outline`,children:`Close`})})]})}function p({className:t,...r}){return(0,n.jsx)(i.Dialog.Title,{"data-slot":`dialog-title`,className:e.cn(`cn-font-heading text-base leading-none font-medium`,t),...r})}function m({className:t,...r}){return(0,n.jsx)(i.Dialog.Description,{"data-slot":`dialog-description`,className:e.cn(`text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground`,t),...r})}exports.Dialog=a,exports.DialogClose=c,exports.DialogContent=u,exports.DialogDescription=m,exports.DialogFooter=f,exports.DialogHeader=d,exports.DialogOverlay=l,exports.DialogPortal=s,exports.DialogTitle=p,exports.DialogTrigger=o;
2
2
  //# sourceMappingURL=dialog.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.cjs","names":[],"sources":["../../src/elements/dialog.tsx"],"sourcesContent":["'use client';\n\nimport { Dialog as DialogPrimitive } from '@base-ui/react/dialog';\nimport { XIcon } from 'lucide-react';\n\nimport { Button } from '@/elements/button';\nimport { cn } from '@/lib/utils';\n\nfunction Dialog({ ...props }: DialogPrimitive.Root.Props) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: DialogPrimitive.Trigger.Props) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: DialogPrimitive.Portal.Props) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: DialogPrimitive.Close.Props) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props) {\n return (\n <DialogPrimitive.Backdrop\n data-slot=\"dialog-overlay\"\n className={cn(\n 'fixed inset-0 isolate z-50 bg-black/50 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: DialogPrimitive.Popup.Props & {\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Popup\n data-slot=\"dialog-content\"\n className={cn(\n 'fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm 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 {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n render={\n <Button variant=\"ghost\" className=\"absolute top-2 right-2\" size=\"icon-sm\">\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </Button>\n }\n />\n )}\n </DialogPrimitive.Popup>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-header\" className={cn('flex flex-col gap-2', className)} {...props} />;\n}\n\nfunction DialogFooter({\n className,\n showCloseButton = false,\n children,\n ...props\n}: React.ComponentProps<'div'> & {\n showCloseButton?: boolean;\n}) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n '-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end',\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton && <DialogPrimitive.Close render={<Button variant=\"outline\">Close</Button>} />}\n </div>\n );\n}\n\nfunction DialogTitle({ className, ...props }: DialogPrimitive.Title.Props) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn('cn-font-heading text-base leading-none font-medium', className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({ className, ...props }: DialogPrimitive.Description.Props) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\n 'text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"],"mappings":"2RAQA,SAAS,EAAO,CAAE,GAAG,GAAqC,CACxD,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,KAAjB,CAAsB,YAAU,SAAS,GAAI,EAAS,CAAA,CAG/D,SAAS,EAAc,CAAE,GAAG,GAAwC,CAClE,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,QAAjB,CAAyB,YAAU,iBAAiB,GAAI,EAAS,CAAA,CAG1E,SAAS,EAAa,CAAE,GAAG,GAAuC,CAChE,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,OAAjB,CAAwB,YAAU,gBAAgB,GAAI,EAAS,CAAA,CAGxE,SAAS,EAAY,CAAE,GAAG,GAAsC,CAC9D,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,EAAS,CAAA,CAGtE,SAAS,EAAc,CAAE,YAAW,GAAG,GAAyC,CAC9E,OACE,EAAA,EAAA,KAAC,EAAA,OAAgB,SAAjB,CACE,YAAU,iBACV,UAAW,EAAA,GACT,8IACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,EAAc,CACrB,YACA,WACA,kBAAkB,GAClB,GAAG,GAGF,CACD,OACE,EAAA,EAAA,MAAC,EAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,EAAD,EAAiB,CAAA,EACjB,EAAA,EAAA,MAAC,EAAA,OAAgB,MAAjB,CACE,YAAU,iBACV,UAAW,EAAA,GACT,yWACA,EACD,CACD,GAAI,WANN,CAQG,EACA,IACC,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CACE,YAAU,eACV,QACE,EAAA,EAAA,MAAC,EAAA,OAAD,CAAQ,QAAQ,QAAQ,UAAU,yBAAyB,KAAK,mBAAhE,EACE,EAAA,EAAA,KAAC,EAAA,MAAD,EAAS,CAAA,EACT,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,mBAAU,QAAY,CAAA,CAC/B,GAEX,CAAA,CAEkB,GACX,CAAA,CAAA,CAInB,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAA,EAAA,KAAC,MAAD,CAAK,YAAU,gBAAgB,UAAW,EAAA,GAAG,sBAAuB,EAAU,CAAE,GAAI,EAAS,CAAA,CAGtG,SAAS,EAAa,CACpB,YACA,kBAAkB,GAClB,WACA,GAAG,GAGF,CACD,OACE,EAAA,EAAA,MAAC,MAAD,CACE,YAAU,gBACV,UAAW,EAAA,GACT,2GACA,EACD,CACD,GAAI,WANN,CAQG,EACA,IAAmB,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CAAuB,QAAQ,EAAA,EAAA,KAAC,EAAA,OAAD,CAAQ,QAAQ,mBAAU,QAAc,CAAA,CAAI,CAAA,CAC3F,GAIV,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OACE,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CACE,YAAU,eACV,UAAW,EAAA,GAAG,qDAAsD,EAAU,CAC9E,GAAI,EACJ,CAAA,CAIN,SAAS,EAAkB,CAAE,YAAW,GAAG,GAA4C,CACrF,OACE,EAAA,EAAA,KAAC,EAAA,OAAgB,YAAjB,CACE,YAAU,qBACV,UAAW,EAAA,GACT,qGACA,EACD,CACD,GAAI,EACJ,CAAA"}
1
+ {"version":3,"file":"dialog.cjs","names":[],"sources":["../../src/elements/dialog.tsx"],"sourcesContent":["'use client';\n\nimport { Dialog as DialogPrimitive } from '@base-ui/react/dialog';\nimport { XIcon } from 'lucide-react';\n\nimport { Button } from '@/elements/button';\nimport { cn } from '@/lib/utils';\n\nfunction Dialog({ ...props }: DialogPrimitive.Root.Props) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: DialogPrimitive.Trigger.Props) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: DialogPrimitive.Portal.Props) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: DialogPrimitive.Close.Props) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props) {\n return (\n <DialogPrimitive.Backdrop\n data-slot=\"dialog-overlay\"\n className={cn(\n 'fixed inset-0 isolate z-50 bg-black/50 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: DialogPrimitive.Popup.Props & {\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Popup\n data-slot=\"dialog-content\"\n className={cn(\n 'fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm 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 {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n render={\n <Button variant=\"ghost\" className=\"absolute top-2 right-2\" size=\"icon-sm\">\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </Button>\n }\n />\n )}\n </DialogPrimitive.Popup>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-header\" className={cn('flex flex-col gap-2', className)} {...props} />;\n}\n\nfunction DialogFooter({\n className,\n showCloseButton = false,\n children,\n ...props\n}: React.ComponentProps<'div'> & {\n showCloseButton?: boolean;\n}) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n '-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end',\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton && <DialogPrimitive.Close render={<Button variant=\"outline\">Close</Button>} />}\n </div>\n );\n}\n\nfunction DialogTitle({ className, ...props }: DialogPrimitive.Title.Props) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn('cn-font-heading text-base leading-none font-medium', className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({ className, ...props }: DialogPrimitive.Description.Props) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\n 'text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"],"mappings":"8OAQA,SAAS,EAAO,CAAE,GAAG,GAAqC,CACxD,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,KAAjB,CAAsB,YAAU,SAAS,GAAI,CAAQ,CAAA,CAC9D,CAEA,SAAS,EAAc,CAAE,GAAG,GAAwC,CAClE,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,QAAjB,CAAyB,YAAU,iBAAiB,GAAI,CAAQ,CAAA,CACzE,CAEA,SAAS,EAAa,CAAE,GAAG,GAAuC,CAChE,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,OAAjB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAS,EAAY,CAAE,GAAG,GAAsC,CAC9D,OAAO,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAS,EAAc,CAAE,YAAW,GAAG,GAAyC,CAC9E,OACE,EAAA,EAAA,KAAC,EAAA,OAAgB,SAAjB,CACE,YAAU,iBACV,UAAW,EAAA,GACT,8IACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAc,CACrB,YACA,WACA,kBAAkB,GAClB,GAAG,GAGF,CACD,OACE,EAAA,EAAA,MAAC,EAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,EAAD,CAAgB,CAAA,GAChB,EAAA,EAAA,MAAC,EAAA,OAAgB,MAAjB,CACE,YAAU,iBACV,UAAW,EAAA,GACT,yWACA,CACF,EACA,GAAI,WANN,CAQG,EACA,IACC,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CACE,YAAU,eACV,QACE,EAAA,EAAA,MAAC,EAAA,OAAD,CAAQ,QAAQ,QAAQ,UAAU,yBAAyB,KAAK,mBAAhE,EACE,EAAA,EAAA,KAAC,EAAA,MAAD,CAAQ,CAAA,GACR,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,mBAAU,OAAW,CAAA,CAC/B,GAEX,CAAA,CAEkB,GACX,CAAA,CAAA,CAElB,CAEA,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAA,EAAA,KAAC,MAAD,CAAK,YAAU,gBAAgB,UAAW,EAAA,GAAG,sBAAuB,CAAS,EAAG,GAAI,CAAQ,CAAA,CACrG,CAEA,SAAS,EAAa,CACpB,YACA,kBAAkB,GAClB,WACA,GAAG,GAGF,CACD,OACE,EAAA,EAAA,MAAC,MAAD,CACE,YAAU,gBACV,UAAW,EAAA,GACT,2GACA,CACF,EACA,GAAI,WANN,CAQG,EACA,IAAmB,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CAAuB,QAAQ,EAAA,EAAA,KAAC,EAAA,OAAD,CAAQ,QAAQ,mBAAU,OAAa,CAAA,CAAI,CAAA,CAC3F,GAET,CAEA,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OACE,EAAA,EAAA,KAAC,EAAA,OAAgB,MAAjB,CACE,YAAU,eACV,UAAW,EAAA,GAAG,qDAAsD,CAAS,EAC7E,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAkB,CAAE,YAAW,GAAG,GAA4C,CACrF,OACE,EAAA,EAAA,KAAC,EAAA,OAAgB,YAAjB,CACE,YAAU,qBACV,UAAW,EAAA,GACT,qGACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,16 +1,16 @@
1
1
  import { Dialog as DialogPrimitive } from '@base-ui/react/dialog';
2
- declare function Dialog({ ...props }: DialogPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
3
- declare function DialogTrigger({ ...props }: DialogPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
4
- declare function DialogPortal({ ...props }: DialogPrimitive.Portal.Props): import("react/jsx-runtime").JSX.Element;
5
- declare function DialogClose({ ...props }: DialogPrimitive.Close.Props): import("react/jsx-runtime").JSX.Element;
6
- declare function DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props): import("react/jsx-runtime").JSX.Element;
2
+ declare function Dialog({ ...props }: DialogPrimitive.Root.Props): import("react").JSX.Element;
3
+ declare function DialogTrigger({ ...props }: DialogPrimitive.Trigger.Props): import("react").JSX.Element;
4
+ declare function DialogPortal({ ...props }: DialogPrimitive.Portal.Props): import("react").JSX.Element;
5
+ declare function DialogClose({ ...props }: DialogPrimitive.Close.Props): import("react").JSX.Element;
6
+ declare function DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props): import("react").JSX.Element;
7
7
  declare function DialogContent({ className, children, showCloseButton, ...props }: DialogPrimitive.Popup.Props & {
8
8
  showCloseButton?: boolean;
9
- }): import("react/jsx-runtime").JSX.Element;
10
- declare function DialogHeader({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
9
+ }): import("react").JSX.Element;
10
+ declare function DialogHeader({ className, ...props }: React.ComponentProps<'div'>): import("react").JSX.Element;
11
11
  declare function DialogFooter({ className, showCloseButton, children, ...props }: React.ComponentProps<'div'> & {
12
12
  showCloseButton?: boolean;
13
- }): import("react/jsx-runtime").JSX.Element;
14
- declare function DialogTitle({ className, ...props }: DialogPrimitive.Title.Props): import("react/jsx-runtime").JSX.Element;
15
- declare function DialogDescription({ className, ...props }: DialogPrimitive.Description.Props): import("react/jsx-runtime").JSX.Element;
13
+ }): import("react").JSX.Element;
14
+ declare function DialogTitle({ className, ...props }: DialogPrimitive.Title.Props): import("react").JSX.Element;
15
+ declare function DialogDescription({ className, ...props }: DialogPrimitive.Description.Props): import("react").JSX.Element;
16
16
  export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.js","names":[],"sources":["../../src/elements/dialog.tsx"],"sourcesContent":["'use client';\n\nimport { Dialog as DialogPrimitive } from '@base-ui/react/dialog';\nimport { XIcon } from 'lucide-react';\n\nimport { Button } from '@/elements/button';\nimport { cn } from '@/lib/utils';\n\nfunction Dialog({ ...props }: DialogPrimitive.Root.Props) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: DialogPrimitive.Trigger.Props) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: DialogPrimitive.Portal.Props) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: DialogPrimitive.Close.Props) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props) {\n return (\n <DialogPrimitive.Backdrop\n data-slot=\"dialog-overlay\"\n className={cn(\n 'fixed inset-0 isolate z-50 bg-black/50 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: DialogPrimitive.Popup.Props & {\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Popup\n data-slot=\"dialog-content\"\n className={cn(\n 'fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm 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 {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n render={\n <Button variant=\"ghost\" className=\"absolute top-2 right-2\" size=\"icon-sm\">\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </Button>\n }\n />\n )}\n </DialogPrimitive.Popup>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-header\" className={cn('flex flex-col gap-2', className)} {...props} />;\n}\n\nfunction DialogFooter({\n className,\n showCloseButton = false,\n children,\n ...props\n}: React.ComponentProps<'div'> & {\n showCloseButton?: boolean;\n}) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n '-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end',\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton && <DialogPrimitive.Close render={<Button variant=\"outline\">Close</Button>} />}\n </div>\n );\n}\n\nfunction DialogTitle({ className, ...props }: DialogPrimitive.Title.Props) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn('cn-font-heading text-base leading-none font-medium', className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({ className, ...props }: DialogPrimitive.Description.Props) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\n 'text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"],"mappings":";;;;;;;AAQA,SAAS,EAAO,EAAE,GAAG,KAAqC;AACxD,QAAO,kBAAC,EAAgB,MAAjB;EAAsB,aAAU;EAAS,GAAI;EAAS,CAAA;;AAG/D,SAAS,EAAc,EAAE,GAAG,KAAwC;AAClE,QAAO,kBAAC,EAAgB,SAAjB;EAAyB,aAAU;EAAiB,GAAI;EAAS,CAAA;;AAG1E,SAAS,EAAa,EAAE,GAAG,KAAuC;AAChE,QAAO,kBAAC,EAAgB,QAAjB;EAAwB,aAAU;EAAgB,GAAI;EAAS,CAAA;;AAGxE,SAAS,EAAY,EAAE,GAAG,KAAsC;AAC9D,QAAO,kBAAC,EAAgB,OAAjB;EAAuB,aAAU;EAAe,GAAI;EAAS,CAAA;;AAGtE,SAAS,EAAc,EAAE,cAAW,GAAG,KAAyC;AAC9E,QACE,kBAAC,EAAgB,UAAjB;EACE,aAAU;EACV,WAAW,EACT,+IACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAc,EACrB,cACA,aACA,qBAAkB,IAClB,GAAG,KAGF;AACD,QACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAiB,CAAA,EACjB,kBAAC,EAAgB,OAAjB;EACE,aAAU;EACV,WAAW,EACT,0WACA,EACD;EACD,GAAI;YANN,CAQG,GACA,KACC,kBAAC,EAAgB,OAAjB;GACE,aAAU;GACV,QACE,kBAAC,GAAD;IAAQ,SAAQ;IAAQ,WAAU;IAAyB,MAAK;cAAhE,CACE,kBAAC,GAAD,EAAS,CAAA,EACT,kBAAC,QAAD;KAAM,WAAU;eAAU;KAAY,CAAA,CAC/B;;GAEX,CAAA,CAEkB;IACX,EAAA,CAAA;;AAInB,SAAS,EAAa,EAAE,cAAW,GAAG,KAAsC;AAC1E,QAAO,kBAAC,OAAD;EAAK,aAAU;EAAgB,WAAW,EAAG,uBAAuB,EAAU;EAAE,GAAI;EAAS,CAAA;;AAGtG,SAAS,EAAa,EACpB,cACA,qBAAkB,IAClB,aACA,GAAG,KAGF;AACD,QACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,4GACA,EACD;EACD,GAAI;YANN,CAQG,GACA,KAAmB,kBAAC,EAAgB,OAAjB,EAAuB,QAAQ,kBAAC,GAAD;GAAQ,SAAQ;aAAU;GAAc,CAAA,EAAI,CAAA,CAC3F;;;AAIV,SAAS,EAAY,EAAE,cAAW,GAAG,KAAsC;AACzE,QACE,kBAAC,EAAgB,OAAjB;EACE,aAAU;EACV,WAAW,EAAG,sDAAsD,EAAU;EAC9E,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAkB,EAAE,cAAW,GAAG,KAA4C;AACrF,QACE,kBAAC,EAAgB,aAAjB;EACE,aAAU;EACV,WAAW,EACT,sGACA,EACD;EACD,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"dialog.js","names":[],"sources":["../../src/elements/dialog.tsx"],"sourcesContent":["'use client';\n\nimport { Dialog as DialogPrimitive } from '@base-ui/react/dialog';\nimport { XIcon } from 'lucide-react';\n\nimport { Button } from '@/elements/button';\nimport { cn } from '@/lib/utils';\n\nfunction Dialog({ ...props }: DialogPrimitive.Root.Props) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: DialogPrimitive.Trigger.Props) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: DialogPrimitive.Portal.Props) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: DialogPrimitive.Close.Props) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props) {\n return (\n <DialogPrimitive.Backdrop\n data-slot=\"dialog-overlay\"\n className={cn(\n 'fixed inset-0 isolate z-50 bg-black/50 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: DialogPrimitive.Popup.Props & {\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Popup\n data-slot=\"dialog-content\"\n className={cn(\n 'fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm 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 {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n render={\n <Button variant=\"ghost\" className=\"absolute top-2 right-2\" size=\"icon-sm\">\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </Button>\n }\n />\n )}\n </DialogPrimitive.Popup>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-header\" className={cn('flex flex-col gap-2', className)} {...props} />;\n}\n\nfunction DialogFooter({\n className,\n showCloseButton = false,\n children,\n ...props\n}: React.ComponentProps<'div'> & {\n showCloseButton?: boolean;\n}) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n '-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end',\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton && <DialogPrimitive.Close render={<Button variant=\"outline\">Close</Button>} />}\n </div>\n );\n}\n\nfunction DialogTitle({ className, ...props }: DialogPrimitive.Title.Props) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn('cn-font-heading text-base leading-none font-medium', className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({ className, ...props }: DialogPrimitive.Description.Props) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\n 'text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"],"mappings":";;;;;;;AAQA,SAAS,EAAO,EAAE,GAAG,KAAqC;CACxD,OAAO,kBAAC,EAAgB,MAAjB;EAAsB,aAAU;EAAS,GAAI;CAAQ,CAAA;AAC9D;AAEA,SAAS,EAAc,EAAE,GAAG,KAAwC;CAClE,OAAO,kBAAC,EAAgB,SAAjB;EAAyB,aAAU;EAAiB,GAAI;CAAQ,CAAA;AACzE;AAEA,SAAS,EAAa,EAAE,GAAG,KAAuC;CAChE,OAAO,kBAAC,EAAgB,QAAjB;EAAwB,aAAU;EAAgB,GAAI;CAAQ,CAAA;AACvE;AAEA,SAAS,EAAY,EAAE,GAAG,KAAsC;CAC9D,OAAO,kBAAC,EAAgB,OAAjB;EAAuB,aAAU;EAAe,GAAI;CAAQ,CAAA;AACrE;AAEA,SAAS,EAAc,EAAE,cAAW,GAAG,KAAyC;CAC9E,OACE,kBAAC,EAAgB,UAAjB;EACE,aAAU;EACV,WAAW,EACT,+IACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAc,EACrB,cACA,aACA,qBAAkB,IAClB,GAAG,KAGF;CACD,OACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,CAAgB,CAAA,GAChB,kBAAC,EAAgB,OAAjB;EACE,aAAU;EACV,WAAW,EACT,0WACA,CACF;EACA,GAAI;YANN,CAQG,GACA,KACC,kBAAC,EAAgB,OAAjB;GACE,aAAU;GACV,QACE,kBAAC,GAAD;IAAQ,SAAQ;IAAQ,WAAU;IAAyB,MAAK;cAAhE,CACE,kBAAC,GAAD,CAAQ,CAAA,GACR,kBAAC,QAAD;KAAM,WAAU;eAAU;IAAW,CAAA,CAC/B;;EAEX,CAAA,CAEkB;GACX,EAAA,CAAA;AAElB;AAEA,SAAS,EAAa,EAAE,cAAW,GAAG,KAAsC;CAC1E,OAAO,kBAAC,OAAD;EAAK,aAAU;EAAgB,WAAW,EAAG,uBAAuB,CAAS;EAAG,GAAI;CAAQ,CAAA;AACrG;AAEA,SAAS,EAAa,EACpB,cACA,qBAAkB,IAClB,aACA,GAAG,KAGF;CACD,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,4GACA,CACF;EACA,GAAI;YANN,CAQG,GACA,KAAmB,kBAAC,EAAgB,OAAjB,EAAuB,QAAQ,kBAAC,GAAD;GAAQ,SAAQ;aAAU;EAAa,CAAA,EAAI,CAAA,CAC3F;;AAET;AAEA,SAAS,EAAY,EAAE,cAAW,GAAG,KAAsC;CACzE,OACE,kBAAC,EAAgB,OAAjB;EACE,aAAU;EACV,WAAW,EAAG,sDAAsD,CAAS;EAC7E,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAkB,EAAE,cAAW,GAAG,KAA4C;CACrF,OACE,kBAAC,EAAgB,aAAjB;EACE,aAAU;EACV,WAAW,EACT,sGACA,CACF;EACA,GAAI;CACL,CAAA;AAEL"}
@@ -1,2 +1,2 @@
1
- "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../lib/utils.cjs`);let t=require(`react/jsx-runtime`),n=require(`lucide-react`),r=require(`@base-ui/react/menu`);function i({...e}){return(0,t.jsx)(r.Menu.Root,{"data-slot":`dropdown-menu`,...e})}function a({...e}){return(0,t.jsx)(r.Menu.Portal,{"data-slot":`dropdown-menu-portal`,...e})}function o({...e}){return(0,t.jsx)(r.Menu.Trigger,{"data-slot":`dropdown-menu-trigger`,...e})}function s({align:n=`start`,alignOffset:i=0,side:a=`bottom`,sideOffset:o=4,className:s,...c}){return(0,t.jsx)(r.Menu.Portal,{children:(0,t.jsx)(r.Menu.Positioner,{className:`isolate z-50 outline-none`,align:n,alignOffset:i,side:a,sideOffset:o,children:(0,t.jsx)(r.Menu.Popup,{"data-slot":`dropdown-menu-content`,className:e.cn(`z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95`,s),...c})})})}function c({...e}){return(0,t.jsx)(r.Menu.Group,{"data-slot":`dropdown-menu-group`,...e})}function l({className:n,inset:i,...a}){return(0,t.jsx)(r.Menu.GroupLabel,{"data-slot":`dropdown-menu-label`,"data-inset":i,className:e.cn(`px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7`,n),...a})}function u({className:n,inset:i,variant:a=`default`,...o}){return(0,t.jsx)(r.Menu.Item,{"data-slot":`dropdown-menu-item`,"data-inset":i,"data-variant":a,className:e.cn(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,n),...o})}function d({...e}){return(0,t.jsx)(r.Menu.SubmenuRoot,{"data-slot":`dropdown-menu-sub`,...e})}function f({className:i,inset:a,children:o,...s}){return(0,t.jsxs)(r.Menu.SubmenuTrigger,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":a,className:e.cn(`flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,i),...s,children:[o,(0,t.jsx)(n.ChevronRightIcon,{className:`cn-rtl-flip ml-auto`})]})}function p({align:n=`start`,alignOffset:r=-3,side:i=`right`,sideOffset:a=0,className:o,...c}){return(0,t.jsx)(s,{"data-slot":`dropdown-menu-sub-content`,className:e.cn(`w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg 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-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`,o),align:n,alignOffset:r,side:i,sideOffset:a,...c})}function m({className:i,children:a,checked:o,inset:s,...c}){return(0,t.jsxs)(r.Menu.CheckboxItem,{"data-slot":`dropdown-menu-checkbox-item`,"data-inset":s,className:e.cn(`relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,i),checked:o,...c,children:[(0,t.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex items-center justify-center`,"data-slot":`dropdown-menu-checkbox-item-indicator`,children:(0,t.jsx)(r.Menu.CheckboxItemIndicator,{children:(0,t.jsx)(n.CheckIcon,{})})}),a]})}function h({...e}){return(0,t.jsx)(r.Menu.RadioGroup,{"data-slot":`dropdown-menu-radio-group`,...e})}function g({className:i,children:a,inset:o,...s}){return(0,t.jsxs)(r.Menu.RadioItem,{"data-slot":`dropdown-menu-radio-item`,"data-inset":o,className:e.cn(`relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,i),...s,children:[(0,t.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex items-center justify-center`,"data-slot":`dropdown-menu-radio-item-indicator`,children:(0,t.jsx)(r.Menu.RadioItemIndicator,{children:(0,t.jsx)(n.CheckIcon,{})})}),a]})}function _({className:n,...i}){return(0,t.jsx)(r.Menu.Separator,{"data-slot":`dropdown-menu-separator`,className:e.cn(`-mx-1 my-1 h-px bg-border`,n),...i})}function v({className:n,...r}){return(0,t.jsx)(`span`,{"data-slot":`dropdown-menu-shortcut`,className:e.cn(`ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground`,n),...r})}exports.DropdownMenu=i,exports.DropdownMenuCheckboxItem=m,exports.DropdownMenuContent=s,exports.DropdownMenuGroup=c,exports.DropdownMenuItem=u,exports.DropdownMenuLabel=l,exports.DropdownMenuPortal=a,exports.DropdownMenuRadioGroup=h,exports.DropdownMenuRadioItem=g,exports.DropdownMenuSeparator=_,exports.DropdownMenuShortcut=v,exports.DropdownMenuSub=d,exports.DropdownMenuSubContent=p,exports.DropdownMenuSubTrigger=f,exports.DropdownMenuTrigger=o;
1
+ "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../lib/utils.cjs");let t=require("react/jsx-runtime"),n=require("lucide-react"),r=require("@base-ui/react/menu");function i({...e}){return(0,t.jsx)(r.Menu.Root,{"data-slot":`dropdown-menu`,...e})}function a({...e}){return(0,t.jsx)(r.Menu.Portal,{"data-slot":`dropdown-menu-portal`,...e})}function o({...e}){return(0,t.jsx)(r.Menu.Trigger,{"data-slot":`dropdown-menu-trigger`,...e})}function s({align:n=`start`,alignOffset:i=0,side:a=`bottom`,sideOffset:o=4,className:s,...c}){return(0,t.jsx)(r.Menu.Portal,{children:(0,t.jsx)(r.Menu.Positioner,{className:`isolate z-50 outline-none`,align:n,alignOffset:i,side:a,sideOffset:o,children:(0,t.jsx)(r.Menu.Popup,{"data-slot":`dropdown-menu-content`,className:e.cn(`z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95`,s),...c})})})}function c({...e}){return(0,t.jsx)(r.Menu.Group,{"data-slot":`dropdown-menu-group`,...e})}function l({className:n,inset:i,...a}){return(0,t.jsx)(r.Menu.GroupLabel,{"data-slot":`dropdown-menu-label`,"data-inset":i,className:e.cn(`px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7`,n),...a})}function u({className:n,inset:i,variant:a=`default`,...o}){return(0,t.jsx)(r.Menu.Item,{"data-slot":`dropdown-menu-item`,"data-inset":i,"data-variant":a,className:e.cn(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,n),...o})}function d({...e}){return(0,t.jsx)(r.Menu.SubmenuRoot,{"data-slot":`dropdown-menu-sub`,...e})}function f({className:i,inset:a,children:o,...s}){return(0,t.jsxs)(r.Menu.SubmenuTrigger,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":a,className:e.cn(`flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,i),...s,children:[o,(0,t.jsx)(n.ChevronRightIcon,{className:`cn-rtl-flip ml-auto`})]})}function p({align:n=`start`,alignOffset:r=-3,side:i=`right`,sideOffset:a=0,className:o,...c}){return(0,t.jsx)(s,{"data-slot":`dropdown-menu-sub-content`,className:e.cn(`w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg 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-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`,o),align:n,alignOffset:r,side:i,sideOffset:a,...c})}function m({className:i,children:a,checked:o,inset:s,...c}){return(0,t.jsxs)(r.Menu.CheckboxItem,{"data-slot":`dropdown-menu-checkbox-item`,"data-inset":s,className:e.cn(`relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,i),checked:o,...c,children:[(0,t.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex items-center justify-center`,"data-slot":`dropdown-menu-checkbox-item-indicator`,children:(0,t.jsx)(r.Menu.CheckboxItemIndicator,{children:(0,t.jsx)(n.CheckIcon,{})})}),a]})}function h({...e}){return(0,t.jsx)(r.Menu.RadioGroup,{"data-slot":`dropdown-menu-radio-group`,...e})}function g({className:i,children:a,inset:o,...s}){return(0,t.jsxs)(r.Menu.RadioItem,{"data-slot":`dropdown-menu-radio-item`,"data-inset":o,className:e.cn(`relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,i),...s,children:[(0,t.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex items-center justify-center`,"data-slot":`dropdown-menu-radio-item-indicator`,children:(0,t.jsx)(r.Menu.RadioItemIndicator,{children:(0,t.jsx)(n.CheckIcon,{})})}),a]})}function _({className:n,...i}){return(0,t.jsx)(r.Menu.Separator,{"data-slot":`dropdown-menu-separator`,className:e.cn(`-mx-1 my-1 h-px bg-border`,n),...i})}function v({className:n,...r}){return(0,t.jsx)(`span`,{"data-slot":`dropdown-menu-shortcut`,className:e.cn(`ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground`,n),...r})}exports.DropdownMenu=i,exports.DropdownMenuCheckboxItem=m,exports.DropdownMenuContent=s,exports.DropdownMenuGroup=c,exports.DropdownMenuItem=u,exports.DropdownMenuLabel=l,exports.DropdownMenuPortal=a,exports.DropdownMenuRadioGroup=h,exports.DropdownMenuRadioItem=g,exports.DropdownMenuSeparator=_,exports.DropdownMenuShortcut=v,exports.DropdownMenuSub=d,exports.DropdownMenuSubContent=p,exports.DropdownMenuSubTrigger=f,exports.DropdownMenuTrigger=o;
2
2
  //# sourceMappingURL=dropdown-menu.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.cjs","names":[],"sources":["../../src/elements/dropdown-menu.tsx"],"sourcesContent":["'use client';\n\nimport { Menu as MenuPrimitive } from '@base-ui/react/menu';\nimport { CheckIcon, ChevronRightIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\nfunction DropdownMenu({ ...props }: MenuPrimitive.Root.Props) {\n return <MenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props) {\n return <MenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />;\n}\n\nfunction DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props) {\n return <MenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />;\n}\n\nfunction DropdownMenuContent({\n align = 'start',\n alignOffset = 0,\n side = 'bottom',\n sideOffset = 4,\n className,\n ...props\n}: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>) {\n return (\n <MenuPrimitive.Portal>\n <MenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <MenuPrimitive.Popup\n data-slot=\"dropdown-menu-content\"\n className={cn(\n 'z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95',\n className,\n )}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n}\n\nfunction DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props) {\n return <MenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />;\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: MenuPrimitive.GroupLabel.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.GroupLabel\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: MenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n}) {\n return (\n <MenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props) {\n return <MenuPrimitive.SubmenuRoot data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: MenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.SubmenuTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"cn-rtl-flip ml-auto\" />\n </MenuPrimitive.SubmenuTrigger>\n );\n}\n\nfunction DropdownMenuSubContent({\n align = 'start',\n alignOffset = -3,\n side = 'right',\n sideOffset = 0,\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuContent>) {\n return (\n <DropdownMenuContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg 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-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 align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: MenuPrimitive.CheckboxItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-checkbox-item-indicator\"\n >\n <MenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </MenuPrimitive.CheckboxItem>\n );\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props) {\n return <MenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />;\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: MenuPrimitive.RadioItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-radio-item-indicator\"\n >\n <MenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </MenuPrimitive.RadioItem>\n );\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props) {\n return (\n <MenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn('-mx-1 my-1 h-px bg-border', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n 'ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuPortal,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubTrigger,\n DropdownMenuSubContent,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown-menu.cjs","names":[],"sources":["../../src/elements/dropdown-menu.tsx"],"sourcesContent":["'use client';\n\nimport { Menu as MenuPrimitive } from '@base-ui/react/menu';\nimport { CheckIcon, ChevronRightIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\nfunction DropdownMenu({ ...props }: MenuPrimitive.Root.Props) {\n return <MenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props) {\n return <MenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />;\n}\n\nfunction DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props) {\n return <MenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />;\n}\n\nfunction DropdownMenuContent({\n align = 'start',\n alignOffset = 0,\n side = 'bottom',\n sideOffset = 4,\n className,\n ...props\n}: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>) {\n return (\n <MenuPrimitive.Portal>\n <MenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <MenuPrimitive.Popup\n data-slot=\"dropdown-menu-content\"\n className={cn(\n 'z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95',\n className,\n )}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n}\n\nfunction DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props) {\n return <MenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />;\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: MenuPrimitive.GroupLabel.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.GroupLabel\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: MenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n}) {\n return (\n <MenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props) {\n return <MenuPrimitive.SubmenuRoot data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: MenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.SubmenuTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"cn-rtl-flip ml-auto\" />\n </MenuPrimitive.SubmenuTrigger>\n );\n}\n\nfunction DropdownMenuSubContent({\n align = 'start',\n alignOffset = -3,\n side = 'right',\n sideOffset = 0,\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuContent>) {\n return (\n <DropdownMenuContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg 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-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 align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: MenuPrimitive.CheckboxItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-checkbox-item-indicator\"\n >\n <MenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </MenuPrimitive.CheckboxItem>\n );\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props) {\n return <MenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />;\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: MenuPrimitive.RadioItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-radio-item-indicator\"\n >\n <MenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </MenuPrimitive.RadioItem>\n );\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props) {\n return (\n <MenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn('-mx-1 my-1 h-px bg-border', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n 'ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuPortal,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubTrigger,\n DropdownMenuSubContent,\n};\n"],"mappings":"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"}
@@ -1,28 +1,28 @@
1
1
  import { Menu as MenuPrimitive } from '@base-ui/react/menu';
2
- declare function DropdownMenu({ ...props }: MenuPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
3
- declare function DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props): import("react/jsx-runtime").JSX.Element;
4
- declare function DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
5
- declare function DropdownMenuContent({ align, alignOffset, side, sideOffset, className, ...props }: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>): import("react/jsx-runtime").JSX.Element;
6
- declare function DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props): import("react/jsx-runtime").JSX.Element;
2
+ declare function DropdownMenu({ ...props }: MenuPrimitive.Root.Props): import("react").JSX.Element;
3
+ declare function DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props): import("react").JSX.Element;
4
+ declare function DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props): import("react").JSX.Element;
5
+ declare function DropdownMenuContent({ align, alignOffset, side, sideOffset, className, ...props }: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>): import("react").JSX.Element;
6
+ declare function DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props): import("react").JSX.Element;
7
7
  declare function DropdownMenuLabel({ className, inset, ...props }: MenuPrimitive.GroupLabel.Props & {
8
8
  inset?: boolean;
9
- }): import("react/jsx-runtime").JSX.Element;
9
+ }): import("react").JSX.Element;
10
10
  declare function DropdownMenuItem({ className, inset, variant, ...props }: MenuPrimitive.Item.Props & {
11
11
  inset?: boolean;
12
12
  variant?: 'default' | 'destructive';
13
- }): import("react/jsx-runtime").JSX.Element;
14
- declare function DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props): import("react/jsx-runtime").JSX.Element;
13
+ }): import("react").JSX.Element;
14
+ declare function DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props): import("react").JSX.Element;
15
15
  declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: MenuPrimitive.SubmenuTrigger.Props & {
16
16
  inset?: boolean;
17
- }): import("react/jsx-runtime").JSX.Element;
18
- declare function DropdownMenuSubContent({ align, alignOffset, side, sideOffset, className, ...props }: React.ComponentProps<typeof DropdownMenuContent>): import("react/jsx-runtime").JSX.Element;
17
+ }): import("react").JSX.Element;
18
+ declare function DropdownMenuSubContent({ align, alignOffset, side, sideOffset, className, ...props }: React.ComponentProps<typeof DropdownMenuContent>): import("react").JSX.Element;
19
19
  declare function DropdownMenuCheckboxItem({ className, children, checked, inset, ...props }: MenuPrimitive.CheckboxItem.Props & {
20
20
  inset?: boolean;
21
- }): import("react/jsx-runtime").JSX.Element;
22
- declare function DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props): import("react/jsx-runtime").JSX.Element;
21
+ }): import("react").JSX.Element;
22
+ declare function DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props): import("react").JSX.Element;
23
23
  declare function DropdownMenuRadioItem({ className, children, inset, ...props }: MenuPrimitive.RadioItem.Props & {
24
24
  inset?: boolean;
25
- }): import("react/jsx-runtime").JSX.Element;
26
- declare function DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props): import("react/jsx-runtime").JSX.Element;
27
- declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
25
+ }): import("react").JSX.Element;
26
+ declare function DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props): import("react").JSX.Element;
27
+ declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>): import("react").JSX.Element;
28
28
  export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.js","names":[],"sources":["../../src/elements/dropdown-menu.tsx"],"sourcesContent":["'use client';\n\nimport { Menu as MenuPrimitive } from '@base-ui/react/menu';\nimport { CheckIcon, ChevronRightIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\nfunction DropdownMenu({ ...props }: MenuPrimitive.Root.Props) {\n return <MenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props) {\n return <MenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />;\n}\n\nfunction DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props) {\n return <MenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />;\n}\n\nfunction DropdownMenuContent({\n align = 'start',\n alignOffset = 0,\n side = 'bottom',\n sideOffset = 4,\n className,\n ...props\n}: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>) {\n return (\n <MenuPrimitive.Portal>\n <MenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <MenuPrimitive.Popup\n data-slot=\"dropdown-menu-content\"\n className={cn(\n 'z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95',\n className,\n )}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n}\n\nfunction DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props) {\n return <MenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />;\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: MenuPrimitive.GroupLabel.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.GroupLabel\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: MenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n}) {\n return (\n <MenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props) {\n return <MenuPrimitive.SubmenuRoot data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: MenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.SubmenuTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"cn-rtl-flip ml-auto\" />\n </MenuPrimitive.SubmenuTrigger>\n );\n}\n\nfunction DropdownMenuSubContent({\n align = 'start',\n alignOffset = -3,\n side = 'right',\n sideOffset = 0,\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuContent>) {\n return (\n <DropdownMenuContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg 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-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 align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: MenuPrimitive.CheckboxItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-checkbox-item-indicator\"\n >\n <MenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </MenuPrimitive.CheckboxItem>\n );\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props) {\n return <MenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />;\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: MenuPrimitive.RadioItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-radio-item-indicator\"\n >\n <MenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </MenuPrimitive.RadioItem>\n );\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props) {\n return (\n <MenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn('-mx-1 my-1 h-px bg-border', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n 'ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuPortal,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubTrigger,\n DropdownMenuSubContent,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown-menu.js","names":[],"sources":["../../src/elements/dropdown-menu.tsx"],"sourcesContent":["'use client';\n\nimport { Menu as MenuPrimitive } from '@base-ui/react/menu';\nimport { CheckIcon, ChevronRightIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\nfunction DropdownMenu({ ...props }: MenuPrimitive.Root.Props) {\n return <MenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props) {\n return <MenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />;\n}\n\nfunction DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props) {\n return <MenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />;\n}\n\nfunction DropdownMenuContent({\n align = 'start',\n alignOffset = 0,\n side = 'bottom',\n sideOffset = 4,\n className,\n ...props\n}: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>) {\n return (\n <MenuPrimitive.Portal>\n <MenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <MenuPrimitive.Popup\n data-slot=\"dropdown-menu-content\"\n className={cn(\n 'z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--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 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95',\n className,\n )}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n}\n\nfunction DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props) {\n return <MenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />;\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: MenuPrimitive.GroupLabel.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.GroupLabel\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: MenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n}) {\n return (\n <MenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props) {\n return <MenuPrimitive.SubmenuRoot data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: MenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.SubmenuTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"cn-rtl-flip ml-auto\" />\n </MenuPrimitive.SubmenuTrigger>\n );\n}\n\nfunction DropdownMenuSubContent({\n align = 'start',\n alignOffset = -3,\n side = 'right',\n sideOffset = 0,\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuContent>) {\n return (\n <DropdownMenuContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg 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-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 align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: MenuPrimitive.CheckboxItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-checkbox-item-indicator\"\n >\n <MenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </MenuPrimitive.CheckboxItem>\n );\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props) {\n return <MenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />;\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: MenuPrimitive.RadioItem.Props & {\n inset?: boolean;\n}) {\n return (\n <MenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-radio-item-indicator\"\n >\n <MenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </MenuPrimitive.RadioItem>\n );\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props) {\n return (\n <MenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn('-mx-1 my-1 h-px bg-border', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n 'ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuPortal,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubTrigger,\n DropdownMenuSubContent,\n};\n"],"mappings":";;;;;;AAOA,SAAS,EAAa,EAAE,GAAG,KAAmC;CAC5D,OAAO,kBAAC,EAAc,MAAf;EAAoB,aAAU;EAAgB,GAAI;CAAQ,CAAA;AACnE;AAEA,SAAS,EAAmB,EAAE,GAAG,KAAqC;CACpE,OAAO,kBAAC,EAAc,QAAf;EAAsB,aAAU;EAAuB,GAAI;CAAQ,CAAA;AAC5E;AAEA,SAAS,EAAoB,EAAE,GAAG,KAAsC;CACtE,OAAO,kBAAC,EAAc,SAAf;EAAuB,aAAU;EAAwB,GAAI;CAAQ,CAAA;AAC9E;AAEA,SAAS,EAAoB,EAC3B,WAAQ,SACR,iBAAc,GACd,UAAO,UACP,gBAAa,GACb,cACA,GAAG,KACiH;CACpH,OACE,kBAAC,EAAc,QAAf,EAAA,UACE,kBAAC,EAAc,YAAf;EACE,WAAU;EACH;EACM;EACP;EACM;YAEZ,kBAAC,EAAc,OAAf;GACE,aAAU;GACV,WAAW,EACT,qoBACA,CACF;GACA,GAAI;EACL,CAAA;CACuB,CAAA,EACN,CAAA;AAE1B;AAEA,SAAS,EAAkB,EAAE,GAAG,KAAoC;CAClE,OAAO,kBAAC,EAAc,OAAf;EAAqB,aAAU;EAAsB,GAAI;CAAQ,CAAA;AAC1E;AAEA,SAAS,EAAkB,EACzB,cACA,UACA,GAAG,KAGF;CACD,OACE,kBAAC,EAAc,YAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,EAAG,yEAAyE,CAAS;EAChG,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAiB,EACxB,cACA,UACA,aAAU,WACV,GAAG,KAIF;CACD,OACE,kBAAC,EAAc,MAAf;EACE,aAAU;EACV,cAAY;EACZ,gBAAc;EACd,WAAW,EACT,8oBACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAgB,EAAE,GAAG,KAA0C;CACtE,OAAO,kBAAC,EAAc,aAAf;EAA2B,aAAU;EAAoB,GAAI;CAAQ,CAAA;AAC9E;AAEA,SAAS,EAAuB,EAC9B,cACA,UACA,aACA,GAAG,KAGF;CACD,OACE,kBAAC,EAAc,gBAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,EACT,0aACA,CACF;EACA,GAAI;YAPN,CASG,GACD,kBAAC,GAAD,EAAkB,WAAU,sBAAuB,CAAA,CACvB;;AAElC;AAEA,SAAS,EAAuB,EAC9B,WAAQ,SACR,iBAAc,IACd,UAAO,SACP,gBAAa,GACb,cACA,GAAG,KACgD;CACnD,OACE,kBAAC,GAAD;EACE,aAAU;EACV,WAAW,EACT,2ZACA,CACF;EACO;EACM;EACP;EACM;EACZ,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAyB,EAChC,cACA,aACA,YACA,UACA,GAAG,KAGF;CACD,OACE,kBAAC,EAAc,cAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,EACT,8VACA,CACF;EACS;EACT,GAAI;YARN,CAUE,kBAAC,QAAD;GACE,WAAU;GACV,aAAU;aAEV,kBAAC,EAAc,uBAAf,EAAA,UACE,kBAAC,GAAD,CAAY,CAAA,EACuB,CAAA;EACjC,CAAA,GACL,CACyB;;AAEhC;AAEA,SAAS,EAAuB,EAAE,GAAG,KAAyC;CAC5E,OAAO,kBAAC,EAAc,YAAf;EAA0B,aAAU;EAA4B,GAAI;CAAQ,CAAA;AACrF;AAEA,SAAS,EAAsB,EAC7B,cACA,aACA,UACA,GAAG,KAGF;CACD,OACE,kBAAC,EAAc,WAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,EACT,8VACA,CACF;EACA,GAAI;YAPN,CASE,kBAAC,QAAD;GACE,WAAU;GACV,aAAU;aAEV,kBAAC,EAAc,oBAAf,EAAA,UACE,kBAAC,GAAD,CAAY,CAAA,EACoB,CAAA;EAC9B,CAAA,GACL,CACsB;;AAE7B;AAEA,SAAS,EAAsB,EAAE,cAAW,GAAG,KAAwC;CACrF,OACE,kBAAC,EAAc,WAAf;EACE,aAAU;EACV,WAAW,EAAG,6BAA6B,CAAS;EACpD,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAqB,EAAE,cAAW,GAAG,KAAuC;CACnF,OACE,kBAAC,QAAD;EACE,aAAU;EACV,WAAW,EACT,+GACA,CACF;EACA,GAAI;CACL,CAAA;AAEL"}
@@ -1,2 +1,2 @@
1
- "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../lib/utils.cjs`),t=require(`./separator.cjs`),n=require(`./label.cjs`);let r=require(`react/jsx-runtime`),i=require(`class-variance-authority`),a=require(`react`);function o({className:t,...n}){return(0,r.jsx)(`fieldset`,{"data-slot":`field-set`,className:e.cn(`flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3`,t),...n})}function s({className:t,variant:n=`legend`,...i}){return(0,r.jsx)(`legend`,{"data-slot":`field-legend`,"data-variant":n,className:e.cn(`mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base`,t),...i})}function c({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`field-group`,className:e.cn(`group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4`,t),...n})}var l=(0,i.cva)(`group/field flex w-full gap-2 data-[invalid=true]:text-destructive`,{variants:{orientation:{vertical:`flex-col *:w-full [&>.sr-only]:w-auto`,horizontal:`flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`,responsive:`flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`}},defaultVariants:{orientation:`vertical`}});function u({className:t,orientation:n=`vertical`,...i}){return(0,r.jsx)(`div`,{role:`group`,"data-slot":`field`,"data-orientation":n,className:e.cn(l({orientation:n}),t),...i})}function d({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`field-content`,className:e.cn(`group/field-content flex flex-1 flex-col gap-0.5 leading-snug`,t),...n})}function f({className:t,...i}){return(0,r.jsx)(n.Label,{"data-slot":`field-label`,className:e.cn(`group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10`,`has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col`,t),...i})}function p({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`field-label`,className:e.cn(`flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50`,t),...n})}function m({className:t,...n}){return(0,r.jsx)(`p`,{"data-slot":`field-description`,className:e.cn(`text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5`,`last:mt-0 nth-last-2:-mt-1`,`[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary`,t),...n})}function h({children:n,className:i,...a}){return(0,r.jsxs)(`div`,{"data-slot":`field-separator`,"data-content":!!n,className:e.cn(`relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2`,i),...a,children:[(0,r.jsx)(t.Separator,{className:`absolute inset-0 top-1/2`}),n&&(0,r.jsx)(`span`,{className:`relative mx-auto block w-fit bg-background px-2 text-muted-foreground`,"data-slot":`field-separator-content`,children:n})]})}function g({className:t,children:n,errors:i,...o}){let s=(0,a.useMemo)(()=>{if(n)return n;if(!i?.length)return null;let e=[...new Map(i.map(e=>[e?.message,e])).values()];return e?.length===1?e[0]?.message:(0,r.jsx)(`ul`,{className:`ml-4 flex list-disc flex-col gap-1`,children:e.map(e=>e?.message&&(0,r.jsx)(`li`,{children:e.message},e.message))})},[n,i]);return s?(0,r.jsx)(`div`,{role:`alert`,"data-slot":`field-error`,className:e.cn(`text-sm font-normal text-destructive`,t),...o,children:s}):null}exports.Field=u,exports.FieldContent=d,exports.FieldDescription=m,exports.FieldError=g,exports.FieldGroup=c,exports.FieldLabel=f,exports.FieldLegend=s,exports.FieldSeparator=h,exports.FieldSet=o,exports.FieldTitle=p;
1
+ "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../lib/utils.cjs"),t=require("./separator.cjs"),n=require("./label.cjs");let r=require("react/jsx-runtime"),i=require("class-variance-authority"),a=require("react");function o({className:t,...n}){return(0,r.jsx)(`fieldset`,{"data-slot":`field-set`,className:e.cn(`flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3`,t),...n})}function s({className:t,variant:n=`legend`,...i}){return(0,r.jsx)(`legend`,{"data-slot":`field-legend`,"data-variant":n,className:e.cn(`mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base`,t),...i})}function c({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`field-group`,className:e.cn(`group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4`,t),...n})}var l=(0,i.cva)(`group/field flex w-full gap-2 data-[invalid=true]:text-destructive`,{variants:{orientation:{vertical:`flex-col *:w-full [&>.sr-only]:w-auto`,horizontal:`flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`,responsive:`flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`}},defaultVariants:{orientation:`vertical`}});function u({className:t,orientation:n=`vertical`,...i}){return(0,r.jsx)(`div`,{role:`group`,"data-slot":`field`,"data-orientation":n,className:e.cn(l({orientation:n}),t),...i})}function d({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`field-content`,className:e.cn(`group/field-content flex flex-1 flex-col gap-0.5 leading-snug`,t),...n})}function f({className:t,...i}){return(0,r.jsx)(n.Label,{"data-slot":`field-label`,className:e.cn(`group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10`,`has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col`,t),...i})}function p({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`field-label`,className:e.cn(`flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50`,t),...n})}function m({className:t,...n}){return(0,r.jsx)(`p`,{"data-slot":`field-description`,className:e.cn(`text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5`,`last:mt-0 nth-last-2:-mt-1`,`[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary`,t),...n})}function h({children:n,className:i,...a}){return(0,r.jsxs)(`div`,{"data-slot":`field-separator`,"data-content":!!n,className:e.cn(`relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2`,i),...a,children:[(0,r.jsx)(t.Separator,{className:`absolute inset-0 top-1/2`}),n&&(0,r.jsx)(`span`,{className:`relative mx-auto block w-fit bg-background px-2 text-muted-foreground`,"data-slot":`field-separator-content`,children:n})]})}function g({className:t,children:n,errors:i,...o}){let s=(0,a.useMemo)(()=>{if(n)return n;if(!i?.length)return null;let e=[...new Map(i.map(e=>[e?.message,e])).values()];return e?.length===1?e[0]?.message:(0,r.jsx)(`ul`,{className:`ml-4 flex list-disc flex-col gap-1`,children:e.map(e=>e?.message&&(0,r.jsx)(`li`,{children:e.message},e.message))})},[n,i]);return s?(0,r.jsx)(`div`,{role:`alert`,"data-slot":`field-error`,className:e.cn(`text-sm font-normal text-destructive`,t),...o,children:s}):null}exports.Field=u,exports.FieldContent=d,exports.FieldDescription=m,exports.FieldError=g,exports.FieldGroup=c,exports.FieldLabel=f,exports.FieldLegend=s,exports.FieldSeparator=h,exports.FieldSet=o,exports.FieldTitle=p;
2
2
  //# sourceMappingURL=field.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"field.cjs","names":[],"sources":["../../src/elements/field.tsx"],"sourcesContent":["'use client';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useMemo } from 'react';\n\nimport { Label } from '@/elements/label';\nimport { Separator } from '@/elements/separator';\nimport { cn } from '@/lib/utils';\n\nfunction FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>) {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn(\n 'flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldLegend({\n className,\n variant = 'legend',\n ...props\n}: React.ComponentProps<'legend'> & { variant?: 'legend' | 'label' }) {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn('mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base', className)}\n {...props}\n />\n );\n}\n\nfunction FieldGroup({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n 'group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4',\n className,\n )}\n {...props}\n />\n );\n}\n\nconst fieldVariants = cva('group/field flex w-full gap-2 data-[invalid=true]:text-destructive', {\n variants: {\n orientation: {\n vertical: 'flex-col *:w-full [&>.sr-only]:w-auto',\n horizontal:\n 'flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n responsive:\n 'flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n },\n },\n defaultVariants: {\n orientation: 'vertical',\n },\n});\n\nfunction Field({\n className,\n orientation = 'vertical',\n ...props\n}: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"field\"\n data-orientation={orientation}\n className={cn(fieldVariants({ orientation }), className)}\n {...props}\n />\n );\n}\n\nfunction FieldContent({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-content\"\n className={cn('group/field-content flex flex-1 flex-col gap-0.5 leading-snug', className)}\n {...props}\n />\n );\n}\n\nfunction FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>) {\n return (\n <Label\n data-slot=\"field-label\"\n className={cn(\n 'group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10',\n 'has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-label\"\n className={cn(\n 'flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldDescription({ className, ...props }: React.ComponentProps<'p'>) {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\n 'text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5',\n 'last:mt-0 nth-last-2:-mt-1',\n '[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldSeparator({\n children,\n className,\n ...props\n}: React.ComponentProps<'div'> & {\n children?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"field-separator\"\n data-content={!!children}\n className={cn('relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2', className)}\n {...props}\n >\n <Separator className=\"absolute inset-0 top-1/2\" />\n {children && (\n <span\n className=\"relative mx-auto block w-fit bg-background px-2 text-muted-foreground\"\n data-slot=\"field-separator-content\"\n >\n {children}\n </span>\n )}\n </div>\n );\n}\n\nfunction FieldError({\n className,\n children,\n errors,\n ...props\n}: React.ComponentProps<'div'> & {\n errors?: ({ message?: string } | undefined)[];\n}) {\n const content = useMemo(() => {\n if (children) {\n return children;\n }\n\n if (!errors?.length) {\n return null;\n }\n\n const uniqueErrors = [...new Map(errors.map((error) => [error?.message, error])).values()];\n\n if (uniqueErrors?.length === 1) {\n return uniqueErrors[0]?.message;\n }\n\n return (\n <ul className=\"ml-4 flex list-disc flex-col gap-1\">\n {uniqueErrors.map((error) => error?.message && <li key={error.message}>{error.message}</li>)}\n </ul>\n );\n }, [children, errors]);\n\n if (!content) {\n return null;\n }\n\n return (\n <div\n role=\"alert\"\n data-slot=\"field-error\"\n className={cn('text-sm font-normal text-destructive', className)}\n {...props}\n >\n {content}\n </div>\n );\n}\n\nexport {\n Field,\n FieldLabel,\n FieldDescription,\n FieldError,\n FieldGroup,\n FieldLegend,\n FieldSeparator,\n FieldSet,\n FieldContent,\n FieldTitle,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"field.cjs","names":[],"sources":["../../src/elements/field.tsx"],"sourcesContent":["'use client';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useMemo } from 'react';\n\nimport { Label } from '@/elements/label';\nimport { Separator } from '@/elements/separator';\nimport { cn } from '@/lib/utils';\n\nfunction FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>) {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn(\n 'flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldLegend({\n className,\n variant = 'legend',\n ...props\n}: React.ComponentProps<'legend'> & { variant?: 'legend' | 'label' }) {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn('mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base', className)}\n {...props}\n />\n );\n}\n\nfunction FieldGroup({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n 'group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4',\n className,\n )}\n {...props}\n />\n );\n}\n\nconst fieldVariants = cva('group/field flex w-full gap-2 data-[invalid=true]:text-destructive', {\n variants: {\n orientation: {\n vertical: 'flex-col *:w-full [&>.sr-only]:w-auto',\n horizontal:\n 'flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n responsive:\n 'flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n },\n },\n defaultVariants: {\n orientation: 'vertical',\n },\n});\n\nfunction Field({\n className,\n orientation = 'vertical',\n ...props\n}: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"field\"\n data-orientation={orientation}\n className={cn(fieldVariants({ orientation }), className)}\n {...props}\n />\n );\n}\n\nfunction FieldContent({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-content\"\n className={cn('group/field-content flex flex-1 flex-col gap-0.5 leading-snug', className)}\n {...props}\n />\n );\n}\n\nfunction FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>) {\n return (\n <Label\n data-slot=\"field-label\"\n className={cn(\n 'group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10',\n 'has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-label\"\n className={cn(\n 'flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldDescription({ className, ...props }: React.ComponentProps<'p'>) {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\n 'text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5',\n 'last:mt-0 nth-last-2:-mt-1',\n '[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldSeparator({\n children,\n className,\n ...props\n}: React.ComponentProps<'div'> & {\n children?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"field-separator\"\n data-content={!!children}\n className={cn('relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2', className)}\n {...props}\n >\n <Separator className=\"absolute inset-0 top-1/2\" />\n {children && (\n <span\n className=\"relative mx-auto block w-fit bg-background px-2 text-muted-foreground\"\n data-slot=\"field-separator-content\"\n >\n {children}\n </span>\n )}\n </div>\n );\n}\n\nfunction FieldError({\n className,\n children,\n errors,\n ...props\n}: React.ComponentProps<'div'> & {\n errors?: ({ message?: string } | undefined)[];\n}) {\n const content = useMemo(() => {\n if (children) {\n return children;\n }\n\n if (!errors?.length) {\n return null;\n }\n\n const uniqueErrors = [...new Map(errors.map((error) => [error?.message, error])).values()];\n\n if (uniqueErrors?.length === 1) {\n return uniqueErrors[0]?.message;\n }\n\n return (\n <ul className=\"ml-4 flex list-disc flex-col gap-1\">\n {uniqueErrors.map((error) => error?.message && <li key={error.message}>{error.message}</li>)}\n </ul>\n );\n }, [children, errors]);\n\n if (!content) {\n return null;\n }\n\n return (\n <div\n role=\"alert\"\n data-slot=\"field-error\"\n className={cn('text-sm font-normal text-destructive', className)}\n {...props}\n >\n {content}\n </div>\n );\n}\n\nexport {\n Field,\n FieldLabel,\n FieldDescription,\n FieldError,\n FieldGroup,\n FieldLegend,\n FieldSeparator,\n FieldSet,\n FieldContent,\n FieldTitle,\n};\n"],"mappings":"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"}
@@ -1,24 +1,24 @@
1
1
  import { type VariantProps } from 'class-variance-authority';
2
2
  import { Label } from '@/elements/label';
3
- declare function FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>): import("react/jsx-runtime").JSX.Element;
3
+ declare function FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>): import("react").JSX.Element;
4
4
  declare function FieldLegend({ className, variant, ...props }: React.ComponentProps<'legend'> & {
5
5
  variant?: 'legend' | 'label';
6
- }): import("react/jsx-runtime").JSX.Element;
7
- declare function FieldGroup({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
6
+ }): import("react").JSX.Element;
7
+ declare function FieldGroup({ className, ...props }: React.ComponentProps<'div'>): import("react").JSX.Element;
8
8
  declare const fieldVariants: (props?: ({
9
9
  orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
10
10
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
11
- declare function Field({ className, orientation, ...props }: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>): import("react/jsx-runtime").JSX.Element;
12
- declare function FieldContent({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
13
- declare function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>): import("react/jsx-runtime").JSX.Element;
14
- declare function FieldTitle({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
15
- declare function FieldDescription({ className, ...props }: React.ComponentProps<'p'>): import("react/jsx-runtime").JSX.Element;
11
+ declare function Field({ className, orientation, ...props }: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>): import("react").JSX.Element;
12
+ declare function FieldContent({ className, ...props }: React.ComponentProps<'div'>): import("react").JSX.Element;
13
+ declare function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>): import("react").JSX.Element;
14
+ declare function FieldTitle({ className, ...props }: React.ComponentProps<'div'>): import("react").JSX.Element;
15
+ declare function FieldDescription({ className, ...props }: React.ComponentProps<'p'>): import("react").JSX.Element;
16
16
  declare function FieldSeparator({ children, className, ...props }: React.ComponentProps<'div'> & {
17
17
  children?: React.ReactNode;
18
- }): import("react/jsx-runtime").JSX.Element;
18
+ }): import("react").JSX.Element;
19
19
  declare function FieldError({ className, children, errors, ...props }: React.ComponentProps<'div'> & {
20
20
  errors?: ({
21
21
  message?: string;
22
22
  } | undefined)[];
23
- }): import("react/jsx-runtime").JSX.Element | null;
23
+ }): import("react").JSX.Element | null;
24
24
  export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup, FieldLegend, FieldSeparator, FieldSet, FieldContent, FieldTitle, };
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","names":[],"sources":["../../src/elements/field.tsx"],"sourcesContent":["'use client';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useMemo } from 'react';\n\nimport { Label } from '@/elements/label';\nimport { Separator } from '@/elements/separator';\nimport { cn } from '@/lib/utils';\n\nfunction FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>) {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn(\n 'flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldLegend({\n className,\n variant = 'legend',\n ...props\n}: React.ComponentProps<'legend'> & { variant?: 'legend' | 'label' }) {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn('mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base', className)}\n {...props}\n />\n );\n}\n\nfunction FieldGroup({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n 'group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4',\n className,\n )}\n {...props}\n />\n );\n}\n\nconst fieldVariants = cva('group/field flex w-full gap-2 data-[invalid=true]:text-destructive', {\n variants: {\n orientation: {\n vertical: 'flex-col *:w-full [&>.sr-only]:w-auto',\n horizontal:\n 'flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n responsive:\n 'flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n },\n },\n defaultVariants: {\n orientation: 'vertical',\n },\n});\n\nfunction Field({\n className,\n orientation = 'vertical',\n ...props\n}: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"field\"\n data-orientation={orientation}\n className={cn(fieldVariants({ orientation }), className)}\n {...props}\n />\n );\n}\n\nfunction FieldContent({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-content\"\n className={cn('group/field-content flex flex-1 flex-col gap-0.5 leading-snug', className)}\n {...props}\n />\n );\n}\n\nfunction FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>) {\n return (\n <Label\n data-slot=\"field-label\"\n className={cn(\n 'group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10',\n 'has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-label\"\n className={cn(\n 'flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldDescription({ className, ...props }: React.ComponentProps<'p'>) {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\n 'text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5',\n 'last:mt-0 nth-last-2:-mt-1',\n '[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldSeparator({\n children,\n className,\n ...props\n}: React.ComponentProps<'div'> & {\n children?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"field-separator\"\n data-content={!!children}\n className={cn('relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2', className)}\n {...props}\n >\n <Separator className=\"absolute inset-0 top-1/2\" />\n {children && (\n <span\n className=\"relative mx-auto block w-fit bg-background px-2 text-muted-foreground\"\n data-slot=\"field-separator-content\"\n >\n {children}\n </span>\n )}\n </div>\n );\n}\n\nfunction FieldError({\n className,\n children,\n errors,\n ...props\n}: React.ComponentProps<'div'> & {\n errors?: ({ message?: string } | undefined)[];\n}) {\n const content = useMemo(() => {\n if (children) {\n return children;\n }\n\n if (!errors?.length) {\n return null;\n }\n\n const uniqueErrors = [...new Map(errors.map((error) => [error?.message, error])).values()];\n\n if (uniqueErrors?.length === 1) {\n return uniqueErrors[0]?.message;\n }\n\n return (\n <ul className=\"ml-4 flex list-disc flex-col gap-1\">\n {uniqueErrors.map((error) => error?.message && <li key={error.message}>{error.message}</li>)}\n </ul>\n );\n }, [children, errors]);\n\n if (!content) {\n return null;\n }\n\n return (\n <div\n role=\"alert\"\n data-slot=\"field-error\"\n className={cn('text-sm font-normal text-destructive', className)}\n {...props}\n >\n {content}\n </div>\n );\n}\n\nexport {\n Field,\n FieldLabel,\n FieldDescription,\n FieldError,\n FieldGroup,\n FieldLegend,\n FieldSeparator,\n FieldSet,\n FieldContent,\n FieldTitle,\n};\n"],"mappings":";;;;;;;;AASA,SAAS,EAAS,EAAE,cAAW,GAAG,KAA2C;AAC3E,QACE,kBAAC,YAAD;EACE,aAAU;EACV,WAAW,EACT,oGACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAY,EACnB,cACA,aAAU,UACV,GAAG,KACiE;AACpE,QACE,kBAAC,UAAD;EACE,aAAU;EACV,gBAAc;EACd,WAAW,EAAG,mFAAmF,EAAU;EAC3G,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;AACxE,QACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,wIACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,IAAM,IAAgB,EAAI,sEAAsE;CAC9F,UAAU,EACR,aAAa;EACX,UAAU;EACV,YACE;EACF,YACE;EACH,EACF;CACD,iBAAiB,EACf,aAAa,YACd;CACF,CAAC;AAEF,SAAS,EAAM,EACb,cACA,iBAAc,YACd,GAAG,KACgE;AACnE,QACE,kBAAC,OAAD;EACE,MAAK;EACL,aAAU;EACV,oBAAkB;EAClB,WAAW,EAAG,EAAc,EAAE,gBAAa,CAAC,EAAE,EAAU;EACxD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAa,EAAE,cAAW,GAAG,KAAsC;AAC1E,QACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,iEAAiE,EAAU;EACzF,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAW,EAAE,cAAW,GAAG,KAA6C;AAC/E,QACE,kBAAC,GAAD;EACE,aAAU;EACV,WAAW,EACT,2VACA,qEACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;AACxE,QACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,iGACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAiB,EAAE,cAAW,GAAG,KAAoC;AAC5E,QACE,kBAAC,KAAD;EACE,aAAU;EACV,WAAW,EACT,qJACA,8BACA,qEACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAe,EACtB,aACA,cACA,GAAG,KAGF;AACD,QACE,kBAAC,OAAD;EACE,aAAU;EACV,gBAAc,CAAC,CAAC;EAChB,WAAW,EAAG,6EAA6E,EAAU;EACrG,GAAI;YAJN,CAME,kBAAC,GAAD,EAAW,WAAU,4BAA6B,CAAA,EACjD,KACC,kBAAC,QAAD;GACE,WAAU;GACV,aAAU;GAET;GACI,CAAA,CAEL;;;AAIV,SAAS,EAAW,EAClB,cACA,aACA,WACA,GAAG,KAGF;CACD,IAAM,IAAU,QAAc;AAC5B,MAAI,EACF,QAAO;AAGT,MAAI,CAAC,GAAQ,OACX,QAAO;EAGT,IAAM,IAAe,CAAC,GAAG,IAAI,IAAI,EAAO,KAAK,MAAU,CAAC,GAAO,SAAS,EAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AAM1F,SAJI,GAAc,WAAW,IACpB,EAAa,IAAI,UAIxB,kBAAC,MAAD;GAAI,WAAU;aACX,EAAa,KAAK,MAAU,GAAO,WAAW,kBAAC,MAAD,EAAA,UAAyB,EAAM,SAAa,EAAnC,EAAM,QAA6B,CAAC;GACzF,CAAA;IAEN,CAAC,GAAU,EAAO,CAAC;AAMtB,QAJK,IAKH,kBAAC,OAAD;EACE,MAAK;EACL,aAAU;EACV,WAAW,EAAG,wCAAwC,EAAU;EAChE,GAAI;YAEH;EACG,CAAA,GAXC"}
1
+ {"version":3,"file":"field.js","names":[],"sources":["../../src/elements/field.tsx"],"sourcesContent":["'use client';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useMemo } from 'react';\n\nimport { Label } from '@/elements/label';\nimport { Separator } from '@/elements/separator';\nimport { cn } from '@/lib/utils';\n\nfunction FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>) {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn(\n 'flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldLegend({\n className,\n variant = 'legend',\n ...props\n}: React.ComponentProps<'legend'> & { variant?: 'legend' | 'label' }) {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn('mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base', className)}\n {...props}\n />\n );\n}\n\nfunction FieldGroup({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n 'group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4',\n className,\n )}\n {...props}\n />\n );\n}\n\nconst fieldVariants = cva('group/field flex w-full gap-2 data-[invalid=true]:text-destructive', {\n variants: {\n orientation: {\n vertical: 'flex-col *:w-full [&>.sr-only]:w-auto',\n horizontal:\n 'flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n responsive:\n 'flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n },\n },\n defaultVariants: {\n orientation: 'vertical',\n },\n});\n\nfunction Field({\n className,\n orientation = 'vertical',\n ...props\n}: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"field\"\n data-orientation={orientation}\n className={cn(fieldVariants({ orientation }), className)}\n {...props}\n />\n );\n}\n\nfunction FieldContent({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-content\"\n className={cn('group/field-content flex flex-1 flex-col gap-0.5 leading-snug', className)}\n {...props}\n />\n );\n}\n\nfunction FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>) {\n return (\n <Label\n data-slot=\"field-label\"\n className={cn(\n 'group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10',\n 'has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"field-label\"\n className={cn(\n 'flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldDescription({ className, ...props }: React.ComponentProps<'p'>) {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\n 'text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5',\n 'last:mt-0 nth-last-2:-mt-1',\n '[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldSeparator({\n children,\n className,\n ...props\n}: React.ComponentProps<'div'> & {\n children?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"field-separator\"\n data-content={!!children}\n className={cn('relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2', className)}\n {...props}\n >\n <Separator className=\"absolute inset-0 top-1/2\" />\n {children && (\n <span\n className=\"relative mx-auto block w-fit bg-background px-2 text-muted-foreground\"\n data-slot=\"field-separator-content\"\n >\n {children}\n </span>\n )}\n </div>\n );\n}\n\nfunction FieldError({\n className,\n children,\n errors,\n ...props\n}: React.ComponentProps<'div'> & {\n errors?: ({ message?: string } | undefined)[];\n}) {\n const content = useMemo(() => {\n if (children) {\n return children;\n }\n\n if (!errors?.length) {\n return null;\n }\n\n const uniqueErrors = [...new Map(errors.map((error) => [error?.message, error])).values()];\n\n if (uniqueErrors?.length === 1) {\n return uniqueErrors[0]?.message;\n }\n\n return (\n <ul className=\"ml-4 flex list-disc flex-col gap-1\">\n {uniqueErrors.map((error) => error?.message && <li key={error.message}>{error.message}</li>)}\n </ul>\n );\n }, [children, errors]);\n\n if (!content) {\n return null;\n }\n\n return (\n <div\n role=\"alert\"\n data-slot=\"field-error\"\n className={cn('text-sm font-normal text-destructive', className)}\n {...props}\n >\n {content}\n </div>\n );\n}\n\nexport {\n Field,\n FieldLabel,\n FieldDescription,\n FieldError,\n FieldGroup,\n FieldLegend,\n FieldSeparator,\n FieldSet,\n FieldContent,\n FieldTitle,\n};\n"],"mappings":";;;;;;;;AASA,SAAS,EAAS,EAAE,cAAW,GAAG,KAA2C;CAC3E,OACE,kBAAC,YAAD;EACE,aAAU;EACV,WAAW,EACT,oGACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAY,EACnB,cACA,aAAU,UACV,GAAG,KACiE;CACpE,OACE,kBAAC,UAAD;EACE,aAAU;EACV,gBAAc;EACd,WAAW,EAAG,mFAAmF,CAAS;EAC1G,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;CACxE,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,wIACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,IAAM,IAAgB,EAAI,sEAAsE;CAC9F,UAAU,EACR,aAAa;EACX,UAAU;EACV,YACE;EACF,YACE;CACJ,EACF;CACA,iBAAiB,EACf,aAAa,WACf;AACF,CAAC;AAED,SAAS,EAAM,EACb,cACA,iBAAc,YACd,GAAG,KACgE;CACnE,OACE,kBAAC,OAAD;EACE,MAAK;EACL,aAAU;EACV,oBAAkB;EAClB,WAAW,EAAG,EAAc,EAAE,eAAY,CAAC,GAAG,CAAS;EACvD,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAa,EAAE,cAAW,GAAG,KAAsC;CAC1E,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,iEAAiE,CAAS;EACxF,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAA6C;CAC/E,OACE,kBAAC,GAAD;EACE,aAAU;EACV,WAAW,EACT,2VACA,qEACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;CACxE,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,iGACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAiB,EAAE,cAAW,GAAG,KAAoC;CAC5E,OACE,kBAAC,KAAD;EACE,aAAU;EACV,WAAW,EACT,qJACA,8BACA,qEACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAe,EACtB,aACA,cACA,GAAG,KAGF;CACD,OACE,kBAAC,OAAD;EACE,aAAU;EACV,gBAAc,CAAC,CAAC;EAChB,WAAW,EAAG,6EAA6E,CAAS;EACpG,GAAI;YAJN,CAME,kBAAC,GAAD,EAAW,WAAU,2BAA4B,CAAA,GAChD,KACC,kBAAC,QAAD;GACE,WAAU;GACV,aAAU;GAET;EACG,CAAA,CAEL;;AAET;AAEA,SAAS,EAAW,EAClB,cACA,aACA,WACA,GAAG,KAGF;CACD,IAAM,IAAU,QAAc;EAC5B,IAAI,GACF,OAAO;EAGT,IAAI,CAAC,GAAQ,QACX,OAAO;EAGT,IAAM,IAAe,CAAC,GAAG,IAAI,IAAI,EAAO,KAAK,MAAU,CAAC,GAAO,SAAS,CAAK,CAAC,CAAC,EAAE,OAAO,CAAC;EAMzF,OAJI,GAAc,WAAW,IACpB,EAAa,IAAI,UAIxB,kBAAC,MAAD;GAAI,WAAU;aACX,EAAa,KAAK,MAAU,GAAO,WAAW,kBAAC,MAAD,EAAA,UAAyB,EAAM,QAAY,GAAlC,EAAM,OAA4B,CAAC;EACzF,CAAA;CAER,GAAG,CAAC,GAAU,CAAM,CAAC;CAMrB,OAJK,IAKH,kBAAC,OAAD;EACE,MAAK;EACL,aAAU;EACV,WAAW,EAAG,wCAAwC,CAAS;EAC/D,GAAI;YAEH;CACE,CAAA,IAXE;AAaX"}
@@ -1,2 +1,2 @@
1
- "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../lib/utils.cjs`),t=require(`./label.cjs`);let n=require(`react/jsx-runtime`),r=require(`react`),i=require(`react-hook-form`);var a=i.FormProvider,o=(0,r.createContext)({}),s=(0,r.createContext)({}),c=({...e})=>{let t=(0,r.useMemo)(()=>({name:e.name}),[e.name]);return(0,n.jsx)(o.Provider,{value:t,children:(0,n.jsx)(i.Controller,{...e})})},l=()=>{let e=(0,r.useContext)(o),t=(0,r.useContext)(s),{getFieldState:n}=(0,i.useFormContext)(),a=(0,i.useFormState)({name:e.name}),c=n(e.name,a);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:l}=t;return{id:l,name:e.name,formItemId:`${l}-form-item`,formDescriptionId:`${l}-form-item-description`,formMessageId:`${l}-form-item-message`,...c}};function u({className:t,...i}){let a=(0,r.useId)(),o=(0,r.useMemo)(()=>({id:a}),[a]);return(0,n.jsx)(s.Provider,{value:o,children:(0,n.jsx)(`div`,{"data-slot":`form-item`,className:e.cn(`grid gap-2`,t),...i})})}function d({className:r,...i}){let{error:a,formItemId:o}=l();return(0,n.jsx)(t.Label,{"data-slot":`form-label`,"data-error":!!a,className:e.cn(`data-[error=true]:text-destructive`,r),htmlFor:o,...i})}function f({children:e}){let{error:t,formItemId:i,formDescriptionId:a,formMessageId:o}=l(),s=r.Children.only(e);return(0,r.isValidElement)(s)?(0,r.cloneElement)(s,{"data-slot":`form-control`,id:i,"aria-describedby":t?`${a} ${o}`:a,"aria-invalid":!!t}):(0,n.jsx)(n.Fragment,{children:e})}function p({className:t,...r}){let{formDescriptionId:i}=l();return(0,n.jsx)(`p`,{"data-slot":`form-description`,id:i,className:e.cn(`text-muted-foreground text-sm`,t),...r})}function m({className:t,...r}){let{error:i,formMessageId:a}=l(),o=i?String(i?.message??``):r.children;return o?(0,n.jsx)(`p`,{"data-slot":`form-message`,id:a,className:e.cn(`text-destructive text-sm`,t),...r,children:o}):null}exports.Form=a,exports.FormControl=f,exports.FormDescription=p,exports.FormField=c,exports.FormItem=u,exports.FormLabel=d,exports.FormMessage=m,exports.useFormField=l;
1
+ "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../lib/utils.cjs"),t=require("./label.cjs");let n=require("react/jsx-runtime"),r=require("react"),i=require("react-hook-form");var a=i.FormProvider,o=(0,r.createContext)({}),s=(0,r.createContext)({}),c=({...e})=>{let t=(0,r.useMemo)(()=>({name:e.name}),[e.name]);return(0,n.jsx)(o.Provider,{value:t,children:(0,n.jsx)(i.Controller,{...e})})},l=()=>{let e=(0,r.useContext)(o),t=(0,r.useContext)(s),{getFieldState:n}=(0,i.useFormContext)(),a=(0,i.useFormState)({name:e.name}),c=n(e.name,a);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:l}=t;return{id:l,name:e.name,formItemId:`${l}-form-item`,formDescriptionId:`${l}-form-item-description`,formMessageId:`${l}-form-item-message`,...c}};function u({className:t,...i}){let a=(0,r.useId)(),o=(0,r.useMemo)(()=>({id:a}),[a]);return(0,n.jsx)(s.Provider,{value:o,children:(0,n.jsx)(`div`,{"data-slot":`form-item`,className:e.cn(`grid gap-2`,t),...i})})}function d({className:r,...i}){let{error:a,formItemId:o}=l();return(0,n.jsx)(t.Label,{"data-slot":`form-label`,"data-error":!!a,className:e.cn(`data-[error=true]:text-destructive`,r),htmlFor:o,...i})}function f({children:e}){let{error:t,formItemId:i,formDescriptionId:a,formMessageId:o}=l(),s=r.Children.only(e);return(0,r.isValidElement)(s)?(0,r.cloneElement)(s,{"data-slot":`form-control`,id:i,"aria-describedby":t?`${a} ${o}`:a,"aria-invalid":!!t}):(0,n.jsx)(n.Fragment,{children:e})}function p({className:t,...r}){let{formDescriptionId:i}=l();return(0,n.jsx)(`p`,{"data-slot":`form-description`,id:i,className:e.cn(`text-muted-foreground text-sm`,t),...r})}function m({className:t,...r}){let{error:i,formMessageId:a}=l(),o=i?String(i?.message??``):r.children;return o?(0,n.jsx)(`p`,{"data-slot":`form-message`,id:a,className:e.cn(`text-destructive text-sm`,t),...r,children:o}):null}exports.Form=a,exports.FormControl=f,exports.FormDescription=p,exports.FormField=c,exports.FormItem=u,exports.FormLabel=d,exports.FormMessage=m,exports.useFormField=l;
2
2
  //# sourceMappingURL=form.cjs.map