tamagui 1.100.1 → 1.100.3

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 CHANGED
@@ -3056,6 +3056,62 @@ var require_useDisableSSR_native = __commonJS({
3056
3056
  }
3057
3057
  });
3058
3058
 
3059
+ // ../web/dist/cjs/hooks/useDidHydrateOnce.native.js
3060
+ var require_useDidHydrateOnce_native = __commonJS({
3061
+ "../web/dist/cjs/hooks/useDidHydrateOnce.native.js"(exports2, module2) {
3062
+ "use strict";
3063
+ var __defProp2 = Object.defineProperty, __getOwnPropDesc2 = Object.getOwnPropertyDescriptor, __getOwnPropNames2 = Object.getOwnPropertyNames, __hasOwnProp2 = Object.prototype.hasOwnProperty, __export2 = function(target, all) {
3064
+ for (var name in all) __defProp2(target, name, {
3065
+ get: all[name],
3066
+ enumerable: !0
3067
+ });
3068
+ }, __copyProps2 = function(to, from, except, desc) {
3069
+ var _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
3070
+ if (from && typeof from == "object" || typeof from == "function") try {
3071
+ for (var _loop = function() {
3072
+ var key = _step.value;
3073
+ !__hasOwnProp2.call(to, key) && key !== except && __defProp2(to, key, {
3074
+ get: function() {
3075
+ return from[key];
3076
+ },
3077
+ enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable
3078
+ });
3079
+ }, _iterator = __getOwnPropNames2(from)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) _loop();
3080
+ } catch (err) {
3081
+ _didIteratorError = !0, _iteratorError = err;
3082
+ } finally {
3083
+ try {
3084
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
3085
+ } finally {
3086
+ if (_didIteratorError)
3087
+ throw _iteratorError;
3088
+ }
3089
+ }
3090
+ return to;
3091
+ }, __toCommonJS2 = function(mod) {
3092
+ return __copyProps2(__defProp2({}, "__esModule", {
3093
+ value: !0
3094
+ }), mod);
3095
+ }, useDidHydrateOnce_exports = {};
3096
+ __export2(useDidHydrateOnce_exports, {
3097
+ useDidHydrateOnce: function() {
3098
+ return useDidHydrateOnce;
3099
+ },
3100
+ useDidHydrateOnceRoot: function() {
3101
+ return useDidHydrateOnceRoot;
3102
+ }
3103
+ });
3104
+ module2.exports = __toCommonJS2(useDidHydrateOnce_exports);
3105
+ var import_react4 = require("react");
3106
+ function useDidHydrateOnceRoot() {
3107
+ }
3108
+ var last = Date.now();
3109
+ function useDidHydrateOnce() {
3110
+ return !0;
3111
+ }
3112
+ }
3113
+ });
3114
+
3059
3115
  // ../web/dist/cjs/hooks/useMedia.native.js
3060
3116
  var require_useMedia_native = __commonJS({
3061
3117
  "../web/dist/cjs/hooks/useMedia.native.js"(exports2, module2) {
@@ -3142,7 +3198,7 @@ var require_useMedia_native = __commonJS({
3142
3198
  }
3143
3199
  });
3144
3200
  module2.exports = __toCommonJS2(useMedia_exports);
3145
- var import_constants4 = require_index_native6(), import_react4 = require("react"), import_config = require_config_native(), import_matchMedia = require_matchMedia_native(), import_pseudoDescriptors = require_pseudoDescriptors_native(), import_useDisableSSR = require_useDisableSSR_native();
3201
+ var import_constants4 = require_index_native6(), import_react4 = 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();
3146
3202
  function _array_like_to_array2(arr, len) {
3147
3203
  (len == null || len > arr.length) && (len = arr.length);
3148
3204
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
@@ -3280,7 +3336,7 @@ var require_useMedia_native = __commonJS({
3280
3336
  }), update();
3281
3337
  };
3282
3338
  if (!(import_constants4.isWeb && import_constants4.isServer) && setupVersion !== mediaVersion) {
3283
- setupVersion = mediaVersion, unlisten();
3339
+ setupVersion = mediaVersion, process.env.NODE_ENV === "development" && unlisten();
3284
3340
  for (var key in mediaQueryConfig3) _loop(key);
3285
3341
  }
3286
3342
  }
@@ -3292,45 +3348,41 @@ var require_useMedia_native = __commonJS({
3292
3348
  });
3293
3349
  }));
3294
3350
  }
3295
- var shouldUpdate = /* @__PURE__ */ new WeakMap();
3351
+ var States = /* @__PURE__ */ new WeakMap();
3296
3352
  function setMediaShouldUpdate(ref, props) {
3297
- return shouldUpdate.set(ref, props);
3353
+ return States.set(ref, _object_spread9({}, States.get(ref), props));
3298
3354
  }
3299
- function subscribe(subscriber) {
3300
- return listeners.add(subscriber), function() {
3301
- return listeners.delete(subscriber);
3302
- };
3303
- }
3304
- function useLayoutExternalStore(subscriber, getSnapshot, getServerSnapshot) {
3305
- var _useState = _sliced_to_array((0, import_react4.useState)(getServerSnapshot), 2), state = _useState[0], setState = _useState[1];
3355
+ function getSnapshot(param) {
3356
+ var touched = param.touched, prev = param.prev, enabled = param.enabled, keys = param.keys, isDisabled = enabled === !1;
3357
+ if (isDisabled) return prev;
3358
+ var testKeys = keys || touched ? _to_consumable_array2(keys || []).concat(_to_consumable_array2(touched || [])) : null, hasntUpdated = !testKeys || (testKeys == null ? void 0 : testKeys.every(function(key) {
3359
+ return mediaState3[key] === prev[key];
3360
+ }));
3361
+ return hasntUpdated ? prev : mediaState3;
3362
+ }
3363
+ function useMedia3(uidIn, componentContext) {
3364
+ var uid = uidIn ?? (0, import_react4.useRef)(), hasHydrated = (0, import_useDidHydrateOnce.useDidHydrateOnce)(), isHydrated = !import_constants4.isWeb || (0, import_useDisableSSR.getDisableSSR)(componentContext) || hasHydrated, initialState = isHydrated ? mediaState3 : initState, componentState = States.get(uid);
3365
+ componentState || (componentState = {
3366
+ prev: initialState
3367
+ }, States.set(uid, componentState)), componentState.touched = void 0;
3368
+ var _useState = _sliced_to_array((0, import_react4.useState)(initialState), 2), state = _useState[0], setState = _useState[1];
3306
3369
  return (0, import_constants4.useIsomorphicLayoutEffect)(function() {
3307
- return subscriber(function() {
3370
+ var update = function() {
3308
3371
  setState(function(prev) {
3309
- var next = getSnapshot();
3310
- return next !== prev ? next : prev;
3372
+ var componentState2 = States.get(uid), next = getSnapshot(componentState2);
3373
+ return next !== prev ? (componentState2.prev = next, next) : prev;
3311
3374
  });
3312
- });
3313
- }, []), state;
3314
- }
3315
- function useMedia3(uid, componentContext) {
3316
- var internal = (0, import_react4.useRef)(), disableSSR = (0, import_useDisableSSR.getDisableSSR)(componentContext), initialState = (disableSSR || !import_constants4.isWeb ? mediaState3 : initState) || {}, state = useLayoutExternalStore(subscribe, function() {
3317
- if (!internal.current) return initialState;
3318
- var _internal_current = internal.current, touched = _internal_current.touched, prev = _internal_current.prev, componentState = uid ? shouldUpdate.get(uid) : void 0;
3319
- if (componentState && componentState.enabled === !1) return prev;
3320
- 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_array2(touched) : null, hasntUpdated = !testKeys || (testKeys == null ? void 0 : testKeys.every(function(key) {
3321
- return mediaState3[key] === prev[key];
3322
- }));
3323
- return hasntUpdated ? prev : (internal.current.prev = mediaState3, mediaState3);
3324
- }, function() {
3325
- return initialState;
3326
- });
3327
- return new Proxy(state, {
3375
+ };
3376
+ return Promise.resolve().then(update), listeners.add(update), function() {
3377
+ listeners.delete(update);
3378
+ };
3379
+ }, [
3380
+ uid
3381
+ ]), new Proxy(state, {
3328
3382
  get: function(_, key) {
3329
3383
  if (typeof key == "string") {
3330
- var _internal, _internal_current;
3331
- (_internal = internal).current || (_internal.current = {
3332
- prev: initialState
3333
- }), (_internal_current = internal.current).touched || (_internal_current.touched = /* @__PURE__ */ new Set()), internal.current.touched.add(key);
3384
+ var _componentState;
3385
+ (_componentState = componentState).touched || (_componentState.touched = /* @__PURE__ */ new Set()), componentState.touched.add(key);
3334
3386
  }
3335
3387
  return Reflect.get(state, key);
3336
3388
  }
@@ -8836,7 +8888,7 @@ var require_createComponent_native = __commonJS({
8836
8888
  }
8837
8889
  });
8838
8890
  module2.exports = __toCommonJS2(createComponent_exports);
8839
- var import_jsx_runtime6 = require("react/jsx-runtime"), import_compose_refs = require_index_native10(), import_constants4 = require_index_native6(), import_helpers = require_index_native7(), import_react4 = __toESM2(require("react")), import_config = require_config_native(), import_constants22 = 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();
8891
+ var import_jsx_runtime6 = require("react/jsx-runtime"), import_compose_refs = require_index_native10(), import_constants4 = require_index_native6(), import_helpers = require_index_native7(), import_react4 = __toESM2(require("react")), import_config = require_config_native(), import_constants22 = 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();
8840
8892
  function _array_like_to_array2(arr, len) {
8841
8893
  (len == null || len > arr.length) && (len = arr.length);
8842
8894
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
@@ -9164,7 +9216,14 @@ var require_createComponent_native = __commonJS({
9164
9216
  willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
9165
9217
  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);
9166
9218
  process.env.NODE_ENV === "development" && time && time(_templateObject());
9167
- var hasEnterState = hasEnterStyle || isEntering, initialState = hasEnterState || hasRNAnimation ? import_constants4.isWeb ? import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateShouldEnter : import_defaultComponentState.defaultComponentStateMounted, disabled = isDisabled(props);
9219
+ var hasEnterState = hasEnterStyle || isEntering, didHydrateOnce = (0, import_useDidHydrateOnce.useDidHydrateOnce)(), initialState = hasEnterState || !didHydrateOnce && hasRNAnimation ? (
9220
+ // on the very first render we switch all spring animation drivers to css rendering
9221
+ // this is because we need to use css variables, which they don't support to do proper SSR
9222
+ // without flickers of the wrong colors.
9223
+ // but once we do that initial hydration and we are in client side rendering mode,
9224
+ // we can avoid the extra re-render on mount
9225
+ import_constants4.isWeb && !didHydrateOnce ? import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateShouldEnter
9226
+ ) : import_defaultComponentState.defaultComponentStateMounted, disabled = isDisabled(props);
9168
9227
  disabled != null && (initialState.disabled = disabled);
9169
9228
  var states = (0, import_react4.useState)(initialState), state = props.forceStyle ? _object_spread_props8(_object_spread9({}, states[0]), _define_property9({}, props.forceStyle, !0)) : states[0], setState = states[1], isHydrated = state.unmounted === !1 || state.unmounted === "should-enter", isAnimated = willBeAnimated;
9170
9229
  import_constants4.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_spread9({}, state)));
@@ -9434,7 +9493,7 @@ If you meant to do this, you can disable this warning - either change untilMeasu
9434
9493
  };
9435
9494
  (0, import_react4.useEffect)(function() {
9436
9495
  if (!disabled) {
9437
- if (state.unmounted === !0) {
9496
+ if (state.unmounted === !0 && hasEnterStyle) {
9438
9497
  setStateShallow({
9439
9498
  unmounted: "should-enter"
9440
9499
  });
@@ -12455,7 +12514,7 @@ var require_TamaguiProvider_native = __commonJS({
12455
12514
  }
12456
12515
  });
12457
12516
  module2.exports = __toCommonJS2(TamaguiProvider_exports);
12458
- var import_jsx_runtime6 = require("react/jsx-runtime"), import_constants4 = require_index_native6(), React2 = __toESM2(require("react")), import_ComponentContext = require_ComponentContext_native(), import_useMedia = require_useMedia_native(), import_ThemeProvider = require_ThemeProvider_native();
12517
+ var import_jsx_runtime6 = require("react/jsx-runtime"), import_constants4 = require_index_native6(), React2 = __toESM2(require("react")), import_ComponentContext = require_ComponentContext_native(), import_useMedia = require_useMedia_native(), import_ThemeProvider = require_ThemeProvider_native(), import_useDidHydrateOnce = require_useDidHydrateOnce_native();
12459
12518
  function _define_property9(obj, key, value) {
12460
12519
  return key in obj ? Object.defineProperty(obj, key, {
12461
12520
  value,
@@ -12511,7 +12570,7 @@ var require_TamaguiProvider_native = __commonJS({
12511
12570
  "disableInjectCSS",
12512
12571
  "config"
12513
12572
  ]);
12514
- (0, import_useMedia.setupMediaListeners)(), import_constants4.isClient && React2.useInsertionEffect(function() {
12573
+ (0, import_useMedia.setupMediaListeners)(), import_constants4.isClient && ((0, import_useDidHydrateOnce.useDidHydrateOnceRoot)(), React2.useInsertionEffect(function() {
12515
12574
  if (config && (config.disableSSR || document.documentElement.classList.contains("t_unmounted") && document.documentElement.classList.remove("t_unmounted"), !disableInjectCSS)) {
12516
12575
  var style = document.createElement("style");
12517
12576
  return style.appendChild(document.createTextNode(config.getCSS())), document.head.appendChild(style), function() {
@@ -12521,7 +12580,7 @@ var require_TamaguiProvider_native = __commonJS({
12521
12580
  }, [
12522
12581
  config,
12523
12582
  disableInjectCSS
12524
- ]);
12583
+ ]));
12525
12584
  var _themePropsProvider_defaultTheme;
12526
12585
  return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_ComponentContext.ComponentContext.Provider, {
12527
12586
  animationDriver: config == null ? void 0 : config.animations,
@@ -28964,24 +29023,7 @@ var require_floating_ui_react_native = __commonJS({
28964
29023
  }
28965
29024
  }), n.default = e, Object.freeze(n);
28966
29025
  }
28967
- var React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React2), arrow2 = function(options) {
28968
- var isRef = function(value) {
28969
- return {}.hasOwnProperty.call(value, "current");
28970
- }, element = options.element, padding = options.padding;
28971
- return {
28972
- name: "arrow",
28973
- options,
28974
- fn: function(args) {
28975
- return element && isRef(element) ? element.current != null ? core.arrow({
28976
- element: element.current,
28977
- padding
28978
- }).fn(args) : {} : element ? core.arrow({
28979
- element,
28980
- padding
28981
- }).fn(args) : {};
28982
- }
28983
- };
28984
- }, ORIGIN$1 = {
29026
+ var React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React2), ORIGIN$1 = {
28985
29027
  x: 0,
28986
29028
  y: 0
28987
29029
  };
@@ -29217,61 +29259,103 @@ var require_floating_ui_react_native = __commonJS({
29217
29259
  update
29218
29260
  ]);
29219
29261
  }
29220
- Object.defineProperty(exports2, "autoPlacement", {
29221
- enumerable: !0,
29222
- get: function() {
29223
- return core.autoPlacement;
29224
- }
29225
- });
29262
+ var arrow$1 = function(options) {
29263
+ var isRef = function(value) {
29264
+ return {}.hasOwnProperty.call(value, "current");
29265
+ };
29266
+ return {
29267
+ name: "arrow",
29268
+ options,
29269
+ fn: function(state) {
29270
+ var _ref = typeof options == "function" ? options(state) : options, element = _ref.element, padding = _ref.padding;
29271
+ return element && isRef(element) ? element.current != null ? core.arrow({
29272
+ element: element.current,
29273
+ padding
29274
+ }).fn(state) : {} : element ? core.arrow({
29275
+ element,
29276
+ padding
29277
+ }).fn(state) : {};
29278
+ }
29279
+ };
29280
+ }, offset3 = function(options, deps) {
29281
+ return _object_spread_props8(_object_spread9({}, core.offset(options)), {
29282
+ options: [
29283
+ options,
29284
+ deps
29285
+ ]
29286
+ });
29287
+ }, shift3 = function(options, deps) {
29288
+ return _object_spread_props8(_object_spread9({}, core.shift(options)), {
29289
+ options: [
29290
+ options,
29291
+ deps
29292
+ ]
29293
+ });
29294
+ }, limitShift3 = function(options, deps) {
29295
+ return _object_spread_props8(_object_spread9({}, core.limitShift(options)), {
29296
+ options: [
29297
+ options,
29298
+ deps
29299
+ ]
29300
+ });
29301
+ }, flip3 = function(options, deps) {
29302
+ return _object_spread_props8(_object_spread9({}, core.flip(options)), {
29303
+ options: [
29304
+ options,
29305
+ deps
29306
+ ]
29307
+ });
29308
+ }, size3 = function(options, deps) {
29309
+ return _object_spread_props8(_object_spread9({}, core.size(options)), {
29310
+ options: [
29311
+ options,
29312
+ deps
29313
+ ]
29314
+ });
29315
+ }, autoPlacement3 = function(options, deps) {
29316
+ return _object_spread_props8(_object_spread9({}, core.autoPlacement(options)), {
29317
+ options: [
29318
+ options,
29319
+ deps
29320
+ ]
29321
+ });
29322
+ }, hide3 = function(options, deps) {
29323
+ return _object_spread_props8(_object_spread9({}, core.hide(options)), {
29324
+ options: [
29325
+ options,
29326
+ deps
29327
+ ]
29328
+ });
29329
+ }, inline3 = function(options, deps) {
29330
+ return _object_spread_props8(_object_spread9({}, core.inline(options)), {
29331
+ options: [
29332
+ options,
29333
+ deps
29334
+ ]
29335
+ });
29336
+ }, arrow2 = function(options, deps) {
29337
+ return _object_spread_props8(_object_spread9({}, arrow$1(options)), {
29338
+ options: [
29339
+ options,
29340
+ deps
29341
+ ]
29342
+ });
29343
+ };
29226
29344
  Object.defineProperty(exports2, "detectOverflow", {
29227
29345
  enumerable: !0,
29228
29346
  get: function() {
29229
29347
  return core.detectOverflow;
29230
29348
  }
29231
29349
  });
29232
- Object.defineProperty(exports2, "flip", {
29233
- enumerable: !0,
29234
- get: function() {
29235
- return core.flip;
29236
- }
29237
- });
29238
- Object.defineProperty(exports2, "hide", {
29239
- enumerable: !0,
29240
- get: function() {
29241
- return core.hide;
29242
- }
29243
- });
29244
- Object.defineProperty(exports2, "inline", {
29245
- enumerable: !0,
29246
- get: function() {
29247
- return core.inline;
29248
- }
29249
- });
29250
- Object.defineProperty(exports2, "limitShift", {
29251
- enumerable: !0,
29252
- get: function() {
29253
- return core.limitShift;
29254
- }
29255
- });
29256
- Object.defineProperty(exports2, "offset", {
29257
- enumerable: !0,
29258
- get: function() {
29259
- return core.offset;
29260
- }
29261
- });
29262
- Object.defineProperty(exports2, "shift", {
29263
- enumerable: !0,
29264
- get: function() {
29265
- return core.shift;
29266
- }
29267
- });
29268
- Object.defineProperty(exports2, "size", {
29269
- enumerable: !0,
29270
- get: function() {
29271
- return core.size;
29272
- }
29273
- });
29274
29350
  exports2.arrow = arrow2;
29351
+ exports2.autoPlacement = autoPlacement3;
29352
+ exports2.flip = flip3;
29353
+ exports2.hide = hide3;
29354
+ exports2.inline = inline3;
29355
+ exports2.limitShift = limitShift3;
29356
+ exports2.offset = offset3;
29357
+ exports2.shift = shift3;
29358
+ exports2.size = size3;
29275
29359
  exports2.useFloating = useFloating2;
29276
29360
  }
29277
29361
  });