@tamagui/core 1.100.1 → 1.100.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/dist/native.js +83 -11
- package/dist/native.js.map +3 -3
- package/dist/test.native.js +83 -11
- package/dist/test.native.js.map +3 -3
- package/package.json +6 -6
package/dist/native.js
CHANGED
|
@@ -2974,6 +2974,70 @@ var require_useDisableSSR_native = __commonJS({
|
|
|
2974
2974
|
}
|
|
2975
2975
|
});
|
|
2976
2976
|
|
|
2977
|
+
// ../web/dist/cjs/hooks/useDidHydrateOnce.native.js
|
|
2978
|
+
var require_useDidHydrateOnce_native = __commonJS({
|
|
2979
|
+
"../web/dist/cjs/hooks/useDidHydrateOnce.native.js"(exports2, module2) {
|
|
2980
|
+
"use strict";
|
|
2981
|
+
var __defProp2 = Object.defineProperty, __getOwnPropDesc2 = Object.getOwnPropertyDescriptor, __getOwnPropNames2 = Object.getOwnPropertyNames, __hasOwnProp2 = Object.prototype.hasOwnProperty, __export2 = function(target, all) {
|
|
2982
|
+
for (var name in all) __defProp2(target, name, {
|
|
2983
|
+
get: all[name],
|
|
2984
|
+
enumerable: !0
|
|
2985
|
+
});
|
|
2986
|
+
}, __copyProps2 = function(to, from, except, desc) {
|
|
2987
|
+
var _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
|
|
2988
|
+
if (from && typeof from == "object" || typeof from == "function") try {
|
|
2989
|
+
for (var _loop = function() {
|
|
2990
|
+
var key = _step.value;
|
|
2991
|
+
!__hasOwnProp2.call(to, key) && key !== except && __defProp2(to, key, {
|
|
2992
|
+
get: function() {
|
|
2993
|
+
return from[key];
|
|
2994
|
+
},
|
|
2995
|
+
enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable
|
|
2996
|
+
});
|
|
2997
|
+
}, _iterator = __getOwnPropNames2(from)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) _loop();
|
|
2998
|
+
} catch (err) {
|
|
2999
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
3000
|
+
} finally {
|
|
3001
|
+
try {
|
|
3002
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
3003
|
+
} finally {
|
|
3004
|
+
if (_didIteratorError)
|
|
3005
|
+
throw _iteratorError;
|
|
3006
|
+
}
|
|
3007
|
+
}
|
|
3008
|
+
return to;
|
|
3009
|
+
}, __toCommonJS2 = function(mod) {
|
|
3010
|
+
return __copyProps2(__defProp2({}, "__esModule", {
|
|
3011
|
+
value: !0
|
|
3012
|
+
}), mod);
|
|
3013
|
+
}, useDidHydrateOnce_exports = {};
|
|
3014
|
+
__export2(useDidHydrateOnce_exports, {
|
|
3015
|
+
useDidHydrateOnce: function() {
|
|
3016
|
+
return useDidHydrateOnce;
|
|
3017
|
+
},
|
|
3018
|
+
useDidHydrateOnceRoot: function() {
|
|
3019
|
+
return useDidHydrateOnceRoot;
|
|
3020
|
+
}
|
|
3021
|
+
});
|
|
3022
|
+
module2.exports = __toCommonJS2(useDidHydrateOnce_exports);
|
|
3023
|
+
var import_react3 = require("react"), didHydrateOnce = !1;
|
|
3024
|
+
function useDidHydrateOnceRoot() {
|
|
3025
|
+
(0, import_react3.useEffect)(function() {
|
|
3026
|
+
var tm = setInterval(function() {
|
|
3027
|
+
Date.now() - last > 32 && (didHydrateOnce = !0, clearInterval(tm));
|
|
3028
|
+
}, 16);
|
|
3029
|
+
return function() {
|
|
3030
|
+
clearInterval(tm);
|
|
3031
|
+
};
|
|
3032
|
+
}, []);
|
|
3033
|
+
}
|
|
3034
|
+
var last = Date.now();
|
|
3035
|
+
function useDidHydrateOnce() {
|
|
3036
|
+
return didHydrateOnce || (last = Date.now()), didHydrateOnce;
|
|
3037
|
+
}
|
|
3038
|
+
}
|
|
3039
|
+
});
|
|
3040
|
+
|
|
2977
3041
|
// ../web/dist/cjs/hooks/useMedia.native.js
|
|
2978
3042
|
var require_useMedia_native = __commonJS({
|
|
2979
3043
|
"../web/dist/cjs/hooks/useMedia.native.js"(exports2, module2) {
|
|
@@ -3060,7 +3124,7 @@ var require_useMedia_native = __commonJS({
|
|
|
3060
3124
|
}
|
|
3061
3125
|
});
|
|
3062
3126
|
module2.exports = __toCommonJS2(useMedia_exports);
|
|
3063
|
-
var import_constants = require_index_native3(), import_react3 = require("react"), import_config = require_config_native(), import_matchMedia = require_matchMedia_native(), import_pseudoDescriptors = require_pseudoDescriptors_native(), import_useDisableSSR = require_useDisableSSR_native();
|
|
3127
|
+
var import_constants = require_index_native3(), import_react3 = require("react"), import_config = require_config_native(), import_matchMedia = require_matchMedia_native(), import_pseudoDescriptors = require_pseudoDescriptors_native(), import_useDisableSSR = require_useDisableSSR_native(), import_useDidHydrateOnce = require_useDidHydrateOnce_native();
|
|
3064
3128
|
function _array_like_to_array(arr, len) {
|
|
3065
3129
|
(len == null || len > arr.length) && (len = arr.length);
|
|
3066
3130
|
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
|
@@ -3220,19 +3284,20 @@ var require_useMedia_native = __commonJS({
|
|
|
3220
3284
|
};
|
|
3221
3285
|
}
|
|
3222
3286
|
function useLayoutExternalStore(subscriber, getSnapshot, getServerSnapshot) {
|
|
3223
|
-
var _useState = _sliced_to_array((0, import_react3.useState)(getServerSnapshot), 2), state = _useState[0], setState = _useState[1];
|
|
3287
|
+
var hasHydrated = (0, import_useDidHydrateOnce.useDidHydrateOnce)(), _useState = _sliced_to_array((0, import_react3.useState)(hasHydrated ? mediaState2 : getServerSnapshot), 2), state = _useState[0], setState = _useState[1];
|
|
3224
3288
|
return (0, import_constants.useIsomorphicLayoutEffect)(function() {
|
|
3225
|
-
|
|
3289
|
+
var update = function() {
|
|
3226
3290
|
setState(function(prev) {
|
|
3227
3291
|
var next = getSnapshot();
|
|
3228
3292
|
return next !== prev ? next : prev;
|
|
3229
3293
|
});
|
|
3230
|
-
}
|
|
3294
|
+
};
|
|
3295
|
+
return update(), subscriber(update);
|
|
3231
3296
|
}, []), state;
|
|
3232
3297
|
}
|
|
3233
3298
|
function useMedia2(uid, componentContext) {
|
|
3234
3299
|
var internal = (0, import_react3.useRef)(), disableSSR = (0, import_useDisableSSR.getDisableSSR)(componentContext), initialState = (disableSSR || !import_constants.isWeb ? mediaState2 : initState) || {}, state = useLayoutExternalStore(subscribe, function() {
|
|
3235
|
-
if (!internal.current) return
|
|
3300
|
+
if (!internal.current) return mediaState2;
|
|
3236
3301
|
var _internal_current = internal.current, touched = _internal_current.touched, prev = _internal_current.prev, componentState = uid ? shouldUpdate.get(uid) : void 0;
|
|
3237
3302
|
if (componentState && componentState.enabled === !1) return prev;
|
|
3238
3303
|
var _componentState_keys, testKeys = (_componentState_keys = componentState == null ? void 0 : componentState.keys) !== null && _componentState_keys !== void 0 ? _componentState_keys : (!componentState || componentState.enabled) && touched ? _to_consumable_array(touched) : null, hasntUpdated = !testKeys || (testKeys == null ? void 0 : testKeys.every(function(key) {
|
|
@@ -8754,7 +8819,7 @@ var require_createComponent_native = __commonJS({
|
|
|
8754
8819
|
}
|
|
8755
8820
|
});
|
|
8756
8821
|
module2.exports = __toCommonJS2(createComponent_exports);
|
|
8757
|
-
var import_jsx_runtime = require("react/jsx-runtime"), import_compose_refs = require_index_native5(), import_constants = require_index_native3(), import_helpers = require_index_native4(), import_react3 = __toESM2(require("react")), import_config = require_config_native(), import_constants2 = require_constants_native2(), import_isDevTools = require_isDevTools_native(), import_ComponentContext = require_ComponentContext_native(), import_createVariable = require_createVariable_native(), import_defaultComponentState = require_defaultComponentState_native(), import_createShallowSetState = require_createShallowSetState_native(), import_getSplitStyles = require_getSplitStyles_native(), import_isObj = require_isObj_native(), import_log = require_log_native(), import_mergeProps = require_mergeProps_native(), import_setElementProps = require_setElementProps_native(), import_themeable = require_themeable_native(), import_useMedia = require_useMedia_native(), import_useTheme = require_useTheme_native(), import_setupHooks = require_setupHooks_native(), import_Slot = require_Slot_native(), import_Theme = require_Theme_native(), import_ThemeDebug = require_ThemeDebug_native();
|
|
8822
|
+
var import_jsx_runtime = require("react/jsx-runtime"), import_compose_refs = require_index_native5(), import_constants = require_index_native3(), import_helpers = require_index_native4(), import_react3 = __toESM2(require("react")), import_config = require_config_native(), import_constants2 = require_constants_native2(), import_isDevTools = require_isDevTools_native(), import_ComponentContext = require_ComponentContext_native(), import_createVariable = require_createVariable_native(), import_defaultComponentState = require_defaultComponentState_native(), import_createShallowSetState = require_createShallowSetState_native(), import_getSplitStyles = require_getSplitStyles_native(), import_isObj = require_isObj_native(), import_log = require_log_native(), import_mergeProps = require_mergeProps_native(), import_setElementProps = require_setElementProps_native(), import_themeable = require_themeable_native(), import_useMedia = require_useMedia_native(), import_useTheme = require_useTheme_native(), import_setupHooks = require_setupHooks_native(), import_Slot = require_Slot_native(), import_Theme = require_Theme_native(), import_ThemeDebug = require_ThemeDebug_native(), import_useDidHydrateOnce = require_useDidHydrateOnce_native();
|
|
8758
8823
|
function _array_like_to_array(arr, len) {
|
|
8759
8824
|
(len == null || len > arr.length) && (len = arr.length);
|
|
8760
8825
|
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
|
@@ -9082,7 +9147,14 @@ var require_createComponent_native = __commonJS({
|
|
|
9082
9147
|
willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
|
|
9083
9148
|
var presence = willBeAnimated && props.animatePresence !== !1 && (animationDriver == null || (_animationDriver_usePresence = animationDriver.usePresence) === null || _animationDriver_usePresence === void 0 ? void 0 : _animationDriver_usePresence.call(animationDriver)) || null, presenceState = presence == null ? void 0 : presence[2], isExiting = (presenceState == null ? void 0 : presenceState.isPresent) === !1, isEntering = (presenceState == null ? void 0 : presenceState.isPresent) === !0 && presenceState.initial !== !1, hasEnterStyle = !!props.enterStyle, hasRNAnimation = hasAnimationProp && (animationDriver == null ? void 0 : animationDriver.isReactNative);
|
|
9084
9149
|
process.env.NODE_ENV === "development" && time && time(_templateObject());
|
|
9085
|
-
var hasEnterState = hasEnterStyle || isEntering,
|
|
9150
|
+
var hasEnterState = hasEnterStyle || isEntering, didHydrateOnce = (0, import_useDidHydrateOnce.useDidHydrateOnce)(), initialState = hasEnterState || !didHydrateOnce && hasRNAnimation ? (
|
|
9151
|
+
// on the very first render we switch all spring animation drivers to css rendering
|
|
9152
|
+
// this is because we need to use css variables, which they don't support to do proper SSR
|
|
9153
|
+
// without flickers of the wrong colors.
|
|
9154
|
+
// but once we do that initial hydration and we are in client side rendering mode,
|
|
9155
|
+
// we can avoid the extra re-render on mount
|
|
9156
|
+
import_constants.isWeb && !didHydrateOnce ? import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateShouldEnter
|
|
9157
|
+
) : import_defaultComponentState.defaultComponentStateMounted, disabled = isDisabled(props);
|
|
9086
9158
|
disabled != null && (initialState.disabled = disabled);
|
|
9087
9159
|
var states = (0, import_react3.useState)(initialState), state = props.forceStyle ? _object_spread_props(_object_spread2({}, states[0]), _define_property2({}, props.forceStyle, !0)) : states[0], setState = states[1], isHydrated = state.unmounted === !1 || state.unmounted === "should-enter", isAnimated = willBeAnimated;
|
|
9088
9160
|
import_constants.isWeb && hasRNAnimation && !staticConfig.isHOC && state.unmounted === !0 && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, import_defaultComponentState.defaultComponentStateMounted), setState(_object_spread2({}, state)));
|
|
@@ -9352,7 +9424,7 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
9352
9424
|
};
|
|
9353
9425
|
(0, import_react3.useEffect)(function() {
|
|
9354
9426
|
if (!disabled) {
|
|
9355
|
-
if (state.unmounted === !0) {
|
|
9427
|
+
if (state.unmounted === !0 && hasEnterStyle) {
|
|
9356
9428
|
setStateShallow({
|
|
9357
9429
|
unmounted: "should-enter"
|
|
9358
9430
|
});
|
|
@@ -12373,7 +12445,7 @@ var require_TamaguiProvider_native = __commonJS({
|
|
|
12373
12445
|
}
|
|
12374
12446
|
});
|
|
12375
12447
|
module2.exports = __toCommonJS2(TamaguiProvider_exports);
|
|
12376
|
-
var import_jsx_runtime = require("react/jsx-runtime"), import_constants = require_index_native3(), React = __toESM2(require("react")), import_ComponentContext = require_ComponentContext_native(), import_useMedia = require_useMedia_native(), import_ThemeProvider = require_ThemeProvider_native();
|
|
12448
|
+
var import_jsx_runtime = require("react/jsx-runtime"), import_constants = require_index_native3(), React = __toESM2(require("react")), import_ComponentContext = require_ComponentContext_native(), import_useMedia = require_useMedia_native(), import_ThemeProvider = require_ThemeProvider_native(), import_useDidHydrateOnce = require_useDidHydrateOnce_native();
|
|
12377
12449
|
function _define_property2(obj, key, value) {
|
|
12378
12450
|
return key in obj ? Object.defineProperty(obj, key, {
|
|
12379
12451
|
value,
|
|
@@ -12429,7 +12501,7 @@ var require_TamaguiProvider_native = __commonJS({
|
|
|
12429
12501
|
"disableInjectCSS",
|
|
12430
12502
|
"config"
|
|
12431
12503
|
]);
|
|
12432
|
-
(0, import_useMedia.setupMediaListeners)(), import_constants.isClient && React.useInsertionEffect(function() {
|
|
12504
|
+
(0, import_useMedia.setupMediaListeners)(), import_constants.isClient && ((0, import_useDidHydrateOnce.useDidHydrateOnceRoot)(), React.useInsertionEffect(function() {
|
|
12433
12505
|
if (config && (config.disableSSR || document.documentElement.classList.contains("t_unmounted") && document.documentElement.classList.remove("t_unmounted"), !disableInjectCSS)) {
|
|
12434
12506
|
var style = document.createElement("style");
|
|
12435
12507
|
return style.appendChild(document.createTextNode(config.getCSS())), document.head.appendChild(style), function() {
|
|
@@ -12439,7 +12511,7 @@ var require_TamaguiProvider_native = __commonJS({
|
|
|
12439
12511
|
}, [
|
|
12440
12512
|
config,
|
|
12441
12513
|
disableInjectCSS
|
|
12442
|
-
]);
|
|
12514
|
+
]));
|
|
12443
12515
|
var _themePropsProvider_defaultTheme;
|
|
12444
12516
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
|
|
12445
12517
|
animationDriver: config == null ? void 0 : config.animations,
|