@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.
- package/LICENSE +21 -0
- package/dist/cjs/MenuPredefined.cjs +189 -0
- package/dist/cjs/MenuPredefined.js +168 -0
- package/dist/cjs/MenuPredefined.js.map +6 -0
- package/dist/cjs/MenuPredefined.native.js +192 -0
- package/dist/cjs/MenuPredefined.native.js.map +1 -0
- package/dist/cjs/createBaseMenu.cjs +1147 -0
- package/dist/cjs/createBaseMenu.js +884 -0
- package/dist/cjs/createBaseMenu.js.map +6 -0
- package/dist/cjs/createBaseMenu.native.js +1346 -0
- package/dist/cjs/createBaseMenu.native.js.map +1 -0
- package/dist/cjs/createNativeMenu/createNativeMenu.cjs +242 -0
- package/dist/cjs/createNativeMenu/createNativeMenu.js +184 -0
- package/dist/cjs/createNativeMenu/createNativeMenu.js.map +6 -0
- package/dist/cjs/createNativeMenu/createNativeMenu.native.js +307 -0
- package/dist/cjs/createNativeMenu/createNativeMenu.native.js.map +1 -0
- package/dist/cjs/createNativeMenu/createNativeMenuTypes.cjs +16 -0
- package/dist/cjs/createNativeMenu/createNativeMenuTypes.js +14 -0
- package/dist/cjs/createNativeMenu/createNativeMenuTypes.js.map +6 -0
- package/dist/cjs/createNativeMenu/createNativeMenuTypes.native.js +19 -0
- package/dist/cjs/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
- package/dist/cjs/createNativeMenu/utils.cjs +68 -0
- package/dist/cjs/createNativeMenu/utils.js +66 -0
- package/dist/cjs/createNativeMenu/utils.js.map +6 -0
- package/dist/cjs/createNativeMenu/utils.native.js +94 -0
- package/dist/cjs/createNativeMenu/utils.native.js.map +1 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.cjs +37 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.js +30 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.js.map +6 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.native.js +43 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.native.js.map +1 -0
- package/dist/cjs/index.cjs +30 -0
- package/dist/cjs/index.js +24 -0
- package/dist/cjs/index.js.map +6 -0
- package/dist/cjs/index.native.js +33 -0
- package/dist/cjs/index.native.js.map +1 -0
- package/dist/esm/MenuPredefined.js +154 -0
- package/dist/esm/MenuPredefined.js.map +6 -0
- package/dist/esm/MenuPredefined.mjs +166 -0
- package/dist/esm/MenuPredefined.mjs.map +1 -0
- package/dist/esm/MenuPredefined.native.js +166 -0
- package/dist/esm/MenuPredefined.native.js.map +1 -0
- package/dist/esm/createBaseMenu.js +892 -0
- package/dist/esm/createBaseMenu.js.map +6 -0
- package/dist/esm/createBaseMenu.mjs +1113 -0
- package/dist/esm/createBaseMenu.mjs.map +1 -0
- package/dist/esm/createBaseMenu.native.js +1309 -0
- package/dist/esm/createBaseMenu.native.js.map +1 -0
- package/dist/esm/createNativeMenu/createNativeMenu.js +163 -0
- package/dist/esm/createNativeMenu/createNativeMenu.js.map +6 -0
- package/dist/esm/createNativeMenu/createNativeMenu.mjs +208 -0
- package/dist/esm/createNativeMenu/createNativeMenu.mjs.map +1 -0
- package/dist/esm/createNativeMenu/createNativeMenu.native.js +270 -0
- package/dist/esm/createNativeMenu/createNativeMenu.native.js.map +1 -0
- package/dist/esm/createNativeMenu/createNativeMenuTypes.js +1 -0
- package/dist/esm/createNativeMenu/createNativeMenuTypes.js.map +6 -0
- package/dist/esm/createNativeMenu/createNativeMenuTypes.mjs +2 -0
- package/dist/esm/createNativeMenu/createNativeMenuTypes.mjs.map +1 -0
- package/dist/esm/createNativeMenu/createNativeMenuTypes.native.js +2 -0
- package/dist/esm/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
- package/dist/esm/createNativeMenu/utils.js +47 -0
- package/dist/esm/createNativeMenu/utils.js.map +6 -0
- package/dist/esm/createNativeMenu/utils.mjs +29 -0
- package/dist/esm/createNativeMenu/utils.mjs.map +1 -0
- package/dist/esm/createNativeMenu/utils.native.js +52 -0
- package/dist/esm/createNativeMenu/utils.native.js.map +1 -0
- package/dist/esm/createNativeMenu/withNativeMenu.js +15 -0
- package/dist/esm/createNativeMenu/withNativeMenu.js.map +6 -0
- package/dist/esm/createNativeMenu/withNativeMenu.mjs +14 -0
- package/dist/esm/createNativeMenu/withNativeMenu.mjs.map +1 -0
- package/dist/esm/createNativeMenu/withNativeMenu.native.js +17 -0
- package/dist/esm/createNativeMenu/withNativeMenu.native.js.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +6 -0
- package/dist/esm/index.mjs +6 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +6 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/jsx/MenuPredefined.js +154 -0
- package/dist/jsx/MenuPredefined.js.map +6 -0
- package/dist/jsx/MenuPredefined.mjs +166 -0
- package/dist/jsx/MenuPredefined.mjs.map +1 -0
- package/dist/jsx/MenuPredefined.native.js +192 -0
- package/dist/jsx/MenuPredefined.native.js.map +1 -0
- package/dist/jsx/createBaseMenu.js +892 -0
- package/dist/jsx/createBaseMenu.js.map +6 -0
- package/dist/jsx/createBaseMenu.mjs +1113 -0
- package/dist/jsx/createBaseMenu.mjs.map +1 -0
- package/dist/jsx/createBaseMenu.native.js +1346 -0
- package/dist/jsx/createBaseMenu.native.js.map +1 -0
- package/dist/jsx/createNativeMenu/createNativeMenu.js +163 -0
- package/dist/jsx/createNativeMenu/createNativeMenu.js.map +6 -0
- package/dist/jsx/createNativeMenu/createNativeMenu.mjs +208 -0
- package/dist/jsx/createNativeMenu/createNativeMenu.mjs.map +1 -0
- package/dist/jsx/createNativeMenu/createNativeMenu.native.js +307 -0
- package/dist/jsx/createNativeMenu/createNativeMenu.native.js.map +1 -0
- package/dist/jsx/createNativeMenu/createNativeMenuTypes.js +1 -0
- package/dist/jsx/createNativeMenu/createNativeMenuTypes.js.map +6 -0
- package/dist/jsx/createNativeMenu/createNativeMenuTypes.mjs +2 -0
- package/dist/jsx/createNativeMenu/createNativeMenuTypes.mjs.map +1 -0
- package/dist/jsx/createNativeMenu/createNativeMenuTypes.native.js +19 -0
- package/dist/jsx/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
- package/dist/jsx/createNativeMenu/utils.js +47 -0
- package/dist/jsx/createNativeMenu/utils.js.map +6 -0
- package/dist/jsx/createNativeMenu/utils.mjs +29 -0
- package/dist/jsx/createNativeMenu/utils.mjs.map +1 -0
- package/dist/jsx/createNativeMenu/utils.native.js +94 -0
- package/dist/jsx/createNativeMenu/utils.native.js.map +1 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.js +15 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.js.map +6 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.mjs +14 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.mjs.map +1 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.native.js +43 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.native.js.map +1 -0
- package/dist/jsx/index.js +8 -0
- package/dist/jsx/index.js.map +6 -0
- package/dist/jsx/index.mjs +6 -0
- package/dist/jsx/index.mjs.map +1 -0
- package/dist/jsx/index.native.js +33 -0
- package/dist/jsx/index.native.js.map +1 -0
- package/package.json +69 -0
- package/src/MenuPredefined.tsx +204 -0
- package/src/createBaseMenu.tsx +2031 -0
- package/src/createNativeMenu/createNativeMenu.tsx +400 -0
- package/src/createNativeMenu/createNativeMenuTypes.ts +214 -0
- package/src/createNativeMenu/utils.tsx +150 -0
- package/src/createNativeMenu/withNativeMenu.tsx +39 -0
- package/src/index.tsx +5 -0
- package/types/MenuPredefined.d.ts +31 -0
- package/types/MenuPredefined.d.ts.map +1 -0
- package/types/createBaseMenu.d.ts +298 -0
- package/types/createBaseMenu.d.ts.map +1 -0
- package/types/createNativeMenu/createNativeMenu.d.ts +42 -0
- package/types/createNativeMenu/createNativeMenu.d.ts.map +1 -0
- package/types/createNativeMenu/createNativeMenuTypes.d.ts +188 -0
- package/types/createNativeMenu/createNativeMenuTypes.d.ts.map +1 -0
- package/types/createNativeMenu/index.d.ts +4 -0
- package/types/createNativeMenu/utils.d.ts +38 -0
- package/types/createNativeMenu/utils.d.ts.map +1 -0
- package/types/createNativeMenu/withNativeMenu.d.ts +9 -0
- package/types/createNativeMenu/withNativeMenu.d.ts.map +1 -0
- package/types/index.d.ts +6 -0
- package/types/index.d.ts.map +1 -0
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { getZeego, NativeMenuContext } from "@tamagui/native";
|
|
3
|
+
import { isWeb, withStaticProperties, isIos } from "@tamagui/web";
|
|
4
|
+
import React from "react";
|
|
5
|
+
var createNativeMenu = function (MenuType) {
|
|
6
|
+
if (isWeb) {
|
|
7
|
+
var Menu = {},
|
|
8
|
+
Trigger = {},
|
|
9
|
+
Content = {},
|
|
10
|
+
Preview = {},
|
|
11
|
+
Item = {},
|
|
12
|
+
ItemIcon = {},
|
|
13
|
+
ItemImage = {},
|
|
14
|
+
SubTrigger = {},
|
|
15
|
+
ItemTitle = {},
|
|
16
|
+
ItemSubtitle = {},
|
|
17
|
+
Group = {},
|
|
18
|
+
Separator = {},
|
|
19
|
+
CheckboxItem = {},
|
|
20
|
+
ItemIndicator = {},
|
|
21
|
+
Label = {},
|
|
22
|
+
Arrow = {},
|
|
23
|
+
Sub = {},
|
|
24
|
+
SubContent = {},
|
|
25
|
+
Portal = {},
|
|
26
|
+
RadioGroup = {},
|
|
27
|
+
RadioItem = {},
|
|
28
|
+
Auxiliary = {};
|
|
29
|
+
return {
|
|
30
|
+
Menu: withStaticProperties(Menu, {
|
|
31
|
+
Trigger,
|
|
32
|
+
Content,
|
|
33
|
+
Item,
|
|
34
|
+
ItemTitle,
|
|
35
|
+
ItemSubtitle,
|
|
36
|
+
SubTrigger,
|
|
37
|
+
Group,
|
|
38
|
+
ItemIcon,
|
|
39
|
+
Separator,
|
|
40
|
+
CheckboxItem,
|
|
41
|
+
ItemIndicator,
|
|
42
|
+
ItemImage,
|
|
43
|
+
Label,
|
|
44
|
+
Arrow,
|
|
45
|
+
Sub,
|
|
46
|
+
SubContent,
|
|
47
|
+
Preview,
|
|
48
|
+
Portal,
|
|
49
|
+
RadioGroup,
|
|
50
|
+
RadioItem,
|
|
51
|
+
Auxiliary
|
|
52
|
+
})
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
var zeego = getZeego();
|
|
56
|
+
if (!zeego.isEnabled) return console.warn("Warning: Must call import '@tamagui/native/setup-zeego' at your app entry point to use native menus"), {
|
|
57
|
+
Menu: {}
|
|
58
|
+
};
|
|
59
|
+
var {
|
|
60
|
+
DropdownMenu: ZeegoDropdownMenu,
|
|
61
|
+
ContextMenu: ZeegoContextMenu
|
|
62
|
+
} = zeego.state,
|
|
63
|
+
isContextMenu = MenuType === "ContextMenu",
|
|
64
|
+
ZeegoMenu = isContextMenu ? ZeegoContextMenu : ZeegoDropdownMenu,
|
|
65
|
+
COMPONENT_MAP = {
|
|
66
|
+
SubContent: ZeegoMenu.SubContent,
|
|
67
|
+
Content: ZeegoMenu.Content,
|
|
68
|
+
Sub: ZeegoMenu.Sub,
|
|
69
|
+
Group: ZeegoMenu.Group,
|
|
70
|
+
SubTrigger: ZeegoMenu.SubTrigger
|
|
71
|
+
},
|
|
72
|
+
CONTAINER_TYPES = ["SubContent", "Content", "Sub", "Group"],
|
|
73
|
+
getComponentType = function (displayName) {
|
|
74
|
+
for (var _i = 0, _iter = ["SubContent", "SubTrigger", "Content", "Sub", "Group", "CheckboxItem"]; _i < _iter.length; _i++) {
|
|
75
|
+
var type = _iter[_i];
|
|
76
|
+
if (displayName === type || displayName.includes(`(${type})`)) return type;
|
|
77
|
+
}
|
|
78
|
+
return null;
|
|
79
|
+
},
|
|
80
|
+
isItemLike = function (props, displayName) {
|
|
81
|
+
return getComponentType(displayName) ? !1 : "onSelect" in props || "textValue" in props;
|
|
82
|
+
},
|
|
83
|
+
isPortal = function (displayName) {
|
|
84
|
+
return displayName === "Portal" || displayName.includes("Portal");
|
|
85
|
+
},
|
|
86
|
+
transformForZeego = function (children) {
|
|
87
|
+
var shouldReverseOnIos = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1,
|
|
88
|
+
result = [];
|
|
89
|
+
return React.Children.forEach(children, function (child) {
|
|
90
|
+
var _child_type;
|
|
91
|
+
if (! /* @__PURE__ */React.isValidElement(child)) {
|
|
92
|
+
result.push(child);
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
var displayName = ((_child_type = child.type) === null || _child_type === void 0 ? void 0 : _child_type.displayName) || "",
|
|
96
|
+
props = child.props;
|
|
97
|
+
if (isPortal(displayName)) {
|
|
98
|
+
var portalChildren = transformForZeego(props.children, !1);
|
|
99
|
+
React.Children.forEach(portalChildren, function (c) {
|
|
100
|
+
return result.push(c);
|
|
101
|
+
});
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
if (displayName.includes("ScrollView")) {
|
|
105
|
+
var scrollChildren = transformForZeego(props.children, !1);
|
|
106
|
+
React.Children.forEach(scrollChildren, function (c) {
|
|
107
|
+
return result.push(c);
|
|
108
|
+
});
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
var componentType = getComponentType(displayName);
|
|
112
|
+
if (componentType === "CheckboxItem") {
|
|
113
|
+
var {
|
|
114
|
+
checked,
|
|
115
|
+
onCheckedChange,
|
|
116
|
+
value,
|
|
117
|
+
onValueChange,
|
|
118
|
+
children: _$children,
|
|
119
|
+
...rest
|
|
120
|
+
} = props,
|
|
121
|
+
finalValue = value ?? (checked ? "on" : "off"),
|
|
122
|
+
finalOnValueChange = onValueChange ?? (onCheckedChange && function (v) {
|
|
123
|
+
return onCheckedChange(v === "on");
|
|
124
|
+
}),
|
|
125
|
+
cleanChildren = React.Children.map(_$children, function (child2) {
|
|
126
|
+
var _child_type2;
|
|
127
|
+
if (! /* @__PURE__ */React.isValidElement(child2)) return child2;
|
|
128
|
+
var childDisplayName = ((_child_type2 = child2.type) === null || _child_type2 === void 0 ? void 0 : _child_type2.displayName) || "";
|
|
129
|
+
return childDisplayName.includes("ItemIndicator") ? null : child2;
|
|
130
|
+
});
|
|
131
|
+
result.push(/* @__PURE__ */React.createElement(ZeegoMenu.CheckboxItem, {
|
|
132
|
+
...rest,
|
|
133
|
+
key: child.key,
|
|
134
|
+
value: finalValue,
|
|
135
|
+
onValueChange: finalOnValueChange
|
|
136
|
+
}, cleanChildren));
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
if (componentType) {
|
|
140
|
+
var {
|
|
141
|
+
children: childChildren,
|
|
142
|
+
...restProps
|
|
143
|
+
} = props,
|
|
144
|
+
isContainer = CONTAINER_TYPES.includes(componentType),
|
|
145
|
+
shouldReverseChildren = componentType === "Content" || componentType === "SubContent";
|
|
146
|
+
result.push(/* @__PURE__ */React.createElement(COMPONENT_MAP[componentType], {
|
|
147
|
+
...restProps,
|
|
148
|
+
key: child.key
|
|
149
|
+
}, isContainer ? transformForZeego(childChildren, shouldReverseChildren) : childChildren));
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
if (isItemLike(props, displayName)) {
|
|
153
|
+
var {
|
|
154
|
+
children: itemChildren,
|
|
155
|
+
...itemProps
|
|
156
|
+
} = props;
|
|
157
|
+
result.push(/* @__PURE__ */React.createElement(ZeegoMenu.Item, {
|
|
158
|
+
...itemProps,
|
|
159
|
+
key: child.key
|
|
160
|
+
}, itemChildren));
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
result.push(child);
|
|
164
|
+
}), isIos && shouldReverseOnIos && !isContextMenu && result.reverse(), result;
|
|
165
|
+
},
|
|
166
|
+
Trigger1 = ZeegoMenu.Trigger,
|
|
167
|
+
Content1 = ZeegoMenu.Content,
|
|
168
|
+
Item1 = ZeegoMenu.Item,
|
|
169
|
+
ItemTitle1 = ZeegoMenu.ItemTitle,
|
|
170
|
+
ItemSubtitle1 = ZeegoMenu.ItemSubtitle,
|
|
171
|
+
ItemIcon1 = ZeegoMenu.ItemIcon,
|
|
172
|
+
ItemImage1 = ZeegoMenu.ItemImage,
|
|
173
|
+
ItemIndicator1 = ZeegoMenu.ItemIndicator,
|
|
174
|
+
Group1 = ZeegoMenu.Group,
|
|
175
|
+
Label1 = ZeegoMenu.Label,
|
|
176
|
+
Separator1 = ZeegoMenu.Separator,
|
|
177
|
+
Sub1 = ZeegoMenu.Sub,
|
|
178
|
+
SubTrigger1 = ZeegoMenu.SubTrigger,
|
|
179
|
+
SubContent1 = ZeegoMenu.SubContent,
|
|
180
|
+
Portal1 = function (param) {
|
|
181
|
+
var {
|
|
182
|
+
children
|
|
183
|
+
} = param;
|
|
184
|
+
return /* @__PURE__ */_jsx(_Fragment, {
|
|
185
|
+
children
|
|
186
|
+
});
|
|
187
|
+
};
|
|
188
|
+
Portal1.displayName = "Portal";
|
|
189
|
+
var Arrow1 = function () {
|
|
190
|
+
return null;
|
|
191
|
+
};
|
|
192
|
+
Arrow1.displayName = "Arrow";
|
|
193
|
+
var RadioGroup1 = function (param) {
|
|
194
|
+
var {
|
|
195
|
+
children
|
|
196
|
+
} = param;
|
|
197
|
+
return /* @__PURE__ */_jsx(_Fragment, {
|
|
198
|
+
children
|
|
199
|
+
});
|
|
200
|
+
};
|
|
201
|
+
RadioGroup1.displayName = `${MenuType}RadioGroup`;
|
|
202
|
+
var RadioItem1 = function (param) {
|
|
203
|
+
var {
|
|
204
|
+
children
|
|
205
|
+
} = param;
|
|
206
|
+
return /* @__PURE__ */_jsx(_Fragment, {
|
|
207
|
+
children
|
|
208
|
+
});
|
|
209
|
+
};
|
|
210
|
+
RadioItem1.displayName = `${MenuType}RadioItem`;
|
|
211
|
+
var CheckboxItem1 = function (props) {
|
|
212
|
+
return null;
|
|
213
|
+
};
|
|
214
|
+
CheckboxItem1.displayName = "CheckboxItem";
|
|
215
|
+
var Preview1 = isContextMenu ? ZeegoContextMenu.Preview : function () {
|
|
216
|
+
return null;
|
|
217
|
+
};
|
|
218
|
+
Preview1.displayName = `${MenuType}Preview`;
|
|
219
|
+
var Auxiliary1 = isContextMenu ? ZeegoContextMenu.Auxiliary : function () {
|
|
220
|
+
return null;
|
|
221
|
+
};
|
|
222
|
+
Auxiliary1.displayName = `${MenuType}Auxiliary`;
|
|
223
|
+
var isAndroid = !isIos && !isWeb,
|
|
224
|
+
Menu1 = function (param) {
|
|
225
|
+
var {
|
|
226
|
+
children,
|
|
227
|
+
onOpenChange,
|
|
228
|
+
onOpenWillChange
|
|
229
|
+
} = param,
|
|
230
|
+
rootProps = {
|
|
231
|
+
onOpenChange
|
|
232
|
+
};
|
|
233
|
+
isContextMenu && onOpenWillChange && (rootProps.onOpenWillChange = onOpenWillChange);
|
|
234
|
+
var content = /* @__PURE__ */_jsx(ZeegoMenu.Root, {
|
|
235
|
+
...rootProps,
|
|
236
|
+
children: transformForZeego(children)
|
|
237
|
+
});
|
|
238
|
+
return isAndroid ? /* @__PURE__ */_jsx(NativeMenuContext.Provider, {
|
|
239
|
+
value: !0,
|
|
240
|
+
children: content
|
|
241
|
+
}) : content;
|
|
242
|
+
};
|
|
243
|
+
return Menu1.displayName = MenuType, {
|
|
244
|
+
Menu: withStaticProperties(Menu1, {
|
|
245
|
+
Trigger: Trigger1,
|
|
246
|
+
Content: Content1,
|
|
247
|
+
Item: Item1,
|
|
248
|
+
ItemTitle: ItemTitle1,
|
|
249
|
+
ItemSubtitle: ItemSubtitle1,
|
|
250
|
+
ItemIcon: ItemIcon1,
|
|
251
|
+
ItemImage: ItemImage1,
|
|
252
|
+
ItemIndicator: ItemIndicator1,
|
|
253
|
+
Group: Group1,
|
|
254
|
+
Label: Label1,
|
|
255
|
+
Separator: Separator1,
|
|
256
|
+
Sub: Sub1,
|
|
257
|
+
SubTrigger: SubTrigger1,
|
|
258
|
+
SubContent: SubContent1,
|
|
259
|
+
CheckboxItem: CheckboxItem1,
|
|
260
|
+
Portal: Portal1,
|
|
261
|
+
RadioGroup: RadioGroup1,
|
|
262
|
+
RadioItem: RadioItem1,
|
|
263
|
+
Arrow: Arrow1,
|
|
264
|
+
Preview: Preview1,
|
|
265
|
+
Auxiliary: Auxiliary1
|
|
266
|
+
})
|
|
267
|
+
};
|
|
268
|
+
};
|
|
269
|
+
export { createNativeMenu };
|
|
270
|
+
//# sourceMappingURL=createNativeMenu.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","Fragment","_Fragment","getZeego","NativeMenuContext","isWeb","withStaticProperties","isIos","React","createNativeMenu","MenuType","Menu","Trigger","Content","Preview","Item","ItemIcon","ItemImage","SubTrigger","ItemTitle","ItemSubtitle","Group","Separator","CheckboxItem","ItemIndicator","Label","Arrow","Sub","SubContent","Portal","RadioGroup","RadioItem","Auxiliary","zeego","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","Children","forEach","child","_child_type","isValidElement","push","portalChildren","c","scrollChildren","componentType","checked","onCheckedChange","value","onValueChange","_$children","rest","finalValue","finalOnValueChange","v","cleanChildren","map","child2","_child_type2","childDisplayName","createElement","key","childChildren","restProps","isContainer","shouldReverseChildren","itemChildren","itemProps","reverse","Trigger1","Content1","Item1","ItemTitle1","ItemSubtitle1","ItemIcon1","ItemImage1","ItemIndicator1","Group1","Label1","Separator1","Sub1","SubTrigger1","SubContent1","Portal1","param","Arrow1","RadioGroup1","RadioItem1","CheckboxItem1","Preview1"],"sources":["../../../src/createNativeMenu/createNativeMenu.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=createNativeMenuTypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
|
|
@@ -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,52 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React, { Children, cloneElement, isValidElement } from "react";
|
|
3
|
+
function flattenChildrenKeyless(children) {
|
|
4
|
+
var childrenArray = React.Children.toArray(children);
|
|
5
|
+
return childrenArray.reduce(function (flatChildren, child) {
|
|
6
|
+
return child.type === React.Fragment ? flatChildren.concat(flattenChildren(child.props.children)) : (flatChildren.push(child), flatChildren);
|
|
7
|
+
}, []);
|
|
8
|
+
}
|
|
9
|
+
function flattenChildren(children, componentNamesToIgnore) {
|
|
10
|
+
var depth = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 0,
|
|
11
|
+
keys = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : [];
|
|
12
|
+
return Children.toArray(children).flatMap(function (elem) {
|
|
13
|
+
return /* @__PURE__ */isValidElement(elem) && typeof elem?.type == "function" && componentNamesToIgnore?.some(function (skipComponentName) {
|
|
14
|
+
return elem.type.displayName.includes(skipComponentName);
|
|
15
|
+
}) ? elem.props.children : elem;
|
|
16
|
+
}).reduce(function (acc, node, nodeIndex) {
|
|
17
|
+
return node.type === React.Fragment ? acc.push.apply(acc, flattenChildren(node.props.children, componentNamesToIgnore, depth + 1, keys.concat(node.key || nodeIndex))) : /* @__PURE__ */isValidElement(node) ? acc.push(/* @__PURE__ */cloneElement(node, {
|
|
18
|
+
key: keys.concat(String(node.key)).join(".")
|
|
19
|
+
})) : (typeof node == "string" || typeof node == "number") && acc.push(node), acc;
|
|
20
|
+
}, []);
|
|
21
|
+
}
|
|
22
|
+
var pickChildren = function (_children, targetChild, componentNamesToIgnore) {
|
|
23
|
+
var children = flattenChildren(_children, componentNamesToIgnore),
|
|
24
|
+
target = [],
|
|
25
|
+
withoutTargetChildren = React.Children.map(children, function (item) {
|
|
26
|
+
return /* @__PURE__ */isValidElement(item) && isInstanceOfComponent(item, targetChild) ? (target.push(/* @__PURE__ */cloneElement(item)), null) : item;
|
|
27
|
+
}),
|
|
28
|
+
targetChildren = target.length >= 0 ? target : void 0;
|
|
29
|
+
return {
|
|
30
|
+
targetChildren,
|
|
31
|
+
withoutTargetChildren
|
|
32
|
+
};
|
|
33
|
+
},
|
|
34
|
+
isInstanceOfComponent = function (element, targetElement) {
|
|
35
|
+
var _element_type,
|
|
36
|
+
_element_type1,
|
|
37
|
+
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");
|
|
38
|
+
return matches;
|
|
39
|
+
},
|
|
40
|
+
filterNull = function (t) {
|
|
41
|
+
return t != null;
|
|
42
|
+
},
|
|
43
|
+
create = function (Component, displayName) {
|
|
44
|
+
var MenuComponent = function (props) {
|
|
45
|
+
return /* @__PURE__ */_jsx(Component, {
|
|
46
|
+
...props
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
return MenuComponent.displayName = displayName, MenuComponent;
|
|
50
|
+
};
|
|
51
|
+
export { create, filterNull, flattenChildren, flattenChildrenKeyless, isInstanceOfComponent, pickChildren };
|
|
52
|
+
//# sourceMappingURL=utils.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","React","Children","cloneElement","isValidElement","flattenChildrenKeyless","children","childrenArray","toArray","reduce","flatChildren","child","type","Fragment","concat","flattenChildren","props","push","componentNamesToIgnore","depth","arguments","length","keys","flatMap","elem","some","skipComponentName","displayName","includes","acc","node","nodeIndex","apply","key","String","join","pickChildren","_children","targetChild","target","withoutTargetChildren","map","item","isInstanceOfComponent","targetChildren","element","targetElement","_element_type","_element_type1","matches","filterNull","t","create","Component","MenuComponent"],"sources":["../../../src/createNativeMenu/utils.tsx"],"sourcesContent":[null],"mappings":"AA0BA,SAAOA,GAAA,IAAAC,IAAA;AAAA,OACLC,KAAA,IAAAC,QAAA,EAAAC,YAAA,EAAAC,cAAA;AAAA,SAGAC,uBAAAC,QAAA;EACA,IAAAC,aAAA,GAAAN,KAAA,CAAAC,QAAA,CAAAM,OAAA,CAAAF,QAAA;EAAA,OACKC,aAAA,CAAAE,MAAA,WAAAC,YAAA,EAAAC,KAAA;IAgHI,OAAAA,KAAA,CAAAC,IAAA,KAAAX,KAAA,CAAAY,QAAA,GAAAH,YAAA,CAAAI,MAAA,CAAAC,eAAA,CAAAJ,KAAA,CAAAK,KAAA,CAAAV,QAAA,MAAAI,YAAA,CAAAO,IAAA,CAAAN,KAAA,GAAAD,YAAA;EA5GJ;AAEL;AAEwB,SAClBK,eAAiBA,CAAAT,QAAwC,EAAAY,sBAAQ;EACnE,IAAAC,KAEF,GAAAC,SAAa,CAAAC,MAAU,GAChB,KAAAD,SAAA,CACN,CAAC,CAAC,cAAAA,SAAA;IAAAE,IAAA,GAAAF,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EACP,OAAAlB,QAAA,CAAAM,OAAA,CAAAF,QAAA,EAAAiB,OAAA,WAAAC,IAAA;IAEO,OAAS,eACdpB,cACA,CAAAoB,IAAA,YAAAA,IACA,EAAAZ,IAAQ,IACR,UACa,IAAAM,sBAAA,EAAAO,IAAA,WAAAC,iBAAA;MACb,OAAOF,IAAA,CAASZ,IAAA,CAAAe,WAAgB,CAAAC,QAC7B,CAAQF,iBACH;IAG6B,CAAC,IAAAF,IAAA,CAAAR,KAAA,CAAAV,QAC3B,GAAAkB,IAAK;EACR,GAAAf,MAEqB,WAAMoB,GAAA,EAAAC,IAGxB,EACRC,SACO,EAAC;IAGH,OAAAD,IAAA,CAAAlB,IAAA,KAAAX,KAAA,CAAAY,QAAA,GAAAgB,GAAA,CAAAZ,IAAA,CAAAe,KAAA,CAAAH,GAAA,EAAAd,eAAA,CAAAe,IAAA,CAAAd,KAAA,CAAAV,QAAA,EAAAY,sBAAA,EAAAC,KAAA,MAAAG,IAAA,CAAAR,MAAA,CAAAgB,IAAA,CAAAG,GAAA,IAAAF,SAAA,qBAAA3B,cAAA,CAAA0B,IAAA,IAAAD,GAAA,CAAAZ,IAAA,gBAAAd,YAAA,CAAA2B,IAAA;MACAG,GAAA,EAAAX,IAAA,CAAAR,MAAA,CAAAoB,MAAA,CAAAJ,IAAA,CAAAG,GAAA,GAAAE,IAAA;IAAA,EACE,KAAK,OAAML,IAAA,uBAAAA,IAAA,iBAAAD,GAAA,CAAAZ,IAAA,CAAAa,IAAA,GAAAD,GAAA;EAAA,KACX;AAAA;AACQ,IAAAO,YACH,GAAO,SAAAA,CAAKC,SAAO,EAASC,WAAA,EAAApB,sBAAA;IAAA,IACnCZ,QAAA,GAAAS,eAAA,CAAAsB,SAAA,EAAAnB,sBAAA;MAAAqB,MAAA;MAAAC,qBAAA,GAAAvC,KAAA,CAAAC,QAAA,CAAAuC,GAAA,CAAAnC,QAAA,YAAAoC,IAAA;QACF,OAEI,eAAmBtC,cACjB,CAAAsC,IAAA,KAAAC,qBAAA,CAAAD,IAAA,EAAAJ,WAAA,KAAAC,MAAA,CAAAtB,IAAA,gBAAAd,YAAA,CAAAuC,IAAA,YAAAA,IAAA;MAAA,EACF;MAAAE,cAAa,GAAML,MAAA,CAAAlB,MAAA,QAAAkB,MAAA;IAAA,OACjB;MACFK,cAAC;MACHJ;IAOV;EAEO;EAAAG,qBACL,YAAAA,CACAE,OAAA,EAAAC,aACA;IAEA,IAAAC,aAAiB;MAAAC,cAAgB;MAAAC,OAAA,GAAWJ,OAAA,EAAAjC,IAAA,KAAAkC,aACtC,IAAiC,OACjCD,OAAA,EAAAjC,IAAA,cAA8B,MAAAiC,OAAa,QAAU,IAAC,CAAAE,aACrD,GAAAF,OAAe,CAAIjC,IAAA,MACpB,QAAAmC,aAAsB,KAAM,SAAW,KAEzC,IAAAA,aAAY,CAAApB,WAAkB,MACvBmB,aAGV,CAAAnB,WAAA,KAAAkB,OAAA,aAAAG,cAAA,GAAAH,OAAA,CAAAjC,IAAA,cAAAoC,cAAA,uBAAAA,cAAA,CAAArB,WAAA,MAAAmB,aAAA,CAAAnB,WAAA;IAID,OAAOsB,OAAA;EAAA;EAAAC,UACL,YAAAA,CAHqBC,CAAA,EAAO;IAAuB,OAInDA,CAAA;EAAA;EACFC,MAAA,YAAAA,CAAAC,SAAA,EAAA1B,WAAA;IACF,IAEa2B,aAAA,YAAAA,CACXtC,KAAA,EACA;MAqBA,OAAM,eAAkChB,IAAA,CAAAqD,SAC/B;QAET,GAAArC;MAGF","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,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { isWeb } from "@tamagui/web";
|
|
3
|
+
function withNativeMenu(param) {
|
|
4
|
+
var {
|
|
5
|
+
Component,
|
|
6
|
+
NativeComponent
|
|
7
|
+
} = param;
|
|
8
|
+
if (isWeb || !NativeComponent) return Component;
|
|
9
|
+
var Menu = function (props) {
|
|
10
|
+
return /* @__PURE__ */_jsx(NativeComponent, {
|
|
11
|
+
...props
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
return Menu.displayName = NativeComponent.displayName || Component?.displayName, Menu;
|
|
15
|
+
}
|
|
16
|
+
export { withNativeMenu };
|
|
17
|
+
//# sourceMappingURL=withNativeMenu.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","isWeb","withNativeMenu","param","Component","NativeComponent","Menu","props"],"sources":["../../../src/createNativeMenu/withNativeMenu.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,QAAa;AA+BX,SAAAC,KAAA;AA3BJ,SAASC,eAKdC,KAAA;EACA;IAAAC,SAAA;IAAAC;EAAA,IAAAF,KAAA;EACA,IAAAF,KAAA,KAAAI,eAAA,EAM6C,OAAAD,SAAA;EAS7C,IANIE,IAAA,YAAAA,CAMCC,KAAA;IACH,OAAO,eAAAP,IAAA,CAAAK,eAAA;MAGT,GAAME;IAKN;EAGF","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from "./createBaseMenu.mjs";
|
|
2
|
+
export * from "./createNativeMenu/createNativeMenu.mjs";
|
|
3
|
+
export * from "./createNativeMenu/withNativeMenu.mjs";
|
|
4
|
+
import { MenuPredefined } from "./MenuPredefined.mjs";
|
|
5
|
+
export { MenuPredefined };
|
|
6
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["MenuPredefined"],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AAEd,SAASA,cAAA,QAAsB","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from "./createBaseMenu.native.js";
|
|
2
|
+
export * from "./createNativeMenu/createNativeMenu.native.js";
|
|
3
|
+
export * from "./createNativeMenu/withNativeMenu.native.js";
|
|
4
|
+
import { MenuPredefined } from "./MenuPredefined.native.js";
|
|
5
|
+
export { MenuPredefined };
|
|
6
|
+
//# sourceMappingURL=index.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["MenuPredefined"],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AAEd,SAASA,cAAA,QAAsB","ignoreList":[]}
|