tamagui 1.126.18 → 1.127.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/dist/native.js +115 -29
- package/dist/native.js.map +2 -2
- package/dist/test.native.js +115 -29
- package/dist/test.native.js.map +2 -2
- package/package.json +55 -55
package/dist/native.js
CHANGED
|
@@ -1149,6 +1149,9 @@ var require_constants_native = __commonJS({
|
|
|
1149
1149
|
}), mod);
|
|
1150
1150
|
}, constants_native_exports = {};
|
|
1151
1151
|
__export2(constants_native_exports, {
|
|
1152
|
+
IS_REACT_19: function() {
|
|
1153
|
+
return IS_REACT_19;
|
|
1154
|
+
},
|
|
1152
1155
|
currentPlatform: function() {
|
|
1153
1156
|
return currentPlatform;
|
|
1154
1157
|
},
|
|
@@ -1184,7 +1187,7 @@ var require_constants_native = __commonJS({
|
|
|
1184
1187
|
}
|
|
1185
1188
|
});
|
|
1186
1189
|
module2.exports = __toCommonJS2(constants_native_exports);
|
|
1187
|
-
var import_react3 = require("react"), import_react_native4 = require("react-native"), isWeb6 = !1, isWindowDefined = !1, isServer2 = !1, isClient2 = !1, useIsomorphicLayoutEffect2 = import_react3.useLayoutEffect, isChrome2 = !1, isWebTouchable2 = !1, isTouchable2 = !0, isAndroid = import_react_native4.Platform.OS === "android" || process.env.TEST_NATIVE_PLATFORM === "android", isIos = import_react_native4.Platform.OS === "ios" || process.env.TEST_NATIVE_PLATFORM === "ios", platforms = {
|
|
1190
|
+
var import_react3 = require("react"), import_react22 = require("react"), import_react_native4 = require("react-native"), IS_REACT_19 = !!import_react22.use, isWeb6 = !1, isWindowDefined = !1, isServer2 = !1, isClient2 = !1, useIsomorphicLayoutEffect2 = import_react3.useLayoutEffect, isChrome2 = !1, isWebTouchable2 = !1, isTouchable2 = !0, isAndroid = import_react_native4.Platform.OS === "android" || process.env.TEST_NATIVE_PLATFORM === "android", isIos = import_react_native4.Platform.OS === "ios" || process.env.TEST_NATIVE_PLATFORM === "ios", platforms = {
|
|
1188
1191
|
ios: "ios",
|
|
1189
1192
|
android: "android"
|
|
1190
1193
|
}, currentPlatform = platforms[import_react_native4.Platform.OS] || "native";
|
|
@@ -13570,12 +13573,31 @@ var require_getBoundingClientRect_native = __commonJS({
|
|
|
13570
13573
|
__export2(getBoundingClientRect_exports, {
|
|
13571
13574
|
getBoundingClientRect: function() {
|
|
13572
13575
|
return getBoundingClientRect;
|
|
13576
|
+
},
|
|
13577
|
+
getBoundingClientRectAsync: function() {
|
|
13578
|
+
return getBoundingClientRectAsync;
|
|
13573
13579
|
}
|
|
13574
13580
|
});
|
|
13575
13581
|
module2.exports = __toCommonJS2(getBoundingClientRect_exports);
|
|
13576
13582
|
var getBoundingClientRect = function(node) {
|
|
13577
13583
|
var _node_getBoundingClientRect;
|
|
13578
13584
|
if (!(!node || node.nodeType !== 1)) return (_node_getBoundingClientRect = node.getBoundingClientRect) === null || _node_getBoundingClientRect === void 0 ? void 0 : _node_getBoundingClientRect.call(node);
|
|
13585
|
+
}, getBoundingClientRectAsync = function(element) {
|
|
13586
|
+
return new Promise(function(resolve) {
|
|
13587
|
+
var didFallback = !1;
|
|
13588
|
+
function fallbackToSync() {
|
|
13589
|
+
didFallback = !0, resolve(getBoundingClientRect(element));
|
|
13590
|
+
}
|
|
13591
|
+
var tm = setTimeout(fallbackToSync, 32), observer = new IntersectionObserver(function(entries, ob) {
|
|
13592
|
+
if (clearTimeout(tm), ob.disconnect(), !didFallback) {
|
|
13593
|
+
var _entries_;
|
|
13594
|
+
resolve((_entries_ = entries[0]) === null || _entries_ === void 0 ? void 0 : _entries_.boundingClientRect);
|
|
13595
|
+
}
|
|
13596
|
+
}, {
|
|
13597
|
+
threshold: 1e-4
|
|
13598
|
+
});
|
|
13599
|
+
observer.observe(element);
|
|
13600
|
+
});
|
|
13579
13601
|
};
|
|
13580
13602
|
}
|
|
13581
13603
|
});
|
|
@@ -13681,9 +13703,15 @@ var require_useElementLayout_native = __commonJS({
|
|
|
13681
13703
|
getElementLayoutEvent: function() {
|
|
13682
13704
|
return getElementLayoutEvent2;
|
|
13683
13705
|
},
|
|
13706
|
+
getElementLayoutEventAsync: function() {
|
|
13707
|
+
return getElementLayoutEventAsync;
|
|
13708
|
+
},
|
|
13684
13709
|
measureLayout: function() {
|
|
13685
13710
|
return measureLayout;
|
|
13686
13711
|
},
|
|
13712
|
+
measureLayoutAsync: function() {
|
|
13713
|
+
return measureLayoutAsync;
|
|
13714
|
+
},
|
|
13687
13715
|
setOnLayoutStrategy: function() {
|
|
13688
13716
|
return setOnLayoutStrategy3;
|
|
13689
13717
|
},
|
|
@@ -13692,37 +13720,62 @@ var require_useElementLayout_native = __commonJS({
|
|
|
13692
13720
|
}
|
|
13693
13721
|
});
|
|
13694
13722
|
module2.exports = __toCommonJS2(useElementLayout_exports);
|
|
13695
|
-
var import_constants4 = require_index_native6(), import_web = require_index_native14(), LayoutHandlers = /* @__PURE__ */ new WeakMap(), Nodes = /* @__PURE__ */ new Set(),
|
|
13723
|
+
var import_constants4 = require_index_native6(), import_web = require_index_native14(), LayoutHandlers = /* @__PURE__ */ new WeakMap(), Nodes = /* @__PURE__ */ new Set(), strategy = "async";
|
|
13696
13724
|
function setOnLayoutStrategy3(state) {
|
|
13697
|
-
|
|
13698
|
-
}
|
|
13699
|
-
var NodeRectCache = /* @__PURE__ */ new WeakMap(), ParentRectCache = /* @__PURE__ */ new WeakMap(), rAF = typeof window < "u" ? window.requestAnimationFrame : void 0;
|
|
13700
|
-
import_constants4.isClient
|
|
13701
|
-
|
|
13702
|
-
|
|
13703
|
-
|
|
13704
|
-
|
|
13705
|
-
|
|
13706
|
-
|
|
13707
|
-
|
|
13708
|
-
|
|
13709
|
-
|
|
13710
|
-
|
|
13711
|
-
}
|
|
13712
|
-
}
|
|
13713
|
-
|
|
13714
|
-
|
|
13715
|
-
|
|
13716
|
-
|
|
13717
|
-
|
|
13725
|
+
strategy = state;
|
|
13726
|
+
}
|
|
13727
|
+
var NodeRectCache = /* @__PURE__ */ new WeakMap(), ParentRectCache = /* @__PURE__ */ new WeakMap(), DebounceTimers = /* @__PURE__ */ new WeakMap(), LastChangeTime = /* @__PURE__ */ new WeakMap(), rAF = typeof window < "u" ? window.requestAnimationFrame : void 0, DEBOUNCE_DELAY = 32;
|
|
13728
|
+
if (import_constants4.isClient) if (rAF) {
|
|
13729
|
+
layoutOnAnimationFrame = function() {
|
|
13730
|
+
var now = Date.now(), timeSinceLastFrame = now - lastFrameAt;
|
|
13731
|
+
if (lastFrameAt = now, strategy !== "off") {
|
|
13732
|
+
var expectedFrameTime = 16.67, hasRecentSyncWork = timeSinceLastFrame > expectedFrameTime * numDroppedFramesUntilPause;
|
|
13733
|
+
hasRecentSyncWork || Nodes.forEach(updateLayoutIfChanged);
|
|
13734
|
+
}
|
|
13735
|
+
rAF(layoutOnAnimationFrame);
|
|
13736
|
+
}, layoutOnAnimationFrame2 = layoutOnAnimationFrame, avoidUpdates = !0, queuedUpdates = /* @__PURE__ */ new Map(), lastFrameAt = Date.now(), numDroppedFramesUntilPause = 2, (0, import_web.___onDidFinishClientRender)(function() {
|
|
13737
|
+
avoidUpdates = !1, queuedUpdates && (queuedUpdates.forEach(function(cb) {
|
|
13738
|
+
return cb();
|
|
13739
|
+
}), queuedUpdates.clear());
|
|
13740
|
+
});
|
|
13741
|
+
async function updateLayoutIfChanged(node) {
|
|
13742
|
+
var nodeRect = node.getBoundingClientRect(), parentNode = node.parentElement, parentRect = parentNode == null ? void 0 : parentNode.getBoundingClientRect(), onLayout = LayoutHandlers.get(node);
|
|
13743
|
+
if (typeof onLayout == "function") {
|
|
13744
|
+
var cachedRect = NodeRectCache.get(node), cachedParentRect = parentNode ? NodeRectCache.get(parentNode) : null;
|
|
13745
|
+
if (!cachedRect || // has changed one rect
|
|
13746
|
+
!(0, import_web.isEqualShallow)(cachedRect, nodeRect) && (!cachedParentRect || !(0, import_web.isEqualShallow)(cachedParentRect, parentRect))) if (NodeRectCache.set(node, nodeRect), parentRect && parentNode && ParentRectCache.set(parentNode, parentRect), avoidUpdates) {
|
|
13747
|
+
var event = getElementLayoutEvent2(node);
|
|
13748
|
+
queuedUpdates.set(node, function() {
|
|
13749
|
+
return onLayout(event);
|
|
13750
|
+
});
|
|
13751
|
+
} else if (strategy === "async") {
|
|
13752
|
+
var now = Date.now();
|
|
13753
|
+
LastChangeTime.set(node, now);
|
|
13754
|
+
var existingTimer = DebounceTimers.get(node);
|
|
13755
|
+
existingTimer && clearTimeout(existingTimer);
|
|
13756
|
+
var timer = setTimeout(async function() {
|
|
13757
|
+
var lastChange = LastChangeTime.get(node) || 0, timeSinceChange = Date.now() - lastChange;
|
|
13758
|
+
if (timeSinceChange >= DEBOUNCE_DELAY) {
|
|
13759
|
+
var event2 = await getElementLayoutEventAsync(node);
|
|
13760
|
+
onLayout(event2), DebounceTimers.delete(node);
|
|
13761
|
+
} else {
|
|
13762
|
+
var remainingDelay = DEBOUNCE_DELAY - timeSinceChange, newTimer = setTimeout(async function() {
|
|
13763
|
+
var event3 = await getElementLayoutEventAsync(node);
|
|
13764
|
+
onLayout(event3), DebounceTimers.delete(node);
|
|
13765
|
+
}, remainingDelay);
|
|
13766
|
+
DebounceTimers.set(node, newTimer);
|
|
13767
|
+
}
|
|
13768
|
+
}, DEBOUNCE_DELAY);
|
|
13769
|
+
DebounceTimers.set(node, timer);
|
|
13770
|
+
} else {
|
|
13771
|
+
var event1 = getElementLayoutEvent2(node);
|
|
13772
|
+
onLayout(event1);
|
|
13773
|
+
}
|
|
13774
|
+
}
|
|
13718
13775
|
}
|
|
13719
13776
|
rAF(layoutOnAnimationFrame);
|
|
13720
|
-
}
|
|
13721
|
-
|
|
13722
|
-
return cb();
|
|
13723
|
-
}), queuedUpdates.clear());
|
|
13724
|
-
}), rAF(layoutOnAnimationFrame)) : process.env.NODE_ENV === "development" && console.warn("No requestAnimationFrame - please polyfill for onLayout to work correctly"));
|
|
13725
|
-
var updateLayoutIfChanged, layoutOnAnimationFrame, updateLayoutIfChanged2, layoutOnAnimationFrame2, avoidUpdates, queuedUpdates, lastFrameAt, numDroppedFramesUntilPause, getElementLayoutEvent2 = function(target) {
|
|
13777
|
+
} else process.env.NODE_ENV === "development" && console.warn("No requestAnimationFrame - please polyfill for onLayout to work correctly");
|
|
13778
|
+
var layoutOnAnimationFrame, layoutOnAnimationFrame2, avoidUpdates, queuedUpdates, lastFrameAt, numDroppedFramesUntilPause, getElementLayoutEvent2 = function(target) {
|
|
13726
13779
|
var res = null;
|
|
13727
13780
|
if (measureLayout(target, null, function(x, y, width, height, left, top) {
|
|
13728
13781
|
res = {
|
|
@@ -13750,6 +13803,37 @@ var require_useElementLayout_native = __commonJS({
|
|
|
13750
13803
|
callback(x, y, width, height, left, top);
|
|
13751
13804
|
}
|
|
13752
13805
|
}
|
|
13806
|
+
}, getElementLayoutEventAsync = async function(target) {
|
|
13807
|
+
var res = null;
|
|
13808
|
+
if (await measureLayoutAsync(target, null, function(x, y, width, height, left, top) {
|
|
13809
|
+
res = {
|
|
13810
|
+
nativeEvent: {
|
|
13811
|
+
layout: {
|
|
13812
|
+
x,
|
|
13813
|
+
y,
|
|
13814
|
+
width,
|
|
13815
|
+
height,
|
|
13816
|
+
left,
|
|
13817
|
+
top
|
|
13818
|
+
},
|
|
13819
|
+
target
|
|
13820
|
+
},
|
|
13821
|
+
timeStamp: Date.now()
|
|
13822
|
+
};
|
|
13823
|
+
}), !res) throw new Error("\u203C\uFE0F");
|
|
13824
|
+
return res;
|
|
13825
|
+
}, measureLayoutAsync = async function(node, relativeTo, callback) {
|
|
13826
|
+
var relativeNode = relativeTo || (node == null ? void 0 : node.parentElement);
|
|
13827
|
+
if (relativeNode instanceof HTMLElement) {
|
|
13828
|
+
var [nodeDim, relativeNodeDim] = await Promise.all([
|
|
13829
|
+
node.getBoundingClientRect(),
|
|
13830
|
+
relativeNode.getBoundingClientRect()
|
|
13831
|
+
]);
|
|
13832
|
+
if (relativeNodeDim && nodeDim) {
|
|
13833
|
+
var { x, y, width, height, left, top } = getRelativeDimensions(nodeDim, relativeNodeDim);
|
|
13834
|
+
callback(x, y, width, height, left, top);
|
|
13835
|
+
}
|
|
13836
|
+
}
|
|
13753
13837
|
}, getRelativeDimensions = function(a, b) {
|
|
13754
13838
|
var { height, left, top, width } = a, x = left - b.left, y = top - b.top;
|
|
13755
13839
|
return {
|
|
@@ -13769,6 +13853,8 @@ var require_useElementLayout_native = __commonJS({
|
|
|
13769
13853
|
var node2 = (_ref_current2 = ref.current) === null || _ref_current2 === void 0 ? void 0 : _ref_current2.host;
|
|
13770
13854
|
if (node2) return LayoutHandlers.set(node2, onLayout), Nodes.add(node2), onLayout(getElementLayoutEvent2(node2)), function() {
|
|
13771
13855
|
Nodes.delete(node2), LayoutHandlers.delete(node2), NodeRectCache.delete(node2);
|
|
13856
|
+
var timer = DebounceTimers.get(node2);
|
|
13857
|
+
timer && (clearTimeout(timer), DebounceTimers.delete(node2)), LastChangeTime.delete(node2);
|
|
13772
13858
|
};
|
|
13773
13859
|
}
|
|
13774
13860
|
}, [
|