@health-samurai/react-components 0.0.0-alpha.1 → 0.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/dist/bundle.css +100 -7
  2. package/dist/src/components/code-editor/index.js +53 -29
  3. package/dist/src/components/code-editor/index.js.map +1 -1
  4. package/dist/src/components/code-editor.stories.js +22 -7
  5. package/dist/src/components/code-editor.stories.js.map +1 -1
  6. package/dist/src/components/copy-icon.js +11 -4
  7. package/dist/src/components/copy-icon.js.map +1 -1
  8. package/dist/src/components/request-line-editor.js +56 -14
  9. package/dist/src/components/request-line-editor.js.map +1 -1
  10. package/dist/src/components/request-line-editor.stories.js +71 -22
  11. package/dist/src/components/request-line-editor.stories.js.map +1 -1
  12. package/dist/src/global.d.js +2 -0
  13. package/dist/src/global.d.js.map +1 -0
  14. package/dist/src/index.css +6 -0
  15. package/dist/src/index.d.ts +1 -0
  16. package/dist/src/index.d.ts.map +1 -1
  17. package/dist/src/index.js +52 -50
  18. package/dist/src/index.js.map +1 -1
  19. package/dist/src/index.stories.js +8 -5
  20. package/dist/src/index.stories.js.map +1 -1
  21. package/dist/src/shadcn/components/ui/accordion.js +34 -5
  22. package/dist/src/shadcn/components/ui/accordion.js.map +1 -1
  23. package/dist/src/shadcn/components/ui/accordion.stories.js +68 -3
  24. package/dist/src/shadcn/components/ui/accordion.stories.js.map +1 -1
  25. package/dist/src/shadcn/components/ui/alert-dialog.js +61 -14
  26. package/dist/src/shadcn/components/ui/alert-dialog.js.map +1 -1
  27. package/dist/src/shadcn/components/ui/alert-dialog.stories.js +39 -4
  28. package/dist/src/shadcn/components/ui/alert-dialog.stories.js.map +1 -1
  29. package/dist/src/shadcn/components/ui/alert.js +24 -8
  30. package/dist/src/shadcn/components/ui/alert.js.map +1 -1
  31. package/dist/src/shadcn/components/ui/alert.stories.js +57 -3
  32. package/dist/src/shadcn/components/ui/alert.stories.js.map +1 -1
  33. package/dist/src/shadcn/components/ui/aspect-ratio.js +5 -1
  34. package/dist/src/shadcn/components/ui/aspect-ratio.js.map +1 -1
  35. package/dist/src/shadcn/components/ui/aspect-ratio.stories.js +12 -3
  36. package/dist/src/shadcn/components/ui/aspect-ratio.stories.js.map +1 -1
  37. package/dist/src/shadcn/components/ui/avatar.js +17 -4
  38. package/dist/src/shadcn/components/ui/avatar.js.map +1 -1
  39. package/dist/src/shadcn/components/ui/avatar.stories.js +69 -3
  40. package/dist/src/shadcn/components/ui/avatar.stories.js.map +1 -1
  41. package/dist/src/shadcn/components/ui/badge.js +13 -6
  42. package/dist/src/shadcn/components/ui/badge.js.map +1 -1
  43. package/dist/src/shadcn/components/ui/badge.stories.js +55 -3
  44. package/dist/src/shadcn/components/ui/badge.stories.js.map +1 -1
  45. package/dist/src/shadcn/components/ui/breadcrumb.js +56 -11
  46. package/dist/src/shadcn/components/ui/breadcrumb.js.map +1 -1
  47. package/dist/src/shadcn/components/ui/breadcrumb.stories.js +69 -4
  48. package/dist/src/shadcn/components/ui/breadcrumb.stories.js.map +1 -1
  49. package/dist/src/shadcn/components/ui/button.js +23 -13
  50. package/dist/src/shadcn/components/ui/button.js.map +1 -1
  51. package/dist/src/shadcn/components/ui/button.stories.js +190 -10
  52. package/dist/src/shadcn/components/ui/button.stories.js.map +1 -1
  53. package/dist/src/shadcn/components/ui/calendar.js +75 -33
  54. package/dist/src/shadcn/components/ui/calendar.js.map +1 -1
  55. package/dist/src/shadcn/components/ui/calendar.stories.js +12 -5
  56. package/dist/src/shadcn/components/ui/calendar.stories.js.map +1 -1
  57. package/dist/src/shadcn/components/ui/card.js +38 -9
  58. package/dist/src/shadcn/components/ui/card.js.map +1 -1
  59. package/dist/src/shadcn/components/ui/card.stories.js +91 -6
  60. package/dist/src/shadcn/components/ui/card.stories.js.map +1 -1
  61. package/dist/src/shadcn/components/ui/carousel.js +99 -39
  62. package/dist/src/shadcn/components/ui/carousel.js.map +1 -1
  63. package/dist/src/shadcn/components/ui/carousel.stories.js +30 -6
  64. package/dist/src/shadcn/components/ui/carousel.stories.js.map +1 -1
  65. package/dist/src/shadcn/components/ui/chart.js +118 -55
  66. package/dist/src/shadcn/components/ui/chart.js.map +1 -1
  67. package/dist/src/shadcn/components/ui/chart.stories.js +72 -12
  68. package/dist/src/shadcn/components/ui/chart.stories.js.map +1 -1
  69. package/dist/src/shadcn/components/ui/checkbox.js +14 -2
  70. package/dist/src/shadcn/components/ui/checkbox.js.map +1 -1
  71. package/dist/src/shadcn/components/ui/checkbox.stories.js +79 -4
  72. package/dist/src/shadcn/components/ui/checkbox.stories.js.map +1 -1
  73. package/dist/src/shadcn/components/ui/collapsible.js +13 -3
  74. package/dist/src/shadcn/components/ui/collapsible.js.map +1 -1
  75. package/dist/src/shadcn/components/ui/collapsible.stories.js +54 -6
  76. package/dist/src/shadcn/components/ui/collapsible.stories.js.map +1 -1
  77. package/dist/src/shadcn/components/ui/command.js +77 -12
  78. package/dist/src/shadcn/components/ui/command.js.map +1 -1
  79. package/dist/src/shadcn/components/ui/command.stories.js +88 -4
  80. package/dist/src/shadcn/components/ui/command.stories.js.map +1 -1
  81. package/dist/src/shadcn/components/ui/context-menu.js +106 -17
  82. package/dist/src/shadcn/components/ui/context-menu.js.map +1 -1
  83. package/dist/src/shadcn/components/ui/context-menu.stories.js +101 -3
  84. package/dist/src/shadcn/components/ui/context-menu.stories.js.map +1 -1
  85. package/dist/src/shadcn/components/ui/dialog.js +69 -12
  86. package/dist/src/shadcn/components/ui/dialog.js.map +1 -1
  87. package/dist/src/shadcn/components/ui/dialog.stories.js +82 -6
  88. package/dist/src/shadcn/components/ui/dialog.stories.js.map +1 -1
  89. package/dist/src/shadcn/components/ui/drawer.js +61 -12
  90. package/dist/src/shadcn/components/ui/drawer.js.map +1 -1
  91. package/dist/src/shadcn/components/ui/drawer.stories.js +154 -21
  92. package/dist/src/shadcn/components/ui/drawer.stories.js.map +1 -1
  93. package/dist/src/shadcn/components/ui/dropdown-menu.js +107 -17
  94. package/dist/src/shadcn/components/ui/dropdown-menu.js.map +1 -1
  95. package/dist/src/shadcn/components/ui/dropdown-menu.stories.js +119 -4
  96. package/dist/src/shadcn/components/ui/dropdown-menu.stories.js.map +1 -1
  97. package/dist/src/shadcn/components/ui/form.js +58 -18
  98. package/dist/src/shadcn/components/ui/form.js.map +1 -1
  99. package/dist/src/shadcn/components/ui/form.stories.js +45 -11
  100. package/dist/src/shadcn/components/ui/form.stories.js.map +1 -1
  101. package/dist/src/shadcn/components/ui/hover-card.js +20 -4
  102. package/dist/src/shadcn/components/ui/hover-card.js.map +1 -1
  103. package/dist/src/shadcn/components/ui/hover-card.stories.js +51 -5
  104. package/dist/src/shadcn/components/ui/hover-card.stories.js.map +1 -1
  105. package/dist/src/shadcn/components/ui/input-otp.js +35 -7
  106. package/dist/src/shadcn/components/ui/input-otp.js.map +1 -1
  107. package/dist/src/shadcn/components/ui/input-otp.stories.js +35 -3
  108. package/dist/src/shadcn/components/ui/input-otp.stories.js.map +1 -1
  109. package/dist/src/shadcn/components/ui/input.js +59 -40
  110. package/dist/src/shadcn/components/ui/input.js.map +1 -1
  111. package/dist/src/shadcn/components/ui/input.stories.js +391 -23
  112. package/dist/src/shadcn/components/ui/input.stories.js.map +1 -1
  113. package/dist/src/shadcn/components/ui/label.js +7 -2
  114. package/dist/src/shadcn/components/ui/label.js.map +1 -1
  115. package/dist/src/shadcn/components/ui/label.stories.js +18 -4
  116. package/dist/src/shadcn/components/ui/label.stories.js.map +1 -1
  117. package/dist/src/shadcn/components/ui/menubar.js +116 -19
  118. package/dist/src/shadcn/components/ui/menubar.js.map +1 -1
  119. package/dist/src/shadcn/components/ui/menubar.stories.js +216 -3
  120. package/dist/src/shadcn/components/ui/menubar.stories.js.map +1 -1
  121. package/dist/src/shadcn/components/ui/navigation-menu.js +62 -10
  122. package/dist/src/shadcn/components/ui/navigation-menu.js.map +1 -1
  123. package/dist/src/shadcn/components/ui/navigation-menu.stories.js +263 -11
  124. package/dist/src/shadcn/components/ui/navigation-menu.stories.js.map +1 -1
  125. package/dist/src/shadcn/components/ui/pagination.js +73 -16
  126. package/dist/src/shadcn/components/ui/pagination.js.map +1 -1
  127. package/dist/src/shadcn/components/ui/pagination.stories.js +41 -3
  128. package/dist/src/shadcn/components/ui/pagination.stories.js.map +1 -1
  129. package/dist/src/shadcn/components/ui/popover.js +23 -5
  130. package/dist/src/shadcn/components/ui/popover.js.map +1 -1
  131. package/dist/src/shadcn/components/ui/popover.stories.js +99 -6
  132. package/dist/src/shadcn/components/ui/popover.stories.js.map +1 -1
  133. package/dist/src/shadcn/components/ui/progress.js +14 -2
  134. package/dist/src/shadcn/components/ui/progress.js.map +1 -1
  135. package/dist/src/shadcn/components/ui/progress.stories.js +12 -8
  136. package/dist/src/shadcn/components/ui/progress.stories.js.map +1 -1
  137. package/dist/src/shadcn/components/ui/radio-group.js +19 -3
  138. package/dist/src/shadcn/components/ui/radio-group.js.map +1 -1
  139. package/dist/src/shadcn/components/ui/radio-group.stories.js +48 -4
  140. package/dist/src/shadcn/components/ui/radio-group.stories.js.map +1 -1
  141. package/dist/src/shadcn/components/ui/resizable.js +22 -4
  142. package/dist/src/shadcn/components/ui/resizable.js.map +1 -1
  143. package/dist/src/shadcn/components/ui/resizable.stories.js +49 -3
  144. package/dist/src/shadcn/components/ui/resizable.stories.js.map +1 -1
  145. package/dist/src/shadcn/components/ui/scroll-area.js +26 -5
  146. package/dist/src/shadcn/components/ui/scroll-area.js.map +1 -1
  147. package/dist/src/shadcn/components/ui/scroll-area.stories.js +30 -5
  148. package/dist/src/shadcn/components/ui/scroll-area.stories.js.map +1 -1
  149. package/dist/src/shadcn/components/ui/select.js +98 -19
  150. package/dist/src/shadcn/components/ui/select.js.map +1 -1
  151. package/dist/src/shadcn/components/ui/select.stories.js +84 -5
  152. package/dist/src/shadcn/components/ui/select.stories.js.map +1 -1
  153. package/dist/src/shadcn/components/ui/separator.js +9 -2
  154. package/dist/src/shadcn/components/ui/separator.js.map +1 -1
  155. package/dist/src/shadcn/components/ui/separator.stories.js +43 -3
  156. package/dist/src/shadcn/components/ui/separator.stories.js.map +1 -1
  157. package/dist/src/shadcn/components/ui/sheet.js +69 -16
  158. package/dist/src/shadcn/components/ui/sheet.js.map +1 -1
  159. package/dist/src/shadcn/components/ui/sheet.stories.js +77 -6
  160. package/dist/src/shadcn/components/ui/sheet.stories.js.map +1 -1
  161. package/dist/src/shadcn/components/ui/sidebar.js +304 -79
  162. package/dist/src/shadcn/components/ui/sidebar.js.map +1 -1
  163. package/dist/src/shadcn/components/ui/sidebar.stories.js +321 -59
  164. package/dist/src/shadcn/components/ui/sidebar.stories.js.map +1 -1
  165. package/dist/src/shadcn/components/ui/skeleton.js +7 -2
  166. package/dist/src/shadcn/components/ui/skeleton.js.map +1 -1
  167. package/dist/src/shadcn/components/ui/skeleton.stories.js +22 -3
  168. package/dist/src/shadcn/components/ui/skeleton.stories.js.map +1 -1
  169. package/dist/src/shadcn/components/ui/slider.js +40 -7
  170. package/dist/src/shadcn/components/ui/slider.js.map +1 -1
  171. package/dist/src/shadcn/components/ui/slider.stories.js +11 -3
  172. package/dist/src/shadcn/components/ui/slider.stories.js.map +1 -1
  173. package/dist/src/shadcn/components/ui/sonner.js +10 -4
  174. package/dist/src/shadcn/components/ui/sonner.js.map +1 -1
  175. package/dist/src/shadcn/components/ui/sonner.stories.js +14 -9
  176. package/dist/src/shadcn/components/ui/sonner.stories.js.map +1 -1
  177. package/dist/src/shadcn/components/ui/switch.js +11 -2
  178. package/dist/src/shadcn/components/ui/switch.js.map +1 -1
  179. package/dist/src/shadcn/components/ui/switch.stories.js +16 -4
  180. package/dist/src/shadcn/components/ui/switch.stories.js.map +1 -1
  181. package/dist/src/shadcn/components/ui/table.js +47 -10
  182. package/dist/src/shadcn/components/ui/table.js.map +1 -1
  183. package/dist/src/shadcn/components/ui/table.stories.js +72 -11
  184. package/dist/src/shadcn/components/ui/table.stories.js.map +1 -1
  185. package/dist/src/shadcn/components/ui/tabs.d.ts +9 -5
  186. package/dist/src/shadcn/components/ui/tabs.d.ts.map +1 -1
  187. package/dist/src/shadcn/components/ui/tabs.js +75 -18
  188. package/dist/src/shadcn/components/ui/tabs.js.map +1 -1
  189. package/dist/src/shadcn/components/ui/tabs.stories.d.ts +6 -0
  190. package/dist/src/shadcn/components/ui/tabs.stories.d.ts.map +1 -1
  191. package/dist/src/shadcn/components/ui/tabs.stories.js +221 -10
  192. package/dist/src/shadcn/components/ui/tabs.stories.js.map +1 -1
  193. package/dist/src/shadcn/components/ui/textarea.js +7 -2
  194. package/dist/src/shadcn/components/ui/textarea.js.map +1 -1
  195. package/dist/src/shadcn/components/ui/textarea.stories.js +6 -3
  196. package/dist/src/shadcn/components/ui/textarea.stories.js.map +1 -1
  197. package/dist/src/shadcn/components/ui/toggle-group.js +29 -8
  198. package/dist/src/shadcn/components/ui/toggle-group.js.map +1 -1
  199. package/dist/src/shadcn/components/ui/toggle-group.stories.js +30 -3
  200. package/dist/src/shadcn/components/ui/toggle-group.stories.js.map +1 -1
  201. package/dist/src/shadcn/components/ui/toggle.js +16 -7
  202. package/dist/src/shadcn/components/ui/toggle.js.map +1 -1
  203. package/dist/src/shadcn/components/ui/toggle.stories.js +9 -3
  204. package/dist/src/shadcn/components/ui/toggle.stories.js.map +1 -1
  205. package/dist/src/shadcn/components/ui/tooltip.js +26 -5
  206. package/dist/src/shadcn/components/ui/tooltip.js.map +1 -1
  207. package/dist/src/shadcn/components/ui/tooltip.stories.js +20 -4
  208. package/dist/src/shadcn/components/ui/tooltip.stories.js.map +1 -1
  209. package/dist/src/shadcn/hooks/use-mobile.js +4 -3
  210. package/dist/src/shadcn/hooks/use-mobile.js.map +1 -1
  211. package/dist/src/shadcn/lib/utils.js +1 -0
  212. package/dist/src/shadcn/lib/utils.js.map +1 -1
  213. package/package.json +8 -4
  214. package/src/index.css +6 -0
  215. package/src/index.tsx +1 -0
  216. package/src/shadcn/components/ui/tabs.stories.tsx +57 -0
  217. package/src/shadcn/components/ui/tabs.tsx +76 -26
@@ -1,51 +1,141 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
3
  import { CheckIcon, ChevronRightIcon, CircleIcon } from "lucide-react";
4
- import { cn } from "#shadcn/lib/utils";
4
+ import { cn } from "../../lib/utils.js";
5
5
  function DropdownMenu({ ...props }) {
6
- return _jsx(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
6
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Root, {
7
+ "data-slot": "dropdown-menu",
8
+ ...props
9
+ });
7
10
  }
8
11
  function DropdownMenuPortal({ ...props }) {
9
- return (_jsx(DropdownMenuPrimitive.Portal, { "data-slot": "dropdown-menu-portal", ...props }));
12
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Portal, {
13
+ "data-slot": "dropdown-menu-portal",
14
+ ...props
15
+ });
10
16
  }
11
17
  function DropdownMenuTrigger({ ...props }) {
12
- return (_jsx(DropdownMenuPrimitive.Trigger, { "data-slot": "dropdown-menu-trigger", ...props }));
18
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Trigger, {
19
+ "data-slot": "dropdown-menu-trigger",
20
+ ...props
21
+ });
13
22
  }
14
23
  function DropdownMenuContent({ className, sideOffset = 4, ...props }) {
15
- return (_jsx(DropdownMenuPrimitive.Portal, { children: _jsx(DropdownMenuPrimitive.Content, { "data-slot": "dropdown-menu-content", sideOffset: sideOffset, className: cn("bg-bg-primary data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0", "data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95", "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 z-50 max-h-(--radix-dropdown-menu-content-available-height)", "min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin)", "overflow-x-hidden overflow-y-auto rounded-md border border-border-separator px-2 py-3 shadow-lg space-y-0.5", className), ...props }) }));
24
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Portal, {
25
+ children: /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Content, {
26
+ "data-slot": "dropdown-menu-content",
27
+ sideOffset: sideOffset,
28
+ className: cn("bg-bg-primary data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0", "data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95", "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 z-50 max-h-(--radix-dropdown-menu-content-available-height)", "min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin)", "overflow-x-hidden overflow-y-auto rounded-md border border-border-separator px-2 py-3 shadow-lg space-y-0.5", className),
29
+ ...props
30
+ })
31
+ });
16
32
  }
17
33
  function DropdownMenuGroup({ ...props }) {
18
- return (_jsx(DropdownMenuPrimitive.Group, { "data-slot": "dropdown-menu-group", ...props }));
34
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Group, {
35
+ "data-slot": "dropdown-menu-group",
36
+ ...props
37
+ });
19
38
  }
20
39
  function DropdownMenuItem({ className, inset, variant = "default", ...props }) {
21
- return (_jsx(DropdownMenuPrimitive.Item, { "data-slot": "dropdown-menu-item", "data-inset": inset, "data-variant": variant, className: cn("cursor-pointer items-center flex gap-2 h-8 px-3 py-1.5 relativerounded-md", "outline-hidden select-none typo-body text-text-secondary", "focus:bg-bg-secondary focus:text-text-primary", "data-[variant=destructive]:text-text-error-primary", "data-[variant=destructive]:focus:bg-bg-error-tertiary", "dark:data-[variant=destructive]:focus:bg-bg-error-tertiary", "data-[variant=destructive]:focus:text-text-error-primary", "data-[variant=destructive]:*:[svg]:!text-text-error-primary", "[&_svg:not([class*='text-'])]:fg-fg-secondary", "data-[disabled]:pointer-events-none", "data-[disabled]:opacity-50", "data-[inset]:pl-8", "[&_svg]:pointer-events-none", "[&_svg]:shrink-0", "[&_svg:not([class*='size-'])]:size-4", className), ...props }));
40
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Item, {
41
+ "data-slot": "dropdown-menu-item",
42
+ "data-inset": inset,
43
+ "data-variant": variant,
44
+ className: cn("cursor-pointer items-center flex gap-2 h-8 px-3 py-1.5 relativerounded-md", "outline-hidden select-none typo-body text-text-secondary", "focus:bg-bg-secondary focus:text-text-primary", "data-[variant=destructive]:text-text-error-primary", "data-[variant=destructive]:focus:bg-bg-error-tertiary", "dark:data-[variant=destructive]:focus:bg-bg-error-tertiary", "data-[variant=destructive]:focus:text-text-error-primary", "data-[variant=destructive]:*:[svg]:!text-text-error-primary", "[&_svg:not([class*='text-'])]:fg-fg-secondary", "data-[disabled]:pointer-events-none", "data-[disabled]:opacity-50", "data-[inset]:pl-8", "[&_svg]:pointer-events-none", "[&_svg]:shrink-0", "[&_svg:not([class*='size-'])]:size-4", className),
45
+ ...props
46
+ });
22
47
  }
23
48
  function DropdownMenuCheckboxItem({ className, children, ...props }) {
24
- return (_jsxs(DropdownMenuPrimitive.CheckboxItem, { "data-slot": "dropdown-menu-checkbox-item", className: cn("focus:bg-bg-secondary focus:text-text-primary relative flex cursor-default items-center gap-2 rounded-lg py-1 pr-2 pl-9", "outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none", "[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg]:text-text-link h-8 typo-body text-text-secondary", className), ...props, children: [_jsx("span", { className: "pointer-events-none absolute left-3 flex size-3.5 items-center justify-center", children: _jsx(DropdownMenuPrimitive.ItemIndicator, { children: _jsx(CheckIcon, { className: "size-4" }) }) }), children] }));
49
+ return /*#__PURE__*/ _jsxs(DropdownMenuPrimitive.CheckboxItem, {
50
+ "data-slot": "dropdown-menu-checkbox-item",
51
+ className: cn("focus:bg-bg-secondary focus:text-text-primary relative flex cursor-default items-center gap-2 rounded-lg py-1 pr-2 pl-9", "outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none", "[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg]:text-text-link h-8 typo-body text-text-secondary", className),
52
+ ...props,
53
+ children: [
54
+ /*#__PURE__*/ _jsx("span", {
55
+ className: "pointer-events-none absolute left-3 flex size-3.5 items-center justify-center",
56
+ children: /*#__PURE__*/ _jsx(DropdownMenuPrimitive.ItemIndicator, {
57
+ children: /*#__PURE__*/ _jsx(CheckIcon, {
58
+ className: "size-4"
59
+ })
60
+ })
61
+ }),
62
+ children
63
+ ]
64
+ });
25
65
  }
26
66
  function DropdownMenuRadioGroup({ ...props }) {
27
- return (_jsx(DropdownMenuPrimitive.RadioGroup, { "data-slot": "dropdown-menu-radio-group", ...props }));
67
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.RadioGroup, {
68
+ "data-slot": "dropdown-menu-radio-group",
69
+ ...props
70
+ });
28
71
  }
29
72
  function DropdownMenuRadioItem({ className, children, ...props }) {
30
- return (_jsxs(DropdownMenuPrimitive.RadioItem, { "data-slot": "dropdown-menu-radio-item", className: cn("focus:bg-bg-secondary focus:text-text-primary relative flex cursor-pointer items-center gap-2 rounded-md py-1.5 pr-2", "outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none", "[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 h-8 typo-body text-text-secondary", className), ...props, children: [_jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: _jsx(DropdownMenuPrimitive.ItemIndicator, { children: _jsx(CircleIcon, { className: "size-2 fill-current" }) }) }), children] }));
73
+ return /*#__PURE__*/ _jsxs(DropdownMenuPrimitive.RadioItem, {
74
+ "data-slot": "dropdown-menu-radio-item",
75
+ className: cn("focus:bg-bg-secondary focus:text-text-primary relative flex cursor-pointer items-center gap-2 rounded-md py-1.5 pr-2", "outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none", "[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 h-8 typo-body text-text-secondary", className),
76
+ ...props,
77
+ children: [
78
+ /*#__PURE__*/ _jsx("span", {
79
+ className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
80
+ children: /*#__PURE__*/ _jsx(DropdownMenuPrimitive.ItemIndicator, {
81
+ children: /*#__PURE__*/ _jsx(CircleIcon, {
82
+ className: "size-2 fill-current"
83
+ })
84
+ })
85
+ }),
86
+ children
87
+ ]
88
+ });
31
89
  }
32
90
  function DropdownMenuLabel({ className, inset, ...props }) {
33
- return (_jsx(DropdownMenuPrimitive.Label, { "data-slot": "dropdown-menu-label", "data-inset": inset, className: cn("px-3 py-1.5 data-[inset]:pl-10 typo-body text-text-secondary", className), ...props }));
91
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Label, {
92
+ "data-slot": "dropdown-menu-label",
93
+ "data-inset": inset,
94
+ className: cn("px-3 py-1.5 data-[inset]:pl-10 typo-body text-text-secondary", className),
95
+ ...props
96
+ });
34
97
  }
35
98
  function DropdownMenuSeparator({ className, ...props }) {
36
- return (_jsx(DropdownMenuPrimitive.Separator, { "data-slot": "dropdown-menu-separator", className: cn("bg-bg-quaternary -mx-1 my-1 h-px", className), ...props }));
99
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Separator, {
100
+ "data-slot": "dropdown-menu-separator",
101
+ className: cn("bg-bg-quaternary -mx-1 my-1 h-px", className),
102
+ ...props
103
+ });
37
104
  }
38
105
  function DropdownMenuShortcut({ className, ...props }) {
39
- return (_jsx("span", { "data-slot": "dropdown-menu-shortcut", className: cn("text-text-secondary ml-auto text-xs tracking-widest", className), ...props }));
106
+ return /*#__PURE__*/ _jsx("span", {
107
+ "data-slot": "dropdown-menu-shortcut",
108
+ className: cn("text-text-secondary ml-auto text-xs tracking-widest", className),
109
+ ...props
110
+ });
40
111
  }
41
112
  function DropdownMenuSub({ ...props }) {
42
- return _jsx(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
113
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Sub, {
114
+ "data-slot": "dropdown-menu-sub",
115
+ ...props
116
+ });
43
117
  }
44
118
  function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
45
- return (_jsxs(DropdownMenuPrimitive.SubTrigger, { "data-slot": "dropdown-menu-sub-trigger", "data-inset": inset, className: cn("focus:bg-bg-secondary focus:text-text-primary data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex", "cursor-default items-center rounded-md px-3 py-1.5 outline-hidden select-none data-[inset]:pl-8 h-8 typo-body text-text-secondary", className), ...props, children: [children, _jsx(ChevronRightIcon, { className: "ml-auto size-4" })] }));
119
+ return /*#__PURE__*/ _jsxs(DropdownMenuPrimitive.SubTrigger, {
120
+ "data-slot": "dropdown-menu-sub-trigger",
121
+ "data-inset": inset,
122
+ className: cn("focus:bg-bg-secondary focus:text-text-primary data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex", "cursor-default items-center rounded-md px-3 py-1.5 outline-hidden select-none data-[inset]:pl-8 h-8 typo-body text-text-secondary", className),
123
+ ...props,
124
+ children: [
125
+ children,
126
+ /*#__PURE__*/ _jsx(ChevronRightIcon, {
127
+ className: "ml-auto size-4"
128
+ })
129
+ ]
130
+ });
46
131
  }
47
132
  function DropdownMenuSubContent({ className, ...props }) {
48
- return (_jsx(DropdownMenuPrimitive.SubContent, { "data-slot": "dropdown-menu-sub-content", className: cn("bg-bg-primary text-text-primary data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0", "data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 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 z-50", "min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border border-border-separator", "p-2 shadow-lg", className), ...props }));
133
+ return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.SubContent, {
134
+ "data-slot": "dropdown-menu-sub-content",
135
+ className: cn("bg-bg-primary text-text-primary data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0", "data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 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 z-50", "min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border border-border-separator", "p-2 shadow-lg", className),
136
+ ...props
137
+ });
49
138
  }
50
- export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
139
+ export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent };
140
+
51
141
  //# sourceMappingURL=dropdown-menu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.js","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/shadcn/components/ui/dropdown-menu.tsx"],"sourcesContent":["import * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\nfunction DropdownMenu({\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n\treturn <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuPortal({\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n\t);\n}\n\nfunction DropdownMenuTrigger({\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.Trigger\n\t\t\tdata-slot=\"dropdown-menu-trigger\"\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction DropdownMenuContent({\n\tclassName,\n\tsideOffset = 4,\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.Portal>\n\t\t\t<DropdownMenuPrimitive.Content\n\t\t\t\tdata-slot=\"dropdown-menu-content\"\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"bg-bg-primary data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0\",\n\t\t\t\t\t\"data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n\t\t\t\t\t\"data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2\",\n\t\t\t\t\t\"data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height)\",\n\t\t\t\t\t\"min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin)\",\n\t\t\t\t\t\"overflow-x-hidden overflow-y-auto rounded-md border border-border-separator px-2 py-3 shadow-lg space-y-0.5\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</DropdownMenuPrimitive.Portal>\n\t);\n}\n\nfunction DropdownMenuGroup({\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n\t);\n}\n\nfunction DropdownMenuItem({\n\tclassName,\n\tinset,\n\tvariant = \"default\",\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n\tinset?: boolean;\n\tvariant?: \"default\" | \"destructive\";\n}) {\n\treturn (\n\t\t<DropdownMenuPrimitive.Item\n\t\t\tdata-slot=\"dropdown-menu-item\"\n\t\t\tdata-inset={inset}\n\t\t\tdata-variant={variant}\n\t\t\tclassName={cn(\n\t\t\t\t\"cursor-pointer items-center flex gap-2 h-8 px-3 py-1.5 relativerounded-md\",\n\t\t\t\t\"outline-hidden select-none typo-body text-text-secondary\",\n\t\t\t\t\"focus:bg-bg-secondary focus:text-text-primary\",\n\t\t\t\t\"data-[variant=destructive]:text-text-error-primary\",\n\t\t\t\t\"data-[variant=destructive]:focus:bg-bg-error-tertiary\",\n\t\t\t\t\"dark:data-[variant=destructive]:focus:bg-bg-error-tertiary\",\n\t\t\t\t\"data-[variant=destructive]:focus:text-text-error-primary\",\n\t\t\t\t\"data-[variant=destructive]:*:[svg]:!text-text-error-primary\",\n\t\t\t\t\"[&_svg:not([class*='text-'])]:fg-fg-secondary\",\n\t\t\t\t\"data-[disabled]:pointer-events-none\",\n\t\t\t\t\"data-[disabled]:opacity-50\",\n\t\t\t\t\"data-[inset]:pl-8\",\n\t\t\t\t\"[&_svg]:pointer-events-none\",\n\t\t\t\t\"[&_svg]:shrink-0\",\n\t\t\t\t\"[&_svg:not([class*='size-'])]:size-4\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction DropdownMenuCheckboxItem({\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.CheckboxItem\n\t\t\tdata-slot=\"dropdown-menu-checkbox-item\"\n\t\t\tclassName={cn(\n\t\t\t\t\"focus:bg-bg-secondary focus:text-text-primary relative flex cursor-default items-center gap-2 rounded-lg py-1 pr-2 pl-9\",\n\t\t\t\t\"outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none\",\n\t\t\t\t\"[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg]:text-text-link h-8 typo-body text-text-secondary\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<span className=\"pointer-events-none absolute left-3 flex size-3.5 items-center justify-center\">\n\t\t\t\t<DropdownMenuPrimitive.ItemIndicator>\n\t\t\t\t\t<CheckIcon className=\"size-4\" />\n\t\t\t\t</DropdownMenuPrimitive.ItemIndicator>\n\t\t\t</span>\n\t\t\t{children}\n\t\t</DropdownMenuPrimitive.CheckboxItem>\n\t);\n}\n\nfunction DropdownMenuRadioGroup({\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.RadioGroup\n\t\t\tdata-slot=\"dropdown-menu-radio-group\"\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction DropdownMenuRadioItem({\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.RadioItem\n\t\t\tdata-slot=\"dropdown-menu-radio-item\"\n\t\t\tclassName={cn(\n\t\t\t\t\"focus:bg-bg-secondary focus:text-text-primary relative flex cursor-pointer items-center gap-2 rounded-md py-1.5 pr-2\",\n\t\t\t\t\"outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none\",\n\t\t\t\t\"[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 h-8 typo-body text-text-secondary\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n\t\t\t\t<DropdownMenuPrimitive.ItemIndicator>\n\t\t\t\t\t<CircleIcon className=\"size-2 fill-current\" />\n\t\t\t\t</DropdownMenuPrimitive.ItemIndicator>\n\t\t\t</span>\n\t\t\t{children}\n\t\t</DropdownMenuPrimitive.RadioItem>\n\t);\n}\n\nfunction DropdownMenuLabel({\n\tclassName,\n\tinset,\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n\tinset?: boolean;\n}) {\n\treturn (\n\t\t<DropdownMenuPrimitive.Label\n\t\t\tdata-slot=\"dropdown-menu-label\"\n\t\t\tdata-inset={inset}\n\t\t\tclassName={cn(\n\t\t\t\t\"px-3 py-1.5 data-[inset]:pl-10 typo-body text-text-secondary\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction DropdownMenuSeparator({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.Separator\n\t\t\tdata-slot=\"dropdown-menu-separator\"\n\t\t\tclassName={cn(\"bg-bg-quaternary -mx-1 my-1 h-px\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction DropdownMenuShortcut({\n\tclassName,\n\t...props\n}: React.ComponentProps<\"span\">) {\n\treturn (\n\t\t<span\n\t\t\tdata-slot=\"dropdown-menu-shortcut\"\n\t\t\tclassName={cn(\n\t\t\t\t\"text-text-secondary ml-auto text-xs tracking-widest\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction DropdownMenuSub({\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n\treturn <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\nfunction DropdownMenuSubTrigger({\n\tclassName,\n\tinset,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n\tinset?: boolean;\n}) {\n\treturn (\n\t\t<DropdownMenuPrimitive.SubTrigger\n\t\t\tdata-slot=\"dropdown-menu-sub-trigger\"\n\t\t\tdata-inset={inset}\n\t\t\tclassName={cn(\n\t\t\t\t\"focus:bg-bg-secondary focus:text-text-primary data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex\",\n\t\t\t\t\"cursor-default items-center rounded-md px-3 py-1.5 outline-hidden select-none data-[inset]:pl-8 h-8 typo-body text-text-secondary\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<ChevronRightIcon className=\"ml-auto size-4\" />\n\t\t</DropdownMenuPrimitive.SubTrigger>\n\t);\n}\n\nfunction DropdownMenuSubContent({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n\treturn (\n\t\t<DropdownMenuPrimitive.SubContent\n\t\t\tdata-slot=\"dropdown-menu-sub-content\"\n\t\t\tclassName={cn(\n\t\t\t\t\"bg-bg-primary text-text-primary data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0\",\n\t\t\t\t\"data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2\",\n\t\t\t\t\"data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50\",\n\t\t\t\t\"min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border border-border-separator\",\n\t\t\t\t\"p-2 shadow-lg\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport {\n\tDropdownMenu,\n\tDropdownMenuPortal,\n\tDropdownMenuTrigger,\n\tDropdownMenuContent,\n\tDropdownMenuGroup,\n\tDropdownMenuLabel,\n\tDropdownMenuItem,\n\tDropdownMenuCheckboxItem,\n\tDropdownMenuRadioGroup,\n\tDropdownMenuRadioItem,\n\tDropdownMenuSeparator,\n\tDropdownMenuShortcut,\n\tDropdownMenuSub,\n\tDropdownMenuSubTrigger,\n\tDropdownMenuSubContent,\n};\n"],"names":["DropdownMenuPrimitive","CheckIcon","ChevronRightIcon","CircleIcon","cn","DropdownMenu","props","Root","data-slot","DropdownMenuPortal","Portal","DropdownMenuTrigger","Trigger","DropdownMenuContent","className","sideOffset","Content","DropdownMenuGroup","Group","DropdownMenuItem","inset","variant","Item","data-inset","data-variant","DropdownMenuCheckboxItem","children","CheckboxItem","span","ItemIndicator","DropdownMenuRadioGroup","RadioGroup","DropdownMenuRadioItem","RadioItem","DropdownMenuLabel","Label","DropdownMenuSeparator","Separator","DropdownMenuShortcut","DropdownMenuSub","Sub","DropdownMenuSubTrigger","SubTrigger","DropdownMenuSubContent","SubContent"],"mappings":"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"}
@@ -1,11 +1,126 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Button } from "#shadcn/components/ui/button";
3
- import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, } from "#shadcn/components/ui/dropdown-menu";
2
+ import { Button } from "./button.js";
3
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./dropdown-menu.js";
4
4
  const meta = {
5
- title: "Component/Dropdown menu",
5
+ title: "Component/Dropdown menu"
6
6
  };
7
7
  export default meta;
8
8
  export const Demo = {
9
- render: () => (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(Button, { variant: "secondary", children: "Open" }) }), _jsxs(DropdownMenuContent, { className: "w-56", align: "start", children: [_jsx(DropdownMenuLabel, { children: "My Account" }), _jsxs(DropdownMenuGroup, { children: [_jsxs(DropdownMenuItem, { children: ["Profile", _jsx(DropdownMenuShortcut, { children: "\u21E7\u2318P" })] }), _jsxs(DropdownMenuItem, { children: ["Billing", _jsx(DropdownMenuShortcut, { children: "\u2318B" })] }), _jsxs(DropdownMenuItem, { children: ["Settings", _jsx(DropdownMenuShortcut, { children: "\u2318S" })] }), _jsxs(DropdownMenuItem, { children: ["Keyboard shortcuts", _jsx(DropdownMenuShortcut, { children: "\u2318K" })] })] }), _jsx(DropdownMenuSeparator, {}), _jsxs(DropdownMenuGroup, { children: [_jsx(DropdownMenuItem, { children: "Team" }), _jsxs(DropdownMenuSub, { children: [_jsx(DropdownMenuSubTrigger, { children: "Invite users" }), _jsx(DropdownMenuPortal, { children: _jsxs(DropdownMenuSubContent, { children: [_jsx(DropdownMenuItem, { children: "Email" }), _jsx(DropdownMenuItem, { children: "Message" }), _jsx(DropdownMenuSeparator, {}), _jsx(DropdownMenuItem, { children: "More..." })] }) })] }), _jsxs(DropdownMenuItem, { children: ["New Team", _jsx(DropdownMenuShortcut, { children: "\u2318+T" })] })] }), _jsx(DropdownMenuSeparator, {}), _jsx(DropdownMenuItem, { children: "GitHub" }), _jsx(DropdownMenuItem, { children: "Support" }), _jsx(DropdownMenuItem, { disabled: true, children: "API" }), _jsx(DropdownMenuSeparator, {}), _jsxs(DropdownMenuItem, { children: ["Log out", _jsx(DropdownMenuShortcut, { children: "\u21E7\u2318Q" })] })] })] })),
9
+ render: ()=>/*#__PURE__*/ _jsxs(DropdownMenu, {
10
+ children: [
11
+ /*#__PURE__*/ _jsx(DropdownMenuTrigger, {
12
+ asChild: true,
13
+ children: /*#__PURE__*/ _jsx(Button, {
14
+ variant: "secondary",
15
+ children: "Open"
16
+ })
17
+ }),
18
+ /*#__PURE__*/ _jsxs(DropdownMenuContent, {
19
+ className: "w-56",
20
+ align: "start",
21
+ children: [
22
+ /*#__PURE__*/ _jsx(DropdownMenuLabel, {
23
+ children: "My Account"
24
+ }),
25
+ /*#__PURE__*/ _jsxs(DropdownMenuGroup, {
26
+ children: [
27
+ /*#__PURE__*/ _jsxs(DropdownMenuItem, {
28
+ children: [
29
+ "Profile",
30
+ /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
31
+ children: "⇧⌘P"
32
+ })
33
+ ]
34
+ }),
35
+ /*#__PURE__*/ _jsxs(DropdownMenuItem, {
36
+ children: [
37
+ "Billing",
38
+ /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
39
+ children: "⌘B"
40
+ })
41
+ ]
42
+ }),
43
+ /*#__PURE__*/ _jsxs(DropdownMenuItem, {
44
+ children: [
45
+ "Settings",
46
+ /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
47
+ children: "⌘S"
48
+ })
49
+ ]
50
+ }),
51
+ /*#__PURE__*/ _jsxs(DropdownMenuItem, {
52
+ children: [
53
+ "Keyboard shortcuts",
54
+ /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
55
+ children: "⌘K"
56
+ })
57
+ ]
58
+ })
59
+ ]
60
+ }),
61
+ /*#__PURE__*/ _jsx(DropdownMenuSeparator, {}),
62
+ /*#__PURE__*/ _jsxs(DropdownMenuGroup, {
63
+ children: [
64
+ /*#__PURE__*/ _jsx(DropdownMenuItem, {
65
+ children: "Team"
66
+ }),
67
+ /*#__PURE__*/ _jsxs(DropdownMenuSub, {
68
+ children: [
69
+ /*#__PURE__*/ _jsx(DropdownMenuSubTrigger, {
70
+ children: "Invite users"
71
+ }),
72
+ /*#__PURE__*/ _jsx(DropdownMenuPortal, {
73
+ children: /*#__PURE__*/ _jsxs(DropdownMenuSubContent, {
74
+ children: [
75
+ /*#__PURE__*/ _jsx(DropdownMenuItem, {
76
+ children: "Email"
77
+ }),
78
+ /*#__PURE__*/ _jsx(DropdownMenuItem, {
79
+ children: "Message"
80
+ }),
81
+ /*#__PURE__*/ _jsx(DropdownMenuSeparator, {}),
82
+ /*#__PURE__*/ _jsx(DropdownMenuItem, {
83
+ children: "More..."
84
+ })
85
+ ]
86
+ })
87
+ })
88
+ ]
89
+ }),
90
+ /*#__PURE__*/ _jsxs(DropdownMenuItem, {
91
+ children: [
92
+ "New Team",
93
+ /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
94
+ children: "⌘+T"
95
+ })
96
+ ]
97
+ })
98
+ ]
99
+ }),
100
+ /*#__PURE__*/ _jsx(DropdownMenuSeparator, {}),
101
+ /*#__PURE__*/ _jsx(DropdownMenuItem, {
102
+ children: "GitHub"
103
+ }),
104
+ /*#__PURE__*/ _jsx(DropdownMenuItem, {
105
+ children: "Support"
106
+ }),
107
+ /*#__PURE__*/ _jsx(DropdownMenuItem, {
108
+ disabled: true,
109
+ children: "API"
110
+ }),
111
+ /*#__PURE__*/ _jsx(DropdownMenuSeparator, {}),
112
+ /*#__PURE__*/ _jsxs(DropdownMenuItem, {
113
+ children: [
114
+ "Log out",
115
+ /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
116
+ children: "⇧⌘Q"
117
+ })
118
+ ]
119
+ })
120
+ ]
121
+ })
122
+ ]
123
+ })
10
124
  };
125
+
11
126
  //# sourceMappingURL=dropdown-menu.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.stories.js","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/dropdown-menu.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EACN,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,GACnB,MAAM,qCAAqC,CAAC;AAE7C,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,yBAAyB;CACjB,CAAC;AACjB,eAAe,IAAI,CAAC;AAIpB,MAAM,CAAC,MAAM,IAAI,GAAG;IACnB,MAAM,EAAE,GAAG,EAAE,CAAC,CACb,MAAC,YAAY,eACZ,KAAC,mBAAmB,IAAC,OAAO,kBAC3B,KAAC,MAAM,IAAC,OAAO,EAAC,WAAW,qBAAc,GACpB,EACtB,MAAC,mBAAmB,IAAC,SAAS,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,aAClD,KAAC,iBAAiB,6BAA+B,EACjD,MAAC,iBAAiB,eACjB,MAAC,gBAAgB,0BAEhB,KAAC,oBAAoB,gCAA2B,IAC9B,EACnB,MAAC,gBAAgB,0BAEhB,KAAC,oBAAoB,0BAA0B,IAC7B,EACnB,MAAC,gBAAgB,2BAEhB,KAAC,oBAAoB,0BAA0B,IAC7B,EACnB,MAAC,gBAAgB,qCAEhB,KAAC,oBAAoB,0BAA0B,IAC7B,IACA,EACpB,KAAC,qBAAqB,KAAG,EACzB,MAAC,iBAAiB,eACjB,KAAC,gBAAgB,uBAAwB,EACzC,MAAC,eAAe,eACf,KAAC,sBAAsB,+BAAsC,EAC7D,KAAC,kBAAkB,cAClB,MAAC,sBAAsB,eACtB,KAAC,gBAAgB,wBAAyB,EAC1C,KAAC,gBAAgB,0BAA2B,EAC5C,KAAC,qBAAqB,KAAG,EACzB,KAAC,gBAAgB,0BAA2B,IACpB,GACL,IACJ,EAClB,MAAC,gBAAgB,2BAEhB,KAAC,oBAAoB,2BAA2B,IAC9B,IACA,EACpB,KAAC,qBAAqB,KAAG,EACzB,KAAC,gBAAgB,yBAA0B,EAC3C,KAAC,gBAAgB,0BAA2B,EAC5C,KAAC,gBAAgB,IAAC,QAAQ,0BAAuB,EACjD,KAAC,qBAAqB,KAAG,EACzB,MAAC,gBAAgB,0BAEhB,KAAC,oBAAoB,gCAA2B,IAC9B,IACE,IACR,CACf;CACe,CAAC"}
1
+ {"version":3,"sources":["../../../../../src/shadcn/components/ui/dropdown-menu.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react-vite\";\nimport { Button } from \"#shadcn/components/ui/button\";\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuGroup,\n\tDropdownMenuItem,\n\tDropdownMenuLabel,\n\tDropdownMenuPortal,\n\tDropdownMenuSeparator,\n\tDropdownMenuShortcut,\n\tDropdownMenuSub,\n\tDropdownMenuSubContent,\n\tDropdownMenuSubTrigger,\n\tDropdownMenuTrigger,\n} from \"#shadcn/components/ui/dropdown-menu\";\n\nconst meta = {\n\ttitle: \"Component/Dropdown menu\",\n} satisfies Meta;\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Demo = {\n\trender: () => (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger asChild>\n\t\t\t\t<Button variant=\"secondary\">Open</Button>\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent className=\"w-56\" align=\"start\">\n\t\t\t\t<DropdownMenuLabel>My Account</DropdownMenuLabel>\n\t\t\t\t<DropdownMenuGroup>\n\t\t\t\t\t<DropdownMenuItem>\n\t\t\t\t\t\tProfile\n\t\t\t\t\t\t<DropdownMenuShortcut>⇧⌘P</DropdownMenuShortcut>\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t<DropdownMenuItem>\n\t\t\t\t\t\tBilling\n\t\t\t\t\t\t<DropdownMenuShortcut>⌘B</DropdownMenuShortcut>\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t<DropdownMenuItem>\n\t\t\t\t\t\tSettings\n\t\t\t\t\t\t<DropdownMenuShortcut>⌘S</DropdownMenuShortcut>\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t<DropdownMenuItem>\n\t\t\t\t\t\tKeyboard shortcuts\n\t\t\t\t\t\t<DropdownMenuShortcut>⌘K</DropdownMenuShortcut>\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t</DropdownMenuGroup>\n\t\t\t\t<DropdownMenuSeparator />\n\t\t\t\t<DropdownMenuGroup>\n\t\t\t\t\t<DropdownMenuItem>Team</DropdownMenuItem>\n\t\t\t\t\t<DropdownMenuSub>\n\t\t\t\t\t\t<DropdownMenuSubTrigger>Invite users</DropdownMenuSubTrigger>\n\t\t\t\t\t\t<DropdownMenuPortal>\n\t\t\t\t\t\t\t<DropdownMenuSubContent>\n\t\t\t\t\t\t\t\t<DropdownMenuItem>Email</DropdownMenuItem>\n\t\t\t\t\t\t\t\t<DropdownMenuItem>Message</DropdownMenuItem>\n\t\t\t\t\t\t\t\t<DropdownMenuSeparator />\n\t\t\t\t\t\t\t\t<DropdownMenuItem>More...</DropdownMenuItem>\n\t\t\t\t\t\t\t</DropdownMenuSubContent>\n\t\t\t\t\t\t</DropdownMenuPortal>\n\t\t\t\t\t</DropdownMenuSub>\n\t\t\t\t\t<DropdownMenuItem>\n\t\t\t\t\t\tNew Team\n\t\t\t\t\t\t<DropdownMenuShortcut>⌘+T</DropdownMenuShortcut>\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t</DropdownMenuGroup>\n\t\t\t\t<DropdownMenuSeparator />\n\t\t\t\t<DropdownMenuItem>GitHub</DropdownMenuItem>\n\t\t\t\t<DropdownMenuItem>Support</DropdownMenuItem>\n\t\t\t\t<DropdownMenuItem disabled>API</DropdownMenuItem>\n\t\t\t\t<DropdownMenuSeparator />\n\t\t\t\t<DropdownMenuItem>\n\t\t\t\t\tLog out\n\t\t\t\t\t<DropdownMenuShortcut>⇧⌘Q</DropdownMenuShortcut>\n\t\t\t\t</DropdownMenuItem>\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t),\n} satisfies Story;\n"],"names":["Button","DropdownMenu","DropdownMenuContent","DropdownMenuGroup","DropdownMenuItem","DropdownMenuLabel","DropdownMenuPortal","DropdownMenuSeparator","DropdownMenuShortcut","DropdownMenuSub","DropdownMenuSubContent","DropdownMenuSubTrigger","DropdownMenuTrigger","meta","title","Demo","render","asChild","variant","className","align","disabled"],"mappings":";AACA,SAASA,MAAM,QAAQ,cAA+B;AACtD,SACCC,YAAY,EACZC,mBAAmB,EACnBC,iBAAiB,EACjBC,gBAAgB,EAChBC,iBAAiB,EACjBC,kBAAkB,EAClBC,qBAAqB,EACrBC,oBAAoB,EACpBC,eAAe,EACfC,sBAAsB,EACtBC,sBAAsB,EACtBC,mBAAmB,QACb,qBAAsC;AAE7C,MAAMC,OAAO;IACZC,OAAO;AACR;AACA,eAAeD,KAAK;AAIpB,OAAO,MAAME,OAAO;IACnBC,QAAQ,kBACP,MAACf;;8BACA,KAACW;oBAAoBK,OAAO;8BAC3B,cAAA,KAACjB;wBAAOkB,SAAQ;kCAAY;;;8BAE7B,MAAChB;oBAAoBiB,WAAU;oBAAOC,OAAM;;sCAC3C,KAACf;sCAAkB;;sCACnB,MAACF;;8CACA,MAACC;;wCAAiB;sDAEjB,KAACI;sDAAqB;;;;8CAEvB,MAACJ;;wCAAiB;sDAEjB,KAACI;sDAAqB;;;;8CAEvB,MAACJ;;wCAAiB;sDAEjB,KAACI;sDAAqB;;;;8CAEvB,MAACJ;;wCAAiB;sDAEjB,KAACI;sDAAqB;;;;;;sCAGxB,KAACD;sCACD,MAACJ;;8CACA,KAACC;8CAAiB;;8CAClB,MAACK;;sDACA,KAACE;sDAAuB;;sDACxB,KAACL;sDACA,cAAA,MAACI;;kEACA,KAACN;kEAAiB;;kEAClB,KAACA;kEAAiB;;kEAClB,KAACG;kEACD,KAACH;kEAAiB;;;;;;;8CAIrB,MAACA;;wCAAiB;sDAEjB,KAACI;sDAAqB;;;;;;sCAGxB,KAACD;sCACD,KAACH;sCAAiB;;sCAClB,KAACA;sCAAiB;;sCAClB,KAACA;4BAAiBiB,QAAQ;sCAAC;;sCAC3B,KAACd;sCACD,MAACH;;gCAAiB;8CAEjB,KAACI;8CAAqB;;;;;;;;AAK3B,EAAkB"}
@@ -1,19 +1,28 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Slot } from "@radix-ui/react-slot";
3
3
  import * as React from "react";
4
- import { Controller, FormProvider, useFormContext, useFormState, } from "react-hook-form";
5
- import { Label } from "#shadcn/components/ui/label";
6
- import { cn } from "#shadcn/lib/utils";
4
+ import { Controller, FormProvider, useFormContext, useFormState } from "react-hook-form";
5
+ import { Label } from "./label.js";
6
+ import { cn } from "../../lib/utils.js";
7
7
  const Form = FormProvider;
8
- const FormFieldContext = React.createContext({});
9
- const FormField = ({ ...props }) => {
10
- return (_jsx(FormFieldContext.Provider, { value: { name: props.name }, children: _jsx(Controller, { ...props }) }));
8
+ const FormFieldContext = /*#__PURE__*/ React.createContext({});
9
+ const FormField = ({ ...props })=>{
10
+ return /*#__PURE__*/ _jsx(FormFieldContext.Provider, {
11
+ value: {
12
+ name: props.name
13
+ },
14
+ children: /*#__PURE__*/ _jsx(Controller, {
15
+ ...props
16
+ })
17
+ });
11
18
  };
12
- const useFormField = () => {
19
+ const useFormField = ()=>{
13
20
  const fieldContext = React.useContext(FormFieldContext);
14
21
  const itemContext = React.useContext(FormItemContext);
15
22
  const { getFieldState } = useFormContext();
16
- const formState = useFormState({ name: fieldContext.name });
23
+ const formState = useFormState({
24
+ name: fieldContext.name
25
+ });
17
26
  const fieldState = getFieldState(fieldContext.name, formState);
18
27
  if (!fieldContext) {
19
28
  throw new Error("useFormField should be used within <FormField>");
@@ -25,27 +34,51 @@ const useFormField = () => {
25
34
  formItemId: `${id}-form-item`,
26
35
  formDescriptionId: `${id}-form-item-description`,
27
36
  formMessageId: `${id}-form-item-message`,
28
- ...fieldState,
37
+ ...fieldState
29
38
  };
30
39
  };
31
- const FormItemContext = React.createContext({});
40
+ const FormItemContext = /*#__PURE__*/ React.createContext({});
32
41
  function FormItem({ className, ...props }) {
33
42
  const id = React.useId();
34
- return (_jsx(FormItemContext.Provider, { value: { id }, children: _jsx("div", { "data-slot": "form-item", className: cn("grid gap-2", className), ...props }) }));
43
+ return /*#__PURE__*/ _jsx(FormItemContext.Provider, {
44
+ value: {
45
+ id
46
+ },
47
+ children: /*#__PURE__*/ _jsx("div", {
48
+ "data-slot": "form-item",
49
+ className: cn("grid gap-2", className),
50
+ ...props
51
+ })
52
+ });
35
53
  }
36
54
  function FormLabel({ className, ...props }) {
37
55
  const { error, formItemId } = useFormField();
38
- return (_jsx(Label, { "data-slot": "form-label", "data-error": !!error, className: cn("data-[error=true]:text-destructive", className), htmlFor: formItemId, ...props }));
56
+ return /*#__PURE__*/ _jsx(Label, {
57
+ "data-slot": "form-label",
58
+ "data-error": !!error,
59
+ className: cn("data-[error=true]:text-destructive", className),
60
+ htmlFor: formItemId,
61
+ ...props
62
+ });
39
63
  }
40
64
  function FormControl({ ...props }) {
41
65
  const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
42
- return (_jsx(Slot, { "data-slot": "form-control", id: formItemId, "aria-describedby": !error
43
- ? `${formDescriptionId}`
44
- : `${formDescriptionId} ${formMessageId}`, "aria-invalid": !!error, ...props }));
66
+ return /*#__PURE__*/ _jsx(Slot, {
67
+ "data-slot": "form-control",
68
+ id: formItemId,
69
+ "aria-describedby": !error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`,
70
+ "aria-invalid": !!error,
71
+ ...props
72
+ });
45
73
  }
46
74
  function FormDescription({ className, ...props }) {
47
75
  const { formDescriptionId } = useFormField();
48
- return (_jsx("p", { "data-slot": "form-description", id: formDescriptionId, className: cn("text-muted-foreground text-sm", className), ...props }));
76
+ return /*#__PURE__*/ _jsx("p", {
77
+ "data-slot": "form-description",
78
+ id: formDescriptionId,
79
+ className: cn("text-muted-foreground text-sm", className),
80
+ ...props
81
+ });
49
82
  }
50
83
  function FormMessage({ className, ...props }) {
51
84
  const { error, formMessageId } = useFormField();
@@ -53,7 +86,14 @@ function FormMessage({ className, ...props }) {
53
86
  if (!body) {
54
87
  return null;
55
88
  }
56
- return (_jsx("p", { "data-slot": "form-message", id: formMessageId, className: cn("text-destructive text-sm", className), ...props, children: body }));
89
+ return /*#__PURE__*/ _jsx("p", {
90
+ "data-slot": "form-message",
91
+ id: formMessageId,
92
+ className: cn("text-destructive text-sm", className),
93
+ ...props,
94
+ children: body
95
+ });
57
96
  }
58
- export { useFormField, Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField, };
97
+ export { useFormField, Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField };
98
+
59
99
  //# sourceMappingURL=form.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/form.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/shadcn/components/ui/form.tsx"],"sourcesContent":["import type * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport * as React from \"react\";\nimport {\n\tController,\n\ttype ControllerProps,\n\ttype FieldPath,\n\ttype FieldValues,\n\tFormProvider,\n\tuseFormContext,\n\tuseFormState,\n} from \"react-hook-form\";\nimport { Label } from \"#shadcn/components/ui/label\";\nimport { cn } from \"#shadcn/lib/utils\";\n\nconst Form = FormProvider;\n\ntype FormFieldContextValue<\n\tTFieldValues extends FieldValues = FieldValues,\n\tTName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n\tname: TName;\n};\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n\t{} as FormFieldContextValue,\n);\n\nconst FormField = <\n\tTFieldValues extends FieldValues = FieldValues,\n\tTName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n\t...props\n}: ControllerProps<TFieldValues, TName>) => {\n\treturn (\n\t\t<FormFieldContext.Provider value={{ name: props.name }}>\n\t\t\t<Controller {...props} />\n\t\t</FormFieldContext.Provider>\n\t);\n};\n\nconst useFormField = () => {\n\tconst fieldContext = React.useContext(FormFieldContext);\n\tconst itemContext = React.useContext(FormItemContext);\n\tconst { getFieldState } = useFormContext();\n\tconst formState = useFormState({ name: fieldContext.name });\n\tconst fieldState = getFieldState(fieldContext.name, formState);\n\n\tif (!fieldContext) {\n\t\tthrow new Error(\"useFormField should be used within <FormField>\");\n\t}\n\n\tconst { id } = itemContext;\n\n\treturn {\n\t\tid,\n\t\tname: fieldContext.name,\n\t\tformItemId: `${id}-form-item`,\n\t\tformDescriptionId: `${id}-form-item-description`,\n\t\tformMessageId: `${id}-form-item-message`,\n\t\t...fieldState,\n\t};\n};\n\ntype FormItemContextValue = {\n\tid: string;\n};\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n\t{} as FormItemContextValue,\n);\n\nfunction FormItem({ className, ...props }: React.ComponentProps<\"div\">) {\n\tconst id = React.useId();\n\n\treturn (\n\t\t<FormItemContext.Provider value={{ id }}>\n\t\t\t<div\n\t\t\t\tdata-slot=\"form-item\"\n\t\t\t\tclassName={cn(\"grid gap-2\", className)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</FormItemContext.Provider>\n\t);\n}\n\nfunction FormLabel({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n\tconst { error, formItemId } = useFormField();\n\n\treturn (\n\t\t<Label\n\t\t\tdata-slot=\"form-label\"\n\t\t\tdata-error={!!error}\n\t\t\tclassName={cn(\"data-[error=true]:text-destructive\", className)}\n\t\t\thtmlFor={formItemId}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof Slot>) {\n\tconst { error, formItemId, formDescriptionId, formMessageId } =\n\t\tuseFormField();\n\n\treturn (\n\t\t<Slot\n\t\t\tdata-slot=\"form-control\"\n\t\t\tid={formItemId}\n\t\t\taria-describedby={\n\t\t\t\t!error\n\t\t\t\t\t? `${formDescriptionId}`\n\t\t\t\t\t: `${formDescriptionId} ${formMessageId}`\n\t\t\t}\n\t\t\taria-invalid={!!error}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n\tconst { formDescriptionId } = useFormField();\n\n\treturn (\n\t\t<p\n\t\t\tdata-slot=\"form-description\"\n\t\t\tid={formDescriptionId}\n\t\t\tclassName={cn(\"text-muted-foreground text-sm\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction FormMessage({ className, ...props }: React.ComponentProps<\"p\">) {\n\tconst { error, formMessageId } = useFormField();\n\tconst body = error ? String(error?.message ?? \"\") : props.children;\n\n\tif (!body) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<p\n\t\t\tdata-slot=\"form-message\"\n\t\t\tid={formMessageId}\n\t\t\tclassName={cn(\"text-destructive text-sm\", className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{body}\n\t\t</p>\n\t);\n}\n\nexport {\n\tuseFormField,\n\tForm,\n\tFormItem,\n\tFormLabel,\n\tFormControl,\n\tFormDescription,\n\tFormMessage,\n\tFormField,\n};\n"],"names":["Slot","React","Controller","FormProvider","useFormContext","useFormState","Label","cn","Form","FormFieldContext","createContext","FormField","props","Provider","value","name","useFormField","fieldContext","useContext","itemContext","FormItemContext","getFieldState","formState","fieldState","Error","id","formItemId","formDescriptionId","formMessageId","FormItem","className","useId","div","data-slot","FormLabel","error","data-error","htmlFor","FormControl","aria-describedby","aria-invalid","FormDescription","p","FormMessage","body","String","message","children"],"mappings":"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"}
@@ -2,30 +2,64 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { zodResolver } from "@hookform/resolvers/zod";
3
3
  import { useForm } from "react-hook-form";
4
4
  import { z } from "zod";
5
- import { Button } from "#shadcn/components/ui/button";
6
- import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, } from "#shadcn/components/ui/form";
7
- import { Input } from "#shadcn/components/ui/input";
5
+ import { Button } from "./button.js";
6
+ import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from "./form.js";
7
+ import { Input } from "./input.js";
8
8
  const formSchema = z.object({
9
9
  username: z.string().min(2, {
10
- message: "Username must be at least 2 characters.",
11
- }),
10
+ message: "Username must be at least 2 characters."
11
+ })
12
12
  });
13
13
  const meta = {
14
- title: "Component/Form",
14
+ title: "Component/Form"
15
15
  };
16
16
  export default meta;
17
17
  export const Demo = {
18
- render: () => {
18
+ render: ()=>{
19
19
  const form = useForm({
20
20
  resolver: zodResolver(formSchema),
21
21
  defaultValues: {
22
- username: "",
23
- },
22
+ username: ""
23
+ }
24
24
  });
25
25
  function onSubmit(values) {
26
26
  console.log(values);
27
27
  }
28
- return (_jsx(Form, { ...form, children: _jsxs("form", { onSubmit: form.handleSubmit(onSubmit), className: "space-y-8", children: [_jsx(FormField, { control: form.control, name: "username", render: ({ field }) => (_jsxs(FormItem, { children: [_jsx(FormLabel, { children: "Username" }), _jsx(FormControl, { children: _jsx(Input, { placeholder: "shadcn", ...field }) }), _jsx(FormDescription, { children: "This is your public display name." }), _jsx(FormMessage, {})] })) }), _jsx(Button, { type: "submit", children: "Submit" })] }) }));
29
- },
28
+ return /*#__PURE__*/ _jsx(Form, {
29
+ ...form,
30
+ children: /*#__PURE__*/ _jsxs("form", {
31
+ onSubmit: form.handleSubmit(onSubmit),
32
+ className: "space-y-8",
33
+ children: [
34
+ /*#__PURE__*/ _jsx(FormField, {
35
+ control: form.control,
36
+ name: "username",
37
+ render: ({ field })=>/*#__PURE__*/ _jsxs(FormItem, {
38
+ children: [
39
+ /*#__PURE__*/ _jsx(FormLabel, {
40
+ children: "Username"
41
+ }),
42
+ /*#__PURE__*/ _jsx(FormControl, {
43
+ children: /*#__PURE__*/ _jsx(Input, {
44
+ placeholder: "shadcn",
45
+ ...field
46
+ })
47
+ }),
48
+ /*#__PURE__*/ _jsx(FormDescription, {
49
+ children: "This is your public display name."
50
+ }),
51
+ /*#__PURE__*/ _jsx(FormMessage, {})
52
+ ]
53
+ })
54
+ }),
55
+ /*#__PURE__*/ _jsx(Button, {
56
+ type: "submit",
57
+ children: "Submit"
58
+ })
59
+ ]
60
+ })
61
+ });
62
+ }
30
63
  };
64
+
31
65
  //# sourceMappingURL=form.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.stories.js","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/form.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EACN,IAAI,EACJ,WAAW,EACX,eAAe,EACf,SAAS,EACT,QAAQ,EACR,SAAS,EACT,WAAW,GACX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAEpD,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE;QAC3B,OAAO,EAAE,yCAAyC;KAClD,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,gBAAgB;CACR,CAAC;AACjB,eAAe,IAAI,CAAC;AAIpB,MAAM,CAAC,MAAM,IAAI,GAAG;IACnB,MAAM,EAAE,GAAG,EAAE;QACZ,MAAM,IAAI,GAAG,OAAO,CAA6B;YAChD,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC;YACjC,aAAa,EAAE;gBACd,QAAQ,EAAE,EAAE;aACZ;SACD,CAAC,CAAC;QAEH,SAAS,QAAQ,CAAC,MAAkC;YACnD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,CACN,KAAC,IAAI,OAAK,IAAI,YACb,gBAAM,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAC,WAAW,aACjE,KAAC,SAAS,IACT,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,IAAI,EAAC,UAAU,EACf,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACtB,MAAC,QAAQ,eACR,KAAC,SAAS,2BAAqB,EAC/B,KAAC,WAAW,cACX,KAAC,KAAK,IAAC,WAAW,EAAC,QAAQ,KAAK,KAAK,GAAI,GAC5B,EACd,KAAC,eAAe,oDAEE,EAClB,KAAC,WAAW,KAAG,IACL,CACX,GACA,EACF,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,uBAAgB,IAC/B,GACD,CACP,CAAC;IACH,CAAC;CACe,CAAC"}
1
+ {"version":3,"sources":["../../../../../src/shadcn/components/ui/form.stories.tsx"],"sourcesContent":["import { zodResolver } from \"@hookform/resolvers/zod\";\nimport type { Meta, StoryObj } from \"@storybook/react-vite\";\nimport { useForm } from \"react-hook-form\";\nimport { z } from \"zod\";\nimport { Button } from \"#shadcn/components/ui/button\";\nimport {\n\tForm,\n\tFormControl,\n\tFormDescription,\n\tFormField,\n\tFormItem,\n\tFormLabel,\n\tFormMessage,\n} from \"#shadcn/components/ui/form\";\nimport { Input } from \"#shadcn/components/ui/input\";\n\nconst formSchema = z.object({\n\tusername: z.string().min(2, {\n\t\tmessage: \"Username must be at least 2 characters.\",\n\t}),\n});\n\nconst meta = {\n\ttitle: \"Component/Form\",\n} satisfies Meta;\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Demo = {\n\trender: () => {\n\t\tconst form = useForm<z.infer<typeof formSchema>>({\n\t\t\tresolver: zodResolver(formSchema),\n\t\t\tdefaultValues: {\n\t\t\t\tusername: \"\",\n\t\t\t},\n\t\t});\n\n\t\tfunction onSubmit(values: z.infer<typeof formSchema>) {\n\t\t\tconsole.log(values);\n\t\t}\n\n\t\treturn (\n\t\t\t<Form {...form}>\n\t\t\t\t<form onSubmit={form.handleSubmit(onSubmit)} className=\"space-y-8\">\n\t\t\t\t\t<FormField\n\t\t\t\t\t\tcontrol={form.control}\n\t\t\t\t\t\tname=\"username\"\n\t\t\t\t\t\trender={({ field }) => (\n\t\t\t\t\t\t\t<FormItem>\n\t\t\t\t\t\t\t\t<FormLabel>Username</FormLabel>\n\t\t\t\t\t\t\t\t<FormControl>\n\t\t\t\t\t\t\t\t\t<Input placeholder=\"shadcn\" {...field} />\n\t\t\t\t\t\t\t\t</FormControl>\n\t\t\t\t\t\t\t\t<FormDescription>\n\t\t\t\t\t\t\t\t\tThis is your public display name.\n\t\t\t\t\t\t\t\t</FormDescription>\n\t\t\t\t\t\t\t\t<FormMessage />\n\t\t\t\t\t\t\t</FormItem>\n\t\t\t\t\t\t)}\n\t\t\t\t\t/>\n\t\t\t\t\t<Button type=\"submit\">Submit</Button>\n\t\t\t\t</form>\n\t\t\t</Form>\n\t\t);\n\t},\n} satisfies Story;\n"],"names":["zodResolver","useForm","z","Button","Form","FormControl","FormDescription","FormField","FormItem","FormLabel","FormMessage","Input","formSchema","object","username","string","min","message","meta","title","Demo","render","form","resolver","defaultValues","onSubmit","values","console","log","handleSubmit","className","control","name","field","placeholder","type"],"mappings":";AAAA,SAASA,WAAW,QAAQ,0BAA0B;AAEtD,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,CAAC,QAAQ,MAAM;AACxB,SAASC,MAAM,QAAQ,cAA+B;AACtD,SACCC,IAAI,EACJC,WAAW,EACXC,eAAe,EACfC,SAAS,EACTC,QAAQ,EACRC,SAAS,EACTC,WAAW,QACL,YAA6B;AACpC,SAASC,KAAK,QAAQ,aAA8B;AAEpD,MAAMC,aAAaV,EAAEW,MAAM,CAAC;IAC3BC,UAAUZ,EAAEa,MAAM,GAAGC,GAAG,CAAC,GAAG;QAC3BC,SAAS;IACV;AACD;AAEA,MAAMC,OAAO;IACZC,OAAO;AACR;AACA,eAAeD,KAAK;AAIpB,OAAO,MAAME,OAAO;IACnBC,QAAQ;QACP,MAAMC,OAAOrB,QAAoC;YAChDsB,UAAUvB,YAAYY;YACtBY,eAAe;gBACdV,UAAU;YACX;QACD;QAEA,SAASW,SAASC,MAAkC;YACnDC,QAAQC,GAAG,CAACF;QACb;QAEA,qBACC,KAACtB;YAAM,GAAGkB,IAAI;sBACb,cAAA,MAACA;gBAAKG,UAAUH,KAAKO,YAAY,CAACJ;gBAAWK,WAAU;;kCACtD,KAACvB;wBACAwB,SAAST,KAAKS,OAAO;wBACrBC,MAAK;wBACLX,QAAQ,CAAC,EAAEY,KAAK,EAAE,iBACjB,MAACzB;;kDACA,KAACC;kDAAU;;kDACX,KAACJ;kDACA,cAAA,KAACM;4CAAMuB,aAAY;4CAAU,GAAGD,KAAK;;;kDAEtC,KAAC3B;kDAAgB;;kDAGjB,KAACI;;;;kCAIJ,KAACP;wBAAOgC,MAAK;kCAAS;;;;;IAI1B;AACD,EAAkB"}