@radix-ui/react-menubar 1.0.5-rc.9 → 1.1.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,508 +1,468 @@
1
- import $jLgaT$babelruntimehelpersesmextends from "@babel/runtime/helpers/esm/extends";
2
- import {forwardRef as $jLgaT$forwardRef, useState as $jLgaT$useState, createElement as $jLgaT$createElement, useCallback as $jLgaT$useCallback, useRef as $jLgaT$useRef, useEffect as $jLgaT$useEffect} from "react";
3
- import {createCollection as $jLgaT$createCollection} from "@radix-ui/react-collection";
4
- import {useDirection as $jLgaT$useDirection} from "@radix-ui/react-direction";
5
- import {composeEventHandlers as $jLgaT$composeEventHandlers} from "@radix-ui/primitive";
6
- import {useComposedRefs as $jLgaT$useComposedRefs} from "@radix-ui/react-compose-refs";
7
- import {createContextScope as $jLgaT$createContextScope} from "@radix-ui/react-context";
8
- import {useId as $jLgaT$useId} from "@radix-ui/react-id";
9
- import {createMenuScope as $jLgaT$createMenuScope, Root as $jLgaT$Root, Anchor as $jLgaT$Anchor, Portal as $jLgaT$Portal, Content as $jLgaT$Content, Group as $jLgaT$Group, Label as $jLgaT$Label, Item as $jLgaT$Item, CheckboxItem as $jLgaT$CheckboxItem, RadioGroup as $jLgaT$RadioGroup, RadioItem as $jLgaT$RadioItem, ItemIndicator as $jLgaT$ItemIndicator, Separator as $jLgaT$Separator, Arrow as $jLgaT$Arrow, Sub as $jLgaT$Sub, SubTrigger as $jLgaT$SubTrigger, SubContent as $jLgaT$SubContent} from "@radix-ui/react-menu";
10
- import {createRovingFocusGroupScope as $jLgaT$createRovingFocusGroupScope, Root as $jLgaT$Root1, Item as $jLgaT$Item1} from "@radix-ui/react-roving-focus";
11
- import {Primitive as $jLgaT$Primitive} from "@radix-ui/react-primitive";
12
- import {useControllableState as $jLgaT$useControllableState} from "@radix-ui/react-use-controllable-state";
1
+ "use client";
13
2
 
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
- /* -------------------------------------------------------------------------------------------------
29
- * Menubar
30
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$MENUBAR_NAME = 'Menubar';
31
- const [$0520064cdfc1bd2d$var$Collection, $0520064cdfc1bd2d$var$useCollection, $0520064cdfc1bd2d$var$createCollectionScope] = $jLgaT$createCollection($0520064cdfc1bd2d$var$MENUBAR_NAME);
32
- const [$0520064cdfc1bd2d$var$createMenubarContext, $0520064cdfc1bd2d$export$7a4049d5555b545c] = $jLgaT$createContextScope($0520064cdfc1bd2d$var$MENUBAR_NAME, [
33
- $0520064cdfc1bd2d$var$createCollectionScope,
34
- $jLgaT$createRovingFocusGroupScope
3
+ // packages/react/menubar/src/Menubar.tsx
4
+ import * as React from "react";
5
+ import { createCollection } from "@radix-ui/react-collection";
6
+ import { useDirection } from "@radix-ui/react-direction";
7
+ import { composeEventHandlers } from "@radix-ui/primitive";
8
+ import { useComposedRefs } from "@radix-ui/react-compose-refs";
9
+ import { createContextScope } from "@radix-ui/react-context";
10
+ import { useId } from "@radix-ui/react-id";
11
+ import * as MenuPrimitive from "@radix-ui/react-menu";
12
+ import { createMenuScope } from "@radix-ui/react-menu";
13
+ import * as RovingFocusGroup from "@radix-ui/react-roving-focus";
14
+ import { createRovingFocusGroupScope } from "@radix-ui/react-roving-focus";
15
+ import { Primitive } from "@radix-ui/react-primitive";
16
+ import { useControllableState } from "@radix-ui/react-use-controllable-state";
17
+ import { jsx } from "react/jsx-runtime";
18
+ var MENUBAR_NAME = "Menubar";
19
+ var [Collection, useCollection, createCollectionScope] = createCollection(MENUBAR_NAME);
20
+ var [createMenubarContext, createMenubarScope] = createContextScope(MENUBAR_NAME, [
21
+ createCollectionScope,
22
+ createRovingFocusGroupScope
35
23
  ]);
36
- const $0520064cdfc1bd2d$var$useMenuScope = $jLgaT$createMenuScope();
37
- const $0520064cdfc1bd2d$var$useRovingFocusGroupScope = $jLgaT$createRovingFocusGroupScope();
38
- const [$0520064cdfc1bd2d$var$MenubarContextProvider, $0520064cdfc1bd2d$var$useMenubarContext] = $0520064cdfc1bd2d$var$createMenubarContext($0520064cdfc1bd2d$var$MENUBAR_NAME);
39
- const $0520064cdfc1bd2d$export$7d4583da7581e674 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
40
- const { __scopeMenubar: __scopeMenubar , value: valueProp , onValueChange: onValueChange , defaultValue: defaultValue , loop: loop = true , dir: dir , ...menubarProps } = props;
41
- const direction = $jLgaT$useDirection(dir);
42
- const rovingFocusGroupScope = $0520064cdfc1bd2d$var$useRovingFocusGroupScope(__scopeMenubar);
43
- const [value1 = '', setValue] = $jLgaT$useControllableState({
44
- prop: valueProp,
45
- onChange: onValueChange,
46
- defaultProp: defaultValue
47
- }); // We need to manage tab stop id manually as `RovingFocusGroup` updates the stop
48
- // based on focus, and in some situations our triggers won't ever be given focus
49
- // (e.g. click to open and then outside to close)
50
- const [currentTabStopId, setCurrentTabStopId] = $jLgaT$useState(null);
51
- return /*#__PURE__*/ $jLgaT$createElement($0520064cdfc1bd2d$var$MenubarContextProvider, {
24
+ var useMenuScope = createMenuScope();
25
+ var useRovingFocusGroupScope = createRovingFocusGroupScope();
26
+ var [MenubarContextProvider, useMenubarContext] = createMenubarContext(MENUBAR_NAME);
27
+ var Menubar = React.forwardRef(
28
+ (props, forwardedRef) => {
29
+ const {
30
+ __scopeMenubar,
31
+ value: valueProp,
32
+ onValueChange,
33
+ defaultValue,
34
+ loop = true,
35
+ dir,
36
+ ...menubarProps
37
+ } = props;
38
+ const direction = useDirection(dir);
39
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenubar);
40
+ const [value = "", setValue] = useControllableState({
41
+ prop: valueProp,
42
+ onChange: onValueChange,
43
+ defaultProp: defaultValue
44
+ });
45
+ const [currentTabStopId, setCurrentTabStopId] = React.useState(null);
46
+ return /* @__PURE__ */ jsx(
47
+ MenubarContextProvider,
48
+ {
52
49
  scope: __scopeMenubar,
53
- value: value1,
54
- onMenuOpen: $jLgaT$useCallback((value)=>{
55
- setValue(value);
56
- setCurrentTabStopId(value);
57
- }, [
58
- setValue
59
- ]),
60
- onMenuClose: $jLgaT$useCallback(()=>setValue('')
61
- , [
62
- setValue
63
- ]),
64
- onMenuToggle: $jLgaT$useCallback((value)=>{
65
- setValue((prevValue)=>Boolean(prevValue) ? '' : value
66
- ); // `openMenuOpen` and `onMenuToggle` are called exclusively so we
67
- // need to update the id in either case.
68
- setCurrentTabStopId(value);
69
- }, [
70
- setValue
71
- ]),
72
- dir: direction,
73
- loop: loop
74
- }, /*#__PURE__*/ $jLgaT$createElement($0520064cdfc1bd2d$var$Collection.Provider, {
75
- scope: __scopeMenubar
76
- }, /*#__PURE__*/ $jLgaT$createElement($0520064cdfc1bd2d$var$Collection.Slot, {
77
- scope: __scopeMenubar
78
- }, /*#__PURE__*/ $jLgaT$createElement($jLgaT$Root1, $jLgaT$babelruntimehelpersesmextends({
79
- asChild: true
80
- }, rovingFocusGroupScope, {
81
- orientation: "horizontal",
82
- loop: loop,
50
+ value,
51
+ onMenuOpen: React.useCallback(
52
+ (value2) => {
53
+ setValue(value2);
54
+ setCurrentTabStopId(value2);
55
+ },
56
+ [setValue]
57
+ ),
58
+ onMenuClose: React.useCallback(() => setValue(""), [setValue]),
59
+ onMenuToggle: React.useCallback(
60
+ (value2) => {
61
+ setValue((prevValue) => Boolean(prevValue) ? "" : value2);
62
+ setCurrentTabStopId(value2);
63
+ },
64
+ [setValue]
65
+ ),
83
66
  dir: direction,
84
- currentTabStopId: currentTabStopId,
85
- onCurrentTabStopIdChange: setCurrentTabStopId
86
- }), /*#__PURE__*/ $jLgaT$createElement($jLgaT$Primitive.div, $jLgaT$babelruntimehelpersesmextends({
87
- role: "menubar"
88
- }, menubarProps, {
89
- ref: forwardedRef
90
- }))))));
91
- });
92
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$7d4583da7581e674, {
93
- displayName: $0520064cdfc1bd2d$var$MENUBAR_NAME
94
- });
95
- /* -------------------------------------------------------------------------------------------------
96
- * MenubarMenu
97
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$MENU_NAME = 'MenubarMenu';
98
- const [$0520064cdfc1bd2d$var$MenubarMenuProvider, $0520064cdfc1bd2d$var$useMenubarMenuContext] = $0520064cdfc1bd2d$var$createMenubarContext($0520064cdfc1bd2d$var$MENU_NAME);
99
- const $0520064cdfc1bd2d$export$c777b394d551050b = (props)=>{
100
- const { __scopeMenubar: __scopeMenubar , value: valueProp , ...menuProps } = props;
101
- const autoValue = $jLgaT$useId(); // We need to provide an initial deterministic value as `useId` will return
102
- // empty string on the first render and we don't want to match our internal "closed" value.
103
- const value = valueProp || autoValue || 'LEGACY_REACT_AUTO_VALUE';
104
- const context = $0520064cdfc1bd2d$var$useMenubarContext($0520064cdfc1bd2d$var$MENU_NAME, __scopeMenubar);
105
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
106
- const triggerRef = $jLgaT$useRef(null);
107
- const wasKeyboardTriggerOpenRef = $jLgaT$useRef(false);
108
- const open1 = context.value === value;
109
- $jLgaT$useEffect(()=>{
110
- if (!open1) wasKeyboardTriggerOpenRef.current = false;
111
- }, [
112
- open1
113
- ]);
114
- return /*#__PURE__*/ $jLgaT$createElement($0520064cdfc1bd2d$var$MenubarMenuProvider, {
115
- scope: __scopeMenubar,
116
- value: value,
117
- triggerId: $jLgaT$useId(),
118
- triggerRef: triggerRef,
119
- contentId: $jLgaT$useId(),
120
- wasKeyboardTriggerOpenRef: wasKeyboardTriggerOpenRef
121
- }, /*#__PURE__*/ $jLgaT$createElement($jLgaT$Root, $jLgaT$babelruntimehelpersesmextends({}, menuScope, {
122
- open: open1,
123
- onOpenChange: (open)=>{
124
- // Menu only calls `onOpenChange` when dismissing so we
125
- // want to close our MenuBar based on the same events.
126
- if (!open) context.onMenuClose();
127
- },
128
- modal: false,
129
- dir: context.dir
130
- }, menuProps)));
67
+ loop,
68
+ children: /* @__PURE__ */ jsx(Collection.Provider, { scope: __scopeMenubar, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeMenubar, children: /* @__PURE__ */ jsx(
69
+ RovingFocusGroup.Root,
70
+ {
71
+ asChild: true,
72
+ ...rovingFocusGroupScope,
73
+ orientation: "horizontal",
74
+ loop,
75
+ dir: direction,
76
+ currentTabStopId,
77
+ onCurrentTabStopIdChange: setCurrentTabStopId,
78
+ children: /* @__PURE__ */ jsx(Primitive.div, { role: "menubar", ...menubarProps, ref: forwardedRef })
79
+ }
80
+ ) }) })
81
+ }
82
+ );
83
+ }
84
+ );
85
+ Menubar.displayName = MENUBAR_NAME;
86
+ var MENU_NAME = "MenubarMenu";
87
+ var [MenubarMenuProvider, useMenubarMenuContext] = createMenubarContext(MENU_NAME);
88
+ var MenubarMenu = (props) => {
89
+ const { __scopeMenubar, value: valueProp, ...menuProps } = props;
90
+ const autoValue = useId();
91
+ const value = valueProp || autoValue || "LEGACY_REACT_AUTO_VALUE";
92
+ const context = useMenubarContext(MENU_NAME, __scopeMenubar);
93
+ const menuScope = useMenuScope(__scopeMenubar);
94
+ const triggerRef = React.useRef(null);
95
+ const wasKeyboardTriggerOpenRef = React.useRef(false);
96
+ const open = context.value === value;
97
+ React.useEffect(() => {
98
+ if (!open) wasKeyboardTriggerOpenRef.current = false;
99
+ }, [open]);
100
+ return /* @__PURE__ */ jsx(
101
+ MenubarMenuProvider,
102
+ {
103
+ scope: __scopeMenubar,
104
+ value,
105
+ triggerId: useId(),
106
+ triggerRef,
107
+ contentId: useId(),
108
+ wasKeyboardTriggerOpenRef,
109
+ children: /* @__PURE__ */ jsx(
110
+ MenuPrimitive.Root,
111
+ {
112
+ ...menuScope,
113
+ open,
114
+ onOpenChange: (open2) => {
115
+ if (!open2) context.onMenuClose();
116
+ },
117
+ modal: false,
118
+ dir: context.dir,
119
+ ...menuProps
120
+ }
121
+ )
122
+ }
123
+ );
131
124
  };
132
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$c777b394d551050b, {
133
- displayName: $0520064cdfc1bd2d$var$MENU_NAME
134
- });
135
- /* -------------------------------------------------------------------------------------------------
136
- * MenubarTrigger
137
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$TRIGGER_NAME = 'MenubarTrigger';
138
- const $0520064cdfc1bd2d$export$df05cd234081ebd5 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
139
- const { __scopeMenubar: __scopeMenubar , disabled: disabled = false , ...triggerProps } = props;
140
- const rovingFocusGroupScope = $0520064cdfc1bd2d$var$useRovingFocusGroupScope(__scopeMenubar);
141
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
142
- const context = $0520064cdfc1bd2d$var$useMenubarContext($0520064cdfc1bd2d$var$TRIGGER_NAME, __scopeMenubar);
143
- const menuContext = $0520064cdfc1bd2d$var$useMenubarMenuContext($0520064cdfc1bd2d$var$TRIGGER_NAME, __scopeMenubar);
144
- const ref = $jLgaT$useRef(null);
145
- const composedRefs = $jLgaT$useComposedRefs(forwardedRef, ref, menuContext.triggerRef);
146
- const [isFocused, setIsFocused] = $jLgaT$useState(false);
125
+ MenubarMenu.displayName = MENU_NAME;
126
+ var TRIGGER_NAME = "MenubarTrigger";
127
+ var MenubarTrigger = React.forwardRef(
128
+ (props, forwardedRef) => {
129
+ const { __scopeMenubar, disabled = false, ...triggerProps } = props;
130
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenubar);
131
+ const menuScope = useMenuScope(__scopeMenubar);
132
+ const context = useMenubarContext(TRIGGER_NAME, __scopeMenubar);
133
+ const menuContext = useMenubarMenuContext(TRIGGER_NAME, __scopeMenubar);
134
+ const ref = React.useRef(null);
135
+ const composedRefs = useComposedRefs(forwardedRef, ref, menuContext.triggerRef);
136
+ const [isFocused, setIsFocused] = React.useState(false);
147
137
  const open = context.value === menuContext.value;
148
- return /*#__PURE__*/ $jLgaT$createElement($0520064cdfc1bd2d$var$Collection.ItemSlot, {
149
- scope: __scopeMenubar,
150
- value: menuContext.value,
151
- disabled: disabled
152
- }, /*#__PURE__*/ $jLgaT$createElement($jLgaT$Item1, $jLgaT$babelruntimehelpersesmextends({
153
- asChild: true
154
- }, rovingFocusGroupScope, {
138
+ return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeMenubar, value: menuContext.value, disabled, children: /* @__PURE__ */ jsx(
139
+ RovingFocusGroup.Item,
140
+ {
141
+ asChild: true,
142
+ ...rovingFocusGroupScope,
155
143
  focusable: !disabled,
156
- tabStopId: menuContext.value
157
- }), /*#__PURE__*/ $jLgaT$createElement($jLgaT$Anchor, $jLgaT$babelruntimehelpersesmextends({
158
- asChild: true
159
- }, menuScope), /*#__PURE__*/ $jLgaT$createElement($jLgaT$Primitive.button, $jLgaT$babelruntimehelpersesmextends({
160
- type: "button",
161
- role: "menuitem",
162
- id: menuContext.triggerId,
163
- "aria-haspopup": "menu",
164
- "aria-expanded": open,
165
- "aria-controls": open ? menuContext.contentId : undefined,
166
- "data-highlighted": isFocused ? '' : undefined,
167
- "data-state": open ? 'open' : 'closed',
168
- "data-disabled": disabled ? '' : undefined,
169
- disabled: disabled
170
- }, triggerProps, {
171
- ref: composedRefs,
172
- onPointerDown: $jLgaT$composeEventHandlers(props.onPointerDown, (event)=>{
173
- // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)
174
- // but not when the control key is pressed (avoiding MacOS right click)
175
- if (!disabled && event.button === 0 && event.ctrlKey === false) {
176
- context.onMenuOpen(menuContext.value); // prevent trigger focusing when opening
177
- // this allows the content to be given focus without competition
144
+ tabStopId: menuContext.value,
145
+ children: /* @__PURE__ */ jsx(MenuPrimitive.Anchor, { asChild: true, ...menuScope, children: /* @__PURE__ */ jsx(
146
+ Primitive.button,
147
+ {
148
+ type: "button",
149
+ role: "menuitem",
150
+ id: menuContext.triggerId,
151
+ "aria-haspopup": "menu",
152
+ "aria-expanded": open,
153
+ "aria-controls": open ? menuContext.contentId : void 0,
154
+ "data-highlighted": isFocused ? "" : void 0,
155
+ "data-state": open ? "open" : "closed",
156
+ "data-disabled": disabled ? "" : void 0,
157
+ disabled,
158
+ ...triggerProps,
159
+ ref: composedRefs,
160
+ onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {
161
+ if (!disabled && event.button === 0 && event.ctrlKey === false) {
162
+ context.onMenuOpen(menuContext.value);
178
163
  if (!open) event.preventDefault();
179
- }
180
- }),
181
- onPointerEnter: $jLgaT$composeEventHandlers(props.onPointerEnter, ()=>{
182
- const menubarOpen = Boolean(context.value);
183
- if (menubarOpen && !open) {
184
- var _ref$current;
164
+ }
165
+ }),
166
+ onPointerEnter: composeEventHandlers(props.onPointerEnter, () => {
167
+ const menubarOpen = Boolean(context.value);
168
+ if (menubarOpen && !open) {
185
169
  context.onMenuOpen(menuContext.value);
186
- (_ref$current = ref.current) === null || _ref$current === void 0 || _ref$current.focus();
187
- }
188
- }),
189
- onKeyDown: $jLgaT$composeEventHandlers(props.onKeyDown, (event)=>{
190
- if (disabled) return;
191
- if ([
192
- 'Enter',
193
- ' '
194
- ].includes(event.key)) context.onMenuToggle(menuContext.value);
195
- if (event.key === 'ArrowDown') context.onMenuOpen(menuContext.value); // prevent keydown from scrolling window / first focused item to execute
196
- // that keydown (inadvertently closing the menu)
197
- if ([
198
- 'Enter',
199
- ' ',
200
- 'ArrowDown'
201
- ].includes(event.key)) {
170
+ ref.current?.focus();
171
+ }
172
+ }),
173
+ onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
174
+ if (disabled) return;
175
+ if (["Enter", " "].includes(event.key)) context.onMenuToggle(menuContext.value);
176
+ if (event.key === "ArrowDown") context.onMenuOpen(menuContext.value);
177
+ if (["Enter", " ", "ArrowDown"].includes(event.key)) {
202
178
  menuContext.wasKeyboardTriggerOpenRef.current = true;
203
179
  event.preventDefault();
204
- }
205
- }),
206
- onFocus: $jLgaT$composeEventHandlers(props.onFocus, ()=>setIsFocused(true)
207
- ),
208
- onBlur: $jLgaT$composeEventHandlers(props.onBlur, ()=>setIsFocused(false)
209
- )
210
- })))));
211
- });
212
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$df05cd234081ebd5, {
213
- displayName: $0520064cdfc1bd2d$var$TRIGGER_NAME
214
- });
215
- /* -------------------------------------------------------------------------------------------------
216
- * MenubarPortal
217
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$PORTAL_NAME = 'MenubarPortal';
218
- const $0520064cdfc1bd2d$export$a98ed304d621e164 = (props)=>{
219
- const { __scopeMenubar: __scopeMenubar , ...portalProps } = props;
220
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
221
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Portal, $jLgaT$babelruntimehelpersesmextends({}, menuScope, portalProps));
180
+ }
181
+ }),
182
+ onFocus: composeEventHandlers(props.onFocus, () => setIsFocused(true)),
183
+ onBlur: composeEventHandlers(props.onBlur, () => setIsFocused(false))
184
+ }
185
+ ) })
186
+ }
187
+ ) });
188
+ }
189
+ );
190
+ MenubarTrigger.displayName = TRIGGER_NAME;
191
+ var PORTAL_NAME = "MenubarPortal";
192
+ var MenubarPortal = (props) => {
193
+ const { __scopeMenubar, ...portalProps } = props;
194
+ const menuScope = useMenuScope(__scopeMenubar);
195
+ return /* @__PURE__ */ jsx(MenuPrimitive.Portal, { ...menuScope, ...portalProps });
222
196
  };
223
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$a98ed304d621e164, {
224
- displayName: $0520064cdfc1bd2d$var$PORTAL_NAME
225
- });
226
- /* -------------------------------------------------------------------------------------------------
227
- * MenubarContent
228
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$CONTENT_NAME = 'MenubarContent';
229
- const $0520064cdfc1bd2d$export$f42a00bc8a46c161 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
230
- const { __scopeMenubar: __scopeMenubar , align: align = 'start' , ...contentProps } = props;
231
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
232
- const context = $0520064cdfc1bd2d$var$useMenubarContext($0520064cdfc1bd2d$var$CONTENT_NAME, __scopeMenubar);
233
- const menuContext = $0520064cdfc1bd2d$var$useMenubarMenuContext($0520064cdfc1bd2d$var$CONTENT_NAME, __scopeMenubar);
234
- const getItems = $0520064cdfc1bd2d$var$useCollection(__scopeMenubar);
235
- const hasInteractedOutsideRef = $jLgaT$useRef(false);
236
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Content, $jLgaT$babelruntimehelpersesmextends({
197
+ MenubarPortal.displayName = PORTAL_NAME;
198
+ var CONTENT_NAME = "MenubarContent";
199
+ var MenubarContent = React.forwardRef(
200
+ (props, forwardedRef) => {
201
+ const { __scopeMenubar, align = "start", ...contentProps } = props;
202
+ const menuScope = useMenuScope(__scopeMenubar);
203
+ const context = useMenubarContext(CONTENT_NAME, __scopeMenubar);
204
+ const menuContext = useMenubarMenuContext(CONTENT_NAME, __scopeMenubar);
205
+ const getItems = useCollection(__scopeMenubar);
206
+ const hasInteractedOutsideRef = React.useRef(false);
207
+ return /* @__PURE__ */ jsx(
208
+ MenuPrimitive.Content,
209
+ {
237
210
  id: menuContext.contentId,
238
211
  "aria-labelledby": menuContext.triggerId,
239
- "data-radix-menubar-content": ""
240
- }, menuScope, contentProps, {
212
+ "data-radix-menubar-content": "",
213
+ ...menuScope,
214
+ ...contentProps,
241
215
  ref: forwardedRef,
242
- align: align,
243
- onCloseAutoFocus: $jLgaT$composeEventHandlers(props.onCloseAutoFocus, (event)=>{
244
- const menubarOpen = Boolean(context.value);
245
- if (!menubarOpen && !hasInteractedOutsideRef.current) {
246
- var _menuContext$triggerR;
247
- (_menuContext$triggerR = menuContext.triggerRef.current) === null || _menuContext$triggerR === void 0 || _menuContext$triggerR.focus();
248
- }
249
- hasInteractedOutsideRef.current = false; // Always prevent auto focus because we either focus manually or want user agent focus
250
- event.preventDefault();
216
+ align,
217
+ onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {
218
+ const menubarOpen = Boolean(context.value);
219
+ if (!menubarOpen && !hasInteractedOutsideRef.current) {
220
+ menuContext.triggerRef.current?.focus();
221
+ }
222
+ hasInteractedOutsideRef.current = false;
223
+ event.preventDefault();
251
224
  }),
252
- onFocusOutside: $jLgaT$composeEventHandlers(props.onFocusOutside, (event)=>{
253
- const target = event.target;
254
- const isMenubarTrigger = getItems().some((item)=>{
255
- var _item$ref$current;
256
- return (_item$ref$current = item.ref.current) === null || _item$ref$current === void 0 ? void 0 : _item$ref$current.contains(target);
257
- });
258
- if (isMenubarTrigger) event.preventDefault();
225
+ onFocusOutside: composeEventHandlers(props.onFocusOutside, (event) => {
226
+ const target = event.target;
227
+ const isMenubarTrigger = getItems().some((item) => item.ref.current?.contains(target));
228
+ if (isMenubarTrigger) event.preventDefault();
259
229
  }),
260
- onInteractOutside: $jLgaT$composeEventHandlers(props.onInteractOutside, ()=>{
261
- hasInteractedOutsideRef.current = true;
230
+ onInteractOutside: composeEventHandlers(props.onInteractOutside, () => {
231
+ hasInteractedOutsideRef.current = true;
262
232
  }),
263
- onEntryFocus: (event)=>{
264
- if (!menuContext.wasKeyboardTriggerOpenRef.current) event.preventDefault();
233
+ onEntryFocus: (event) => {
234
+ if (!menuContext.wasKeyboardTriggerOpenRef.current) event.preventDefault();
265
235
  },
266
- onKeyDown: $jLgaT$composeEventHandlers(props.onKeyDown, (event)=>{
267
- if ([
268
- 'ArrowRight',
269
- 'ArrowLeft'
270
- ].includes(event.key)) {
271
- const target = event.target;
272
- const targetIsSubTrigger = target.hasAttribute('data-radix-menubar-subtrigger');
273
- const isKeyDownInsideSubMenu = target.closest('[data-radix-menubar-content]') !== event.currentTarget;
274
- const prevMenuKey = context.dir === 'rtl' ? 'ArrowRight' : 'ArrowLeft';
275
- const isPrevKey = prevMenuKey === event.key;
276
- const isNextKey = !isPrevKey; // Prevent navigation when we're opening a submenu
277
- if (isNextKey && targetIsSubTrigger) return; // or we're inside a submenu and are moving backwards to close it
278
- if (isKeyDownInsideSubMenu && isPrevKey) return;
279
- const items = getItems().filter((item)=>!item.disabled
280
- );
281
- let candidateValues = items.map((item)=>item.value
282
- );
283
- if (isPrevKey) candidateValues.reverse();
284
- const currentIndex = candidateValues.indexOf(menuContext.value);
285
- candidateValues = context.loop ? $0520064cdfc1bd2d$var$wrapArray(candidateValues, currentIndex + 1) : candidateValues.slice(currentIndex + 1);
286
- const [nextValue] = candidateValues;
287
- if (nextValue) context.onMenuOpen(nextValue);
236
+ onKeyDown: composeEventHandlers(
237
+ props.onKeyDown,
238
+ (event) => {
239
+ if (["ArrowRight", "ArrowLeft"].includes(event.key)) {
240
+ const target = event.target;
241
+ const targetIsSubTrigger = target.hasAttribute("data-radix-menubar-subtrigger");
242
+ const isKeyDownInsideSubMenu = target.closest("[data-radix-menubar-content]") !== event.currentTarget;
243
+ const prevMenuKey = context.dir === "rtl" ? "ArrowRight" : "ArrowLeft";
244
+ const isPrevKey = prevMenuKey === event.key;
245
+ const isNextKey = !isPrevKey;
246
+ if (isNextKey && targetIsSubTrigger) return;
247
+ if (isKeyDownInsideSubMenu && isPrevKey) return;
248
+ const items = getItems().filter((item) => !item.disabled);
249
+ let candidateValues = items.map((item) => item.value);
250
+ if (isPrevKey) candidateValues.reverse();
251
+ const currentIndex = candidateValues.indexOf(menuContext.value);
252
+ candidateValues = context.loop ? wrapArray(candidateValues, currentIndex + 1) : candidateValues.slice(currentIndex + 1);
253
+ const [nextValue] = candidateValues;
254
+ if (nextValue) context.onMenuOpen(nextValue);
288
255
  }
289
- }, {
290
- checkForDefaultPrevented: false
291
- }),
256
+ },
257
+ { checkForDefaultPrevented: false }
258
+ ),
292
259
  style: {
293
- ...props.style,
294
- '--radix-menubar-content-transform-origin': 'var(--radix-popper-transform-origin)',
295
- '--radix-menubar-content-available-width': 'var(--radix-popper-available-width)',
296
- '--radix-menubar-content-available-height': 'var(--radix-popper-available-height)',
297
- '--radix-menubar-trigger-width': 'var(--radix-popper-anchor-width)',
298
- '--radix-menubar-trigger-height': 'var(--radix-popper-anchor-height)'
260
+ ...props.style,
261
+ // re-namespace exposed content custom properties
262
+ ...{
263
+ "--radix-menubar-content-transform-origin": "var(--radix-popper-transform-origin)",
264
+ "--radix-menubar-content-available-width": "var(--radix-popper-available-width)",
265
+ "--radix-menubar-content-available-height": "var(--radix-popper-available-height)",
266
+ "--radix-menubar-trigger-width": "var(--radix-popper-anchor-width)",
267
+ "--radix-menubar-trigger-height": "var(--radix-popper-anchor-height)"
268
+ }
299
269
  }
300
- }));
301
- });
302
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$f42a00bc8a46c161, {
303
- displayName: $0520064cdfc1bd2d$var$CONTENT_NAME
304
- });
305
- /* -------------------------------------------------------------------------------------------------
306
- * MenubarGroup
307
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$GROUP_NAME = 'MenubarGroup';
308
- const $0520064cdfc1bd2d$export$7669e79198e0f2eb = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
309
- const { __scopeMenubar: __scopeMenubar , ...groupProps } = props;
310
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
311
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Group, $jLgaT$babelruntimehelpersesmextends({}, menuScope, groupProps, {
312
- ref: forwardedRef
313
- }));
314
- });
315
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$7669e79198e0f2eb, {
316
- displayName: $0520064cdfc1bd2d$var$GROUP_NAME
317
- });
318
- /* -------------------------------------------------------------------------------------------------
319
- * MenubarLabel
320
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$LABEL_NAME = 'MenubarLabel';
321
- const $0520064cdfc1bd2d$export$39935c5b19a4b4e = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
322
- const { __scopeMenubar: __scopeMenubar , ...labelProps } = props;
323
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
324
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Label, $jLgaT$babelruntimehelpersesmextends({}, menuScope, labelProps, {
325
- ref: forwardedRef
326
- }));
327
- });
328
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$39935c5b19a4b4e, {
329
- displayName: $0520064cdfc1bd2d$var$LABEL_NAME
330
- });
331
- /* -------------------------------------------------------------------------------------------------
332
- * MenubarItem
333
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$ITEM_NAME = 'MenubarItem';
334
- const $0520064cdfc1bd2d$export$92f903c8c91c291c = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
335
- const { __scopeMenubar: __scopeMenubar , ...itemProps } = props;
336
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
337
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Item, $jLgaT$babelruntimehelpersesmextends({}, menuScope, itemProps, {
338
- ref: forwardedRef
339
- }));
340
- });
341
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$92f903c8c91c291c, {
342
- displayName: $0520064cdfc1bd2d$var$ITEM_NAME
343
- });
344
- /* -------------------------------------------------------------------------------------------------
345
- * MenubarCheckboxItem
346
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$CHECKBOX_ITEM_NAME = 'MenubarCheckboxItem';
347
- const $0520064cdfc1bd2d$export$372384eccd27af53 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
348
- const { __scopeMenubar: __scopeMenubar , ...checkboxItemProps } = props;
349
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
350
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$CheckboxItem, $jLgaT$babelruntimehelpersesmextends({}, menuScope, checkboxItemProps, {
351
- ref: forwardedRef
352
- }));
353
- });
354
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$372384eccd27af53, {
355
- displayName: $0520064cdfc1bd2d$var$CHECKBOX_ITEM_NAME
356
- });
357
- /* -------------------------------------------------------------------------------------------------
358
- * MenubarRadioGroup
359
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$RADIO_GROUP_NAME = 'MenubarRadioGroup';
360
- const $0520064cdfc1bd2d$export$94dfa2322f330fdb = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
361
- const { __scopeMenubar: __scopeMenubar , ...radioGroupProps } = props;
362
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
363
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$RadioGroup, $jLgaT$babelruntimehelpersesmextends({}, menuScope, radioGroupProps, {
364
- ref: forwardedRef
365
- }));
366
- });
367
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$94dfa2322f330fdb, {
368
- displayName: $0520064cdfc1bd2d$var$RADIO_GROUP_NAME
369
- });
370
- /* -------------------------------------------------------------------------------------------------
371
- * MenubarRadioItem
372
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$RADIO_ITEM_NAME = 'MenubarRadioItem';
373
- const $0520064cdfc1bd2d$export$7d2f467b4a7f68d8 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
374
- const { __scopeMenubar: __scopeMenubar , ...radioItemProps } = props;
375
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
376
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$RadioItem, $jLgaT$babelruntimehelpersesmextends({}, menuScope, radioItemProps, {
377
- ref: forwardedRef
378
- }));
379
- });
380
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$7d2f467b4a7f68d8, {
381
- displayName: $0520064cdfc1bd2d$var$RADIO_ITEM_NAME
382
- });
383
- /* -------------------------------------------------------------------------------------------------
384
- * MenubarItemIndicator
385
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$INDICATOR_NAME = 'MenubarItemIndicator';
386
- const $0520064cdfc1bd2d$export$63e15a0e2af5a57 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
387
- const { __scopeMenubar: __scopeMenubar , ...itemIndicatorProps } = props;
388
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
389
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$ItemIndicator, $jLgaT$babelruntimehelpersesmextends({}, menuScope, itemIndicatorProps, {
390
- ref: forwardedRef
391
- }));
392
- });
393
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$63e15a0e2af5a57, {
394
- displayName: $0520064cdfc1bd2d$var$INDICATOR_NAME
395
- });
396
- /* -------------------------------------------------------------------------------------------------
397
- * MenubarSeparator
398
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$SEPARATOR_NAME = 'MenubarSeparator';
399
- const $0520064cdfc1bd2d$export$588aef9e7b5183b5 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
400
- const { __scopeMenubar: __scopeMenubar , ...separatorProps } = props;
401
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
402
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Separator, $jLgaT$babelruntimehelpersesmextends({}, menuScope, separatorProps, {
403
- ref: forwardedRef
404
- }));
405
- });
406
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$588aef9e7b5183b5, {
407
- displayName: $0520064cdfc1bd2d$var$SEPARATOR_NAME
408
- });
409
- /* -------------------------------------------------------------------------------------------------
410
- * MenubarArrow
411
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$ARROW_NAME = 'MenubarArrow';
412
- const $0520064cdfc1bd2d$export$474b9891f5b9e633 = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
413
- const { __scopeMenubar: __scopeMenubar , ...arrowProps } = props;
414
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
415
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Arrow, $jLgaT$babelruntimehelpersesmextends({}, menuScope, arrowProps, {
416
- ref: forwardedRef
417
- }));
418
- });
419
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$474b9891f5b9e633, {
420
- displayName: $0520064cdfc1bd2d$var$ARROW_NAME
270
+ }
271
+ );
272
+ }
273
+ );
274
+ MenubarContent.displayName = CONTENT_NAME;
275
+ var GROUP_NAME = "MenubarGroup";
276
+ var MenubarGroup = React.forwardRef(
277
+ (props, forwardedRef) => {
278
+ const { __scopeMenubar, ...groupProps } = props;
279
+ const menuScope = useMenuScope(__scopeMenubar);
280
+ return /* @__PURE__ */ jsx(MenuPrimitive.Group, { ...menuScope, ...groupProps, ref: forwardedRef });
281
+ }
282
+ );
283
+ MenubarGroup.displayName = GROUP_NAME;
284
+ var LABEL_NAME = "MenubarLabel";
285
+ var MenubarLabel = React.forwardRef(
286
+ (props, forwardedRef) => {
287
+ const { __scopeMenubar, ...labelProps } = props;
288
+ const menuScope = useMenuScope(__scopeMenubar);
289
+ return /* @__PURE__ */ jsx(MenuPrimitive.Label, { ...menuScope, ...labelProps, ref: forwardedRef });
290
+ }
291
+ );
292
+ MenubarLabel.displayName = LABEL_NAME;
293
+ var ITEM_NAME = "MenubarItem";
294
+ var MenubarItem = React.forwardRef(
295
+ (props, forwardedRef) => {
296
+ const { __scopeMenubar, ...itemProps } = props;
297
+ const menuScope = useMenuScope(__scopeMenubar);
298
+ return /* @__PURE__ */ jsx(MenuPrimitive.Item, { ...menuScope, ...itemProps, ref: forwardedRef });
299
+ }
300
+ );
301
+ MenubarItem.displayName = ITEM_NAME;
302
+ var CHECKBOX_ITEM_NAME = "MenubarCheckboxItem";
303
+ var MenubarCheckboxItem = React.forwardRef(
304
+ (props, forwardedRef) => {
305
+ const { __scopeMenubar, ...checkboxItemProps } = props;
306
+ const menuScope = useMenuScope(__scopeMenubar);
307
+ return /* @__PURE__ */ jsx(MenuPrimitive.CheckboxItem, { ...menuScope, ...checkboxItemProps, ref: forwardedRef });
308
+ }
309
+ );
310
+ MenubarCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
311
+ var RADIO_GROUP_NAME = "MenubarRadioGroup";
312
+ var MenubarRadioGroup = React.forwardRef(
313
+ (props, forwardedRef) => {
314
+ const { __scopeMenubar, ...radioGroupProps } = props;
315
+ const menuScope = useMenuScope(__scopeMenubar);
316
+ return /* @__PURE__ */ jsx(MenuPrimitive.RadioGroup, { ...menuScope, ...radioGroupProps, ref: forwardedRef });
317
+ }
318
+ );
319
+ MenubarRadioGroup.displayName = RADIO_GROUP_NAME;
320
+ var RADIO_ITEM_NAME = "MenubarRadioItem";
321
+ var MenubarRadioItem = React.forwardRef(
322
+ (props, forwardedRef) => {
323
+ const { __scopeMenubar, ...radioItemProps } = props;
324
+ const menuScope = useMenuScope(__scopeMenubar);
325
+ return /* @__PURE__ */ jsx(MenuPrimitive.RadioItem, { ...menuScope, ...radioItemProps, ref: forwardedRef });
326
+ }
327
+ );
328
+ MenubarRadioItem.displayName = RADIO_ITEM_NAME;
329
+ var INDICATOR_NAME = "MenubarItemIndicator";
330
+ var MenubarItemIndicator = React.forwardRef((props, forwardedRef) => {
331
+ const { __scopeMenubar, ...itemIndicatorProps } = props;
332
+ const menuScope = useMenuScope(__scopeMenubar);
333
+ return /* @__PURE__ */ jsx(MenuPrimitive.ItemIndicator, { ...menuScope, ...itemIndicatorProps, ref: forwardedRef });
421
334
  });
422
- /* -------------------------------------------------------------------------------------------------
423
- * MenubarSub
424
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$SUB_NAME = 'MenubarSub';
425
- const $0520064cdfc1bd2d$export$ed0be551778c493a = (props)=>{
426
- const { __scopeMenubar: __scopeMenubar , children: children , open: openProp , onOpenChange: onOpenChange , defaultOpen: defaultOpen } = props;
427
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
428
- const [open = false, setOpen] = $jLgaT$useControllableState({
429
- prop: openProp,
430
- defaultProp: defaultOpen,
431
- onChange: onOpenChange
432
- });
433
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$Sub, $jLgaT$babelruntimehelpersesmextends({}, menuScope, {
434
- open: open,
435
- onOpenChange: setOpen
436
- }), children);
335
+ MenubarItemIndicator.displayName = INDICATOR_NAME;
336
+ var SEPARATOR_NAME = "MenubarSeparator";
337
+ var MenubarSeparator = React.forwardRef(
338
+ (props, forwardedRef) => {
339
+ const { __scopeMenubar, ...separatorProps } = props;
340
+ const menuScope = useMenuScope(__scopeMenubar);
341
+ return /* @__PURE__ */ jsx(MenuPrimitive.Separator, { ...menuScope, ...separatorProps, ref: forwardedRef });
342
+ }
343
+ );
344
+ MenubarSeparator.displayName = SEPARATOR_NAME;
345
+ var ARROW_NAME = "MenubarArrow";
346
+ var MenubarArrow = React.forwardRef(
347
+ (props, forwardedRef) => {
348
+ const { __scopeMenubar, ...arrowProps } = props;
349
+ const menuScope = useMenuScope(__scopeMenubar);
350
+ return /* @__PURE__ */ jsx(MenuPrimitive.Arrow, { ...menuScope, ...arrowProps, ref: forwardedRef });
351
+ }
352
+ );
353
+ MenubarArrow.displayName = ARROW_NAME;
354
+ var SUB_NAME = "MenubarSub";
355
+ var MenubarSub = (props) => {
356
+ const { __scopeMenubar, children, open: openProp, onOpenChange, defaultOpen } = props;
357
+ const menuScope = useMenuScope(__scopeMenubar);
358
+ const [open = false, setOpen] = useControllableState({
359
+ prop: openProp,
360
+ defaultProp: defaultOpen,
361
+ onChange: onOpenChange
362
+ });
363
+ return /* @__PURE__ */ jsx(MenuPrimitive.Sub, { ...menuScope, open, onOpenChange: setOpen, children });
437
364
  };
438
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$ed0be551778c493a, {
439
- displayName: $0520064cdfc1bd2d$var$SUB_NAME
440
- });
441
- /* -------------------------------------------------------------------------------------------------
442
- * MenubarSubTrigger
443
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$SUB_TRIGGER_NAME = 'MenubarSubTrigger';
444
- const $0520064cdfc1bd2d$export$1820ea18a1dfed3c = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
445
- const { __scopeMenubar: __scopeMenubar , ...subTriggerProps } = props;
446
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
447
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$SubTrigger, $jLgaT$babelruntimehelpersesmextends({
448
- "data-radix-menubar-subtrigger": ""
449
- }, menuScope, subTriggerProps, {
365
+ MenubarSub.displayName = SUB_NAME;
366
+ var SUB_TRIGGER_NAME = "MenubarSubTrigger";
367
+ var MenubarSubTrigger = React.forwardRef(
368
+ (props, forwardedRef) => {
369
+ const { __scopeMenubar, ...subTriggerProps } = props;
370
+ const menuScope = useMenuScope(__scopeMenubar);
371
+ return /* @__PURE__ */ jsx(
372
+ MenuPrimitive.SubTrigger,
373
+ {
374
+ "data-radix-menubar-subtrigger": "",
375
+ ...menuScope,
376
+ ...subTriggerProps,
450
377
  ref: forwardedRef
451
- }));
452
- });
453
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$1820ea18a1dfed3c, {
454
- displayName: $0520064cdfc1bd2d$var$SUB_TRIGGER_NAME
455
- });
456
- /* -------------------------------------------------------------------------------------------------
457
- * MenubarSubContent
458
- * -----------------------------------------------------------------------------------------------*/ const $0520064cdfc1bd2d$var$SUB_CONTENT_NAME = 'MenubarSubContent';
459
- const $0520064cdfc1bd2d$export$1b21e255bb3e4f7f = /*#__PURE__*/ $jLgaT$forwardRef((props, forwardedRef)=>{
460
- const { __scopeMenubar: __scopeMenubar , ...subContentProps } = props;
461
- const menuScope = $0520064cdfc1bd2d$var$useMenuScope(__scopeMenubar);
462
- return /*#__PURE__*/ $jLgaT$createElement($jLgaT$SubContent, $jLgaT$babelruntimehelpersesmextends({}, menuScope, {
463
- "data-radix-menubar-content": ""
464
- }, subContentProps, {
378
+ }
379
+ );
380
+ }
381
+ );
382
+ MenubarSubTrigger.displayName = SUB_TRIGGER_NAME;
383
+ var SUB_CONTENT_NAME = "MenubarSubContent";
384
+ var MenubarSubContent = React.forwardRef(
385
+ (props, forwardedRef) => {
386
+ const { __scopeMenubar, ...subContentProps } = props;
387
+ const menuScope = useMenuScope(__scopeMenubar);
388
+ return /* @__PURE__ */ jsx(
389
+ MenuPrimitive.SubContent,
390
+ {
391
+ ...menuScope,
392
+ "data-radix-menubar-content": "",
393
+ ...subContentProps,
465
394
  ref: forwardedRef,
466
395
  style: {
467
- ...props.style,
468
- '--radix-menubar-content-transform-origin': 'var(--radix-popper-transform-origin)',
469
- '--radix-menubar-content-available-width': 'var(--radix-popper-available-width)',
470
- '--radix-menubar-content-available-height': 'var(--radix-popper-available-height)',
471
- '--radix-menubar-trigger-width': 'var(--radix-popper-anchor-width)',
472
- '--radix-menubar-trigger-height': 'var(--radix-popper-anchor-height)'
396
+ ...props.style,
397
+ // re-namespace exposed content custom properties
398
+ ...{
399
+ "--radix-menubar-content-transform-origin": "var(--radix-popper-transform-origin)",
400
+ "--radix-menubar-content-available-width": "var(--radix-popper-available-width)",
401
+ "--radix-menubar-content-available-height": "var(--radix-popper-available-height)",
402
+ "--radix-menubar-trigger-width": "var(--radix-popper-anchor-width)",
403
+ "--radix-menubar-trigger-height": "var(--radix-popper-anchor-height)"
404
+ }
473
405
  }
474
- }));
475
- });
476
- /*#__PURE__*/ Object.assign($0520064cdfc1bd2d$export$1b21e255bb3e4f7f, {
477
- displayName: $0520064cdfc1bd2d$var$SUB_CONTENT_NAME
478
- });
479
- /* -----------------------------------------------------------------------------------------------*/ /**
480
- * Wraps an array around itself at a given start index
481
- * Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`
482
- */ function $0520064cdfc1bd2d$var$wrapArray(array, startIndex) {
483
- return array.map((_, index)=>array[(startIndex + index) % array.length]
406
+ }
484
407
  );
408
+ }
409
+ );
410
+ MenubarSubContent.displayName = SUB_CONTENT_NAME;
411
+ function wrapArray(array, startIndex) {
412
+ return array.map((_, index) => array[(startIndex + index) % array.length]);
485
413
  }
486
- const $0520064cdfc1bd2d$export$be92b6f5f03c0fe9 = $0520064cdfc1bd2d$export$7d4583da7581e674;
487
- const $0520064cdfc1bd2d$export$d9b273488cd8ce6f = $0520064cdfc1bd2d$export$c777b394d551050b;
488
- const $0520064cdfc1bd2d$export$41fb9f06171c75f4 = $0520064cdfc1bd2d$export$df05cd234081ebd5;
489
- const $0520064cdfc1bd2d$export$602eac185826482c = $0520064cdfc1bd2d$export$a98ed304d621e164;
490
- const $0520064cdfc1bd2d$export$7c6e2c02157bb7d2 = $0520064cdfc1bd2d$export$f42a00bc8a46c161;
491
- const $0520064cdfc1bd2d$export$eb2fcfdbd7ba97d4 = $0520064cdfc1bd2d$export$7669e79198e0f2eb;
492
- const $0520064cdfc1bd2d$export$b04be29aa201d4f5 = $0520064cdfc1bd2d$export$39935c5b19a4b4e;
493
- const $0520064cdfc1bd2d$export$6d08773d2e66f8f2 = $0520064cdfc1bd2d$export$92f903c8c91c291c;
494
- const $0520064cdfc1bd2d$export$16ce288f89fa631c = $0520064cdfc1bd2d$export$372384eccd27af53;
495
- const $0520064cdfc1bd2d$export$a98f0dcb43a68a25 = $0520064cdfc1bd2d$export$94dfa2322f330fdb;
496
- const $0520064cdfc1bd2d$export$371ab307eab489c0 = $0520064cdfc1bd2d$export$7d2f467b4a7f68d8;
497
- const $0520064cdfc1bd2d$export$c3468e2714d175fa = $0520064cdfc1bd2d$export$63e15a0e2af5a57;
498
- const $0520064cdfc1bd2d$export$1ff3c3f08ae963c0 = $0520064cdfc1bd2d$export$588aef9e7b5183b5;
499
- const $0520064cdfc1bd2d$export$21b07c8f274aebd5 = $0520064cdfc1bd2d$export$474b9891f5b9e633;
500
- const $0520064cdfc1bd2d$export$d7a01e11500dfb6f = $0520064cdfc1bd2d$export$ed0be551778c493a;
501
- const $0520064cdfc1bd2d$export$2ea8a7a591ac5eac = $0520064cdfc1bd2d$export$1820ea18a1dfed3c;
502
- const $0520064cdfc1bd2d$export$6d4de93b380beddf = $0520064cdfc1bd2d$export$1b21e255bb3e4f7f;
503
-
504
-
505
-
506
-
507
- export {$0520064cdfc1bd2d$export$7a4049d5555b545c as createMenubarScope, $0520064cdfc1bd2d$export$7d4583da7581e674 as Menubar, $0520064cdfc1bd2d$export$c777b394d551050b as MenubarMenu, $0520064cdfc1bd2d$export$df05cd234081ebd5 as MenubarTrigger, $0520064cdfc1bd2d$export$a98ed304d621e164 as MenubarPortal, $0520064cdfc1bd2d$export$f42a00bc8a46c161 as MenubarContent, $0520064cdfc1bd2d$export$7669e79198e0f2eb as MenubarGroup, $0520064cdfc1bd2d$export$39935c5b19a4b4e as MenubarLabel, $0520064cdfc1bd2d$export$92f903c8c91c291c as MenubarItem, $0520064cdfc1bd2d$export$372384eccd27af53 as MenubarCheckboxItem, $0520064cdfc1bd2d$export$94dfa2322f330fdb as MenubarRadioGroup, $0520064cdfc1bd2d$export$7d2f467b4a7f68d8 as MenubarRadioItem, $0520064cdfc1bd2d$export$63e15a0e2af5a57 as MenubarItemIndicator, $0520064cdfc1bd2d$export$588aef9e7b5183b5 as MenubarSeparator, $0520064cdfc1bd2d$export$474b9891f5b9e633 as MenubarArrow, $0520064cdfc1bd2d$export$ed0be551778c493a as MenubarSub, $0520064cdfc1bd2d$export$1820ea18a1dfed3c as MenubarSubTrigger, $0520064cdfc1bd2d$export$1b21e255bb3e4f7f as MenubarSubContent, $0520064cdfc1bd2d$export$be92b6f5f03c0fe9 as Root, $0520064cdfc1bd2d$export$d9b273488cd8ce6f as Menu, $0520064cdfc1bd2d$export$41fb9f06171c75f4 as Trigger, $0520064cdfc1bd2d$export$602eac185826482c as Portal, $0520064cdfc1bd2d$export$7c6e2c02157bb7d2 as Content, $0520064cdfc1bd2d$export$eb2fcfdbd7ba97d4 as Group, $0520064cdfc1bd2d$export$b04be29aa201d4f5 as Label, $0520064cdfc1bd2d$export$6d08773d2e66f8f2 as Item, $0520064cdfc1bd2d$export$16ce288f89fa631c as CheckboxItem, $0520064cdfc1bd2d$export$a98f0dcb43a68a25 as RadioGroup, $0520064cdfc1bd2d$export$371ab307eab489c0 as RadioItem, $0520064cdfc1bd2d$export$c3468e2714d175fa as ItemIndicator, $0520064cdfc1bd2d$export$1ff3c3f08ae963c0 as Separator, $0520064cdfc1bd2d$export$21b07c8f274aebd5 as Arrow, $0520064cdfc1bd2d$export$d7a01e11500dfb6f as Sub, $0520064cdfc1bd2d$export$2ea8a7a591ac5eac as SubTrigger, $0520064cdfc1bd2d$export$6d4de93b380beddf as SubContent};
414
+ var Root3 = Menubar;
415
+ var Menu = MenubarMenu;
416
+ var Trigger = MenubarTrigger;
417
+ var Portal2 = MenubarPortal;
418
+ var Content2 = MenubarContent;
419
+ var Group2 = MenubarGroup;
420
+ var Label2 = MenubarLabel;
421
+ var Item3 = MenubarItem;
422
+ var CheckboxItem2 = MenubarCheckboxItem;
423
+ var RadioGroup2 = MenubarRadioGroup;
424
+ var RadioItem2 = MenubarRadioItem;
425
+ var ItemIndicator2 = MenubarItemIndicator;
426
+ var Separator2 = MenubarSeparator;
427
+ var Arrow2 = MenubarArrow;
428
+ var Sub2 = MenubarSub;
429
+ var SubTrigger2 = MenubarSubTrigger;
430
+ var SubContent2 = MenubarSubContent;
431
+ export {
432
+ Arrow2 as Arrow,
433
+ CheckboxItem2 as CheckboxItem,
434
+ Content2 as Content,
435
+ Group2 as Group,
436
+ Item3 as Item,
437
+ ItemIndicator2 as ItemIndicator,
438
+ Label2 as Label,
439
+ Menu,
440
+ Menubar,
441
+ MenubarArrow,
442
+ MenubarCheckboxItem,
443
+ MenubarContent,
444
+ MenubarGroup,
445
+ MenubarItem,
446
+ MenubarItemIndicator,
447
+ MenubarLabel,
448
+ MenubarMenu,
449
+ MenubarPortal,
450
+ MenubarRadioGroup,
451
+ MenubarRadioItem,
452
+ MenubarSeparator,
453
+ MenubarSub,
454
+ MenubarSubContent,
455
+ MenubarSubTrigger,
456
+ MenubarTrigger,
457
+ Portal2 as Portal,
458
+ RadioGroup2 as RadioGroup,
459
+ RadioItem2 as RadioItem,
460
+ Root3 as Root,
461
+ Separator2 as Separator,
462
+ Sub2 as Sub,
463
+ SubContent2 as SubContent,
464
+ SubTrigger2 as SubTrigger,
465
+ Trigger,
466
+ createMenubarScope
467
+ };
508
468
  //# sourceMappingURL=index.mjs.map