@arolariu/components 1.1.0 → 2.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 (325) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/components/ui/accordion.js +3 -3
  3. package/dist/components/ui/accordion.js.map +1 -1
  4. package/dist/components/ui/accordion_module.css.map +1 -1
  5. package/dist/components/ui/alert-dialog.js +8 -8
  6. package/dist/components/ui/alert-dialog.js.map +1 -1
  7. package/dist/components/ui/alert-dialog_module.css +1 -1
  8. package/dist/components/ui/alert-dialog_module.css.map +1 -1
  9. package/dist/components/ui/alert.js +4 -4
  10. package/dist/components/ui/alert.js.map +1 -1
  11. package/dist/components/ui/alert_module.css.map +1 -1
  12. package/dist/components/ui/aspect-ratio.js +2 -2
  13. package/dist/components/ui/aspect-ratio.js.map +1 -1
  14. package/dist/components/ui/aspect-ratio_module.css.map +1 -1
  15. package/dist/components/ui/async-boundary.js +2 -2
  16. package/dist/components/ui/async-boundary.js.map +1 -1
  17. package/dist/components/ui/avatar.js +4 -4
  18. package/dist/components/ui/avatar.js.map +1 -1
  19. package/dist/components/ui/avatar_module.css.map +1 -1
  20. package/dist/components/ui/background-beams.js +3 -3
  21. package/dist/components/ui/background-beams.js.map +1 -1
  22. package/dist/components/ui/background-beams_module.css.map +1 -1
  23. package/dist/components/ui/badge.js +2 -2
  24. package/dist/components/ui/badge.js.map +1 -1
  25. package/dist/components/ui/badge_module.css.map +1 -1
  26. package/dist/components/ui/breadcrumb.js +10 -10
  27. package/dist/components/ui/breadcrumb.js.map +1 -1
  28. package/dist/components/ui/breadcrumb_module.css.map +1 -1
  29. package/dist/components/ui/bubble-background.js +5 -5
  30. package/dist/components/ui/bubble-background.js.map +1 -1
  31. package/dist/components/ui/bubble-background_module.css.map +1 -1
  32. package/dist/components/ui/button-group.js +6 -6
  33. package/dist/components/ui/button-group.js.map +1 -1
  34. package/dist/components/ui/button-group_module.css.map +1 -1
  35. package/dist/components/ui/button.js +4 -4
  36. package/dist/components/ui/button.js.map +1 -1
  37. package/dist/components/ui/button_module.css.map +1 -1
  38. package/dist/components/ui/calendar.d.ts +2 -1
  39. package/dist/components/ui/calendar.d.ts.map +1 -1
  40. package/dist/components/ui/calendar.js +4 -4
  41. package/dist/components/ui/calendar.js.map +1 -1
  42. package/dist/components/ui/calendar_module.css.map +1 -1
  43. package/dist/components/ui/card-skeleton.js +2 -2
  44. package/dist/components/ui/card-skeleton.js.map +1 -1
  45. package/dist/components/ui/card-skeleton_module.css.map +1 -1
  46. package/dist/components/ui/card.js +8 -8
  47. package/dist/components/ui/card.js.map +1 -1
  48. package/dist/components/ui/card_module.css.map +1 -1
  49. package/dist/components/ui/carousel.js +16 -16
  50. package/dist/components/ui/carousel.js.map +1 -1
  51. package/dist/components/ui/carousel_module.css +1 -1
  52. package/dist/components/ui/carousel_module.css.map +1 -1
  53. package/dist/components/ui/chart.d.ts +6 -3
  54. package/dist/components/ui/chart.d.ts.map +1 -1
  55. package/dist/components/ui/chart.js +70 -136
  56. package/dist/components/ui/chart.js.map +1 -1
  57. package/dist/components/ui/chart_module.css.map +1 -1
  58. package/dist/components/ui/checkbox-group.js +2 -2
  59. package/dist/components/ui/checkbox-group.js.map +1 -1
  60. package/dist/components/ui/checkbox-group_module.css.map +1 -1
  61. package/dist/components/ui/checkbox.js +2 -2
  62. package/dist/components/ui/checkbox.js.map +1 -1
  63. package/dist/components/ui/checkbox_module.css.map +1 -1
  64. package/dist/components/ui/collapsible.js +4 -4
  65. package/dist/components/ui/collapsible.js.map +1 -1
  66. package/dist/components/ui/collapsible_module.css.map +1 -1
  67. package/dist/components/ui/combobox.js +13 -13
  68. package/dist/components/ui/combobox.js.map +1 -1
  69. package/dist/components/ui/combobox_module.css.map +1 -1
  70. package/dist/components/ui/command.js +40 -40
  71. package/dist/components/ui/command.js.map +1 -1
  72. package/dist/components/ui/command_module.css +1 -1
  73. package/dist/components/ui/command_module.css.map +1 -1
  74. package/dist/components/ui/context-menu.js +6 -6
  75. package/dist/components/ui/context-menu.js.map +1 -1
  76. package/dist/components/ui/context-menu_module.css.map +1 -1
  77. package/dist/components/ui/copy-button.js +6 -6
  78. package/dist/components/ui/copy-button.js.map +1 -1
  79. package/dist/components/ui/copy-button_module.css.map +1 -1
  80. package/dist/components/ui/counting-number.js +6 -6
  81. package/dist/components/ui/counting-number.js.map +1 -1
  82. package/dist/components/ui/counting-number_module.css.map +1 -1
  83. package/dist/components/ui/dialog.js +6 -6
  84. package/dist/components/ui/dialog.js.map +1 -1
  85. package/dist/components/ui/dialog_module.css +1 -1
  86. package/dist/components/ui/dialog_module.css.map +1 -1
  87. package/dist/components/ui/dot-background_module.css.map +1 -1
  88. package/dist/components/ui/drawer.js +5 -5
  89. package/dist/components/ui/drawer.js.map +1 -1
  90. package/dist/components/ui/drawer_module.css.map +1 -1
  91. package/dist/components/ui/dropdown-menu.js +6 -6
  92. package/dist/components/ui/dropdown-menu.js.map +1 -1
  93. package/dist/components/ui/dropdown-menu_module.css.map +1 -1
  94. package/dist/components/ui/dropdrawer.js +52 -52
  95. package/dist/components/ui/dropdrawer.js.map +1 -1
  96. package/dist/components/ui/dropdrawer_module.css.map +1 -1
  97. package/dist/components/ui/empty.js +7 -7
  98. package/dist/components/ui/empty.js.map +1 -1
  99. package/dist/components/ui/empty_module.css.map +1 -1
  100. package/dist/components/ui/error-boundary.js +2 -2
  101. package/dist/components/ui/error-boundary.js.map +1 -1
  102. package/dist/components/ui/error-boundary_module.css.map +1 -1
  103. package/dist/components/ui/field.js +12 -12
  104. package/dist/components/ui/field.js.map +1 -1
  105. package/dist/components/ui/field_module.css.map +1 -1
  106. package/dist/components/ui/fireworks-background.js +6 -6
  107. package/dist/components/ui/fireworks-background.js.map +1 -1
  108. package/dist/components/ui/fireworks-background_module.css.map +1 -1
  109. package/dist/components/ui/flip-button.js +5 -5
  110. package/dist/components/ui/flip-button.js.map +1 -1
  111. package/dist/components/ui/flip-button_module.css.map +1 -1
  112. package/dist/components/ui/focus-scope.js +6 -6
  113. package/dist/components/ui/focus-scope.js.map +1 -1
  114. package/dist/components/ui/focus-scope_module.css.map +1 -1
  115. package/dist/components/ui/form-skeleton.js +2 -2
  116. package/dist/components/ui/form-skeleton.js.map +1 -1
  117. package/dist/components/ui/form-skeleton_module.css.map +1 -1
  118. package/dist/components/ui/form.d.ts +3 -3
  119. package/dist/components/ui/form.d.ts.map +1 -1
  120. package/dist/components/ui/form.js +13 -13
  121. package/dist/components/ui/form.js.map +1 -1
  122. package/dist/components/ui/form_module.css.map +1 -1
  123. package/dist/components/ui/gradient-background.js +2 -2
  124. package/dist/components/ui/gradient-background.js.map +1 -1
  125. package/dist/components/ui/gradient-background_module.css.map +1 -1
  126. package/dist/components/ui/gradient-text.js +2 -2
  127. package/dist/components/ui/gradient-text.js.map +1 -1
  128. package/dist/components/ui/gradient-text_module.css.map +1 -1
  129. package/dist/components/ui/highlight-text.js +4 -4
  130. package/dist/components/ui/highlight-text.js.map +1 -1
  131. package/dist/components/ui/highlight-text_module.css.map +1 -1
  132. package/dist/components/ui/hole-background.js +21 -21
  133. package/dist/components/ui/hole-background.js.map +1 -1
  134. package/dist/components/ui/hole-background_module.css.map +1 -1
  135. package/dist/components/ui/hover-card.js +3 -3
  136. package/dist/components/ui/hover-card.js.map +1 -1
  137. package/dist/components/ui/hover-card_module.css.map +1 -1
  138. package/dist/components/ui/input-group.js +7 -7
  139. package/dist/components/ui/input-group.js.map +1 -1
  140. package/dist/components/ui/input-group_module.css.map +1 -1
  141. package/dist/components/ui/input-otp.d.ts +3 -3
  142. package/dist/components/ui/input-otp.d.ts.map +1 -1
  143. package/dist/components/ui/input-otp.js +6 -6
  144. package/dist/components/ui/input-otp.js.map +1 -1
  145. package/dist/components/ui/input-otp_module.css.map +1 -1
  146. package/dist/components/ui/input.js +2 -2
  147. package/dist/components/ui/input.js.map +1 -1
  148. package/dist/components/ui/input_module.css.map +1 -1
  149. package/dist/components/ui/item.js +13 -13
  150. package/dist/components/ui/item.js.map +1 -1
  151. package/dist/components/ui/item_module.css.map +1 -1
  152. package/dist/components/ui/kbd.js +3 -3
  153. package/dist/components/ui/kbd.js.map +1 -1
  154. package/dist/components/ui/kbd_module.css.map +1 -1
  155. package/dist/components/ui/label.js +2 -2
  156. package/dist/components/ui/label.js.map +1 -1
  157. package/dist/components/ui/label_module.css.map +1 -1
  158. package/dist/components/ui/list-skeleton.js +2 -2
  159. package/dist/components/ui/list-skeleton.js.map +1 -1
  160. package/dist/components/ui/list-skeleton_module.css.map +1 -1
  161. package/dist/components/ui/loading-overlay.js +2 -2
  162. package/dist/components/ui/loading-overlay.js.map +1 -1
  163. package/dist/components/ui/loading-overlay_module.css.map +1 -1
  164. package/dist/components/ui/menubar.js +4 -4
  165. package/dist/components/ui/menubar.js.map +1 -1
  166. package/dist/components/ui/menubar_module.css.map +1 -1
  167. package/dist/components/ui/meter.js +5 -5
  168. package/dist/components/ui/meter.js.map +1 -1
  169. package/dist/components/ui/meter_module.css.map +1 -1
  170. package/dist/components/ui/navigation-menu.js +5 -5
  171. package/dist/components/ui/navigation-menu.js.map +1 -1
  172. package/dist/components/ui/navigation-menu_module.css +1 -1
  173. package/dist/components/ui/navigation-menu_module.css.map +1 -1
  174. package/dist/components/ui/number-field.js +3 -3
  175. package/dist/components/ui/number-field.js.map +1 -1
  176. package/dist/components/ui/number-field_module.css.map +1 -1
  177. package/dist/components/ui/pagination.js +8 -8
  178. package/dist/components/ui/pagination.js.map +1 -1
  179. package/dist/components/ui/pagination_module.css.map +1 -1
  180. package/dist/components/ui/popover.js +5 -5
  181. package/dist/components/ui/popover.js.map +1 -1
  182. package/dist/components/ui/popover_module.css.map +1 -1
  183. package/dist/components/ui/progress.js +2 -2
  184. package/dist/components/ui/progress.js.map +1 -1
  185. package/dist/components/ui/progress_module.css.map +1 -1
  186. package/dist/components/ui/radio-group.js +3 -3
  187. package/dist/components/ui/radio-group.js.map +1 -1
  188. package/dist/components/ui/radio-group_module.css.map +1 -1
  189. package/dist/components/ui/resizable.d.ts +13 -29
  190. package/dist/components/ui/resizable.d.ts.map +1 -1
  191. package/dist/components/ui/resizable.js +8 -7
  192. package/dist/components/ui/resizable.js.map +1 -1
  193. package/dist/components/ui/resizable_module.css.map +1 -1
  194. package/dist/components/ui/ripple-button.js +9 -9
  195. package/dist/components/ui/ripple-button.js.map +1 -1
  196. package/dist/components/ui/ripple-button_module.css.map +1 -1
  197. package/dist/components/ui/scratcher_module.css.map +1 -1
  198. package/dist/components/ui/scroll-area.js +2 -2
  199. package/dist/components/ui/scroll-area.js.map +1 -1
  200. package/dist/components/ui/scroll-area_module.css.map +1 -1
  201. package/dist/components/ui/select.js +4 -4
  202. package/dist/components/ui/select.js.map +1 -1
  203. package/dist/components/ui/select_module.css.map +1 -1
  204. package/dist/components/ui/separator.js +2 -2
  205. package/dist/components/ui/separator.js.map +1 -1
  206. package/dist/components/ui/separator_module.css.map +1 -1
  207. package/dist/components/ui/sheet.js +6 -6
  208. package/dist/components/ui/sheet.js.map +1 -1
  209. package/dist/components/ui/sheet_module.css.map +1 -1
  210. package/dist/components/ui/sidebar.js +36 -36
  211. package/dist/components/ui/sidebar.js.map +1 -1
  212. package/dist/components/ui/sidebar_module.css.map +1 -1
  213. package/dist/components/ui/skeleton.js +2 -2
  214. package/dist/components/ui/skeleton.js.map +1 -1
  215. package/dist/components/ui/skeleton_module.css.map +1 -1
  216. package/dist/components/ui/slider.js +2 -2
  217. package/dist/components/ui/slider.js.map +1 -1
  218. package/dist/components/ui/slider_module.css.map +1 -1
  219. package/dist/components/ui/spinner.js +2 -2
  220. package/dist/components/ui/spinner.js.map +1 -1
  221. package/dist/components/ui/spinner_module.css.map +1 -1
  222. package/dist/components/ui/stepper.js +2 -2
  223. package/dist/components/ui/stepper.js.map +1 -1
  224. package/dist/components/ui/stepper_module.css.map +1 -1
  225. package/dist/components/ui/switch.js +2 -2
  226. package/dist/components/ui/switch.js.map +1 -1
  227. package/dist/components/ui/switch_module.css.map +1 -1
  228. package/dist/components/ui/table-skeleton.js +2 -2
  229. package/dist/components/ui/table-skeleton.js.map +1 -1
  230. package/dist/components/ui/table-skeleton_module.css.map +1 -1
  231. package/dist/components/ui/table.js +9 -9
  232. package/dist/components/ui/table.js.map +1 -1
  233. package/dist/components/ui/table_module.css.map +1 -1
  234. package/dist/components/ui/tabs.js +3 -3
  235. package/dist/components/ui/tabs.js.map +1 -1
  236. package/dist/components/ui/tabs_module.css.map +1 -1
  237. package/dist/components/ui/textarea.js +2 -2
  238. package/dist/components/ui/textarea.js.map +1 -1
  239. package/dist/components/ui/textarea_module.css.map +1 -1
  240. package/dist/components/ui/timeline.js +5 -5
  241. package/dist/components/ui/timeline.js.map +1 -1
  242. package/dist/components/ui/timeline_module.css.map +1 -1
  243. package/dist/components/ui/{sonner.d.ts → toast.d.ts} +10 -2
  244. package/dist/components/ui/toast.d.ts.map +1 -0
  245. package/dist/components/ui/{sonner.js → toast.js} +40 -40
  246. package/dist/components/ui/toast.js.map +1 -0
  247. package/dist/components/ui/toast.module.js +34 -0
  248. package/dist/components/ui/toast.module.js.map +1 -0
  249. package/dist/components/ui/{sonner_module.css → toast_module.css} +35 -35
  250. package/dist/components/ui/toast_module.css.map +1 -0
  251. package/dist/components/ui/toggle-group.js +5 -5
  252. package/dist/components/ui/toggle-group.js.map +1 -1
  253. package/dist/components/ui/toggle-group_module.css.map +1 -1
  254. package/dist/components/ui/toggle.js +2 -2
  255. package/dist/components/ui/toggle.js.map +1 -1
  256. package/dist/components/ui/toggle_module.css.map +1 -1
  257. package/dist/components/ui/toolbar.js +6 -6
  258. package/dist/components/ui/toolbar.js.map +1 -1
  259. package/dist/components/ui/toolbar_module.css.map +1 -1
  260. package/dist/components/ui/tooltip.js +4 -4
  261. package/dist/components/ui/tooltip.js.map +1 -1
  262. package/dist/components/ui/tooltip_module.css.map +1 -1
  263. package/dist/components/ui/typewriter.js +4 -4
  264. package/dist/components/ui/typewriter.js.map +1 -1
  265. package/dist/components/ui/typewriter_module.css.map +1 -1
  266. package/dist/components/ui/visually-hidden.js +2 -2
  267. package/dist/components/ui/visually-hidden.js.map +1 -1
  268. package/dist/components/ui/visually-hidden_module.css.map +1 -1
  269. package/dist/hooks/useAnnounce.js +5 -5
  270. package/dist/hooks/useAnnounce.js.map +1 -1
  271. package/dist/hooks/useClipboard.js +6 -6
  272. package/dist/hooks/useClipboard.js.map +1 -1
  273. package/dist/hooks/useControllableState.js +3 -3
  274. package/dist/hooks/useControllableState.js.map +1 -1
  275. package/dist/hooks/useDebounce.js +3 -3
  276. package/dist/hooks/useDebounce.js.map +1 -1
  277. package/dist/hooks/useEventCallback.js +4 -4
  278. package/dist/hooks/useEventCallback.js.map +1 -1
  279. package/dist/hooks/useFocusManager.js +6 -6
  280. package/dist/hooks/useFocusManager.js.map +1 -1
  281. package/dist/hooks/useFocusVisible.js +5 -5
  282. package/dist/hooks/useFocusVisible.js.map +1 -1
  283. package/dist/hooks/useId.js +4 -4
  284. package/dist/hooks/useId.js.map +1 -1
  285. package/dist/hooks/useIntersectionObserver.js +3 -3
  286. package/dist/hooks/useIntersectionObserver.js.map +1 -1
  287. package/dist/hooks/useInterval.js +4 -4
  288. package/dist/hooks/useInterval.js.map +1 -1
  289. package/dist/hooks/useLocalStorage.js +4 -4
  290. package/dist/hooks/useLocalStorage.js.map +1 -1
  291. package/dist/hooks/useMediaQuery.js +3 -3
  292. package/dist/hooks/useMediaQuery.js.map +1 -1
  293. package/dist/hooks/useMergedRefs.js +2 -2
  294. package/dist/hooks/useMergedRefs.js.map +1 -1
  295. package/dist/hooks/useOnClickOutside.js +2 -2
  296. package/dist/hooks/useOnClickOutside.js.map +1 -1
  297. package/dist/hooks/usePrevious.js +3 -3
  298. package/dist/hooks/usePrevious.js.map +1 -1
  299. package/dist/hooks/useThrottle.js +7 -7
  300. package/dist/hooks/useThrottle.js.map +1 -1
  301. package/dist/hooks/useTimeout.js +4 -4
  302. package/dist/hooks/useTimeout.js.map +1 -1
  303. package/dist/index.css.map +1 -1
  304. package/dist/index.d.ts +3 -3
  305. package/dist/index.d.ts.map +1 -1
  306. package/dist/index.js +1 -1
  307. package/dist/motion/Collapse.js +2 -2
  308. package/dist/motion/Collapse.js.map +1 -1
  309. package/dist/motion/Collapse_module.css.map +1 -1
  310. package/package.json +7 -8
  311. package/src/components/ui/calendar.tsx +2 -1
  312. package/src/components/ui/chart.tsx +2 -2
  313. package/src/components/ui/form.tsx +28 -3
  314. package/src/components/ui/input-otp.tsx +3 -3
  315. package/src/components/ui/resizable.tsx +15 -18
  316. package/src/components/ui/{sonner.module.css → toast.module.css} +1 -1
  317. package/src/components/ui/{sonner.tsx → toast.tsx} +2 -2
  318. package/src/index.ts +4 -4
  319. package/dist/components/ui/sonner.d.ts.map +0 -1
  320. package/dist/components/ui/sonner.js.map +0 -1
  321. package/dist/components/ui/sonner.module.js +0 -34
  322. package/dist/components/ui/sonner.module.js.map +0 -1
  323. package/dist/components/ui/sonner_module.css.map +0 -1
  324. package/dist/rslib-runtime.js +0 -39
  325. package/dist/rslib-runtime.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"components/ui/menubar.js","sources":["../../../src/components/ui/menubar.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {Menu as BaseMenu} from \"@base-ui/react/menu\";\r\nimport {Menubar as BaseMenubar} from \"@base-ui/react/menubar\";\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport {Check, ChevronRight, Circle} from \"lucide-react\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./menubar.module.css\";\r\n\r\ninterface MenubarSubTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.SubmenuTrigger>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Applies inset spacing to align nested content.\r\n * @default false\r\n */\r\n inset?: boolean;\r\n}\r\ninterface MenubarContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Positioner>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Item>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Applies inset spacing to align nested content.\r\n * @default false\r\n */\r\n inset?: boolean;\r\n}\r\ninterface MenubarCheckboxItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.CheckboxItem>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarRadioItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.RadioItem>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarLabelProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.GroupLabel>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Applies inset spacing to align nested content.\r\n * @default false\r\n */\r\n inset?: boolean;\r\n}\r\ninterface MenubarSeparatorProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Separator>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarShortcutProps extends React.ComponentPropsWithRef<\"span\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Overrides the default rendered element while preserving component behavior.\r\n * @default undefined\r\n */\r\n render?: useRender.RenderProp<Record<string, never>>;\r\n /**\r\n * Enables child element composition instead of rendering the default wrapper.\r\n * @default false\r\n * @deprecated Prefer Base UI's `render` prop.\r\n */\r\n asChild?: boolean;\r\n}\r\n\r\n/**\r\n * Renders the menubar menu.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarMenu>Content</MenubarMenu>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarMenu: typeof BaseMenu.Root & {displayName?: string} = BaseMenu.Root;\r\n/**\r\n * Renders the menubar group.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarGroup>Content</MenubarGroup>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarGroup = BaseMenu.Group;\r\n/**\r\n * Provides the menubar portal container.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarPortal>Content</MenubarPortal>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarPortal = BaseMenu.Portal;\r\n/**\r\n * Coordinates the menubar radio group.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarRadioGroup>Content</MenubarRadioGroup>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarRadioGroup = BaseMenu.RadioGroup;\r\n/**\r\n * Coordinates the menubar sub.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSub>Content</MenubarSub>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarSub: typeof BaseMenu.SubmenuRoot & {displayName?: string} = BaseMenu.SubmenuRoot;\r\n\r\n/**\r\n * Coordinates menubar state and accessibility behavior.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <Menubar>Content</Menubar>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction Menubar(props: Readonly<Menubar.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenubar\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenubar>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar trigger.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarTrigger>Content</MenubarTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarTrigger = React.forwardRef<HTMLButtonElement, MenubarTrigger.Props>(\r\n (props: Readonly<MenubarTrigger.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Trigger\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.trigger, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Trigger>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the menubar sub trigger.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSubTrigger>Content</MenubarSubTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarSubTrigger(props: Readonly<MenubarSubTrigger.Props>): React.ReactElement {\r\n const {className, children, inset = false, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.SubmenuTrigger\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, styles.subTrigger, inset && styles.inset, className)}, {}),\r\n })}>\r\n {children}\r\n <ChevronRight className={styles.subTriggerIcon} />\r\n </BaseMenu.SubmenuTrigger>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar sub content.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSubContent>Content</MenubarSubContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarSubContent(props: Readonly<MenubarContent.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Positioner\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.positioner}, {}),\r\n })}>\r\n <BaseMenu.Popup\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.content, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Popup>\r\n </BaseMenu.Positioner>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar content.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarContent>Content</MenubarContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarContent = React.forwardRef<React.ComponentRef<typeof BaseMenu.Popup>, MenubarContent.Props>(\r\n (props: Readonly<MenubarContent.Props>, ref): React.ReactElement => {\r\n const {alignOffset = -4, className, children, render, sideOffset = 8, ...otherProps} = props;\r\n\r\n return (\r\n <MenubarPortal>\r\n <BaseMenu.Positioner\r\n alignOffset={alignOffset}\r\n sideOffset={sideOffset}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.positioner}, {}),\r\n })}>\r\n <BaseMenu.Popup\r\n ref={ref}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.content, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Popup>\r\n </BaseMenu.Positioner>\r\n </MenubarPortal>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the menubar item.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarItem>Content</MenubarItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarItem(props: Readonly<MenubarItem.Props>): React.ReactElement {\r\n const {className, children, inset = false, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Item\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, inset && styles.inset, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Item>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar checkbox item.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarCheckboxItem>Content</MenubarCheckboxItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarCheckboxItem(props: Readonly<MenubarCheckboxItem.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.CheckboxItem\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, styles.indicatorItem, className)}, {}),\r\n })}>\r\n <span className={styles.indicatorSlot}>\r\n <BaseMenu.CheckboxItemIndicator>\r\n <Check className={styles.indicatorIcon} />\r\n </BaseMenu.CheckboxItemIndicator>\r\n </span>\r\n {children}\r\n </BaseMenu.CheckboxItem>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar radio item.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarRadioItem>Content</MenubarRadioItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarRadioItem(props: Readonly<MenubarRadioItem.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.RadioItem\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, styles.indicatorItem, className)}, {}),\r\n })}>\r\n <span className={styles.indicatorSlot}>\r\n <BaseMenu.RadioItemIndicator>\r\n <Circle className={styles.radioIndicatorIcon} />\r\n </BaseMenu.RadioItemIndicator>\r\n </span>\r\n {children}\r\n </BaseMenu.RadioItem>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar label.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarLabel>Content</MenubarLabel>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarLabel(props: Readonly<MenubarLabel.Props>): React.ReactElement {\r\n const {className, children, inset = false, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.GroupLabel\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.label, inset && styles.inset, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.GroupLabel>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar separator.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSeparator>Content</MenubarSeparator>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarSeparator(props: Readonly<MenubarSeparator.Props>): React.ReactElement {\r\n const {className, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Separator\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.separator, className)}, {}),\r\n })}\r\n />\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar shortcut.\r\n *\r\n * @remarks\r\n * - Renders a `<span>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarShortcut>Content</MenubarShortcut>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarShortcut(props: Readonly<MenubarShortcut.Props>): React.ReactElement {\r\n // eslint-disable-next-line sonarjs/deprecation -- backward-compatible asChild API\r\n const {asChild = false, children, className, render, ...otherProps} = props;\r\n const renderProp = asChild && React.isValidElement(children) ? children : render;\r\n\r\n return useRender({\r\n defaultTagName: \"span\",\r\n render: renderProp as never,\r\n props: mergeProps({className: cn(styles.shortcut, className)}, otherProps, {\r\n children: renderProp ? undefined : children,\r\n }),\r\n });\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace Menubar {\r\n export type Props = Omit<React.ComponentPropsWithRef<typeof BaseMenubar>, \"className\"> & {className?: string};\r\n export type State = BaseMenubar.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarTrigger {\r\n export type Props = Omit<React.ComponentPropsWithRef<typeof BaseMenu.Trigger>, \"className\"> & {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n };\r\n export type State = BaseMenu.Trigger.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarSubTrigger {\r\n export type Props = MenubarSubTriggerProps;\r\n export type State = BaseMenu.SubmenuTrigger.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarContent {\r\n export type Props = MenubarContentProps;\r\n export type State = BaseMenu.Popup.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarSubContent {\r\n export type Props = MenubarContentProps;\r\n export type State = BaseMenu.Popup.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarItem {\r\n export type Props = MenubarItemProps;\r\n export type State = BaseMenu.Item.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarCheckboxItem {\r\n export type Props = MenubarCheckboxItemProps;\r\n export type State = BaseMenu.CheckboxItem.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarRadioItem {\r\n export type Props = MenubarRadioItemProps;\r\n export type State = BaseMenu.RadioItem.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarLabel {\r\n export type Props = MenubarLabelProps;\r\n export type State = BaseMenu.GroupLabel.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarSeparator {\r\n export type Props = MenubarSeparatorProps;\r\n export type State = BaseMenu.Separator.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarShortcut {\r\n export type Props = MenubarShortcutProps;\r\n export type State = Record<string, never>;\r\n}\r\n\r\nMenubarMenu.displayName = \"MenubarMenu\";\r\nMenubarGroup.displayName = \"MenubarGroup\";\r\nMenubarPortal.displayName = \"MenubarPortal\";\r\nMenubarRadioGroup.displayName = \"MenubarRadioGroup\";\r\nMenubarSub.displayName = \"MenubarSub\";\r\nMenubar.displayName = \"Menubar\";\r\nMenubarTrigger.displayName = \"MenubarTrigger\";\r\nMenubarSubTrigger.displayName = \"MenubarSubTrigger\";\r\nMenubarSubContent.displayName = \"MenubarSubContent\";\r\nMenubarContent.displayName = \"MenubarContent\";\r\nMenubarItem.displayName = \"MenubarItem\";\r\nMenubarCheckboxItem.displayName = \"MenubarCheckboxItem\";\r\nMenubarRadioItem.displayName = \"MenubarRadioItem\";\r\nMenubarLabel.displayName = \"MenubarLabel\";\r\nMenubarSeparator.displayName = \"MenubarSeparator\";\r\nMenubarShortcut.displayName = \"MenubarShortcut\";\r\n\r\nexport {\r\n Menubar,\r\n MenubarCheckboxItem,\r\n MenubarContent,\r\n MenubarGroup,\r\n MenubarItem,\r\n MenubarLabel,\r\n MenubarMenu,\r\n MenubarPortal,\r\n MenubarRadioGroup,\r\n MenubarRadioItem,\r\n MenubarSeparator,\r\n MenubarShortcut,\r\n MenubarSub,\r\n MenubarSubContent,\r\n MenubarSubTrigger,\r\n MenubarTrigger,\r\n};\r\n"],"names":["MenubarMenu","BaseMenu","MenubarGroup","MenubarPortal","MenubarRadioGroup","MenubarSub","Menubar","props","className","children","render","otherProps","BaseMenubar","useRender","mergeProps","cn","styles","MenubarTrigger","React","ref","MenubarSubTrigger","inset","ChevronRight","MenubarSubContent","MenubarContent","alignOffset","sideOffset","MenubarItem","MenubarCheckboxItem","Check","MenubarRadioItem","Circle","MenubarLabel","MenubarSeparator","MenubarShortcut","asChild","renderProp","undefined"],"mappings":"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"}
1
+ {"version":3,"file":"components/ui/menubar.js","sources":["../../../src/components/ui/menubar.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {Menu as BaseMenu} from \"@base-ui/react/menu\";\r\nimport {Menubar as BaseMenubar} from \"@base-ui/react/menubar\";\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport {Check, ChevronRight, Circle} from \"lucide-react\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./menubar.module.css\";\r\n\r\ninterface MenubarSubTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.SubmenuTrigger>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Applies inset spacing to align nested content.\r\n * @default false\r\n */\r\n inset?: boolean;\r\n}\r\ninterface MenubarContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Positioner>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Item>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Applies inset spacing to align nested content.\r\n * @default false\r\n */\r\n inset?: boolean;\r\n}\r\ninterface MenubarCheckboxItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.CheckboxItem>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarRadioItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.RadioItem>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarLabelProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.GroupLabel>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Applies inset spacing to align nested content.\r\n * @default false\r\n */\r\n inset?: boolean;\r\n}\r\ninterface MenubarSeparatorProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Separator>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\ninterface MenubarShortcutProps extends React.ComponentPropsWithRef<\"span\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Overrides the default rendered element while preserving component behavior.\r\n * @default undefined\r\n */\r\n render?: useRender.RenderProp<Record<string, never>>;\r\n /**\r\n * Enables child element composition instead of rendering the default wrapper.\r\n * @default false\r\n * @deprecated Prefer Base UI's `render` prop.\r\n */\r\n asChild?: boolean;\r\n}\r\n\r\n/**\r\n * Renders the menubar menu.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarMenu>Content</MenubarMenu>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarMenu: typeof BaseMenu.Root & {displayName?: string} = BaseMenu.Root;\r\n/**\r\n * Renders the menubar group.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarGroup>Content</MenubarGroup>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarGroup = BaseMenu.Group;\r\n/**\r\n * Provides the menubar portal container.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarPortal>Content</MenubarPortal>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarPortal = BaseMenu.Portal;\r\n/**\r\n * Coordinates the menubar radio group.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarRadioGroup>Content</MenubarRadioGroup>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarRadioGroup = BaseMenu.RadioGroup;\r\n/**\r\n * Coordinates the menubar sub.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSub>Content</MenubarSub>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarSub: typeof BaseMenu.SubmenuRoot & {displayName?: string} = BaseMenu.SubmenuRoot;\r\n\r\n/**\r\n * Coordinates menubar state and accessibility behavior.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <Menubar>Content</Menubar>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction Menubar(props: Readonly<Menubar.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenubar\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenubar>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar trigger.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarTrigger>Content</MenubarTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarTrigger = React.forwardRef<HTMLButtonElement, MenubarTrigger.Props>(\r\n (props: Readonly<MenubarTrigger.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Trigger\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.trigger, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Trigger>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the menubar sub trigger.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSubTrigger>Content</MenubarSubTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarSubTrigger(props: Readonly<MenubarSubTrigger.Props>): React.ReactElement {\r\n const {className, children, inset = false, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.SubmenuTrigger\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, styles.subTrigger, inset && styles.inset, className)}, {}),\r\n })}>\r\n {children}\r\n <ChevronRight className={styles.subTriggerIcon} />\r\n </BaseMenu.SubmenuTrigger>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar sub content.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSubContent>Content</MenubarSubContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarSubContent(props: Readonly<MenubarContent.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Positioner\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.positioner}, {}),\r\n })}>\r\n <BaseMenu.Popup\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.content, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Popup>\r\n </BaseMenu.Positioner>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar content.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarContent>Content</MenubarContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nconst MenubarContent = React.forwardRef<React.ComponentRef<typeof BaseMenu.Popup>, MenubarContent.Props>(\r\n (props: Readonly<MenubarContent.Props>, ref): React.ReactElement => {\r\n const {alignOffset = -4, className, children, render, sideOffset = 8, ...otherProps} = props;\r\n\r\n return (\r\n <MenubarPortal>\r\n <BaseMenu.Positioner\r\n alignOffset={alignOffset}\r\n sideOffset={sideOffset}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.positioner}, {}),\r\n })}>\r\n <BaseMenu.Popup\r\n ref={ref}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.content, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Popup>\r\n </BaseMenu.Positioner>\r\n </MenubarPortal>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the menubar item.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarItem>Content</MenubarItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarItem(props: Readonly<MenubarItem.Props>): React.ReactElement {\r\n const {className, children, inset = false, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Item\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, inset && styles.inset, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.Item>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar checkbox item.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarCheckboxItem>Content</MenubarCheckboxItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarCheckboxItem(props: Readonly<MenubarCheckboxItem.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.CheckboxItem\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, styles.indicatorItem, className)}, {}),\r\n })}>\r\n <span className={styles.indicatorSlot}>\r\n <BaseMenu.CheckboxItemIndicator>\r\n <Check className={styles.indicatorIcon} />\r\n </BaseMenu.CheckboxItemIndicator>\r\n </span>\r\n {children}\r\n </BaseMenu.CheckboxItem>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar radio item.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarRadioItem>Content</MenubarRadioItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarRadioItem(props: Readonly<MenubarRadioItem.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.RadioItem\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.item, styles.indicatorItem, className)}, {}),\r\n })}>\r\n <span className={styles.indicatorSlot}>\r\n <BaseMenu.RadioItemIndicator>\r\n <Circle className={styles.radioIndicatorIcon} />\r\n </BaseMenu.RadioItemIndicator>\r\n </span>\r\n {children}\r\n </BaseMenu.RadioItem>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar label.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarLabel>Content</MenubarLabel>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarLabel(props: Readonly<MenubarLabel.Props>): React.ReactElement {\r\n const {className, children, inset = false, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.GroupLabel\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.label, inset && styles.inset, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMenu.GroupLabel>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar separator.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarSeparator>Content</MenubarSeparator>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarSeparator(props: Readonly<MenubarSeparator.Props>): React.ReactElement {\r\n const {className, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMenu.Separator\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.separator, className)}, {}),\r\n })}\r\n />\r\n );\r\n}\r\n\r\n/**\r\n * Renders the menubar shortcut.\r\n *\r\n * @remarks\r\n * - Renders a `<span>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <MenubarShortcut>Content</MenubarShortcut>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}\r\n */\r\nfunction MenubarShortcut(props: Readonly<MenubarShortcut.Props>): React.ReactElement {\r\n // eslint-disable-next-line sonarjs/deprecation -- backward-compatible asChild API\r\n const {asChild = false, children, className, render, ...otherProps} = props;\r\n const renderProp = asChild && React.isValidElement(children) ? children : render;\r\n\r\n return useRender({\r\n defaultTagName: \"span\",\r\n render: renderProp as never,\r\n props: mergeProps({className: cn(styles.shortcut, className)}, otherProps, {\r\n children: renderProp ? undefined : children,\r\n }),\r\n });\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace Menubar {\r\n export type Props = Omit<React.ComponentPropsWithRef<typeof BaseMenubar>, \"className\"> & {className?: string};\r\n export type State = BaseMenubar.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarTrigger {\r\n export type Props = Omit<React.ComponentPropsWithRef<typeof BaseMenu.Trigger>, \"className\"> & {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n };\r\n export type State = BaseMenu.Trigger.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarSubTrigger {\r\n export type Props = MenubarSubTriggerProps;\r\n export type State = BaseMenu.SubmenuTrigger.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarContent {\r\n export type Props = MenubarContentProps;\r\n export type State = BaseMenu.Popup.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarSubContent {\r\n export type Props = MenubarContentProps;\r\n export type State = BaseMenu.Popup.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarItem {\r\n export type Props = MenubarItemProps;\r\n export type State = BaseMenu.Item.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarCheckboxItem {\r\n export type Props = MenubarCheckboxItemProps;\r\n export type State = BaseMenu.CheckboxItem.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarRadioItem {\r\n export type Props = MenubarRadioItemProps;\r\n export type State = BaseMenu.RadioItem.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarLabel {\r\n export type Props = MenubarLabelProps;\r\n export type State = BaseMenu.GroupLabel.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarSeparator {\r\n export type Props = MenubarSeparatorProps;\r\n export type State = BaseMenu.Separator.State;\r\n}\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MenubarShortcut {\r\n export type Props = MenubarShortcutProps;\r\n export type State = Record<string, never>;\r\n}\r\n\r\nMenubarMenu.displayName = \"MenubarMenu\";\r\nMenubarGroup.displayName = \"MenubarGroup\";\r\nMenubarPortal.displayName = \"MenubarPortal\";\r\nMenubarRadioGroup.displayName = \"MenubarRadioGroup\";\r\nMenubarSub.displayName = \"MenubarSub\";\r\nMenubar.displayName = \"Menubar\";\r\nMenubarTrigger.displayName = \"MenubarTrigger\";\r\nMenubarSubTrigger.displayName = \"MenubarSubTrigger\";\r\nMenubarSubContent.displayName = \"MenubarSubContent\";\r\nMenubarContent.displayName = \"MenubarContent\";\r\nMenubarItem.displayName = \"MenubarItem\";\r\nMenubarCheckboxItem.displayName = \"MenubarCheckboxItem\";\r\nMenubarRadioItem.displayName = \"MenubarRadioItem\";\r\nMenubarLabel.displayName = \"MenubarLabel\";\r\nMenubarSeparator.displayName = \"MenubarSeparator\";\r\nMenubarShortcut.displayName = \"MenubarShortcut\";\r\n\r\nexport {\r\n Menubar,\r\n MenubarCheckboxItem,\r\n MenubarContent,\r\n MenubarGroup,\r\n MenubarItem,\r\n MenubarLabel,\r\n MenubarMenu,\r\n MenubarPortal,\r\n MenubarRadioGroup,\r\n MenubarRadioItem,\r\n MenubarSeparator,\r\n MenubarShortcut,\r\n MenubarSub,\r\n MenubarSubContent,\r\n MenubarSubTrigger,\r\n MenubarTrigger,\r\n};\r\n"],"names":["MenubarMenu","BaseMenu","MenubarGroup","MenubarPortal","MenubarRadioGroup","MenubarSub","Menubar","props","className","children","render","otherProps","BaseMenubar","useRender","mergeProps","cn","styles","MenubarTrigger","React","ref","MenubarSubTrigger","inset","ChevronRight","MenubarSubContent","MenubarContent","alignOffset","sideOffset","MenubarItem","MenubarCheckboxItem","Check","MenubarRadioItem","Circle","MenubarLabel","MenubarSeparator","MenubarShortcut","asChild","renderProp","undefined"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://./home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/menubar.module.css","webpack://./src/components/ui/menubar.module.css"],"names":[],"mappings":"AADA;ECEE,sCAAsC;EACtC,kCAAkC;EAClC,kCAAkC;EAClC,sBAAsB;EACtB,kCAAkC;EAClC,0BAA0B;EAC1B,+BAA+B;AACjC;;AAEA;EACE,mBAAmB;EACnB,oBAAoB;AACtB;;AAEA;EACE,kCAAkC;EAClC,2BAA2B;EAC3B,eAAe;EACf,4BAA4B;EAC5B,4DAA4D;EAC5D,4BAA4B;EAC5B,gBAAgB;EAChB,YAAY;EACZ,aAAa;EACb,uBAAuB;EACvB,gBAAgB;AAClB;;AAEA;EACE,kCAAkC;EAClC,kCAAkC;AACpC;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,mCAAmC;EACnC,kCAAkC;EAClC,kCAAkC;EAClC,mCAAmC;EACnC,qDAAqD;EACrD,gBAAgB;EAChB,0BAA0B;EAC1B,qFAAqF;EACrF,qBAAqB;EACrB,uCAAuC;AACzC;;AAEA;EACE,UAAU;EACV,qBAAqB;AACvB;;AAEA;EACE,kCAAkC;EAClC,eAAe;EACf,4BAA4B;EAC5B,mBAAmB;EACnB,sBAAsB;EACtB,kCAAkC;EAClC,4CAA4C;EAC5C,yBAAyB;EACzB,iBAAiB;EACjB,aAAa;EACb,WAAW;EACX,aAAa;EACb,kBAAkB;AACpB;;AAEA;EACE,kCAAkC;EAClC,kCAAkC;AACpC;;AAEA;EACE,WAAW;EACX,oBAAoB;AACtB;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,kCAAkC;EAClC,kCAAkC;AACpC;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,iBAAiB;AACnB;;AAEA;EACE,+CAA+C;AACjD;;AAEA;EACE,YAAY;EACZ,uBAAuB;EACvB,uBAAuB;EACvB,mBAAmB;EACnB,WAAW;EACX,oBAAoB;EACpB,kBAAkB;AACpB;;AAEA;EACE,cAAc;EACd,eAAe;AACjB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,4BAA4B;EAC5B,4CAA4C;EAC5C,gBAAgB;AAClB;;AAEA;EACE,+CAA+C;AACjD;;AAEA;EACE,kCAAkC;EAClC,WAAW;EACX,oDAAoD;AACtD;;AAEA;EACE,iCAAiC;EACjC,4BAA4B;EAC5B,qBAAqB;EACrB,iBAAiB;AACnB","sourcesContent":[".root{background-color:var(--ac-background);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);box-shadow:0 1px 2px rgba(0,0,0,.04);gap:var(--ac-space-1);min-height:var(--ac-size-default);padding:var(--ac-space-1)}.root,.trigger{align-items:center;display:inline-flex}.trigger{background:transparent;border:none;border-radius:var(--ac-radius-sm);color:var(--ac-foreground);cursor:default;font-size:var(--ac-text-sm);font-weight:500;justify-content:center;min-height:calc(var(--ac-size-default) - var(--ac-space-1));outline:none;padding:0 var(--ac-space-3)}.trigger:focus-visible,.trigger[data-popup-open]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.positioner{z-index:50}.content{background-color:var(--ac-popover);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);box-shadow:0 16px 40px -16px rgba(0,0,0,.35);color:var(--ac-popover-foreground);max-height:min(24rem,var(--available-height,24rem));min-width:12rem;overflow-x:hidden;overflow-y:auto;padding:var(--ac-space-1);transition:opacity var(--ac-transition-normal),transform var(--ac-transition-normal)}.content[data-ending-style],.content[data-starting-style]{opacity:0;transform:scale(.96)}.item{align-items:center;border-radius:var(--ac-radius-sm);cursor:default;display:flex;font-size:var(--ac-text-sm);gap:var(--ac-space-2);min-height:var(--ac-size-default);outline:none;padding:var(--ac-space-1) var(--ac-space-2);position:relative;user-select:none;width:100%}.item[data-highlighted]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.item[data-disabled]{opacity:.5;pointer-events:none}.subTrigger{padding-right:var(--ac-space-3)}.subTrigger[data-popup-open]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.subTriggerIcon{height:1rem;margin-left:auto;width:1rem}.indicatorItem{padding-left:calc(var(--ac-space-2) + 1.25rem)}.indicatorSlot{align-items:center;display:inline-flex;height:1rem;justify-content:center;left:var(--ac-space-2);position:absolute;width:1rem}.indicatorIcon,.radioIndicatorIcon{height:.875rem;width:.875rem}.radioIndicatorIcon{fill:currentcolor}.label{font-size:var(--ac-text-sm);font-weight:600;padding:var(--ac-space-1) var(--ac-space-2)}.inset{padding-left:calc(var(--ac-space-2) + 1.25rem)}.separator{background-color:var(--ac-border);height:1px;margin:var(--ac-space-1) calc(var(--ac-space-1)*-1)}.shortcut{color:var(--ac-muted-foreground);font-size:var(--ac-text-xs);letter-spacing:.08em;margin-left:auto}",".root {\n background-color: var(--ac-background);\n border: 1px solid var(--ac-border);\n border-radius: var(--ac-radius-md);\n gap: var(--ac-space-1);\n min-height: var(--ac-size-default);\n padding: var(--ac-space-1);\n box-shadow: 0 1px 2px #0000000a;\n}\n\n.root, .trigger {\n align-items: center;\n display: inline-flex;\n}\n\n.trigger {\n border-radius: var(--ac-radius-sm);\n color: var(--ac-foreground);\n cursor: default;\n font-size: var(--ac-text-sm);\n min-height: calc(var(--ac-size-default) - var(--ac-space-1));\n padding: 0 var(--ac-space-3);\n background: none;\n border: none;\n outline: none;\n justify-content: center;\n font-weight: 500;\n}\n\n.trigger:focus-visible, .trigger[data-popup-open] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.positioner {\n z-index: 50;\n}\n\n.content {\n background-color: var(--ac-popover);\n border: 1px solid var(--ac-border);\n border-radius: var(--ac-radius-md);\n color: var(--ac-popover-foreground);\n max-height: min(24rem,var(--available-height, 24rem));\n min-width: 12rem;\n padding: var(--ac-space-1);\n transition: opacity var(--ac-transition-normal),transform var(--ac-transition-normal);\n overflow: hidden auto;\n box-shadow: 0 16px 40px -16px #00000059;\n}\n\n.content[data-ending-style], .content[data-starting-style] {\n opacity: 0;\n transform: scale(.96);\n}\n\n.item {\n border-radius: var(--ac-radius-sm);\n cursor: default;\n font-size: var(--ac-text-sm);\n align-items: center;\n gap: var(--ac-space-2);\n min-height: var(--ac-size-default);\n padding: var(--ac-space-1) var(--ac-space-2);\n -webkit-user-select: none;\n user-select: none;\n outline: none;\n width: 100%;\n display: flex;\n position: relative;\n}\n\n.item[data-highlighted] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.item[data-disabled] {\n opacity: .5;\n pointer-events: none;\n}\n\n.subTrigger {\n padding-right: var(--ac-space-3);\n}\n\n.subTrigger[data-popup-open] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.subTriggerIcon {\n width: 1rem;\n height: 1rem;\n margin-left: auto;\n}\n\n.indicatorItem {\n padding-left: calc(var(--ac-space-2) + 1.25rem);\n}\n\n.indicatorSlot {\n height: 1rem;\n left: var(--ac-space-2);\n justify-content: center;\n align-items: center;\n width: 1rem;\n display: inline-flex;\n position: absolute;\n}\n\n.indicatorIcon, .radioIndicatorIcon {\n width: .875rem;\n height: .875rem;\n}\n\n.radioIndicatorIcon {\n fill: currentColor;\n}\n\n.label {\n font-size: var(--ac-text-sm);\n padding: var(--ac-space-1) var(--ac-space-2);\n font-weight: 600;\n}\n\n.inset {\n padding-left: calc(var(--ac-space-2) + 1.25rem);\n}\n\n.separator {\n background-color: var(--ac-border);\n height: 1px;\n margin: var(--ac-space-1) calc(var(--ac-space-1)*-1);\n}\n\n.shortcut {\n color: var(--ac-muted-foreground);\n font-size: var(--ac-text-xs);\n letter-spacing: .08em;\n margin-left: auto;\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://./../../node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/css-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[1]!builtin:lightningcss-loader??ruleSet[1].rules[1].oneOf[2].use[2]!/home/runner/work/arolariu.ro/arolariu.ro/node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/postcss-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[3]!/home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/menubar.module.css","webpack://./src/components/ui/menubar.module.css"],"names":[],"mappings":"AAAA;ECCE,sCAAsC;EACtC,kCAAkC;EAClC,kCAAkC;EAClC,sBAAsB;EACtB,kCAAkC;EAClC,0BAA0B;EAC1B,+BAA+B;AACjC;;ADRuO;ECWrO,mBAAmB;EACnB,oBAAoB;AACtB;;ADb6R;ECgB3R,kCAAkC;EAClC,2BAA2B;EAC3B,eAAe;EACf,4BAA4B;EAC5B,4DAA4D;EAC5D,4BAA4B;EAC5B,gBAAgB;EAChB,YAAY;EACZ,aAAa;EACb,uBAAuB;EACvB,gBAAgB;AAClB;;AD3B6jB;EC8B3jB,kCAAkC;EAClC,kCAAkC;AACpC;;ADhCkrB;ECmChrB,WAAW;AACb;;ADpCysB;ECuCvsB,mCAAmC;EACnC,kCAAkC;EAClC,kCAAkC;EAClC,mCAAmC;EACnC,qDAAqD;EACrD,gBAAgB;EAChB,0BAA0B;EAC1B,qFAAqF;EACrF,qBAAqB;EACrB,uCAAuC;AACzC;;ADjD8lC;ECoD5lC,UAAU;EACV,qBAAqB;AACvB;;ADtDurC;ECyDrrC,kCAAkC;EAClC,eAAe;EACf,4BAA4B;EAC5B,mBAAmB;EACnB,sBAAsB;EACtB,kCAAkC;EAClC,4CAA4C;EAC5C,yBAAyB;EACzB,iBAAiB;EACjB,aAAa;EACb,WAAW;EACX,aAAa;EACb,kBAAkB;AACpB;;ADtEy8C;ECyEv8C,kCAAkC;EAClC,kCAAkC;AACpC;;AD3EqiD;EC8EniD,WAAW;EACX,oBAAoB;AACtB;;ADhFylD;ECmFvlD,gCAAgC;AAClC;;ADpFqoD;ECuFnoD,kCAAkC;EAClC,kCAAkC;AACpC;;ADzFsuD;EC4FpuD,WAAW;EACX,YAAY;EACZ,iBAAiB;AACnB;;AD/F8xD;ECkG5xD,+CAA+C;AACjD;;ADnG41D;ECsG11D,YAAY;EACZ,uBAAuB;EACvB,uBAAuB;EACvB,mBAAmB;EACnB,WAAW;EACX,oBAAoB;EACpB,kBAAkB;AACpB;;AD7Gy+D;ECgHv+D,cAAc;EACd,eAAe;AACjB;;ADlHyiE;ECqHviE,kBAAkB;AACpB;;ADtH+kE;ECyH7kE,4BAA4B;EAC5B,4CAA4C;EAC5C,gBAAgB;AAClB;;AD5H8qE;EC+H5qE,+CAA+C;AACjD;;ADhIouE;ECmIluE,kCAAkC;EAClC,WAAW;EACX,oDAAoD;AACtD;;ADtIg1E;ECyI90E,iCAAiC;EACjC,4BAA4B;EAC5B,qBAAqB;EACrB,iBAAiB;AACnB","sourcesContent":[".root{background-color:var(--ac-background);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);box-shadow:0 1px 2px rgba(0,0,0,.04);gap:var(--ac-space-1);min-height:var(--ac-size-default);padding:var(--ac-space-1)}.root,.trigger{align-items:center;display:inline-flex}.trigger{background:transparent;border:none;border-radius:var(--ac-radius-sm);color:var(--ac-foreground);cursor:default;font-size:var(--ac-text-sm);font-weight:500;justify-content:center;min-height:calc(var(--ac-size-default) - var(--ac-space-1));outline:none;padding:0 var(--ac-space-3)}.trigger:focus-visible,.trigger[data-popup-open]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.positioner{z-index:50}.content{background-color:var(--ac-popover);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);box-shadow:0 16px 40px -16px rgba(0,0,0,.35);color:var(--ac-popover-foreground);max-height:min(24rem,var(--available-height,24rem));min-width:12rem;overflow-x:hidden;overflow-y:auto;padding:var(--ac-space-1);transition:opacity var(--ac-transition-normal),transform var(--ac-transition-normal)}.content[data-ending-style],.content[data-starting-style]{opacity:0;transform:scale(.96)}.item{align-items:center;border-radius:var(--ac-radius-sm);cursor:default;display:flex;font-size:var(--ac-text-sm);gap:var(--ac-space-2);min-height:var(--ac-size-default);outline:none;padding:var(--ac-space-1) var(--ac-space-2);position:relative;user-select:none;width:100%}.item[data-highlighted]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.item[data-disabled]{opacity:.5;pointer-events:none}.subTrigger{padding-right:var(--ac-space-3)}.subTrigger[data-popup-open]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.subTriggerIcon{height:1rem;margin-left:auto;width:1rem}.indicatorItem{padding-left:calc(var(--ac-space-2) + 1.25rem)}.indicatorSlot{align-items:center;display:inline-flex;height:1rem;justify-content:center;left:var(--ac-space-2);position:absolute;width:1rem}.indicatorIcon,.radioIndicatorIcon{height:.875rem;width:.875rem}.radioIndicatorIcon{fill:currentcolor}.label{font-size:var(--ac-text-sm);font-weight:600;padding:var(--ac-space-1) var(--ac-space-2)}.inset{padding-left:calc(var(--ac-space-2) + 1.25rem)}.separator{background-color:var(--ac-border);height:1px;margin:var(--ac-space-1) calc(var(--ac-space-1)*-1)}.shortcut{color:var(--ac-muted-foreground);font-size:var(--ac-text-xs);letter-spacing:.08em;margin-left:auto}",".root {\n background-color: var(--ac-background);\n border: 1px solid var(--ac-border);\n border-radius: var(--ac-radius-md);\n gap: var(--ac-space-1);\n min-height: var(--ac-size-default);\n padding: var(--ac-space-1);\n box-shadow: 0 1px 2px #0000000a;\n}\n\n.root, .trigger {\n align-items: center;\n display: inline-flex;\n}\n\n.trigger {\n border-radius: var(--ac-radius-sm);\n color: var(--ac-foreground);\n cursor: default;\n font-size: var(--ac-text-sm);\n min-height: calc(var(--ac-size-default) - var(--ac-space-1));\n padding: 0 var(--ac-space-3);\n background: none;\n border: none;\n outline: none;\n justify-content: center;\n font-weight: 500;\n}\n\n.trigger:focus-visible, .trigger[data-popup-open] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.positioner {\n z-index: 50;\n}\n\n.content {\n background-color: var(--ac-popover);\n border: 1px solid var(--ac-border);\n border-radius: var(--ac-radius-md);\n color: var(--ac-popover-foreground);\n max-height: min(24rem,var(--available-height, 24rem));\n min-width: 12rem;\n padding: var(--ac-space-1);\n transition: opacity var(--ac-transition-normal),transform var(--ac-transition-normal);\n overflow: hidden auto;\n box-shadow: 0 16px 40px -16px #00000059;\n}\n\n.content[data-ending-style], .content[data-starting-style] {\n opacity: 0;\n transform: scale(.96);\n}\n\n.item {\n border-radius: var(--ac-radius-sm);\n cursor: default;\n font-size: var(--ac-text-sm);\n align-items: center;\n gap: var(--ac-space-2);\n min-height: var(--ac-size-default);\n padding: var(--ac-space-1) var(--ac-space-2);\n -webkit-user-select: none;\n user-select: none;\n outline: none;\n width: 100%;\n display: flex;\n position: relative;\n}\n\n.item[data-highlighted] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.item[data-disabled] {\n opacity: .5;\n pointer-events: none;\n}\n\n.subTrigger {\n padding-right: var(--ac-space-3);\n}\n\n.subTrigger[data-popup-open] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.subTriggerIcon {\n width: 1rem;\n height: 1rem;\n margin-left: auto;\n}\n\n.indicatorItem {\n padding-left: calc(var(--ac-space-2) + 1.25rem);\n}\n\n.indicatorSlot {\n height: 1rem;\n left: var(--ac-space-2);\n justify-content: center;\n align-items: center;\n width: 1rem;\n display: inline-flex;\n position: absolute;\n}\n\n.indicatorIcon, .radioIndicatorIcon {\n width: .875rem;\n height: .875rem;\n}\n\n.radioIndicatorIcon {\n fill: currentColor;\n}\n\n.label {\n font-size: var(--ac-text-sm);\n padding: var(--ac-space-1) var(--ac-space-2);\n font-weight: 600;\n}\n\n.inset {\n padding-left: calc(var(--ac-space-2) + 1.25rem);\n}\n\n.separator {\n background-color: var(--ac-border);\n height: 1px;\n margin: var(--ac-space-1) calc(var(--ac-space-1)*-1);\n}\n\n.shortcut {\n color: var(--ac-muted-foreground);\n font-size: var(--ac-text-xs);\n letter-spacing: .08em;\n margin-left: auto;\n}\n"],"sourceRoot":""}
@@ -3,10 +3,10 @@ import { jsx } from "react/jsx-runtime";
3
3
  import { mergeProps } from "@base-ui/react/merge-props";
4
4
  import { Meter as meter_Meter } from "@base-ui/react/meter";
5
5
  import { useRender } from "@base-ui/react/use-render";
6
- import { forwardRef } from "react";
7
6
  import { cn } from "../../lib/utilities.js";
8
7
  import meter_module from "./meter.module.js";
9
- const ui_meter_Meter = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
8
+ import * as __rspack_external_react from "react";
9
+ const ui_meter_Meter = /*#__PURE__*/ __rspack_external_react.forwardRef(function(props, forwardedRef) {
10
10
  const { className, children, render, ...otherProps } = props;
11
11
  return /*#__PURE__*/ jsx(meter_Meter.Root, {
12
12
  ...otherProps,
@@ -21,7 +21,7 @@ const ui_meter_Meter = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
21
21
  children: children
22
22
  });
23
23
  });
24
- const meter_MeterTrack = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
24
+ const meter_MeterTrack = /*#__PURE__*/ __rspack_external_react.forwardRef(function(props, forwardedRef) {
25
25
  const { className, children, render, ...otherProps } = props;
26
26
  return /*#__PURE__*/ jsx(meter_Meter.Track, {
27
27
  ...otherProps,
@@ -36,7 +36,7 @@ const meter_MeterTrack = /*#__PURE__*/ forwardRef(function(props, forwardedRef)
36
36
  children: children
37
37
  });
38
38
  });
39
- const meter_MeterIndicator = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
39
+ const meter_MeterIndicator = /*#__PURE__*/ __rspack_external_react.forwardRef(function(props, forwardedRef) {
40
40
  const { className, children, render, ...otherProps } = props;
41
41
  return /*#__PURE__*/ jsx(meter_Meter.Indicator, {
42
42
  ...otherProps,
@@ -51,7 +51,7 @@ const meter_MeterIndicator = /*#__PURE__*/ forwardRef(function(props, forwardedR
51
51
  children: children
52
52
  });
53
53
  });
54
- const meter_MeterLabel = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
54
+ const meter_MeterLabel = /*#__PURE__*/ __rspack_external_react.forwardRef(function(props, forwardedRef) {
55
55
  const { className, children, render, ...otherProps } = props;
56
56
  return /*#__PURE__*/ jsx(meter_Meter.Label, {
57
57
  ...otherProps,
@@ -1 +1 @@
1
- {"version":3,"file":"components/ui/meter.js","sources":["../../../src/components/ui/meter.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {Meter as BaseMeter} from \"@base-ui/react/meter\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./meter.module.css\";\r\n\r\n/**\r\n * Displays a scalar measurement within a known range.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Meter primitives\r\n * - Intended for values such as storage usage, health, or completion\r\n *\r\n * @example\r\n * ```tsx\r\n * <Meter value={72}>\r\n * <MeterTrack>\r\n * <MeterIndicator />\r\n * </MeterTrack>\r\n * </Meter>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst Meter = React.forwardRef<HTMLDivElement, Meter.Props>(function Meter(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Root\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Root>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the background track for a meter.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Meter track primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <MeterTrack />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst MeterTrack = React.forwardRef<HTMLDivElement, MeterTrack.Props>(function MeterTrack(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Track\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.track, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Track>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the filled indicator that reflects the current meter value.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Meter indicator primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <MeterIndicator />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst MeterIndicator = React.forwardRef<HTMLDivElement, MeterIndicator.Props>(function MeterIndicator(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Indicator\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.indicator, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Indicator>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the accessible label associated with a meter.\r\n *\r\n * @remarks\r\n * - Renders a `<span>` element by default\r\n * - Built on Base UI Meter label primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <MeterLabel>Storage used</MeterLabel>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst MeterLabel = React.forwardRef<HTMLSpanElement, MeterLabel.Props>(function MeterLabel(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Label\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"span\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.label, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Label>\r\n );\r\n});\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace Meter {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Root>;\r\n export type State = BaseMeter.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MeterTrack {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Track>;\r\n export type State = BaseMeter.Track.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MeterIndicator {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Indicator>;\r\n export type State = BaseMeter.Indicator.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MeterLabel {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Label>;\r\n export type State = BaseMeter.Label.State;\r\n}\r\n\r\nMeter.displayName = \"Meter\";\r\nMeterTrack.displayName = \"MeterTrack\";\r\nMeterIndicator.displayName = \"MeterIndicator\";\r\nMeterLabel.displayName = \"MeterLabel\";\r\n\r\nexport {Meter, MeterIndicator, MeterLabel, MeterTrack};\r\n"],"names":["Meter","React","props","forwardedRef","className","children","render","otherProps","BaseMeter","useRender","mergeProps","cn","styles","MeterTrack","MeterIndicator","MeterLabel"],"mappings":";;;;;;;;AA6BA,MAAMA,iBAAQ,WAAHA,GAAGC,WAA8C,SAAeC,KAAK,EAAEC,YAAY;IAC5F,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,IAAc;QACZ,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,IAAW,EAAER;YAAU,GAAG,CAAC;QAC9D;kBACCC;;AAGP;AAgBA,MAAMQ,mBAAa,WAAHA,GAAGZ,WAAmD,SAAoBC,KAAK,EAAEC,YAAY;IAC3G,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,KAAe;QACb,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;kBACCC;;AAGP;AAgBA,MAAMS,uBAAiB,WAAHA,GAAGb,WAAuD,SAAwBC,KAAK,EAAEC,YAAY;IACvH,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,SAAmB;QACjB,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,SAAgB,EAAER;YAAU,GAAG,CAAC;QACnE;kBACCC;;AAGP;AAgBA,MAAMU,mBAAa,WAAHA,GAAGd,WAAoD,SAAoBC,KAAK,EAAEC,YAAY;IAC5G,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,KAAe;QACb,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;kBACCC;;AAGP;AA0BAL,eAAM,WAAW,GAAG;AACpBa,iBAAW,WAAW,GAAG;AACzBC,qBAAe,WAAW,GAAG;AAC7BC,iBAAW,WAAW,GAAG"}
1
+ {"version":3,"file":"components/ui/meter.js","sources":["../../../src/components/ui/meter.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {Meter as BaseMeter} from \"@base-ui/react/meter\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./meter.module.css\";\r\n\r\n/**\r\n * Displays a scalar measurement within a known range.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Meter primitives\r\n * - Intended for values such as storage usage, health, or completion\r\n *\r\n * @example\r\n * ```tsx\r\n * <Meter value={72}>\r\n * <MeterTrack>\r\n * <MeterIndicator />\r\n * </MeterTrack>\r\n * </Meter>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst Meter = React.forwardRef<HTMLDivElement, Meter.Props>(function Meter(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Root\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Root>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the background track for a meter.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Meter track primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <MeterTrack />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst MeterTrack = React.forwardRef<HTMLDivElement, MeterTrack.Props>(function MeterTrack(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Track\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.track, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Track>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the filled indicator that reflects the current meter value.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Meter indicator primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <MeterIndicator />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst MeterIndicator = React.forwardRef<HTMLDivElement, MeterIndicator.Props>(function MeterIndicator(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Indicator\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.indicator, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Indicator>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the accessible label associated with a meter.\r\n *\r\n * @remarks\r\n * - Renders a `<span>` element by default\r\n * - Built on Base UI Meter label primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <MeterLabel>Storage used</MeterLabel>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/meter | Base UI Meter Docs}\r\n */\r\nconst MeterLabel = React.forwardRef<HTMLSpanElement, MeterLabel.Props>(function MeterLabel(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseMeter.Label\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"span\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.label, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseMeter.Label>\r\n );\r\n});\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace Meter {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Root>;\r\n export type State = BaseMeter.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MeterTrack {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Track>;\r\n export type State = BaseMeter.Track.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MeterIndicator {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Indicator>;\r\n export type State = BaseMeter.Indicator.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace MeterLabel {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseMeter.Label>;\r\n export type State = BaseMeter.Label.State;\r\n}\r\n\r\nMeter.displayName = \"Meter\";\r\nMeterTrack.displayName = \"MeterTrack\";\r\nMeterIndicator.displayName = \"MeterIndicator\";\r\nMeterLabel.displayName = \"MeterLabel\";\r\n\r\nexport {Meter, MeterIndicator, MeterLabel, MeterTrack};\r\n"],"names":["Meter","React","props","forwardedRef","className","children","render","otherProps","BaseMeter","useRender","mergeProps","cn","styles","MeterTrack","MeterIndicator","MeterLabel"],"mappings":";;;;;;;;AA6BA,MAAMA,iBAAQ,WAAHA,GAAGC,wBAAAA,UAAgB,CAA8B,SAAeC,KAAK,EAAEC,YAAY;IAC5F,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,IAAc;QACZ,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,IAAW,EAAER;YAAU,GAAG,CAAC;QAC9D;kBACCC;;AAGP;AAgBA,MAAMQ,mBAAa,WAAHA,GAAGZ,wBAAAA,UAAgB,CAAmC,SAAoBC,KAAK,EAAEC,YAAY;IAC3G,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,KAAe;QACb,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;kBACCC;;AAGP;AAgBA,MAAMS,uBAAiB,WAAHA,GAAGb,wBAAAA,UAAgB,CAAuC,SAAwBC,KAAK,EAAEC,YAAY;IACvH,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,SAAmB;QACjB,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,SAAgB,EAAER;YAAU,GAAG,CAAC;QACnE;kBACCC;;AAGP;AAgBA,MAAMU,mBAAa,WAAHA,GAAGd,wBAAAA,UAAgB,CAAoC,SAAoBC,KAAK,EAAEC,YAAY;IAC5G,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGL;IAErD,OAAO,WAAP,GACE,IAACM,YAAAA,KAAe;QACb,GAAGD,UAAU;QACd,KAAKJ;QACL,QAAQM,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,aAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;kBACCC;;AAGP;AA0BAL,eAAM,WAAW,GAAG;AACpBa,iBAAW,WAAW,GAAG;AACzBC,qBAAe,WAAW,GAAG;AAC7BC,iBAAW,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://./home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/meter.module.css","webpack://./src/components/ui/meter.module.css"],"names":[],"mappings":"AADA;ECEE,sBAAsB;EACtB,aAAa;AACf;;AAEA;EACE,2BAA2B;EAC3B,4BAA4B;EAC5B,gBAAgB;EAChB,gBAAgB;AAClB;;AAEA;EACE,qCAAqC;EACrC,gFAAgF;EAChF,qBAAqB;EACrB,WAAW;EACX,aAAa;EACb,kBAAkB;EAClB,gBAAgB;AAClB;;AAEA;EACE,0GAA0G;EAC1G,sBAAsB;EACtB,eAAe;EACf,2CAA2C;AAC7C","sourcesContent":[".root{display:grid;gap:var(--ac-space-2)}.label{color:var(--ac-foreground);font-size:var(--ac-text-sm);font-weight:500;line-height:1.4}.track{background-color:var(--ac-secondary);border-radius:9999px;box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--ac-border),transparent 20%);height:.5rem;overflow:hidden;position:relative;width:100%}.indicator{background:linear-gradient(90deg,color-mix(in oklch,var(--ac-primary),#fff 10%) 0,var(--ac-primary) 100%);border-radius:inherit;height:inherit;transition:width var(--ac-transition-slow)}",".root {\n gap: var(--ac-space-2);\n display: grid;\n}\n\n.label {\n color: var(--ac-foreground);\n font-size: var(--ac-text-sm);\n font-weight: 500;\n line-height: 1.4;\n}\n\n.track {\n background-color: var(--ac-secondary);\n box-shadow: inset 0 0 0 1px color-mix(in oklch,var(--ac-border),transparent 20%);\n border-radius: 9999px;\n width: 100%;\n height: .5rem;\n position: relative;\n overflow: hidden;\n}\n\n.indicator {\n background: linear-gradient(90deg,color-mix(in oklch,var(--ac-primary),#fff 10%) 0,var(--ac-primary) 100%);\n border-radius: inherit;\n height: inherit;\n transition: width var(--ac-transition-slow);\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://./../../node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/css-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[1]!builtin:lightningcss-loader??ruleSet[1].rules[1].oneOf[2].use[2]!/home/runner/work/arolariu.ro/arolariu.ro/node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/postcss-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[3]!/home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/meter.module.css","webpack://./src/components/ui/meter.module.css"],"names":[],"mappings":"AAAA;ECCE,sBAAsB;EACtB,aAAa;AACf;;ADHyC;ECMvC,2BAA2B;EAC3B,4BAA4B;EAC5B,gBAAgB;EAChB,gBAAgB;AAClB;;ADVuI;ECarI,qCAAqC;EACrC,gFAAgF;EAChF,qBAAqB;EACrB,WAAW;EACX,aAAa;EACb,kBAAkB;EAClB,gBAAgB;AAClB;;ADpBkV;ECuBhV,0GAA0G;EAC1G,sBAAsB;EACtB,eAAe;EACf,2CAA2C;AAC7C","sourcesContent":[".root{display:grid;gap:var(--ac-space-2)}.label{color:var(--ac-foreground);font-size:var(--ac-text-sm);font-weight:500;line-height:1.4}.track{background-color:var(--ac-secondary);border-radius:9999px;box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--ac-border),transparent 20%);height:.5rem;overflow:hidden;position:relative;width:100%}.indicator{background:linear-gradient(90deg,color-mix(in oklch,var(--ac-primary),#fff 10%) 0,var(--ac-primary) 100%);border-radius:inherit;height:inherit;transition:width var(--ac-transition-slow)}",".root {\n gap: var(--ac-space-2);\n display: grid;\n}\n\n.label {\n color: var(--ac-foreground);\n font-size: var(--ac-text-sm);\n font-weight: 500;\n line-height: 1.4;\n}\n\n.track {\n background-color: var(--ac-secondary);\n box-shadow: inset 0 0 0 1px color-mix(in oklch,var(--ac-border),transparent 20%);\n border-radius: 9999px;\n width: 100%;\n height: .5rem;\n position: relative;\n overflow: hidden;\n}\n\n.indicator {\n background: linear-gradient(90deg,color-mix(in oklch,var(--ac-primary),#fff 10%) 0,var(--ac-primary) 100%);\n border-radius: inherit;\n height: inherit;\n transition: width var(--ac-transition-slow);\n}\n"],"sourceRoot":""}
@@ -4,9 +4,9 @@ import { mergeProps } from "@base-ui/react/merge-props";
4
4
  import { NavigationMenu } from "@base-ui/react/navigation-menu";
5
5
  import { useRender } from "@base-ui/react/use-render";
6
6
  import { ChevronDown } from "lucide-react";
7
- import { forwardRef, isValidElement } from "react";
8
7
  import { cn } from "../../lib/utilities.js";
9
8
  import navigation_menu_module from "./navigation-menu.module.js";
9
+ import * as __rspack_external_react from "react";
10
10
  function navigationMenuTriggerStyle(className) {
11
11
  return cn(navigation_menu_module.trigger, className);
12
12
  }
@@ -42,7 +42,7 @@ function NavigationMenuList(props) {
42
42
  });
43
43
  }
44
44
  const NavigationMenuItem = NavigationMenu.Item;
45
- const navigation_menu_NavigationMenuTrigger = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
45
+ const navigation_menu_NavigationMenuTrigger = /*#__PURE__*/ __rspack_external_react.forwardRef(function(props, forwardedRef) {
46
46
  const { className, children, render, ...otherProps } = props;
47
47
  return /*#__PURE__*/ jsxs(NavigationMenu.Trigger, {
48
48
  ...otherProps,
@@ -62,7 +62,7 @@ const navigation_menu_NavigationMenuTrigger = /*#__PURE__*/ forwardRef(function(
62
62
  ]
63
63
  });
64
64
  });
65
- const navigation_menu_NavigationMenuContent = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
65
+ const navigation_menu_NavigationMenuContent = /*#__PURE__*/ __rspack_external_react.forwardRef(function(props, forwardedRef) {
66
66
  const { className, children, render, ...otherProps } = props;
67
67
  return /*#__PURE__*/ jsx(NavigationMenu.Content, {
68
68
  ...otherProps,
@@ -77,7 +77,7 @@ const navigation_menu_NavigationMenuContent = /*#__PURE__*/ forwardRef(function(
77
77
  children: children
78
78
  });
79
79
  });
80
- const navigation_menu_NavigationMenuLink = /*#__PURE__*/ forwardRef(function(props, forwardedRef) {
80
+ const navigation_menu_NavigationMenuLink = /*#__PURE__*/ __rspack_external_react.forwardRef(function(props, forwardedRef) {
81
81
  const { className, children, render, ...otherProps } = props;
82
82
  return /*#__PURE__*/ jsx(NavigationMenu.Link, {
83
83
  ...otherProps,
@@ -129,7 +129,7 @@ function NavigationMenuViewport(props) {
129
129
  }
130
130
  function NavigationMenuIndicator(props) {
131
131
  const { asChild = false, children, className, render, ...otherProps } = props;
132
- const renderProp = asChild && /*#__PURE__*/ isValidElement(children) ? children : render;
132
+ const renderProp = asChild && /*#__PURE__*/ __rspack_external_react.isValidElement(children) ? children : render;
133
133
  return useRender({
134
134
  defaultTagName: "div",
135
135
  render: renderProp,
@@ -1 +1 @@
1
- {"version":3,"file":"components/ui/navigation-menu.js","sources":["../../../src/components/ui/navigation-menu.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {NavigationMenu as BaseNavigationMenu} from \"@base-ui/react/navigation-menu\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport {ChevronDown} from \"lucide-react\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./navigation-menu.module.css\";\r\n\r\n/** Returns the CSS classes used by the navigation menu trigger wrapper. */\r\nexport function navigationMenuTriggerStyle(className?: string): string {\r\n return cn(styles.trigger, className);\r\n}\r\n\r\ninterface NavigationMenuProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Root>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuListProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.List>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Trigger>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Content>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuLinkProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Link>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuViewportProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Viewport>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuIndicatorProps extends React.ComponentPropsWithRef<\"div\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Overrides the default rendered element while preserving component behavior.\r\n * @default undefined\r\n */\r\n render?: useRender.RenderProp<Record<string, never>>;\r\n /**\r\n * Enables child element composition instead of rendering the default wrapper.\r\n * @default false\r\n * @deprecated Prefer Base UI's `render` prop.\r\n */\r\n asChild?: boolean;\r\n}\r\n\r\n/**\r\n * Coordinates navigation menu state and accessibility behavior.\r\n *\r\n * @remarks\r\n * - Renders a `<nav>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenu>Content</NavigationMenu>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenu(props: Readonly<NavigationMenu.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Root\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"nav\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n <NavigationMenuViewport />\r\n </BaseNavigationMenu.Root>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the navigation menu list.\r\n *\r\n * @remarks\r\n * - Renders a `<ul>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuList>Content</NavigationMenuList>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenuList(props: Readonly<NavigationMenuList.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.List\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"ul\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.list, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.List>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the navigation menu item.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuItem>Content</NavigationMenuItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuItem = BaseNavigationMenu.Item;\r\n\r\n/**\r\n * Renders the navigation menu trigger.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuTrigger>Content</NavigationMenuTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuTrigger = React.forwardRef<HTMLButtonElement, NavigationMenuTrigger.Props>(\r\n function NavigationMenuTrigger(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Trigger\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.trigger, className)}, {}),\r\n })}>\r\n {children}\r\n <ChevronDown className={styles.triggerIcon} />\r\n </BaseNavigationMenu.Trigger>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the navigation menu content.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuContent>Content</NavigationMenuContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuContent = React.forwardRef<HTMLDivElement, NavigationMenuContent.Props>(\r\n function NavigationMenuContent(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Content\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.content, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.Content>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the navigation menu link.\r\n *\r\n * @remarks\r\n * - Renders a `<a>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuLink>Content</NavigationMenuLink>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuLink = React.forwardRef<HTMLAnchorElement, NavigationMenuLink.Props>(function NavigationMenuLink(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Link\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"a\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.link, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.Link>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the navigation menu viewport.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuViewport>Content</NavigationMenuViewport>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenuViewport(props: Readonly<NavigationMenuViewport.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <div className={styles.viewportWrapper}>\r\n <BaseNavigationMenu.Portal>\r\n <BaseNavigationMenu.Positioner\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.positioner}, {}),\r\n })}>\r\n <BaseNavigationMenu.Popup\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.popup}, {}),\r\n })}>\r\n <BaseNavigationMenu.Viewport\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.viewport, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.Viewport>\r\n </BaseNavigationMenu.Popup>\r\n </BaseNavigationMenu.Positioner>\r\n </BaseNavigationMenu.Portal>\r\n </div>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the navigation menu indicator.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuIndicator>Content</NavigationMenuIndicator>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenuIndicator(props: Readonly<NavigationMenuIndicator.Props>): React.ReactElement {\r\n // eslint-disable-next-line sonarjs/deprecation -- backward-compatible asChild API\r\n const {asChild = false, children, className, render, ...otherProps} = props;\r\n const renderProp = asChild && React.isValidElement(children) ? children : render;\r\n\r\n return useRender({\r\n defaultTagName: \"div\",\r\n render: renderProp as never,\r\n props: mergeProps({className: cn(styles.indicator, className)}, otherProps, {\r\n children: renderProp ? undefined : (children ?? <div className={styles.indicatorInner} />),\r\n }),\r\n });\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenu {\r\n export type Props = NavigationMenuProps;\r\n export type State = BaseNavigationMenu.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuList {\r\n export type Props = NavigationMenuListProps;\r\n export type State = BaseNavigationMenu.List.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuTrigger {\r\n export type Props = NavigationMenuTriggerProps;\r\n export type State = BaseNavigationMenu.Trigger.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuContent {\r\n export type Props = NavigationMenuContentProps;\r\n export type State = BaseNavigationMenu.Content.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuLink {\r\n export type Props = NavigationMenuLinkProps;\r\n export type State = BaseNavigationMenu.Link.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuViewport {\r\n export type Props = NavigationMenuViewportProps;\r\n export type State = BaseNavigationMenu.Viewport.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuIndicator {\r\n export type Props = NavigationMenuIndicatorProps;\r\n export type State = Record<string, never>;\r\n}\r\n\r\nNavigationMenu.displayName = \"NavigationMenu\";\r\nNavigationMenuList.displayName = \"NavigationMenuList\";\r\nNavigationMenuItem.displayName = \"NavigationMenuItem\";\r\nNavigationMenuTrigger.displayName = \"NavigationMenuTrigger\";\r\nNavigationMenuContent.displayName = \"NavigationMenuContent\";\r\nNavigationMenuLink.displayName = \"NavigationMenuLink\";\r\nNavigationMenuViewport.displayName = \"NavigationMenuViewport\";\r\nNavigationMenuIndicator.displayName = \"NavigationMenuIndicator\";\r\n\r\nexport {\r\n NavigationMenu,\r\n NavigationMenuContent,\r\n NavigationMenuIndicator,\r\n NavigationMenuItem,\r\n NavigationMenuLink,\r\n NavigationMenuList,\r\n NavigationMenuTrigger,\r\n NavigationMenuViewport,\r\n};\r\n"],"names":["navigationMenuTriggerStyle","className","cn","styles","NavigationMenu","props","children","render","otherProps","BaseNavigationMenu","useRender","mergeProps","NavigationMenuViewport","NavigationMenuList","NavigationMenuItem","NavigationMenuTrigger","React","forwardedRef","ChevronDown","NavigationMenuContent","NavigationMenuLink","NavigationMenuIndicator","asChild","renderProp","undefined"],"mappings":"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"}
1
+ {"version":3,"file":"components/ui/navigation-menu.js","sources":["../../../src/components/ui/navigation-menu.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {NavigationMenu as BaseNavigationMenu} from \"@base-ui/react/navigation-menu\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport {ChevronDown} from \"lucide-react\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./navigation-menu.module.css\";\r\n\r\n/** Returns the CSS classes used by the navigation menu trigger wrapper. */\r\nexport function navigationMenuTriggerStyle(className?: string): string {\r\n return cn(styles.trigger, className);\r\n}\r\n\r\ninterface NavigationMenuProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Root>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuListProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.List>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Trigger>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Content>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuLinkProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Link>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuViewportProps extends Omit<React.ComponentPropsWithRef<typeof BaseNavigationMenu.Viewport>, \"className\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n}\r\n\r\ninterface NavigationMenuIndicatorProps extends React.ComponentPropsWithRef<\"div\"> {\r\n /**\r\n * Applies additional CSS classes to the component root element.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Overrides the default rendered element while preserving component behavior.\r\n * @default undefined\r\n */\r\n render?: useRender.RenderProp<Record<string, never>>;\r\n /**\r\n * Enables child element composition instead of rendering the default wrapper.\r\n * @default false\r\n * @deprecated Prefer Base UI's `render` prop.\r\n */\r\n asChild?: boolean;\r\n}\r\n\r\n/**\r\n * Coordinates navigation menu state and accessibility behavior.\r\n *\r\n * @remarks\r\n * - Renders a `<nav>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenu>Content</NavigationMenu>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenu(props: Readonly<NavigationMenu.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Root\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"nav\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n <NavigationMenuViewport />\r\n </BaseNavigationMenu.Root>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the navigation menu list.\r\n *\r\n * @remarks\r\n * - Renders a `<ul>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuList>Content</NavigationMenuList>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenuList(props: Readonly<NavigationMenuList.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.List\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"ul\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.list, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.List>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the navigation menu item.\r\n *\r\n * @remarks\r\n * - Delegates structure and state to the underlying Base UI primitive\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Preserves the underlying primitive API for advanced composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuItem>Content</NavigationMenuItem>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuItem = BaseNavigationMenu.Item;\r\n\r\n/**\r\n * Renders the navigation menu trigger.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuTrigger>Content</NavigationMenuTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuTrigger = React.forwardRef<HTMLButtonElement, NavigationMenuTrigger.Props>(\r\n function NavigationMenuTrigger(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Trigger\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.trigger, className)}, {}),\r\n })}>\r\n {children}\r\n <ChevronDown className={styles.triggerIcon} />\r\n </BaseNavigationMenu.Trigger>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the navigation menu content.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuContent>Content</NavigationMenuContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuContent = React.forwardRef<HTMLDivElement, NavigationMenuContent.Props>(\r\n function NavigationMenuContent(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Content\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.content, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.Content>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the navigation menu link.\r\n *\r\n * @remarks\r\n * - Renders a `<a>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuLink>Content</NavigationMenuLink>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nconst NavigationMenuLink = React.forwardRef<HTMLAnchorElement, NavigationMenuLink.Props>(function NavigationMenuLink(props, forwardedRef) {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNavigationMenu.Link\r\n {...otherProps}\r\n ref={forwardedRef}\r\n render={useRender({\r\n defaultTagName: \"a\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.link, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.Link>\r\n );\r\n});\r\n\r\n/**\r\n * Renders the navigation menu viewport.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuViewport>Content</NavigationMenuViewport>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenuViewport(props: Readonly<NavigationMenuViewport.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <div className={styles.viewportWrapper}>\r\n <BaseNavigationMenu.Portal>\r\n <BaseNavigationMenu.Positioner\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.positioner}, {}),\r\n })}>\r\n <BaseNavigationMenu.Popup\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n props: mergeProps({className: styles.popup}, {}),\r\n })}>\r\n <BaseNavigationMenu.Viewport\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.viewport, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNavigationMenu.Viewport>\r\n </BaseNavigationMenu.Popup>\r\n </BaseNavigationMenu.Positioner>\r\n </BaseNavigationMenu.Portal>\r\n </div>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the navigation menu indicator.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/navigation-menu | Base UI Navigation Menu}\r\n * - Supports the `render` prop for element composition\r\n *\r\n * @example\r\n * ```tsx\r\n * <NavigationMenuIndicator>Content</NavigationMenuIndicator>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/navigation-menu | Base UI Documentation}\r\n */\r\nfunction NavigationMenuIndicator(props: Readonly<NavigationMenuIndicator.Props>): React.ReactElement {\r\n // eslint-disable-next-line sonarjs/deprecation -- backward-compatible asChild API\r\n const {asChild = false, children, className, render, ...otherProps} = props;\r\n const renderProp = asChild && React.isValidElement(children) ? children : render;\r\n\r\n return useRender({\r\n defaultTagName: \"div\",\r\n render: renderProp as never,\r\n props: mergeProps({className: cn(styles.indicator, className)}, otherProps, {\r\n children: renderProp ? undefined : (children ?? <div className={styles.indicatorInner} />),\r\n }),\r\n });\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenu {\r\n export type Props = NavigationMenuProps;\r\n export type State = BaseNavigationMenu.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuList {\r\n export type Props = NavigationMenuListProps;\r\n export type State = BaseNavigationMenu.List.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuTrigger {\r\n export type Props = NavigationMenuTriggerProps;\r\n export type State = BaseNavigationMenu.Trigger.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuContent {\r\n export type Props = NavigationMenuContentProps;\r\n export type State = BaseNavigationMenu.Content.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuLink {\r\n export type Props = NavigationMenuLinkProps;\r\n export type State = BaseNavigationMenu.Link.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuViewport {\r\n export type Props = NavigationMenuViewportProps;\r\n export type State = BaseNavigationMenu.Viewport.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NavigationMenuIndicator {\r\n export type Props = NavigationMenuIndicatorProps;\r\n export type State = Record<string, never>;\r\n}\r\n\r\nNavigationMenu.displayName = \"NavigationMenu\";\r\nNavigationMenuList.displayName = \"NavigationMenuList\";\r\nNavigationMenuItem.displayName = \"NavigationMenuItem\";\r\nNavigationMenuTrigger.displayName = \"NavigationMenuTrigger\";\r\nNavigationMenuContent.displayName = \"NavigationMenuContent\";\r\nNavigationMenuLink.displayName = \"NavigationMenuLink\";\r\nNavigationMenuViewport.displayName = \"NavigationMenuViewport\";\r\nNavigationMenuIndicator.displayName = \"NavigationMenuIndicator\";\r\n\r\nexport {\r\n NavigationMenu,\r\n NavigationMenuContent,\r\n NavigationMenuIndicator,\r\n NavigationMenuItem,\r\n NavigationMenuLink,\r\n NavigationMenuList,\r\n NavigationMenuTrigger,\r\n NavigationMenuViewport,\r\n};\r\n"],"names":["navigationMenuTriggerStyle","className","cn","styles","NavigationMenu","props","children","render","otherProps","BaseNavigationMenu","useRender","mergeProps","NavigationMenuViewport","NavigationMenuList","NavigationMenuItem","NavigationMenuTrigger","React","forwardedRef","ChevronDown","NavigationMenuContent","NavigationMenuLink","NavigationMenuIndicator","asChild","renderProp","undefined"],"mappings":"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"}
@@ -105,7 +105,7 @@
105
105
  border-top-left-radius: var(--ac-radius-xs);
106
106
  width: .625rem;
107
107
  height: .625rem;
108
- transform: translateY(.125rem)rotate(45deg);
108
+ transform: translateY(.125rem) rotate(45deg);
109
109
  }
110
110
 
111
111
 
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://./home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/navigation-menu.module.css","webpack://./src/components/ui/navigation-menu.module.css"],"names":[],"mappings":"AADA;ECEE,uBAAuB;EACvB,aAAa;EACb,kBAAkB;AACpB;;AAEA;EACE,SAAS;EACT,UAAU;EACV,gBAAgB;EAChB,aAAa;AACf;;AAEA;EACE,mBAAmB;EACnB,sBAAsB;AACxB;;AAEA;EACE,sCAAsC;EACtC,kCAAkC;EAClC,2BAA2B;EAC3B,eAAe;EACf,4BAA4B;EAC5B,kCAAkC;EAClC,4BAA4B;EAC5B,sFAAsF;EACtF,YAAY;EACZ,aAAa;EACb,uBAAuB;EACvB,gBAAgB;EAChB,oBAAoB;AACtB;;AAEA;EACE,kCAAkC;EAClC,kCAAkC;AACpC;;AAEA;EACE,eAAe;EACf,iDAAiD;EACjD,cAAc;AAChB;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,kCAAkC;EAClC,cAAc;EACd,aAAa;EACb,mBAAmB;EACnB,qBAAqB;EACrB,oBAAoB;AACtB;;AAEA;EACE,iCAAiC;EACjC,mBAAmB;AACrB;;AAEA;EACE,8BAA8B;EAC9B,uBAAuB;EACvB,WAAW;EACX,aAAa;EACb,kBAAkB;EAClB,SAAS;EACT,OAAO;AACT;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,mCAAmC;EACnC,kCAAkC;EAClC,kCAAkC;EAClC,gBAAgB;EAChB,uCAAuC;AACzC;;AAEA;EACE,oCAAoC;EACpC,gFAAgF;EAChF,2DAA2D;AAC7D;;AAEA;EACE,uBAAuB;EACvB,WAAW;EACX,aAAa;EACb,aAAa;AACf;;AAEA;EACE,kCAAkC;EAClC,2CAA2C;EAC3C,cAAc;EACd,eAAe;EACf,2CAA2C;AAC7C","sourcesContent":[".root{display:flex;justify-content:center;position:relative}.list{display:flex;list-style:none;margin:0;padding:0}.list,.trigger{align-items:center;gap:var(--ac-space-1)}.trigger{background-color:var(--ac-background);border:none;border-radius:var(--ac-radius-md);color:var(--ac-foreground);cursor:pointer;display:inline-flex;font-size:var(--ac-text-sm);font-weight:500;justify-content:center;min-height:var(--ac-size-default);outline:none;padding:0 var(--ac-space-3);transition:background-color var(--ac-transition-fast),color var(--ac-transition-fast)}.trigger:focus-visible,.trigger:hover,.trigger[data-open]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.triggerIcon{height:.875rem;transition:transform var(--ac-transition-normal);width:.875rem}.trigger[data-open] .triggerIcon{transform:rotate(180deg)}.content{width:100%}.link{align-items:center;border-radius:var(--ac-radius-sm);color:inherit;display:inline-flex;outline:none;text-decoration:none}.link:focus-visible{outline:2px solid var(--ac-ring);outline-offset:2px}.viewportWrapper{display:flex;justify-content:center;left:0;padding-top:var(--ac-space-2);position:absolute;top:100%;width:100%}.positioner{z-index:40}.popup{background-color:var(--ac-popover);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);box-shadow:0 16px 40px -16px rgba(0,0,0,.25);overflow:hidden}.viewport{height:var(--ac-nav-content-height);transition:width var(--ac-transition-normal),height var(--ac-transition-normal);width:min(100vw - 2rem,var(--ac-nav-content-width,20rem))}.indicator{display:flex;height:.5rem;justify-content:center;width:100%}.indicatorInner{background-color:var(--ac-border);border-top-left-radius:var(--ac-radius-xs);height:.625rem;transform:translateY(.125rem) rotate(45deg);width:.625rem}",".root {\n justify-content: center;\n display: flex;\n position: relative;\n}\n\n.list {\n margin: 0;\n padding: 0;\n list-style: none;\n display: flex;\n}\n\n.list, .trigger {\n align-items: center;\n gap: var(--ac-space-1);\n}\n\n.trigger {\n background-color: var(--ac-background);\n border-radius: var(--ac-radius-md);\n color: var(--ac-foreground);\n cursor: pointer;\n font-size: var(--ac-text-sm);\n min-height: var(--ac-size-default);\n padding: 0 var(--ac-space-3);\n transition: background-color var(--ac-transition-fast),color var(--ac-transition-fast);\n border: none;\n outline: none;\n justify-content: center;\n font-weight: 500;\n display: inline-flex;\n}\n\n.trigger:focus-visible, .trigger:hover, .trigger[data-open] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.triggerIcon {\n height: .875rem;\n transition: transform var(--ac-transition-normal);\n width: .875rem;\n}\n\n.trigger[data-open] .triggerIcon {\n transform: rotate(180deg);\n}\n\n.content {\n width: 100%;\n}\n\n.link {\n border-radius: var(--ac-radius-sm);\n color: inherit;\n outline: none;\n align-items: center;\n text-decoration: none;\n display: inline-flex;\n}\n\n.link:focus-visible {\n outline: 2px solid var(--ac-ring);\n outline-offset: 2px;\n}\n\n.viewportWrapper {\n padding-top: var(--ac-space-2);\n justify-content: center;\n width: 100%;\n display: flex;\n position: absolute;\n top: 100%;\n left: 0;\n}\n\n.positioner {\n z-index: 40;\n}\n\n.popup {\n background-color: var(--ac-popover);\n border: 1px solid var(--ac-border);\n border-radius: var(--ac-radius-md);\n overflow: hidden;\n box-shadow: 0 16px 40px -16px #00000040;\n}\n\n.viewport {\n height: var(--ac-nav-content-height);\n transition: width var(--ac-transition-normal),height var(--ac-transition-normal);\n width: min(100vw - 2rem,var(--ac-nav-content-width, 20rem));\n}\n\n.indicator {\n justify-content: center;\n width: 100%;\n height: .5rem;\n display: flex;\n}\n\n.indicatorInner {\n background-color: var(--ac-border);\n border-top-left-radius: var(--ac-radius-xs);\n width: .625rem;\n height: .625rem;\n transform: translateY(.125rem)rotate(45deg);\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://./../../node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/css-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[1]!builtin:lightningcss-loader??ruleSet[1].rules[1].oneOf[2].use[2]!/home/runner/work/arolariu.ro/arolariu.ro/node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/postcss-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[3]!/home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/navigation-menu.module.css","webpack://./src/components/ui/navigation-menu.module.css"],"names":[],"mappings":"AAAA;ECCE,uBAAuB;EACvB,aAAa;EACb,kBAAkB;AACpB;;ADJ4D;ECO1D,SAAS;EACT,UAAU;EACV,gBAAgB;EAChB,aAAa;AACf;;ADXkH;ECchH,mBAAmB;EACnB,sBAAsB;AACxB;;ADhB0K;ECmBxK,sCAAsC;EACtC,kCAAkC;EAClC,2BAA2B;EAC3B,eAAe;EACf,4BAA4B;EAC5B,kCAAkC;EAClC,4BAA4B;EAC5B,sFAAsF;EACtF,YAAY;EACZ,aAAa;EACb,uBAAuB;EACvB,gBAAgB;EAChB,oBAAoB;AACtB;;ADhCyiB;ECmCviB,kCAAkC;EAClC,kCAAkC;AACpC;;ADrCuqB;ECwCrqB,eAAe;EACf,iDAAiD;EACjD,cAAc;AAChB;;AD3CkwB;EC8ChwB,yBAAyB;AAC3B;;AD/C4zB;ECkD1zB,WAAW;AACb;;ADnDg1B;ECsD90B,kCAAkC;EAClC,cAAc;EACd,aAAa;EACb,mBAAmB;EACnB,qBAAqB;EACrB,oBAAoB;AACtB;;AD5D+8B;EC+D78B,iCAAiC;EACjC,mBAAmB;AACrB;;ADjEuhC;ECoErhC,8BAA8B;EAC9B,uBAAuB;EACvB,WAAW;EACX,aAAa;EACb,kBAAkB;EAClB,SAAS;EACT,OAAO;AACT;;AD3EupC;EC8ErpC,WAAW;AACb;;AD/E8qC;ECkF5qC,mCAAmC;EACnC,kCAAkC;EAClC,kCAAkC;EAClC,gBAAgB;EAChB,uCAAuC;AACzC;;ADvFy1C;EC0Fv1C,oCAAoC;EACpC,gFAAgF;EAChF,2DAA2D;AAC7D;;AD7FihD;ECgG/gD,uBAAuB;EACvB,WAAW;EACX,aAAa;EACb,aAAa;AACf;;ADpGwlD;ECuGtlD,kCAAkC;EAClC,2CAA2C;EAC3C,cAAc;EACd,eAAe;EACf,4CAA4C;AAC9C","sourcesContent":[".root{display:flex;justify-content:center;position:relative}.list{display:flex;list-style:none;margin:0;padding:0}.list,.trigger{align-items:center;gap:var(--ac-space-1)}.trigger{background-color:var(--ac-background);border:none;border-radius:var(--ac-radius-md);color:var(--ac-foreground);cursor:pointer;display:inline-flex;font-size:var(--ac-text-sm);font-weight:500;justify-content:center;min-height:var(--ac-size-default);outline:none;padding:0 var(--ac-space-3);transition:background-color var(--ac-transition-fast),color var(--ac-transition-fast)}.trigger:focus-visible,.trigger:hover,.trigger[data-open]{background-color:var(--ac-accent);color:var(--ac-accent-foreground)}.triggerIcon{height:.875rem;transition:transform var(--ac-transition-normal);width:.875rem}.trigger[data-open] .triggerIcon{transform:rotate(180deg)}.content{width:100%}.link{align-items:center;border-radius:var(--ac-radius-sm);color:inherit;display:inline-flex;outline:none;text-decoration:none}.link:focus-visible{outline:2px solid var(--ac-ring);outline-offset:2px}.viewportWrapper{display:flex;justify-content:center;left:0;padding-top:var(--ac-space-2);position:absolute;top:100%;width:100%}.positioner{z-index:40}.popup{background-color:var(--ac-popover);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);box-shadow:0 16px 40px -16px rgba(0,0,0,.25);overflow:hidden}.viewport{height:var(--ac-nav-content-height);transition:width var(--ac-transition-normal),height var(--ac-transition-normal);width:min(100vw - 2rem,var(--ac-nav-content-width,20rem))}.indicator{display:flex;height:.5rem;justify-content:center;width:100%}.indicatorInner{background-color:var(--ac-border);border-top-left-radius:var(--ac-radius-xs);height:.625rem;transform:translateY(.125rem) rotate(45deg);width:.625rem}",".root {\n justify-content: center;\n display: flex;\n position: relative;\n}\n\n.list {\n margin: 0;\n padding: 0;\n list-style: none;\n display: flex;\n}\n\n.list, .trigger {\n align-items: center;\n gap: var(--ac-space-1);\n}\n\n.trigger {\n background-color: var(--ac-background);\n border-radius: var(--ac-radius-md);\n color: var(--ac-foreground);\n cursor: pointer;\n font-size: var(--ac-text-sm);\n min-height: var(--ac-size-default);\n padding: 0 var(--ac-space-3);\n transition: background-color var(--ac-transition-fast),color var(--ac-transition-fast);\n border: none;\n outline: none;\n justify-content: center;\n font-weight: 500;\n display: inline-flex;\n}\n\n.trigger:focus-visible, .trigger:hover, .trigger[data-open] {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n}\n\n.triggerIcon {\n height: .875rem;\n transition: transform var(--ac-transition-normal);\n width: .875rem;\n}\n\n.trigger[data-open] .triggerIcon {\n transform: rotate(180deg);\n}\n\n.content {\n width: 100%;\n}\n\n.link {\n border-radius: var(--ac-radius-sm);\n color: inherit;\n outline: none;\n align-items: center;\n text-decoration: none;\n display: inline-flex;\n}\n\n.link:focus-visible {\n outline: 2px solid var(--ac-ring);\n outline-offset: 2px;\n}\n\n.viewportWrapper {\n padding-top: var(--ac-space-2);\n justify-content: center;\n width: 100%;\n display: flex;\n position: absolute;\n top: 100%;\n left: 0;\n}\n\n.positioner {\n z-index: 40;\n}\n\n.popup {\n background-color: var(--ac-popover);\n border: 1px solid var(--ac-border);\n border-radius: var(--ac-radius-md);\n overflow: hidden;\n box-shadow: 0 16px 40px -16px #00000040;\n}\n\n.viewport {\n height: var(--ac-nav-content-height);\n transition: width var(--ac-transition-normal),height var(--ac-transition-normal);\n width: min(100vw - 2rem,var(--ac-nav-content-width, 20rem));\n}\n\n.indicator {\n justify-content: center;\n width: 100%;\n height: .5rem;\n display: flex;\n}\n\n.indicatorInner {\n background-color: var(--ac-border);\n border-top-left-radius: var(--ac-radius-xs);\n width: .625rem;\n height: .625rem;\n transform: translateY(.125rem) rotate(45deg);\n}\n"],"sourceRoot":""}
@@ -3,9 +3,9 @@ import { jsx } from "react/jsx-runtime";
3
3
  import { mergeProps } from "@base-ui/react/merge-props";
4
4
  import { NumberField } from "@base-ui/react/number-field";
5
5
  import { useRender } from "@base-ui/react/use-render";
6
- import { forwardRef } from "react";
7
6
  import { cn } from "../../lib/utilities.js";
8
7
  import number_field_module from "./number-field.module.js";
8
+ import * as __rspack_external_react from "react";
9
9
  function number_field_NumberField(props) {
10
10
  const { className, children, render, ...otherProps } = props;
11
11
  return /*#__PURE__*/ jsx(NumberField.Root, {
@@ -20,7 +20,7 @@ function number_field_NumberField(props) {
20
20
  children: children
21
21
  });
22
22
  }
23
- const NumberFieldGroup = /*#__PURE__*/ forwardRef((props, ref)=>{
23
+ const NumberFieldGroup = /*#__PURE__*/ __rspack_external_react.forwardRef((props, ref)=>{
24
24
  const { className, children, render, ...otherProps } = props;
25
25
  return /*#__PURE__*/ jsx(NumberField.Group, {
26
26
  ref: ref,
@@ -35,7 +35,7 @@ const NumberFieldGroup = /*#__PURE__*/ forwardRef((props, ref)=>{
35
35
  children: children
36
36
  });
37
37
  });
38
- const NumberFieldInput = /*#__PURE__*/ forwardRef((props, ref)=>{
38
+ const NumberFieldInput = /*#__PURE__*/ __rspack_external_react.forwardRef((props, ref)=>{
39
39
  const { className, render, ...otherProps } = props;
40
40
  return /*#__PURE__*/ jsx(NumberField.Input, {
41
41
  ref: ref,
@@ -1 +1 @@
1
- {"version":3,"file":"components/ui/number-field.js","sources":["../../../src/components/ui/number-field.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {NumberField as BaseNumberField} from \"@base-ui/react/number-field\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./number-field.module.css\";\r\n\r\n/**\r\n * Provides a styled numeric input with optional steppers and scrub support.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Number Field primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberField defaultValue={2}>\r\n * <NumberFieldGroup>\r\n * <NumberFieldDecrement />\r\n * <NumberFieldInput />\r\n * <NumberFieldIncrement />\r\n * </NumberFieldGroup>\r\n * </NumberField>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberField(props: Readonly<NumberField.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Root\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNumberField.Root>\r\n );\r\n}\r\n\r\n/**\r\n * Wraps the interactive number-field controls in a shared container.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Number Field group primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldGroup>\r\n * <NumberFieldInput />\r\n * </NumberFieldGroup>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nconst NumberFieldGroup = React.forwardRef<React.ComponentRef<typeof BaseNumberField.Group>, NumberFieldGroup.Props>(\r\n (props: Readonly<NumberFieldGroup.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Group\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.group, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNumberField.Group>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the text input used for numeric entry.\r\n *\r\n * @remarks\r\n * - Renders an `<input>` element by default\r\n * - Built on Base UI Number Field input primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldInput aria-label='Quantity' />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nconst NumberFieldInput = React.forwardRef<React.ComponentRef<typeof BaseNumberField.Input>, NumberFieldInput.Props>(\r\n (props: Readonly<NumberFieldInput.Props>, ref): React.ReactElement => {\r\n const {className, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Input\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"input\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.input, className)}, {}),\r\n })}\r\n />\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the increment control for a number field.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on Base UI Number Field increment primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldIncrement />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberFieldIncrement(props: Readonly<NumberFieldIncrement.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Increment\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.stepper, styles.increment, className)}, {}),\r\n })}>\r\n {children ?? <span className={styles.stepperSymbol}>+</span>}\r\n </BaseNumberField.Increment>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the decrement control for a number field.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on Base UI Number Field decrement primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldDecrement />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberFieldDecrement(props: Readonly<NumberFieldDecrement.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Decrement\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.stepper, styles.decrement, className)}, {}),\r\n })}>\r\n {children ?? <span className={styles.stepperSymbol}>−</span>}\r\n </BaseNumberField.Decrement>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the scrub handle used for drag-to-adjust interactions.\r\n *\r\n * @remarks\r\n * - Renders a `<span>` element by default\r\n * - Built on Base UI Number Field scrub-area primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldScrubArea />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberFieldScrubArea(props: Readonly<NumberFieldScrubArea.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.ScrubArea\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"span\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.scrubArea, className)}, {}),\r\n })}>\r\n {children ?? <span className={styles.scrubHandle}>⋮⋮</span>}\r\n </BaseNumberField.ScrubArea>\r\n );\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberField {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Root>;\r\n export type State = BaseNumberField.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldGroup {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Group>;\r\n export type State = BaseNumberField.Group.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldInput {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Input>;\r\n export type State = BaseNumberField.Input.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldIncrement {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Increment>;\r\n export type State = BaseNumberField.Increment.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldDecrement {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Decrement>;\r\n export type State = BaseNumberField.Decrement.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldScrubArea {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.ScrubArea>;\r\n export type State = BaseNumberField.ScrubArea.State;\r\n}\r\n\r\nNumberField.displayName = \"NumberField\";\r\nNumberFieldGroup.displayName = \"NumberFieldGroup\";\r\nNumberFieldInput.displayName = \"NumberFieldInput\";\r\nNumberFieldIncrement.displayName = \"NumberFieldIncrement\";\r\nNumberFieldDecrement.displayName = \"NumberFieldDecrement\";\r\nNumberFieldScrubArea.displayName = \"NumberFieldScrubArea\";\r\n\r\nexport {NumberField, NumberFieldDecrement, NumberFieldGroup, NumberFieldIncrement, NumberFieldInput, NumberFieldScrubArea};\r\n"],"names":["NumberField","props","className","children","render","otherProps","BaseNumberField","useRender","mergeProps","cn","styles","NumberFieldGroup","React","ref","NumberFieldInput","NumberFieldIncrement","NumberFieldDecrement","NumberFieldScrubArea"],"mappings":";;;;;;;;AA8BA,SAASA,yBAAYC,KAAkC;IACrD,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,YAAAA,IAAoB;QAClB,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,oBAAAA,IAAW,EAAER;YAAU,GAAG,CAAC;QAC9D;kBACCC;;AAGP;AAkBA,MAAMQ,mBAAmB,WAAHA,GAAGC,WACvB,CAACX,OAAyCY;IACxC,MAAM,EAACX,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,YAAAA,KAAqB;QACpB,KAAKO;QACJ,GAAGR,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,oBAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;kBACCC;;AAGP;AAiBF,MAAMW,mBAAmB,WAAHA,GAAGF,WACvB,CAACX,OAAyCY;IACxC,MAAM,EAACX,SAAS,EAAEE,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAE3C,OAAO,WAAP,GACE,IAACK,YAAAA,KAAqB;QACpB,KAAKO;QACJ,GAAGR,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,oBAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;;AAGN;AAiBF,SAASa,qBAAqBd,KAA2C;IACvE,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,YAAAA,SAAyB;QACvB,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,oBAAAA,OAAc,EAAEA,oBAAAA,SAAgB,EAAER;YAAU,GAAG,CAAC;QACnF;kBACCC,YAAY,WAAZA,GAAY,IAAC;YAAK,WAAWO,oBAAAA,aAAoB;sBAAE;;;AAG1D;AAgBA,SAASM,qBAAqBf,KAA2C;IACvE,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,YAAAA,SAAyB;QACvB,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,oBAAAA,OAAc,EAAEA,oBAAAA,SAAgB,EAAER;YAAU,GAAG,CAAC;QACnF;kBACCC,YAAY,WAAZA,GAAY,IAAC;YAAK,WAAWO,oBAAAA,aAAoB;sBAAE;;;AAG1D;AAgBA,SAASO,qBAAqBhB,KAA2C;IACvE,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,YAAAA,SAAyB;QACvB,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,oBAAAA,SAAgB,EAAER;YAAU,GAAG,CAAC;QACnE;kBACCC,YAAY,WAAZA,GAAY,IAAC;YAAK,WAAWO,oBAAAA,WAAkB;sBAAE;;;AAGxD;AAsCAV,yBAAY,WAAW,GAAG;AAC1BW,iBAAiB,WAAW,GAAG;AAC/BG,iBAAiB,WAAW,GAAG;AAC/BC,qBAAqB,WAAW,GAAG;AACnCC,qBAAqB,WAAW,GAAG;AACnCC,qBAAqB,WAAW,GAAG"}
1
+ {"version":3,"file":"components/ui/number-field.js","sources":["../../../src/components/ui/number-field.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {NumberField as BaseNumberField} from \"@base-ui/react/number-field\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./number-field.module.css\";\r\n\r\n/**\r\n * Provides a styled numeric input with optional steppers and scrub support.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Number Field primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberField defaultValue={2}>\r\n * <NumberFieldGroup>\r\n * <NumberFieldDecrement />\r\n * <NumberFieldInput />\r\n * <NumberFieldIncrement />\r\n * </NumberFieldGroup>\r\n * </NumberField>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberField(props: Readonly<NumberField.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Root\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNumberField.Root>\r\n );\r\n}\r\n\r\n/**\r\n * Wraps the interactive number-field controls in a shared container.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on Base UI Number Field group primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldGroup>\r\n * <NumberFieldInput />\r\n * </NumberFieldGroup>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nconst NumberFieldGroup = React.forwardRef<React.ComponentRef<typeof BaseNumberField.Group>, NumberFieldGroup.Props>(\r\n (props: Readonly<NumberFieldGroup.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Group\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.group, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseNumberField.Group>\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the text input used for numeric entry.\r\n *\r\n * @remarks\r\n * - Renders an `<input>` element by default\r\n * - Built on Base UI Number Field input primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldInput aria-label='Quantity' />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nconst NumberFieldInput = React.forwardRef<React.ComponentRef<typeof BaseNumberField.Input>, NumberFieldInput.Props>(\r\n (props: Readonly<NumberFieldInput.Props>, ref): React.ReactElement => {\r\n const {className, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Input\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"input\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.input, className)}, {}),\r\n })}\r\n />\r\n );\r\n },\r\n);\r\n\r\n/**\r\n * Renders the increment control for a number field.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on Base UI Number Field increment primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldIncrement />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberFieldIncrement(props: Readonly<NumberFieldIncrement.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Increment\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.stepper, styles.increment, className)}, {}),\r\n })}>\r\n {children ?? <span className={styles.stepperSymbol}>+</span>}\r\n </BaseNumberField.Increment>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the decrement control for a number field.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on Base UI Number Field decrement primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldDecrement />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberFieldDecrement(props: Readonly<NumberFieldDecrement.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.Decrement\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.stepper, styles.decrement, className)}, {}),\r\n })}>\r\n {children ?? <span className={styles.stepperSymbol}>−</span>}\r\n </BaseNumberField.Decrement>\r\n );\r\n}\r\n\r\n/**\r\n * Renders the scrub handle used for drag-to-adjust interactions.\r\n *\r\n * @remarks\r\n * - Renders a `<span>` element by default\r\n * - Built on Base UI Number Field scrub-area primitives\r\n *\r\n * @example\r\n * ```tsx\r\n * <NumberFieldScrubArea />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/number-field | Base UI Number Field Docs}\r\n */\r\nfunction NumberFieldScrubArea(props: Readonly<NumberFieldScrubArea.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseNumberField.ScrubArea\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"span\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.scrubArea, className)}, {}),\r\n })}>\r\n {children ?? <span className={styles.scrubHandle}>⋮⋮</span>}\r\n </BaseNumberField.ScrubArea>\r\n );\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberField {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Root>;\r\n export type State = BaseNumberField.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldGroup {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Group>;\r\n export type State = BaseNumberField.Group.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldInput {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Input>;\r\n export type State = BaseNumberField.Input.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldIncrement {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Increment>;\r\n export type State = BaseNumberField.Increment.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldDecrement {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.Decrement>;\r\n export type State = BaseNumberField.Decrement.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace NumberFieldScrubArea {\r\n export type Props = React.ComponentPropsWithRef<typeof BaseNumberField.ScrubArea>;\r\n export type State = BaseNumberField.ScrubArea.State;\r\n}\r\n\r\nNumberField.displayName = \"NumberField\";\r\nNumberFieldGroup.displayName = \"NumberFieldGroup\";\r\nNumberFieldInput.displayName = \"NumberFieldInput\";\r\nNumberFieldIncrement.displayName = \"NumberFieldIncrement\";\r\nNumberFieldDecrement.displayName = \"NumberFieldDecrement\";\r\nNumberFieldScrubArea.displayName = \"NumberFieldScrubArea\";\r\n\r\nexport {NumberField, NumberFieldDecrement, NumberFieldGroup, NumberFieldIncrement, NumberFieldInput, NumberFieldScrubArea};\r\n"],"names":["NumberField","props","className","children","render","otherProps","BaseNumberField","useRender","mergeProps","cn","styles","NumberFieldGroup","React","ref","NumberFieldInput","NumberFieldIncrement","NumberFieldDecrement","NumberFieldScrubArea"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://./home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/number-field.module.css","webpack://./src/components/ui/number-field.module.css"],"names":[],"mappings":"AADA;ECEE,sBAAsB;EACtB,aAAa;AACf;;AAEA;EACE,sCAAsC;EACtC,iCAAiC;EACjC,kCAAkC;EAClC,kCAAkC;EAClC,uFAAuF;EACvF,oBAAoB;EACpB,WAAW;EACX,aAAa;EACb,gBAAgB;EAChB,+BAA+B;;EAE/B;IACE,4BAA4B;IAC5B,oCAAoC;EACtC;;EAEA;IACE,mCAAmC;IACnC,+EAA+E;EACjF;AACF;;AAEA;EACE,+CAA+C;AACjD;;AAEA;EACE,sBAAsB;EACtB,2BAA2B;EAC3B,4BAA4B;EAC5B,YAAY;EACZ,4BAA4B;EAC5B,uBAAuB;EACvB,SAAS;EACT,aAAa;EACb,UAAU;EACV,gBAAgB;;EAEhB;IACE,iCAAiC;EACnC;;EAEA;IACE,gBAAgB;EAClB;;EAEA;IACE,mBAAmB;EACrB;AACF;;AAEA;EACE,kFAAkF;EAClF,2BAA2B;EAC3B,eAAe;EACf,4BAA4B;EAC5B,iCAAiC;EACjC,4BAA4B;EAC5B,sFAAsF;EACtF,yBAAyB;EACzB,iBAAiB;EACjB,SAAS;EACT,aAAa;EACb,UAAU;EACV,uBAAuB;EACvB,mBAAmB;EACnB,gBAAgB;EAChB,cAAc;EACd,oBAAoB;;EAEpB;IACE,kCAAkC;IAClC,0CAA0C;IAC1C,UAAU;IACV,kBAAkB;EACpB;;EAEA;IACE,mBAAmB;IACnB,WAAW;EACb;;EAEA;IACE;MACE,kCAAkC;MAClC,kCAAkC;IACpC;EACF;AACF;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,gFAAgF;EAChF,wBAAwB;AAC1B;;AAEA;EACE,uBAAuB;EACvB,mBAAmB;EACnB,WAAW;EACX,cAAc;EACd,oBAAoB;AACtB;;AAEA;EACE,iCAAiC;EACjC,2DAA2D;AAC7D;;AAEA;EACE,4BAA4B;EAC5B,sBAAsB;AACxB","sourcesContent":[".root{display:grid;gap:var(--ac-space-2)}.group{align-items:stretch;background-color:var(--ac-background);border:1px solid var(--ac-input);border-radius:var(--ac-radius-md);box-shadow:0 1px 2px 0 rgba(0,0,0,.04);display:flex;min-height:var(--ac-size-default);overflow:hidden;transition:border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);width:100%;&:focus-within{border-color:var(--ac-ring);box-shadow:0 0 0 1px var(--ac-ring)}&:has([aria-invalid=true]),&:has([data-invalid]){border-color:var(--ac-destructive);box-shadow:0 0 0 1px color-mix(in oklch,var(--ac-destructive),transparent 65%)}}.group>*+*{border-inline-start:1px solid var(--ac-border)}.input{background-color:transparent;border:0;box-sizing:border-box;color:var(--ac-foreground);flex:1 1 auto;font-size:var(--ac-text-sm);line-height:1.5;min-width:0;outline:none;padding:0 var(--ac-space-3);&::placeholder{color:var(--ac-muted-foreground)}&:focus-visible{box-shadow:none}&:disabled{cursor:not-allowed}}.scrubArea,.stepper{align-items:center;background-color:color-mix(in oklch,var(--ac-secondary),var(--ac-background) 30%);border:0;color:var(--ac-foreground);cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:var(--ac-text-xs);font-weight:600;justify-content:center;line-height:1;min-width:var(--ac-size-default);outline:none;padding:0 var(--ac-space-2);transition:background-color var(--ac-transition-fast),color var(--ac-transition-fast);user-select:none;&:focus-visible{background-color:var(--ac-accent);box-shadow:inset 0 0 0 1px var(--ac-ring);position:relative;z-index:1}&[data-disabled]{cursor:not-allowed;opacity:.5}@media (hover:hover){&:hover:not([data-disabled]){background-color:var(--ac-accent);color:var(--ac-accent-foreground)}}}.decrement,.increment{width:var(--ac-size-default)}.decrement[data-pressed],.increment[data-pressed],.scrubArea[data-scrubbing]{background-color:color-mix(in oklch,var(--ac-primary),var(--ac-background) 78%);color:var(--ac-primary)}.stepperSymbol{align-items:center;display:inline-flex;justify-content:center;line-height:1;width:1rem}.scrubArea{color:var(--ac-muted-foreground);min-width:calc(var(--ac-size-default) - var(--ac-space-1))}.scrubHandle{font-size:var(--ac-text-sm);letter-spacing:-.15em}",".root {\n gap: var(--ac-space-2);\n display: grid;\n}\n\n.group {\n background-color: var(--ac-background);\n border: 1px solid var(--ac-input);\n border-radius: var(--ac-radius-md);\n min-height: var(--ac-size-default);\n transition: border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);\n align-items: stretch;\n width: 100%;\n display: flex;\n overflow: hidden;\n box-shadow: 0 1px 2px #0000000a;\n\n &:focus-within {\n border-color: var(--ac-ring);\n box-shadow: 0 0 0 1px var(--ac-ring);\n }\n\n &:has([aria-invalid=\"true\"]), &:has([data-invalid]) {\n border-color: var(--ac-destructive);\n box-shadow: 0 0 0 1px color-mix(in oklch,var(--ac-destructive),transparent 65%);\n }\n}\n\n.group > * + * {\n border-inline-start: 1px solid var(--ac-border);\n}\n\n.input {\n box-sizing: border-box;\n color: var(--ac-foreground);\n font-size: var(--ac-text-sm);\n min-width: 0;\n padding: 0 var(--ac-space-3);\n background-color: #0000;\n border: 0;\n outline: none;\n flex: auto;\n line-height: 1.5;\n\n &::placeholder {\n color: var(--ac-muted-foreground);\n }\n\n &:focus-visible {\n box-shadow: none;\n }\n\n &:disabled {\n cursor: not-allowed;\n }\n}\n\n.scrubArea, .stepper {\n background-color: color-mix(in oklch,var(--ac-secondary),var(--ac-background) 30%);\n color: var(--ac-foreground);\n cursor: pointer;\n font-size: var(--ac-text-xs);\n min-width: var(--ac-size-default);\n padding: 0 var(--ac-space-2);\n transition: background-color var(--ac-transition-fast),color var(--ac-transition-fast);\n -webkit-user-select: none;\n user-select: none;\n border: 0;\n outline: none;\n flex: none;\n justify-content: center;\n align-items: center;\n font-weight: 600;\n line-height: 1;\n display: inline-flex;\n\n &:focus-visible {\n background-color: var(--ac-accent);\n box-shadow: inset 0 0 0 1px var(--ac-ring);\n z-index: 1;\n position: relative;\n }\n\n &[data-disabled] {\n cursor: not-allowed;\n opacity: .5;\n }\n\n @media (hover: hover) {\n &:hover:not([data-disabled]) {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n }\n }\n}\n\n.decrement, .increment {\n width: var(--ac-size-default);\n}\n\n.decrement[data-pressed], .increment[data-pressed], .scrubArea[data-scrubbing] {\n background-color: color-mix(in oklch,var(--ac-primary),var(--ac-background) 78%);\n color: var(--ac-primary);\n}\n\n.stepperSymbol {\n justify-content: center;\n align-items: center;\n width: 1rem;\n line-height: 1;\n display: inline-flex;\n}\n\n.scrubArea {\n color: var(--ac-muted-foreground);\n min-width: calc(var(--ac-size-default) - var(--ac-space-1));\n}\n\n.scrubHandle {\n font-size: var(--ac-text-sm);\n letter-spacing: -.15em;\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://./../../node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/css-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[1]!builtin:lightningcss-loader??ruleSet[1].rules[1].oneOf[2].use[2]!/home/runner/work/arolariu.ro/arolariu.ro/node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/postcss-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[3]!/home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/number-field.module.css","webpack://./src/components/ui/number-field.module.css"],"names":[],"mappings":"AAAA;ECCE,sBAAsB;EACtB,aAAa;AACf;;ADHyC;ECMvC,sCAAsC;EACtC,iCAAiC;EACjC,kCAAkC;EAClC,kCAAkC;EAClC,uFAAuF;EACvF,oBAAoB;EACpB,WAAW;EACX,aAAa;EACb,gBAAgB;EAChB,+BAA+B;;EDfoV;ICkBjX,4BAA4B;IAC5B,oCAAoC;EACtC;;EDpBkc;ICuBhc,mCAAmC;IACnC,+EAA+E;EACjF;AACF;;AD1BwmB;EC6BtmB,+CAA+C;AACjD;;AD9BkqB;ECiChqB,sBAAsB;EACtB,2BAA2B;EAC3B,4BAA4B;EAC5B,YAAY;EACZ,4BAA4B;EAC5B,uBAAuB;EACvB,SAAS;EACT,aAAa;EACb,UAAU;EACV,gBAAgB;;ED1C61B;IC6C32B,iCAAiC;EACnC;;ED9C65B;ICiD35B,gBAAgB;EAClB;;EDlD67B;ICqD37B,mBAAmB;EACrB;AACF;;ADvD89B;EC0D59B,kFAAkF;EAClF,2BAA2B;EAC3B,eAAe;EACf,4BAA4B;EAC5B,iCAAiC;EACjC,4BAA4B;EAC5B,sFAAsF;EACtF,yBAAyB;EACzB,iBAAiB;EACjB,SAAS;EACT,aAAa;EACb,UAAU;EACV,uBAAuB;EACvB,mBAAmB;EACnB,gBAAgB;EAChB,cAAc;EACd,oBAAoB;;ED1Ew5C;IC6E16C,kCAAkC;IAClC,0CAA0C;IAC1C,UAAU;IACV,kBAAkB;EACpB;;EDjFoiD;ICoFliD,mBAAmB;IACnB,WAAW;EACb;;EDtFmlD;IAAqB;MC0FpmD,kCAAkC;MAClC,kCAAkC;IACpC;EACF;AACF;;AD9F6sD;ECiG3sD,6BAA6B;AAC/B;;ADlGgwD;ECqG9vD,gFAAgF;EAChF,wBAAwB;AAC1B;;ADvGq7D;EC0Gn7D,uBAAuB;EACvB,mBAAmB;EACnB,WAAW;EACX,cAAc;EACd,oBAAoB;AACtB;;AD/G2hE;ECkHzhE,iCAAiC;EACjC,2DAA2D;AAC7D;;ADpHkoE;ECuHhoE,4BAA4B;EAC5B,sBAAsB;AACxB","sourcesContent":[".root{display:grid;gap:var(--ac-space-2)}.group{align-items:stretch;background-color:var(--ac-background);border:1px solid var(--ac-input);border-radius:var(--ac-radius-md);box-shadow:0 1px 2px 0 rgba(0,0,0,.04);display:flex;min-height:var(--ac-size-default);overflow:hidden;transition:border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);width:100%;&:focus-within{border-color:var(--ac-ring);box-shadow:0 0 0 1px var(--ac-ring)}&:has([aria-invalid=true]),&:has([data-invalid]){border-color:var(--ac-destructive);box-shadow:0 0 0 1px color-mix(in oklch,var(--ac-destructive),transparent 65%)}}.group>*+*{border-inline-start:1px solid var(--ac-border)}.input{background-color:transparent;border:0;box-sizing:border-box;color:var(--ac-foreground);flex:1 1 auto;font-size:var(--ac-text-sm);line-height:1.5;min-width:0;outline:none;padding:0 var(--ac-space-3);&::placeholder{color:var(--ac-muted-foreground)}&:focus-visible{box-shadow:none}&:disabled{cursor:not-allowed}}.scrubArea,.stepper{align-items:center;background-color:color-mix(in oklch,var(--ac-secondary),var(--ac-background) 30%);border:0;color:var(--ac-foreground);cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:var(--ac-text-xs);font-weight:600;justify-content:center;line-height:1;min-width:var(--ac-size-default);outline:none;padding:0 var(--ac-space-2);transition:background-color var(--ac-transition-fast),color var(--ac-transition-fast);user-select:none;&:focus-visible{background-color:var(--ac-accent);box-shadow:inset 0 0 0 1px var(--ac-ring);position:relative;z-index:1}&[data-disabled]{cursor:not-allowed;opacity:.5}@media (hover:hover){&:hover:not([data-disabled]){background-color:var(--ac-accent);color:var(--ac-accent-foreground)}}}.decrement,.increment{width:var(--ac-size-default)}.decrement[data-pressed],.increment[data-pressed],.scrubArea[data-scrubbing]{background-color:color-mix(in oklch,var(--ac-primary),var(--ac-background) 78%);color:var(--ac-primary)}.stepperSymbol{align-items:center;display:inline-flex;justify-content:center;line-height:1;width:1rem}.scrubArea{color:var(--ac-muted-foreground);min-width:calc(var(--ac-size-default) - var(--ac-space-1))}.scrubHandle{font-size:var(--ac-text-sm);letter-spacing:-.15em}",".root {\n gap: var(--ac-space-2);\n display: grid;\n}\n\n.group {\n background-color: var(--ac-background);\n border: 1px solid var(--ac-input);\n border-radius: var(--ac-radius-md);\n min-height: var(--ac-size-default);\n transition: border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);\n align-items: stretch;\n width: 100%;\n display: flex;\n overflow: hidden;\n box-shadow: 0 1px 2px #0000000a;\n\n &:focus-within {\n border-color: var(--ac-ring);\n box-shadow: 0 0 0 1px var(--ac-ring);\n }\n\n &:has([aria-invalid=\"true\"]), &:has([data-invalid]) {\n border-color: var(--ac-destructive);\n box-shadow: 0 0 0 1px color-mix(in oklch,var(--ac-destructive),transparent 65%);\n }\n}\n\n.group > * + * {\n border-inline-start: 1px solid var(--ac-border);\n}\n\n.input {\n box-sizing: border-box;\n color: var(--ac-foreground);\n font-size: var(--ac-text-sm);\n min-width: 0;\n padding: 0 var(--ac-space-3);\n background-color: #0000;\n border: 0;\n outline: none;\n flex: auto;\n line-height: 1.5;\n\n &::placeholder {\n color: var(--ac-muted-foreground);\n }\n\n &:focus-visible {\n box-shadow: none;\n }\n\n &:disabled {\n cursor: not-allowed;\n }\n}\n\n.scrubArea, .stepper {\n background-color: color-mix(in oklch,var(--ac-secondary),var(--ac-background) 30%);\n color: var(--ac-foreground);\n cursor: pointer;\n font-size: var(--ac-text-xs);\n min-width: var(--ac-size-default);\n padding: 0 var(--ac-space-2);\n transition: background-color var(--ac-transition-fast),color var(--ac-transition-fast);\n -webkit-user-select: none;\n user-select: none;\n border: 0;\n outline: none;\n flex: none;\n justify-content: center;\n align-items: center;\n font-weight: 600;\n line-height: 1;\n display: inline-flex;\n\n &:focus-visible {\n background-color: var(--ac-accent);\n box-shadow: inset 0 0 0 1px var(--ac-ring);\n z-index: 1;\n position: relative;\n }\n\n &[data-disabled] {\n cursor: not-allowed;\n opacity: .5;\n }\n\n @media (hover: hover) {\n &:hover:not([data-disabled]) {\n background-color: var(--ac-accent);\n color: var(--ac-accent-foreground);\n }\n }\n}\n\n.decrement, .increment {\n width: var(--ac-size-default);\n}\n\n.decrement[data-pressed], .increment[data-pressed], .scrubArea[data-scrubbing] {\n background-color: color-mix(in oklch,var(--ac-primary),var(--ac-background) 78%);\n color: var(--ac-primary);\n}\n\n.stepperSymbol {\n justify-content: center;\n align-items: center;\n width: 1rem;\n line-height: 1;\n display: inline-flex;\n}\n\n.scrubArea {\n color: var(--ac-muted-foreground);\n min-width: calc(var(--ac-size-default) - var(--ac-space-1));\n}\n\n.scrubHandle {\n font-size: var(--ac-text-sm);\n letter-spacing: -.15em;\n}\n"],"sourceRoot":""}