jaci-ui 0.6.3 → 0.8.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 (292) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +48 -0
  3. package/dist/components/alert/alert.cjs +11 -1
  4. package/dist/components/alert/alert.cjs.map +1 -1
  5. package/dist/components/alert/alert.d.cts +4 -1
  6. package/dist/components/alert/alert.d.ts +4 -1
  7. package/dist/components/alert/alert.js +11 -2
  8. package/dist/components/alert/alert.js.map +1 -1
  9. package/dist/components/alert/index.d.cts +2 -2
  10. package/dist/components/alert/index.d.ts +2 -2
  11. package/dist/components/alert-dialog/alert-dialog.cjs +4 -1
  12. package/dist/components/alert-dialog/alert-dialog.cjs.map +1 -1
  13. package/dist/components/alert-dialog/alert-dialog.d.cts +2 -2
  14. package/dist/components/alert-dialog/alert-dialog.d.ts +2 -2
  15. package/dist/components/alert-dialog/alert-dialog.js +4 -1
  16. package/dist/components/alert-dialog/alert-dialog.js.map +1 -1
  17. package/dist/components/aspect-ratio/aspect-ratio.cjs +23 -0
  18. package/dist/components/aspect-ratio/aspect-ratio.cjs.map +1 -0
  19. package/dist/components/aspect-ratio/aspect-ratio.d.cts +9 -0
  20. package/dist/components/aspect-ratio/aspect-ratio.d.ts +9 -0
  21. package/dist/components/aspect-ratio/aspect-ratio.js +23 -0
  22. package/dist/components/aspect-ratio/aspect-ratio.js.map +1 -0
  23. package/dist/components/aspect-ratio/index.d.cts +2 -0
  24. package/dist/components/aspect-ratio/index.d.ts +2 -0
  25. package/dist/components/card/card.cjs +10 -1
  26. package/dist/components/card/card.cjs.map +1 -1
  27. package/dist/components/card/card.d.cts +15 -2
  28. package/dist/components/card/card.d.ts +15 -2
  29. package/dist/components/card/card.js +10 -2
  30. package/dist/components/card/card.js.map +1 -1
  31. package/dist/components/card/index.d.cts +2 -2
  32. package/dist/components/card/index.d.ts +2 -2
  33. package/dist/components/code/code.cjs +39 -0
  34. package/dist/components/code/code.cjs.map +1 -0
  35. package/dist/components/code/code.d.cts +14 -0
  36. package/dist/components/code/code.d.ts +14 -0
  37. package/dist/components/code/code.js +39 -0
  38. package/dist/components/code/code.js.map +1 -0
  39. package/dist/components/code/index.d.cts +2 -0
  40. package/dist/components/code/index.d.ts +2 -0
  41. package/dist/components/color-picker/color-picker.cjs +4 -1
  42. package/dist/components/color-picker/color-picker.cjs.map +1 -1
  43. package/dist/components/color-picker/color-picker.d.cts +2 -2
  44. package/dist/components/color-picker/color-picker.d.ts +2 -2
  45. package/dist/components/color-picker/color-picker.js +4 -1
  46. package/dist/components/color-picker/color-picker.js.map +1 -1
  47. package/dist/components/combobox/combobox.cjs +4 -1
  48. package/dist/components/combobox/combobox.cjs.map +1 -1
  49. package/dist/components/combobox/combobox.d.cts +2 -2
  50. package/dist/components/combobox/combobox.d.ts +2 -2
  51. package/dist/components/combobox/combobox.js +4 -1
  52. package/dist/components/combobox/combobox.js.map +1 -1
  53. package/dist/components/command/command.cjs +73 -12
  54. package/dist/components/command/command.cjs.map +1 -1
  55. package/dist/components/command/command.d.cts +7 -1
  56. package/dist/components/command/command.d.ts +7 -1
  57. package/dist/components/command/command.js +73 -12
  58. package/dist/components/command/command.js.map +1 -1
  59. package/dist/components/command/index.d.cts +2 -2
  60. package/dist/components/command/index.d.ts +2 -2
  61. package/dist/components/context-menu/context-menu.cjs +4 -1
  62. package/dist/components/context-menu/context-menu.cjs.map +1 -1
  63. package/dist/components/context-menu/context-menu.d.cts +2 -2
  64. package/dist/components/context-menu/context-menu.d.ts +2 -2
  65. package/dist/components/context-menu/context-menu.js +4 -1
  66. package/dist/components/context-menu/context-menu.js.map +1 -1
  67. package/dist/components/date-picker/date-picker.cjs +4 -1
  68. package/dist/components/date-picker/date-picker.cjs.map +1 -1
  69. package/dist/components/date-picker/date-picker.d.cts +2 -2
  70. package/dist/components/date-picker/date-picker.d.ts +2 -2
  71. package/dist/components/date-picker/date-picker.js +4 -1
  72. package/dist/components/date-picker/date-picker.js.map +1 -1
  73. package/dist/components/date-range-picker/date-range-picker.cjs +4 -1
  74. package/dist/components/date-range-picker/date-range-picker.cjs.map +1 -1
  75. package/dist/components/date-range-picker/date-range-picker.d.cts +2 -2
  76. package/dist/components/date-range-picker/date-range-picker.d.ts +2 -2
  77. package/dist/components/date-range-picker/date-range-picker.js +4 -1
  78. package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
  79. package/dist/components/dialog/dialog.cjs +4 -1
  80. package/dist/components/dialog/dialog.cjs.map +1 -1
  81. package/dist/components/dialog/dialog.d.cts +2 -2
  82. package/dist/components/dialog/dialog.d.ts +2 -2
  83. package/dist/components/dialog/dialog.js +4 -1
  84. package/dist/components/dialog/dialog.js.map +1 -1
  85. package/dist/components/drawer/drawer.cjs +4 -1
  86. package/dist/components/drawer/drawer.cjs.map +1 -1
  87. package/dist/components/drawer/drawer.d.cts +2 -2
  88. package/dist/components/drawer/drawer.d.ts +2 -2
  89. package/dist/components/drawer/drawer.js +4 -1
  90. package/dist/components/drawer/drawer.js.map +1 -1
  91. package/dist/components/feedback/badge.cjs +6 -3
  92. package/dist/components/feedback/badge.cjs.map +1 -1
  93. package/dist/components/feedback/badge.d.cts +1 -0
  94. package/dist/components/feedback/badge.d.ts +1 -0
  95. package/dist/components/feedback/badge.js +6 -3
  96. package/dist/components/feedback/badge.js.map +1 -1
  97. package/dist/components/figure/figure.cjs +134 -0
  98. package/dist/components/figure/figure.cjs.map +1 -0
  99. package/dist/components/figure/figure.d.cts +24 -0
  100. package/dist/components/figure/figure.d.ts +24 -0
  101. package/dist/components/figure/figure.js +131 -0
  102. package/dist/components/figure/figure.js.map +1 -0
  103. package/dist/components/figure/index.d.cts +2 -0
  104. package/dist/components/figure/index.d.ts +2 -0
  105. package/dist/components/image/image.cjs +112 -0
  106. package/dist/components/image/image.cjs.map +1 -0
  107. package/dist/components/image/image.d.cts +21 -0
  108. package/dist/components/image/image.d.ts +21 -0
  109. package/dist/components/image/image.js +112 -0
  110. package/dist/components/image/image.js.map +1 -0
  111. package/dist/components/image/index.d.cts +2 -0
  112. package/dist/components/image/index.d.ts +2 -0
  113. package/dist/components/kbd/index.d.cts +2 -0
  114. package/dist/components/kbd/index.d.ts +2 -0
  115. package/dist/components/kbd/kbd.cjs +23 -0
  116. package/dist/components/kbd/kbd.cjs.map +1 -0
  117. package/dist/components/kbd/kbd.d.cts +12 -0
  118. package/dist/components/kbd/kbd.d.ts +12 -0
  119. package/dist/components/kbd/kbd.js +23 -0
  120. package/dist/components/kbd/kbd.js.map +1 -0
  121. package/dist/components/menu/menu.cjs +4 -1
  122. package/dist/components/menu/menu.cjs.map +1 -1
  123. package/dist/components/menu/menu.d.cts +2 -2
  124. package/dist/components/menu/menu.d.ts +2 -2
  125. package/dist/components/menu/menu.js +4 -1
  126. package/dist/components/menu/menu.js.map +1 -1
  127. package/dist/components/menubar/menubar.cjs +4 -1
  128. package/dist/components/menubar/menubar.cjs.map +1 -1
  129. package/dist/components/menubar/menubar.d.cts +2 -2
  130. package/dist/components/menubar/menubar.d.ts +2 -2
  131. package/dist/components/menubar/menubar.js +4 -1
  132. package/dist/components/menubar/menubar.js.map +1 -1
  133. package/dist/components/navigation/navigation.cjs +3 -1
  134. package/dist/components/navigation/navigation.cjs.map +1 -1
  135. package/dist/components/navigation/navigation.js +3 -1
  136. package/dist/components/navigation/navigation.js.map +1 -1
  137. package/dist/components/navigation-menu/navigation-menu.cjs +4 -1
  138. package/dist/components/navigation-menu/navigation-menu.cjs.map +1 -1
  139. package/dist/components/navigation-menu/navigation-menu.d.cts +2 -2
  140. package/dist/components/navigation-menu/navigation-menu.d.ts +2 -2
  141. package/dist/components/navigation-menu/navigation-menu.js +4 -1
  142. package/dist/components/navigation-menu/navigation-menu.js.map +1 -1
  143. package/dist/components/popover/popover.cjs +4 -1
  144. package/dist/components/popover/popover.cjs.map +1 -1
  145. package/dist/components/popover/popover.d.cts +2 -2
  146. package/dist/components/popover/popover.d.ts +2 -2
  147. package/dist/components/popover/popover.js +4 -1
  148. package/dist/components/popover/popover.js.map +1 -1
  149. package/dist/components/progress/progress.cjs +19 -7
  150. package/dist/components/progress/progress.cjs.map +1 -1
  151. package/dist/components/progress/progress.d.cts +4 -0
  152. package/dist/components/progress/progress.d.ts +4 -0
  153. package/dist/components/progress/progress.js +19 -7
  154. package/dist/components/progress/progress.js.map +1 -1
  155. package/dist/components/quote/index.d.cts +2 -0
  156. package/dist/components/quote/index.d.ts +2 -0
  157. package/dist/components/quote/quote.cjs +38 -0
  158. package/dist/components/quote/quote.cjs.map +1 -0
  159. package/dist/components/quote/quote.d.cts +19 -0
  160. package/dist/components/quote/quote.d.ts +19 -0
  161. package/dist/components/quote/quote.js +38 -0
  162. package/dist/components/quote/quote.js.map +1 -0
  163. package/dist/components/select/select.cjs +4 -1
  164. package/dist/components/select/select.cjs.map +1 -1
  165. package/dist/components/select/select.d.cts +2 -2
  166. package/dist/components/select/select.d.ts +2 -2
  167. package/dist/components/select/select.js +4 -1
  168. package/dist/components/select/select.js.map +1 -1
  169. package/dist/components/sidebar/sidebar.cjs +24 -17
  170. package/dist/components/sidebar/sidebar.cjs.map +1 -1
  171. package/dist/components/sidebar/sidebar.d.cts +4 -2
  172. package/dist/components/sidebar/sidebar.d.ts +4 -2
  173. package/dist/components/sidebar/sidebar.js +24 -17
  174. package/dist/components/sidebar/sidebar.js.map +1 -1
  175. package/dist/components/stat/index.d.cts +2 -0
  176. package/dist/components/stat/index.d.ts +2 -0
  177. package/dist/components/stat/stat.cjs +122 -0
  178. package/dist/components/stat/stat.cjs.map +1 -0
  179. package/dist/components/stat/stat.d.cts +51 -0
  180. package/dist/components/stat/stat.d.ts +51 -0
  181. package/dist/components/stat/stat.js +114 -0
  182. package/dist/components/stat/stat.js.map +1 -0
  183. package/dist/components/stat-group/index.d.cts +2 -0
  184. package/dist/components/stat-group/index.d.ts +2 -0
  185. package/dist/components/toast/toast.cjs +4 -1
  186. package/dist/components/toast/toast.cjs.map +1 -1
  187. package/dist/components/toast/toast.d.cts +1 -1
  188. package/dist/components/toast/toast.d.ts +1 -1
  189. package/dist/components/toast/toast.js +4 -1
  190. package/dist/components/toast/toast.js.map +1 -1
  191. package/dist/components/tooltip/tooltip.cjs +4 -1
  192. package/dist/components/tooltip/tooltip.cjs.map +1 -1
  193. package/dist/components/tooltip/tooltip.d.cts +2 -2
  194. package/dist/components/tooltip/tooltip.d.ts +2 -2
  195. package/dist/components/tooltip/tooltip.js +4 -1
  196. package/dist/components/tooltip/tooltip.js.map +1 -1
  197. package/dist/components/typography/heading.cjs +8 -2
  198. package/dist/components/typography/heading.cjs.map +1 -1
  199. package/dist/components/typography/heading.d.cts +8 -1
  200. package/dist/components/typography/heading.d.ts +8 -1
  201. package/dist/components/typography/heading.js +8 -2
  202. package/dist/components/typography/heading.js.map +1 -1
  203. package/dist/components/typography/index.d.cts +2 -2
  204. package/dist/components/typography/index.d.ts +2 -2
  205. package/dist/components/typography/paragraph.cjs +7 -2
  206. package/dist/components/typography/paragraph.cjs.map +1 -1
  207. package/dist/components/typography/paragraph.d.cts +8 -2
  208. package/dist/components/typography/paragraph.d.ts +8 -2
  209. package/dist/components/typography/paragraph.js +7 -2
  210. package/dist/components/typography/paragraph.js.map +1 -1
  211. package/dist/components/typography/text.cjs +6 -2
  212. package/dist/components/typography/text.cjs.map +1 -1
  213. package/dist/components/typography/text.d.cts +5 -0
  214. package/dist/components/typography/text.d.ts +5 -0
  215. package/dist/components/typography/text.js +6 -2
  216. package/dist/components/typography/text.js.map +1 -1
  217. package/dist/index.cjs +28 -0
  218. package/dist/index.cjs.map +1 -0
  219. package/dist/index.d.cts +20 -5
  220. package/dist/index.d.ts +20 -5
  221. package/dist/index.js +11 -3
  222. package/dist/index.js.map +1 -0
  223. package/dist/styled-system/recipes/alert.cjs +2 -1
  224. package/dist/styled-system/recipes/alert.cjs.map +1 -1
  225. package/dist/styled-system/recipes/alert.js +2 -1
  226. package/dist/styled-system/recipes/alert.js.map +1 -1
  227. package/dist/styled-system/recipes/aspect-ratio-box.cjs +25 -0
  228. package/dist/styled-system/recipes/aspect-ratio-box.cjs.map +1 -0
  229. package/dist/styled-system/recipes/aspect-ratio-box.js +25 -0
  230. package/dist/styled-system/recipes/aspect-ratio-box.js.map +1 -0
  231. package/dist/styled-system/recipes/badge.cjs +16 -6
  232. package/dist/styled-system/recipes/badge.cjs.map +1 -1
  233. package/dist/styled-system/recipes/badge.js +16 -6
  234. package/dist/styled-system/recipes/badge.js.map +1 -1
  235. package/dist/styled-system/recipes/code.cjs +33 -0
  236. package/dist/styled-system/recipes/code.cjs.map +1 -0
  237. package/dist/styled-system/recipes/code.js +33 -0
  238. package/dist/styled-system/recipes/code.js.map +1 -0
  239. package/dist/styled-system/recipes/command.cjs +3 -3
  240. package/dist/styled-system/recipes/command.cjs.map +1 -1
  241. package/dist/styled-system/recipes/command.js +3 -3
  242. package/dist/styled-system/recipes/command.js.map +1 -1
  243. package/dist/styled-system/recipes/figure.cjs +43 -0
  244. package/dist/styled-system/recipes/figure.cjs.map +1 -0
  245. package/dist/styled-system/recipes/figure.js +43 -0
  246. package/dist/styled-system/recipes/figure.js.map +1 -0
  247. package/dist/styled-system/recipes/heading.cjs +34 -9
  248. package/dist/styled-system/recipes/heading.cjs.map +1 -1
  249. package/dist/styled-system/recipes/heading.js +34 -9
  250. package/dist/styled-system/recipes/heading.js.map +1 -1
  251. package/dist/styled-system/recipes/image.cjs +57 -0
  252. package/dist/styled-system/recipes/image.cjs.map +1 -0
  253. package/dist/styled-system/recipes/image.js +57 -0
  254. package/dist/styled-system/recipes/image.js.map +1 -0
  255. package/dist/styled-system/recipes/kbd.cjs +39 -0
  256. package/dist/styled-system/recipes/kbd.cjs.map +1 -0
  257. package/dist/styled-system/recipes/kbd.js +39 -0
  258. package/dist/styled-system/recipes/kbd.js.map +1 -0
  259. package/dist/styled-system/recipes/paragraph.cjs +25 -2
  260. package/dist/styled-system/recipes/paragraph.cjs.map +1 -1
  261. package/dist/styled-system/recipes/paragraph.js +25 -2
  262. package/dist/styled-system/recipes/paragraph.js.map +1 -1
  263. package/dist/styled-system/recipes/progress.cjs +1 -0
  264. package/dist/styled-system/recipes/progress.cjs.map +1 -1
  265. package/dist/styled-system/recipes/progress.js +1 -0
  266. package/dist/styled-system/recipes/progress.js.map +1 -1
  267. package/dist/styled-system/recipes/quote.cjs +39 -0
  268. package/dist/styled-system/recipes/quote.cjs.map +1 -0
  269. package/dist/styled-system/recipes/quote.js +39 -0
  270. package/dist/styled-system/recipes/quote.js.map +1 -0
  271. package/dist/styled-system/recipes/stat-group.cjs +40 -0
  272. package/dist/styled-system/recipes/stat-group.cjs.map +1 -0
  273. package/dist/styled-system/recipes/stat-group.js +40 -0
  274. package/dist/styled-system/recipes/stat-group.js.map +1 -0
  275. package/dist/styled-system/recipes/stat.cjs +63 -0
  276. package/dist/styled-system/recipes/stat.cjs.map +1 -0
  277. package/dist/styled-system/recipes/stat.js +63 -0
  278. package/dist/styled-system/recipes/stat.js.map +1 -0
  279. package/dist/styled-system/recipes/text.cjs +23 -2
  280. package/dist/styled-system/recipes/text.cjs.map +1 -1
  281. package/dist/styled-system/recipes/text.js +23 -2
  282. package/dist/styled-system/recipes/text.js.map +1 -1
  283. package/dist/styles.css +1064 -117
  284. package/dist/theme/theme-provider.cjs +18 -8
  285. package/dist/theme/theme-provider.cjs.map +1 -1
  286. package/dist/theme/theme-provider.js +18 -8
  287. package/dist/theme/theme-provider.js.map +1 -1
  288. package/dist/theme/theme-scope.cjs +21 -0
  289. package/dist/theme/theme-scope.cjs.map +1 -0
  290. package/dist/theme/theme-scope.js +19 -0
  291. package/dist/theme/theme-scope.js.map +1 -0
  292. package/package.json +7 -4
@@ -0,0 +1,112 @@
1
+ "use client";
2
+ import { cx } from "../../styled-system/css/cx.js";
3
+ import { image } from "../../styled-system/recipes/image.js";
4
+ import { useThemePortalProps } from "../../theme/theme-scope.js";
5
+ import { forwardRef, useEffect, useState } from "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ import { Dialog } from "@base-ui/react/dialog";
8
+ //#region src/components/image/image.tsx
9
+ const Image = forwardRef(function Image({ alt, aspectRatio, className, defaultOpen, fallback, fit = "cover", lightbox = false, lightboxLabel = "Open image", onError, onLoad, onOpenChange, onStatusChange, open, position, src, style, ...props }, ref) {
10
+ const [status, setStatus] = useState("loading");
11
+ useEffect(() => {
12
+ setStatus("loading");
13
+ }, [src]);
14
+ useEffect(() => {
15
+ onStatusChange?.(status);
16
+ }, [onStatusChange, status]);
17
+ const styles = image({
18
+ fit,
19
+ status
20
+ });
21
+ const scopedPortalProps = useThemePortalProps({});
22
+ const rootStyle = {
23
+ ...aspectRatio && Number.isFinite(aspectRatio) && aspectRatio > 0 ? { aspectRatio } : void 0,
24
+ ...style
25
+ };
26
+ const content = /* @__PURE__ */ jsxs("span", {
27
+ "aria-busy": status === "loading" || void 0,
28
+ className: styles.root,
29
+ "data-fit": fit,
30
+ "data-jaci-component": "image",
31
+ "data-slot": "image",
32
+ "data-status": status,
33
+ style: rootStyle,
34
+ children: [/* @__PURE__ */ jsx("img", {
35
+ ...props,
36
+ ref,
37
+ alt,
38
+ className: cx(styles.image, className),
39
+ "data-slot": "image-content",
40
+ onError: (event) => {
41
+ setStatus("error");
42
+ onError?.(event);
43
+ },
44
+ onLoad: (event) => {
45
+ setStatus("loaded");
46
+ onLoad?.(event);
47
+ },
48
+ src,
49
+ style: { objectPosition: position }
50
+ }), status === "error" && fallback ? /* @__PURE__ */ jsx("span", {
51
+ "aria-live": "polite",
52
+ className: styles.fallback,
53
+ "data-slot": "image-fallback",
54
+ children: fallback
55
+ }) : null]
56
+ });
57
+ if (!lightbox) return content;
58
+ return /* @__PURE__ */ jsxs(Dialog.Root, {
59
+ defaultOpen,
60
+ onOpenChange: (nextOpen) => onOpenChange?.(nextOpen),
61
+ open,
62
+ children: [/* @__PURE__ */ jsx(Dialog.Trigger, {
63
+ "aria-label": lightboxLabel,
64
+ className: styles.trigger,
65
+ "data-jaci-component": "image-trigger",
66
+ "data-slot": "image-trigger",
67
+ children: content
68
+ }), /* @__PURE__ */ jsxs(Dialog.Portal, {
69
+ ...scopedPortalProps,
70
+ children: [/* @__PURE__ */ jsx(Dialog.Backdrop, {
71
+ className: styles.backdrop,
72
+ "data-slot": "image-lightbox-backdrop"
73
+ }), /* @__PURE__ */ jsx(Dialog.Viewport, {
74
+ className: styles.viewport,
75
+ "data-slot": "image-lightbox-viewport",
76
+ children: /* @__PURE__ */ jsxs(Dialog.Popup, {
77
+ "aria-label": alt || lightboxLabel,
78
+ className: styles.popup,
79
+ "data-jaci-component": "image-lightbox",
80
+ "data-slot": "image-lightbox-popup",
81
+ children: [
82
+ /* @__PURE__ */ jsx(Dialog.Title, {
83
+ className: styles.title,
84
+ children: alt || lightboxLabel
85
+ }),
86
+ /* @__PURE__ */ jsx("div", {
87
+ className: styles.closeRow,
88
+ "data-slot": "image-lightbox-close-row",
89
+ children: /* @__PURE__ */ jsx(Dialog.Close, {
90
+ "aria-label": "Close image",
91
+ className: styles.close,
92
+ "data-slot": "image-lightbox-close",
93
+ children: "×"
94
+ })
95
+ }),
96
+ /* @__PURE__ */ jsx("img", {
97
+ alt,
98
+ className: styles.lightboxImage,
99
+ "data-slot": "image-lightbox-content",
100
+ src,
101
+ style: { objectPosition: position }
102
+ })
103
+ ]
104
+ })
105
+ })]
106
+ })]
107
+ });
108
+ });
109
+ //#endregion
110
+ export { Image };
111
+
112
+ //# sourceMappingURL=image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.js","names":["BaseDialog"],"sources":["../../../src/components/image/image.tsx"],"sourcesContent":["\"use client\";\n\nimport { Dialog as BaseDialog } from \"@base-ui/react/dialog\";\nimport { forwardRef, useEffect, useState } from \"react\";\nimport type { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { image } from \"../../styled-system/recipes\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\nexport type ImageFit = \"contain\" | \"cover\" | \"fill\" | \"none\";\nexport type ImageStatus = \"loading\" | \"loaded\" | \"error\";\n\nexport interface ImageProps extends Omit<ComponentPropsWithoutRef<\"img\">, \"children\"> {\n alt: string;\n aspectRatio?: number;\n defaultOpen?: boolean;\n fallback?: ReactNode;\n fit?: ImageFit;\n lightbox?: boolean;\n lightboxLabel?: string;\n onOpenChange?: (open: boolean) => void;\n onStatusChange?: (status: ImageStatus) => void;\n open?: boolean;\n position?: string;\n}\n\nexport const Image = forwardRef<HTMLImageElement, ImageProps>(function Image(\n {\n alt,\n aspectRatio,\n className,\n defaultOpen,\n fallback,\n fit = \"cover\",\n lightbox = false,\n lightboxLabel = \"Open image\",\n onError,\n onLoad,\n onOpenChange,\n onStatusChange,\n open,\n position,\n src,\n style,\n ...props\n },\n ref,\n) {\n const [status, setStatus] = useState<ImageStatus>(\"loading\");\n\n // The source is intentionally the reset key for the native image lifecycle.\n // biome-ignore lint/correctness/useExhaustiveDependencies: changing src starts a new lifecycle.\n useEffect(() => {\n setStatus(\"loading\");\n }, [src]);\n\n useEffect(() => {\n onStatusChange?.(status);\n }, [onStatusChange, status]);\n\n const styles = image({ fit, status });\n const scopedPortalProps = useThemePortalProps({});\n const rootStyle = {\n ...(aspectRatio && Number.isFinite(aspectRatio) && aspectRatio > 0\n ? { aspectRatio }\n : undefined),\n ...style,\n };\n\n const content = (\n <span\n aria-busy={status === \"loading\" || undefined}\n className={styles.root}\n data-fit={fit}\n data-jaci-component=\"image\"\n data-slot=\"image\"\n data-status={status}\n style={rootStyle}\n >\n <img\n {...props}\n ref={ref}\n alt={alt}\n className={cx(styles.image, className)}\n data-slot=\"image-content\"\n onError={(event) => {\n setStatus(\"error\");\n onError?.(event);\n }}\n onLoad={(event) => {\n setStatus(\"loaded\");\n onLoad?.(event);\n }}\n src={src}\n style={{ objectPosition: position }}\n />\n {status === \"error\" && fallback ? (\n <span aria-live=\"polite\" className={styles.fallback} data-slot=\"image-fallback\">\n {fallback}\n </span>\n ) : null}\n </span>\n );\n\n if (!lightbox) {\n return content;\n }\n\n return (\n <BaseDialog.Root\n defaultOpen={defaultOpen}\n onOpenChange={(nextOpen) => onOpenChange?.(nextOpen)}\n open={open}\n >\n <BaseDialog.Trigger\n aria-label={lightboxLabel}\n className={styles.trigger}\n data-jaci-component=\"image-trigger\"\n data-slot=\"image-trigger\"\n >\n {content}\n </BaseDialog.Trigger>\n <BaseDialog.Portal {...scopedPortalProps}>\n <BaseDialog.Backdrop className={styles.backdrop} data-slot=\"image-lightbox-backdrop\" />\n <BaseDialog.Viewport className={styles.viewport} data-slot=\"image-lightbox-viewport\">\n <BaseDialog.Popup\n aria-label={alt || lightboxLabel}\n className={styles.popup}\n data-jaci-component=\"image-lightbox\"\n data-slot=\"image-lightbox-popup\"\n >\n <BaseDialog.Title className={styles.title}>{alt || lightboxLabel}</BaseDialog.Title>\n <div className={styles.closeRow} data-slot=\"image-lightbox-close-row\">\n <BaseDialog.Close\n aria-label=\"Close image\"\n className={styles.close}\n data-slot=\"image-lightbox-close\"\n >\n ×\n </BaseDialog.Close>\n </div>\n <img\n alt={alt}\n className={styles.lightboxImage}\n data-slot=\"image-lightbox-content\"\n src={src}\n style={{ objectPosition: position }}\n />\n </BaseDialog.Popup>\n </BaseDialog.Viewport>\n </BaseDialog.Portal>\n </BaseDialog.Root>\n );\n});\n"],"mappings":";;;;;;;;AA2BA,MAAa,QAAQ,WAAyC,SAAS,MACrE,EACE,KACA,aACA,WACA,aACA,UACA,MAAM,SACN,WAAW,OACX,gBAAgB,cAChB,SACA,QACA,cACA,gBACA,MACA,UACA,KACA,OACA,GAAG,SAEL,KACA;CACA,MAAM,CAAC,QAAQ,aAAa,SAAsB,SAAS;CAI3D,gBAAgB;EACd,UAAU,SAAS;CACrB,GAAG,CAAC,GAAG,CAAC;CAER,gBAAgB;EACd,iBAAiB,MAAM;CACzB,GAAG,CAAC,gBAAgB,MAAM,CAAC;CAE3B,MAAM,SAAS,MAAM;EAAE;EAAK;CAAO,CAAC;CACpC,MAAM,oBAAoB,oBAAoB,CAAC,CAAC;CAChD,MAAM,YAAY;EAChB,GAAI,eAAe,OAAO,SAAS,WAAW,KAAK,cAAc,IAC7D,EAAE,YAAY,IACd,KAAA;EACJ,GAAG;CACL;CAEA,MAAM,UACJ,qBAAC,QAAD;EACE,aAAW,WAAW,aAAa,KAAA;EACnC,WAAW,OAAO;EAClB,YAAU;EACV,uBAAoB;EACpB,aAAU;EACV,eAAa;EACb,OAAO;YAPT,CASE,oBAAC,OAAD;GACE,GAAI;GACC;GACA;GACL,WAAW,GAAG,OAAO,OAAO,SAAS;GACrC,aAAU;GACV,UAAU,UAAU;IAClB,UAAU,OAAO;IACjB,UAAU,KAAK;GACjB;GACA,SAAS,UAAU;IACjB,UAAU,QAAQ;IAClB,SAAS,KAAK;GAChB;GACK;GACL,OAAO,EAAE,gBAAgB,SAAS;EACnC,CAAA,GACA,WAAW,WAAW,WACrB,oBAAC,QAAD;GAAM,aAAU;GAAS,WAAW,OAAO;GAAU,aAAU;aAC5D;EACG,CAAA,IACJ,IACA;;CAGR,IAAI,CAAC,UACH,OAAO;CAGT,OACE,qBAACA,OAAW,MAAZ;EACe;EACb,eAAe,aAAa,eAAe,QAAQ;EAC7C;YAHR,CAKE,oBAACA,OAAW,SAAZ;GACE,cAAY;GACZ,WAAW,OAAO;GAClB,uBAAoB;GACpB,aAAU;aAET;EACiB,CAAA,GACpB,qBAACA,OAAW,QAAZ;GAAmB,GAAI;aAAvB,CACE,oBAACA,OAAW,UAAZ;IAAqB,WAAW,OAAO;IAAU,aAAU;GAA2B,CAAA,GACtF,oBAACA,OAAW,UAAZ;IAAqB,WAAW,OAAO;IAAU,aAAU;cACzD,qBAACA,OAAW,OAAZ;KACE,cAAY,OAAO;KACnB,WAAW,OAAO;KAClB,uBAAoB;KACpB,aAAU;eAJZ;MAME,oBAACA,OAAW,OAAZ;OAAkB,WAAW,OAAO;iBAAQ,OAAO;MAAgC,CAAA;MACnF,oBAAC,OAAD;OAAK,WAAW,OAAO;OAAU,aAAU;iBACzC,oBAACA,OAAW,OAAZ;QACE,cAAW;QACX,WAAW,OAAO;QAClB,aAAU;kBACX;OAEiB,CAAA;MACf,CAAA;MACL,oBAAC,OAAD;OACO;OACL,WAAW,OAAO;OAClB,aAAU;OACL;OACL,OAAO,EAAE,gBAAgB,SAAS;MACnC,CAAA;KACe;;GACC,CAAA,CACJ;IACJ;;AAErB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Image, ImageFit, ImageProps, ImageStatus } from "./image.cjs";
2
+ export { Image, type ImageFit, type ImageProps, type ImageStatus };
@@ -0,0 +1,2 @@
1
+ import { Image, ImageFit, ImageProps, ImageStatus } from "./image.js";
2
+ export { Image, type ImageFit, type ImageProps, type ImageStatus };
@@ -0,0 +1,2 @@
1
+ import { Kbd, KbdProps, KbdSize, KbdVariant } from "./kbd.cjs";
2
+ export { Kbd, type KbdProps, type KbdSize, type KbdVariant };
@@ -0,0 +1,2 @@
1
+ import { Kbd, KbdProps, KbdSize, KbdVariant } from "./kbd.js";
2
+ export { Kbd, type KbdProps, type KbdSize, type KbdVariant };
@@ -0,0 +1,23 @@
1
+ const require_cx = require("../../styled-system/css/cx.cjs");
2
+ const require_kbd = require("../../styled-system/recipes/kbd.cjs");
3
+ let react = require("react");
4
+ let react_jsx_runtime = require("react/jsx-runtime");
5
+ //#region src/components/kbd/kbd.tsx
6
+ const Kbd = (0, react.forwardRef)(function Kbd({ className, size = "md", variant = "subtle", ...props }, ref) {
7
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("kbd", {
8
+ ...props,
9
+ ref,
10
+ className: require_cx.cx(require_kbd.kbd({
11
+ size,
12
+ variant
13
+ }), className),
14
+ "data-jaci-component": "kbd",
15
+ "data-size": size,
16
+ "data-slot": "kbd",
17
+ "data-variant": variant
18
+ });
19
+ });
20
+ //#endregion
21
+ exports.Kbd = Kbd;
22
+
23
+ //# sourceMappingURL=kbd.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kbd.cjs","names":["cx","kbd"],"sources":["../../../src/components/kbd/kbd.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { kbd } from \"../../styled-system/recipes\";\n\nexport type KbdSize = \"sm\" | \"md\" | \"lg\";\nexport type KbdVariant = \"solid\" | \"outline\" | \"subtle\";\n\nexport interface KbdProps extends ComponentPropsWithoutRef<\"kbd\"> {\n size?: KbdSize;\n variant?: KbdVariant;\n}\n\nexport const Kbd = forwardRef<HTMLElement, KbdProps>(function Kbd(\n { className, size = \"md\", variant = \"subtle\", ...props },\n ref,\n) {\n return (\n <kbd\n {...props}\n ref={ref}\n className={cx(kbd({ size, variant }), className)}\n data-jaci-component=\"kbd\"\n data-size={size}\n data-slot=\"kbd\"\n data-variant={variant}\n />\n );\n});\n"],"mappings":";;;;;AAcA,MAAa,OAAA,GAAA,MAAA,WAAA,CAAwC,SAAS,IAC5D,EAAE,WAAW,OAAO,MAAM,UAAU,UAAU,GAAG,SACjD,KACA;CACA,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;EACE,GAAI;EACC;EACL,WAAWA,WAAAA,GAAGC,YAAAA,IAAI;GAAE;GAAM;EAAQ,CAAC,GAAG,SAAS;EAC/C,uBAAoB;EACpB,aAAW;EACX,aAAU;EACV,gBAAc;CACf,CAAA;AAEL,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { ComponentPropsWithoutRef } from "react";
2
+ //#region src/components/kbd/kbd.d.ts
3
+ type KbdSize = "sm" | "md" | "lg";
4
+ type KbdVariant = "solid" | "outline" | "subtle";
5
+ interface KbdProps extends ComponentPropsWithoutRef<"kbd"> {
6
+ size?: KbdSize;
7
+ variant?: KbdVariant;
8
+ }
9
+ declare const Kbd: import("react").ForwardRefExoticComponent<KbdProps & import("react").RefAttributes<HTMLElement>>;
10
+ //#endregion
11
+ export { Kbd, KbdProps, KbdSize, KbdVariant };
12
+ //# sourceMappingURL=kbd.d.cts.map
@@ -0,0 +1,12 @@
1
+ import { ComponentPropsWithoutRef } from "react";
2
+ //#region src/components/kbd/kbd.d.ts
3
+ type KbdSize = "sm" | "md" | "lg";
4
+ type KbdVariant = "solid" | "outline" | "subtle";
5
+ interface KbdProps extends ComponentPropsWithoutRef<"kbd"> {
6
+ size?: KbdSize;
7
+ variant?: KbdVariant;
8
+ }
9
+ declare const Kbd: import("react").ForwardRefExoticComponent<KbdProps & import("react").RefAttributes<HTMLElement>>;
10
+ //#endregion
11
+ export { Kbd, KbdProps, KbdSize, KbdVariant };
12
+ //# sourceMappingURL=kbd.d.ts.map
@@ -0,0 +1,23 @@
1
+ import { cx } from "../../styled-system/css/cx.js";
2
+ import { kbd } from "../../styled-system/recipes/kbd.js";
3
+ import { forwardRef } from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+ //#region src/components/kbd/kbd.tsx
6
+ const Kbd = forwardRef(function Kbd({ className, size = "md", variant = "subtle", ...props }, ref) {
7
+ return /* @__PURE__ */ jsx("kbd", {
8
+ ...props,
9
+ ref,
10
+ className: cx(kbd({
11
+ size,
12
+ variant
13
+ }), className),
14
+ "data-jaci-component": "kbd",
15
+ "data-size": size,
16
+ "data-slot": "kbd",
17
+ "data-variant": variant
18
+ });
19
+ });
20
+ //#endregion
21
+ export { Kbd };
22
+
23
+ //# sourceMappingURL=kbd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kbd.js","names":[],"sources":["../../../src/components/kbd/kbd.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { kbd } from \"../../styled-system/recipes\";\n\nexport type KbdSize = \"sm\" | \"md\" | \"lg\";\nexport type KbdVariant = \"solid\" | \"outline\" | \"subtle\";\n\nexport interface KbdProps extends ComponentPropsWithoutRef<\"kbd\"> {\n size?: KbdSize;\n variant?: KbdVariant;\n}\n\nexport const Kbd = forwardRef<HTMLElement, KbdProps>(function Kbd(\n { className, size = \"md\", variant = \"subtle\", ...props },\n ref,\n) {\n return (\n <kbd\n {...props}\n ref={ref}\n className={cx(kbd({ size, variant }), className)}\n data-jaci-component=\"kbd\"\n data-size={size}\n data-slot=\"kbd\"\n data-variant={variant}\n />\n );\n});\n"],"mappings":";;;;;AAcA,MAAa,MAAM,WAAkC,SAAS,IAC5D,EAAE,WAAW,OAAO,MAAM,UAAU,UAAU,GAAG,SACjD,KACA;CACA,OACE,oBAAC,OAAD;EACE,GAAI;EACC;EACL,WAAW,GAAG,IAAI;GAAE;GAAM;EAAQ,CAAC,GAAG,SAAS;EAC/C,uBAAoB;EACpB,aAAW;EACX,aAAU;EACV,gBAAc;CACf,CAAA;AAEL,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  const require_base_ui = require("../base-ui.cjs");
3
3
  const require_menu = require("../../styled-system/recipes/menu.cjs");
4
+ const require_theme_scope = require("../../theme/theme-scope.cjs");
4
5
  let react = require("react");
5
6
  let react_jsx_runtime = require("react/jsx-runtime");
6
7
  let _base_ui_react_menu = require("@base-ui/react/menu");
@@ -18,7 +19,9 @@ const MenuTrigger = (0, react.forwardRef)(function MenuTrigger({ className, ...p
18
19
  });
19
20
  });
20
21
  /** Preserves Base UI's portal and optional container APIs. */
21
- const MenuPortal = _base_ui_react_menu.Menu.Portal;
22
+ function MenuPortal(props) {
23
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_menu.Menu.Portal, { ...require_theme_scope.useThemePortalProps(props) });
24
+ }
22
25
  const MenuPositioner = (0, react.forwardRef)(function MenuPositioner({ className, ...props }, ref) {
23
26
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_menu.Menu.Positioner, {
24
27
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"menu.cjs","names":["BaseMenu","withRecipeClassName","menu"],"sources":["../../../src/components/menu/menu.tsx"],"sourcesContent":["\"use client\";\n\nimport { Menu as BaseMenu } from \"@base-ui/react/menu\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { MenuRoot as BaseMenuRoot, MenuTrigger as BaseMenuTrigger } from \"@base-ui/react/menu\";\n\nimport { menu } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\n\n/**\n * Groups the menu parts. It keeps Base UI's controlled `open`/\n * `onOpenChange` API and uncontrolled `defaultOpen` API intact.\n */\nexport type MenuRootProps<Payload = unknown> = BaseMenuRoot.Props<Payload>;\n\nexport function MenuRoot<Payload = unknown>(props: MenuRootProps<Payload>) {\n return <BaseMenu.Root {...props} />;\n}\n\nexport type MenuTriggerProps<Payload = unknown> = BaseMenuTrigger.Props<Payload>;\n\nexport const MenuTrigger = forwardRef<HTMLButtonElement, MenuTriggerProps>(function MenuTrigger(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().trigger, className)}\n data-jaci-component=\"menu\"\n data-slot=\"menu-trigger\"\n />\n );\n});\n\n/** Preserves Base UI's portal and optional container APIs. */\nexport const MenuPortal = BaseMenu.Portal;\n\nexport type MenuPositionerProps = ComponentPropsWithoutRef<typeof BaseMenu.Positioner>;\n\nexport const MenuPositioner = forwardRef<HTMLDivElement, MenuPositionerProps>(\n function MenuPositioner({ className, ...props }, ref) {\n return (\n <BaseMenu.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().positioner, className)}\n data-slot=\"menu-positioner\"\n />\n );\n },\n);\n\nexport type MenuPopupProps = ComponentPropsWithoutRef<typeof BaseMenu.Popup>;\n\nexport const MenuPopup = forwardRef<HTMLDivElement, MenuPopupProps>(function MenuPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().popup, className)}\n data-slot=\"menu-popup\"\n />\n );\n});\n\nexport type MenuItemProps = ComponentPropsWithoutRef<typeof BaseMenu.Item>;\n\nexport const MenuItem = forwardRef<HTMLElement, MenuItemProps>(function MenuItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Item\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-item\"\n />\n );\n});\n\nexport type MenuLinkItemProps = ComponentPropsWithoutRef<typeof BaseMenu.LinkItem>;\n\n/**\n * A navigational item. It retains Base UI's keyboard navigation.\n */\nexport const MenuLinkItem = forwardRef<Element, MenuLinkItemProps>(function MenuLinkItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.LinkItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-link-item\"\n />\n );\n});\n\nexport type MenuSeparatorProps = ComponentPropsWithoutRef<typeof BaseMenu.Separator>;\n\nexport const MenuSeparator = forwardRef<HTMLDivElement, MenuSeparatorProps>(function MenuSeparator(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Separator\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().separator, className)}\n data-slot=\"menu-separator\"\n />\n );\n});\n\nexport type MenuGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.Group>;\n\nexport const MenuGroup = forwardRef<HTMLDivElement, MenuGroupProps>(function MenuGroup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Group\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().group, className)}\n data-slot=\"menu-group\"\n />\n );\n});\n\nexport type MenuGroupLabelProps = ComponentPropsWithoutRef<typeof BaseMenu.GroupLabel>;\n\nexport const MenuGroupLabel = forwardRef<HTMLDivElement, MenuGroupLabelProps>(\n function MenuGroupLabel({ className, ...props }, ref) {\n return (\n <BaseMenu.GroupLabel\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().groupLabel, className)}\n data-slot=\"menu-group-label\"\n />\n );\n },\n);\n\nexport const Menu = {\n Root: MenuRoot,\n Trigger: MenuTrigger,\n Portal: MenuPortal,\n Positioner: MenuPositioner,\n Popup: MenuPopup,\n Item: MenuItem,\n LinkItem: MenuLinkItem,\n Separator: MenuSeparator,\n Group: MenuGroup,\n GroupLabel: MenuGroupLabel,\n createHandle: BaseMenu.createHandle,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"menu.cjs","names":["BaseMenu","withRecipeClassName","menu","useThemePortalProps"],"sources":["../../../src/components/menu/menu.tsx"],"sourcesContent":["\"use client\";\n\nimport { Menu as BaseMenu } from \"@base-ui/react/menu\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { MenuRoot as BaseMenuRoot, MenuTrigger as BaseMenuTrigger } from \"@base-ui/react/menu\";\n\nimport { menu } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\n/**\n * Groups the menu parts. It keeps Base UI's controlled `open`/\n * `onOpenChange` API and uncontrolled `defaultOpen` API intact.\n */\nexport type MenuRootProps<Payload = unknown> = BaseMenuRoot.Props<Payload>;\n\nexport function MenuRoot<Payload = unknown>(props: MenuRootProps<Payload>) {\n return <BaseMenu.Root {...props} />;\n}\n\nexport type MenuTriggerProps<Payload = unknown> = BaseMenuTrigger.Props<Payload>;\n\nexport const MenuTrigger = forwardRef<HTMLButtonElement, MenuTriggerProps>(function MenuTrigger(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().trigger, className)}\n data-jaci-component=\"menu\"\n data-slot=\"menu-trigger\"\n />\n );\n});\n\n/** Preserves Base UI's portal and optional container APIs. */\nexport function MenuPortal(props: ComponentPropsWithoutRef<typeof BaseMenu.Portal>) {\n return <BaseMenu.Portal {...useThemePortalProps(props)} />;\n}\n\nexport type MenuPositionerProps = ComponentPropsWithoutRef<typeof BaseMenu.Positioner>;\n\nexport const MenuPositioner = forwardRef<HTMLDivElement, MenuPositionerProps>(\n function MenuPositioner({ className, ...props }, ref) {\n return (\n <BaseMenu.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().positioner, className)}\n data-slot=\"menu-positioner\"\n />\n );\n },\n);\n\nexport type MenuPopupProps = ComponentPropsWithoutRef<typeof BaseMenu.Popup>;\n\nexport const MenuPopup = forwardRef<HTMLDivElement, MenuPopupProps>(function MenuPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().popup, className)}\n data-slot=\"menu-popup\"\n />\n );\n});\n\nexport type MenuItemProps = ComponentPropsWithoutRef<typeof BaseMenu.Item>;\n\nexport const MenuItem = forwardRef<HTMLElement, MenuItemProps>(function MenuItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Item\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-item\"\n />\n );\n});\n\nexport type MenuLinkItemProps = ComponentPropsWithoutRef<typeof BaseMenu.LinkItem>;\n\n/**\n * A navigational item. It retains Base UI's keyboard navigation.\n */\nexport const MenuLinkItem = forwardRef<Element, MenuLinkItemProps>(function MenuLinkItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.LinkItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-link-item\"\n />\n );\n});\n\nexport type MenuSeparatorProps = ComponentPropsWithoutRef<typeof BaseMenu.Separator>;\n\nexport const MenuSeparator = forwardRef<HTMLDivElement, MenuSeparatorProps>(function MenuSeparator(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Separator\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().separator, className)}\n data-slot=\"menu-separator\"\n />\n );\n});\n\nexport type MenuGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.Group>;\n\nexport const MenuGroup = forwardRef<HTMLDivElement, MenuGroupProps>(function MenuGroup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Group\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().group, className)}\n data-slot=\"menu-group\"\n />\n );\n});\n\nexport type MenuGroupLabelProps = ComponentPropsWithoutRef<typeof BaseMenu.GroupLabel>;\n\nexport const MenuGroupLabel = forwardRef<HTMLDivElement, MenuGroupLabelProps>(\n function MenuGroupLabel({ className, ...props }, ref) {\n return (\n <BaseMenu.GroupLabel\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().groupLabel, className)}\n data-slot=\"menu-group-label\"\n />\n );\n },\n);\n\nexport const Menu = {\n Root: MenuRoot,\n Trigger: MenuTrigger,\n Portal: MenuPortal,\n Positioner: MenuPositioner,\n Popup: MenuPopup,\n Item: MenuItem,\n LinkItem: MenuLinkItem,\n Separator: MenuSeparator,\n Group: MenuGroup,\n GroupLabel: MenuGroupLabel,\n createHandle: BaseMenu.createHandle,\n};\n"],"mappings":"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"}
@@ -10,7 +10,7 @@ declare function MenuRoot$1<Payload = unknown>(props: MenuRootProps<Payload>): i
10
10
  type MenuTriggerProps<Payload = unknown> = MenuTrigger.Props<Payload>;
11
11
  declare const MenuTrigger$1: import("react").ForwardRefExoticComponent<Omit<MenuTriggerProps<unknown>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
12
12
  /** Preserves Base UI's portal and optional container APIs. */
13
- declare const MenuPortal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
13
+ declare function MenuPortal(props: ComponentPropsWithoutRef<typeof Menu.Portal>): import("react").JSX.Element;
14
14
  type MenuPositionerProps = ComponentPropsWithoutRef<typeof Menu.Positioner>;
15
15
  declare const MenuPositioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
16
16
  type MenuPopupProps = ComponentPropsWithoutRef<typeof Menu.Popup>;
@@ -31,7 +31,7 @@ declare const MenuGroupLabel: import("react").ForwardRefExoticComponent<Omit<Omi
31
31
  declare const Menu$1: {
32
32
  Root: typeof MenuRoot$1;
33
33
  Trigger: import("react").ForwardRefExoticComponent<Omit<MenuTriggerProps<unknown>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
34
- Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
34
+ Portal: typeof MenuPortal;
35
35
  Positioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
36
36
  Popup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
37
37
  Item: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuItemProps, "ref"> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLElement>>;
@@ -10,7 +10,7 @@ declare function MenuRoot$1<Payload = unknown>(props: MenuRootProps<Payload>): i
10
10
  type MenuTriggerProps<Payload = unknown> = MenuTrigger.Props<Payload>;
11
11
  declare const MenuTrigger$1: import("react").ForwardRefExoticComponent<Omit<MenuTriggerProps<unknown>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
12
12
  /** Preserves Base UI's portal and optional container APIs. */
13
- declare const MenuPortal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
13
+ declare function MenuPortal(props: ComponentPropsWithoutRef<typeof Menu.Portal>): import("react").JSX.Element;
14
14
  type MenuPositionerProps = ComponentPropsWithoutRef<typeof Menu.Positioner>;
15
15
  declare const MenuPositioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
16
16
  type MenuPopupProps = ComponentPropsWithoutRef<typeof Menu.Popup>;
@@ -31,7 +31,7 @@ declare const MenuGroupLabel: import("react").ForwardRefExoticComponent<Omit<Omi
31
31
  declare const Menu$1: {
32
32
  Root: typeof MenuRoot$1;
33
33
  Trigger: import("react").ForwardRefExoticComponent<Omit<MenuTriggerProps<unknown>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
34
- Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
34
+ Portal: typeof MenuPortal;
35
35
  Positioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
36
36
  Popup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
37
37
  Item: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuItemProps, "ref"> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLElement>>;
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { withRecipeClassName } from "../base-ui.js";
3
3
  import { menu } from "../../styled-system/recipes/menu.js";
4
+ import { useThemePortalProps } from "../../theme/theme-scope.js";
4
5
  import { forwardRef } from "react";
5
6
  import { jsx } from "react/jsx-runtime";
6
7
  import { Menu } from "@base-ui/react/menu";
@@ -18,7 +19,9 @@ const MenuTrigger$1 = forwardRef(function MenuTrigger({ className, ...props }, r
18
19
  });
19
20
  });
20
21
  /** Preserves Base UI's portal and optional container APIs. */
21
- const MenuPortal = Menu.Portal;
22
+ function MenuPortal(props) {
23
+ return /* @__PURE__ */ jsx(Menu.Portal, { ...useThemePortalProps(props) });
24
+ }
22
25
  const MenuPositioner = forwardRef(function MenuPositioner({ className, ...props }, ref) {
23
26
  return /* @__PURE__ */ jsx(Menu.Positioner, {
24
27
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","names":["MenuRoot","BaseMenu","MenuTrigger","Menu"],"sources":["../../../src/components/menu/menu.tsx"],"sourcesContent":["\"use client\";\n\nimport { Menu as BaseMenu } from \"@base-ui/react/menu\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { MenuRoot as BaseMenuRoot, MenuTrigger as BaseMenuTrigger } from \"@base-ui/react/menu\";\n\nimport { menu } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\n\n/**\n * Groups the menu parts. It keeps Base UI's controlled `open`/\n * `onOpenChange` API and uncontrolled `defaultOpen` API intact.\n */\nexport type MenuRootProps<Payload = unknown> = BaseMenuRoot.Props<Payload>;\n\nexport function MenuRoot<Payload = unknown>(props: MenuRootProps<Payload>) {\n return <BaseMenu.Root {...props} />;\n}\n\nexport type MenuTriggerProps<Payload = unknown> = BaseMenuTrigger.Props<Payload>;\n\nexport const MenuTrigger = forwardRef<HTMLButtonElement, MenuTriggerProps>(function MenuTrigger(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().trigger, className)}\n data-jaci-component=\"menu\"\n data-slot=\"menu-trigger\"\n />\n );\n});\n\n/** Preserves Base UI's portal and optional container APIs. */\nexport const MenuPortal = BaseMenu.Portal;\n\nexport type MenuPositionerProps = ComponentPropsWithoutRef<typeof BaseMenu.Positioner>;\n\nexport const MenuPositioner = forwardRef<HTMLDivElement, MenuPositionerProps>(\n function MenuPositioner({ className, ...props }, ref) {\n return (\n <BaseMenu.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().positioner, className)}\n data-slot=\"menu-positioner\"\n />\n );\n },\n);\n\nexport type MenuPopupProps = ComponentPropsWithoutRef<typeof BaseMenu.Popup>;\n\nexport const MenuPopup = forwardRef<HTMLDivElement, MenuPopupProps>(function MenuPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().popup, className)}\n data-slot=\"menu-popup\"\n />\n );\n});\n\nexport type MenuItemProps = ComponentPropsWithoutRef<typeof BaseMenu.Item>;\n\nexport const MenuItem = forwardRef<HTMLElement, MenuItemProps>(function MenuItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Item\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-item\"\n />\n );\n});\n\nexport type MenuLinkItemProps = ComponentPropsWithoutRef<typeof BaseMenu.LinkItem>;\n\n/**\n * A navigational item. It retains Base UI's keyboard navigation.\n */\nexport const MenuLinkItem = forwardRef<Element, MenuLinkItemProps>(function MenuLinkItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.LinkItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-link-item\"\n />\n );\n});\n\nexport type MenuSeparatorProps = ComponentPropsWithoutRef<typeof BaseMenu.Separator>;\n\nexport const MenuSeparator = forwardRef<HTMLDivElement, MenuSeparatorProps>(function MenuSeparator(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Separator\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().separator, className)}\n data-slot=\"menu-separator\"\n />\n );\n});\n\nexport type MenuGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.Group>;\n\nexport const MenuGroup = forwardRef<HTMLDivElement, MenuGroupProps>(function MenuGroup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Group\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().group, className)}\n data-slot=\"menu-group\"\n />\n );\n});\n\nexport type MenuGroupLabelProps = ComponentPropsWithoutRef<typeof BaseMenu.GroupLabel>;\n\nexport const MenuGroupLabel = forwardRef<HTMLDivElement, MenuGroupLabelProps>(\n function MenuGroupLabel({ className, ...props }, ref) {\n return (\n <BaseMenu.GroupLabel\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().groupLabel, className)}\n data-slot=\"menu-group-label\"\n />\n );\n },\n);\n\nexport const Menu = {\n Root: MenuRoot,\n Trigger: MenuTrigger,\n Portal: MenuPortal,\n Positioner: MenuPositioner,\n Popup: MenuPopup,\n Item: MenuItem,\n LinkItem: MenuLinkItem,\n Separator: MenuSeparator,\n Group: MenuGroup,\n GroupLabel: MenuGroupLabel,\n createHandle: BaseMenu.createHandle,\n};\n"],"mappings":";;;;;;;AAgBA,SAAgBA,WAA4B,OAA+B;CACzE,OAAO,oBAACC,KAAS,MAAV,EAAe,GAAI,MAAQ,CAAA;AACpC;AAIA,MAAaC,gBAAc,WAAgD,SAAS,YAClF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACD,KAAS,SAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,SAAS,SAAS;EACxD,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC;;AAGD,MAAa,aAAaA,KAAS;AAInC,MAAa,iBAAiB,WAC5B,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,oBAACA,KAAS,YAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,YAAY,SAAS;EAC3D,aAAU;CACX,CAAA;AAEL,CACF;AAIA,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,OAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,OAAO,SAAS;EACtD,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,WAAW,WAAuC,SAAS,SACtE,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,MAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,MAAM,SAAS;EACrD,aAAU;CACX,CAAA;AAEL,CAAC;;;;AAOD,MAAa,eAAe,WAAuC,SAAS,aAC1E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,UAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,MAAM,SAAS;EACrD,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,gBAAgB,WAA+C,SAAS,cACnF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,WAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,WAAW,SAAS;EAC1D,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,OAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,OAAO,SAAS;EACtD,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,iBAAiB,WAC5B,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,oBAACA,KAAS,YAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,YAAY,SAAS;EAC3D,aAAU;CACX,CAAA;AAEL,CACF;AAEA,MAAaE,SAAO;CAClB,MAAMH;CACN,SAASE;CACT,QAAQ;CACR,YAAY;CACZ,OAAO;CACP,MAAM;CACN,UAAU;CACV,WAAW;CACX,OAAO;CACP,YAAY;CACZ,cAAcD,KAAS;AACzB"}
1
+ {"version":3,"file":"menu.js","names":["MenuRoot","BaseMenu","MenuTrigger","Menu"],"sources":["../../../src/components/menu/menu.tsx"],"sourcesContent":["\"use client\";\n\nimport { Menu as BaseMenu } from \"@base-ui/react/menu\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { MenuRoot as BaseMenuRoot, MenuTrigger as BaseMenuTrigger } from \"@base-ui/react/menu\";\n\nimport { menu } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\n/**\n * Groups the menu parts. It keeps Base UI's controlled `open`/\n * `onOpenChange` API and uncontrolled `defaultOpen` API intact.\n */\nexport type MenuRootProps<Payload = unknown> = BaseMenuRoot.Props<Payload>;\n\nexport function MenuRoot<Payload = unknown>(props: MenuRootProps<Payload>) {\n return <BaseMenu.Root {...props} />;\n}\n\nexport type MenuTriggerProps<Payload = unknown> = BaseMenuTrigger.Props<Payload>;\n\nexport const MenuTrigger = forwardRef<HTMLButtonElement, MenuTriggerProps>(function MenuTrigger(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().trigger, className)}\n data-jaci-component=\"menu\"\n data-slot=\"menu-trigger\"\n />\n );\n});\n\n/** Preserves Base UI's portal and optional container APIs. */\nexport function MenuPortal(props: ComponentPropsWithoutRef<typeof BaseMenu.Portal>) {\n return <BaseMenu.Portal {...useThemePortalProps(props)} />;\n}\n\nexport type MenuPositionerProps = ComponentPropsWithoutRef<typeof BaseMenu.Positioner>;\n\nexport const MenuPositioner = forwardRef<HTMLDivElement, MenuPositionerProps>(\n function MenuPositioner({ className, ...props }, ref) {\n return (\n <BaseMenu.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().positioner, className)}\n data-slot=\"menu-positioner\"\n />\n );\n },\n);\n\nexport type MenuPopupProps = ComponentPropsWithoutRef<typeof BaseMenu.Popup>;\n\nexport const MenuPopup = forwardRef<HTMLDivElement, MenuPopupProps>(function MenuPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().popup, className)}\n data-slot=\"menu-popup\"\n />\n );\n});\n\nexport type MenuItemProps = ComponentPropsWithoutRef<typeof BaseMenu.Item>;\n\nexport const MenuItem = forwardRef<HTMLElement, MenuItemProps>(function MenuItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Item\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-item\"\n />\n );\n});\n\nexport type MenuLinkItemProps = ComponentPropsWithoutRef<typeof BaseMenu.LinkItem>;\n\n/**\n * A navigational item. It retains Base UI's keyboard navigation.\n */\nexport const MenuLinkItem = forwardRef<Element, MenuLinkItemProps>(function MenuLinkItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.LinkItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menu-link-item\"\n />\n );\n});\n\nexport type MenuSeparatorProps = ComponentPropsWithoutRef<typeof BaseMenu.Separator>;\n\nexport const MenuSeparator = forwardRef<HTMLDivElement, MenuSeparatorProps>(function MenuSeparator(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Separator\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().separator, className)}\n data-slot=\"menu-separator\"\n />\n );\n});\n\nexport type MenuGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.Group>;\n\nexport const MenuGroup = forwardRef<HTMLDivElement, MenuGroupProps>(function MenuGroup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Group\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().group, className)}\n data-slot=\"menu-group\"\n />\n );\n});\n\nexport type MenuGroupLabelProps = ComponentPropsWithoutRef<typeof BaseMenu.GroupLabel>;\n\nexport const MenuGroupLabel = forwardRef<HTMLDivElement, MenuGroupLabelProps>(\n function MenuGroupLabel({ className, ...props }, ref) {\n return (\n <BaseMenu.GroupLabel\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().groupLabel, className)}\n data-slot=\"menu-group-label\"\n />\n );\n },\n);\n\nexport const Menu = {\n Root: MenuRoot,\n Trigger: MenuTrigger,\n Portal: MenuPortal,\n Positioner: MenuPositioner,\n Popup: MenuPopup,\n Item: MenuItem,\n LinkItem: MenuLinkItem,\n Separator: MenuSeparator,\n Group: MenuGroup,\n GroupLabel: MenuGroupLabel,\n createHandle: BaseMenu.createHandle,\n};\n"],"mappings":";;;;;;;;AAiBA,SAAgBA,WAA4B,OAA+B;CACzE,OAAO,oBAACC,KAAS,MAAV,EAAe,GAAI,MAAQ,CAAA;AACpC;AAIA,MAAaC,gBAAc,WAAgD,SAAS,YAClF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACD,KAAS,SAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,SAAS,SAAS;EACxD,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC;;AAGD,SAAgB,WAAW,OAAyD;CAClF,OAAO,oBAACA,KAAS,QAAV,EAAiB,GAAI,oBAAoB,KAAK,EAAI,CAAA;AAC3D;AAIA,MAAa,iBAAiB,WAC5B,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,oBAACA,KAAS,YAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,YAAY,SAAS;EAC3D,aAAU;CACX,CAAA;AAEL,CACF;AAIA,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,OAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,OAAO,SAAS;EACtD,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,WAAW,WAAuC,SAAS,SACtE,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,MAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,MAAM,SAAS;EACrD,aAAU;CACX,CAAA;AAEL,CAAC;;;;AAOD,MAAa,eAAe,WAAuC,SAAS,aAC1E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,UAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,MAAM,SAAS;EACrD,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,gBAAgB,WAA+C,SAAS,cACnF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,WAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,WAAW,SAAS;EAC1D,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,KAAS,OAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,OAAO,SAAS;EACtD,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,iBAAiB,WAC5B,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,oBAACA,KAAS,YAAV;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,KAAK,CAAC,CAAC,YAAY,SAAS;EAC3D,aAAU;CACX,CAAA;AAEL,CACF;AAEA,MAAaE,SAAO;CAClB,MAAMH;CACN,SAASE;CACT,QAAQ;CACR,YAAY;CACZ,OAAO;CACP,MAAM;CACN,UAAU;CACV,WAAW;CACX,OAAO;CACP,YAAY;CACZ,cAAcD,KAAS;AACzB"}
@@ -2,6 +2,7 @@
2
2
  const require_base_ui = require("../base-ui.cjs");
3
3
  const require_menubar = require("../../styled-system/recipes/menubar.cjs");
4
4
  const require_menu = require("../../styled-system/recipes/menu.cjs");
5
+ const require_theme_scope = require("../../theme/theme-scope.cjs");
5
6
  let react = require("react");
6
7
  let react_jsx_runtime = require("react/jsx-runtime");
7
8
  let _base_ui_react_menu = require("@base-ui/react/menu");
@@ -48,7 +49,9 @@ const MenubarTrigger = (0, react.forwardRef)(function MenubarTrigger({ className
48
49
  "data-slot": "menubar-trigger"
49
50
  });
50
51
  });
51
- const MenubarPortal = _base_ui_react_menu.Menu.Portal;
52
+ function MenubarPortal(props) {
53
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_menu.Menu.Portal, { ...require_theme_scope.useThemePortalProps(props) });
54
+ }
52
55
  const MenubarPositioner = (0, react.forwardRef)(function MenubarPositioner({ className, ...props }, ref) {
53
56
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_menu.Menu.Positioner, {
54
57
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.cjs","names":["menubar","BaseMenubar","withRecipeClassName","BaseMenu","menu"],"sources":["../../../src/components/menubar/menubar.tsx"],"sourcesContent":["\"use client\";\n\nimport { Menu as BaseMenu } from \"@base-ui/react/menu\";\nimport { Menubar as BaseMenubar } from \"@base-ui/react/menubar\";\nimport { createContext, forwardRef, useContext } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { MenuRoot as BaseMenuRoot } from \"@base-ui/react/menu\";\n\nimport { menu, menubar } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\n\nexport type MenubarOrientation = \"horizontal\" | \"vertical\";\n\ninterface MenubarContextValue {\n orientation: MenubarOrientation;\n styles: ReturnType<typeof menubar>;\n}\n\nconst MenubarContext = createContext<MenubarContextValue | null>(null);\n\nfunction useMenubarContext() {\n const context = useContext(MenubarContext);\n if (!context) {\n throw new Error(\"Menubar parts must be rendered inside Menubar.Root.\");\n }\n\n return context;\n}\n\nexport interface MenubarRootProps extends ComponentPropsWithoutRef<typeof BaseMenubar> {\n orientation?: MenubarOrientation;\n}\n\n/**\n * A horizontal or vertical command bar. Each `Menubar.Menu` owns one\n * keyboard-navigable menu while the root coordinates arrow-key movement.\n */\nexport const MenubarRoot = forwardRef<HTMLDivElement, MenubarRootProps>(function MenubarRoot(\n { className, orientation = \"horizontal\", ...props },\n ref,\n) {\n const styles = menubar({ orientation });\n\n return (\n <MenubarContext.Provider value={{ orientation, styles }}>\n <BaseMenubar\n {...props}\n ref={ref}\n orientation={orientation}\n className={withRecipeClassName(styles.root, className)}\n data-jaci-component=\"menubar\"\n data-orientation={orientation}\n data-slot=\"menubar\"\n />\n </MenubarContext.Provider>\n );\n});\n\nexport interface MenubarMenuProps<Payload = unknown> extends BaseMenuRoot.Props<Payload> {}\n\nexport function MenubarMenu<Payload = unknown>(props: MenubarMenuProps<Payload>) {\n return <BaseMenu.Root {...props} />;\n}\n\nexport type MenubarTriggerProps = ComponentPropsWithoutRef<typeof BaseMenu.Trigger>;\n\nexport const MenubarTrigger = forwardRef<HTMLButtonElement, MenubarTriggerProps>(\n function MenubarTrigger({ className, ...props }, ref) {\n const { styles } = useMenubarContext();\n\n return (\n <BaseMenu.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(styles.trigger, className)}\n data-jaci-component=\"menubar\"\n data-slot=\"menubar-trigger\"\n />\n );\n },\n);\n\nexport type MenubarPortalProps = ComponentPropsWithoutRef<typeof BaseMenu.Portal>;\nexport const MenubarPortal: typeof BaseMenu.Portal = BaseMenu.Portal;\n\nexport type MenubarPositionerProps = ComponentPropsWithoutRef<typeof BaseMenu.Positioner>;\n\nexport const MenubarPositioner = forwardRef<HTMLDivElement, MenubarPositionerProps>(\n function MenubarPositioner({ className, ...props }, ref) {\n return (\n <BaseMenu.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().positioner, className)}\n data-slot=\"menubar-positioner\"\n />\n );\n },\n);\n\nexport type MenubarPopupProps = ComponentPropsWithoutRef<typeof BaseMenu.Popup>;\n\nexport const MenubarPopup = forwardRef<HTMLDivElement, MenubarPopupProps>(function MenubarPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().popup, className)}\n data-slot=\"menubar-popup\"\n />\n );\n});\n\nexport type MenubarArrowProps = ComponentPropsWithoutRef<typeof BaseMenu.Arrow>;\n\nexport const MenubarArrow = forwardRef<HTMLDivElement, MenubarArrowProps>(function MenubarArrow(\n { className, ...props },\n ref,\n) {\n return <BaseMenu.Arrow {...props} ref={ref} className={className} data-slot=\"menubar-arrow\" />;\n});\n\nexport type MenubarItemProps = ComponentPropsWithoutRef<typeof BaseMenu.Item>;\n\nexport const MenubarItem = forwardRef<HTMLElement, MenubarItemProps>(function MenubarItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Item\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-item\"\n />\n );\n});\n\nexport type MenubarLinkItemProps = ComponentPropsWithoutRef<typeof BaseMenu.LinkItem>;\n\nexport const MenubarLinkItem = forwardRef<Element, MenubarLinkItemProps>(function MenubarLinkItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.LinkItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-link-item\"\n />\n );\n});\n\nexport type MenubarGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.Group>;\n\nexport const MenubarGroup = forwardRef<HTMLDivElement, MenubarGroupProps>(function MenubarGroup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Group\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().group, className)}\n data-slot=\"menubar-group\"\n />\n );\n});\n\nexport type MenubarGroupLabelProps = ComponentPropsWithoutRef<typeof BaseMenu.GroupLabel>;\n\nexport const MenubarGroupLabel = forwardRef<HTMLDivElement, MenubarGroupLabelProps>(\n function MenubarGroupLabel({ className, ...props }, ref) {\n return (\n <BaseMenu.GroupLabel\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().groupLabel, className)}\n data-slot=\"menubar-group-label\"\n />\n );\n },\n);\n\nexport type MenubarSeparatorProps = ComponentPropsWithoutRef<typeof BaseMenu.Separator>;\n\nexport const MenubarSeparator = forwardRef<HTMLDivElement, MenubarSeparatorProps>(\n function MenubarSeparator({ className, ...props }, ref) {\n return (\n <BaseMenu.Separator\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().separator, className)}\n data-slot=\"menubar-separator\"\n />\n );\n },\n);\n\nexport type MenubarCheckboxItemProps = ComponentPropsWithoutRef<typeof BaseMenu.CheckboxItem>;\n\nexport const MenubarCheckboxItem = forwardRef<HTMLElement, MenubarCheckboxItemProps>(\n function MenubarCheckboxItem({ className, ...props }, ref) {\n return (\n <BaseMenu.CheckboxItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-checkbox-item\"\n />\n );\n },\n);\n\nexport type MenubarCheckboxItemIndicatorProps = ComponentPropsWithoutRef<\n typeof BaseMenu.CheckboxItemIndicator\n>;\n\nexport const MenubarCheckboxItemIndicator = forwardRef<\n HTMLSpanElement,\n MenubarCheckboxItemIndicatorProps\n>(function MenubarCheckboxItemIndicator({ children = \"✓\", className, ...props }, ref) {\n return (\n <BaseMenu.CheckboxItemIndicator\n {...props}\n ref={ref}\n className={className}\n data-slot=\"menubar-checkbox-indicator\"\n aria-hidden=\"true\"\n >\n {children}\n </BaseMenu.CheckboxItemIndicator>\n );\n});\n\nexport type MenubarRadioGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.RadioGroup>;\nexport const MenubarRadioGroup: typeof BaseMenu.RadioGroup = BaseMenu.RadioGroup;\n\nexport type MenubarRadioItemProps = ComponentPropsWithoutRef<typeof BaseMenu.RadioItem>;\n\nexport const MenubarRadioItem = forwardRef<HTMLElement, MenubarRadioItemProps>(\n function MenubarRadioItem({ className, ...props }, ref) {\n return (\n <BaseMenu.RadioItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-radio-item\"\n />\n );\n },\n);\n\nexport type MenubarRadioItemIndicatorProps = ComponentPropsWithoutRef<\n typeof BaseMenu.RadioItemIndicator\n>;\n\nexport const MenubarRadioItemIndicator = forwardRef<\n HTMLSpanElement,\n MenubarRadioItemIndicatorProps\n>(function MenubarRadioItemIndicator({ children = \"•\", className, ...props }, ref) {\n return (\n <BaseMenu.RadioItemIndicator\n {...props}\n ref={ref}\n className={className}\n data-slot=\"menubar-radio-indicator\"\n aria-hidden=\"true\"\n >\n {children}\n </BaseMenu.RadioItemIndicator>\n );\n});\n\nexport type MenubarSubmenuRootProps = ComponentPropsWithoutRef<typeof BaseMenu.SubmenuRoot>;\nexport const MenubarSubmenuRoot: typeof BaseMenu.SubmenuRoot = BaseMenu.SubmenuRoot;\n\nexport type MenubarSubmenuTriggerProps = ComponentPropsWithoutRef<typeof BaseMenu.SubmenuTrigger>;\n\nexport const MenubarSubmenuTrigger = forwardRef<HTMLElement, MenubarSubmenuTriggerProps>(\n function MenubarSubmenuTrigger({ className, ...props }, ref) {\n return (\n <BaseMenu.SubmenuTrigger\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-submenu-trigger\"\n />\n );\n },\n);\n\nexport const Menubar = {\n Root: MenubarRoot,\n Menu: MenubarMenu,\n Trigger: MenubarTrigger,\n Portal: MenubarPortal,\n Positioner: MenubarPositioner,\n Popup: MenubarPopup,\n Arrow: MenubarArrow,\n Item: MenubarItem,\n LinkItem: MenubarLinkItem,\n Group: MenubarGroup,\n GroupLabel: MenubarGroupLabel,\n Separator: MenubarSeparator,\n CheckboxItem: MenubarCheckboxItem,\n CheckboxItemIndicator: MenubarCheckboxItemIndicator,\n RadioGroup: MenubarRadioGroup,\n RadioItem: MenubarRadioItem,\n RadioItemIndicator: MenubarRadioItemIndicator,\n SubmenuRoot: MenubarSubmenuRoot,\n SubmenuTrigger: MenubarSubmenuTrigger,\n createHandle: BaseMenu.createHandle,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"menubar.cjs","names":["menubar","BaseMenubar","withRecipeClassName","BaseMenu","useThemePortalProps","menu"],"sources":["../../../src/components/menubar/menubar.tsx"],"sourcesContent":["\"use client\";\n\nimport { Menu as BaseMenu } from \"@base-ui/react/menu\";\nimport { Menubar as BaseMenubar } from \"@base-ui/react/menubar\";\nimport { createContext, forwardRef, useContext } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { MenuRoot as BaseMenuRoot } from \"@base-ui/react/menu\";\n\nimport { menu, menubar } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\nexport type MenubarOrientation = \"horizontal\" | \"vertical\";\n\ninterface MenubarContextValue {\n orientation: MenubarOrientation;\n styles: ReturnType<typeof menubar>;\n}\n\nconst MenubarContext = createContext<MenubarContextValue | null>(null);\n\nfunction useMenubarContext() {\n const context = useContext(MenubarContext);\n if (!context) {\n throw new Error(\"Menubar parts must be rendered inside Menubar.Root.\");\n }\n\n return context;\n}\n\nexport interface MenubarRootProps extends ComponentPropsWithoutRef<typeof BaseMenubar> {\n orientation?: MenubarOrientation;\n}\n\n/**\n * A horizontal or vertical command bar. Each `Menubar.Menu` owns one\n * keyboard-navigable menu while the root coordinates arrow-key movement.\n */\nexport const MenubarRoot = forwardRef<HTMLDivElement, MenubarRootProps>(function MenubarRoot(\n { className, orientation = \"horizontal\", ...props },\n ref,\n) {\n const styles = menubar({ orientation });\n\n return (\n <MenubarContext.Provider value={{ orientation, styles }}>\n <BaseMenubar\n {...props}\n ref={ref}\n orientation={orientation}\n className={withRecipeClassName(styles.root, className)}\n data-jaci-component=\"menubar\"\n data-orientation={orientation}\n data-slot=\"menubar\"\n />\n </MenubarContext.Provider>\n );\n});\n\nexport interface MenubarMenuProps<Payload = unknown> extends BaseMenuRoot.Props<Payload> {}\n\nexport function MenubarMenu<Payload = unknown>(props: MenubarMenuProps<Payload>) {\n return <BaseMenu.Root {...props} />;\n}\n\nexport type MenubarTriggerProps = ComponentPropsWithoutRef<typeof BaseMenu.Trigger>;\n\nexport const MenubarTrigger = forwardRef<HTMLButtonElement, MenubarTriggerProps>(\n function MenubarTrigger({ className, ...props }, ref) {\n const { styles } = useMenubarContext();\n\n return (\n <BaseMenu.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(styles.trigger, className)}\n data-jaci-component=\"menubar\"\n data-slot=\"menubar-trigger\"\n />\n );\n },\n);\n\nexport type MenubarPortalProps = ComponentPropsWithoutRef<typeof BaseMenu.Portal>;\nexport function MenubarPortal(props: MenubarPortalProps) {\n return <BaseMenu.Portal {...useThemePortalProps(props)} />;\n}\n\nexport type MenubarPositionerProps = ComponentPropsWithoutRef<typeof BaseMenu.Positioner>;\n\nexport const MenubarPositioner = forwardRef<HTMLDivElement, MenubarPositionerProps>(\n function MenubarPositioner({ className, ...props }, ref) {\n return (\n <BaseMenu.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().positioner, className)}\n data-slot=\"menubar-positioner\"\n />\n );\n },\n);\n\nexport type MenubarPopupProps = ComponentPropsWithoutRef<typeof BaseMenu.Popup>;\n\nexport const MenubarPopup = forwardRef<HTMLDivElement, MenubarPopupProps>(function MenubarPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().popup, className)}\n data-slot=\"menubar-popup\"\n />\n );\n});\n\nexport type MenubarArrowProps = ComponentPropsWithoutRef<typeof BaseMenu.Arrow>;\n\nexport const MenubarArrow = forwardRef<HTMLDivElement, MenubarArrowProps>(function MenubarArrow(\n { className, ...props },\n ref,\n) {\n return <BaseMenu.Arrow {...props} ref={ref} className={className} data-slot=\"menubar-arrow\" />;\n});\n\nexport type MenubarItemProps = ComponentPropsWithoutRef<typeof BaseMenu.Item>;\n\nexport const MenubarItem = forwardRef<HTMLElement, MenubarItemProps>(function MenubarItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Item\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-item\"\n />\n );\n});\n\nexport type MenubarLinkItemProps = ComponentPropsWithoutRef<typeof BaseMenu.LinkItem>;\n\nexport const MenubarLinkItem = forwardRef<Element, MenubarLinkItemProps>(function MenubarLinkItem(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.LinkItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-link-item\"\n />\n );\n});\n\nexport type MenubarGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.Group>;\n\nexport const MenubarGroup = forwardRef<HTMLDivElement, MenubarGroupProps>(function MenubarGroup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseMenu.Group\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().group, className)}\n data-slot=\"menubar-group\"\n />\n );\n});\n\nexport type MenubarGroupLabelProps = ComponentPropsWithoutRef<typeof BaseMenu.GroupLabel>;\n\nexport const MenubarGroupLabel = forwardRef<HTMLDivElement, MenubarGroupLabelProps>(\n function MenubarGroupLabel({ className, ...props }, ref) {\n return (\n <BaseMenu.GroupLabel\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().groupLabel, className)}\n data-slot=\"menubar-group-label\"\n />\n );\n },\n);\n\nexport type MenubarSeparatorProps = ComponentPropsWithoutRef<typeof BaseMenu.Separator>;\n\nexport const MenubarSeparator = forwardRef<HTMLDivElement, MenubarSeparatorProps>(\n function MenubarSeparator({ className, ...props }, ref) {\n return (\n <BaseMenu.Separator\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().separator, className)}\n data-slot=\"menubar-separator\"\n />\n );\n },\n);\n\nexport type MenubarCheckboxItemProps = ComponentPropsWithoutRef<typeof BaseMenu.CheckboxItem>;\n\nexport const MenubarCheckboxItem = forwardRef<HTMLElement, MenubarCheckboxItemProps>(\n function MenubarCheckboxItem({ className, ...props }, ref) {\n return (\n <BaseMenu.CheckboxItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-checkbox-item\"\n />\n );\n },\n);\n\nexport type MenubarCheckboxItemIndicatorProps = ComponentPropsWithoutRef<\n typeof BaseMenu.CheckboxItemIndicator\n>;\n\nexport const MenubarCheckboxItemIndicator = forwardRef<\n HTMLSpanElement,\n MenubarCheckboxItemIndicatorProps\n>(function MenubarCheckboxItemIndicator({ children = \"✓\", className, ...props }, ref) {\n return (\n <BaseMenu.CheckboxItemIndicator\n {...props}\n ref={ref}\n className={className}\n data-slot=\"menubar-checkbox-indicator\"\n aria-hidden=\"true\"\n >\n {children}\n </BaseMenu.CheckboxItemIndicator>\n );\n});\n\nexport type MenubarRadioGroupProps = ComponentPropsWithoutRef<typeof BaseMenu.RadioGroup>;\nexport const MenubarRadioGroup: typeof BaseMenu.RadioGroup = BaseMenu.RadioGroup;\n\nexport type MenubarRadioItemProps = ComponentPropsWithoutRef<typeof BaseMenu.RadioItem>;\n\nexport const MenubarRadioItem = forwardRef<HTMLElement, MenubarRadioItemProps>(\n function MenubarRadioItem({ className, ...props }, ref) {\n return (\n <BaseMenu.RadioItem\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-radio-item\"\n />\n );\n },\n);\n\nexport type MenubarRadioItemIndicatorProps = ComponentPropsWithoutRef<\n typeof BaseMenu.RadioItemIndicator\n>;\n\nexport const MenubarRadioItemIndicator = forwardRef<\n HTMLSpanElement,\n MenubarRadioItemIndicatorProps\n>(function MenubarRadioItemIndicator({ children = \"•\", className, ...props }, ref) {\n return (\n <BaseMenu.RadioItemIndicator\n {...props}\n ref={ref}\n className={className}\n data-slot=\"menubar-radio-indicator\"\n aria-hidden=\"true\"\n >\n {children}\n </BaseMenu.RadioItemIndicator>\n );\n});\n\nexport type MenubarSubmenuRootProps = ComponentPropsWithoutRef<typeof BaseMenu.SubmenuRoot>;\nexport const MenubarSubmenuRoot: typeof BaseMenu.SubmenuRoot = BaseMenu.SubmenuRoot;\n\nexport type MenubarSubmenuTriggerProps = ComponentPropsWithoutRef<typeof BaseMenu.SubmenuTrigger>;\n\nexport const MenubarSubmenuTrigger = forwardRef<HTMLElement, MenubarSubmenuTriggerProps>(\n function MenubarSubmenuTrigger({ className, ...props }, ref) {\n return (\n <BaseMenu.SubmenuTrigger\n {...props}\n ref={ref}\n className={withRecipeClassName(menu().item, className)}\n data-slot=\"menubar-submenu-trigger\"\n />\n );\n },\n);\n\nexport const Menubar = {\n Root: MenubarRoot,\n Menu: MenubarMenu,\n Trigger: MenubarTrigger,\n Portal: MenubarPortal,\n Positioner: MenubarPositioner,\n Popup: MenubarPopup,\n Arrow: MenubarArrow,\n Item: MenubarItem,\n LinkItem: MenubarLinkItem,\n Group: MenubarGroup,\n GroupLabel: MenubarGroupLabel,\n Separator: MenubarSeparator,\n CheckboxItem: MenubarCheckboxItem,\n CheckboxItemIndicator: MenubarCheckboxItemIndicator,\n RadioGroup: MenubarRadioGroup,\n RadioItem: MenubarRadioItem,\n RadioItemIndicator: MenubarRadioItemIndicator,\n SubmenuRoot: MenubarSubmenuRoot,\n SubmenuTrigger: MenubarSubmenuTrigger,\n createHandle: BaseMenu.createHandle,\n};\n"],"mappings":"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"}
@@ -16,7 +16,7 @@ declare function MenubarMenu<Payload = unknown>(props: MenubarMenuProps<Payload>
16
16
  type MenubarTriggerProps = ComponentPropsWithoutRef<typeof Menu.Trigger>;
17
17
  declare const MenubarTrigger: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").MenuTriggerProps<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
18
18
  type MenubarPortalProps = ComponentPropsWithoutRef<typeof Menu.Portal>;
19
- declare const MenubarPortal: typeof Menu.Portal;
19
+ declare function MenubarPortal(props: MenubarPortalProps): import("react").JSX.Element;
20
20
  type MenubarPositionerProps = ComponentPropsWithoutRef<typeof Menu.Positioner>;
21
21
  declare const MenubarPositioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
22
22
  type MenubarPopupProps = ComponentPropsWithoutRef<typeof Menu.Popup>;
@@ -51,7 +51,7 @@ declare const Menubar$1: {
51
51
  Root: import("react").ForwardRefExoticComponent<MenubarRootProps & import("react").RefAttributes<HTMLDivElement>>;
52
52
  Menu: typeof MenubarMenu;
53
53
  Trigger: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").MenuTriggerProps<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
54
- Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
54
+ Portal: typeof MenubarPortal;
55
55
  Positioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
56
56
  Popup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
57
57
  Arrow: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuArrowProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -16,7 +16,7 @@ declare function MenubarMenu<Payload = unknown>(props: MenubarMenuProps<Payload>
16
16
  type MenubarTriggerProps = ComponentPropsWithoutRef<typeof Menu.Trigger>;
17
17
  declare const MenubarTrigger: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").MenuTriggerProps<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
18
18
  type MenubarPortalProps = ComponentPropsWithoutRef<typeof Menu.Portal>;
19
- declare const MenubarPortal: typeof Menu.Portal;
19
+ declare function MenubarPortal(props: MenubarPortalProps): import("react").JSX.Element;
20
20
  type MenubarPositionerProps = ComponentPropsWithoutRef<typeof Menu.Positioner>;
21
21
  declare const MenubarPositioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
22
22
  type MenubarPopupProps = ComponentPropsWithoutRef<typeof Menu.Popup>;
@@ -51,7 +51,7 @@ declare const Menubar$1: {
51
51
  Root: import("react").ForwardRefExoticComponent<MenubarRootProps & import("react").RefAttributes<HTMLDivElement>>;
52
52
  Menu: typeof MenubarMenu;
53
53
  Trigger: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").MenuTriggerProps<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
54
- Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
54
+ Portal: typeof MenubarPortal;
55
55
  Positioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
56
56
  Popup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
57
57
  Arrow: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ContextMenuArrowProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -2,6 +2,7 @@
2
2
  import { withRecipeClassName } from "../base-ui.js";
3
3
  import { menubar } from "../../styled-system/recipes/menubar.js";
4
4
  import { menu } from "../../styled-system/recipes/menu.js";
5
+ import { useThemePortalProps } from "../../theme/theme-scope.js";
5
6
  import { createContext, forwardRef, useContext } from "react";
6
7
  import { jsx } from "react/jsx-runtime";
7
8
  import { Menu } from "@base-ui/react/menu";
@@ -48,7 +49,9 @@ const MenubarTrigger = forwardRef(function MenubarTrigger({ className, ...props
48
49
  "data-slot": "menubar-trigger"
49
50
  });
50
51
  });
51
- const MenubarPortal = Menu.Portal;
52
+ function MenubarPortal(props) {
53
+ return /* @__PURE__ */ jsx(Menu.Portal, { ...useThemePortalProps(props) });
54
+ }
52
55
  const MenubarPositioner = forwardRef(function MenubarPositioner({ className, ...props }, ref) {
53
56
  return /* @__PURE__ */ jsx(Menu.Positioner, {
54
57
  ...props,