@tamagui/create-menu 1.0.1

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 (143) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/MenuPredefined.cjs +189 -0
  3. package/dist/cjs/MenuPredefined.js +168 -0
  4. package/dist/cjs/MenuPredefined.js.map +6 -0
  5. package/dist/cjs/MenuPredefined.native.js +192 -0
  6. package/dist/cjs/MenuPredefined.native.js.map +1 -0
  7. package/dist/cjs/createBaseMenu.cjs +1147 -0
  8. package/dist/cjs/createBaseMenu.js +884 -0
  9. package/dist/cjs/createBaseMenu.js.map +6 -0
  10. package/dist/cjs/createBaseMenu.native.js +1346 -0
  11. package/dist/cjs/createBaseMenu.native.js.map +1 -0
  12. package/dist/cjs/createNativeMenu/createNativeMenu.cjs +242 -0
  13. package/dist/cjs/createNativeMenu/createNativeMenu.js +184 -0
  14. package/dist/cjs/createNativeMenu/createNativeMenu.js.map +6 -0
  15. package/dist/cjs/createNativeMenu/createNativeMenu.native.js +307 -0
  16. package/dist/cjs/createNativeMenu/createNativeMenu.native.js.map +1 -0
  17. package/dist/cjs/createNativeMenu/createNativeMenuTypes.cjs +16 -0
  18. package/dist/cjs/createNativeMenu/createNativeMenuTypes.js +14 -0
  19. package/dist/cjs/createNativeMenu/createNativeMenuTypes.js.map +6 -0
  20. package/dist/cjs/createNativeMenu/createNativeMenuTypes.native.js +19 -0
  21. package/dist/cjs/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
  22. package/dist/cjs/createNativeMenu/utils.cjs +68 -0
  23. package/dist/cjs/createNativeMenu/utils.js +66 -0
  24. package/dist/cjs/createNativeMenu/utils.js.map +6 -0
  25. package/dist/cjs/createNativeMenu/utils.native.js +94 -0
  26. package/dist/cjs/createNativeMenu/utils.native.js.map +1 -0
  27. package/dist/cjs/createNativeMenu/withNativeMenu.cjs +37 -0
  28. package/dist/cjs/createNativeMenu/withNativeMenu.js +30 -0
  29. package/dist/cjs/createNativeMenu/withNativeMenu.js.map +6 -0
  30. package/dist/cjs/createNativeMenu/withNativeMenu.native.js +43 -0
  31. package/dist/cjs/createNativeMenu/withNativeMenu.native.js.map +1 -0
  32. package/dist/cjs/index.cjs +30 -0
  33. package/dist/cjs/index.js +24 -0
  34. package/dist/cjs/index.js.map +6 -0
  35. package/dist/cjs/index.native.js +33 -0
  36. package/dist/cjs/index.native.js.map +1 -0
  37. package/dist/esm/MenuPredefined.js +154 -0
  38. package/dist/esm/MenuPredefined.js.map +6 -0
  39. package/dist/esm/MenuPredefined.mjs +166 -0
  40. package/dist/esm/MenuPredefined.mjs.map +1 -0
  41. package/dist/esm/MenuPredefined.native.js +166 -0
  42. package/dist/esm/MenuPredefined.native.js.map +1 -0
  43. package/dist/esm/createBaseMenu.js +892 -0
  44. package/dist/esm/createBaseMenu.js.map +6 -0
  45. package/dist/esm/createBaseMenu.mjs +1113 -0
  46. package/dist/esm/createBaseMenu.mjs.map +1 -0
  47. package/dist/esm/createBaseMenu.native.js +1309 -0
  48. package/dist/esm/createBaseMenu.native.js.map +1 -0
  49. package/dist/esm/createNativeMenu/createNativeMenu.js +163 -0
  50. package/dist/esm/createNativeMenu/createNativeMenu.js.map +6 -0
  51. package/dist/esm/createNativeMenu/createNativeMenu.mjs +208 -0
  52. package/dist/esm/createNativeMenu/createNativeMenu.mjs.map +1 -0
  53. package/dist/esm/createNativeMenu/createNativeMenu.native.js +270 -0
  54. package/dist/esm/createNativeMenu/createNativeMenu.native.js.map +1 -0
  55. package/dist/esm/createNativeMenu/createNativeMenuTypes.js +1 -0
  56. package/dist/esm/createNativeMenu/createNativeMenuTypes.js.map +6 -0
  57. package/dist/esm/createNativeMenu/createNativeMenuTypes.mjs +2 -0
  58. package/dist/esm/createNativeMenu/createNativeMenuTypes.mjs.map +1 -0
  59. package/dist/esm/createNativeMenu/createNativeMenuTypes.native.js +2 -0
  60. package/dist/esm/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
  61. package/dist/esm/createNativeMenu/utils.js +47 -0
  62. package/dist/esm/createNativeMenu/utils.js.map +6 -0
  63. package/dist/esm/createNativeMenu/utils.mjs +29 -0
  64. package/dist/esm/createNativeMenu/utils.mjs.map +1 -0
  65. package/dist/esm/createNativeMenu/utils.native.js +52 -0
  66. package/dist/esm/createNativeMenu/utils.native.js.map +1 -0
  67. package/dist/esm/createNativeMenu/withNativeMenu.js +15 -0
  68. package/dist/esm/createNativeMenu/withNativeMenu.js.map +6 -0
  69. package/dist/esm/createNativeMenu/withNativeMenu.mjs +14 -0
  70. package/dist/esm/createNativeMenu/withNativeMenu.mjs.map +1 -0
  71. package/dist/esm/createNativeMenu/withNativeMenu.native.js +17 -0
  72. package/dist/esm/createNativeMenu/withNativeMenu.native.js.map +1 -0
  73. package/dist/esm/index.js +8 -0
  74. package/dist/esm/index.js.map +6 -0
  75. package/dist/esm/index.mjs +6 -0
  76. package/dist/esm/index.mjs.map +1 -0
  77. package/dist/esm/index.native.js +6 -0
  78. package/dist/esm/index.native.js.map +1 -0
  79. package/dist/jsx/MenuPredefined.js +154 -0
  80. package/dist/jsx/MenuPredefined.js.map +6 -0
  81. package/dist/jsx/MenuPredefined.mjs +166 -0
  82. package/dist/jsx/MenuPredefined.mjs.map +1 -0
  83. package/dist/jsx/MenuPredefined.native.js +192 -0
  84. package/dist/jsx/MenuPredefined.native.js.map +1 -0
  85. package/dist/jsx/createBaseMenu.js +892 -0
  86. package/dist/jsx/createBaseMenu.js.map +6 -0
  87. package/dist/jsx/createBaseMenu.mjs +1113 -0
  88. package/dist/jsx/createBaseMenu.mjs.map +1 -0
  89. package/dist/jsx/createBaseMenu.native.js +1346 -0
  90. package/dist/jsx/createBaseMenu.native.js.map +1 -0
  91. package/dist/jsx/createNativeMenu/createNativeMenu.js +163 -0
  92. package/dist/jsx/createNativeMenu/createNativeMenu.js.map +6 -0
  93. package/dist/jsx/createNativeMenu/createNativeMenu.mjs +208 -0
  94. package/dist/jsx/createNativeMenu/createNativeMenu.mjs.map +1 -0
  95. package/dist/jsx/createNativeMenu/createNativeMenu.native.js +307 -0
  96. package/dist/jsx/createNativeMenu/createNativeMenu.native.js.map +1 -0
  97. package/dist/jsx/createNativeMenu/createNativeMenuTypes.js +1 -0
  98. package/dist/jsx/createNativeMenu/createNativeMenuTypes.js.map +6 -0
  99. package/dist/jsx/createNativeMenu/createNativeMenuTypes.mjs +2 -0
  100. package/dist/jsx/createNativeMenu/createNativeMenuTypes.mjs.map +1 -0
  101. package/dist/jsx/createNativeMenu/createNativeMenuTypes.native.js +19 -0
  102. package/dist/jsx/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
  103. package/dist/jsx/createNativeMenu/utils.js +47 -0
  104. package/dist/jsx/createNativeMenu/utils.js.map +6 -0
  105. package/dist/jsx/createNativeMenu/utils.mjs +29 -0
  106. package/dist/jsx/createNativeMenu/utils.mjs.map +1 -0
  107. package/dist/jsx/createNativeMenu/utils.native.js +94 -0
  108. package/dist/jsx/createNativeMenu/utils.native.js.map +1 -0
  109. package/dist/jsx/createNativeMenu/withNativeMenu.js +15 -0
  110. package/dist/jsx/createNativeMenu/withNativeMenu.js.map +6 -0
  111. package/dist/jsx/createNativeMenu/withNativeMenu.mjs +14 -0
  112. package/dist/jsx/createNativeMenu/withNativeMenu.mjs.map +1 -0
  113. package/dist/jsx/createNativeMenu/withNativeMenu.native.js +43 -0
  114. package/dist/jsx/createNativeMenu/withNativeMenu.native.js.map +1 -0
  115. package/dist/jsx/index.js +8 -0
  116. package/dist/jsx/index.js.map +6 -0
  117. package/dist/jsx/index.mjs +6 -0
  118. package/dist/jsx/index.mjs.map +1 -0
  119. package/dist/jsx/index.native.js +33 -0
  120. package/dist/jsx/index.native.js.map +1 -0
  121. package/package.json +69 -0
  122. package/src/MenuPredefined.tsx +204 -0
  123. package/src/createBaseMenu.tsx +2031 -0
  124. package/src/createNativeMenu/createNativeMenu.tsx +400 -0
  125. package/src/createNativeMenu/createNativeMenuTypes.ts +214 -0
  126. package/src/createNativeMenu/utils.tsx +150 -0
  127. package/src/createNativeMenu/withNativeMenu.tsx +39 -0
  128. package/src/index.tsx +5 -0
  129. package/types/MenuPredefined.d.ts +31 -0
  130. package/types/MenuPredefined.d.ts.map +1 -0
  131. package/types/createBaseMenu.d.ts +298 -0
  132. package/types/createBaseMenu.d.ts.map +1 -0
  133. package/types/createNativeMenu/createNativeMenu.d.ts +42 -0
  134. package/types/createNativeMenu/createNativeMenu.d.ts.map +1 -0
  135. package/types/createNativeMenu/createNativeMenuTypes.d.ts +188 -0
  136. package/types/createNativeMenu/createNativeMenuTypes.d.ts.map +1 -0
  137. package/types/createNativeMenu/index.d.ts +4 -0
  138. package/types/createNativeMenu/utils.d.ts +38 -0
  139. package/types/createNativeMenu/utils.d.ts.map +1 -0
  140. package/types/createNativeMenu/withNativeMenu.d.ts +9 -0
  141. package/types/createNativeMenu/withNativeMenu.d.ts.map +1 -0
  142. package/types/index.d.ts +6 -0
  143. package/types/index.d.ts.map +1 -0
@@ -0,0 +1,307 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf,
8
+ __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: !0
13
+ });
14
+ },
15
+ __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
17
+ get: () => from[key],
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
+ value: mod,
29
+ enumerable: !0
30
+ }) : target, mod)),
31
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: !0
33
+ }), mod);
34
+ var createNativeMenu_exports = {};
35
+ __export(createNativeMenu_exports, {
36
+ createNativeMenu: () => createNativeMenu
37
+ });
38
+ module.exports = __toCommonJS(createNativeMenu_exports);
39
+ var import_jsx_runtime = require("react/jsx-runtime"),
40
+ import_native = require("@tamagui/native"),
41
+ import_web = require("@tamagui/web"),
42
+ import_react = __toESM(require("react"), 1),
43
+ createNativeMenu = function (MenuType) {
44
+ if (import_web.isWeb) {
45
+ var Menu = {},
46
+ Trigger = {},
47
+ Content = {},
48
+ Preview = {},
49
+ Item = {},
50
+ ItemIcon = {},
51
+ ItemImage = {},
52
+ SubTrigger = {},
53
+ ItemTitle = {},
54
+ ItemSubtitle = {},
55
+ Group = {},
56
+ Separator = {},
57
+ CheckboxItem = {},
58
+ ItemIndicator = {},
59
+ Label = {},
60
+ Arrow = {},
61
+ Sub = {},
62
+ SubContent = {},
63
+ Portal = {},
64
+ RadioGroup = {},
65
+ RadioItem = {},
66
+ Auxiliary = {};
67
+ return {
68
+ Menu: (0, import_web.withStaticProperties)(Menu, {
69
+ Trigger,
70
+ Content,
71
+ Item,
72
+ ItemTitle,
73
+ ItemSubtitle,
74
+ SubTrigger,
75
+ Group,
76
+ ItemIcon,
77
+ Separator,
78
+ CheckboxItem,
79
+ ItemIndicator,
80
+ ItemImage,
81
+ Label,
82
+ Arrow,
83
+ Sub,
84
+ SubContent,
85
+ Preview,
86
+ Portal,
87
+ RadioGroup,
88
+ RadioItem,
89
+ Auxiliary
90
+ })
91
+ };
92
+ }
93
+ var zeego = (0, import_native.getZeego)();
94
+ if (!zeego.isEnabled) return console.warn("Warning: Must call import '@tamagui/native/setup-zeego' at your app entry point to use native menus"), {
95
+ Menu: {}
96
+ };
97
+ var {
98
+ DropdownMenu: ZeegoDropdownMenu,
99
+ ContextMenu: ZeegoContextMenu
100
+ } = zeego.state,
101
+ isContextMenu = MenuType === "ContextMenu",
102
+ ZeegoMenu = isContextMenu ? ZeegoContextMenu : ZeegoDropdownMenu,
103
+ COMPONENT_MAP = {
104
+ SubContent: ZeegoMenu.SubContent,
105
+ Content: ZeegoMenu.Content,
106
+ Sub: ZeegoMenu.Sub,
107
+ Group: ZeegoMenu.Group,
108
+ SubTrigger: ZeegoMenu.SubTrigger
109
+ },
110
+ CONTAINER_TYPES = ["SubContent", "Content", "Sub", "Group"],
111
+ getComponentType = function (displayName) {
112
+ for (var _i = 0, _iter = ["SubContent", "SubTrigger", "Content", "Sub", "Group", "CheckboxItem"]; _i < _iter.length; _i++) {
113
+ var type = _iter[_i];
114
+ if (displayName === type || displayName.includes(`(${type})`)) return type;
115
+ }
116
+ return null;
117
+ },
118
+ isItemLike = function (props, displayName) {
119
+ return getComponentType(displayName) ? !1 : "onSelect" in props || "textValue" in props;
120
+ },
121
+ isPortal = function (displayName) {
122
+ return displayName === "Portal" || displayName.includes("Portal");
123
+ },
124
+ transformForZeego = function (children) {
125
+ var shouldReverseOnIos = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1,
126
+ result = [];
127
+ return import_react.default.Children.forEach(children, function (child) {
128
+ var _child_type;
129
+ if (! /* @__PURE__ */import_react.default.isValidElement(child)) {
130
+ result.push(child);
131
+ return;
132
+ }
133
+ var displayName = ((_child_type = child.type) === null || _child_type === void 0 ? void 0 : _child_type.displayName) || "",
134
+ props = child.props;
135
+ if (isPortal(displayName)) {
136
+ var portalChildren = transformForZeego(props.children, !1);
137
+ import_react.default.Children.forEach(portalChildren, function (c) {
138
+ return result.push(c);
139
+ });
140
+ return;
141
+ }
142
+ if (displayName.includes("ScrollView")) {
143
+ var scrollChildren = transformForZeego(props.children, !1);
144
+ import_react.default.Children.forEach(scrollChildren, function (c) {
145
+ return result.push(c);
146
+ });
147
+ return;
148
+ }
149
+ var componentType = getComponentType(displayName);
150
+ if (componentType === "CheckboxItem") {
151
+ var {
152
+ checked,
153
+ onCheckedChange,
154
+ value,
155
+ onValueChange,
156
+ children: _$children,
157
+ ...rest
158
+ } = props,
159
+ finalValue = value ?? (checked ? "on" : "off"),
160
+ finalOnValueChange = onValueChange ?? (onCheckedChange && function (v) {
161
+ return onCheckedChange(v === "on");
162
+ }),
163
+ cleanChildren = import_react.default.Children.map(_$children, function (child2) {
164
+ var _child_type2;
165
+ if (! /* @__PURE__ */import_react.default.isValidElement(child2)) return child2;
166
+ var childDisplayName = ((_child_type2 = child2.type) === null || _child_type2 === void 0 ? void 0 : _child_type2.displayName) || "";
167
+ return childDisplayName.includes("ItemIndicator") ? null : child2;
168
+ });
169
+ result.push(/* @__PURE__ */import_react.default.createElement(ZeegoMenu.CheckboxItem, {
170
+ ...rest,
171
+ key: child.key,
172
+ value: finalValue,
173
+ onValueChange: finalOnValueChange
174
+ }, cleanChildren));
175
+ return;
176
+ }
177
+ if (componentType) {
178
+ var {
179
+ children: childChildren,
180
+ ...restProps
181
+ } = props,
182
+ isContainer = CONTAINER_TYPES.includes(componentType),
183
+ shouldReverseChildren = componentType === "Content" || componentType === "SubContent";
184
+ result.push(/* @__PURE__ */import_react.default.createElement(COMPONENT_MAP[componentType], {
185
+ ...restProps,
186
+ key: child.key
187
+ }, isContainer ? transformForZeego(childChildren, shouldReverseChildren) : childChildren));
188
+ return;
189
+ }
190
+ if (isItemLike(props, displayName)) {
191
+ var {
192
+ children: itemChildren,
193
+ ...itemProps
194
+ } = props;
195
+ result.push(/* @__PURE__ */import_react.default.createElement(ZeegoMenu.Item, {
196
+ ...itemProps,
197
+ key: child.key
198
+ }, itemChildren));
199
+ return;
200
+ }
201
+ result.push(child);
202
+ }), import_web.isIos && shouldReverseOnIos && !isContextMenu && result.reverse(), result;
203
+ },
204
+ Trigger1 = ZeegoMenu.Trigger,
205
+ Content1 = ZeegoMenu.Content,
206
+ Item1 = ZeegoMenu.Item,
207
+ ItemTitle1 = ZeegoMenu.ItemTitle,
208
+ ItemSubtitle1 = ZeegoMenu.ItemSubtitle,
209
+ ItemIcon1 = ZeegoMenu.ItemIcon,
210
+ ItemImage1 = ZeegoMenu.ItemImage,
211
+ ItemIndicator1 = ZeegoMenu.ItemIndicator,
212
+ Group1 = ZeegoMenu.Group,
213
+ Label1 = ZeegoMenu.Label,
214
+ Separator1 = ZeegoMenu.Separator,
215
+ Sub1 = ZeegoMenu.Sub,
216
+ SubTrigger1 = ZeegoMenu.SubTrigger,
217
+ SubContent1 = ZeegoMenu.SubContent,
218
+ Portal1 = function (param) {
219
+ var {
220
+ children
221
+ } = param;
222
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
223
+ children
224
+ });
225
+ };
226
+ Portal1.displayName = "Portal";
227
+ var Arrow1 = function () {
228
+ return null;
229
+ };
230
+ Arrow1.displayName = "Arrow";
231
+ var RadioGroup1 = function (param) {
232
+ var {
233
+ children
234
+ } = param;
235
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
236
+ children
237
+ });
238
+ };
239
+ RadioGroup1.displayName = `${MenuType}RadioGroup`;
240
+ var RadioItem1 = function (param) {
241
+ var {
242
+ children
243
+ } = param;
244
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
245
+ children
246
+ });
247
+ };
248
+ RadioItem1.displayName = `${MenuType}RadioItem`;
249
+ var CheckboxItem1 = function (props) {
250
+ return null;
251
+ };
252
+ CheckboxItem1.displayName = "CheckboxItem";
253
+ var Preview1 = isContextMenu ? ZeegoContextMenu.Preview : function () {
254
+ return null;
255
+ };
256
+ Preview1.displayName = `${MenuType}Preview`;
257
+ var Auxiliary1 = isContextMenu ? ZeegoContextMenu.Auxiliary : function () {
258
+ return null;
259
+ };
260
+ Auxiliary1.displayName = `${MenuType}Auxiliary`;
261
+ var isAndroid = !import_web.isIos && !import_web.isWeb,
262
+ Menu1 = function (param) {
263
+ var {
264
+ children,
265
+ onOpenChange,
266
+ onOpenWillChange
267
+ } = param,
268
+ rootProps = {
269
+ onOpenChange
270
+ };
271
+ isContextMenu && onOpenWillChange && (rootProps.onOpenWillChange = onOpenWillChange);
272
+ var content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ZeegoMenu.Root, {
273
+ ...rootProps,
274
+ children: transformForZeego(children)
275
+ });
276
+ return isAndroid ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_native.NativeMenuContext.Provider, {
277
+ value: !0,
278
+ children: content
279
+ }) : content;
280
+ };
281
+ return Menu1.displayName = MenuType, {
282
+ Menu: (0, import_web.withStaticProperties)(Menu1, {
283
+ Trigger: Trigger1,
284
+ Content: Content1,
285
+ Item: Item1,
286
+ ItemTitle: ItemTitle1,
287
+ ItemSubtitle: ItemSubtitle1,
288
+ ItemIcon: ItemIcon1,
289
+ ItemImage: ItemImage1,
290
+ ItemIndicator: ItemIndicator1,
291
+ Group: Group1,
292
+ Label: Label1,
293
+ Separator: Separator1,
294
+ Sub: Sub1,
295
+ SubTrigger: SubTrigger1,
296
+ SubContent: SubContent1,
297
+ CheckboxItem: CheckboxItem1,
298
+ Portal: Portal1,
299
+ RadioGroup: RadioGroup1,
300
+ RadioItem: RadioItem1,
301
+ Arrow: Arrow1,
302
+ Preview: Preview1,
303
+ Auxiliary: Auxiliary1
304
+ })
305
+ };
306
+ };
307
+ //# sourceMappingURL=createNativeMenu.native.js.map
@@ -0,0 +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","createNativeMenu_exports","createNativeMenu","module","exports","import_jsx_runtime","require","import_native","import_web","import_react","MenuType","isWeb","Menu","Trigger","Content","Preview","Item","ItemIcon","ItemImage","SubTrigger","ItemTitle","ItemSubtitle","Group","Separator","CheckboxItem","ItemIndicator","Label","Arrow","Sub","SubContent","Portal","RadioGroup","RadioItem","Auxiliary","withStaticProperties","zeego","getZeego","isEnabled","console","warn","DropdownMenu","ZeegoDropdownMenu","ContextMenu","ZeegoContextMenu","state","isContextMenu","ZeegoMenu","COMPONENT_MAP","CONTAINER_TYPES","getComponentType","displayName","_i","_iter","length","type","includes","isItemLike","props","isPortal","transformForZeego","children","shouldReverseOnIos","arguments","result","default","Children","forEach","child","_child_type","isValidElement","push","portalChildren","c","scrollChildren","componentType","checked","onCheckedChange","onValueChange","_$children","rest","finalValue","finalOnValueChange","v","cleanChildren","map","child2","_child_type2","childDisplayName","createElement","childChildren","restProps","isContainer","shouldReverseChildren","itemChildren","itemProps","isIos","reverse","Trigger1","Content1","Item1","ItemTitle1","ItemSubtitle1","ItemIcon1","ItemImage1","ItemIndicator1","Group1","Label1","Separator1","Sub1","SubTrigger1","SubContent1","Portal1","param","jsx","Fragment","Arrow1"],"sources":["../../../src/createNativeMenu/createNativeMenu.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=createNativeMenuTypes.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "mappings": "",
5
+ "names": []
6
+ }
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=createNativeMenuTypes.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __copyProps = (to, from, except, desc) => {
8
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
9
+ get: () => from[key],
10
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
11
+ });
12
+ return to;
13
+ };
14
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
15
+ value: !0
16
+ }), mod);
17
+ var createNativeMenuTypes_exports = {};
18
+ module.exports = __toCommonJS(createNativeMenuTypes_exports);
19
+ //# sourceMappingURL=createNativeMenuTypes.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ import React, {
2
+ Children,
3
+ cloneElement,
4
+ isValidElement
5
+ } from "react";
6
+ import { jsx } from "react/jsx-runtime";
7
+ function flattenChildrenKeyless(children) {
8
+ return React.Children.toArray(children).reduce((flatChildren, child) => child.type === React.Fragment ? flatChildren.concat(
9
+ flattenChildren(child.props.children)
10
+ ) : (flatChildren.push(child), flatChildren), []);
11
+ }
12
+ function flattenChildren(children, componentNamesToIgnore, depth = 0, keys = []) {
13
+ return Children.toArray(children).flatMap((elem) => isValidElement(elem) && typeof elem?.type == "function" && componentNamesToIgnore?.some(
14
+ (skipComponentName) => elem.type.displayName.includes(skipComponentName)
15
+ ) ? elem.props.children : elem).reduce((acc, node, nodeIndex) => (node.type === React.Fragment ? acc.push.apply(
16
+ acc,
17
+ flattenChildren(
18
+ node.props.children,
19
+ componentNamesToIgnore,
20
+ depth + 1,
21
+ keys.concat(node.key || nodeIndex)
22
+ )
23
+ ) : isValidElement(node) ? acc.push(
24
+ cloneElement(node, {
25
+ key: keys.concat(String(node.key)).join(".")
26
+ })
27
+ ) : (typeof node == "string" || typeof node == "number") && acc.push(node), acc), []);
28
+ }
29
+ const pickChildren = (_children, targetChild, componentNamesToIgnore) => {
30
+ const children = flattenChildren(_children, componentNamesToIgnore), target = [], withoutTargetChildren = React.Children.map(children, (item) => isValidElement(item) && isInstanceOfComponent(item, targetChild) ? (target.push(cloneElement(item)), null) : item);
31
+ return {
32
+ targetChildren: target.length >= 0 ? target : void 0,
33
+ withoutTargetChildren
34
+ };
35
+ }, isInstanceOfComponent = (element, targetElement) => element?.type === targetElement || typeof element?.type == "function" && (element?.type?.displayName === targetElement.displayName || element?.type?.displayName === targetElement.displayName + "Wrapper"), filterNull = (t) => t != null, create = (Component, displayName) => {
36
+ const MenuComponent = (props) => /* @__PURE__ */ jsx(Component, { ...props });
37
+ return MenuComponent.displayName = displayName, MenuComponent;
38
+ };
39
+ export {
40
+ create,
41
+ filterNull,
42
+ flattenChildren,
43
+ flattenChildrenKeyless,
44
+ isInstanceOfComponent,
45
+ pickChildren
46
+ };
47
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/createNativeMenu/utils.tsx"],
4
+ "mappings": "AA0BA,OAAO;AAAA,EACL;AAAA,EAGA;AAAA,EACA;AAAA,OACK;AAgHI;AA5GJ,SAAS,uBAAuB,UAAsC;AAE3E,SADsB,MAAM,SAAS,QAAQ,QAAQ,EAChC,OAAO,CAAC,cAA+B,UACrD,MAAkC,SAAS,MAAM,WAC7C,aAAa;AAAA,IAClB,gBAAiB,MAAkC,MAAM,QAAQ;AAAA,EACnE,KAEF,aAAa,KAAK,KAAK,GAChB,eACN,CAAC,CAAC;AACP;AAEO,SAAS,gBACd,UACA,wBACA,QAAQ,GACR,OAA4B,CAAC,GAChB;AACb,SAAO,SAAS,QAAQ,QAAQ,EAC7B,QAAQ,CAAC,SACJ,eAAe,IAAI,KAEnB,OAAQ,MAAc,QAAQ,cAC9B,wBAAwB;AAAA,IAAK,CAAC,sBAC3B,KAAK,KAAa,YAAY,SAAS,iBAAiB;AAAA,EAC3D,IAEQ,KAAa,MAAM,WAGxB,IACR,EACA,OAAO,CAAC,KAAkB,MAAW,eAChC,KAAK,SAAS,MAAM,WACtB,IAAI,KAAK;AAAA,IACP;AAAA,IACA;AAAA,MACE,KAAK,MAAM;AAAA,MACX;AAAA,MACA,QAAQ;AAAA,MACR,KAAK,OAAO,KAAK,OAAO,SAAS;AAAA,IACnC;AAAA,EACF,IAEI,eAAe,IAAI,IACrB,IAAI;AAAA,IACF,aAAa,MAAM;AAAA,MACjB,KAAK,KAAK,OAAO,OAAO,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG;AAAA,IAC7C,CAAC;AAAA,EACH,KACS,OAAO,QAAS,YAAY,OAAO,QAAS,aACrD,IAAI,KAAK,IAAI,GAGV,MACN,CAAC,CAAC;AACT;AAEO,MAAM,eAAe,CAC1B,WACA,aACA,2BACG;AACH,QAAM,WAAW,gBAAgB,WAAW,sBAAsB,GAC5D,SAAgC,CAAC,GACjC,wBAAwB,MAAM,SAAS,IAAI,UAAU,CAAC,SACrD,eAAe,IAAI,KACpB,sBAAsB,MAAM,WAAW,KAEzC,OAAO,KAAK,aAAa,IAAI,CAAC,GACvB,QAJyB,IAOnC;AAID,SAAO;AAAA,IACL,gBAHqB,OAAO,UAAU,IAAI,SAAS;AAAA,IAInD;AAAA,EACF;AACF,GAEa,wBAAwB,CACnC,SACA,kBAGG,SAAiB,SAAS,iBAC1B,OAAQ,SAAiB,QAAQ,eAC9B,SAAiB,MAAM,gBAAiB,cAAsB,eAC7D,SAAiB,MAAM,gBACrB,cAAsB,cAAc,YAIlC,aAAa,CACxB,MAEO,KAAK,MAGD,SAAS,CACpB,WACA,gBACG;AACH,QAAM,gBAAiC,CAAC,UAC/B,oBAAC,aAAW,GAAI,OAAe;AAExC,uBAAc,cAAc,aAErB;AACT;",
5
+ "names": []
6
+ }
@@ -0,0 +1,29 @@
1
+ import React, { Children, cloneElement, isValidElement } from "react";
2
+ import { jsx } from "react/jsx-runtime";
3
+ function flattenChildrenKeyless(children) {
4
+ return React.Children.toArray(children).reduce((flatChildren, child) => child.type === React.Fragment ? flatChildren.concat(flattenChildren(child.props.children)) : (flatChildren.push(child), flatChildren), []);
5
+ }
6
+ function flattenChildren(children, componentNamesToIgnore, depth = 0, keys = []) {
7
+ return Children.toArray(children).flatMap(elem => isValidElement(elem) && typeof elem?.type == "function" && componentNamesToIgnore?.some(skipComponentName => elem.type.displayName.includes(skipComponentName)) ? elem.props.children : elem).reduce((acc, node, nodeIndex) => (node.type === React.Fragment ? acc.push.apply(acc, flattenChildren(node.props.children, componentNamesToIgnore, depth + 1, keys.concat(node.key || nodeIndex))) : isValidElement(node) ? acc.push(cloneElement(node, {
8
+ key: keys.concat(String(node.key)).join(".")
9
+ })) : (typeof node == "string" || typeof node == "number") && acc.push(node), acc), []);
10
+ }
11
+ const pickChildren = (_children, targetChild, componentNamesToIgnore) => {
12
+ const children = flattenChildren(_children, componentNamesToIgnore),
13
+ target = [],
14
+ withoutTargetChildren = React.Children.map(children, item => isValidElement(item) && isInstanceOfComponent(item, targetChild) ? (target.push(cloneElement(item)), null) : item);
15
+ return {
16
+ targetChildren: target.length >= 0 ? target : void 0,
17
+ withoutTargetChildren
18
+ };
19
+ },
20
+ isInstanceOfComponent = (element, targetElement) => element?.type === targetElement || typeof element?.type == "function" && (element?.type?.displayName === targetElement.displayName || element?.type?.displayName === targetElement.displayName + "Wrapper"),
21
+ filterNull = t => t != null,
22
+ create = (Component, displayName) => {
23
+ const MenuComponent = props => /* @__PURE__ */jsx(Component, {
24
+ ...props
25
+ });
26
+ return MenuComponent.displayName = displayName, MenuComponent;
27
+ };
28
+ export { create, filterNull, flattenChildren, flattenChildrenKeyless, isInstanceOfComponent, pickChildren };
29
+ //# sourceMappingURL=utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Children","cloneElement","isValidElement","jsx","flattenChildrenKeyless","children","toArray","reduce","flatChildren","child","type","Fragment","concat","flattenChildren","props","push","componentNamesToIgnore","depth","keys","flatMap","elem","some","skipComponentName","displayName","includes","acc","node","nodeIndex","apply","key","String","join","pickChildren","_children","targetChild","target","withoutTargetChildren","map","item","isInstanceOfComponent","targetChildren","length","element","targetElement","filterNull","t","create","Component","MenuComponent"],"sources":["../../../src/createNativeMenu/utils.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf,
8
+ __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: !0
13
+ });
14
+ },
15
+ __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
17
+ get: () => from[key],
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
+ value: mod,
29
+ enumerable: !0
30
+ }) : target, mod)),
31
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: !0
33
+ }), mod);
34
+ var utils_exports = {};
35
+ __export(utils_exports, {
36
+ create: () => create,
37
+ filterNull: () => filterNull,
38
+ flattenChildren: () => flattenChildren,
39
+ flattenChildrenKeyless: () => flattenChildrenKeyless,
40
+ isInstanceOfComponent: () => isInstanceOfComponent,
41
+ pickChildren: () => pickChildren
42
+ });
43
+ module.exports = __toCommonJS(utils_exports);
44
+ var import_jsx_runtime = require("react/jsx-runtime"),
45
+ import_react = __toESM(require("react"), 1);
46
+ function flattenChildrenKeyless(children) {
47
+ var childrenArray = import_react.default.Children.toArray(children);
48
+ return childrenArray.reduce(function (flatChildren, child) {
49
+ return child.type === import_react.default.Fragment ? flatChildren.concat(flattenChildren(child.props.children)) : (flatChildren.push(child), flatChildren);
50
+ }, []);
51
+ }
52
+ function flattenChildren(children, componentNamesToIgnore) {
53
+ var depth = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 0,
54
+ keys = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : [];
55
+ return import_react.Children.toArray(children).flatMap(function (elem) {
56
+ return /* @__PURE__ */(0, import_react.isValidElement)(elem) && typeof elem?.type == "function" && componentNamesToIgnore?.some(function (skipComponentName) {
57
+ return elem.type.displayName.includes(skipComponentName);
58
+ }) ? elem.props.children : elem;
59
+ }).reduce(function (acc, node, nodeIndex) {
60
+ return node.type === import_react.default.Fragment ? acc.push.apply(acc, flattenChildren(node.props.children, componentNamesToIgnore, depth + 1, keys.concat(node.key || nodeIndex))) : /* @__PURE__ */(0, import_react.isValidElement)(node) ? acc.push(/* @__PURE__ */(0, import_react.cloneElement)(node, {
61
+ key: keys.concat(String(node.key)).join(".")
62
+ })) : (typeof node == "string" || typeof node == "number") && acc.push(node), acc;
63
+ }, []);
64
+ }
65
+ var pickChildren = function (_children, targetChild, componentNamesToIgnore) {
66
+ var children = flattenChildren(_children, componentNamesToIgnore),
67
+ target = [],
68
+ withoutTargetChildren = import_react.default.Children.map(children, function (item) {
69
+ return /* @__PURE__ */(0, import_react.isValidElement)(item) && isInstanceOfComponent(item, targetChild) ? (target.push(/* @__PURE__ */(0, import_react.cloneElement)(item)), null) : item;
70
+ }),
71
+ targetChildren = target.length >= 0 ? target : void 0;
72
+ return {
73
+ targetChildren,
74
+ withoutTargetChildren
75
+ };
76
+ },
77
+ isInstanceOfComponent = function (element, targetElement) {
78
+ var _element_type,
79
+ _element_type1,
80
+ matches = element?.type === targetElement || typeof element?.type == "function" && ((element == null || (_element_type = element.type) === null || _element_type === void 0 ? void 0 : _element_type.displayName) === targetElement.displayName || (element == null || (_element_type1 = element.type) === null || _element_type1 === void 0 ? void 0 : _element_type1.displayName) === targetElement.displayName + "Wrapper");
81
+ return matches;
82
+ },
83
+ filterNull = function (t) {
84
+ return t != null;
85
+ },
86
+ create = function (Component, displayName) {
87
+ var MenuComponent = function (props) {
88
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Component, {
89
+ ...props
90
+ });
91
+ };
92
+ return MenuComponent.displayName = displayName, MenuComponent;
93
+ };
94
+ //# sourceMappingURL=utils.native.js.map
@@ -0,0 +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","utils_exports","filterNull","flattenChildren","flattenChildrenKeyless","isInstanceOfComponent","pickChildren","module","exports","import_jsx_runtime","require","import_react","children","childrenArray","default","Children","toArray","reduce","flatChildren","child","type","Fragment","concat","props","push"],"sources":["../../../src/createNativeMenu/utils.tsx"],"sourcesContent":[null],"mappings":"AA0BA,YAAO;;AAAA,IACLA,QAAA,GAAAC,MAAA,CAAAC,MAAA;AAAA,IAGAC,SAAA,GAAAF,MAAA,CAAAG,cAAA;AAAA,IACAC,gBAAA,GAAAJ,MAAA,CAAAK,wBAAA;AAAA,IAAAC,iBACK,GAAAN,MAAA,CAAAO,mBAAA;AAgHI,IAAAC,YAAA,GAAAR,MAAA,CAAAS,cAAA;EAAAC,YAAA,GAAAV,MAAA,CAAAW,SAAA,CAAAC,cAAA;AA5GJ,IAAAC,QAAS,GAAAA,CAAAC,MAAA,EAAAC,GAAA,KAAuB;IAErC,SADsBC,IAAM,IAAAD,GAAA,EAItBb,SAAA,CAAAY,MAAiB,EAAAE,IAAkC;MAAAC,GAAM,EAAAF,GAAA,CAAAC,IAAQ;MAAAE,UAAA;IAAA;EAAA;EACnEC,WAEF,GAAAA,CAAAC,EAAa,EAAAC,IAAK,EAAAC,MACX,EAAAC,IAAA;IAEX,IAAAF,IAAA,WAAAA,IAAA,uBAAAA,IAAA,gBAEO,KAAS,IAAAG,GAAA,IAAAlB,iBAEd,CAAAe,IAAA,GAIA,CAAAX,YAAgB,CAAAe,IAAA,CAAAL,EAAQ,EAAAI,GAAA,KACrBA,GAAA,KAASF,MAAA,IACJpB,SAAA,CAAAkB,EAAA,EAAeI,GAAA,EAAI;MAAAP,GAEnB,EAAAA,CAAA,KAAQI,IAAc,CAAAG,GAAA;MAAAN,UAAQ,IAAAK,IAC9B,GAAAnB,gBAAA,CAAAiB,IAAwB,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;IAAA,OAAME,EAAA;EAC6B;AAUpD,IACPM,OAAA,GAAAA,CAAAC,GAAA,EAAAC,UAAA,EAAAd,MAAA,MAAAA,MAAA,GAAAa,GAAA,WAAA5B,QAAA,CAAAS,YAAA,CAAAmB,GAAA,SAAAR,WAAA;EAAA;EACA;EACa;EACX;EACQS,UACH,KAAAD,GAAO,IAAK,CAAAA,GAAA,CAAAE,UAAgB,GAAA3B,SAAA,CAAAY,MAAA;IAAAgB,KAAA,EAAAH,GAAA;IAAAT,UAAA;EAAA,KAAAJ,MAAA,EAAAa,GACnC,EACF;EAAAI,YAEI,GAAAJ,GAAe,IAAIR,WACjB,CAAAjB,SAAA;IAAA4B,KAAA;EAAA,IAAAH,GAAA;AAAA,IACFK,aAAa;AAAMnB,QACjB,CAAAmB,aAAU,EAAO;EAA0B/B,MAC5C,EAAAA,CAAA,KAAAA,MAAA;EACHgC,UACS,EAAOA,CAAA,KAAAA,UAAS;EAMnCC,eAAA,EAAAA,CAAA,KAAAA,eAAA;EAEOC,sBACL,EAAAA,CAAA,KAAAA,sBAEA;EAEAC,qBAAiB,EAAAA,CAAA,KAAAA,qBAA2B;EAc5CC,YAAO,EAAAA,CAAA,KAAAA;AAAA;AAF8CC,MAInD,CAAAC,OAAA,GAAAR,YAAA,CAAAC,aAAA;AAAA,IACFQ,kBAAA,GAAAC,OAAA;EAAAC,YAAA,GAAAhB,OAAA,CAAAe,OAAA;AACF,SAEaN,sBACXA,CAAAQ,QACA;EAqBA,IAAAC,aAAM,GAAAF,YAAkC,CAC/BG,OAAA,CAAAC,QAAA,CAAAC,OAAC,CAAAJ,QAAW;EAErB,OAAAC,aAAA,CAAcI,MAAA,WAAcC,YAErB,EAAAC,KAAA;IACT,OAAAA,KAAA,CAAAC,IAAA,KAAAT,YAAA,CAAAG,OAAA,CAAAO,QAAA,GAAAH,YAAA,CAAAI,MAAA,CAAAnB,eAAA,CAAAgB,KAAA,CAAAI,KAAA,CAAAX,QAAA,MAAAM,YAAA,CAAAM,IAAA,CAAAL,KAAA,GAAAD,YAAA","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { isWeb } from "@tamagui/web";
2
+ import { jsx } from "react/jsx-runtime";
3
+ function withNativeMenu({
4
+ Component,
5
+ NativeComponent
6
+ }) {
7
+ if (isWeb || !NativeComponent)
8
+ return Component;
9
+ const Menu = (props) => /* @__PURE__ */ jsx(NativeComponent, { ...props });
10
+ return Menu.displayName = NativeComponent.displayName || Component?.displayName, Menu;
11
+ }
12
+ export {
13
+ withNativeMenu
14
+ };
15
+ //# sourceMappingURL=withNativeMenu.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/createNativeMenu/withNativeMenu.tsx"],
4
+ "mappings": "AAAA,SAAS,aAAa;AA+BX;AA3BJ,SAAS,eAKd;AAAA,EACA;AAAA,EACA;AACF,GAK+C;AAS7C,MANI,SAMA,CAAC;AACH,WAAO;AAGT,QAAM,OAAwB,CAAC,UACtB,oBAAC,mBAAiB,GAAI,OAAe;AAI9C,cAAK,cAAc,gBAAgB,eAAe,WAAW,aAEtD;AACT;",
5
+ "names": []
6
+ }
@@ -0,0 +1,14 @@
1
+ import { isWeb } from "@tamagui/web";
2
+ import { jsx } from "react/jsx-runtime";
3
+ function withNativeMenu({
4
+ Component,
5
+ NativeComponent
6
+ }) {
7
+ if (isWeb || !NativeComponent) return Component;
8
+ const Menu = props => /* @__PURE__ */jsx(NativeComponent, {
9
+ ...props
10
+ });
11
+ return Menu.displayName = NativeComponent.displayName || Component?.displayName, Menu;
12
+ }
13
+ export { withNativeMenu };
14
+ //# sourceMappingURL=withNativeMenu.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isWeb","jsx","withNativeMenu","Component","NativeComponent","Menu","props","displayName"],"sources":["../../../src/createNativeMenu/withNativeMenu.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAA,QAAa;AA+BX,SAAAC,GAAA;AA3BJ,SAASC,eAKd;EACAC,SAAA;EACAC;AACF,GAK+C;EAS7C,IANIJ,KAAA,IAMA,CAACI,eAAA,EACH,OAAOD,SAAA;EAGT,MAAME,IAAA,GAAyBC,KAAA,IACtB,eAAAL,GAAA,CAACG,eAAA;IAAiB,GAAIE;EAAA,CAAe;EAI9C,OAAAD,IAAA,CAAKE,WAAA,GAAcH,eAAA,CAAgBG,WAAA,IAAeJ,SAAA,EAAWI,WAAA,EAEtDF,IAAA;AACT","ignoreList":[]}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: !0
11
+ });
12
+ },
13
+ __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: !0
22
+ }), mod);
23
+ var withNativeMenu_exports = {};
24
+ __export(withNativeMenu_exports, {
25
+ withNativeMenu: () => withNativeMenu
26
+ });
27
+ module.exports = __toCommonJS(withNativeMenu_exports);
28
+ var import_jsx_runtime = require("react/jsx-runtime"),
29
+ import_web = require("@tamagui/web");
30
+ function withNativeMenu(param) {
31
+ var {
32
+ Component,
33
+ NativeComponent
34
+ } = param;
35
+ if (import_web.isWeb || !NativeComponent) return Component;
36
+ var Menu = function (props) {
37
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(NativeComponent, {
38
+ ...props
39
+ });
40
+ };
41
+ return Menu.displayName = NativeComponent.displayName || Component?.displayName, Menu;
42
+ }
43
+ //# sourceMappingURL=withNativeMenu.native.js.map