@tamagui/menu 3.0.0-beta.922.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/cjs/Menu.cjs +1 -0
  2. package/dist/cjs/Menu.native.cjs +1 -0
  3. package/dist/cjs/Menu.native.js +1 -0
  4. package/dist/cjs/Menu.native.js.map +1 -1
  5. package/dist/cjs/createNonNativeMenu.cjs +185 -13
  6. package/dist/cjs/createNonNativeMenu.native.cjs +229 -22
  7. package/dist/cjs/createNonNativeMenu.native.js +229 -22
  8. package/dist/cjs/createNonNativeMenu.native.js.map +1 -1
  9. package/dist/esm/Menu.mjs +1 -0
  10. package/dist/esm/Menu.mjs.map +1 -1
  11. package/dist/esm/Menu.native.js +1 -0
  12. package/dist/esm/Menu.native.js.map +1 -1
  13. package/dist/esm/createNonNativeMenu.mjs +185 -13
  14. package/dist/esm/createNonNativeMenu.mjs.map +1 -1
  15. package/dist/esm/createNonNativeMenu.native.js +229 -22
  16. package/dist/esm/createNonNativeMenu.native.js.map +1 -1
  17. package/dist/jsx/Menu.mjs +1 -0
  18. package/dist/jsx/Menu.mjs.map +1 -1
  19. package/dist/jsx/Menu.native.cjs +1 -0
  20. package/dist/jsx/Menu.native.js +1 -0
  21. package/dist/jsx/Menu.native.js.map +1 -1
  22. package/dist/jsx/createNonNativeMenu.mjs +185 -13
  23. package/dist/jsx/createNonNativeMenu.mjs.map +1 -1
  24. package/dist/jsx/createNonNativeMenu.native.cjs +229 -22
  25. package/dist/jsx/createNonNativeMenu.native.js +229 -22
  26. package/dist/jsx/createNonNativeMenu.native.js.map +1 -1
  27. package/package.json +14 -12
  28. package/src/Menu.tsx +1 -0
  29. package/src/createNonNativeMenu.tsx +273 -18
  30. package/src/index.tsx +2 -0
  31. package/types/Menu.d.ts +31 -14
  32. package/types/Menu.d.ts.map +1 -1
  33. package/types/createNonNativeMenu.d.ts +33 -33
  34. package/types/createNonNativeMenu.d.ts.map +1 -1
  35. package/types/index.d.ts +32 -14
  36. package/types/index.d.ts.map +1 -1
@@ -41,17 +41,122 @@ var import_use_controllable_state = require("@tamagui/use-controllable-state");
41
41
  var import_web = require("@tamagui/web");
42
42
  var React = __toESM(require("react"), 1);
43
43
  var import_react = require("react");
44
- function _instanceof(left, right) {
45
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
46
- return !!right[Symbol.hasInstance](left);
47
- } else {
48
- return left instanceof right;
49
- }
50
- }
51
44
  var DROPDOWN_MENU_CONTEXT = "MenuContext";
45
+ var TriggerGroupContext = /* @__PURE__ */ React.createContext(null);
46
+ var MenuTriggerGroup = (0, import_core.createStyledHOC)(import_web.View, function(param, forwardedRef) {
47
+ var { children, dir = "ltr", ...props } = param;
48
+ var entries = React.useRef(/* @__PURE__ */ new Map());
49
+ var active = React.useRef(null);
50
+ var [tabStopId, setTabStopId] = React.useState(null);
51
+ var register = (0, import_web.useEvent)(function(entry) {
52
+ entries.current.set(entry.id, entry);
53
+ if (!entry.disabled) setTabStopId(function(id) {
54
+ return id !== null && id !== void 0 ? id : entry.id;
55
+ });
56
+ return function() {
57
+ entries.current.delete(entry.id);
58
+ if (active.current === entry) active.current = null;
59
+ setTabStopId(function(id) {
60
+ var _find;
61
+ var _find_id;
62
+ return id === entry.id ? (_find_id = (_find = [...entries.current.values()].find(function(item) {
63
+ return !item.disabled;
64
+ })) === null || _find === void 0 ? void 0 : _find.id) !== null && _find_id !== void 0 ? _find_id : null : id;
65
+ });
66
+ };
67
+ });
68
+ var activate = (0, import_web.useEvent)(function(entry) {
69
+ var previous = active.current;
70
+ active.current = entry;
71
+ setTabStopId(entry.id);
72
+ if (previous && previous.openRef !== entry.openRef && previous.openRef.current) {
73
+ previous.onOpenChange(false);
74
+ }
75
+ entry.activate();
76
+ });
77
+ var isOpen = (0, import_web.useEvent)(function() {
78
+ var _active_current;
79
+ return Boolean((_active_current = active.current) === null || _active_current === void 0 ? void 0 : _active_current.openRef.current);
80
+ });
81
+ var isActive = (0, import_web.useEvent)(function(openRef) {
82
+ var _active_current;
83
+ return ((_active_current = active.current) === null || _active_current === void 0 ? void 0 : _active_current.openRef) === openRef;
84
+ });
85
+ var contains = (0, import_web.useEvent)(function(target) {
86
+ return [...entries.current.values()].some(function(entry) {
87
+ var _entry_ref_current;
88
+ return (_entry_ref_current = entry.ref.current) === null || _entry_ref_current === void 0 ? void 0 : _entry_ref_current.contains(target);
89
+ });
90
+ });
91
+ var move = (0, import_web.useEvent)(function(id, key, open) {
92
+ var _next_ref_current_focus, _next_ref_current;
93
+ var ordered = [...entries.current.values()].filter(function(entry) {
94
+ return !entry.disabled;
95
+ }).sort(function(a, b) {
96
+ var first = a.ref.current;
97
+ var second = b.ref.current;
98
+ return first && second && first.compareDocumentPosition(second) & 2 ? 1 : -1;
99
+ });
100
+ var index = ordered.findIndex(function(entry) {
101
+ return entry.id === id;
102
+ });
103
+ if (index === -1) return;
104
+ var step = key === "ArrowRight" === (dir === "ltr") ? 1 : -1;
105
+ var next = ordered[(index + step + ordered.length) % ordered.length];
106
+ (_next_ref_current = next.ref.current) === null || _next_ref_current === void 0 ? void 0 : (_next_ref_current_focus = _next_ref_current.focus) === null || _next_ref_current_focus === void 0 ? void 0 : _next_ref_current_focus.call(_next_ref_current);
107
+ if (open) {
108
+ activate(next);
109
+ next.onOpenChange(true);
110
+ requestAnimationFrame(function() {
111
+ return next.focusContent();
112
+ });
113
+ }
114
+ });
115
+ var onFocus = (0, import_web.useEvent)(function(id) {
116
+ return setTabStopId(id);
117
+ });
118
+ var value = React.useMemo(function() {
119
+ return {
120
+ dir,
121
+ tabStopId,
122
+ register,
123
+ activate,
124
+ isOpen,
125
+ isActive,
126
+ contains,
127
+ move,
128
+ onFocus
129
+ };
130
+ }, [
131
+ dir,
132
+ tabStopId,
133
+ register,
134
+ activate,
135
+ isOpen,
136
+ isActive,
137
+ contains,
138
+ move,
139
+ onFocus
140
+ ]);
141
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TriggerGroupContext.Provider, {
142
+ value,
143
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {
144
+ flexDirection: "row",
145
+ role: "menubar",
146
+ ...props,
147
+ ...import_web.isWeb && { dir },
148
+ ref: forwardedRef,
149
+ children
150
+ })
151
+ });
152
+ });
153
+ MenuTriggerGroup.displayName = "MenuTriggerGroup";
52
154
  function useMenuTriggerSetup(open) {
53
155
  var triggerStateSettersRef = React.useRef(/* @__PURE__ */ new Map());
54
156
  var activeTriggerIdRef = React.useRef(null);
157
+ var triggerGroupsRef = React.useRef(/* @__PURE__ */ new Map());
158
+ var activeGroupRef = React.useRef(null);
159
+ var [activeGroup, setActiveGroup] = React.useState(null);
55
160
  var setActiveTrigger = (0, import_web.useEvent)(function(id) {
56
161
  var prevId = activeTriggerIdRef.current;
57
162
  if (prevId === id) return;
@@ -60,19 +165,26 @@ function useMenuTriggerSetup(open) {
60
165
  (_triggerStateSettersRef_current_get = triggerStateSettersRef.current.get(prevId)) === null || _triggerStateSettersRef_current_get === void 0 ? void 0 : _triggerStateSettersRef_current_get(false);
61
166
  }
62
167
  activeTriggerIdRef.current = id;
168
+ var _triggerGroupsRef_current_get;
169
+ activeGroupRef.current = id ? (_triggerGroupsRef_current_get = triggerGroupsRef.current.get(id)) !== null && _triggerGroupsRef_current_get !== void 0 ? _triggerGroupsRef_current_get : null : null;
170
+ setActiveGroup(activeGroupRef.current);
63
171
  if (id && open) {
64
172
  var _triggerStateSettersRef_current_get1;
65
173
  (_triggerStateSettersRef_current_get1 = triggerStateSettersRef.current.get(id)) === null || _triggerStateSettersRef_current_get1 === void 0 ? void 0 : _triggerStateSettersRef_current_get1(true);
66
174
  }
67
175
  });
68
- var registerTrigger = (0, import_web.useEvent)(function(id, setOpenState) {
176
+ var registerTrigger = (0, import_web.useEvent)(function(id, setOpenState, group) {
177
+ triggerGroupsRef.current.set(id, group);
69
178
  triggerStateSettersRef.current.set(id, setOpenState);
70
179
  setOpenState(activeTriggerIdRef.current === id && open);
71
180
  });
72
181
  var unregisterTrigger = (0, import_web.useEvent)(function(id) {
73
182
  triggerStateSettersRef.current.delete(id);
183
+ triggerGroupsRef.current.delete(id);
74
184
  if (activeTriggerIdRef.current === id) {
75
185
  activeTriggerIdRef.current = null;
186
+ activeGroupRef.current = null;
187
+ setActiveGroup(null);
76
188
  }
77
189
  });
78
190
  React.useEffect(function() {
@@ -89,7 +201,10 @@ function useMenuTriggerSetup(open) {
89
201
  return {
90
202
  setActiveTrigger,
91
203
  registerTrigger,
92
- unregisterTrigger
204
+ unregisterTrigger,
205
+ activeTriggerIdRef,
206
+ activeGroupRef,
207
+ activeGroup
93
208
  };
94
209
  }
95
210
  function createNonNativeMenu() {
@@ -98,6 +213,7 @@ function createNonNativeMenu() {
98
213
  var { Provider: MenuProvider, useStyledContext: useMenuContext } = (0, import_web.createStyledContext)();
99
214
  var MenuComp = function(props) {
100
215
  var { scope, children, dir, open: openProp, defaultOpen, onOpenChange, modal = true, ...rest } = props;
216
+ var outerGroup = React.useContext(TriggerGroupContext);
101
217
  var triggerRef = React.useRef(null);
102
218
  var [open = false, setOpen] = (0, import_use_controllable_state.useControllableState)({
103
219
  prop: openProp,
@@ -106,7 +222,8 @@ function createNonNativeMenu() {
106
222
  });
107
223
  var openRef = React.useRef(open);
108
224
  openRef.current = open;
109
- var { setActiveTrigger, registerTrigger, unregisterTrigger } = useMenuTriggerSetup(open);
225
+ var { setActiveTrigger, registerTrigger, unregisterTrigger, activeTriggerIdRef, activeGroupRef, activeGroup } = useMenuTriggerSetup(open);
226
+ var effectiveModal = outerGroup || activeGroup ? false : modal;
110
227
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {
111
228
  scope,
112
229
  triggerId: (0, import_react.useId)(),
@@ -121,16 +238,18 @@ function createNonNativeMenu() {
121
238
  return !prevOpen;
122
239
  });
123
240
  }, [setOpen]),
124
- modal,
241
+ modal: effectiveModal,
125
242
  setActiveTrigger,
126
243
  registerTrigger,
127
244
  unregisterTrigger,
245
+ activeTriggerIdRef,
246
+ activeGroupRef,
128
247
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu, {
129
248
  scope: scope || DROPDOWN_MENU_CONTEXT,
130
249
  open,
131
250
  onOpenChange: setOpen,
132
- dir,
133
- modal,
251
+ dir: dir !== null && dir !== void 0 ? dir : outerGroup === null || outerGroup === void 0 ? void 0 : outerGroup.dir,
252
+ modal: effectiveModal,
134
253
  ...rest,
135
254
  children
136
255
  })
@@ -142,6 +261,7 @@ function createNonNativeMenu() {
142
261
  var MenuTrigger = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {
143
262
  var { scope, asChild, children, disabled = false, onKeydown, onKeyDown = onKeydown, ...triggerProps } = props;
144
263
  var context = useMenuContext(scope);
264
+ var group = React.useContext(TriggerGroupContext);
145
265
  var popperCtx = (0, import_popper.usePopperContextSlow)(scope || DROPDOWN_MENU_CONTEXT);
146
266
  var Comp = asChild ? import_web.Slot : import_web.View;
147
267
  var isTouchDevice = (0, import_web.useIsTouchDevice)();
@@ -150,21 +270,22 @@ function createNonNativeMenu() {
150
270
  var [triggerOpen, setTriggerOpen] = React.useState(false);
151
271
  var { registerTrigger, unregisterTrigger } = context;
152
272
  React.useEffect(function() {
153
- registerTrigger(triggerId, setTriggerOpen);
273
+ registerTrigger(triggerId, setTriggerOpen, group);
154
274
  return function() {
155
275
  return unregisterTrigger(triggerId);
156
276
  };
157
277
  }, [
158
278
  registerTrigger,
159
279
  unregisterTrigger,
160
- triggerId
280
+ triggerId,
281
+ group === null || group === void 0 ? void 0 : group.register
161
282
  ]);
162
283
  var activateSelf = React.useCallback(function() {
163
284
  context.setActiveTrigger(triggerId);
164
285
  var el = triggerElRef.current;
165
286
  if (el) {
166
287
  context.triggerRef.current = el;
167
- if (_instanceof(el, HTMLElement)) {
288
+ if (el instanceof HTMLElement) {
168
289
  var _popperCtx_refs;
169
290
  (_popperCtx_refs = popperCtx.refs) === null || _popperCtx_refs === void 0 ? void 0 : _popperCtx_refs.setReference(el);
170
291
  requestAnimationFrame(function() {
@@ -178,13 +299,44 @@ function createNonNativeMenu() {
178
299
  triggerId,
179
300
  popperCtx
180
301
  ]);
302
+ var activate = (0, import_web.useEvent)(activateSelf);
303
+ var focusContent = (0, import_web.useEvent)(function() {
304
+ var _document_getElementById_querySelector, _document_getElementById;
305
+ (_document_getElementById = document.getElementById(context.contentId)) === null || _document_getElementById === void 0 ? void 0 : (_document_getElementById_querySelector = _document_getElementById.querySelector("[role^=\"menuitem\"]:not([data-disabled])")) === null || _document_getElementById_querySelector === void 0 ? void 0 : _document_getElementById_querySelector.focus();
306
+ });
307
+ var entry = React.useRef(null);
308
+ if (!entry.current) {
309
+ entry.current = {
310
+ id: triggerId,
311
+ ref: triggerElRef,
312
+ openRef: context.openRef,
313
+ disabled,
314
+ activate,
315
+ focusContent,
316
+ onOpenChange: context.onOpenChange
317
+ };
318
+ }
319
+ entry.current.disabled = disabled;
320
+ entry.current.onOpenChange = context.onOpenChange;
321
+ var registerGroup = group === null || group === void 0 ? void 0 : group.register;
322
+ React.useEffect(function() {
323
+ return registerGroup === null || registerGroup === void 0 ? void 0 : registerGroup(entry.current);
324
+ }, [registerGroup]);
325
+ var openSelf = function() {
326
+ if (group) group.activate(entry.current);
327
+ else activateSelf();
328
+ };
329
+ var shouldRejectHover = function() {
330
+ return disabled || context.openRef.current && context.activeTriggerIdRef.current !== triggerId && !(group === null || group === void 0 ? void 0 : group.isActive(context.openRef));
331
+ };
181
332
  var pressEvent = import_web.isWeb ? isTouchDevice ? "onClick" : "onPointerDown" : "onPress";
182
333
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuTriggerFrame, {
183
334
  asChild: true,
184
335
  className: `is_${TRIGGER_NAME}`,
185
336
  scope: scope || DROPDOWN_MENU_CONTEXT,
186
337
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, {
187
- role: "button",
338
+ role: group ? "menuitem" : "button",
339
+ tabIndex: group ? group.tabStopId === triggerId ? 0 : -1 : void 0,
188
340
  id: context.triggerId,
189
341
  "aria-haspopup": "menu",
190
342
  "aria-expanded": triggerOpen,
@@ -192,15 +344,41 @@ function createNonNativeMenu() {
192
344
  "data-state": triggerOpen ? "open" : "closed",
193
345
  "data-disabled": disabled ? "" : void 0,
194
346
  "aria-disabled": disabled || void 0,
195
- ref: (0, import_web.composeRefs)(forwardedRef, context.triggerRef, triggerElRef),
347
+ ref: (0, import_web.composeRefs)(forwardedRef, group ? void 0 : context.triggerRef, triggerElRef),
196
348
  ...triggerProps,
349
+ onFocus: (0, import_web.composeEventHandlers)(props.onFocus, function() {
350
+ if (!disabled) group === null || group === void 0 ? void 0 : group.onFocus(triggerId);
351
+ }),
352
+ onPointerEnter: function(event) {
353
+ var _props_onPointerEnter;
354
+ if (shouldRejectHover()) {
355
+ event.preventDefault();
356
+ return;
357
+ }
358
+ (_props_onPointerEnter = props.onPointerEnter) === null || _props_onPointerEnter === void 0 ? void 0 : _props_onPointerEnter.call(props, event);
359
+ },
360
+ onMouseEnter: function(event) {
361
+ var _composeEventHandlers;
362
+ if (shouldRejectHover()) {
363
+ event.preventDefault();
364
+ return;
365
+ }
366
+ (_composeEventHandlers = (0, import_web.composeEventHandlers)(props.onMouseEnter, function() {
367
+ if ((group === null || group === void 0 ? void 0 : group.isOpen()) && !triggerOpen) {
368
+ var _triggerElRef_current_focus, _triggerElRef_current;
369
+ (_triggerElRef_current = triggerElRef.current) === null || _triggerElRef_current === void 0 ? void 0 : (_triggerElRef_current_focus = _triggerElRef_current.focus) === null || _triggerElRef_current_focus === void 0 ? void 0 : _triggerElRef_current_focus.call(_triggerElRef_current);
370
+ openSelf();
371
+ context.onOpenChange(true);
372
+ }
373
+ })) === null || _composeEventHandlers === void 0 ? void 0 : _composeEventHandlers(event);
374
+ },
197
375
  [pressEvent]: (0, import_web.composeEventHandlers)(props[pressEvent], function(event) {
198
376
  if (!disabled) {
199
- if (import_web.isWeb && _instanceof(event, PointerEvent) && event.button !== 0 && event.ctrlKey === true) return;
377
+ if (import_web.isWeb && event instanceof PointerEvent && event.button !== 0 && event.ctrlKey === true) return;
200
378
  if (context.openRef.current) {
201
379
  context.setActiveTrigger(null);
202
380
  } else {
203
- activateSelf();
381
+ openSelf();
204
382
  }
205
383
  context.onOpenToggle();
206
384
  if (!context.openRef.current) event.preventDefault();
@@ -208,16 +386,21 @@ function createNonNativeMenu() {
208
386
  }),
209
387
  ...import_web.isWeb && { onKeyDown: (0, import_web.composeEventHandlers)(onKeyDown, function(event) {
210
388
  if (disabled) return;
389
+ if (group && ["ArrowLeft", "ArrowRight"].includes(event.key)) {
390
+ group.move(triggerId, event.key, group.isOpen());
391
+ event.preventDefault();
392
+ return;
393
+ }
211
394
  if (["Enter", " "].includes(event.key)) {
212
395
  if (context.openRef.current) {
213
396
  context.setActiveTrigger(null);
214
397
  } else {
215
- activateSelf();
398
+ openSelf();
216
399
  }
217
400
  context.onOpenToggle();
218
401
  }
219
402
  if (event.key === "ArrowDown") {
220
- activateSelf();
403
+ openSelf();
221
404
  context.onOpenChange(true);
222
405
  }
223
406
  if ([
@@ -257,7 +440,24 @@ function createNonNativeMenu() {
257
440
  scope: scope || DROPDOWN_MENU_CONTEXT,
258
441
  ...contentProps,
259
442
  ref: forwardedRef,
443
+ onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {
444
+ var group = context.activeGroupRef.current;
445
+ if (!group || !["ArrowLeft", "ArrowRight"].includes(event.key)) return;
446
+ var target = event.target;
447
+ if (target.closest("[data-tamagui-menu-content]") !== event.currentTarget) return;
448
+ if (target.closest("[aria-haspopup=\"menu\"]") && event.key === (group.dir === "rtl" ? "ArrowLeft" : "ArrowRight")) return;
449
+ var id = context.activeTriggerIdRef.current;
450
+ if (id) {
451
+ group.move(id, event.key, true);
452
+ event.preventDefault();
453
+ }
454
+ }),
260
455
  onCloseAutoFocus: (0, import_web.composeEventHandlers)(props.onCloseAutoFocus, function(event) {
456
+ var group = context.activeGroupRef.current;
457
+ if (group && !group.isActive(context.openRef)) {
458
+ event.cancel();
459
+ return;
460
+ }
261
461
  if (!hasInteractedOutsideRef.current) {
262
462
  requestAnimationFrame(function() {
263
463
  var activeEl = document.activeElement;
@@ -271,6 +471,12 @@ function createNonNativeMenu() {
271
471
  event.cancel();
272
472
  }),
273
473
  onInteractOutside: (0, import_web.composeEventHandlers)(props.onInteractOutside, function(event) {
474
+ var _event_event, _context_activeGroupRef_current;
475
+ var _event_event_target;
476
+ if ((_context_activeGroupRef_current = context.activeGroupRef.current) === null || _context_activeGroupRef_current === void 0 ? void 0 : _context_activeGroupRef_current.contains((_event_event_target = (_event_event = event.event) === null || _event_event === void 0 ? void 0 : _event_event.target) !== null && _event_event_target !== void 0 ? _event_event_target : null)) {
477
+ event.cancel();
478
+ return;
479
+ }
274
480
  if (event.interaction !== "pointer" || !event.event) return;
275
481
  var originalEvent = event.event;
276
482
  var ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;
@@ -351,6 +557,7 @@ function createNonNativeMenu() {
351
557
  return (0, import_web.withStaticProperties)(MenuComp, {
352
558
  Root: MenuComp,
353
559
  Trigger: MenuTrigger,
560
+ TriggerGroup: MenuTriggerGroup,
354
561
  Portal: MenuPortal,
355
562
  Content: MenuContent,
356
563
  Group,
@@ -1 +1 @@
1
- {"version":3,"file":"createNonNativeMenu.native.js","names":[],"sources":["cjs/createNonNativeMenu.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createNonNativeMenu_exports = {};\n__export(createNonNativeMenu_exports, {\n DROPDOWN_MENU_CONTEXT: () => DROPDOWN_MENU_CONTEXT,\n createNonNativeMenu: () => createNonNativeMenu\n});\nmodule.exports = __toCommonJS(createNonNativeMenu_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_core = require(\"@tamagui/core\");\nvar import_create_menu = require(\"@tamagui/create-menu\");\nvar import_popper = require(\"@tamagui/popper\");\nvar import_scroll_view = require(\"@tamagui/scroll-view\");\nvar import_use_controllable_state = require(\"@tamagui/use-controllable-state\");\nvar import_web = require(\"@tamagui/web\");\nvar React = __toESM(require(\"react\"), 1);\nvar import_react = require(\"react\");\nfunction _instanceof(left, right) {\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nvar DROPDOWN_MENU_CONTEXT = \"MenuContext\";\nfunction useMenuTriggerSetup(open) {\n var triggerStateSettersRef = React.useRef(/* @__PURE__ */ new Map());\n var activeTriggerIdRef = React.useRef(null);\n var setActiveTrigger = (0, import_web.useEvent)(function(id) {\n var prevId = activeTriggerIdRef.current;\n if (prevId === id) return;\n if (prevId) {\n var _triggerStateSettersRef_current_get;\n (_triggerStateSettersRef_current_get = triggerStateSettersRef.current.get(prevId)) === null || _triggerStateSettersRef_current_get === void 0 ? void 0 : _triggerStateSettersRef_current_get(false);\n }\n activeTriggerIdRef.current = id;\n if (id && open) {\n var _triggerStateSettersRef_current_get1;\n (_triggerStateSettersRef_current_get1 = triggerStateSettersRef.current.get(id)) === null || _triggerStateSettersRef_current_get1 === void 0 ? void 0 : _triggerStateSettersRef_current_get1(true);\n }\n });\n var registerTrigger = (0, import_web.useEvent)(function(id, setOpenState) {\n triggerStateSettersRef.current.set(id, setOpenState);\n setOpenState(activeTriggerIdRef.current === id && open);\n });\n var unregisterTrigger = (0, import_web.useEvent)(function(id) {\n triggerStateSettersRef.current.delete(id);\n if (activeTriggerIdRef.current === id) {\n activeTriggerIdRef.current = null;\n }\n });\n React.useEffect(function() {\n if (!open) {\n setActiveTrigger(null);\n return;\n }\n var activeId = activeTriggerIdRef.current;\n if (activeId) {\n var _triggerStateSettersRef_current_get;\n (_triggerStateSettersRef_current_get = triggerStateSettersRef.current.get(activeId)) === null || _triggerStateSettersRef_current_get === void 0 ? void 0 : _triggerStateSettersRef_current_get(true);\n }\n }, [\n open,\n setActiveTrigger\n ]);\n return {\n setActiveTrigger,\n registerTrigger,\n unregisterTrigger\n };\n}\nfunction createNonNativeMenu() {\n var { Menu } = (0, import_create_menu.createBaseMenu)();\n var DROPDOWN_MENU_NAME = \"Menu\";\n var { Provider: MenuProvider, useStyledContext: useMenuContext } = (0, import_web.createStyledContext)();\n var MenuComp = function(props) {\n var { scope, children, dir, open: openProp, defaultOpen, onOpenChange, modal = true, ...rest } = props;\n var triggerRef = React.useRef(null);\n var [open = false, setOpen] = (0, import_use_controllable_state.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n var openRef = React.useRef(open);\n openRef.current = open;\n var { setActiveTrigger, registerTrigger, unregisterTrigger } = useMenuTriggerSetup(open);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n triggerId: (0, import_react.useId)(),\n triggerRef,\n contentId: (0, import_react.useId)(),\n openRef,\n onOpenChange: React.useCallback(function(nextOpen) {\n return setOpen(nextOpen);\n }, [\n setOpen\n ]),\n onOpenToggle: React.useCallback(function() {\n return setOpen(function(prevOpen) {\n return !prevOpen;\n });\n }, [\n setOpen\n ]),\n modal,\n setActiveTrigger,\n registerTrigger,\n unregisterTrigger,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n open,\n onOpenChange: setOpen,\n dir,\n modal,\n ...rest,\n children\n })\n });\n };\n MenuComp.displayName = DROPDOWN_MENU_NAME;\n var TRIGGER_NAME = \"MenuTrigger\";\n var MenuTriggerFrame = Menu.Anchor;\n var MenuTrigger = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { scope, asChild, children, disabled = false, onKeydown, onKeyDown = onKeydown, ...triggerProps } = props;\n var context = useMenuContext(scope);\n var popperCtx = (0, import_popper.usePopperContextSlow)(scope || DROPDOWN_MENU_CONTEXT);\n var Comp = asChild ? import_web.Slot : import_web.View;\n var isTouchDevice = (0, import_web.useIsTouchDevice)();\n var triggerElRef = React.useRef(null);\n var triggerId = React.useId();\n var [triggerOpen, setTriggerOpen] = React.useState(false);\n var { registerTrigger, unregisterTrigger } = context;\n React.useEffect(function() {\n registerTrigger(triggerId, setTriggerOpen);\n return function() {\n return unregisterTrigger(triggerId);\n };\n }, [\n registerTrigger,\n unregisterTrigger,\n triggerId\n ]);\n var activateSelf = React.useCallback(function() {\n context.setActiveTrigger(triggerId);\n var el = triggerElRef.current;\n if (el) {\n context.triggerRef.current = el;\n if (_instanceof(el, HTMLElement)) {\n var _popperCtx_refs;\n (_popperCtx_refs = popperCtx.refs) === null || _popperCtx_refs === void 0 ? void 0 : _popperCtx_refs.setReference(el);\n requestAnimationFrame(function() {\n var _popperCtx_update;\n return (_popperCtx_update = popperCtx.update) === null || _popperCtx_update === void 0 ? void 0 : _popperCtx_update.call(popperCtx);\n });\n }\n }\n }, [\n context,\n triggerId,\n popperCtx\n ]);\n var pressEvent = import_web.isWeb ? isTouchDevice ? \"onClick\" : \"onPointerDown\" : \"onPress\";\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuTriggerFrame, {\n asChild: true,\n className: `is_${TRIGGER_NAME}`,\n scope: scope || DROPDOWN_MENU_CONTEXT,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, {\n role: \"button\",\n id: context.triggerId,\n \"aria-haspopup\": \"menu\",\n \"aria-expanded\": triggerOpen,\n \"aria-controls\": triggerOpen ? context.contentId : void 0,\n \"data-state\": triggerOpen ? \"open\" : \"closed\",\n \"data-disabled\": disabled ? \"\" : void 0,\n \"aria-disabled\": disabled || void 0,\n ref: (0, import_web.composeRefs)(forwardedRef, context.triggerRef, triggerElRef),\n // caller props come first: the composed handlers below already call\n // the caller's own handler, so spreading them after would let a\n // caller's onPointerDown/onClick/onPress or onKeyDown replace the\n // one that opens the menu. the press prop stays read off `props`\n // because which of the three opens the menu is decided at runtime.\n ...triggerProps,\n [pressEvent]: (0, import_web.composeEventHandlers)(\n //@ts-ignore\n props[pressEvent],\n function(event) {\n if (!disabled) {\n if (import_web.isWeb && _instanceof(event, PointerEvent) && event.button !== 0 && event.ctrlKey === true) return;\n if (context.openRef.current) {\n context.setActiveTrigger(null);\n } else {\n activateSelf();\n }\n context.onOpenToggle();\n if (!context.openRef.current) event.preventDefault();\n }\n }\n ),\n ...import_web.isWeb && {\n onKeyDown: (0, import_web.composeEventHandlers)(onKeyDown, function(event) {\n if (disabled) return;\n if ([\n \"Enter\",\n \" \"\n ].includes(event.key)) {\n if (context.openRef.current) {\n context.setActiveTrigger(null);\n } else {\n activateSelf();\n }\n context.onOpenToggle();\n }\n if (event.key === \"ArrowDown\") {\n activateSelf();\n context.onOpenChange(true);\n }\n if ([\n \"Enter\",\n \" \",\n \"ArrowDown\"\n ].includes(event.key)) event.preventDefault();\n })\n },\n children\n })\n });\n });\n MenuTrigger.displayName = TRIGGER_NAME;\n var PORTAL_NAME = \"MenuPortal\";\n var MenuPortal = function(props) {\n var { scope, children, ...portalProps } = props;\n var context = import_web.isAndroid ? useMenuContext(scope) : null;\n var content = import_web.isAndroid ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n ...context,\n children\n }) : children;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Portal, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n ...portalProps,\n children: content\n });\n };\n MenuPortal.displayName = PORTAL_NAME;\n var CONTENT_NAME = \"MenuContent\";\n var MenuContent = (0, import_core.createStyledHOC)(Menu.Content, function(props, forwardedRef) {\n var { scope, ...contentProps } = props;\n var context = useMenuContext(scope);\n var hasInteractedOutsideRef = React.useRef(false);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Content, {\n id: context.contentId,\n \"aria-labelledby\": context.triggerId,\n scope: scope || DROPDOWN_MENU_CONTEXT,\n ...contentProps,\n ref: forwardedRef,\n onCloseAutoFocus: (0, import_web.composeEventHandlers)(props.onCloseAutoFocus, function(event) {\n if (!hasInteractedOutsideRef.current) {\n requestAnimationFrame(function() {\n var activeEl = document.activeElement;\n if (!activeEl || activeEl === document.body) {\n var _context_triggerRef_current;\n (_context_triggerRef_current = context.triggerRef.current) === null || _context_triggerRef_current === void 0 ? void 0 : _context_triggerRef_current.focus();\n }\n });\n }\n hasInteractedOutsideRef.current = false;\n event.cancel();\n }),\n onInteractOutside: (0, import_web.composeEventHandlers)(props.onInteractOutside, function(event) {\n if (event.interaction !== \"pointer\" || !event.event) return;\n var originalEvent = event.event;\n var ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n var isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n if (!context.modal || isRightClick) hasInteractedOutsideRef.current = true;\n }),\n style: import_web.isWeb ? {\n ...props.style,\n ...{\n \"--tamagui-menu-content-transform-origin\": \"var(--tamagui-popper-transform-origin)\",\n \"--tamagui-menu-content-available-width\": \"var(--tamagui-popper-available-width)\",\n \"--tamagui-menu-content-available-height\": \"var(--tamagui-popper-available-height)\",\n \"--tamagui-menu-trigger-width\": \"var(--tamagui-popper-anchor-width)\",\n \"--tamagui-menu-trigger-height\": \"var(--tamagui-popper-anchor-height)\"\n }\n } : props.style\n });\n });\n MenuContent.displayName = CONTENT_NAME;\n var DROPDOWN_MENU_SUB_NAME = \"MenuSub\";\n var MenuSub = function(props) {\n var { scope, children, open: openProp, onOpenChange, defaultOpen, ...rest } = props;\n var [open = false, setOpen] = (0, import_use_controllable_state.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Sub, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n open,\n onOpenChange: setOpen,\n ...rest,\n children\n });\n };\n MenuSub.displayName = DROPDOWN_MENU_SUB_NAME;\n var SUB_CONTENT_NAME = \"MenuSubContent\";\n var MenuSubContent = (0, import_core.createStyledHOC)(Menu.SubContent, function(props, forwardedRef) {\n var { scope, ...subContentProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.SubContent, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n ...subContentProps,\n ref: forwardedRef,\n style: import_web.isWeb ? {\n ...props.style,\n ...{\n \"--tamagui-menu-content-transform-origin\": \"var(--tamagui-popper-transform-origin)\",\n \"--tamagui-menu-content-available-width\": \"var(--tamagui-popper-available-width)\",\n \"--tamagui-menu-content-available-height\": \"var(--tamagui-popper-available-height)\",\n \"--tamagui-menu-trigger-width\": \"var(--tamagui-popper-anchor-width)\",\n \"--tamagui-menu-trigger-height\": \"var(--tamagui-popper-anchor-height)\"\n }\n } : null\n });\n });\n MenuSubContent.displayName = SUB_CONTENT_NAME;\n var MenuScrollView = (0, import_web.styled)(import_scroll_view.ScrollView, {\n flexShrink: 1,\n alignSelf: \"stretch\",\n maxHeight: \"web:var(--tamagui-menu-content-available-height)\",\n showsHorizontalScrollIndicator: false,\n showsVerticalScrollIndicator: false\n });\n var Group = Menu.Group;\n var Label = Menu.Label;\n var Item = Menu.Item;\n var CheckboxItem = Menu.CheckboxItem;\n var RadioGroup = Menu.RadioGroup;\n var RadioItem = Menu.RadioItem;\n var ItemIndicator = Menu.ItemIndicator;\n var Separator = Menu.Separator;\n var Arrow = Menu.Arrow;\n var SubTrigger = Menu.SubTrigger;\n var ItemTitle = Menu.ItemTitle;\n var ItemSubtitle = Menu.ItemSubtitle;\n var ItemImage = Menu.ItemImage;\n var ItemIcon = Menu.ItemIcon;\n return (0, import_web.withStaticProperties)(MenuComp, {\n Root: MenuComp,\n Trigger: MenuTrigger,\n Portal: MenuPortal,\n Content: MenuContent,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub: MenuSub,\n SubTrigger,\n SubContent: MenuSubContent,\n ItemTitle,\n ItemSubtitle,\n ItemImage,\n ItemIcon,\n ScrollView: MenuScrollView\n });\n}\n//# sourceMappingURL=createNonNativeMenu.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"createNonNativeMenu.native.js","names":[],"sources":["cjs/createNonNativeMenu.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createNonNativeMenu_exports = {};\n__export(createNonNativeMenu_exports, {\n DROPDOWN_MENU_CONTEXT: () => DROPDOWN_MENU_CONTEXT,\n createNonNativeMenu: () => createNonNativeMenu\n});\nmodule.exports = __toCommonJS(createNonNativeMenu_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_core = require(\"@tamagui/core\");\nvar import_create_menu = require(\"@tamagui/create-menu\");\nvar import_popper = require(\"@tamagui/popper\");\nvar import_scroll_view = require(\"@tamagui/scroll-view\");\nvar import_use_controllable_state = require(\"@tamagui/use-controllable-state\");\nvar import_web = require(\"@tamagui/web\");\nvar React = __toESM(require(\"react\"), 1);\nvar import_react = require(\"react\");\nvar DROPDOWN_MENU_CONTEXT = \"MenuContext\";\nvar TriggerGroupContext = /* @__PURE__ */ React.createContext(null);\nvar MenuTriggerGroup = (0, import_core.createStyledHOC)(import_web.View, function(param, forwardedRef) {\n var { children, dir = \"ltr\", ...props } = param;\n var entries = React.useRef(/* @__PURE__ */ new Map());\n var active = React.useRef(null);\n var [tabStopId, setTabStopId] = React.useState(null);\n var register = (0, import_web.useEvent)(function(entry) {\n entries.current.set(entry.id, entry);\n if (!entry.disabled) setTabStopId(function(id) {\n return id !== null && id !== void 0 ? id : entry.id;\n });\n return function() {\n entries.current.delete(entry.id);\n if (active.current === entry) active.current = null;\n setTabStopId(function(id) {\n var _find;\n var _find_id;\n return id === entry.id ? (_find_id = (_find = [\n ...entries.current.values()\n ].find(function(item) {\n return !item.disabled;\n })) === null || _find === void 0 ? void 0 : _find.id) !== null && _find_id !== void 0 ? _find_id : null : id;\n });\n };\n });\n var activate = (0, import_web.useEvent)(function(entry) {\n var previous = active.current;\n active.current = entry;\n setTabStopId(entry.id);\n if (previous && previous.openRef !== entry.openRef && previous.openRef.current) {\n previous.onOpenChange(false);\n }\n entry.activate();\n });\n var isOpen = (0, import_web.useEvent)(function() {\n var _active_current;\n return Boolean((_active_current = active.current) === null || _active_current === void 0 ? void 0 : _active_current.openRef.current);\n });\n var isActive = (0, import_web.useEvent)(function(openRef) {\n var _active_current;\n return ((_active_current = active.current) === null || _active_current === void 0 ? void 0 : _active_current.openRef) === openRef;\n });\n var contains = (0, import_web.useEvent)(function(target) {\n return [\n ...entries.current.values()\n ].some(function(entry) {\n var _entry_ref_current;\n return (_entry_ref_current = entry.ref.current) === null || _entry_ref_current === void 0 ? void 0 : _entry_ref_current.contains(target);\n });\n });\n var move = (0, import_web.useEvent)(function(id, key, open) {\n var _next_ref_current_focus, _next_ref_current;\n var ordered = [\n ...entries.current.values()\n ].filter(function(entry) {\n return !entry.disabled;\n }).sort(function(a, b) {\n var first = a.ref.current;\n var second = b.ref.current;\n return first && second && first.compareDocumentPosition(second) & 2 ? 1 : -1;\n });\n var index = ordered.findIndex(function(entry) {\n return entry.id === id;\n });\n if (index === -1) return;\n var step = key === \"ArrowRight\" === (dir === \"ltr\") ? 1 : -1;\n var next = ordered[(index + step + ordered.length) % ordered.length];\n (_next_ref_current = next.ref.current) === null || _next_ref_current === void 0 ? void 0 : (_next_ref_current_focus = _next_ref_current.focus) === null || _next_ref_current_focus === void 0 ? void 0 : _next_ref_current_focus.call(_next_ref_current);\n if (open) {\n activate(next);\n next.onOpenChange(true);\n requestAnimationFrame(function() {\n return next.focusContent();\n });\n }\n });\n var onFocus = (0, import_web.useEvent)(function(id) {\n return setTabStopId(id);\n });\n var value = React.useMemo(function() {\n return {\n dir,\n tabStopId,\n register,\n activate,\n isOpen,\n isActive,\n contains,\n move,\n onFocus\n };\n }, [\n dir,\n tabStopId,\n register,\n activate,\n isOpen,\n isActive,\n contains,\n move,\n onFocus\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TriggerGroupContext.Provider, {\n value,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n flexDirection: \"row\",\n role: \"menubar\",\n ...props,\n ...import_web.isWeb && {\n dir\n },\n ref: forwardedRef,\n children\n })\n });\n});\nMenuTriggerGroup.displayName = \"MenuTriggerGroup\";\nfunction useMenuTriggerSetup(open) {\n var triggerStateSettersRef = React.useRef(/* @__PURE__ */ new Map());\n var activeTriggerIdRef = React.useRef(null);\n var triggerGroupsRef = React.useRef(/* @__PURE__ */ new Map());\n var activeGroupRef = React.useRef(null);\n var [activeGroup, setActiveGroup] = React.useState(null);\n var setActiveTrigger = (0, import_web.useEvent)(function(id) {\n var prevId = activeTriggerIdRef.current;\n if (prevId === id) return;\n if (prevId) {\n var _triggerStateSettersRef_current_get;\n (_triggerStateSettersRef_current_get = triggerStateSettersRef.current.get(prevId)) === null || _triggerStateSettersRef_current_get === void 0 ? void 0 : _triggerStateSettersRef_current_get(false);\n }\n activeTriggerIdRef.current = id;\n var _triggerGroupsRef_current_get;\n activeGroupRef.current = id ? (_triggerGroupsRef_current_get = triggerGroupsRef.current.get(id)) !== null && _triggerGroupsRef_current_get !== void 0 ? _triggerGroupsRef_current_get : null : null;\n setActiveGroup(activeGroupRef.current);\n if (id && open) {\n var _triggerStateSettersRef_current_get1;\n (_triggerStateSettersRef_current_get1 = triggerStateSettersRef.current.get(id)) === null || _triggerStateSettersRef_current_get1 === void 0 ? void 0 : _triggerStateSettersRef_current_get1(true);\n }\n });\n var registerTrigger = (0, import_web.useEvent)(function(id, setOpenState, group) {\n triggerGroupsRef.current.set(id, group);\n triggerStateSettersRef.current.set(id, setOpenState);\n setOpenState(activeTriggerIdRef.current === id && open);\n });\n var unregisterTrigger = (0, import_web.useEvent)(function(id) {\n triggerStateSettersRef.current.delete(id);\n triggerGroupsRef.current.delete(id);\n if (activeTriggerIdRef.current === id) {\n activeTriggerIdRef.current = null;\n activeGroupRef.current = null;\n setActiveGroup(null);\n }\n });\n React.useEffect(function() {\n if (!open) {\n setActiveTrigger(null);\n return;\n }\n var activeId = activeTriggerIdRef.current;\n if (activeId) {\n var _triggerStateSettersRef_current_get;\n (_triggerStateSettersRef_current_get = triggerStateSettersRef.current.get(activeId)) === null || _triggerStateSettersRef_current_get === void 0 ? void 0 : _triggerStateSettersRef_current_get(true);\n }\n }, [\n open,\n setActiveTrigger\n ]);\n return {\n setActiveTrigger,\n registerTrigger,\n unregisterTrigger,\n activeTriggerIdRef,\n activeGroupRef,\n activeGroup\n };\n}\nfunction createNonNativeMenu() {\n var { Menu } = (0, import_create_menu.createBaseMenu)();\n var DROPDOWN_MENU_NAME = \"Menu\";\n var { Provider: MenuProvider, useStyledContext: useMenuContext } = (0, import_web.createStyledContext)();\n var MenuComp = function(props) {\n var { scope, children, dir, open: openProp, defaultOpen, onOpenChange, modal = true, ...rest } = props;\n var outerGroup = React.useContext(TriggerGroupContext);\n var triggerRef = React.useRef(null);\n var [open = false, setOpen] = (0, import_use_controllable_state.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n var openRef = React.useRef(open);\n openRef.current = open;\n var { setActiveTrigger, registerTrigger, unregisterTrigger, activeTriggerIdRef, activeGroupRef, activeGroup } = useMenuTriggerSetup(open);\n var effectiveModal = outerGroup || activeGroup ? false : modal;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n triggerId: (0, import_react.useId)(),\n triggerRef,\n contentId: (0, import_react.useId)(),\n openRef,\n onOpenChange: React.useCallback(function(nextOpen) {\n return setOpen(nextOpen);\n }, [\n setOpen\n ]),\n onOpenToggle: React.useCallback(function() {\n return setOpen(function(prevOpen) {\n return !prevOpen;\n });\n }, [\n setOpen\n ]),\n modal: effectiveModal,\n setActiveTrigger,\n registerTrigger,\n unregisterTrigger,\n activeTriggerIdRef,\n activeGroupRef,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n open,\n onOpenChange: setOpen,\n dir: dir !== null && dir !== void 0 ? dir : outerGroup === null || outerGroup === void 0 ? void 0 : outerGroup.dir,\n modal: effectiveModal,\n ...rest,\n children\n })\n });\n };\n MenuComp.displayName = DROPDOWN_MENU_NAME;\n var TRIGGER_NAME = \"MenuTrigger\";\n var MenuTriggerFrame = Menu.Anchor;\n var MenuTrigger = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { scope, asChild, children, disabled = false, onKeydown, onKeyDown = onKeydown, ...triggerProps } = props;\n var context = useMenuContext(scope);\n var group = React.useContext(TriggerGroupContext);\n var popperCtx = (0, import_popper.usePopperContextSlow)(scope || DROPDOWN_MENU_CONTEXT);\n var Comp = asChild ? import_web.Slot : import_web.View;\n var isTouchDevice = (0, import_web.useIsTouchDevice)();\n var triggerElRef = React.useRef(null);\n var triggerId = React.useId();\n var [triggerOpen, setTriggerOpen] = React.useState(false);\n var { registerTrigger, unregisterTrigger } = context;\n React.useEffect(function() {\n registerTrigger(triggerId, setTriggerOpen, group);\n return function() {\n return unregisterTrigger(triggerId);\n };\n }, [\n registerTrigger,\n unregisterTrigger,\n triggerId,\n group === null || group === void 0 ? void 0 : group.register\n ]);\n var activateSelf = React.useCallback(function() {\n context.setActiveTrigger(triggerId);\n var el = triggerElRef.current;\n if (el) {\n context.triggerRef.current = el;\n if (el instanceof HTMLElement) {\n var _popperCtx_refs;\n (_popperCtx_refs = popperCtx.refs) === null || _popperCtx_refs === void 0 ? void 0 : _popperCtx_refs.setReference(el);\n requestAnimationFrame(function() {\n var _popperCtx_update;\n return (_popperCtx_update = popperCtx.update) === null || _popperCtx_update === void 0 ? void 0 : _popperCtx_update.call(popperCtx);\n });\n }\n }\n }, [\n context,\n triggerId,\n popperCtx\n ]);\n var activate = (0, import_web.useEvent)(activateSelf);\n var focusContent = (0, import_web.useEvent)(function() {\n var _document_getElementById_querySelector, _document_getElementById;\n (_document_getElementById = document.getElementById(context.contentId)) === null || _document_getElementById === void 0 ? void 0 : (_document_getElementById_querySelector = _document_getElementById.querySelector('[role^=\"menuitem\"]:not([data-disabled])')) === null || _document_getElementById_querySelector === void 0 ? void 0 : _document_getElementById_querySelector.focus();\n });\n var entry = React.useRef(null);\n if (!entry.current) {\n entry.current = {\n id: triggerId,\n ref: triggerElRef,\n openRef: context.openRef,\n disabled,\n activate,\n focusContent,\n onOpenChange: context.onOpenChange\n };\n }\n entry.current.disabled = disabled;\n entry.current.onOpenChange = context.onOpenChange;\n var registerGroup = group === null || group === void 0 ? void 0 : group.register;\n React.useEffect(function() {\n return registerGroup === null || registerGroup === void 0 ? void 0 : registerGroup(entry.current);\n }, [\n registerGroup\n ]);\n var openSelf = function() {\n if (group) group.activate(entry.current);\n else activateSelf();\n };\n var shouldRejectHover = function() {\n return disabled || context.openRef.current && context.activeTriggerIdRef.current !== triggerId && !(group === null || group === void 0 ? void 0 : group.isActive(context.openRef));\n };\n var pressEvent = import_web.isWeb ? isTouchDevice ? \"onClick\" : \"onPointerDown\" : \"onPress\";\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuTriggerFrame, {\n asChild: true,\n className: `is_${TRIGGER_NAME}`,\n scope: scope || DROPDOWN_MENU_CONTEXT,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, {\n role: group ? \"menuitem\" : \"button\",\n tabIndex: group ? group.tabStopId === triggerId ? 0 : -1 : void 0,\n id: context.triggerId,\n \"aria-haspopup\": \"menu\",\n \"aria-expanded\": triggerOpen,\n \"aria-controls\": triggerOpen ? context.contentId : void 0,\n \"data-state\": triggerOpen ? \"open\" : \"closed\",\n \"data-disabled\": disabled ? \"\" : void 0,\n \"aria-disabled\": disabled || void 0,\n ref: (0, import_web.composeRefs)(forwardedRef, group ? void 0 : context.triggerRef, triggerElRef),\n // caller props come first: the composed handlers below already call\n // the caller's own handler, so spreading them after would let a\n // caller's onPointerDown/onClick/onPress or onKeyDown replace the\n // one that opens the menu. the press prop stays read off `props`\n // because which of the three opens the menu is decided at runtime.\n ...triggerProps,\n onFocus: (0, import_web.composeEventHandlers)(props.onFocus, function() {\n if (!disabled) group === null || group === void 0 ? void 0 : group.onFocus(triggerId);\n }),\n onPointerEnter: function(event) {\n var _props_onPointerEnter;\n if (shouldRejectHover()) {\n event.preventDefault();\n return;\n }\n (_props_onPointerEnter = props.onPointerEnter) === null || _props_onPointerEnter === void 0 ? void 0 : _props_onPointerEnter.call(props, event);\n },\n onMouseEnter: function(event) {\n var _composeEventHandlers;\n if (shouldRejectHover()) {\n event.preventDefault();\n return;\n }\n (_composeEventHandlers = (0, import_web.composeEventHandlers)(props.onMouseEnter, function() {\n if ((group === null || group === void 0 ? void 0 : group.isOpen()) && !triggerOpen) {\n var _triggerElRef_current_focus, _triggerElRef_current;\n (_triggerElRef_current = triggerElRef.current) === null || _triggerElRef_current === void 0 ? void 0 : (_triggerElRef_current_focus = _triggerElRef_current.focus) === null || _triggerElRef_current_focus === void 0 ? void 0 : _triggerElRef_current_focus.call(_triggerElRef_current);\n openSelf();\n context.onOpenChange(true);\n }\n })) === null || _composeEventHandlers === void 0 ? void 0 : _composeEventHandlers(event);\n },\n [pressEvent]: (0, import_web.composeEventHandlers)(\n //@ts-ignore\n props[pressEvent],\n function(event) {\n if (!disabled) {\n if (import_web.isWeb && event instanceof PointerEvent && event.button !== 0 && event.ctrlKey === true) return;\n if (context.openRef.current) {\n context.setActiveTrigger(null);\n } else {\n openSelf();\n }\n context.onOpenToggle();\n if (!context.openRef.current) event.preventDefault();\n }\n }\n ),\n ...import_web.isWeb && {\n onKeyDown: (0, import_web.composeEventHandlers)(onKeyDown, function(event) {\n if (disabled) return;\n if (group && [\n \"ArrowLeft\",\n \"ArrowRight\"\n ].includes(event.key)) {\n group.move(triggerId, event.key, group.isOpen());\n event.preventDefault();\n return;\n }\n if ([\n \"Enter\",\n \" \"\n ].includes(event.key)) {\n if (context.openRef.current) {\n context.setActiveTrigger(null);\n } else {\n openSelf();\n }\n context.onOpenToggle();\n }\n if (event.key === \"ArrowDown\") {\n openSelf();\n context.onOpenChange(true);\n }\n if ([\n \"Enter\",\n \" \",\n \"ArrowDown\"\n ].includes(event.key)) event.preventDefault();\n })\n },\n children\n })\n });\n });\n MenuTrigger.displayName = TRIGGER_NAME;\n var PORTAL_NAME = \"MenuPortal\";\n var MenuPortal = function(props) {\n var { scope, children, ...portalProps } = props;\n var context = import_web.isAndroid ? useMenuContext(scope) : null;\n var content = import_web.isAndroid ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n ...context,\n children\n }) : children;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Portal, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n ...portalProps,\n children: content\n });\n };\n MenuPortal.displayName = PORTAL_NAME;\n var CONTENT_NAME = \"MenuContent\";\n var MenuContent = (0, import_core.createStyledHOC)(Menu.Content, function(props, forwardedRef) {\n var { scope, ...contentProps } = props;\n var context = useMenuContext(scope);\n var hasInteractedOutsideRef = React.useRef(false);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Content, {\n id: context.contentId,\n \"aria-labelledby\": context.triggerId,\n scope: scope || DROPDOWN_MENU_CONTEXT,\n ...contentProps,\n ref: forwardedRef,\n onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {\n var group = context.activeGroupRef.current;\n if (!group || ![\n \"ArrowLeft\",\n \"ArrowRight\"\n ].includes(event.key)) return;\n var target = event.target;\n if (target.closest(\"[data-tamagui-menu-content]\") !== event.currentTarget) return;\n if (target.closest('[aria-haspopup=\"menu\"]') && event.key === (group.dir === \"rtl\" ? \"ArrowLeft\" : \"ArrowRight\")) return;\n var id = context.activeTriggerIdRef.current;\n if (id) {\n group.move(id, event.key, true);\n event.preventDefault();\n }\n }),\n onCloseAutoFocus: (0, import_web.composeEventHandlers)(props.onCloseAutoFocus, function(event) {\n var group = context.activeGroupRef.current;\n if (group && !group.isActive(context.openRef)) {\n event.cancel();\n return;\n }\n if (!hasInteractedOutsideRef.current) {\n requestAnimationFrame(function() {\n var activeEl = document.activeElement;\n if (!activeEl || activeEl === document.body) {\n var _context_triggerRef_current;\n (_context_triggerRef_current = context.triggerRef.current) === null || _context_triggerRef_current === void 0 ? void 0 : _context_triggerRef_current.focus();\n }\n });\n }\n hasInteractedOutsideRef.current = false;\n event.cancel();\n }),\n onInteractOutside: (0, import_web.composeEventHandlers)(props.onInteractOutside, function(event) {\n var _event_event, _context_activeGroupRef_current;\n var _event_event_target;\n if ((_context_activeGroupRef_current = context.activeGroupRef.current) === null || _context_activeGroupRef_current === void 0 ? void 0 : _context_activeGroupRef_current.contains((_event_event_target = (_event_event = event.event) === null || _event_event === void 0 ? void 0 : _event_event.target) !== null && _event_event_target !== void 0 ? _event_event_target : null)) {\n event.cancel();\n return;\n }\n if (event.interaction !== \"pointer\" || !event.event) return;\n var originalEvent = event.event;\n var ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n var isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n if (!context.modal || isRightClick) hasInteractedOutsideRef.current = true;\n }),\n style: import_web.isWeb ? {\n ...props.style,\n ...{\n \"--tamagui-menu-content-transform-origin\": \"var(--tamagui-popper-transform-origin)\",\n \"--tamagui-menu-content-available-width\": \"var(--tamagui-popper-available-width)\",\n \"--tamagui-menu-content-available-height\": \"var(--tamagui-popper-available-height)\",\n \"--tamagui-menu-trigger-width\": \"var(--tamagui-popper-anchor-width)\",\n \"--tamagui-menu-trigger-height\": \"var(--tamagui-popper-anchor-height)\"\n }\n } : props.style\n });\n });\n MenuContent.displayName = CONTENT_NAME;\n var DROPDOWN_MENU_SUB_NAME = \"MenuSub\";\n var MenuSub = function(props) {\n var { scope, children, open: openProp, onOpenChange, defaultOpen, ...rest } = props;\n var [open = false, setOpen] = (0, import_use_controllable_state.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Sub, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n open,\n onOpenChange: setOpen,\n ...rest,\n children\n });\n };\n MenuSub.displayName = DROPDOWN_MENU_SUB_NAME;\n var SUB_CONTENT_NAME = \"MenuSubContent\";\n var MenuSubContent = (0, import_core.createStyledHOC)(Menu.SubContent, function(props, forwardedRef) {\n var { scope, ...subContentProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.SubContent, {\n scope: scope || DROPDOWN_MENU_CONTEXT,\n ...subContentProps,\n ref: forwardedRef,\n style: import_web.isWeb ? {\n ...props.style,\n ...{\n \"--tamagui-menu-content-transform-origin\": \"var(--tamagui-popper-transform-origin)\",\n \"--tamagui-menu-content-available-width\": \"var(--tamagui-popper-available-width)\",\n \"--tamagui-menu-content-available-height\": \"var(--tamagui-popper-available-height)\",\n \"--tamagui-menu-trigger-width\": \"var(--tamagui-popper-anchor-width)\",\n \"--tamagui-menu-trigger-height\": \"var(--tamagui-popper-anchor-height)\"\n }\n } : null\n });\n });\n MenuSubContent.displayName = SUB_CONTENT_NAME;\n var MenuScrollView = (0, import_web.styled)(import_scroll_view.ScrollView, {\n flexShrink: 1,\n alignSelf: \"stretch\",\n maxHeight: \"web:var(--tamagui-menu-content-available-height)\",\n showsHorizontalScrollIndicator: false,\n showsVerticalScrollIndicator: false\n });\n var Group = Menu.Group;\n var Label = Menu.Label;\n var Item = Menu.Item;\n var CheckboxItem = Menu.CheckboxItem;\n var RadioGroup = Menu.RadioGroup;\n var RadioItem = Menu.RadioItem;\n var ItemIndicator = Menu.ItemIndicator;\n var Separator = Menu.Separator;\n var Arrow = Menu.Arrow;\n var SubTrigger = Menu.SubTrigger;\n var ItemTitle = Menu.ItemTitle;\n var ItemSubtitle = Menu.ItemSubtitle;\n var ItemImage = Menu.ItemImage;\n var ItemIcon = Menu.ItemIcon;\n return (0, import_web.withStaticProperties)(MenuComp, {\n Root: MenuComp,\n Trigger: MenuTrigger,\n TriggerGroup: MenuTriggerGroup,\n Portal: MenuPortal,\n Content: MenuContent,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub: MenuSub,\n SubTrigger,\n SubContent: MenuSubContent,\n ItemTitle,\n ItemSubtitle,\n ItemImage,\n ItemIcon,\n ScrollView: MenuScrollView\n });\n}\n//# sourceMappingURL=createNonNativeMenu.js.map\n"],"mappings":"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"}
package/dist/esm/Menu.mjs CHANGED
@@ -117,6 +117,7 @@ function createMenu() {
117
117
  const ScrollView = isWeb ? NonNativeMenu.ScrollView : NativeScrollView;
118
118
  const Menu = withStaticProperties(MenuComp, {
119
119
  Trigger,
120
+ TriggerGroup: NonNativeMenu.TriggerGroup,
120
121
  Portal,
121
122
  Content,
122
123
  Group,
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","names":[],"sources":["esm/Menu.js"],"sourcesContent":["import { createNativeMenu, withNativeMenu } from \"@tamagui/create-menu\";\nimport { isWeb, withStaticProperties } from \"@tamagui/web\";\nimport React from \"react\";\nimport { DROPDOWN_MENU_CONTEXT, createNonNativeMenu } from \"./createNonNativeMenu\";\nimport { Fragment, jsx } from \"react/jsx-runtime\";\nfunction createMenu() {\n const { Menu: NativeMenuRoot } = createNativeMenu(\"Menu\");\n const NonNativeMenu = createNonNativeMenu();\n const COMMON_PARAMS = {\n isRoot: false,\n scope: DROPDOWN_MENU_CONTEXT\n };\n const MenuComp = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Root,\n NativeComponent: NativeMenuRoot,\n isRoot: true\n });\n const Trigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Trigger,\n NativeComponent: NativeMenuRoot.Trigger\n });\n const Portal = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Portal,\n NativeComponent: React.Fragment\n });\n const Content = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Content,\n NativeComponent: NativeMenuRoot.Content\n });\n const Group = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Group,\n NativeComponent: NativeMenuRoot.Group\n });\n const Label = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Label,\n NativeComponent: NativeMenuRoot.Label\n });\n const Item = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Item,\n NativeComponent: NativeMenuRoot.Item\n });\n const ItemTitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemTitle,\n NativeComponent: NativeMenuRoot.ItemTitle\n });\n const ItemSubtitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemSubtitle,\n NativeComponent: NativeMenuRoot.ItemSubtitle\n });\n const ItemIcon = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIcon,\n NativeComponent: NativeMenuRoot.ItemIcon\n });\n const ItemImage = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemImage,\n NativeComponent: NativeMenuRoot.ItemImage\n });\n const CheckboxItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.CheckboxItem,\n NativeComponent: NativeMenuRoot.CheckboxItem\n });\n const RadioGroup = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioGroup,\n NativeComponent: ({ children }) => /* @__PURE__ */ jsx(Fragment, { children })\n });\n const RadioItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioItem,\n NativeComponent: ({ children }) => /* @__PURE__ */ jsx(Fragment, { children })\n });\n const ItemIndicator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIndicator,\n NativeComponent: NativeMenuRoot.ItemIndicator\n });\n const Separator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Separator,\n NativeComponent: NativeMenuRoot.Separator\n });\n const Arrow = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Arrow,\n NativeComponent: NativeMenuRoot.Arrow\n });\n const Sub = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Sub,\n NativeComponent: NativeMenuRoot.Sub\n });\n const SubTrigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubTrigger,\n NativeComponent: NativeMenuRoot.SubTrigger\n });\n const SubContent = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubContent,\n NativeComponent: NativeMenuRoot.SubContent\n });\n const NativeScrollView = ({ children }) => /* @__PURE__ */ jsx(Fragment, { children });\n NativeScrollView.displayName = \"MenuScrollView\";\n const ScrollView = isWeb ? NonNativeMenu.ScrollView : NativeScrollView;\n const Menu = withStaticProperties(MenuComp, {\n Trigger,\n Portal,\n Content,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub,\n SubTrigger,\n SubContent,\n ItemTitle,\n ItemSubtitle,\n ItemIcon,\n ItemImage,\n ScrollView\n });\n return Menu;\n}\nexport {\n createMenu\n};\n//# sourceMappingURL=Menu.js.map\n"],"mappings":";;;;;;;AAKA,SAAS,aAAa;CACpB,MAAM,EAAE,MAAM,mBAAmB,iBAAiB,MAAM;CACxD,MAAM,gBAAgB,oBAAoB;CAC1C,MAAM,gBAAgB;EACpB,QAAQ;EACR,OAAO;CACT;CACA,MAAM,WAAW,eAAe;EAC9B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB;EACjB,QAAQ;CACV,CAAC;CACD,MAAM,UAAU,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,SAAS,eAAe;EAC5B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,MAAM;CACzB,CAAC;CACD,MAAM,UAAU,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,QAAQ,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,QAAQ,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,OAAO,eAAe;EAC1B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,eAAe,eAAe;EAClC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,WAAW,eAAe;EAC9B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,eAAe,eAAe;EAClC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,aAAa,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,kBAAkB,EAAE,eAA+B,oBAAI,UAAU,EAAE,SAAS,CAAC;CAC/E,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,kBAAkB,EAAE,eAA+B,oBAAI,UAAU,EAAE,SAAS,CAAC;CAC/E,CAAC;CACD,MAAM,gBAAgB,eAAe;EACnC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,QAAQ,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,MAAM,eAAe;EACzB,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,aAAa,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,aAAa,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,oBAAoB,EAAE,eAA+B,oBAAI,UAAU,EAAE,SAAS,CAAC;CACrF,iBAAiB,cAAc;CAC/B,MAAM,aAAa,QAAQ,cAAc,aAAa;CACtD,MAAM,OAAO,qBAAqB,UAAU;EAC1C;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CACD,OAAO;AACT"}
1
+ {"version":3,"file":"Menu.js","names":[],"sources":["esm/Menu.js"],"sourcesContent":["import { createNativeMenu, withNativeMenu } from \"@tamagui/create-menu\";\nimport { isWeb, withStaticProperties } from \"@tamagui/web\";\nimport React from \"react\";\nimport { DROPDOWN_MENU_CONTEXT, createNonNativeMenu } from \"./createNonNativeMenu\";\nimport { Fragment, jsx } from \"react/jsx-runtime\";\nfunction createMenu() {\n const { Menu: NativeMenuRoot } = createNativeMenu(\"Menu\");\n const NonNativeMenu = createNonNativeMenu();\n const COMMON_PARAMS = {\n isRoot: false,\n scope: DROPDOWN_MENU_CONTEXT\n };\n const MenuComp = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Root,\n NativeComponent: NativeMenuRoot,\n isRoot: true\n });\n const Trigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Trigger,\n NativeComponent: NativeMenuRoot.Trigger\n });\n const Portal = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Portal,\n NativeComponent: React.Fragment\n });\n const Content = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Content,\n NativeComponent: NativeMenuRoot.Content\n });\n const Group = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Group,\n NativeComponent: NativeMenuRoot.Group\n });\n const Label = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Label,\n NativeComponent: NativeMenuRoot.Label\n });\n const Item = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Item,\n NativeComponent: NativeMenuRoot.Item\n });\n const ItemTitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemTitle,\n NativeComponent: NativeMenuRoot.ItemTitle\n });\n const ItemSubtitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemSubtitle,\n NativeComponent: NativeMenuRoot.ItemSubtitle\n });\n const ItemIcon = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIcon,\n NativeComponent: NativeMenuRoot.ItemIcon\n });\n const ItemImage = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemImage,\n NativeComponent: NativeMenuRoot.ItemImage\n });\n const CheckboxItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.CheckboxItem,\n NativeComponent: NativeMenuRoot.CheckboxItem\n });\n const RadioGroup = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioGroup,\n NativeComponent: ({ children }) => /* @__PURE__ */ jsx(Fragment, { children })\n });\n const RadioItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioItem,\n NativeComponent: ({ children }) => /* @__PURE__ */ jsx(Fragment, { children })\n });\n const ItemIndicator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIndicator,\n NativeComponent: NativeMenuRoot.ItemIndicator\n });\n const Separator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Separator,\n NativeComponent: NativeMenuRoot.Separator\n });\n const Arrow = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Arrow,\n NativeComponent: NativeMenuRoot.Arrow\n });\n const Sub = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Sub,\n NativeComponent: NativeMenuRoot.Sub\n });\n const SubTrigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubTrigger,\n NativeComponent: NativeMenuRoot.SubTrigger\n });\n const SubContent = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubContent,\n NativeComponent: NativeMenuRoot.SubContent\n });\n const NativeScrollView = ({ children }) => /* @__PURE__ */ jsx(Fragment, { children });\n NativeScrollView.displayName = \"MenuScrollView\";\n const ScrollView = isWeb ? NonNativeMenu.ScrollView : NativeScrollView;\n const Menu = withStaticProperties(MenuComp, {\n Trigger,\n TriggerGroup: NonNativeMenu.TriggerGroup,\n Portal,\n Content,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub,\n SubTrigger,\n SubContent,\n ItemTitle,\n ItemSubtitle,\n ItemIcon,\n ItemImage,\n ScrollView\n });\n return Menu;\n}\nexport {\n createMenu\n};\n//# sourceMappingURL=Menu.js.map\n"],"mappings":";;;;;;;AAKA,SAAS,aAAa;CACpB,MAAM,EAAE,MAAM,mBAAmB,iBAAiB,MAAM;CACxD,MAAM,gBAAgB,oBAAoB;CAC1C,MAAM,gBAAgB;EACpB,QAAQ;EACR,OAAO;CACT;CACA,MAAM,WAAW,eAAe;EAC9B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB;EACjB,QAAQ;CACV,CAAC;CACD,MAAM,UAAU,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,SAAS,eAAe;EAC5B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,MAAM;CACzB,CAAC;CACD,MAAM,UAAU,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,QAAQ,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,QAAQ,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,OAAO,eAAe;EAC1B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,eAAe,eAAe;EAClC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,WAAW,eAAe;EAC9B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,eAAe,eAAe;EAClC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,aAAa,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,kBAAkB,EAAE,eAA+B,oBAAI,UAAU,EAAE,SAAS,CAAC;CAC/E,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,kBAAkB,EAAE,eAA+B,oBAAI,UAAU,EAAE,SAAS,CAAC;CAC/E,CAAC;CACD,MAAM,gBAAgB,eAAe;EACnC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,YAAY,eAAe;EAC/B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,QAAQ,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,MAAM,eAAe;EACzB,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,aAAa,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,aAAa,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,MAAM,oBAAoB,EAAE,eAA+B,oBAAI,UAAU,EAAE,SAAS,CAAC;CACrF,iBAAiB,cAAc;CAC/B,MAAM,aAAa,QAAQ,cAAc,aAAa;CACtD,MAAM,OAAO,qBAAqB,UAAU;EAC1C;EACA,cAAc,cAAc;EAC5B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CACD,OAAO;AACT"}
@@ -126,6 +126,7 @@ function createMenu() {
126
126
  var ScrollView = isWeb ? NonNativeMenu.ScrollView : NativeScrollView;
127
127
  var Menu = withStaticProperties(MenuComp, {
128
128
  Trigger,
129
+ TriggerGroup: NonNativeMenu.TriggerGroup,
129
130
  Portal,
130
131
  Content,
131
132
  Group,
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.native.js","names":["_Fragment"],"sources":["esm/Menu.native.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { createNativeMenu, withNativeMenu } from \"@tamagui/create-menu\";\nimport { isWeb, withStaticProperties } from \"@tamagui/web\";\nimport React from \"react\";\nimport { DROPDOWN_MENU_CONTEXT, createNonNativeMenu } from \"./createNonNativeMenu\";\nfunction createMenu() {\n var { Menu: NativeMenuRoot } = createNativeMenu(\"Menu\");\n var NonNativeMenu = createNonNativeMenu();\n var COMMON_PARAMS = {\n isRoot: false,\n scope: DROPDOWN_MENU_CONTEXT\n };\n var MenuComp = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Root,\n NativeComponent: NativeMenuRoot,\n isRoot: true\n });\n var Trigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Trigger,\n NativeComponent: NativeMenuRoot.Trigger\n });\n var Portal = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Portal,\n NativeComponent: React.Fragment\n });\n var Content = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Content,\n NativeComponent: NativeMenuRoot.Content\n });\n var Group = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Group,\n NativeComponent: NativeMenuRoot.Group\n });\n var Label = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Label,\n NativeComponent: NativeMenuRoot.Label\n });\n var Item = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Item,\n NativeComponent: NativeMenuRoot.Item\n });\n var ItemTitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemTitle,\n NativeComponent: NativeMenuRoot.ItemTitle\n });\n var ItemSubtitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemSubtitle,\n NativeComponent: NativeMenuRoot.ItemSubtitle\n });\n var ItemIcon = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIcon,\n NativeComponent: NativeMenuRoot.ItemIcon\n });\n var ItemImage = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemImage,\n NativeComponent: NativeMenuRoot.ItemImage\n });\n var CheckboxItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.CheckboxItem,\n NativeComponent: NativeMenuRoot.CheckboxItem\n });\n var RadioGroup = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioGroup,\n NativeComponent: function(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n }\n });\n var RadioItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioItem,\n NativeComponent: function(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n }\n });\n var ItemIndicator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIndicator,\n NativeComponent: NativeMenuRoot.ItemIndicator\n });\n var Separator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Separator,\n NativeComponent: NativeMenuRoot.Separator\n });\n var Arrow = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Arrow,\n NativeComponent: NativeMenuRoot.Arrow\n });\n var Sub = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Sub,\n NativeComponent: NativeMenuRoot.Sub\n });\n var SubTrigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubTrigger,\n NativeComponent: NativeMenuRoot.SubTrigger\n });\n var SubContent = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubContent,\n NativeComponent: NativeMenuRoot.SubContent\n });\n var NativeScrollView = function(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n };\n NativeScrollView.displayName = \"MenuScrollView\";\n var ScrollView = isWeb ? NonNativeMenu.ScrollView : NativeScrollView;\n var Menu = withStaticProperties(MenuComp, {\n Trigger,\n Portal,\n Content,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub,\n SubTrigger,\n SubContent,\n ItemTitle,\n ItemSubtitle,\n ItemIcon,\n ItemImage,\n ScrollView\n });\n return Menu;\n}\nexport {\n createMenu\n};\n//# sourceMappingURL=Menu.js.map\n"],"mappings":";;;;;;;AAKA,SAAS,aAAa;CACpB,IAAI,EAAE,MAAM,mBAAmB,iBAAiB,MAAM;CACtD,IAAI,gBAAgB,oBAAoB;CACxC,IAAI,gBAAgB;EAClB,QAAQ;EACR,OAAO;CACT;CACA,IAAI,WAAW,eAAe;EAC5B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB;EACjB,QAAQ;CACV,CAAC;CACD,IAAI,UAAU,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,SAAS,eAAe;EAC1B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,MAAM;CACzB,CAAC;CACD,IAAI,UAAU,eAAe;EAC3B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,QAAQ,eAAe;EACzB,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,QAAQ,eAAe;EACzB,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,OAAO,eAAe;EACxB,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,YAAY,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,eAAe,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,WAAW,eAAe;EAC5B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,YAAY,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,eAAe,eAAe;EAChC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,aAAa,eAAe;EAC9B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,SAAS,OAAO;GAC/B,IAAI,EAAE,aAAa;GACnB,OAAuB,oBAAKA,UAAW,EACrC,SACF,CAAC;EACH;CACF,CAAC;CACD,IAAI,YAAY,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,SAAS,OAAO;GAC/B,IAAI,EAAE,aAAa;GACnB,OAAuB,oBAAKA,UAAW,EACrC,SACF,CAAC;EACH;CACF,CAAC;CACD,IAAI,gBAAgB,eAAe;EACjC,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,YAAY,eAAe;EAC7B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,QAAQ,eAAe;EACzB,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,MAAM,eAAe;EACvB,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,aAAa,eAAe;EAC9B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,aAAa,eAAe;EAC9B,GAAG;EACH,WAAW,cAAc;EACzB,iBAAiB,eAAe;CAClC,CAAC;CACD,IAAI,mBAAmB,SAAS,OAAO;EACrC,IAAI,EAAE,aAAa;EACnB,OAAuB,oBAAKA,UAAW,EACrC,SACF,CAAC;CACH;CACA,iBAAiB,cAAc;CAC/B,IAAI,aAAa,QAAQ,cAAc,aAAa;CACpD,IAAI,OAAO,qBAAqB,UAAU;EACxC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CACD,OAAO;AACT"}
1
+ {"version":3,"file":"Menu.native.js","names":["_Fragment"],"sources":["esm/Menu.native.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { createNativeMenu, withNativeMenu } from \"@tamagui/create-menu\";\nimport { isWeb, withStaticProperties } from \"@tamagui/web\";\nimport React from \"react\";\nimport { DROPDOWN_MENU_CONTEXT, createNonNativeMenu } from \"./createNonNativeMenu\";\nfunction createMenu() {\n var { Menu: NativeMenuRoot } = createNativeMenu(\"Menu\");\n var NonNativeMenu = createNonNativeMenu();\n var COMMON_PARAMS = {\n isRoot: false,\n scope: DROPDOWN_MENU_CONTEXT\n };\n var MenuComp = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Root,\n NativeComponent: NativeMenuRoot,\n isRoot: true\n });\n var Trigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Trigger,\n NativeComponent: NativeMenuRoot.Trigger\n });\n var Portal = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Portal,\n NativeComponent: React.Fragment\n });\n var Content = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Content,\n NativeComponent: NativeMenuRoot.Content\n });\n var Group = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Group,\n NativeComponent: NativeMenuRoot.Group\n });\n var Label = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Label,\n NativeComponent: NativeMenuRoot.Label\n });\n var Item = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Item,\n NativeComponent: NativeMenuRoot.Item\n });\n var ItemTitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemTitle,\n NativeComponent: NativeMenuRoot.ItemTitle\n });\n var ItemSubtitle = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemSubtitle,\n NativeComponent: NativeMenuRoot.ItemSubtitle\n });\n var ItemIcon = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIcon,\n NativeComponent: NativeMenuRoot.ItemIcon\n });\n var ItemImage = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemImage,\n NativeComponent: NativeMenuRoot.ItemImage\n });\n var CheckboxItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.CheckboxItem,\n NativeComponent: NativeMenuRoot.CheckboxItem\n });\n var RadioGroup = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioGroup,\n NativeComponent: function(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n }\n });\n var RadioItem = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.RadioItem,\n NativeComponent: function(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n }\n });\n var ItemIndicator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.ItemIndicator,\n NativeComponent: NativeMenuRoot.ItemIndicator\n });\n var Separator = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Separator,\n NativeComponent: NativeMenuRoot.Separator\n });\n var Arrow = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Arrow,\n NativeComponent: NativeMenuRoot.Arrow\n });\n var Sub = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.Sub,\n NativeComponent: NativeMenuRoot.Sub\n });\n var SubTrigger = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubTrigger,\n NativeComponent: NativeMenuRoot.SubTrigger\n });\n var SubContent = withNativeMenu({\n ...COMMON_PARAMS,\n Component: NonNativeMenu.SubContent,\n NativeComponent: NativeMenuRoot.SubContent\n });\n var NativeScrollView = function(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n };\n NativeScrollView.displayName = \"MenuScrollView\";\n var ScrollView = isWeb ? NonNativeMenu.ScrollView : NativeScrollView;\n var Menu = withStaticProperties(MenuComp, {\n Trigger,\n TriggerGroup: NonNativeMenu.TriggerGroup,\n Portal,\n Content,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub,\n SubTrigger,\n SubContent,\n ItemTitle,\n ItemSubtitle,\n ItemIcon,\n ItemImage,\n ScrollView\n });\n return Menu;\n}\nexport {\n createMenu\n};\n//# sourceMappingURL=Menu.js.map\n"],"mappings":"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"}