@tamagui/menu 3.0.0-beta.924.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.
- package/dist/cjs/Menu.cjs +1 -0
- package/dist/cjs/Menu.native.cjs +1 -0
- package/dist/cjs/Menu.native.js +1 -0
- package/dist/cjs/Menu.native.js.map +1 -1
- package/dist/cjs/createNonNativeMenu.cjs +185 -13
- package/dist/cjs/createNonNativeMenu.native.cjs +229 -22
- package/dist/cjs/createNonNativeMenu.native.js +229 -22
- package/dist/cjs/createNonNativeMenu.native.js.map +1 -1
- package/dist/esm/Menu.mjs +1 -0
- package/dist/esm/Menu.mjs.map +1 -1
- package/dist/esm/Menu.native.js +1 -0
- package/dist/esm/Menu.native.js.map +1 -1
- package/dist/esm/createNonNativeMenu.mjs +185 -13
- package/dist/esm/createNonNativeMenu.mjs.map +1 -1
- package/dist/esm/createNonNativeMenu.native.js +229 -22
- package/dist/esm/createNonNativeMenu.native.js.map +1 -1
- package/dist/jsx/Menu.mjs +1 -0
- package/dist/jsx/Menu.mjs.map +1 -1
- package/dist/jsx/Menu.native.cjs +1 -0
- package/dist/jsx/Menu.native.js +1 -0
- package/dist/jsx/Menu.native.js.map +1 -1
- package/dist/jsx/createNonNativeMenu.mjs +185 -13
- package/dist/jsx/createNonNativeMenu.mjs.map +1 -1
- package/dist/jsx/createNonNativeMenu.native.cjs +229 -22
- package/dist/jsx/createNonNativeMenu.native.js +229 -22
- package/dist/jsx/createNonNativeMenu.native.js.map +1 -1
- package/package.json +14 -12
- package/src/Menu.tsx +1 -0
- package/src/createNonNativeMenu.tsx +273 -18
- package/src/index.tsx +2 -0
- package/types/Menu.d.ts +31 -14
- package/types/Menu.d.ts.map +1 -1
- package/types/createNonNativeMenu.d.ts +33 -33
- package/types/createNonNativeMenu.d.ts.map +1 -1
- package/types/index.d.ts +32 -14
- 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 (
|
|
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 &&
|
|
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
|
-
|
|
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
|
-
|
|
398
|
+
openSelf();
|
|
216
399
|
}
|
|
217
400
|
context.onOpenToggle();
|
|
218
401
|
}
|
|
219
402
|
if (event.key === "ArrowDown") {
|
|
220
|
-
|
|
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":["jsx/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":["jsx/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/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/menu",
|
|
3
|
-
"version": "3.0.0
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"license": "MIT",
|
|
4
5
|
"gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
|
|
5
6
|
"source": "src/index.tsx",
|
|
6
7
|
"files": [
|
|
@@ -35,18 +36,18 @@
|
|
|
35
36
|
"clean:build": "tamagui-build clean:build"
|
|
36
37
|
},
|
|
37
38
|
"dependencies": {
|
|
38
|
-
"@tamagui/core": "3.0.0
|
|
39
|
-
"@tamagui/create-menu": "3.0.0
|
|
40
|
-
"@tamagui/helpers": "3.0.0
|
|
41
|
-
"@tamagui/polyfill-dev": "3.0.0
|
|
42
|
-
"@tamagui/popover": "3.0.0
|
|
43
|
-
"@tamagui/popper": "3.0.0
|
|
44
|
-
"@tamagui/scroll-view": "3.0.0
|
|
45
|
-
"@tamagui/use-controllable-state": "3.0.0
|
|
46
|
-
"@tamagui/web": "3.0.0
|
|
39
|
+
"@tamagui/core": "3.0.0",
|
|
40
|
+
"@tamagui/create-menu": "3.0.0",
|
|
41
|
+
"@tamagui/helpers": "3.0.0",
|
|
42
|
+
"@tamagui/polyfill-dev": "3.0.0",
|
|
43
|
+
"@tamagui/popover": "3.0.0",
|
|
44
|
+
"@tamagui/popper": "3.0.0",
|
|
45
|
+
"@tamagui/scroll-view": "3.0.0",
|
|
46
|
+
"@tamagui/use-controllable-state": "3.0.0",
|
|
47
|
+
"@tamagui/web": "3.0.0"
|
|
47
48
|
},
|
|
48
49
|
"devDependencies": {
|
|
49
|
-
"@tamagui/build": "3.0.0
|
|
50
|
+
"@tamagui/build": "3.0.0",
|
|
50
51
|
"react": "19.2.3"
|
|
51
52
|
},
|
|
52
53
|
"peerDependencies": {
|
|
@@ -57,5 +58,6 @@
|
|
|
57
58
|
"type": "git",
|
|
58
59
|
"url": "git+https://github.com/tamagui/tamagui.git",
|
|
59
60
|
"directory": "code/ui/menu"
|
|
60
|
-
}
|
|
61
|
+
},
|
|
62
|
+
"releaseSourceCommit": "15fbca480b143f876f6975601e23a17d3f90d2ee"
|
|
61
63
|
}
|