@tamagui/menu 2.0.0-rc.3 → 2.0.0-rc.30

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 (54) hide show
  1. package/dist/cjs/Menu.cjs +17 -4
  2. package/dist/cjs/Menu.native.js +20 -4
  3. package/dist/cjs/Menu.native.js.map +1 -1
  4. package/dist/cjs/createNonNativeMenu.cjs +113 -153
  5. package/dist/cjs/createNonNativeMenu.native.js +131 -167
  6. package/dist/cjs/createNonNativeMenu.native.js.map +1 -1
  7. package/dist/cjs/index.js +19 -12
  8. package/dist/esm/Menu.mjs +17 -4
  9. package/dist/esm/Menu.mjs.map +1 -1
  10. package/dist/esm/Menu.native.js +20 -4
  11. package/dist/esm/Menu.native.js.map +1 -1
  12. package/dist/esm/createNonNativeMenu.mjs +114 -154
  13. package/dist/esm/createNonNativeMenu.mjs.map +1 -1
  14. package/dist/esm/createNonNativeMenu.native.js +132 -168
  15. package/dist/esm/createNonNativeMenu.native.js.map +1 -1
  16. package/dist/esm/index.js +2 -5
  17. package/dist/esm/index.js.map +1 -6
  18. package/dist/esm/index.mjs +0 -1
  19. package/dist/esm/index.mjs.map +1 -1
  20. package/dist/esm/index.native.js +0 -1
  21. package/dist/esm/index.native.js.map +1 -1
  22. package/dist/jsx/Menu.mjs +17 -4
  23. package/dist/jsx/Menu.mjs.map +1 -1
  24. package/dist/jsx/Menu.native.js +20 -4
  25. package/dist/jsx/Menu.native.js.map +1 -1
  26. package/dist/jsx/createNonNativeMenu.mjs +114 -154
  27. package/dist/jsx/createNonNativeMenu.mjs.map +1 -1
  28. package/dist/jsx/createNonNativeMenu.native.js +131 -167
  29. package/dist/jsx/createNonNativeMenu.native.js.map +1 -1
  30. package/dist/jsx/index.js +2 -5
  31. package/dist/jsx/index.js.map +1 -6
  32. package/dist/jsx/index.mjs +0 -1
  33. package/dist/jsx/index.mjs.map +1 -1
  34. package/package.json +12 -14
  35. package/src/Menu.tsx +11 -3
  36. package/src/createNonNativeMenu.tsx +220 -290
  37. package/types/Menu.d.ts +81 -46
  38. package/types/Menu.d.ts.map +1 -1
  39. package/types/createNonNativeMenu.d.ts +116 -68
  40. package/types/createNonNativeMenu.d.ts.map +1 -1
  41. package/types/index.d.ts +81 -46
  42. package/types/index.d.ts.map +1 -1
  43. package/dist/cjs/Menu.js +0 -137
  44. package/dist/cjs/Menu.js.map +0 -6
  45. package/dist/cjs/createNonNativeMenu.js +0 -334
  46. package/dist/cjs/createNonNativeMenu.js.map +0 -6
  47. package/dist/esm/Menu.js +0 -119
  48. package/dist/esm/Menu.js.map +0 -6
  49. package/dist/esm/createNonNativeMenu.js +0 -325
  50. package/dist/esm/createNonNativeMenu.js.map +0 -6
  51. package/dist/jsx/Menu.js +0 -119
  52. package/dist/jsx/Menu.js.map +0 -6
  53. package/dist/jsx/createNonNativeMenu.js +0 -325
  54. package/dist/jsx/createNonNativeMenu.js.map +0 -6
@@ -39,6 +39,8 @@ __export(createNonNativeMenu_exports, {
39
39
  module.exports = __toCommonJS(createNonNativeMenu_exports);
40
40
  var import_jsx_runtime = require("react/jsx-runtime"),
41
41
  import_create_menu = require("@tamagui/create-menu"),
42
+ import_popper = require("@tamagui/popper"),
43
+ import_scroll_view = require("@tamagui/scroll-view"),
42
44
  import_use_controllable_state = require("@tamagui/use-controllable-state"),
43
45
  import_web = require("@tamagui/web"),
44
46
  React = __toESM(require("react"), 1),
@@ -47,6 +49,44 @@ function _instanceof(left, right) {
47
49
  return right != null && typeof Symbol < "u" && right[Symbol.hasInstance] ? !!right[Symbol.hasInstance](left) : left instanceof right;
48
50
  }
49
51
  var DROPDOWN_MENU_CONTEXT = "MenuContext";
52
+ function useMenuTriggerSetup(open) {
53
+ var triggerStateSettersRef = React.useRef(/* @__PURE__ */new Map()),
54
+ activeTriggerIdRef = React.useRef(null),
55
+ setActiveTrigger = (0, import_web.useEvent)(function (id) {
56
+ var prevId = activeTriggerIdRef.current;
57
+ if (prevId !== id) {
58
+ if (prevId) {
59
+ var _triggerStateSettersRef_current_get;
60
+ (_triggerStateSettersRef_current_get = triggerStateSettersRef.current.get(prevId)) === null || _triggerStateSettersRef_current_get === void 0 || _triggerStateSettersRef_current_get(!1);
61
+ }
62
+ if (activeTriggerIdRef.current = id, id && open) {
63
+ var _triggerStateSettersRef_current_get1;
64
+ (_triggerStateSettersRef_current_get1 = triggerStateSettersRef.current.get(id)) === null || _triggerStateSettersRef_current_get1 === void 0 || _triggerStateSettersRef_current_get1(!0);
65
+ }
66
+ }
67
+ }),
68
+ registerTrigger = (0, import_web.useEvent)(function (id, setOpenState) {
69
+ triggerStateSettersRef.current.set(id, setOpenState), setOpenState(activeTriggerIdRef.current === id && open);
70
+ }),
71
+ unregisterTrigger = (0, import_web.useEvent)(function (id) {
72
+ triggerStateSettersRef.current.delete(id), activeTriggerIdRef.current === id && (activeTriggerIdRef.current = null);
73
+ });
74
+ return React.useEffect(function () {
75
+ if (!open) {
76
+ setActiveTrigger(null);
77
+ return;
78
+ }
79
+ var activeId = activeTriggerIdRef.current;
80
+ if (activeId) {
81
+ var _triggerStateSettersRef_current_get;
82
+ (_triggerStateSettersRef_current_get = triggerStateSettersRef.current.get(activeId)) === null || _triggerStateSettersRef_current_get === void 0 || _triggerStateSettersRef_current_get(!0);
83
+ }
84
+ }, [open, setActiveTrigger]), {
85
+ setActiveTrigger,
86
+ registerTrigger,
87
+ unregisterTrigger
88
+ };
89
+ }
50
90
  function createNonNativeMenu(params) {
51
91
  var {
52
92
  Menu
@@ -72,21 +112,32 @@ function createNonNativeMenu(params) {
72
112
  prop: openProp,
73
113
  defaultProp: defaultOpen,
74
114
  onChange: onOpenChange
75
- });
115
+ }),
116
+ openRef = React.useRef(open);
117
+ openRef.current = open;
118
+ var {
119
+ setActiveTrigger,
120
+ registerTrigger,
121
+ unregisterTrigger
122
+ } = useMenuTriggerSetup(open);
76
123
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(MenuProvider, {
77
124
  scope,
78
125
  triggerId: (0, import_react.useId)(),
79
- // TODO
80
126
  triggerRef,
81
127
  contentId: (0, import_react.useId)(),
82
- open,
83
- onOpenChange: setOpen,
128
+ openRef,
129
+ onOpenChange: React.useCallback(function (nextOpen) {
130
+ return setOpen(nextOpen);
131
+ }, [setOpen]),
84
132
  onOpenToggle: React.useCallback(function () {
85
133
  return setOpen(function (prevOpen) {
86
134
  return !prevOpen;
87
135
  });
88
136
  }, [setOpen]),
89
137
  modal,
138
+ setActiveTrigger,
139
+ registerTrigger,
140
+ unregisterTrigger,
90
141
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu, {
91
142
  scope: scope || DROPDOWN_MENU_CONTEXT,
92
143
  open,
@@ -111,8 +162,32 @@ function createNonNativeMenu(params) {
111
162
  ...triggerProps
112
163
  } = props,
113
164
  context = useMenuContext(scope),
165
+ popperCtx = (0, import_popper.usePopperContextSlow)(scope || DROPDOWN_MENU_CONTEXT),
114
166
  Comp = asChild ? import_web.Slot : import_web.View,
115
167
  isTouchDevice = (0, import_web.useIsTouchDevice)(),
168
+ triggerElRef = React.useRef(null),
169
+ triggerId = React.useId(),
170
+ [triggerOpen, setTriggerOpen] = React.useState(!1),
171
+ {
172
+ registerTrigger,
173
+ unregisterTrigger
174
+ } = context;
175
+ React.useEffect(function () {
176
+ return registerTrigger(triggerId, setTriggerOpen), function () {
177
+ return unregisterTrigger(triggerId);
178
+ };
179
+ }, [registerTrigger, unregisterTrigger, triggerId]);
180
+ var activateSelf = React.useCallback(function () {
181
+ context.setActiveTrigger(triggerId);
182
+ var el = triggerElRef.current;
183
+ if (el && (context.triggerRef.current = el, _instanceof(el, HTMLElement))) {
184
+ var _popperCtx_refs;
185
+ (_popperCtx_refs = popperCtx.refs) === null || _popperCtx_refs === void 0 || _popperCtx_refs.setReference(el), requestAnimationFrame(function () {
186
+ var _popperCtx_update;
187
+ return (_popperCtx_update = popperCtx.update) === null || _popperCtx_update === void 0 ? void 0 : _popperCtx_update.call(popperCtx);
188
+ });
189
+ }
190
+ }, [context, triggerId, popperCtx]),
116
191
  pressEvent = import_web.isWeb ? isTouchDevice ? "onClick" : "onPointerDown" : "onPress";
117
192
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(MenuTriggerFrame, {
118
193
  asChild: !0,
@@ -122,23 +197,23 @@ function createNonNativeMenu(params) {
122
197
  role: "button",
123
198
  id: context.triggerId,
124
199
  "aria-haspopup": "menu",
125
- "aria-expanded": context.open,
126
- "aria-controls": context.open ? context.contentId : void 0,
127
- "data-state": context.open ? "open" : "closed",
200
+ "aria-expanded": triggerOpen,
201
+ "aria-controls": triggerOpen ? context.contentId : void 0,
202
+ "data-state": triggerOpen ? "open" : "closed",
128
203
  "data-disabled": disabled ? "" : void 0,
129
204
  "aria-disabled": disabled || void 0,
130
- ref: (0, import_web.composeRefs)(forwardedRef, context.triggerRef),
205
+ ref: (0, import_web.composeRefs)(forwardedRef, context.triggerRef, triggerElRef),
131
206
  [pressEvent]: (0, import_web.composeEventHandlers)(
132
207
  //@ts-ignore
133
208
  props[pressEvent], function (event) {
134
209
  if (!disabled) {
135
210
  if (import_web.isWeb && _instanceof(event, PointerEvent) && event.button !== 0 && event.ctrlKey === !0) return;
136
- context.onOpenToggle(), context.open || event.preventDefault();
211
+ context.openRef.current ? context.setActiveTrigger(null) : activateSelf(), context.onOpenToggle(), context.openRef.current || event.preventDefault();
137
212
  }
138
213
  }),
139
214
  ...(import_web.isWeb && {
140
215
  onKeyDown: (0, import_web.composeEventHandlers)(onKeydown, function (event) {
141
- disabled || (["Enter", " "].includes(event.key) && context.onOpenToggle(), event.key === "ArrowDown" && context.onOpenChange(!0), ["Enter", " ", "ArrowDown"].includes(event.key) && event.preventDefault());
216
+ disabled || (["Enter", " "].includes(event.key) && (context.openRef.current ? context.setActiveTrigger(null) : activateSelf(), context.onOpenToggle()), event.key === "ArrowDown" && (activateSelf(), context.onOpenChange(!0)), ["Enter", " ", "ArrowDown"].includes(event.key) && event.preventDefault());
142
217
  })
143
218
  }),
144
219
  ...triggerProps,
@@ -181,8 +256,13 @@ function createNonNativeMenu(params) {
181
256
  ...contentProps,
182
257
  ref: forwardedRef,
183
258
  onCloseAutoFocus: (0, import_web.composeEventHandlers)(props.onCloseAutoFocus, function (event) {
184
- var _context_triggerRef_current;
185
- hasInteractedOutsideRef.current || (_context_triggerRef_current = context.triggerRef.current) === null || _context_triggerRef_current === void 0 || _context_triggerRef_current.focus(), hasInteractedOutsideRef.current = !1, event.preventDefault();
259
+ hasInteractedOutsideRef.current || requestAnimationFrame(function () {
260
+ var activeEl = document.activeElement;
261
+ if (!activeEl || activeEl === document.body) {
262
+ var _context_triggerRef_current;
263
+ (_context_triggerRef_current = context.triggerRef.current) === null || _context_triggerRef_current === void 0 || _context_triggerRef_current.focus();
264
+ }
265
+ }), hasInteractedOutsideRef.current = !1, event.preventDefault();
186
266
  }),
187
267
  onInteractOutside: (0, import_web.composeEventHandlers)(props.onInteractOutside, function (event) {
188
268
  var originalEvent = event.detail.originalEvent,
@@ -190,122 +270,17 @@ function createNonNativeMenu(params) {
190
270
  isRightClick = originalEvent.button === 2 || ctrlLeftClick;
191
271
  (!context.modal || isRightClick) && (hasInteractedOutsideRef.current = !0);
192
272
  }),
193
- ...props.style
273
+ style: import_web.isWeb ? {
274
+ ...props.style,
275
+ "--tamagui-menu-content-transform-origin": "var(--tamagui-popper-transform-origin)",
276
+ "--tamagui-menu-content-available-width": "var(--tamagui-popper-available-width)",
277
+ "--tamagui-menu-content-available-height": "var(--tamagui-popper-available-height)",
278
+ "--tamagui-menu-trigger-width": "var(--tamagui-popper-anchor-width)",
279
+ "--tamagui-menu-trigger-height": "var(--tamagui-popper-anchor-height)"
280
+ } : props.style
194
281
  });
195
282
  });
196
283
  MenuContent.displayName = CONTENT_NAME;
197
- var GROUP_NAME = "MenuGroup",
198
- MenuGroup = Menu.Group;
199
- MenuGroup.displayName = GROUP_NAME;
200
- var LABEL_NAME = "MenuLabel",
201
- MenuLabel = Menu.Label;
202
- MenuLabel.displayName = LABEL_NAME;
203
- var ITEM_NAME = "MenuItem",
204
- MenuItemFrame = Menu.Item,
205
- MenuItem = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
206
- var {
207
- scope,
208
- ...itemProps
209
- } = props;
210
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(MenuItemFrame, {
211
- componentName: ITEM_NAME,
212
- scope: scope || DROPDOWN_MENU_CONTEXT,
213
- ...itemProps,
214
- ref: forwardedRef
215
- });
216
- });
217
- MenuItem.displayName = ITEM_NAME;
218
- var ITEM_TITLE_NAME = "MenuItemTitle",
219
- MenuItemTitle = Menu.ItemTitle;
220
- MenuItemTitle.displayName = ITEM_TITLE_NAME;
221
- var ITEM_SUB_TITLE_NAME = "MenuItemSubTitle",
222
- MenuItemSubTitle = Menu.ItemSubtitle;
223
- MenuItemSubTitle.displayName = ITEM_SUB_TITLE_NAME;
224
- var ITEM_IMAGE_NAME = "MenuItemImage",
225
- MenuItemImage = Menu.ItemImage;
226
- MenuItemImage.displayName = ITEM_IMAGE_NAME;
227
- var ITEM_ICON_NAME = "MenuItemIcon",
228
- MenuItemIcon = Menu.ItemIcon;
229
- MenuItemIcon.displayName = ITEM_ICON_NAME;
230
- var CHECKBOX_ITEM_NAME = "MenuCheckboxItem",
231
- MenuCheckboxItemFrame = Menu.CheckboxItem,
232
- MenuCheckboxItem = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
233
- var {
234
- scope,
235
- ...checkboxItemProps
236
- } = props;
237
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(MenuCheckboxItemFrame, {
238
- componentName: CHECKBOX_ITEM_NAME,
239
- scope: scope || DROPDOWN_MENU_CONTEXT,
240
- ...checkboxItemProps,
241
- ref: forwardedRef
242
- });
243
- });
244
- MenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
245
- var RADIO_GROUP_NAME = "MenuRadioGroup",
246
- MenuRadioGroup = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
247
- var {
248
- scope,
249
- ...radioGroupProps
250
- } = props;
251
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.RadioGroup, {
252
- scope: scope || DROPDOWN_MENU_CONTEXT,
253
- ...radioGroupProps,
254
- ref: forwardedRef
255
- });
256
- });
257
- MenuRadioGroup.displayName = RADIO_GROUP_NAME;
258
- var RADIO_ITEM_NAME = "MenuRadioItem",
259
- MenuRadioItemFrame = Menu.RadioItem,
260
- MenuRadioItem = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
261
- var {
262
- scope,
263
- ...radioItemProps
264
- } = props;
265
- return (
266
- // @ts-ignore explanation: deeply nested types typescript limitation
267
- /* @__PURE__ */
268
- (0, import_jsx_runtime.jsx)(MenuRadioItemFrame, {
269
- componentName: RADIO_ITEM_NAME,
270
- scope: scope || DROPDOWN_MENU_CONTEXT,
271
- ...radioItemProps,
272
- ref: forwardedRef
273
- })
274
- );
275
- });
276
- MenuRadioItem.displayName = RADIO_ITEM_NAME;
277
- var INDICATOR_NAME = "MenuItemIndicator",
278
- MenuItemIndicatorFrame = Menu.ItemIndicator,
279
- MenuItemIndicator = MenuItemIndicatorFrame.styleable(function (props, forwardedRef) {
280
- var {
281
- scope,
282
- ...itemIndicatorProps
283
- } = props;
284
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(MenuItemIndicatorFrame, {
285
- componentName: INDICATOR_NAME,
286
- scope: scope || DROPDOWN_MENU_CONTEXT,
287
- ...itemIndicatorProps,
288
- ref: forwardedRef
289
- });
290
- });
291
- MenuItemIndicator.displayName = INDICATOR_NAME;
292
- var SEPARATOR_NAME = "MenuSeparator",
293
- MenuSeparator = Menu.Separator;
294
- MenuSeparator.displayName = SEPARATOR_NAME;
295
- var ARROW_NAME = "MenuArrow",
296
- MenuArrow = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
297
- var {
298
- scope,
299
- ...arrowProps
300
- } = props;
301
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.Arrow, {
302
- componentName: ARROW_NAME,
303
- scope: scope || DROPDOWN_MENU_CONTEXT,
304
- ...arrowProps,
305
- ref: forwardedRef
306
- });
307
- });
308
- MenuArrow.displayName = ARROW_NAME;
309
284
  var DROPDOWN_MENU_SUB_NAME = "MenuSub",
310
285
  MenuSub = function (props) {
311
286
  var {
@@ -330,21 +305,6 @@ function createNonNativeMenu(params) {
330
305
  });
331
306
  };
332
307
  MenuSub.displayName = DROPDOWN_MENU_SUB_NAME;
333
- var SUB_TRIGGER_NAME = "MenuSubTrigger",
334
- MenuSubTrigger = import_web.View.styleable(function (props, forwardedRef) {
335
- var {
336
- scope,
337
- asChild,
338
- ...subTriggerProps
339
- } = props;
340
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.SubTrigger, {
341
- componentName: SUB_TRIGGER_NAME,
342
- scope: scope || DROPDOWN_MENU_CONTEXT,
343
- ...subTriggerProps,
344
- ref: forwardedRef
345
- });
346
- });
347
- MenuSubTrigger.displayName = SUB_TRIGGER_NAME;
348
308
  var SUB_CONTENT_NAME = "MenuSubContent",
349
309
  MenuSubContent = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
350
310
  var {
@@ -366,31 +326,34 @@ function createNonNativeMenu(params) {
366
326
  });
367
327
  });
368
328
  MenuSubContent.displayName = SUB_CONTENT_NAME;
369
- var Root = MenuComp,
370
- Trigger = MenuTrigger,
371
- Portal = MenuPortal,
372
- Content = MenuContent,
373
- Group = MenuGroup,
374
- Label = MenuLabel,
375
- Item = MenuItem,
376
- CheckboxItem = MenuCheckboxItem,
377
- RadioGroup = MenuRadioGroup,
378
- RadioItem = MenuRadioItem,
379
- ItemIndicator = MenuItemIndicator,
380
- Separator = MenuSeparator,
381
- Arrow = MenuArrow,
382
- Sub = MenuSub,
383
- SubTrigger = MenuSubTrigger,
384
- SubContent = MenuSubContent,
385
- ItemTitle = MenuItemTitle,
386
- ItemSubtitle = MenuItemSubTitle,
387
- ItemImage = MenuItemImage,
388
- ItemIcon = MenuItemIcon;
329
+ var MenuScrollView = (0, import_web.styled)(import_scroll_view.ScrollView, {
330
+ flexShrink: 1,
331
+ alignSelf: "stretch",
332
+ showsHorizontalScrollIndicator: !1,
333
+ showsVerticalScrollIndicator: !1,
334
+ "$platform-web": {
335
+ maxHeight: "var(--tamagui-menu-content-available-height)"
336
+ }
337
+ }),
338
+ Group = Menu.Group,
339
+ Label = Menu.Label,
340
+ Item = Menu.Item,
341
+ CheckboxItem = Menu.CheckboxItem,
342
+ RadioGroup = Menu.RadioGroup,
343
+ RadioItem = Menu.RadioItem,
344
+ ItemIndicator = Menu.ItemIndicator,
345
+ Separator = Menu.Separator,
346
+ Arrow = Menu.Arrow,
347
+ SubTrigger = Menu.SubTrigger,
348
+ ItemTitle = Menu.ItemTitle,
349
+ ItemSubtitle = Menu.ItemSubtitle,
350
+ ItemImage = Menu.ItemImage,
351
+ ItemIcon = Menu.ItemIcon;
389
352
  return (0, import_web.withStaticProperties)(MenuComp, {
390
- Root,
391
- Trigger,
392
- Portal,
393
- Content,
353
+ Root: MenuComp,
354
+ Trigger: MenuTrigger,
355
+ Portal: MenuPortal,
356
+ Content: MenuContent,
394
357
  Group,
395
358
  Label,
396
359
  Item,
@@ -400,13 +363,14 @@ function createNonNativeMenu(params) {
400
363
  ItemIndicator,
401
364
  Separator,
402
365
  Arrow,
403
- Sub,
366
+ Sub: MenuSub,
404
367
  SubTrigger,
405
- SubContent,
368
+ SubContent: MenuSubContent,
406
369
  ItemTitle,
407
370
  ItemSubtitle,
408
371
  ItemImage,
409
- ItemIcon
372
+ ItemIcon,
373
+ ScrollView: MenuScrollView
410
374
  });
411
375
  }
412
376
  //# sourceMappingURL=createNonNativeMenu.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","createNonNativeMenu_exports","DROPDOWN_MENU_CONTEXT","createNonNativeMenu","module","exports","import_jsx_runtime","require","import_create_menu","import_use_controllable_state","import_web","React","import_react","_instanceof","left","right","Symbol","hasInstance","params","Menu","createBaseMenu","DROPDOWN_MENU_NAME","Provider","MenuProvider","useStyledContext","useMenuContext","createStyledContext","MenuComp","props","scope","children","dir","open","openProp","defaultOpen","onOpenChange","modal","rest","triggerRef","useRef","setOpen","useControllableState","prop","defaultProp","onChange","jsx","triggerId","useId","contentId","onOpenToggle","useCallback","prevOpen","displayName","TRIGGER_NAME","MenuTriggerFrame","Anchor","MenuTrigger","View","styleable","forwardedRef","asChild","disabled","onKeydown","triggerProps","context","Comp","Slot","isTouchDevice","useIsTouchDevice","pressEvent","isWeb","componentName","role","id","ref","composeRefs","composeEventHandlers","event","PointerEvent","button","ctrlKey","preventDefault","onKeyDown","includes","PORTAL_NAME","MenuPortal","portalProps","isAndroid","content","Portal","CONTENT_NAME","MenuContent","forwardRef","contentProps","hasInteractedOutsideRef","Content","onCloseAutoFocus","_context_triggerRef_current","current","focus","onInteractOutside","originalEvent","detail","ctrlLeftClick","isRightClick","style","GROUP_NAME","MenuGroup","Group","LABEL_NAME","MenuLabel","Label","ITEM_NAME","MenuItemFrame","Item","MenuItem","itemProps","ITEM_TITLE_NAME","MenuItemTitle","ItemTitle","ITEM_SUB_TITLE_NAME","MenuItemSubTitle","ItemSubtitle","ITEM_IMAGE_NAME","MenuItemImage","ItemImage","ITEM_ICON_NAME","MenuItemIcon","ItemIcon","CHECKBOX_ITEM_NAME","MenuCheckboxItemFrame","CheckboxItem","MenuCheckboxItem","checkboxItemProps","RADIO_GROUP_NAME","MenuRadioGroup","radioGroupProps","RadioGroup","RADIO_ITEM_NAME","MenuRadioItemFrame","RadioItem","MenuRadioItem","radioItemProps","INDICATOR_NAME","MenuItemIndicatorFrame","ItemIndicator","MenuItemIndicator","itemIndicatorProps","SEPARATOR_NAME","MenuSeparator","Separator","ARROW_NAME","MenuArrow","arrowProps","Arrow","DROPDOWN_MENU_SUB_NAME","MenuSub","Sub","SUB_TRIGGER_NAME","MenuSubTrigger","subTriggerProps","SubTrigger","SUB_CONTENT_NAME","MenuSubContent","subContentProps","SubContent","Root","Trigger","withStaticProperties"],"sources":["../../src/createNonNativeMenu.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","createNonNativeMenu_exports","DROPDOWN_MENU_CONTEXT","createNonNativeMenu","module","exports","import_jsx_runtime","require","import_create_menu","import_popper","import_scroll_view","import_use_controllable_state","import_web","React","import_react","_instanceof","left","right","Symbol","hasInstance","useMenuTriggerSetup","open","triggerStateSettersRef","useRef","Map","activeTriggerIdRef","setActiveTrigger","useEvent","id","prevId","current","_triggerStateSettersRef_current_get","_triggerStateSettersRef_current_get1","registerTrigger","setOpenState","set","unregisterTrigger","delete","useEffect","activeId","params","Menu","createBaseMenu","DROPDOWN_MENU_NAME","Provider","MenuProvider","useStyledContext","useMenuContext","createStyledContext","MenuComp","props","scope","children","dir","openProp","defaultOpen","onOpenChange","modal","rest","triggerRef","setOpen","useControllableState","prop","defaultProp","onChange","openRef","jsx","triggerId","useId","contentId","useCallback","nextOpen","onOpenToggle","prevOpen","displayName","TRIGGER_NAME","MenuTriggerFrame","Anchor","MenuTrigger","View","styleable","forwardedRef","asChild","disabled","onKeydown","triggerProps","context","popperCtx","usePopperContextSlow","Comp","Slot","isTouchDevice","useIsTouchDevice","triggerElRef","triggerOpen","setTriggerOpen","useState","activateSelf","el","HTMLElement","_popperCtx_refs","refs","setReference","requestAnimationFrame","_popperCtx_update","update","pressEvent","isWeb","componentName","role","ref","composeRefs","composeEventHandlers","event","PointerEvent","button","ctrlKey","preventDefault","onKeyDown","includes","PORTAL_NAME","MenuPortal","portalProps","isAndroid","content","Portal","CONTENT_NAME","MenuContent","forwardRef","contentProps","hasInteractedOutsideRef","Content","onCloseAutoFocus","activeEl","document","activeElement","body","_context_triggerRef_current","focus","onInteractOutside","originalEvent","detail","ctrlLeftClick","isRightClick","style","DROPDOWN_MENU_SUB_NAME","MenuSub","Sub","SUB_CONTENT_NAME","MenuSubContent","subContentProps","SubContent","MenuScrollView","styled","ScrollView","flexShrink","alignSelf","showsHorizontalScrollIndicator","showsVerticalScrollIndicator"],"sources":["../../src/createNonNativeMenu.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/jsx/index.js CHANGED
@@ -1,6 +1,5 @@
1
- import "@tamagui/polyfill-dev";
2
1
  import { MenuPredefined } from "@tamagui/create-menu";
3
- import { createMenu } from "./Menu";
2
+ import { createMenu } from "./Menu.mjs";
4
3
  const Menu = createMenu({
5
4
  Icon: MenuPredefined.MenuIcon,
6
5
  Image: MenuPredefined.MenuImage,
@@ -12,7 +11,5 @@ const Menu = createMenu({
12
11
  SubTitle: MenuPredefined.SubTitle,
13
12
  Title: MenuPredefined.Title
14
13
  });
15
- export {
16
- Menu
17
- };
14
+ export { Menu };
18
15
  //# sourceMappingURL=index.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/index.tsx"],
4
- "mappings": "AAAA,OAAO;AAEP,SAAS,sBAAsB;AAE/B,SAAS,kBAAkB;AAEpB,MAAM,OAAO,WAAW;AAAA,EAC7B,MAAM,eAAe;AAAA,EACrB,OAAO,eAAe;AAAA,EACtB,WAAW,eAAe;AAAA,EAC1B,MAAM,eAAe;AAAA,EACrB,OAAO,eAAe;AAAA,EACtB,WAAW,eAAe;AAAA,EAC1B,WAAW,eAAe;AAAA,EAC1B,UAAU,eAAe;AAAA,EACzB,OAAO,eAAe;AACxB,CAAC;",
5
- "names": []
6
- }
1
+ {"version":3,"names":["MenuPredefined","createMenu","Menu","Icon","MenuIcon","Image","MenuImage","Indicator","MenuIndicator","Item","MenuItem","Label","MenuLabel","MenuGroup","Separator","MenuSeparator","SubTitle","Title"],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAEA,SAASA,cAAA,QAAsB;AAE/B,SAASC,UAAA,QAAkB;AAEpB,MAAMC,IAAA,GAAOD,UAAA,CAAW;EAC7BE,IAAA,EAAMH,cAAA,CAAeI,QAAA;EACrBC,KAAA,EAAOL,cAAA,CAAeM,SAAA;EACtBC,SAAA,EAAWP,cAAA,CAAeQ,aAAA;EAC1BC,IAAA,EAAMT,cAAA,CAAeU,QAAA;EACrBC,KAAA,EAAOX,cAAA,CAAeY,SAAA;EACtBC,SAAA,EAAWb,cAAA,CAAea,SAAA;EAC1BC,SAAA,EAAWd,cAAA,CAAee,aAAA;EAC1BC,QAAA,EAAUhB,cAAA,CAAegB,QAAA;EACzBC,KAAA,EAAOjB,cAAA,CAAeiB;AACxB,CAAC","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import "@tamagui/polyfill-dev";
2
1
  import { MenuPredefined } from "@tamagui/create-menu";
3
2
  import { createMenu } from "./Menu.mjs";
4
3
  const Menu = createMenu({
@@ -1 +1 @@
1
- {"version":3,"names":["MenuPredefined","createMenu","Menu","Icon","MenuIcon","Image","MenuImage","Indicator","MenuIndicator","Item","MenuItem","Label","MenuLabel","MenuGroup","Separator","MenuSeparator","SubTitle","Title"],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAO;AAEP,SAASA,cAAA,QAAsB;AAE/B,SAASC,UAAA,QAAkB;AAEpB,MAAMC,IAAA,GAAOD,UAAA,CAAW;EAC7BE,IAAA,EAAMH,cAAA,CAAeI,QAAA;EACrBC,KAAA,EAAOL,cAAA,CAAeM,SAAA;EACtBC,SAAA,EAAWP,cAAA,CAAeQ,aAAA;EAC1BC,IAAA,EAAMT,cAAA,CAAeU,QAAA;EACrBC,KAAA,EAAOX,cAAA,CAAeY,SAAA;EACtBC,SAAA,EAAWb,cAAA,CAAea,SAAA;EAC1BC,SAAA,EAAWd,cAAA,CAAee,aAAA;EAC1BC,QAAA,EAAUhB,cAAA,CAAegB,QAAA;EACzBC,KAAA,EAAOjB,cAAA,CAAeiB;AACxB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["MenuPredefined","createMenu","Menu","Icon","MenuIcon","Image","MenuImage","Indicator","MenuIndicator","Item","MenuItem","Label","MenuLabel","MenuGroup","Separator","MenuSeparator","SubTitle","Title"],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAEA,SAASA,cAAA,QAAsB;AAE/B,SAASC,UAAA,QAAkB;AAEpB,MAAMC,IAAA,GAAOD,UAAA,CAAW;EAC7BE,IAAA,EAAMH,cAAA,CAAeI,QAAA;EACrBC,KAAA,EAAOL,cAAA,CAAeM,SAAA;EACtBC,SAAA,EAAWP,cAAA,CAAeQ,aAAA;EAC1BC,IAAA,EAAMT,cAAA,CAAeU,QAAA;EACrBC,KAAA,EAAOX,cAAA,CAAeY,SAAA;EACtBC,SAAA,EAAWb,cAAA,CAAea,SAAA;EAC1BC,SAAA,EAAWd,cAAA,CAAee,aAAA;EAC1BC,QAAA,EAAUhB,cAAA,CAAegB,QAAA;EACzBC,KAAA,EAAOjB,cAAA,CAAeiB;AACxB,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/menu",
3
- "version": "2.0.0-rc.3",
3
+ "version": "2.0.0-rc.30",
4
4
  "gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
5
5
  "source": "src/index.tsx",
6
6
  "files": [
@@ -19,15 +19,12 @@
19
19
  "./package.json": "./package.json",
20
20
  ".": {
21
21
  "types": "./types/index.d.ts",
22
- "react-native": {
23
- "module": "./dist/esm/index.native.js",
24
- "import": "./dist/esm/index.native.js",
25
- "require": "./dist/cjs/index.native.js"
26
- },
22
+ "react-native": "./dist/esm/index.native.js",
23
+ "browser": "./dist/esm/index.mjs",
27
24
  "module": "./dist/esm/index.mjs",
28
25
  "import": "./dist/esm/index.mjs",
29
26
  "require": "./dist/cjs/index.cjs",
30
- "default": "./dist/cjs/index.native.js"
27
+ "default": "./dist/esm/index.mjs"
31
28
  }
32
29
  },
33
30
  "publishConfig": {
@@ -40,15 +37,16 @@
40
37
  "clean:build": "tamagui-build clean:build"
41
38
  },
42
39
  "dependencies": {
43
- "@tamagui/core": "2.0.0-rc.3",
44
- "@tamagui/create-menu": "2.0.0-rc.3",
45
- "@tamagui/helpers": "2.0.0-rc.3",
46
- "@tamagui/popover": "2.0.0-rc.3",
47
- "@tamagui/use-controllable-state": "2.0.0-rc.3",
48
- "@tamagui/web": "2.0.0-rc.3"
40
+ "@tamagui/core": "2.0.0-rc.30",
41
+ "@tamagui/create-menu": "2.0.0-rc.30",
42
+ "@tamagui/helpers": "2.0.0-rc.30",
43
+ "@tamagui/popover": "2.0.0-rc.30",
44
+ "@tamagui/popper": "2.0.0-rc.30",
45
+ "@tamagui/use-controllable-state": "2.0.0-rc.30",
46
+ "@tamagui/web": "2.0.0-rc.30"
49
47
  },
50
48
  "devDependencies": {
51
- "@tamagui/build": "2.0.0-rc.3",
49
+ "@tamagui/build": "2.0.0-rc.30",
52
50
  "react": ">=19"
53
51
  },
54
52
  "peerDependencies": {
package/src/Menu.tsx CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  createNativeMenu,
4
4
  withNativeMenu,
5
5
  } from '@tamagui/create-menu'
6
- import { withStaticProperties } from '@tamagui/web'
6
+ import { isWeb, withStaticProperties } from '@tamagui/web'
7
7
  import React from 'react'
8
8
  import { DROPDOWN_MENU_CONTEXT, createNonNativeMenu } from './createNonNativeMenu'
9
9
 
@@ -84,12 +84,12 @@ export function createMenu(params: CreateBaseMenuProps) {
84
84
  const RadioGroup = withNativeMenu({
85
85
  ...COMMON_PARAMS,
86
86
  Component: NonNativeMenu.RadioGroup,
87
- NativeComponent: ({ children }) => children,
87
+ NativeComponent: ({ children }: { children: React.ReactNode }) => <>{children}</>,
88
88
  })
89
89
  const RadioItem = withNativeMenu({
90
90
  ...COMMON_PARAMS,
91
91
  Component: NonNativeMenu.RadioItem,
92
- NativeComponent: ({ children }) => children,
92
+ NativeComponent: ({ children }: { children: React.ReactNode }) => <>{children}</>,
93
93
  })
94
94
  const ItemIndicator = withNativeMenu({
95
95
  ...COMMON_PARAMS,
@@ -122,6 +122,13 @@ export function createMenu(params: CreateBaseMenuProps) {
122
122
  NativeComponent: NativeMenuRoot.SubContent,
123
123
  })
124
124
 
125
+ // on native, ScrollView is just a passthrough since native menus handle overflow
126
+ const NativeScrollView = ({ children }: { children: React.ReactNode }) => (
127
+ <>{children}</>
128
+ )
129
+ NativeScrollView.displayName = 'MenuScrollView'
130
+ const ScrollView = isWeb ? NonNativeMenu.ScrollView : NativeScrollView
131
+
125
132
  const Menu = withStaticProperties(MenuComp, {
126
133
  Trigger,
127
134
  Portal,
@@ -142,6 +149,7 @@ export function createMenu(params: CreateBaseMenuProps) {
142
149
  ItemSubtitle,
143
150
  ItemIcon,
144
151
  ItemImage,
152
+ ScrollView,
145
153
  } as const)
146
154
  return Menu
147
155
  }