@tamagui/web 1.121.1 → 1.121.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.
Files changed (42) hide show
  1. package/dist/cjs/defaultComponentState.cjs +6 -1
  2. package/dist/cjs/defaultComponentState.js +5 -1
  3. package/dist/cjs/defaultComponentState.js.map +1 -1
  4. package/dist/cjs/defaultComponentState.native.js +7 -2
  5. package/dist/cjs/defaultComponentState.native.js.map +2 -2
  6. package/dist/cjs/hooks/useComponentState.cjs +10 -8
  7. package/dist/cjs/hooks/useComponentState.js +6 -6
  8. package/dist/cjs/hooks/useComponentState.js.map +1 -1
  9. package/dist/cjs/hooks/useComponentState.native.js +6 -6
  10. package/dist/cjs/hooks/useComponentState.native.js.map +2 -2
  11. package/dist/cjs/hooks/useIsHydrated.cjs +28 -0
  12. package/dist/cjs/hooks/useIsHydrated.js +27 -0
  13. package/dist/cjs/hooks/useIsHydrated.js.map +6 -0
  14. package/dist/cjs/hooks/useIsHydrated.native.js +35 -0
  15. package/dist/cjs/hooks/useIsHydrated.native.js.map +6 -0
  16. package/dist/esm/defaultComponentState.js +5 -1
  17. package/dist/esm/defaultComponentState.js.map +1 -1
  18. package/dist/esm/defaultComponentState.mjs +5 -1
  19. package/dist/esm/defaultComponentState.mjs.map +1 -1
  20. package/dist/esm/defaultComponentState.native.js +5 -1
  21. package/dist/esm/defaultComponentState.native.js.map +2 -2
  22. package/dist/esm/hooks/useComponentState.js +8 -6
  23. package/dist/esm/hooks/useComponentState.js.map +1 -1
  24. package/dist/esm/hooks/useComponentState.mjs +10 -8
  25. package/dist/esm/hooks/useComponentState.mjs.map +1 -1
  26. package/dist/esm/hooks/useComponentState.native.js +7 -6
  27. package/dist/esm/hooks/useComponentState.native.js.map +2 -2
  28. package/dist/esm/hooks/useIsHydrated.js +11 -0
  29. package/dist/esm/hooks/useIsHydrated.js.map +6 -0
  30. package/dist/esm/hooks/useIsHydrated.mjs +5 -0
  31. package/dist/esm/hooks/useIsHydrated.mjs.map +1 -0
  32. package/dist/esm/hooks/useIsHydrated.native.js +15 -0
  33. package/dist/esm/hooks/useIsHydrated.native.js.map +6 -0
  34. package/package.json +11 -11
  35. package/src/defaultComponentState.tsx +5 -0
  36. package/src/hooks/useComponentState.ts +10 -10
  37. package/src/hooks/useIsHydrated.ts +13 -0
  38. package/types/defaultComponentState.d.ts +1 -0
  39. package/types/defaultComponentState.d.ts.map +1 -1
  40. package/types/hooks/useComponentState.d.ts.map +1 -1
  41. package/types/hooks/useIsHydrated.d.ts +2 -0
  42. package/types/hooks/useIsHydrated.d.ts.map +1 -0
@@ -21,7 +21,8 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
21
  var defaultComponentState_exports = {};
22
22
  __export(defaultComponentState_exports, {
23
23
  defaultComponentState: () => defaultComponentState,
24
- defaultComponentStateMounted: () => defaultComponentStateMounted
24
+ defaultComponentStateMounted: () => defaultComponentStateMounted,
25
+ defaultComponentStateShouldEnter: () => defaultComponentStateShouldEnter
25
26
  });
26
27
  module.exports = __toCommonJS(defaultComponentState_exports);
27
28
  const defaultComponentState = {
@@ -36,4 +37,8 @@ const defaultComponentState = {
36
37
  defaultComponentStateMounted = {
37
38
  ...defaultComponentState,
38
39
  unmounted: !1
40
+ },
41
+ defaultComponentStateShouldEnter = {
42
+ ...defaultComponentState,
43
+ unmounted: "should-enter"
39
44
  };
@@ -15,7 +15,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0
15
15
  var defaultComponentState_exports = {};
16
16
  __export(defaultComponentState_exports, {
17
17
  defaultComponentState: () => defaultComponentState,
18
- defaultComponentStateMounted: () => defaultComponentStateMounted
18
+ defaultComponentStateMounted: () => defaultComponentStateMounted,
19
+ defaultComponentStateShouldEnter: () => defaultComponentStateShouldEnter
19
20
  });
20
21
  module.exports = __toCommonJS(defaultComponentState_exports);
21
22
  const defaultComponentState = {
@@ -29,5 +30,8 @@ const defaultComponentState = {
29
30
  }, defaultComponentStateMounted = {
30
31
  ...defaultComponentState,
31
32
  unmounted: !1
33
+ }, defaultComponentStateShouldEnter = {
34
+ ...defaultComponentState,
35
+ unmounted: "should-enter"
32
36
  };
33
37
  //# sourceMappingURL=defaultComponentState.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/defaultComponentState.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,wBAA+C;AAAA,EAC1D,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,cAAc;AAAA,EACd,WAAW;AAAA,EACX,UAAU;AACZ,GAEa,+BAAsD;AAAA,EACjE,GAAG;AAAA,EACH,WAAW;AACb;",
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,wBAA+C;AAAA,EAC1D,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,cAAc;AAAA,EACd,WAAW;AAAA,EACX,UAAU;AACZ,GAEa,+BAAsD;AAAA,EACjE,GAAG;AAAA,EACH,WAAW;AACb,GAEa,mCAA0D;AAAA,EACrE,GAAG;AAAA,EACH,WAAW;AACb;",
5
5
  "names": []
6
6
  }
@@ -16,7 +16,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0
16
16
  var defaultComponentState_exports = {};
17
17
  __export(defaultComponentState_exports, {
18
18
  defaultComponentState: () => defaultComponentState,
19
- defaultComponentStateMounted: () => defaultComponentStateMounted
19
+ defaultComponentStateMounted: () => defaultComponentStateMounted,
20
+ defaultComponentStateShouldEnter: () => defaultComponentStateShouldEnter
20
21
  });
21
22
  module.exports = __toCommonJS(defaultComponentState_exports);
22
23
  var defaultComponentState = {
@@ -30,10 +31,14 @@ var defaultComponentState = {
30
31
  }, defaultComponentStateMounted = {
31
32
  ...defaultComponentState,
32
33
  unmounted: !1
34
+ }, defaultComponentStateShouldEnter = {
35
+ ...defaultComponentState,
36
+ unmounted: "should-enter"
33
37
  };
34
38
  // Annotate the CommonJS export names for ESM import in node:
35
39
  0 && (module.exports = {
36
40
  defaultComponentState,
37
- defaultComponentStateMounted
41
+ defaultComponentStateMounted,
42
+ defaultComponentStateShouldEnter
38
43
  });
39
44
  //# sourceMappingURL=defaultComponentState.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/web/src/defaultComponentState.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;AAEA;;;;;;AAAO,IAAMA,wBAA+C;EAC1DC,OAAO;EACPC,OAAO;EACPC,SAAS;EACTC,OAAO;EACPC,cAAc;EACdC,WAAW;EACXC,UAAU;AACZ,GAEaC,+BAAsD;EACjE,GAAGR;EACHM,WAAW;AACb;",
5
- "names": ["defaultComponentState", "hover", "press", "pressIn", "focus", "focusVisible", "unmounted", "disabled", "defaultComponentStateMounted"]
4
+ "mappings": ";;;;;;;;;;;;;;;AAEA;;;;;;;AAAO,IAAMA,wBAA+C;EAC1DC,OAAO;EACPC,OAAO;EACPC,SAAS;EACTC,OAAO;EACPC,cAAc;EACdC,WAAW;EACXC,UAAU;AACZ,GAEaC,+BAAsD;EACjE,GAAGR;EACHM,WAAW;AACb,GAEaG,mCAA0D;EACrE,GAAGT;EACHM,WAAW;AACb;",
5
+ "names": ["defaultComponentState", "hover", "press", "pressIn", "focus", "focusVisible", "unmounted", "disabled", "defaultComponentStateMounted", "defaultComponentStateShouldEnter"]
6
6
  }
@@ -28,12 +28,14 @@ var import_constants = require("@tamagui/constants"),
28
28
  import_defaultComponentState = require("../defaultComponentState.cjs"),
29
29
  import_createShallowSetState = require("../helpers/createShallowSetState.cjs"),
30
30
  import_isObj = require("../helpers/isObj.cjs"),
31
- import_log = require("../helpers/log.cjs");
31
+ import_log = require("../helpers/log.cjs"),
32
+ import_useIsHydrated = require("./useIsHydrated.cjs");
32
33
  const useComponentState = (props, {
33
34
  animationDriver,
34
35
  groups
35
36
  }, staticConfig, config) => {
36
- const useAnimations = animationDriver?.useAnimations,
37
+ const isHydrated = (0, import_useIsHydrated.useIsHydrated)(),
38
+ useAnimations = animationDriver?.useAnimations,
37
39
  stateRef = (0, import_react.useRef)(void 0);
38
40
  stateRef.current || (stateRef.current = {});
39
41
  const hasAnimationProp = !!("animation" in props || props.style && hasAnimatedStyleValue(props.style)),
@@ -50,8 +52,9 @@ const useComponentState = (props, {
50
52
  isExiting = presenceState?.isPresent === !1,
51
53
  isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1,
52
54
  hasEnterStyle = !!props.enterStyle,
53
- hasAnimationThatNeedsHydrate = hasAnimationProp && (animationDriver?.isReactNative || !supportsCSSVars),
54
- initialState = hasEnterStyle || isEntering || hasAnimationThatNeedsHydrate ||
55
+ hasAnimationThatNeedsHydrate = hasAnimationProp && !isHydrated && (animationDriver?.isReactNative || !supportsCSSVars),
56
+ hasEnterState = hasEnterStyle || isEntering,
57
+ initialState = hasEnterState || hasAnimationThatNeedsHydrate ||
55
58
  // disableClassName doesnt work server side, only client, so needs hydrate
56
59
  // this is just for a better ux, supports css variables for light/dark, media queries, etc
57
60
  disableClassName ?
@@ -60,7 +63,7 @@ const useComponentState = (props, {
60
63
  // without flickers of the wrong colors.
61
64
  // but once we do that initial hydration and we are in client side rendering mode,
62
65
  // we can avoid the extra re-render on mount
63
- import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateMounted,
66
+ hasEnterState ? import_defaultComponentState.defaultComponentStateShouldEnter : import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateMounted,
64
67
  disabled = isDisabled(props);
65
68
  disabled != null && (initialState.disabled = disabled);
66
69
  const states = (0, import_react.useState)(initialState),
@@ -68,10 +71,9 @@ const useComponentState = (props, {
68
71
  ...states[0],
69
72
  [props.forceStyle]: !0
70
73
  } : states[0],
71
- setState = states[1],
72
- isHydrated = state.unmounted === !1;
74
+ setState = states[1];
73
75
  let isAnimated = willBeAnimated;
74
- import_constants.isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && state.unmounted === !0 && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, import_defaultComponentState.defaultComponentStateMounted), setState({
76
+ import_constants.isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && !isHydrated && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, import_defaultComponentState.defaultComponentStateMounted), setState({
75
77
  ...state
76
78
  }));
77
79
  let setStateShallow = (0, import_createShallowSetState.createShallowSetState)(setState, disabled, !1, props.debug);
@@ -17,15 +17,15 @@ __export(useComponentState_exports, {
17
17
  useComponentState: () => useComponentState
18
18
  });
19
19
  module.exports = __toCommonJS(useComponentState_exports);
20
- var import_constants = require("@tamagui/constants"), import_react = require("react"), import_defaultComponentState = require("../defaultComponentState"), import_createShallowSetState = require("../helpers/createShallowSetState"), import_isObj = require("../helpers/isObj"), import_log = require("../helpers/log");
20
+ var import_constants = require("@tamagui/constants"), import_react = require("react"), import_defaultComponentState = require("../defaultComponentState"), import_createShallowSetState = require("../helpers/createShallowSetState"), import_isObj = require("../helpers/isObj"), import_log = require("../helpers/log"), import_useIsHydrated = require("./useIsHydrated");
21
21
  const useComponentState = (props, { animationDriver, groups }, staticConfig, config) => {
22
- const useAnimations = animationDriver?.useAnimations, stateRef = (0, import_react.useRef)(
22
+ const isHydrated = (0, import_useIsHydrated.useIsHydrated)(), useAnimations = animationDriver?.useAnimations, stateRef = (0, import_react.useRef)(
23
23
  void 0
24
24
  );
25
25
  stateRef.current || (stateRef.current = {});
26
26
  const hasAnimationProp = !!("animation" in props || props.style && hasAnimatedStyleValue(props.style)), supportsCSSVars = animationDriver?.supportsCSSVars, curStateRef = stateRef.current, willBeAnimatedClient = !!(!!(hasAnimationProp && !staticConfig.isHOC && useAnimations) || curStateRef.hasAnimated), willBeAnimated = !import_constants.isServer && willBeAnimatedClient;
27
27
  willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
28
- const { disableClassName } = props, presence = willBeAnimated && props.animatePresence !== !1 && animationDriver?.usePresence?.() || null, presenceState = presence?.[2], isExiting = presenceState?.isPresent === !1, isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1, hasEnterStyle = !!props.enterStyle, hasAnimationThatNeedsHydrate = hasAnimationProp && (animationDriver?.isReactNative || !supportsCSSVars), initialState = hasEnterStyle || isEntering || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
28
+ const { disableClassName } = props, presence = willBeAnimated && props.animatePresence !== !1 && animationDriver?.usePresence?.() || null, presenceState = presence?.[2], isExiting = presenceState?.isPresent === !1, isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1, hasEnterStyle = !!props.enterStyle, hasAnimationThatNeedsHydrate = hasAnimationProp && !isHydrated && (animationDriver?.isReactNative || !supportsCSSVars), hasEnterState = hasEnterStyle || isEntering, initialState = hasEnterState || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
29
29
  // this is just for a better ux, supports css variables for light/dark, media queries, etc
30
30
  disableClassName ? (
31
31
  // on the very first render we switch all spring animation drivers to css rendering
@@ -33,12 +33,12 @@ const useComponentState = (props, { animationDriver, groups }, staticConfig, con
33
33
  // without flickers of the wrong colors.
34
34
  // but once we do that initial hydration and we are in client side rendering mode,
35
35
  // we can avoid the extra re-render on mount
36
- import_defaultComponentState.defaultComponentState
36
+ hasEnterState ? import_defaultComponentState.defaultComponentStateShouldEnter : import_defaultComponentState.defaultComponentState
37
37
  ) : import_defaultComponentState.defaultComponentStateMounted, disabled = isDisabled(props);
38
38
  disabled != null && (initialState.disabled = disabled);
39
- const states = (0, import_react.useState)(initialState), state = props.forceStyle ? { ...states[0], [props.forceStyle]: !0 } : states[0], setState = states[1], isHydrated = state.unmounted === !1;
39
+ const states = (0, import_react.useState)(initialState), state = props.forceStyle ? { ...states[0], [props.forceStyle]: !0 } : states[0], setState = states[1];
40
40
  let isAnimated = willBeAnimated;
41
- import_constants.isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && state.unmounted === !0 && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, import_defaultComponentState.defaultComponentStateMounted), setState({ ...state }));
41
+ import_constants.isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && !isHydrated && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, import_defaultComponentState.defaultComponentStateMounted), setState({ ...state }));
42
42
  let setStateShallow = (0, import_createShallowSetState.createShallowSetState)(setState, disabled, !1, props.debug);
43
43
  if (presenceState && isAnimated && isHydrated && staticConfig.variants) {
44
44
  process.env.NODE_ENV === "development" && props.debug === "verbose" && console.warn(`has presenceState ${JSON.stringify(presenceState)}`);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useComponentState.ts"],
4
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAgC,+BAChC,eAAiC,kBACjC,+BAGO,qCACP,+BAAsC,6CACtC,eAAsB,6BACtB,aAAoB;AAab,MAAM,oBAAoB,CAC/B,OACA,EAAE,iBAAiB,OAAO,GAC1B,cACA,WACG;AACH,QAAM,gBAAgB,iBAAiB,eAEjC,eAAW;AAAA,IACf;AAAA,EACF;AACA,EAAK,SAAS,YACZ,SAAS,UAAU,CAAC;AAItB,QAAM,mBAAmB,GACvB,eAAe,SAAU,MAAM,SAAS,sBAAsB,MAAM,KAAK,IAIrE,kBAAkB,iBAAiB,iBACnC,cAAc,SAAS,SAEvB,uBAEG,GADM,CAAC,EAAE,oBAAoB,CAAC,aAAa,SAAS,kBACpC,YAAY,cAG/B,iBAAiB,CAAC,6BAAY;AAGpC,EAAI,kBAAkB,CAAC,YAAY,gBACjC,YAAY,cAAc;AAG5B,QAAM,EAAE,iBAAiB,IAAI,OAGvB,WACH,kBACC,MAAM,oBAAuB,MAC7B,iBAAiB,cAAc,KACjC,MACI,gBAAgB,WAAW,CAAC,GAC5B,YAAY,eAAe,cAAc,IACzC,aAAa,eAAe,cAAc,MAAQ,cAAc,YAAY,IAE5E,gBAAgB,CAAC,CAAC,MAAM,YAExB,+BACJ,qBAAqB,iBAAiB,iBAAiB,CAAC,kBAiBpD,eAfgB,iBAAiB,cAKrC;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaE;AAAA,MACA,2DAGE,WAAW,WAAW,KAAK;AAEjC,EAAI,YAAY,SACd,aAAa,WAAW;AAI1B,QAAM,aAAS,uBAAgC,YAAY,GAErD,QAAQ,MAAM,aAAa,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,UAAU,GAAG,GAAK,IAAI,OAAO,CAAC,GAChF,WAAW,OAAO,CAAC,GAEnB,aAAa,MAAM,cAAc;AAGvC,MAAI,aAAa;AACjB,EACE,0BACA,gCACA,CAAC,aAAa,SACd,MAAM,cAAc,OAEpB,aAAa,IACb,YAAY,cAAc,KAIxB,aAAa,MAAM,aACrB,MAAM,WAAW,UAEb,YACF,OAAO,OAAO,OAAO,yDAA4B,GAEnD,SAAS,EAAE,GAAG,MAAM,CAAC;AAGvB,MAAI,sBAAkB,oDAAsB,UAAU,UAAU,IAAO,MAAM,KAAK;AAGlF,MAAI,iBAAiB,cAAc,cAAc,aAAa,UAAU;AACtE,IAAI,QAAQ,IAAI,aAAa,iBAAiB,MAAM,UAAU,aAC5D,QAAQ,KAAK,qBAAqB,KAAK,UAAU,aAAa,CAAC,EAAE;AAEnE,UAAM,EAAE,cAAc,aAAa,kBAAkB,OAAO,IAAI;AAChE,QAAI,oBAAM,MAAM,KACd,OAAO,OAAO,OAAO,MAAM;AAE7B,UAAM,MAAM,eAAe,kBACrB,MAAM,gBAAgB;AAC5B,IAAI,MAAM,aAAa,OAAO,aAAa,SAAS,GAAG,KACjD,QAAQ,IAAI,aAAa,iBAAiB,MAAM,UAAU,aAC5D,QAAQ,KAAK,6BAA6B,GAAG,GAAG,GAElD,MAAM,GAAG,IAAI,MACJ,aAAa,QAClB,QAAQ,IAAI,aAAa,iBAAiB,MAAM,UAAU,aAC5D,QAAQ,KAAK,4BAA4B,GAAG,GAAG,GAEjD,MAAM,GAAG,IAAI,gBAAgB;AAAA,EAEjC;AAEA,MAAI,UAAU,CAAC,0BAAS,CAAC,CAAC,MAAM;AAMhC,MAAI,2BAGE,CAAC,6BAAY,aAAY;AAC3B,UAAM,wBAAwB,cAAc,CAAC,iBAEvC,sBACJ,CAAC,aAAa,qBAAqB,OAAO,cAAc,CAAC,MAAM,YAE3D,qBAAqB,oBAAoB,CAAC,MAAM;AAEtD,KAAI,yBAAyB,sBAAsB,yBACjD,UAAU,IAEN,QAAQ,IAAI,aAAa,iBAAiB,MAAM,aAClD,gBAAI,sBAAsB;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EAGP;AAGF,QAAM,YAAY,MAAM;AAExB,MAAI,aAAa,CAAC,YAAY,OAAO;AACnC,UAAM,YAAY,oBAAI,IAAwB;AAC9C,gBAAY,QAAQ;AAAA,MAClB;AAAA,MACA,KAAK,MAAMA,QAAO;AAChB,kBAAU,QAAQ,CAAC,MAAM,EAAE,MAAMA,MAAK,CAAC;AAAA,MACzC;AAAA,MACA,UAAU,IAAI;AACZ,yBAAU,IAAI,EAAE,GACT,MAAM;AACX,oBAAU,OAAO,EAAE;AAAA,QACrB;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,MAAI,WAAW;AAEb,UAAM,oBAAoB,OAAO,OAC3B,KAAK;AACX,sBAAkB,CAACA,WAAU;AAC3B,SAAGA,MAAK,GACR,YAAY,MAAO,KAAK,WAAW;AAAA,QACjC,QAAQA;AAAA,MACV,CAAC;AAED,YAAM,OAAO;AAAA,QACX,GAAG,kBAAkB,SAAS;AAAA,QAC9B,GAAGA;AAAA,MACL;AACA,wBAAkB,SAAS,IAAI;AAAA,IACjC;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEA,SAAS,sBAAsB,OAAe;AAC5C,SAAO,OAAO,KAAK,KAAK,EAAE,KAAK,CAAC,MAAM;AACpC,UAAM,MAAM,MAAM,CAAC;AACnB,WAAO,OAAO,OAAO,OAAQ,YAAY,gBAAgB;AAAA,EAC3D,CAAC;AACH;AAEA,MAAM,aAAa,CAAC,UAEhB,MAAM,YACN,MAAM,oBAAoB,YAC1B,MAAM,eAAe,KACrB,MAAM,yBACN;",
4
+ "mappings": "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",
5
5
  "names": ["state"]
6
6
  }
@@ -18,15 +18,15 @@ __export(useComponentState_exports, {
18
18
  useComponentState: () => useComponentState
19
19
  });
20
20
  module.exports = __toCommonJS(useComponentState_exports);
21
- var import_constants = require("@tamagui/constants"), import_react = require("react"), import_defaultComponentState = require("../defaultComponentState"), import_createShallowSetState = require("../helpers/createShallowSetState"), import_isObj = require("../helpers/isObj"), import_log = require("../helpers/log"), useComponentState = function(props, param, staticConfig, config) {
22
- var { animationDriver, groups } = param, _animationDriver_usePresence, useAnimations = animationDriver == null ? void 0 : animationDriver.useAnimations, stateRef = (0, import_react.useRef)(void 0);
21
+ var import_constants = require("@tamagui/constants"), import_react = require("react"), import_defaultComponentState = require("../defaultComponentState"), import_createShallowSetState = require("../helpers/createShallowSetState"), import_isObj = require("../helpers/isObj"), import_log = require("../helpers/log"), import_useIsHydrated = require("./useIsHydrated"), useComponentState = function(props, param, staticConfig, config) {
22
+ var { animationDriver, groups } = param, _animationDriver_usePresence, isHydrated = (0, import_useIsHydrated.useIsHydrated)(), useAnimations = animationDriver == null ? void 0 : animationDriver.useAnimations, stateRef = (0, import_react.useRef)(void 0);
23
23
  stateRef.current || (stateRef.current = {});
24
24
  var hasAnimationProp = !!("animation" in props || props.style && hasAnimatedStyleValue(props.style)), supportsCSSVars = animationDriver == null ? void 0 : animationDriver.supportsCSSVars, curStateRef = stateRef.current, willBeAnimatedClient = function() {
25
25
  var next = !!(hasAnimationProp && !staticConfig.isHOC && useAnimations);
26
26
  return !!(next || curStateRef.hasAnimated);
27
27
  }(), willBeAnimated = !import_constants.isServer && willBeAnimatedClient;
28
28
  willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
29
- var { disableClassName } = props, 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, hasAnimationThatNeedsHydrate = hasAnimationProp && ((animationDriver == null ? void 0 : animationDriver.isReactNative) || !supportsCSSVars), hasEnterState = hasEnterStyle || isEntering, shouldEnter = hasEnterState || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
29
+ var { disableClassName } = props, 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, hasAnimationThatNeedsHydrate = hasAnimationProp && !isHydrated && ((animationDriver == null ? void 0 : animationDriver.isReactNative) || !supportsCSSVars), hasEnterState = hasEnterStyle || isEntering, shouldEnter = hasEnterState || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
30
30
  // this is just for a better ux, supports css variables for light/dark, media queries, etc
31
31
  disableClassName, initialState = shouldEnter ? (
32
32
  // on the very first render we switch all spring animation drivers to css rendering
@@ -34,14 +34,14 @@ var import_constants = require("@tamagui/constants"), import_react = require("re
34
34
  // without flickers of the wrong colors.
35
35
  // but once we do that initial hydration and we are in client side rendering mode,
36
36
  // we can avoid the extra re-render on mount
37
- import_defaultComponentState.defaultComponentState
37
+ hasEnterState ? import_defaultComponentState.defaultComponentStateShouldEnter : import_defaultComponentState.defaultComponentState
38
38
  ) : import_defaultComponentState.defaultComponentStateMounted, disabled = isDisabled(props);
39
39
  disabled != null && (initialState.disabled = disabled);
40
40
  var states = (0, import_react.useState)(initialState), state = props.forceStyle ? {
41
41
  ...states[0],
42
42
  [props.forceStyle]: !0
43
- } : states[0], setState = states[1], isHydrated = state.unmounted === !1, isAnimated = willBeAnimated;
44
- import_constants.isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && state.unmounted === !0 && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, import_defaultComponentState.defaultComponentStateMounted), setState({
43
+ } : states[0], setState = states[1], isAnimated = willBeAnimated;
44
+ import_constants.isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && !isHydrated && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, import_defaultComponentState.defaultComponentStateMounted), setState({
45
45
  ...state
46
46
  }));
47
47
  var setStateShallow = (0, import_createShallowSetState.createShallowSetState)(setState, disabled, !1, props.debug);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/Users/n8/tamagui/code/core/web/src/hooks/useComponentState.ts"],
4
- "mappings": "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",
5
- "names": ["useComponentState", "props", "staticConfig", "config", "animationDriver", "groups", "useAnimations", "stateRef", "useRef", "undefined", "current", "hasAnimationProp", "Boolean", "style", "hasAnimatedStyleValue", "supportsCSSVars", "curStateRef", "willBeAnimatedClient", "next", "isHOC", "hasAnimated", "willBeAnimated", "isServer", "disableClassName", "presence", "usePresence", "presenceState", "isExiting", "isPresent", "isEntering", "initial", "hasEnterStyle", "enterStyle", "hasAnimationThatNeedsHydrate", "isReactNative", "hasEnterState", "shouldEnter", "initialState", "defaultComponentState", "defaultComponentStateMounted", "disabled", "isDisabled", "states", "useState", "state", "forceStyle", "setState", "isHydrated", "unmounted", "isAnimated", "isWeb", "willHydrate", "Object", "assign", "setStateShallow", "createShallowSetState", "debug", "variants", "process", "env", "NODE_ENV", "console", "warn", "JSON", "stringify", "enterVariant", "exitVariant", "enterExitVariant", "custom", "isObj", "exv", "noClass", "isAnimatedAndHydrated", "isClassNameDisabled", "acceptsClassName", "disableSSR", "isDisabledManually", "log", "groupName", "group", "listeners", "Set", "emit", "name", "forEach", "l", "subscribe", "cb", "add", "delete", "groupContextState", "og", "pseudo", "keys", "some", "k", "val", "accessibilityState", "accessibilityDisabled"]
4
+ "mappings": "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",
5
+ "names": ["useComponentState", "props", "staticConfig", "config", "animationDriver", "groups", "isHydrated", "useIsHydrated", "useAnimations", "stateRef", "useRef", "undefined", "current", "hasAnimationProp", "Boolean", "style", "hasAnimatedStyleValue", "supportsCSSVars", "curStateRef", "willBeAnimatedClient", "next", "isHOC", "hasAnimated", "willBeAnimated", "isServer", "disableClassName", "presence", "usePresence", "presenceState", "isExiting", "isPresent", "isEntering", "initial", "hasEnterStyle", "enterStyle", "hasAnimationThatNeedsHydrate", "isReactNative", "hasEnterState", "shouldEnter", "initialState", "defaultComponentStateShouldEnter", "defaultComponentState", "defaultComponentStateMounted", "disabled", "isDisabled", "states", "useState", "state", "forceStyle", "setState", "isAnimated", "isWeb", "willHydrate", "Object", "assign", "setStateShallow", "createShallowSetState", "debug", "variants", "process", "env", "NODE_ENV", "console", "warn", "JSON", "stringify", "enterVariant", "exitVariant", "enterExitVariant", "custom", "isObj", "exv", "unmounted", "noClass", "isAnimatedAndHydrated", "isClassNameDisabled", "acceptsClassName", "disableSSR", "isDisabledManually", "log", "groupName", "group", "listeners", "Set", "emit", "name", "forEach", "l", "subscribe", "cb", "add", "delete", "groupContextState", "og", "pseudo", "keys", "some", "k", "val", "accessibilityState", "accessibilityDisabled"]
6
6
  }
@@ -0,0 +1,28 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: !0
9
+ });
10
+ },
11
+ __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
13
+ get: () => from[key],
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ return to;
17
+ };
18
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
+ value: !0
20
+ }), mod);
21
+ var useIsHydrated_exports = {};
22
+ __export(useIsHydrated_exports, {
23
+ useIsHydrated: () => useIsHydrated
24
+ });
25
+ module.exports = __toCommonJS(useIsHydrated_exports);
26
+ var import_react = require("react");
27
+ const nullSubscribe = () => () => {},
28
+ useIsHydrated = () => (0, import_react.useSyncExternalStore)(nullSubscribe, () => !0, () => !1);
@@ -0,0 +1,27 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: !0 });
8
+ }, __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from == "object" || typeof from == "function")
10
+ for (let key of __getOwnPropNames(from))
11
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
+ var useIsHydrated_exports = {};
16
+ __export(useIsHydrated_exports, {
17
+ useIsHydrated: () => useIsHydrated
18
+ });
19
+ module.exports = __toCommonJS(useIsHydrated_exports);
20
+ var import_react = require("react");
21
+ const nullSubscribe = () => () => {
22
+ }, useIsHydrated = () => (0, import_react.useSyncExternalStore)(
23
+ nullSubscribe,
24
+ () => !0,
25
+ () => !1
26
+ );
27
+ //# sourceMappingURL=useIsHydrated.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/useIsHydrated.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAqC;AAErC,MAAM,gBAAgB,MACb,MAAM;AAAC,GAGH,gBAAgB,UACpB;AAAA,EACL;AAAA,EACA,MAAM;AAAA,EACN,MAAM;AACR;",
5
+ "names": []
6
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: !0 });
9
+ }, __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from == "object" || typeof from == "function")
11
+ for (let key of __getOwnPropNames(from))
12
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ return to;
14
+ };
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
16
+ var useIsHydrated_exports = {};
17
+ __export(useIsHydrated_exports, {
18
+ useIsHydrated: () => useIsHydrated
19
+ });
20
+ module.exports = __toCommonJS(useIsHydrated_exports);
21
+ var import_react = require("react"), nullSubscribe = function() {
22
+ return function() {
23
+ };
24
+ }, useIsHydrated = function() {
25
+ return (0, import_react.useSyncExternalStore)(nullSubscribe, function() {
26
+ return !0;
27
+ }, function() {
28
+ return !1;
29
+ });
30
+ };
31
+ // Annotate the CommonJS export names for ESM import in node:
32
+ 0 && (module.exports = {
33
+ useIsHydrated
34
+ });
35
+ //# sourceMappingURL=useIsHydrated.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/Users/n8/tamagui/code/core/web/src/hooks/useIsHydrated.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;AAAA;;;;;mBAAqC,kBAE/BA,gBAAgB,WAAA;AACpB,SAAO,WAAA;EAAO;AAChB,GAEaC,gBAAgB,WAAA;AAC3B,aAAOC,mCACLF,eACA,WAAA;WAAM;KACN,WAAA;WAAM;;AAEV;",
5
+ "names": ["nullSubscribe", "useIsHydrated", "useSyncExternalStore"]
6
+ }
@@ -9,9 +9,13 @@ const defaultComponentState = {
9
9
  }, defaultComponentStateMounted = {
10
10
  ...defaultComponentState,
11
11
  unmounted: !1
12
+ }, defaultComponentStateShouldEnter = {
13
+ ...defaultComponentState,
14
+ unmounted: "should-enter"
12
15
  };
13
16
  export {
14
17
  defaultComponentState,
15
- defaultComponentStateMounted
18
+ defaultComponentStateMounted,
19
+ defaultComponentStateShouldEnter
16
20
  };
17
21
  //# sourceMappingURL=defaultComponentState.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/defaultComponentState.tsx"],
4
- "mappings": "AAEO,MAAM,wBAA+C;AAAA,EAC1D,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,cAAc;AAAA,EACd,WAAW;AAAA,EACX,UAAU;AACZ,GAEa,+BAAsD;AAAA,EACjE,GAAG;AAAA,EACH,WAAW;AACb;",
4
+ "mappings": "AAEO,MAAM,wBAA+C;AAAA,EAC1D,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,cAAc;AAAA,EACd,WAAW;AAAA,EACX,UAAU;AACZ,GAEa,+BAAsD;AAAA,EACjE,GAAG;AAAA,EACH,WAAW;AACb,GAEa,mCAA0D;AAAA,EACrE,GAAG;AAAA,EACH,WAAW;AACb;",
5
5
  "names": []
6
6
  }
@@ -10,6 +10,10 @@ const defaultComponentState = {
10
10
  defaultComponentStateMounted = {
11
11
  ...defaultComponentState,
12
12
  unmounted: !1
13
+ },
14
+ defaultComponentStateShouldEnter = {
15
+ ...defaultComponentState,
16
+ unmounted: "should-enter"
13
17
  };
14
- export { defaultComponentState, defaultComponentStateMounted };
18
+ export { defaultComponentState, defaultComponentStateMounted, defaultComponentStateShouldEnter };
15
19
  //# sourceMappingURL=defaultComponentState.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["defaultComponentState","hover","press","pressIn","focus","focusVisible","unmounted","disabled","defaultComponentStateMounted"],"sources":["../../src/defaultComponentState.tsx"],"sourcesContent":[null],"mappings":"AAEO,MAAMA,qBAAA,GAA+C;IAC1DC,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,OAAA,EAAS;IACTC,KAAA,EAAO;IACPC,YAAA,EAAc;IACdC,SAAA,EAAW;IACXC,QAAA,EAAU;EACZ;EAEaC,4BAAA,GAAsD;IACjE,GAAGR,qBAAA;IACHM,SAAA,EAAW;EACb","ignoreList":[]}
1
+ {"version":3,"names":["defaultComponentState","hover","press","pressIn","focus","focusVisible","unmounted","disabled","defaultComponentStateMounted","defaultComponentStateShouldEnter"],"sources":["../../src/defaultComponentState.tsx"],"sourcesContent":[null],"mappings":"AAEO,MAAMA,qBAAA,GAA+C;IAC1DC,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,OAAA,EAAS;IACTC,KAAA,EAAO;IACPC,YAAA,EAAc;IACdC,SAAA,EAAW;IACXC,QAAA,EAAU;EACZ;EAEaC,4BAAA,GAAsD;IACjE,GAAGR,qBAAA;IACHM,SAAA,EAAW;EACb;EAEaG,gCAAA,GAA0D;IACrE,GAAGT,qBAAA;IACHM,SAAA,EAAW;EACb","ignoreList":[]}
@@ -9,9 +9,13 @@ var defaultComponentState = {
9
9
  }, defaultComponentStateMounted = {
10
10
  ...defaultComponentState,
11
11
  unmounted: !1
12
+ }, defaultComponentStateShouldEnter = {
13
+ ...defaultComponentState,
14
+ unmounted: "should-enter"
12
15
  };
13
16
  export {
14
17
  defaultComponentState,
15
- defaultComponentStateMounted
18
+ defaultComponentStateMounted,
19
+ defaultComponentStateShouldEnter
16
20
  };
17
21
  //# sourceMappingURL=defaultComponentState.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/web/src/defaultComponentState.tsx"],
4
- "mappings": "AAEO,IAAMA,wBAA+C;EAC1DC,OAAO;EACPC,OAAO;EACPC,SAAS;EACTC,OAAO;EACPC,cAAc;EACdC,WAAW;EACXC,UAAU;AACZ,GAEaC,+BAAsD;EACjE,GAAGR;EACHM,WAAW;AACb;",
5
- "names": ["defaultComponentState", "hover", "press", "pressIn", "focus", "focusVisible", "unmounted", "disabled", "defaultComponentStateMounted"]
4
+ "mappings": "AAEO,IAAMA,wBAA+C;EAC1DC,OAAO;EACPC,OAAO;EACPC,SAAS;EACTC,OAAO;EACPC,cAAc;EACdC,WAAW;EACXC,UAAU;AACZ,GAEaC,+BAAsD;EACjE,GAAGR;EACHM,WAAW;AACb,GAEaG,mCAA0D;EACrE,GAAGT;EACHM,WAAW;AACb;",
5
+ "names": ["defaultComponentState", "hover", "press", "pressIn", "focus", "focusVisible", "unmounted", "disabled", "defaultComponentStateMounted", "defaultComponentStateShouldEnter"]
6
6
  }
@@ -2,19 +2,21 @@ import { isServer, isWeb } from "@tamagui/constants";
2
2
  import { useRef, useState } from "react";
3
3
  import {
4
4
  defaultComponentState,
5
- defaultComponentStateMounted
5
+ defaultComponentStateMounted,
6
+ defaultComponentStateShouldEnter
6
7
  } from "../defaultComponentState";
7
8
  import { createShallowSetState } from "../helpers/createShallowSetState";
8
9
  import { isObj } from "../helpers/isObj";
9
10
  import { log } from "../helpers/log";
11
+ import { useIsHydrated } from "./useIsHydrated";
10
12
  const useComponentState = (props, { animationDriver, groups }, staticConfig, config) => {
11
- const useAnimations = animationDriver?.useAnimations, stateRef = useRef(
13
+ const isHydrated = useIsHydrated(), useAnimations = animationDriver?.useAnimations, stateRef = useRef(
12
14
  void 0
13
15
  );
14
16
  stateRef.current || (stateRef.current = {});
15
17
  const hasAnimationProp = !!("animation" in props || props.style && hasAnimatedStyleValue(props.style)), supportsCSSVars = animationDriver?.supportsCSSVars, curStateRef = stateRef.current, willBeAnimatedClient = !!(!!(hasAnimationProp && !staticConfig.isHOC && useAnimations) || curStateRef.hasAnimated), willBeAnimated = !isServer && willBeAnimatedClient;
16
18
  willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
17
- const { disableClassName } = props, presence = willBeAnimated && props.animatePresence !== !1 && animationDriver?.usePresence?.() || null, presenceState = presence?.[2], isExiting = presenceState?.isPresent === !1, isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1, hasEnterStyle = !!props.enterStyle, hasAnimationThatNeedsHydrate = hasAnimationProp && (animationDriver?.isReactNative || !supportsCSSVars), initialState = hasEnterStyle || isEntering || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
19
+ const { disableClassName } = props, presence = willBeAnimated && props.animatePresence !== !1 && animationDriver?.usePresence?.() || null, presenceState = presence?.[2], isExiting = presenceState?.isPresent === !1, isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1, hasEnterStyle = !!props.enterStyle, hasAnimationThatNeedsHydrate = hasAnimationProp && !isHydrated && (animationDriver?.isReactNative || !supportsCSSVars), hasEnterState = hasEnterStyle || isEntering, initialState = hasEnterState || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
18
20
  // this is just for a better ux, supports css variables for light/dark, media queries, etc
19
21
  disableClassName ? (
20
22
  // on the very first render we switch all spring animation drivers to css rendering
@@ -22,12 +24,12 @@ const useComponentState = (props, { animationDriver, groups }, staticConfig, con
22
24
  // without flickers of the wrong colors.
23
25
  // but once we do that initial hydration and we are in client side rendering mode,
24
26
  // we can avoid the extra re-render on mount
25
- defaultComponentState
27
+ hasEnterState ? defaultComponentStateShouldEnter : defaultComponentState
26
28
  ) : defaultComponentStateMounted, disabled = isDisabled(props);
27
29
  disabled != null && (initialState.disabled = disabled);
28
- const states = useState(initialState), state = props.forceStyle ? { ...states[0], [props.forceStyle]: !0 } : states[0], setState = states[1], isHydrated = state.unmounted === !1;
30
+ const states = useState(initialState), state = props.forceStyle ? { ...states[0], [props.forceStyle]: !0 } : states[0], setState = states[1];
29
31
  let isAnimated = willBeAnimated;
30
- isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && state.unmounted === !0 && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, defaultComponentStateMounted), setState({ ...state }));
32
+ isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && !isHydrated && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, defaultComponentStateMounted), setState({ ...state }));
31
33
  let setStateShallow = createShallowSetState(setState, disabled, !1, props.debug);
32
34
  if (presenceState && isAnimated && isHydrated && staticConfig.variants) {
33
35
  process.env.NODE_ENV === "development" && props.debug === "verbose" && console.warn(`has presenceState ${JSON.stringify(presenceState)}`);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useComponentState.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["state"]
6
6
  }
@@ -1,14 +1,16 @@
1
1
  import { isServer, isWeb } from "@tamagui/constants";
2
2
  import { useRef, useState } from "react";
3
- import { defaultComponentState, defaultComponentStateMounted } from "../defaultComponentState.mjs";
3
+ import { defaultComponentState, defaultComponentStateMounted, defaultComponentStateShouldEnter } from "../defaultComponentState.mjs";
4
4
  import { createShallowSetState } from "../helpers/createShallowSetState.mjs";
5
5
  import { isObj } from "../helpers/isObj.mjs";
6
6
  import { log } from "../helpers/log.mjs";
7
+ import { useIsHydrated } from "./useIsHydrated.mjs";
7
8
  const useComponentState = (props, {
8
9
  animationDriver,
9
10
  groups
10
11
  }, staticConfig, config) => {
11
- const useAnimations = animationDriver?.useAnimations,
12
+ const isHydrated = useIsHydrated(),
13
+ useAnimations = animationDriver?.useAnimations,
12
14
  stateRef = useRef(void 0);
13
15
  stateRef.current || (stateRef.current = {});
14
16
  const hasAnimationProp = !!("animation" in props || props.style && hasAnimatedStyleValue(props.style)),
@@ -25,8 +27,9 @@ const useComponentState = (props, {
25
27
  isExiting = presenceState?.isPresent === !1,
26
28
  isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1,
27
29
  hasEnterStyle = !!props.enterStyle,
28
- hasAnimationThatNeedsHydrate = hasAnimationProp && (animationDriver?.isReactNative || !supportsCSSVars),
29
- initialState = hasEnterStyle || isEntering || hasAnimationThatNeedsHydrate ||
30
+ hasAnimationThatNeedsHydrate = hasAnimationProp && !isHydrated && (animationDriver?.isReactNative || !supportsCSSVars),
31
+ hasEnterState = hasEnterStyle || isEntering,
32
+ initialState = hasEnterState || hasAnimationThatNeedsHydrate ||
30
33
  // disableClassName doesnt work server side, only client, so needs hydrate
31
34
  // this is just for a better ux, supports css variables for light/dark, media queries, etc
32
35
  disableClassName ?
@@ -35,7 +38,7 @@ const useComponentState = (props, {
35
38
  // without flickers of the wrong colors.
36
39
  // but once we do that initial hydration and we are in client side rendering mode,
37
40
  // we can avoid the extra re-render on mount
38
- defaultComponentState : defaultComponentStateMounted,
41
+ hasEnterState ? defaultComponentStateShouldEnter : defaultComponentState : defaultComponentStateMounted,
39
42
  disabled = isDisabled(props);
40
43
  disabled != null && (initialState.disabled = disabled);
41
44
  const states = useState(initialState),
@@ -43,10 +46,9 @@ const useComponentState = (props, {
43
46
  ...states[0],
44
47
  [props.forceStyle]: !0
45
48
  } : states[0],
46
- setState = states[1],
47
- isHydrated = state.unmounted === !1;
49
+ setState = states[1];
48
50
  let isAnimated = willBeAnimated;
49
- isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && state.unmounted === !0 && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, defaultComponentStateMounted), setState({
51
+ isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && !isHydrated && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, defaultComponentStateMounted), setState({
50
52
  ...state
51
53
  }));
52
54
  let setStateShallow = createShallowSetState(setState, disabled, !1, props.debug);
@@ -1 +1 @@
1
- {"version":3,"names":["isServer","isWeb","useRef","useState","defaultComponentState","defaultComponentStateMounted","createShallowSetState","isObj","log","useComponentState","props","animationDriver","groups","staticConfig","config","useAnimations","stateRef","current","hasAnimationProp","style","hasAnimatedStyleValue","supportsCSSVars","curStateRef","willBeAnimatedClient","isHOC","hasAnimated","willBeAnimated","disableClassName","presence","animatePresence","usePresence","presenceState","isExiting","isPresent","isEntering","initial","hasEnterStyle","enterStyle","hasAnimationThatNeedsHydrate","isReactNative","initialState","disabled","isDisabled","states","state","forceStyle","setState","isHydrated","unmounted","isAnimated","willHydrate","Object","assign","setStateShallow","debug","variants","process","env","NODE_ENV","console","warn","JSON","stringify","enterVariant","exitVariant","enterExitVariant","custom","exv","noClass","isAnimatedAndHydrated","isClassNameDisabled","acceptsClassName","disableSSR","isDisabledManually","groupName","group","listeners","Set","emit","name","state2","forEach","l","subscribe","cb","add","delete","groupContextState","og","pseudo","next","keys","some","k","val","accessibilityState","accessibilityDisabled"],"sources":["../../../src/hooks/useComponentState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isServer","isWeb","useRef","useState","defaultComponentState","defaultComponentStateMounted","defaultComponentStateShouldEnter","createShallowSetState","isObj","log","useIsHydrated","useComponentState","props","animationDriver","groups","staticConfig","config","isHydrated","useAnimations","stateRef","current","hasAnimationProp","style","hasAnimatedStyleValue","supportsCSSVars","curStateRef","willBeAnimatedClient","isHOC","hasAnimated","willBeAnimated","disableClassName","presence","animatePresence","usePresence","presenceState","isExiting","isPresent","isEntering","initial","hasEnterStyle","enterStyle","hasAnimationThatNeedsHydrate","isReactNative","hasEnterState","initialState","disabled","isDisabled","states","state","forceStyle","setState","isAnimated","willHydrate","Object","assign","setStateShallow","debug","variants","process","env","NODE_ENV","console","warn","JSON","stringify","enterVariant","exitVariant","enterExitVariant","custom","exv","unmounted","noClass","isAnimatedAndHydrated","isClassNameDisabled","acceptsClassName","disableSSR","isDisabledManually","groupName","group","listeners","Set","emit","name","state2","forEach","l","subscribe","cb","add","delete","groupContextState","og","pseudo","next","keys","some","k","val","accessibilityState","accessibilityDisabled"],"sources":["../../../src/hooks/useComponentState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,18 +1,19 @@
1
1
  import { isServer, isWeb } from "@tamagui/constants";
2
2
  import { useRef, useState } from "react";
3
- import { defaultComponentState, defaultComponentStateMounted } from "../defaultComponentState";
3
+ import { defaultComponentState, defaultComponentStateMounted, defaultComponentStateShouldEnter } from "../defaultComponentState";
4
4
  import { createShallowSetState } from "../helpers/createShallowSetState";
5
5
  import { isObj } from "../helpers/isObj";
6
6
  import { log } from "../helpers/log";
7
+ import { useIsHydrated } from "./useIsHydrated";
7
8
  var useComponentState = function(props, param, staticConfig, config) {
8
- var { animationDriver, groups } = param, _animationDriver_usePresence, useAnimations = animationDriver?.useAnimations, stateRef = useRef(void 0);
9
+ var { animationDriver, groups } = param, _animationDriver_usePresence, isHydrated = useIsHydrated(), useAnimations = animationDriver?.useAnimations, stateRef = useRef(void 0);
9
10
  stateRef.current || (stateRef.current = {});
10
11
  var hasAnimationProp = !!("animation" in props || props.style && hasAnimatedStyleValue(props.style)), supportsCSSVars = animationDriver?.supportsCSSVars, curStateRef = stateRef.current, willBeAnimatedClient = function() {
11
12
  var next = !!(hasAnimationProp && !staticConfig.isHOC && useAnimations);
12
13
  return !!(next || curStateRef.hasAnimated);
13
14
  }(), willBeAnimated = !isServer && willBeAnimatedClient;
14
15
  willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
15
- var { disableClassName } = props, 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?.[2], isExiting = presenceState?.isPresent === !1, isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1, hasEnterStyle = !!props.enterStyle, hasAnimationThatNeedsHydrate = hasAnimationProp && (animationDriver?.isReactNative || !supportsCSSVars), hasEnterState = hasEnterStyle || isEntering, shouldEnter = hasEnterState || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
16
+ var { disableClassName } = props, 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?.[2], isExiting = presenceState?.isPresent === !1, isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1, hasEnterStyle = !!props.enterStyle, hasAnimationThatNeedsHydrate = hasAnimationProp && !isHydrated && (animationDriver?.isReactNative || !supportsCSSVars), hasEnterState = hasEnterStyle || isEntering, shouldEnter = hasEnterState || hasAnimationThatNeedsHydrate || // disableClassName doesnt work server side, only client, so needs hydrate
16
17
  // this is just for a better ux, supports css variables for light/dark, media queries, etc
17
18
  disableClassName, initialState = shouldEnter ? (
18
19
  // on the very first render we switch all spring animation drivers to css rendering
@@ -20,14 +21,14 @@ var useComponentState = function(props, param, staticConfig, config) {
20
21
  // without flickers of the wrong colors.
21
22
  // but once we do that initial hydration and we are in client side rendering mode,
22
23
  // we can avoid the extra re-render on mount
23
- defaultComponentState
24
+ hasEnterState ? defaultComponentStateShouldEnter : defaultComponentState
24
25
  ) : defaultComponentStateMounted, disabled = isDisabled(props);
25
26
  disabled != null && (initialState.disabled = disabled);
26
27
  var states = useState(initialState), state = props.forceStyle ? {
27
28
  ...states[0],
28
29
  [props.forceStyle]: !0
29
- } : states[0], setState = states[1], isHydrated = state.unmounted === !1, isAnimated = willBeAnimated;
30
- isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && state.unmounted === !0 && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, defaultComponentStateMounted), setState({
30
+ } : states[0], setState = states[1], isAnimated = willBeAnimated;
31
+ isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && !isHydrated && (isAnimated = !1, curStateRef.willHydrate = !0), disabled !== state.disabled && (state.disabled = disabled, disabled && Object.assign(state, defaultComponentStateMounted), setState({
31
32
  ...state
32
33
  }));
33
34
  var setStateShallow = createShallowSetState(setState, disabled, !1, props.debug);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/Users/n8/tamagui/code/core/web/src/hooks/useComponentState.ts"],
4
- "mappings": "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",
5
- "names": ["isServer", "isWeb", "useRef", "useState", "defaultComponentState", "defaultComponentStateMounted", "createShallowSetState", "isObj", "log", "useComponentState", "props", "staticConfig", "config", "animationDriver", "groups", "useAnimations", "stateRef", "undefined", "current", "hasAnimationProp", "Boolean", "style", "hasAnimatedStyleValue", "supportsCSSVars", "curStateRef", "willBeAnimatedClient", "next", "isHOC", "hasAnimated", "willBeAnimated", "disableClassName", "presence", "usePresence", "presenceState", "isExiting", "isPresent", "isEntering", "initial", "hasEnterStyle", "enterStyle", "hasAnimationThatNeedsHydrate", "isReactNative", "hasEnterState", "shouldEnter", "initialState", "disabled", "isDisabled", "states", "state", "forceStyle", "setState", "isHydrated", "unmounted", "isAnimated", "willHydrate", "Object", "assign", "setStateShallow", "debug", "variants", "process", "env", "NODE_ENV", "console", "warn", "JSON", "stringify", "enterVariant", "exitVariant", "enterExitVariant", "custom", "exv", "noClass", "isAnimatedAndHydrated", "isClassNameDisabled", "acceptsClassName", "disableSSR", "isDisabledManually", "groupName", "group", "listeners", "Set", "emit", "name", "forEach", "l", "subscribe", "cb", "add", "delete", "groupContextState", "og", "pseudo", "keys", "some", "k", "val", "accessibilityState", "accessibilityDisabled"]
4
+ "mappings": "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",
5
+ "names": ["isServer", "isWeb", "useRef", "useState", "defaultComponentState", "defaultComponentStateMounted", "defaultComponentStateShouldEnter", "createShallowSetState", "isObj", "log", "useIsHydrated", "useComponentState", "props", "staticConfig", "config", "animationDriver", "groups", "isHydrated", "useAnimations", "stateRef", "undefined", "current", "hasAnimationProp", "Boolean", "style", "hasAnimatedStyleValue", "supportsCSSVars", "curStateRef", "willBeAnimatedClient", "next", "isHOC", "hasAnimated", "willBeAnimated", "disableClassName", "presence", "usePresence", "presenceState", "isExiting", "isPresent", "isEntering", "initial", "hasEnterStyle", "enterStyle", "hasAnimationThatNeedsHydrate", "isReactNative", "hasEnterState", "shouldEnter", "initialState", "disabled", "isDisabled", "states", "state", "forceStyle", "setState", "isAnimated", "willHydrate", "Object", "assign", "setStateShallow", "debug", "variants", "process", "env", "NODE_ENV", "console", "warn", "JSON", "stringify", "enterVariant", "exitVariant", "enterExitVariant", "custom", "exv", "unmounted", "noClass", "isAnimatedAndHydrated", "isClassNameDisabled", "acceptsClassName", "disableSSR", "isDisabledManually", "groupName", "group", "listeners", "Set", "emit", "name", "forEach", "l", "subscribe", "cb", "add", "delete", "groupContextState", "og", "pseudo", "keys", "some", "k", "val", "accessibilityState", "accessibilityDisabled"]
6
6
  }
@@ -0,0 +1,11 @@
1
+ import { useSyncExternalStore } from "react";
2
+ const nullSubscribe = () => () => {
3
+ }, useIsHydrated = () => useSyncExternalStore(
4
+ nullSubscribe,
5
+ () => !0,
6
+ () => !1
7
+ );
8
+ export {
9
+ useIsHydrated
10
+ };
11
+ //# sourceMappingURL=useIsHydrated.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/useIsHydrated.ts"],
4
+ "mappings": "AAAA,SAAS,4BAA4B;AAErC,MAAM,gBAAgB,MACb,MAAM;AAAC,GAGH,gBAAgB,MACpB;AAAA,EACL;AAAA,EACA,MAAM;AAAA,EACN,MAAM;AACR;",
5
+ "names": []
6
+ }
@@ -0,0 +1,5 @@
1
+ import { useSyncExternalStore } from "react";
2
+ const nullSubscribe = () => () => {},
3
+ useIsHydrated = () => useSyncExternalStore(nullSubscribe, () => !0, () => !1);
4
+ export { useIsHydrated };
5
+ //# sourceMappingURL=useIsHydrated.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useSyncExternalStore","nullSubscribe","useIsHydrated"],"sources":["../../../src/hooks/useIsHydrated.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,oBAAA,QAA4B;AAErC,MAAMC,aAAA,GAAgBA,CAAA,KACb,MAAM,CAAC;EAGHC,aAAA,GAAgBA,CAAA,KACpBF,oBAAA,CACLC,aAAA,EACA,MAAM,IACN,MAAM,EACR","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { useSyncExternalStore } from "react";
2
+ var nullSubscribe = function() {
3
+ return function() {
4
+ };
5
+ }, useIsHydrated = function() {
6
+ return useSyncExternalStore(nullSubscribe, function() {
7
+ return !0;
8
+ }, function() {
9
+ return !1;
10
+ });
11
+ };
12
+ export {
13
+ useIsHydrated
14
+ };
15
+ //# sourceMappingURL=useIsHydrated.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/Users/n8/tamagui/code/core/web/src/hooks/useIsHydrated.ts"],
4
+ "mappings": "AAAA,SAASA,4BAA4B;AAErC,IAAMC,gBAAgB,WAAA;AACpB,SAAO,WAAA;EAAO;AAChB,GAEaC,gBAAgB,WAAA;AAC3B,SAAOF,qBACLC,eACA,WAAA;WAAM;KACN,WAAA;WAAM;;AAEV;",
5
+ "names": ["useSyncExternalStore", "nullSubscribe", "useIsHydrated"]
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/web",
3
- "version": "1.121.1",
3
+ "version": "1.121.3",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/cjs",
6
6
  "module": "dist/esm",
@@ -27,22 +27,22 @@
27
27
  "reset.css"
28
28
  ],
29
29
  "dependencies": {
30
- "@tamagui/compose-refs": "1.121.1",
31
- "@tamagui/constants": "1.121.1",
32
- "@tamagui/helpers": "1.121.1",
33
- "@tamagui/normalize-css-color": "1.121.1",
34
- "@tamagui/timer": "1.121.1",
35
- "@tamagui/types": "1.121.1",
36
- "@tamagui/use-did-finish-ssr": "1.121.1",
37
- "@tamagui/use-event": "1.121.1",
38
- "@tamagui/use-force-update": "1.121.1"
30
+ "@tamagui/compose-refs": "1.121.3",
31
+ "@tamagui/constants": "1.121.3",
32
+ "@tamagui/helpers": "1.121.3",
33
+ "@tamagui/normalize-css-color": "1.121.3",
34
+ "@tamagui/timer": "1.121.3",
35
+ "@tamagui/types": "1.121.3",
36
+ "@tamagui/use-did-finish-ssr": "1.121.3",
37
+ "@tamagui/use-event": "1.121.3",
38
+ "@tamagui/use-force-update": "1.121.3"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "react": "*",
42
42
  "react-dom": "*"
43
43
  },
44
44
  "devDependencies": {
45
- "@tamagui/build": "1.121.1",
45
+ "@tamagui/build": "1.121.3",
46
46
  "@testing-library/react": "^16.1.0",
47
47
  "csstype": "^3.0.10",
48
48
  "react": "*",
@@ -14,3 +14,8 @@ export const defaultComponentStateMounted: TamaguiComponentState = {
14
14
  ...defaultComponentState,
15
15
  unmounted: false,
16
16
  }
17
+
18
+ export const defaultComponentStateShouldEnter: TamaguiComponentState = {
19
+ ...defaultComponentState,
20
+ unmounted: 'should-enter',
21
+ }
@@ -3,6 +3,7 @@ import { useRef, useState } from 'react'
3
3
  import {
4
4
  defaultComponentState,
5
5
  defaultComponentStateMounted,
6
+ defaultComponentStateShouldEnter,
6
7
  } from '../defaultComponentState'
7
8
  import { createShallowSetState } from '../helpers/createShallowSetState'
8
9
  import { isObj } from '../helpers/isObj'
@@ -18,6 +19,7 @@ import type {
18
19
  TextProps,
19
20
  UseAnimationHook,
20
21
  } from '../types'
22
+ import { useIsHydrated } from './useIsHydrated'
21
23
 
22
24
  export const useComponentState = (
23
25
  props: StackProps | TextProps | Record<string, any>,
@@ -25,6 +27,7 @@ export const useComponentState = (
25
27
  staticConfig: StaticConfig,
26
28
  config: TamaguiInternalConfig
27
29
  ) => {
30
+ const isHydrated = useIsHydrated()
28
31
  const useAnimations = animationDriver?.useAnimations as UseAnimationHook | undefined
29
32
 
30
33
  const stateRef = useRef<TamaguiComponentStateRef>(
@@ -70,7 +73,9 @@ export const useComponentState = (
70
73
  const hasEnterStyle = !!props.enterStyle
71
74
 
72
75
  const hasAnimationThatNeedsHydrate =
73
- hasAnimationProp && (animationDriver?.isReactNative || !supportsCSSVars)
76
+ hasAnimationProp &&
77
+ !isHydrated &&
78
+ (animationDriver?.isReactNative || !supportsCSSVars)
74
79
 
75
80
  const hasEnterState = hasEnterStyle || isEntering
76
81
 
@@ -93,7 +98,9 @@ export const useComponentState = (
93
98
  // without flickers of the wrong colors.
94
99
  // but once we do that initial hydration and we are in client side rendering mode,
95
100
  // we can avoid the extra re-render on mount
96
- defaultComponentState
101
+ hasEnterState
102
+ ? defaultComponentStateShouldEnter
103
+ : defaultComponentState
97
104
  : defaultComponentStateMounted
98
105
 
99
106
  // will be nice to deprecate half of these:
@@ -109,16 +116,9 @@ export const useComponentState = (
109
116
  const state = props.forceStyle ? { ...states[0], [props.forceStyle]: true } : states[0]
110
117
  const setState = states[1]
111
118
 
112
- const isHydrated = state.unmounted === false
113
-
114
119
  // only web server + initial client render run this when not hydrated:
115
120
  let isAnimated = willBeAnimated
116
- if (
117
- isWeb &&
118
- hasAnimationThatNeedsHydrate &&
119
- !staticConfig.isHOC &&
120
- state.unmounted === true
121
- ) {
121
+ if (isWeb && hasAnimationThatNeedsHydrate && !staticConfig.isHOC && !isHydrated) {
122
122
  isAnimated = false
123
123
  curStateRef.willHydrate = true
124
124
  }
@@ -0,0 +1,13 @@
1
+ import { useSyncExternalStore } from 'react'
2
+
3
+ const nullSubscribe = () => {
4
+ return () => {}
5
+ }
6
+
7
+ export const useIsHydrated = () => {
8
+ return useSyncExternalStore(
9
+ nullSubscribe,
10
+ () => true,
11
+ () => false
12
+ )
13
+ }
@@ -1,4 +1,5 @@
1
1
  import type { TamaguiComponentState } from './interfaces/TamaguiComponentState';
2
2
  export declare const defaultComponentState: TamaguiComponentState;
3
3
  export declare const defaultComponentStateMounted: TamaguiComponentState;
4
+ export declare const defaultComponentStateShouldEnter: TamaguiComponentState;
4
5
  //# sourceMappingURL=defaultComponentState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultComponentState.d.ts","sourceRoot":"","sources":["../src/defaultComponentState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAE/E,eAAO,MAAM,qBAAqB,EAAE,qBAQnC,CAAA;AAED,eAAO,MAAM,4BAA4B,EAAE,qBAG1C,CAAA"}
1
+ {"version":3,"file":"defaultComponentState.d.ts","sourceRoot":"","sources":["../src/defaultComponentState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAE/E,eAAO,MAAM,qBAAqB,EAAE,qBAQnC,CAAA;AAED,eAAO,MAAM,4BAA4B,EAAE,qBAG1C,CAAA;AAED,eAAO,MAAM,gCAAgC,EAAE,qBAG9C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useComponentState.d.ts","sourceRoot":"","sources":["../../src/hooks/useComponentState.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,iBAAiB,EAEjB,UAAU,EACV,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,SAAS,EAEV,MAAM,UAAU,CAAA;AAEjB,eAAO,MAAM,iBAAiB,UACrB,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,+BACtB,iBAAiB,gBAChC,YAAY,UAClB,qBAAqB;;;;;;;;;;;;;;;;;;;CA+N9B,CAAA"}
1
+ {"version":3,"file":"useComponentState.d.ts","sourceRoot":"","sources":["../../src/hooks/useComponentState.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,iBAAiB,EAEjB,UAAU,EACV,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,SAAS,EAEV,MAAM,UAAU,CAAA;AAGjB,eAAO,MAAM,iBAAiB,UACrB,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,+BACtB,iBAAiB,gBAChC,YAAY,UAClB,qBAAqB;;;;;;;;;;;;;;;;;;;CA6N9B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const useIsHydrated: () => boolean;
2
+ //# sourceMappingURL=useIsHydrated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsHydrated.d.ts","sourceRoot":"","sources":["../../src/hooks/useIsHydrated.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa,eAMzB,CAAA"}