tamagui 2.7.0 → 2.7.2
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/.turbo/turbo-build.log +2 -2
- package/dist/native.cjs +23 -9
- package/dist/test.cjs +23 -9
- package/package.json +65 -65
package/.turbo/turbo-build.log
CHANGED
package/dist/native.cjs
CHANGED
|
@@ -14005,12 +14005,18 @@ function marker(name) {
|
|
|
14005
14005
|
Marker.displayName = `ExpoUI${name}`;
|
|
14006
14006
|
return Marker;
|
|
14007
14007
|
}
|
|
14008
|
+
function isMarkerType(candidate, type) {
|
|
14009
|
+
if (candidate === type) return true;
|
|
14010
|
+
var wanted = type.displayName;
|
|
14011
|
+
if (!wanted) return false;
|
|
14012
|
+
return typeof candidate === "function" && candidate.displayName === wanted;
|
|
14013
|
+
}
|
|
14008
14014
|
function elementOfType(children, type) {
|
|
14009
14015
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
14010
14016
|
try {
|
|
14011
14017
|
for (var _iterator = react$1.default.Children.toArray(children)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
14012
14018
|
var child = _step.value;
|
|
14013
|
-
if (/* @__PURE__ */ react$1.default.isValidElement(child) && child.type
|
|
14019
|
+
if (/* @__PURE__ */ react$1.default.isValidElement(child) && isMarkerType(child.type, type)) return child;
|
|
14014
14020
|
}
|
|
14015
14021
|
} catch (err) {
|
|
14016
14022
|
_didIteratorError = true;
|
|
@@ -14024,6 +14030,11 @@ function elementOfType(children, type) {
|
|
|
14024
14030
|
}
|
|
14025
14031
|
return null;
|
|
14026
14032
|
}
|
|
14033
|
+
function warnUnsupported(feature) {
|
|
14034
|
+
if (warnedUnsupported.has(feature) || true) return;
|
|
14035
|
+
warnedUnsupported.add(feature);
|
|
14036
|
+
console.warn(`[Tamagui] @expo/ui/community/menu does not support ${feature}, so it will not render. Register a different native menu adapter if you need it.`);
|
|
14037
|
+
}
|
|
14027
14038
|
function textFromNode(node) {
|
|
14028
14039
|
if (typeof node === "string" || typeof node === "number") return String(node);
|
|
14029
14040
|
if (!/* @__PURE__ */ react$1.default.isValidElement(node)) return "";
|
|
@@ -14056,7 +14067,7 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14056
14067
|
var content = elementOfType(children, Content);
|
|
14057
14068
|
var preview = elementOfType(children, Preview);
|
|
14058
14069
|
var auxiliary = elementOfType(children, Auxiliary);
|
|
14059
|
-
if (preview || auxiliary)
|
|
14070
|
+
if (preview || auxiliary) warnUnsupported("context-menu previews or auxiliary views");
|
|
14060
14071
|
if (!trigger || !content) throw new Error("Tamagui native menus require one Trigger and one Content");
|
|
14061
14072
|
var nextId = 0;
|
|
14062
14073
|
var handlers = /* @__PURE__ */ new Map();
|
|
@@ -14112,12 +14123,12 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14112
14123
|
var _loop = function() {
|
|
14113
14124
|
var child = _step.value;
|
|
14114
14125
|
if (!/* @__PURE__ */ react$1.default.isValidElement(child)) return "continue";
|
|
14115
|
-
if (child.type
|
|
14126
|
+
if (isMarkerType(child.type, Separator)) {
|
|
14116
14127
|
if (!section) section = actions.splice(0);
|
|
14117
14128
|
flushSection();
|
|
14118
14129
|
return "continue";
|
|
14119
14130
|
}
|
|
14120
|
-
if (child.type
|
|
14131
|
+
if (isMarkerType(child.type, Group)) {
|
|
14121
14132
|
var label2 = elementOfType(child.props.children, Label);
|
|
14122
14133
|
append({
|
|
14123
14134
|
id: actionId(child),
|
|
@@ -14127,7 +14138,7 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14127
14138
|
});
|
|
14128
14139
|
return "continue";
|
|
14129
14140
|
}
|
|
14130
|
-
if (child.type
|
|
14141
|
+
if (isMarkerType(child.type, Sub)) {
|
|
14131
14142
|
var subTrigger = elementOfType(child.props.children, SubTrigger);
|
|
14132
14143
|
var subContent = elementOfType(child.props.children, SubContent);
|
|
14133
14144
|
if (!subTrigger || !subContent) throw new Error("Tamagui native submenus require one SubTrigger and SubContent");
|
|
@@ -14140,10 +14151,10 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14140
14151
|
});
|
|
14141
14152
|
return "continue";
|
|
14142
14153
|
}
|
|
14143
|
-
if (child.type
|
|
14144
|
-
if (elementOfType(child.props.children, ItemSubtitle))
|
|
14154
|
+
if (!isMarkerType(child.type, Item) && !isMarkerType(child.type, CheckboxItem)) return "continue";
|
|
14155
|
+
if (elementOfType(child.props.children, ItemSubtitle)) warnUnsupported("menu item subtitles");
|
|
14145
14156
|
var id = actionId(child);
|
|
14146
|
-
if (child.type
|
|
14157
|
+
if (isMarkerType(child.type, CheckboxItem)) {
|
|
14147
14158
|
var current = child.props.value === true || child.props.value === "on" || child.props.checked === true;
|
|
14148
14159
|
var onValueChange = child.props.onValueChange;
|
|
14149
14160
|
var onCheckedChange = child.props.onCheckedChange;
|
|
@@ -14233,7 +14244,10 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14233
14244
|
ContextMenu: createModule(true)
|
|
14234
14245
|
};
|
|
14235
14246
|
}
|
|
14236
|
-
var
|
|
14247
|
+
var warnedUnsupported;
|
|
14248
|
+
var init_expoUIMenuAdapter_native = __esmMin((() => {
|
|
14249
|
+
warnedUnsupported = /* @__PURE__ */ new Set();
|
|
14250
|
+
}));
|
|
14237
14251
|
//#endregion
|
|
14238
14252
|
//#region ../../core/native/dist/esm/nativeMenuContext.native.js
|
|
14239
14253
|
var NativeMenuContext;
|
package/dist/test.cjs
CHANGED
|
@@ -14183,12 +14183,18 @@ function marker(name) {
|
|
|
14183
14183
|
Marker.displayName = `ExpoUI${name}`;
|
|
14184
14184
|
return Marker;
|
|
14185
14185
|
}
|
|
14186
|
+
function isMarkerType(candidate, type) {
|
|
14187
|
+
if (candidate === type) return true;
|
|
14188
|
+
var wanted = type.displayName;
|
|
14189
|
+
if (!wanted) return false;
|
|
14190
|
+
return typeof candidate === "function" && candidate.displayName === wanted;
|
|
14191
|
+
}
|
|
14186
14192
|
function elementOfType(children, type) {
|
|
14187
14193
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
14188
14194
|
try {
|
|
14189
14195
|
for (var _iterator = react$1.default.Children.toArray(children)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
14190
14196
|
var child = _step.value;
|
|
14191
|
-
if (/* @__PURE__ */ react$1.default.isValidElement(child) && child.type
|
|
14197
|
+
if (/* @__PURE__ */ react$1.default.isValidElement(child) && isMarkerType(child.type, type)) return child;
|
|
14192
14198
|
}
|
|
14193
14199
|
} catch (err) {
|
|
14194
14200
|
_didIteratorError = true;
|
|
@@ -14202,6 +14208,11 @@ function elementOfType(children, type) {
|
|
|
14202
14208
|
}
|
|
14203
14209
|
return null;
|
|
14204
14210
|
}
|
|
14211
|
+
function warnUnsupported(feature) {
|
|
14212
|
+
if (warnedUnsupported.has(feature) || false) return;
|
|
14213
|
+
warnedUnsupported.add(feature);
|
|
14214
|
+
console.warn(`[Tamagui] @expo/ui/community/menu does not support ${feature}, so it will not render. Register a different native menu adapter if you need it.`);
|
|
14215
|
+
}
|
|
14205
14216
|
function textFromNode(node) {
|
|
14206
14217
|
if (typeof node === "string" || typeof node === "number") return String(node);
|
|
14207
14218
|
if (!/* @__PURE__ */ react$1.default.isValidElement(node)) return "";
|
|
@@ -14234,7 +14245,7 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14234
14245
|
var content = elementOfType(children, Content);
|
|
14235
14246
|
var preview = elementOfType(children, Preview);
|
|
14236
14247
|
var auxiliary = elementOfType(children, Auxiliary);
|
|
14237
|
-
if (preview || auxiliary)
|
|
14248
|
+
if (preview || auxiliary) warnUnsupported("context-menu previews or auxiliary views");
|
|
14238
14249
|
if (!trigger || !content) throw new Error("Tamagui native menus require one Trigger and one Content");
|
|
14239
14250
|
var nextId = 0;
|
|
14240
14251
|
var handlers = /* @__PURE__ */ new Map();
|
|
@@ -14290,12 +14301,12 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14290
14301
|
var _loop = function() {
|
|
14291
14302
|
var child = _step.value;
|
|
14292
14303
|
if (!/* @__PURE__ */ react$1.default.isValidElement(child)) return "continue";
|
|
14293
|
-
if (child.type
|
|
14304
|
+
if (isMarkerType(child.type, Separator)) {
|
|
14294
14305
|
if (!section) section = actions.splice(0);
|
|
14295
14306
|
flushSection();
|
|
14296
14307
|
return "continue";
|
|
14297
14308
|
}
|
|
14298
|
-
if (child.type
|
|
14309
|
+
if (isMarkerType(child.type, Group)) {
|
|
14299
14310
|
var label2 = elementOfType(child.props.children, Label);
|
|
14300
14311
|
append({
|
|
14301
14312
|
id: actionId(child),
|
|
@@ -14305,7 +14316,7 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14305
14316
|
});
|
|
14306
14317
|
return "continue";
|
|
14307
14318
|
}
|
|
14308
|
-
if (child.type
|
|
14319
|
+
if (isMarkerType(child.type, Sub)) {
|
|
14309
14320
|
var subTrigger = elementOfType(child.props.children, SubTrigger);
|
|
14310
14321
|
var subContent = elementOfType(child.props.children, SubContent);
|
|
14311
14322
|
if (!subTrigger || !subContent) throw new Error("Tamagui native submenus require one SubTrigger and SubContent");
|
|
@@ -14318,10 +14329,10 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14318
14329
|
});
|
|
14319
14330
|
return "continue";
|
|
14320
14331
|
}
|
|
14321
|
-
if (child.type
|
|
14322
|
-
if (elementOfType(child.props.children, ItemSubtitle))
|
|
14332
|
+
if (!isMarkerType(child.type, Item) && !isMarkerType(child.type, CheckboxItem)) return "continue";
|
|
14333
|
+
if (elementOfType(child.props.children, ItemSubtitle)) warnUnsupported("menu item subtitles");
|
|
14323
14334
|
var id = actionId(child);
|
|
14324
|
-
if (child.type
|
|
14335
|
+
if (isMarkerType(child.type, CheckboxItem)) {
|
|
14325
14336
|
var current = child.props.value === true || child.props.value === "on" || child.props.checked === true;
|
|
14326
14337
|
var onValueChange = child.props.onValueChange;
|
|
14327
14338
|
var onCheckedChange = child.props.onCheckedChange;
|
|
@@ -14411,7 +14422,10 @@ function createExpoUIMenuAdapter(param) {
|
|
|
14411
14422
|
ContextMenu: createModule(true)
|
|
14412
14423
|
};
|
|
14413
14424
|
}
|
|
14414
|
-
var
|
|
14425
|
+
var warnedUnsupported;
|
|
14426
|
+
var init_expoUIMenuAdapter_native = __esmMin((() => {
|
|
14427
|
+
warnedUnsupported = /* @__PURE__ */ new Set();
|
|
14428
|
+
}));
|
|
14415
14429
|
//#endregion
|
|
14416
14430
|
//#region ../../core/native/dist/esm/nativeMenuContext.native.js
|
|
14417
14431
|
var NativeMenuContext;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tamagui",
|
|
3
|
-
"version": "2.7.
|
|
3
|
+
"version": "2.7.2",
|
|
4
4
|
"gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
|
|
5
5
|
"description": "Style and UI for React (web and native) meet an optimizing compiler",
|
|
6
6
|
"repository": {
|
|
@@ -77,72 +77,72 @@
|
|
|
77
77
|
"check-circular-deps": "npx madge --circular ./src/index.ts"
|
|
78
78
|
},
|
|
79
79
|
"dependencies": {
|
|
80
|
-
"@tamagui/accordion": "2.7.
|
|
81
|
-
"@tamagui/adapt": "2.7.
|
|
82
|
-
"@tamagui/alert-dialog": "2.7.
|
|
83
|
-
"@tamagui/animate": "2.7.
|
|
84
|
-
"@tamagui/animate-presence": "2.7.
|
|
85
|
-
"@tamagui/avatar": "2.7.
|
|
86
|
-
"@tamagui/button": "2.7.
|
|
87
|
-
"@tamagui/card": "2.7.
|
|
88
|
-
"@tamagui/checkbox": "2.7.
|
|
89
|
-
"@tamagui/collapsible": "2.7.
|
|
90
|
-
"@tamagui/compose-refs": "2.7.
|
|
91
|
-
"@tamagui/constants": "2.7.
|
|
92
|
-
"@tamagui/context-menu": "2.7.
|
|
93
|
-
"@tamagui/core": "2.7.
|
|
94
|
-
"@tamagui/create-context": "2.7.
|
|
95
|
-
"@tamagui/create-menu": "2.7.
|
|
96
|
-
"@tamagui/dialog": "2.7.
|
|
97
|
-
"@tamagui/element": "2.7.
|
|
98
|
-
"@tamagui/elements": "2.7.
|
|
99
|
-
"@tamagui/fake-react-native": "2.7.
|
|
100
|
-
"@tamagui/focusable": "2.7.
|
|
101
|
-
"@tamagui/form": "2.7.
|
|
102
|
-
"@tamagui/get-button-sized": "2.7.
|
|
103
|
-
"@tamagui/get-font-sized": "2.7.
|
|
104
|
-
"@tamagui/get-token": "2.7.
|
|
105
|
-
"@tamagui/group": "2.7.
|
|
106
|
-
"@tamagui/helpers-tamagui": "2.7.
|
|
107
|
-
"@tamagui/image": "2.7.
|
|
108
|
-
"@tamagui/input": "2.7.
|
|
109
|
-
"@tamagui/label": "2.7.
|
|
110
|
-
"@tamagui/linear-gradient": "2.7.
|
|
111
|
-
"@tamagui/list-item": "2.7.
|
|
112
|
-
"@tamagui/menu": "2.7.
|
|
113
|
-
"@tamagui/polyfill-dev": "2.7.
|
|
114
|
-
"@tamagui/popover": "2.7.
|
|
115
|
-
"@tamagui/popper": "2.7.
|
|
116
|
-
"@tamagui/portal": "2.7.
|
|
117
|
-
"@tamagui/progress": "2.7.
|
|
118
|
-
"@tamagui/radio-group": "2.7.
|
|
119
|
-
"@tamagui/react-native-media-driver": "2.7.
|
|
120
|
-
"@tamagui/scroll-view": "2.7.
|
|
121
|
-
"@tamagui/select": "2.7.
|
|
122
|
-
"@tamagui/separator": "2.7.
|
|
123
|
-
"@tamagui/shapes": "2.7.
|
|
124
|
-
"@tamagui/sheet": "2.7.
|
|
125
|
-
"@tamagui/slider": "2.7.
|
|
126
|
-
"@tamagui/spacer": "2.7.
|
|
127
|
-
"@tamagui/spinner": "2.7.
|
|
128
|
-
"@tamagui/stacks": "2.7.
|
|
129
|
-
"@tamagui/switch": "2.7.
|
|
130
|
-
"@tamagui/tabs": "2.7.
|
|
131
|
-
"@tamagui/text": "2.7.
|
|
132
|
-
"@tamagui/theme": "2.7.
|
|
133
|
-
"@tamagui/toast": "2.7.
|
|
134
|
-
"@tamagui/toggle-group": "2.7.
|
|
135
|
-
"@tamagui/tooltip": "2.7.
|
|
136
|
-
"@tamagui/use-controllable-state": "2.7.
|
|
137
|
-
"@tamagui/use-debounce": "2.7.
|
|
138
|
-
"@tamagui/use-force-update": "2.7.
|
|
139
|
-
"@tamagui/use-window-dimensions": "2.7.
|
|
140
|
-
"@tamagui/visually-hidden": "2.7.
|
|
141
|
-
"@tamagui/font-size": "2.7.
|
|
142
|
-
"@tamagui/z-index-stack": "2.7.
|
|
80
|
+
"@tamagui/accordion": "2.7.2",
|
|
81
|
+
"@tamagui/adapt": "2.7.2",
|
|
82
|
+
"@tamagui/alert-dialog": "2.7.2",
|
|
83
|
+
"@tamagui/animate": "2.7.2",
|
|
84
|
+
"@tamagui/animate-presence": "2.7.2",
|
|
85
|
+
"@tamagui/avatar": "2.7.2",
|
|
86
|
+
"@tamagui/button": "2.7.2",
|
|
87
|
+
"@tamagui/card": "2.7.2",
|
|
88
|
+
"@tamagui/checkbox": "2.7.2",
|
|
89
|
+
"@tamagui/collapsible": "2.7.2",
|
|
90
|
+
"@tamagui/compose-refs": "2.7.2",
|
|
91
|
+
"@tamagui/constants": "2.7.2",
|
|
92
|
+
"@tamagui/context-menu": "2.7.2",
|
|
93
|
+
"@tamagui/core": "2.7.2",
|
|
94
|
+
"@tamagui/create-context": "2.7.2",
|
|
95
|
+
"@tamagui/create-menu": "2.7.2",
|
|
96
|
+
"@tamagui/dialog": "2.7.2",
|
|
97
|
+
"@tamagui/element": "2.7.2",
|
|
98
|
+
"@tamagui/elements": "2.7.2",
|
|
99
|
+
"@tamagui/fake-react-native": "2.7.2",
|
|
100
|
+
"@tamagui/focusable": "2.7.2",
|
|
101
|
+
"@tamagui/form": "2.7.2",
|
|
102
|
+
"@tamagui/get-button-sized": "2.7.2",
|
|
103
|
+
"@tamagui/get-font-sized": "2.7.2",
|
|
104
|
+
"@tamagui/get-token": "2.7.2",
|
|
105
|
+
"@tamagui/group": "2.7.2",
|
|
106
|
+
"@tamagui/helpers-tamagui": "2.7.2",
|
|
107
|
+
"@tamagui/image": "2.7.2",
|
|
108
|
+
"@tamagui/input": "2.7.2",
|
|
109
|
+
"@tamagui/label": "2.7.2",
|
|
110
|
+
"@tamagui/linear-gradient": "2.7.2",
|
|
111
|
+
"@tamagui/list-item": "2.7.2",
|
|
112
|
+
"@tamagui/menu": "2.7.2",
|
|
113
|
+
"@tamagui/polyfill-dev": "2.7.2",
|
|
114
|
+
"@tamagui/popover": "2.7.2",
|
|
115
|
+
"@tamagui/popper": "2.7.2",
|
|
116
|
+
"@tamagui/portal": "2.7.2",
|
|
117
|
+
"@tamagui/progress": "2.7.2",
|
|
118
|
+
"@tamagui/radio-group": "2.7.2",
|
|
119
|
+
"@tamagui/react-native-media-driver": "2.7.2",
|
|
120
|
+
"@tamagui/scroll-view": "2.7.2",
|
|
121
|
+
"@tamagui/select": "2.7.2",
|
|
122
|
+
"@tamagui/separator": "2.7.2",
|
|
123
|
+
"@tamagui/shapes": "2.7.2",
|
|
124
|
+
"@tamagui/sheet": "2.7.2",
|
|
125
|
+
"@tamagui/slider": "2.7.2",
|
|
126
|
+
"@tamagui/spacer": "2.7.2",
|
|
127
|
+
"@tamagui/spinner": "2.7.2",
|
|
128
|
+
"@tamagui/stacks": "2.7.2",
|
|
129
|
+
"@tamagui/switch": "2.7.2",
|
|
130
|
+
"@tamagui/tabs": "2.7.2",
|
|
131
|
+
"@tamagui/text": "2.7.2",
|
|
132
|
+
"@tamagui/theme": "2.7.2",
|
|
133
|
+
"@tamagui/toast": "2.7.2",
|
|
134
|
+
"@tamagui/toggle-group": "2.7.2",
|
|
135
|
+
"@tamagui/tooltip": "2.7.2",
|
|
136
|
+
"@tamagui/use-controllable-state": "2.7.2",
|
|
137
|
+
"@tamagui/use-debounce": "2.7.2",
|
|
138
|
+
"@tamagui/use-force-update": "2.7.2",
|
|
139
|
+
"@tamagui/use-window-dimensions": "2.7.2",
|
|
140
|
+
"@tamagui/visually-hidden": "2.7.2",
|
|
141
|
+
"@tamagui/font-size": "2.7.2",
|
|
142
|
+
"@tamagui/z-index-stack": "2.7.2"
|
|
143
143
|
},
|
|
144
144
|
"devDependencies": {
|
|
145
|
-
"@tamagui/build": "2.7.
|
|
145
|
+
"@tamagui/build": "2.7.2",
|
|
146
146
|
"react": ">=19",
|
|
147
147
|
"react-native": "0.83.2",
|
|
148
148
|
"react-native-web": "^0.21.0"
|