@tamagui/web 1.115.4 → 1.116.0

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 (183) hide show
  1. package/dist/cjs/createComponent.cjs +16 -25
  2. package/dist/cjs/createComponent.cjs.map +1 -1
  3. package/dist/cjs/createComponent.native.js +14 -18
  4. package/dist/cjs/createComponent.native.js.map +2 -2
  5. package/dist/cjs/defaultComponentState.cjs +1 -6
  6. package/dist/cjs/defaultComponentState.cjs.map +1 -1
  7. package/dist/cjs/defaultComponentState.native.js +2 -7
  8. package/dist/cjs/defaultComponentState.native.js.map +2 -2
  9. package/dist/cjs/helpers/getSplitStyles.cjs +13 -14
  10. package/dist/cjs/helpers/getSplitStyles.cjs.map +1 -1
  11. package/dist/cjs/helpers/getSplitStyles.native.js +7 -10
  12. package/dist/cjs/helpers/getSplitStyles.native.js.map +2 -2
  13. package/dist/cjs/helpers/isActivePlatform.cjs +1 -0
  14. package/dist/cjs/helpers/isActivePlatform.cjs.map +1 -1
  15. package/dist/cjs/helpers/isActivePlatform.native.js +2 -0
  16. package/dist/cjs/helpers/isActivePlatform.native.js.map +2 -2
  17. package/dist/cjs/helpers/isActiveTheme.cjs +28 -0
  18. package/dist/cjs/helpers/isActiveTheme.cjs.map +6 -0
  19. package/dist/cjs/helpers/isActiveTheme.native.js +29 -0
  20. package/dist/cjs/helpers/isActiveTheme.native.js.map +6 -0
  21. package/dist/cjs/helpers/log.cjs +2 -2
  22. package/dist/cjs/helpers/log.cjs.map +1 -1
  23. package/dist/cjs/helpers/log.native.js +2 -2
  24. package/dist/cjs/helpers/log.native.js.map +2 -2
  25. package/dist/cjs/helpers/themeable.cjs +9 -9
  26. package/dist/cjs/helpers/themeable.cjs.map +1 -1
  27. package/dist/cjs/helpers/themeable.native.js +6 -6
  28. package/dist/cjs/helpers/themeable.native.js.map +2 -2
  29. package/dist/cjs/hooks/useComponentState.cjs +21 -21
  30. package/dist/cjs/hooks/useComponentState.cjs.map +1 -1
  31. package/dist/cjs/hooks/useComponentState.native.js +12 -10
  32. package/dist/cjs/hooks/useComponentState.native.js.map +2 -2
  33. package/dist/cjs/hooks/useMedia.cjs +34 -37
  34. package/dist/cjs/hooks/useMedia.cjs.map +1 -1
  35. package/dist/cjs/hooks/useMedia.native.js +55 -40
  36. package/dist/cjs/hooks/useMedia.native.js.map +2 -2
  37. package/dist/cjs/hooks/useProps.cjs +1 -1
  38. package/dist/cjs/hooks/useProps.cjs.map +1 -1
  39. package/dist/cjs/hooks/useProps.native.js +1 -1
  40. package/dist/cjs/hooks/useProps.native.js.map +2 -2
  41. package/dist/cjs/index.cjs +1 -0
  42. package/dist/cjs/index.cjs.map +1 -1
  43. package/dist/cjs/index.native.js +2 -0
  44. package/dist/cjs/index.native.js.map +1 -1
  45. package/dist/cjs/views/TamaguiProvider.cjs +1 -2
  46. package/dist/cjs/views/TamaguiProvider.cjs.map +1 -1
  47. package/dist/cjs/views/TamaguiProvider.native.js +2 -2
  48. package/dist/cjs/views/TamaguiProvider.native.js.map +2 -2
  49. package/dist/cjs/views/Theme.cjs +2 -2
  50. package/dist/cjs/views/Theme.cjs.map +1 -1
  51. package/dist/cjs/views/Theme.native.js +2 -2
  52. package/dist/cjs/views/Theme.native.js.map +2 -2
  53. package/dist/cjs/views/ThemeDebug.cjs.map +1 -1
  54. package/dist/esm/createComponent.js +13 -16
  55. package/dist/esm/createComponent.js.map +1 -1
  56. package/dist/esm/createComponent.mjs +16 -25
  57. package/dist/esm/createComponent.mjs.map +1 -1
  58. package/dist/esm/createComponent.native.js +14 -18
  59. package/dist/esm/createComponent.native.js.map +2 -2
  60. package/dist/esm/defaultComponentState.js +1 -5
  61. package/dist/esm/defaultComponentState.js.map +1 -1
  62. package/dist/esm/defaultComponentState.mjs +1 -5
  63. package/dist/esm/defaultComponentState.mjs.map +1 -1
  64. package/dist/esm/defaultComponentState.native.js +1 -5
  65. package/dist/esm/defaultComponentState.native.js.map +2 -2
  66. package/dist/esm/helpers/getSplitStyles.js +11 -23
  67. package/dist/esm/helpers/getSplitStyles.js.map +1 -1
  68. package/dist/esm/helpers/getSplitStyles.mjs +11 -12
  69. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  70. package/dist/esm/helpers/getSplitStyles.native.js +10 -12
  71. package/dist/esm/helpers/getSplitStyles.native.js.map +2 -2
  72. package/dist/esm/helpers/isActivePlatform.js +2 -0
  73. package/dist/esm/helpers/isActivePlatform.js.map +1 -1
  74. package/dist/esm/helpers/isActivePlatform.mjs +1 -0
  75. package/dist/esm/helpers/isActivePlatform.mjs.map +1 -1
  76. package/dist/esm/helpers/isActivePlatform.native.js +2 -0
  77. package/dist/esm/helpers/isActivePlatform.native.js.map +2 -2
  78. package/dist/esm/helpers/isActiveTheme.js +8 -0
  79. package/dist/esm/helpers/isActiveTheme.js.map +6 -0
  80. package/dist/esm/helpers/isActiveTheme.mjs +5 -0
  81. package/dist/esm/helpers/isActiveTheme.mjs.map +1 -0
  82. package/dist/esm/helpers/isActiveTheme.native.js +8 -0
  83. package/dist/esm/helpers/isActiveTheme.native.js.map +6 -0
  84. package/dist/esm/helpers/log.js +3 -3
  85. package/dist/esm/helpers/log.js.map +1 -1
  86. package/dist/esm/helpers/log.mjs +3 -3
  87. package/dist/esm/helpers/log.mjs.map +1 -1
  88. package/dist/esm/helpers/log.native.js +3 -3
  89. package/dist/esm/helpers/log.native.js.map +2 -2
  90. package/dist/esm/helpers/themeable.js +5 -13
  91. package/dist/esm/helpers/themeable.js.map +1 -1
  92. package/dist/esm/helpers/themeable.mjs +12 -12
  93. package/dist/esm/helpers/themeable.mjs.map +1 -1
  94. package/dist/esm/helpers/themeable.native.js +6 -6
  95. package/dist/esm/helpers/themeable.native.js.map +2 -2
  96. package/dist/esm/hooks/useComponentState.js +14 -14
  97. package/dist/esm/hooks/useComponentState.js.map +1 -1
  98. package/dist/esm/hooks/useComponentState.mjs +21 -21
  99. package/dist/esm/hooks/useComponentState.mjs.map +1 -1
  100. package/dist/esm/hooks/useComponentState.native.js +13 -12
  101. package/dist/esm/hooks/useComponentState.native.js.map +2 -2
  102. package/dist/esm/hooks/useMedia.js +38 -37
  103. package/dist/esm/hooks/useMedia.js.map +1 -1
  104. package/dist/esm/hooks/useMedia.mjs +33 -36
  105. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  106. package/dist/esm/hooks/useMedia.native.js +54 -39
  107. package/dist/esm/hooks/useMedia.native.js.map +2 -2
  108. package/dist/esm/hooks/useProps.js +1 -1
  109. package/dist/esm/hooks/useProps.js.map +1 -1
  110. package/dist/esm/hooks/useProps.mjs +1 -1
  111. package/dist/esm/hooks/useProps.mjs.map +1 -1
  112. package/dist/esm/hooks/useProps.native.js +1 -1
  113. package/dist/esm/hooks/useProps.native.js.map +2 -2
  114. package/dist/esm/index.js +2 -0
  115. package/dist/esm/index.js.map +1 -1
  116. package/dist/esm/index.mjs +2 -2
  117. package/dist/esm/index.mjs.map +1 -1
  118. package/dist/esm/index.native.js +2 -1
  119. package/dist/esm/index.native.js.map +2 -2
  120. package/dist/esm/views/TamaguiProvider.js +1 -2
  121. package/dist/esm/views/TamaguiProvider.js.map +1 -1
  122. package/dist/esm/views/TamaguiProvider.mjs +1 -2
  123. package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
  124. package/dist/esm/views/TamaguiProvider.native.js +1 -2
  125. package/dist/esm/views/TamaguiProvider.native.js.map +2 -2
  126. package/dist/esm/views/Theme.js +2 -2
  127. package/dist/esm/views/Theme.js.map +1 -1
  128. package/dist/esm/views/Theme.mjs +2 -2
  129. package/dist/esm/views/Theme.mjs.map +1 -1
  130. package/dist/esm/views/Theme.native.js +2 -2
  131. package/dist/esm/views/Theme.native.js.map +2 -2
  132. package/dist/esm/views/ThemeDebug.js.map +1 -1
  133. package/dist/esm/views/ThemeDebug.mjs.map +1 -1
  134. package/package.json +13 -11
  135. package/src/createComponent.tsx +19 -26
  136. package/src/defaultComponentState.tsx +0 -5
  137. package/src/helpers/getSplitStyles.tsx +15 -27
  138. package/src/helpers/isActivePlatform.ts +3 -0
  139. package/src/helpers/isActiveTheme.ts +4 -0
  140. package/src/helpers/log.ts +3 -3
  141. package/src/helpers/themeable.tsx +27 -9
  142. package/src/hooks/useComponentState.ts +47 -39
  143. package/src/hooks/useMedia.tsx +67 -75
  144. package/src/hooks/useProps.tsx +3 -3
  145. package/src/index.ts +1 -0
  146. package/src/types.tsx +1 -1
  147. package/src/views/TamaguiProvider.tsx +0 -4
  148. package/src/views/Theme.tsx +7 -3
  149. package/src/views/ThemeDebug.tsx +0 -1
  150. package/types/createComponent.d.ts.map +1 -1
  151. package/types/defaultComponentState.d.ts +0 -1
  152. package/types/defaultComponentState.d.ts.map +1 -1
  153. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  154. package/types/helpers/isActivePlatform.d.ts.map +1 -1
  155. package/types/helpers/isActiveTheme.d.ts +2 -0
  156. package/types/helpers/isActiveTheme.d.ts.map +1 -0
  157. package/types/helpers/themeable.d.ts.map +1 -1
  158. package/types/hooks/useComponentState.d.ts +1 -1
  159. package/types/hooks/useComponentState.d.ts.map +1 -1
  160. package/types/hooks/useMedia.d.ts +2 -2
  161. package/types/hooks/useMedia.d.ts.map +1 -1
  162. package/types/hooks/useProps.d.ts +2 -2
  163. package/types/hooks/useProps.d.ts.map +1 -1
  164. package/types/index.d.ts +1 -1
  165. package/types/index.d.ts.map +1 -1
  166. package/types/types.d.ts +1 -1
  167. package/types/types.d.ts.map +1 -1
  168. package/types/views/TamaguiProvider.d.ts.map +1 -1
  169. package/types/views/Theme.d.ts.map +1 -1
  170. package/types/views/ThemeDebug.d.ts.map +1 -1
  171. package/dist/cjs/hooks/useDidHydrateOnce.cjs +0 -50
  172. package/dist/cjs/hooks/useDidHydrateOnce.cjs.map +0 -6
  173. package/dist/cjs/hooks/useDidHydrateOnce.native.js +0 -53
  174. package/dist/cjs/hooks/useDidHydrateOnce.native.js.map +0 -6
  175. package/dist/esm/hooks/useDidHydrateOnce.js +0 -16
  176. package/dist/esm/hooks/useDidHydrateOnce.js.map +0 -6
  177. package/dist/esm/hooks/useDidHydrateOnce.mjs +0 -15
  178. package/dist/esm/hooks/useDidHydrateOnce.mjs.map +0 -1
  179. package/dist/esm/hooks/useDidHydrateOnce.native.js +0 -24
  180. package/dist/esm/hooks/useDidHydrateOnce.native.js.map +0 -6
  181. package/src/hooks/useDidHydrateOnce.tsx +0 -42
  182. package/types/hooks/useDidHydrateOnce.d.ts +0 -3
  183. package/types/hooks/useDidHydrateOnce.d.ts.map +0 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/themeable.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,2BAGlB,eAAsB,2BA0BhB;AAAA;AAAA;AAAA;AAxBC,SAAS,UACd,WACA,cACA;AAkDA,QAAM,YAjDqB,aAAAA,QAAM,WAAW,SAC1C,OACA,KACA;AACA,UAAM,EAAE,cAAc,OAAO,eAAe,YAAY,GAAG,KAAK,IAAI;AAEpE,QAAI;AACJ,UAAM,UAAU,cAAc;AAC9B,QAAI;AACF,iBAAW,OAAO,QAAQ,OAAO;AAC/B,cAAM,MAAM,MAAM,GAAG;AACrB,QAAI,QAAQ,WACV,2BAA2B,CAAC,GAC5B,uBAAuB,GAAG,IAAI;AAAA,MAElC;AAGF,UAAM,UAEJ,4CAAC,aAAU,KAAW,GAAG,MAAM,sBAAkB,IAAC;AAGpD,QAAI,WACF;AAAA,MAAC;AAAA;AAAA,QACC,eAAe,iBAAiB,cAAc;AAAA,QAC9C,MAAM;AAAA,QACN,uBAAmB;AAAA,QACnB,OAAO,MAAM;AAAA,QACb,SAAS;AAAA,QACT,OAAO;AAAA,QAEN;AAAA;AAAA,IACH;AAGF,QAAI,SAAS;AACX,YAAM,WAAW,QAAQ,UACnB,eAAe,aAAAA,QAAM,WAAW,OAAO;AAC7C,iBACE,4CAAC,YAAU,GAAG,cAAe,GAAG,wBAC7B,oBACH;AAAA,IAEJ;AAEA,WAAO;AAAA,EACT,CAAC;AAGD,mBAAU,cAAc,UACrB,WAAmB,eAAgB,WAAmB,QAAQ,WACjE,KAEO;AAGT;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,2BAGlB,eAAsB,2BA0BhB;AAAA;AAAA;AAAA;AAxBC,SAAS,UACd,WACA,cACA;AAoEA,QAAM,YAnEqB,aAAAA,QAAM,WAAW,SAC1C,OACA,KACA;AACA,UAAM,EAAE,cAAc,OAAO,eAAe,YAAY,GAAG,KAAK,IAAI;AAEpE,QAAI;AACJ,UAAM,UAAU,cAAc;AAC9B,QAAI;AACF,iBAAW,OAAO,QAAQ,OAAO;AAC/B,cAAM,MAAM,MAAM,GAAG;AACrB,QAAI,QAAQ,WACV,2BAA2B,CAAC,GAC5B,uBAAuB,GAAG,IAAI;AAAA,MAElC;AAGF,UAAM,UAEJ,4CAAC,aAAU,KAAW,GAAG,MAAM,sBAAkB,IAAC,GAY9C,gBAAqC;AAAA,MACzC,eAAe,iBAAiB,cAAc;AAAA,IAChD;AACA,IAAI,WAAW,UACb,cAAc,QAAQ,MAAM,QAE1B,WAAW,UACb,cAAc,OAAO,MAAM,QAEzB,kBAAkB,UACpB,cAAc,UAAU,MAAM,eAE5B,gBAAgB,UAClB,cAAc,QAAQ;AAGxB,QAAI,WACF,4CAAC,sBAAM,uBAAmB,IAAE,GAAG,eAC5B,mBACH;AAGF,QAAI,SAAS;AACX,YAAM,WAAW,QAAQ,UACnB,eAAe,aAAAA,QAAM,WAAW,OAAO;AAC7C,iBACE,4CAAC,YAAU,GAAG,cAAe,GAAG,wBAC7B,oBACH;AAAA,IAEJ;AAEA,WAAO;AAAA,EACT,CAAC;AAGD,mBAAU,cAAc,UACrB,WAAmB,eAAgB,WAAmB,QAAQ,WACjE,KAEO;AAGT;",
5
5
  "names": ["React"]
6
6
  }
@@ -42,13 +42,13 @@ function themeable(Component, staticConfig) {
42
42
  ...rest,
43
43
  "data-disable-theme": !0
44
44
  })
45
- ), contents = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Theme.Theme, {
46
- componentName: componentName || (staticConfig == null ? void 0 : staticConfig.componentName),
47
- name: theme,
45
+ ), filteredProps = {
46
+ componentName: componentName || (staticConfig == null ? void 0 : staticConfig.componentName)
47
+ };
48
+ "debug" in props && (filteredProps.debug = props.debug), "theme" in props && (filteredProps.name = props.theme), "themeInverse" in props && (filteredProps.inverse = props.themeInverse), "themeReset" in props && (filteredProps.reset = themeReset);
49
+ var contents = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Theme.Theme, {
48
50
  "disable-child-theme": !0,
49
- debug: props.debug,
50
- inverse: themeInverse,
51
- reset: themeReset,
51
+ ...filteredProps,
52
52
  children: element
53
53
  });
54
54
  if (context) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/Users/n8/tamagui/code/core/web/src/helpers/themeable.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,eAAkB,2BAGlB,eAAsB;AAEf,SAASA,UACdC,WACAC,cAAoC;AAEpC,MAAMC,qBAAqBC,6BAAAA,QAAMC,WAAW,SAC1CC,OACAC,KAAG;AAEH,QAAM,EAAEC,cAAcC,OAAOC,eAAeC,YAAY,GAAGC,KAAAA,IAASN,OAEhEO,wBACEC,UAAUZ,gBAAAA,OAAAA,SAAAA,aAAcY;AAC9B,QAAIA;AACF,eAAWC,OAAOD,QAAQR,OAAO;AAC/B,YAAMU,MAAMV,MAAMS,GAAAA;AAClB,QAAIC,QAAQC,WACVJ,2BAAAA,yBAA2B,CAAC,IAC5BA,uBAAuBE,GAAAA,IAAOC;MAElC;AAGF,QAAME;;MAEJ,uCAAAC,KAAClB,WAAAA;QAAUM;QAAW,GAAGK;QAAMQ,sBAAkB;;OAG/CC,WACF,uCAAAF,KAACG,oBAAAA;MACCZ,eAAeA,kBAAiBR,gBAAAA,OAAAA,SAAAA,aAAcQ;MAC9Ca,MAAMd;MACNe,uBAAmB;MACnBC,OAAOnB,MAAMmB;MACbC,SAASlB;MACTmB,OAAOhB;gBAENO;;AAIL,QAAIJ,SAAS;AACX,UAAMc,WAAWd,QAAQc,UACnBC,eAAezB,aAAAA,QAAM0B,WAAWhB,OAAAA;AACtCO,iBACE,uCAAAF,KAACS,UAAAA;QAAU,GAAGC;QAAe,GAAGhB;kBAC7BQ;;IAGP;AAEA,WAAOA;EACT,CAAA,GAEMU,YAAiB5B;AACvB4B,mBAAUC,cAAc,WACrB/B,aAAAA,OAAAA,SAAAA,UAAmB+B,iBAAgB/B,aAAAA,OAAAA,SAAAA,UAAmBsB,SAAQ,WAAA,KAG1DQ;AAGT;",
5
- "names": ["themeable", "Component", "staticConfig", "withThemeComponent", "React", "forwardRef", "props", "ref", "themeInverse", "theme", "componentName", "themeReset", "rest", "overriddenContextProps", "context", "key", "val", "undefined", "element", "_jsx", "data-disable-theme", "contents", "Theme", "name", "disable-child-theme", "debug", "inverse", "reset", "Provider", "contextValue", "useContext", "withTheme", "displayName"]
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,eAAkB,2BAGlB,eAAsB;AAEf,SAASA,UACdC,WACAC,cAAoC;AAEpC,MAAMC,qBAAqBC,6BAAAA,QAAMC,WAAW,SAC1CC,OACAC,KAAG;AAEH,QAAM,EAAEC,cAAcC,OAAOC,eAAeC,YAAY,GAAGC,KAAAA,IAASN,OAEhEO,wBACEC,UAAUZ,gBAAAA,OAAAA,SAAAA,aAAcY;AAC9B,QAAIA;AACF,eAAWC,OAAOD,QAAQR,OAAO;AAC/B,YAAMU,MAAMV,MAAMS,GAAAA;AAClB,QAAIC,QAAQC,WACVJ,2BAAAA,yBAA2B,CAAC,IAC5BA,uBAAuBE,GAAAA,IAAOC;MAElC;AAGF,QAAME;;MAEJ,uCAAAC,KAAClB,WAAAA;QAAUM;QAAW,GAAGK;QAAMQ,sBAAkB;;OAY7CC,gBAAqC;MACzCX,eAAeA,kBAAiBR,gBAAAA,OAAAA,SAAAA,aAAcQ;IAChD;AACA,IAAI,WAAWJ,UACbe,cAAcC,QAAQhB,MAAMgB,QAE1B,WAAWhB,UACbe,cAAcE,OAAOjB,MAAMG,QAEzB,kBAAkBH,UACpBe,cAAcG,UAAUlB,MAAME,eAE5B,gBAAgBF,UAClBe,cAAcI,QAAQd;AAGxB,QAAIe,WACF,uCAAAP,KAACQ,oBAAAA;MAAMC,uBAAmB;MAAE,GAAGP;gBAC5BH;;AAIL,QAAIJ,SAAS;AACX,UAAMe,WAAWf,QAAQe,UACnBC,eAAe1B,aAAAA,QAAM2B,WAAWjB,OAAAA;AACtCY,iBACE,uCAAAP,KAACU,UAAAA;QAAU,GAAGC;QAAe,GAAGjB;kBAC7Ba;;IAGP;AAEA,WAAOA;EACT,CAAA,GAEMM,YAAiB7B;AACvB6B,mBAAUC,cAAc,WACrBhC,aAAAA,OAAAA,SAAAA,UAAmBgC,iBAAgBhC,aAAAA,OAAAA,SAAAA,UAAmBsB,SAAQ,WAAA,KAG1DS;AAGT;",
5
+ "names": ["themeable", "Component", "staticConfig", "withThemeComponent", "React", "forwardRef", "props", "ref", "themeInverse", "theme", "componentName", "themeReset", "rest", "overriddenContextProps", "context", "key", "val", "undefined", "element", "_jsx", "data-disable-theme", "filteredProps", "debug", "name", "inverse", "reset", "contents", "Theme", "disable-child-theme", "Provider", "contextValue", "useContext", "withTheme", "displayName"]
6
6
  }
@@ -23,10 +23,9 @@ __export(useComponentState_exports, {
23
23
  useComponentState: () => useComponentState
24
24
  });
25
25
  module.exports = __toCommonJS(useComponentState_exports);
26
- var import_defaultComponentState = require("../defaultComponentState.cjs"),
27
- import_useDidHydrateOnce = require("../hooks/useDidHydrateOnce.cjs"),
26
+ var import_constants = require("@tamagui/constants"),
28
27
  import_react = require("react"),
29
- import_constants = require("@tamagui/constants"),
28
+ import_defaultComponentState = require("../defaultComponentState.cjs"),
30
29
  import_createShallowSetState = require("../helpers/createShallowSetState.cjs"),
31
30
  import_isObj = require("../helpers/isObj.cjs"),
32
31
  import_log = require("../helpers/log.cjs");
@@ -43,21 +42,25 @@ const useComponentState = (props, {
43
42
  willBeAnimatedClient = !!(!!(hasAnimationProp && !staticConfig.isHOC && useAnimations) || curStateRef.hasAnimated),
44
43
  willBeAnimated = !import_constants.isServer && willBeAnimatedClient;
45
44
  willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
46
- const presence = willBeAnimated && props.animatePresence !== !1 && animationDriver?.usePresence?.() || null,
45
+ const {
46
+ disableClassName
47
+ } = props,
48
+ presence = willBeAnimated && props.animatePresence !== !1 && animationDriver?.usePresence?.() || null,
47
49
  presenceState = presence?.[2],
48
50
  isExiting = presenceState?.isPresent === !1,
49
51
  isEntering = presenceState?.isPresent === !0 && presenceState.initial !== !1,
50
52
  hasEnterStyle = !!props.enterStyle,
51
- hasRNAnimation = hasAnimationProp && animationDriver?.isReactNative,
52
- hasEnterState = hasEnterStyle || isEntering,
53
- didHydrateOnce = willBeAnimated ? (0, import_useDidHydrateOnce.useDidHydrateOnce)() : !0,
54
- initialState = hasEnterState || !didHydrateOnce && hasRNAnimation ?
53
+ hasAnimationThatNeedsHydrate = hasAnimationProp && (animationDriver?.isReactNative || !supportsCSSVars),
54
+ initialState = hasEnterStyle || isEntering || hasAnimationThatNeedsHydrate ||
55
+ // disableClassName doesnt work server side, only client, so needs hydrate
56
+ // this is just for a better ux, supports css variables for light/dark, media queries, etc
57
+ disableClassName ?
55
58
  // on the very first render we switch all spring animation drivers to css rendering
56
59
  // this is because we need to use css variables, which they don't support to do proper SSR
57
60
  // without flickers of the wrong colors.
58
61
  // but once we do that initial hydration and we are in client side rendering mode,
59
62
  // we can avoid the extra re-render on mount
60
- import_constants.isWeb && !didHydrateOnce ? import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateShouldEnter : import_defaultComponentState.defaultComponentStateMounted,
63
+ import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateMounted,
61
64
  disabled = isDisabled(props);
62
65
  disabled != null && (initialState.disabled = disabled);
63
66
  const states = (0, import_react.useState)(initialState),
@@ -66,9 +69,9 @@ const useComponentState = (props, {
66
69
  [props.forceStyle]: !0
67
70
  } : states[0],
68
71
  setState = states[1],
69
- isHydrated = state.unmounted === !1 || state.unmounted === "should-enter";
72
+ isHydrated = state.unmounted === !1;
70
73
  let isAnimated = willBeAnimated;
71
- 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({
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({
72
75
  ...state
73
76
  }));
74
77
  let setStateShallow = (0, import_createShallowSetState.createShallowSetState)(setState, disabled, !1, props.debug);
@@ -85,15 +88,12 @@ const useComponentState = (props, {
85
88
  env = enterVariant ?? enterExitVariant;
86
89
  state.unmounted && env && staticConfig.variants[env] ? (process.env.NODE_ENV === "development" && props.debug === "verbose" && console.warn(`Animating presence ENTER "${env}"`), props[env] = !0) : isExiting && exv && (process.env.NODE_ENV === "development" && props.debug === "verbose" && console.warn(`Animating presence EXIT "${exv}"`), props[exv] = exitVariant !== enterExitVariant);
87
90
  }
88
- let shouldAvoidClasses = !import_constants.isWeb;
89
- if (import_constants.isWeb) {
90
- const {
91
- disableClassName
92
- } = props,
93
- isAnimatedAndHydrated = isAnimated && !supportsCSSVars && didHydrateOnce && !import_constants.isServer,
94
- isClassNameDisabled = !staticConfig.acceptsClassName && (config.disableSSR || didHydrateOnce),
95
- isDisabledManually = disableClassName && !import_constants.isServer && didHydrateOnce && state.unmounted === !0;
96
- (isAnimatedAndHydrated || isDisabledManually || isClassNameDisabled) && (shouldAvoidClasses = !0, process.env.NODE_ENV === "development" && props.debug && (0, import_log.log)("avoiding className", {
91
+ let noClass = !import_constants.isWeb || !!props.forceStyle;
92
+ if (import_constants.isWeb && (!import_constants.isServer || isHydrated)) {
93
+ const isAnimatedAndHydrated = isAnimated && !supportsCSSVars,
94
+ isClassNameDisabled = !staticConfig.acceptsClassName && (config.disableSSR || !state.unmounted),
95
+ isDisabledManually = disableClassName && !state.unmounted;
96
+ (isAnimatedAndHydrated || isDisabledManually || isClassNameDisabled) && (noClass = !0, process.env.NODE_ENV === "development" && props.debug && (0, import_log.log)("avoiding className", {
97
97
  isAnimatedAndHydrated,
98
98
  isDisabledManually,
99
99
  isClassNameDisabled
@@ -141,7 +141,7 @@ const useComponentState = (props, {
141
141
  presenceState,
142
142
  setState,
143
143
  setStateShallow,
144
- shouldAvoidClasses,
144
+ noClass,
145
145
  state,
146
146
  stateRef,
147
147
  supportsCSSVars,
@@ -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
  }
@@ -18,7 +18,7 @@ __export(useComponentState_exports, {
18
18
  useComponentState: () => useComponentState
19
19
  });
20
20
  module.exports = __toCommonJS(useComponentState_exports);
21
- var import_defaultComponentState = require("../defaultComponentState"), import_useDidHydrateOnce = require("../hooks/useDidHydrateOnce"), import_react = require("react"), import_constants = require("@tamagui/constants"), import_createShallowSetState = require("../helpers/createShallowSetState"), import_isObj = require("../helpers/isObj"), import_log = require("../helpers/log"), useComponentState = function(props, param, staticConfig, config) {
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
22
  var { animationDriver, groups } = param, _animationDriver_usePresence, 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() {
@@ -26,20 +26,22 @@ var import_defaultComponentState = require("../defaultComponentState"), import_u
26
26
  return !!(next || curStateRef.hasAnimated);
27
27
  }(), willBeAnimated = !import_constants.isServer && willBeAnimatedClient;
28
28
  willBeAnimated && !curStateRef.hasAnimated && (curStateRef.hasAnimated = !0);
29
- 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), hasEnterState = hasEnterStyle || isEntering, didHydrateOnce = willBeAnimated ? (0, import_useDidHydrateOnce.useDidHydrateOnce)() : !0, shouldEnter = hasEnterState || !didHydrateOnce && hasRNAnimation, shouldEnterFromUnhydrated = import_constants.isWeb && !didHydrateOnce, initialState = shouldEnter ? (
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
30
+ // this is just for a better ux, supports css variables for light/dark, media queries, etc
31
+ disableClassName, initialState = shouldEnter ? (
30
32
  // on the very first render we switch all spring animation drivers to css rendering
31
33
  // this is because we need to use css variables, which they don't support to do proper SSR
32
34
  // without flickers of the wrong colors.
33
35
  // but once we do that initial hydration and we are in client side rendering mode,
34
36
  // we can avoid the extra re-render on mount
35
- shouldEnterFromUnhydrated ? import_defaultComponentState.defaultComponentState : import_defaultComponentState.defaultComponentStateShouldEnter
37
+ import_defaultComponentState.defaultComponentState
36
38
  ) : import_defaultComponentState.defaultComponentStateMounted, disabled = isDisabled(props);
37
39
  disabled != null && (initialState.disabled = disabled);
38
40
  var states = (0, import_react.useState)(initialState), state = props.forceStyle ? {
39
41
  ...states[0],
40
42
  [props.forceStyle]: !0
41
- } : states[0], setState = states[1], isHydrated = state.unmounted === !1 || state.unmounted === "should-enter", isAnimated = willBeAnimated;
42
- 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({
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
45
  ...state
44
46
  }));
45
47
  var setStateShallow = (0, import_createShallowSetState.createShallowSetState)(setState, disabled, !1, props.debug);
@@ -50,10 +52,10 @@ var import_defaultComponentState = require("../defaultComponentState"), import_u
50
52
  var exv = exitVariant ?? enterExitVariant, env = enterVariant ?? enterExitVariant;
51
53
  state.unmounted && env && staticConfig.variants[env] ? (process.env.NODE_ENV === "development" && props.debug === "verbose" && console.warn(`Animating presence ENTER "${env}"`), props[env] = !0) : isExiting && exv && (process.env.NODE_ENV === "development" && props.debug === "verbose" && console.warn(`Animating presence EXIT "${exv}"`), props[exv] = exitVariant !== enterExitVariant);
52
54
  }
53
- var shouldAvoidClasses = !import_constants.isWeb;
54
- if (import_constants.isWeb) {
55
- var { disableClassName } = props, isAnimatedAndHydrated = isAnimated && !supportsCSSVars && didHydrateOnce && !import_constants.isServer, isClassNameDisabled = !staticConfig.acceptsClassName && (config.disableSSR || didHydrateOnce), isDisabledManually = disableClassName && !import_constants.isServer && didHydrateOnce && state.unmounted === !0;
56
- (isAnimatedAndHydrated || isDisabledManually || isClassNameDisabled) && (shouldAvoidClasses = !0, process.env.NODE_ENV === "development" && props.debug && (0, import_log.log)("avoiding className", {
55
+ var noClass = !import_constants.isWeb || !!props.forceStyle;
56
+ if (import_constants.isWeb && (!import_constants.isServer || isHydrated)) {
57
+ var isAnimatedAndHydrated = isAnimated && !supportsCSSVars, isClassNameDisabled = !staticConfig.acceptsClassName && (config.disableSSR || !state.unmounted), isDisabledManually = disableClassName && !state.unmounted;
58
+ (isAnimatedAndHydrated || isDisabledManually || isClassNameDisabled) && (noClass = !0, process.env.NODE_ENV === "development" && props.debug && (0, import_log.log)("avoiding className", {
57
59
  isAnimatedAndHydrated,
58
60
  isDisabledManually,
59
61
  isClassNameDisabled
@@ -102,7 +104,7 @@ var import_defaultComponentState = require("../defaultComponentState"), import_u
102
104
  presenceState,
103
105
  setState,
104
106
  setStateShallow,
105
- shouldAvoidClasses,
107
+ noClass,
106
108
  state,
107
109
  stateRef,
108
110
  supportsCSSVars,
@@ -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", "presence", "usePresence", "presenceState", "isExiting", "isPresent", "isEntering", "initial", "hasEnterStyle", "enterStyle", "hasRNAnimation", "isReactNative", "hasEnterState", "didHydrateOnce", "useDidHydrateOnce", "shouldEnter", "shouldEnterFromUnhydrated", "isWeb", "initialState", "defaultComponentState", "defaultComponentStateShouldEnter", "defaultComponentStateMounted", "disabled", "isDisabled", "states", "useState", "state", "forceStyle", "setState", "isHydrated", "unmounted", "isAnimated", "willHydrate", "Object", "assign", "setStateShallow", "createShallowSetState", "debug", "variants", "process", "env", "NODE_ENV", "console", "warn", "JSON", "stringify", "enterVariant", "exitVariant", "enterExitVariant", "custom", "isObj", "exv", "shouldAvoidClasses", "disableClassName", "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", "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"]
6
6
  }
@@ -31,7 +31,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
31
31
  }), mod);
32
32
  var useMedia_exports = {};
33
33
  __export(useMedia_exports, {
34
- _dmt: () => _dmt,
34
+ _disableMediaTouch: () => _disableMediaTouch,
35
35
  configureMedia: () => configureMedia,
36
36
  getMedia: () => getMedia,
37
37
  getMediaImportanceIfMoreImportant: () => getMediaImportanceIfMoreImportant,
@@ -49,8 +49,8 @@ __export(useMedia_exports, {
49
49
  useMedia: () => useMedia
50
50
  });
51
51
  module.exports = __toCommonJS(useMedia_exports);
52
- var import_react = __toESM(require("react")),
53
- import_constants = require("@tamagui/constants"),
52
+ var import_constants = require("@tamagui/constants"),
53
+ import_react = __toESM(require("react")),
54
54
  import_config = require("../config.cjs"),
55
55
  import_matchMedia = require("../helpers/matchMedia.cjs"),
56
56
  import_pseudoDescriptors = require("../helpers/pseudoDescriptors.cjs"),
@@ -96,7 +96,7 @@ const configureMedia = config => {
96
96
  for (const key in media) mediaState[key] = mediaQueryDefaultActive?.[key] || !1, mediaKeys.add(`$${key}`);
97
97
  Object.assign(mediaQueryConfig, media), initState = {
98
98
  ...mediaState
99
- }, mediaKeysOrdered = Object.keys(media), config.disableSSR ? setupMediaListeners() : updateCurrentState();
99
+ }, mediaKeysOrdered = Object.keys(media), setupMediaListeners();
100
100
  }
101
101
  };
102
102
  function unlisten() {
@@ -146,45 +146,42 @@ function subscribe(subscriber) {
146
146
  listeners.delete(subscriber);
147
147
  };
148
148
  }
149
- function useMedia(uidIn, componentContext, debug) {
150
- const uid = uidIn ?? import_react.default.useRef(),
151
- disableSSR = (0, import_useDisableSSR.getDisableSSR)(componentContext),
152
- initialState = (disableSSR || !import_constants.isWeb ? mediaState : initState) || {};
153
- let componentState = States.get(uid);
154
- componentState || (componentState = {
155
- prev: initialState
156
- }, States.set(uid, componentState));
157
- const getSnapshot = () => {
158
- if (!componentState) return initialState;
159
- const {
160
- enabled,
161
- keys,
162
- prev = initialState
163
- } = componentState;
164
- if (enabled === !1) return prev;
165
- const testKeys = keys ?? (enabled && keys) ?? null;
166
- return !testKeys || Object.keys(testKeys).every(key => mediaState[key] === prev[key]) ? prev : (componentState.prev = mediaState, mediaState);
167
- };
168
- let state;
169
- if (process.env.TAMAGUI_SYNC_MEDIA_QUERY) state = import_react.default.useSyncExternalStore(subscribe, getSnapshot, () => initialState);else {
170
- const [_state, setState] = import_react.default.useState(initialState);
171
- state = _state, (0, import_constants.useIsomorphicLayoutEffect)(() => {
172
- function update() {
173
- setState(getSnapshot);
174
- }
175
- return update(), disableSSR || Promise.resolve().then(() => {
176
- update();
177
- }), subscribe(update);
178
- }, []);
149
+ function useMedia(cc, debug) {
150
+ const initialState = (0, import_config.getSetting)("disableSSR") || (0, import_useDisableSSR.getDisableSSR)(cc) || !import_constants.isWeb ? mediaState : initState,
151
+ [state, setState] = import_react.default.useState(initialState);
152
+ let currentKeys;
153
+ const getCurrentKeys = () => currentKeys;
154
+ function getSnapshot(cur, keys = cur.lastKeys) {
155
+ if (!keys) return cur;
156
+ for (const key of keys) if (mediaState[key] !== cur[key]) return process.env.NODE_ENV === "development" && debug && console.warn("useMedia()\u270D\uFE0F", key, cur[key], ">", mediaState[key]), {
157
+ ...mediaState,
158
+ lastKeys: new Set(keys)
159
+ };
160
+ return cur;
179
161
  }
180
- return new Proxy(state, {
162
+ let isRendering = !0;
163
+ const isInitialState = state === initialState;
164
+ return (0, import_constants.useIsomorphicLayoutEffect)(() => {
165
+ isRendering = !1;
166
+ }), (0, import_constants.useIsomorphicLayoutEffect)(() => {
167
+ const update = () => setState(prev => getSnapshot(prev,
168
+ // because the !didHydrateOnce logic we can't update as we render
169
+ // we need to get the current keys in case we added
170
+ // these only ever add keys so likely ok?
171
+ getCurrentKeys()));
172
+ return update(), subscribe(update);
173
+ }, []), new Proxy(state, {
181
174
  get(_, key) {
182
- if (!disableMediaTouch) return typeof key == "string" && (componentState.keys ||= {}, componentState.keys[key] = !0, process.env.NODE_ENV === "development" && debug && console.info("useMedia() TOUCH", key)), Reflect.get(state, key);
175
+ if (isRendering && !disableMediaTouch && typeof key == "string" && (!state.lastKeys || !state.lastKeys.has(key) || state[key] !== mediaState[key]) && (process.env.NODE_ENV === "development" && debug && console.info("useMedia() TOUCH", key), currentKeys ||= /* @__PURE__ */new Set(), currentKeys.add(key), !isInitialState)) {
176
+ const next = getSnapshot(state, currentKeys);
177
+ next !== state && setState(next);
178
+ }
179
+ return Reflect.get(state, key);
183
180
  }
184
181
  });
185
182
  }
186
183
  let disableMediaTouch = !1;
187
- function _dmt(val) {
184
+ function _disableMediaTouch(val) {
188
185
  disableMediaTouch = val;
189
186
  }
190
187
  function getMediaState(mediaGroups, layout) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useMedia.tsx"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["React"]
6
6
  }
@@ -23,7 +23,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
23
23
  )), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
24
24
  var useMedia_exports = {};
25
25
  __export(useMedia_exports, {
26
- _dmt: () => _dmt,
26
+ _disableMediaTouch: () => _disableMediaTouch,
27
27
  configureMedia: () => configureMedia,
28
28
  getMedia: () => getMedia,
29
29
  getMediaImportanceIfMoreImportant: () => getMediaImportanceIfMoreImportant,
@@ -41,7 +41,7 @@ __export(useMedia_exports, {
41
41
  useMedia: () => useMedia
42
42
  });
43
43
  module.exports = __toCommonJS(useMedia_exports);
44
- var import_react = __toESM(require("react")), import_constants = require("@tamagui/constants"), import_config = require("../config"), import_matchMedia = require("../helpers/matchMedia"), import_pseudoDescriptors = require("../helpers/pseudoDescriptors"), import_useDisableSSR = require("./useDisableSSR"), mediaState = (
44
+ var import_constants = require("@tamagui/constants"), import_react = __toESM(require("react")), import_config = require("../config"), import_matchMedia = require("../helpers/matchMedia"), import_pseudoDescriptors = require("../helpers/pseudoDescriptors"), import_useDisableSSR = require("./useDisableSSR"), mediaState = (
45
45
  // development only safeguard
46
46
  process.env.NODE_ENV === "development" ? new Proxy({}, {
47
47
  get(target, key) {
@@ -73,7 +73,7 @@ var import_react = __toESM(require("react")), import_constants = require("@tamag
73
73
  mediaState[key] = (mediaQueryDefaultActive == null ? void 0 : mediaQueryDefaultActive[key]) || !1, mediaKeys.add(`$${key}`);
74
74
  Object.assign(mediaQueryConfig, media), initState = {
75
75
  ...mediaState
76
- }, mediaKeysOrdered = Object.keys(media), config.disableSSR ? setupMediaListeners() : updateCurrentState();
76
+ }, mediaKeysOrdered = Object.keys(media), setupMediaListeners();
77
77
  }
78
78
  };
79
79
  function unlisten() {
@@ -127,51 +127,66 @@ function subscribe(subscriber) {
127
127
  listeners.delete(subscriber);
128
128
  };
129
129
  }
130
- function useMedia(uidIn, componentContext, debug) {
131
- var uid = uidIn ?? import_react.default.useRef(), disableSSR = (0, import_useDisableSSR.getDisableSSR)(componentContext), initialState = (disableSSR || !import_constants.isWeb ? mediaState : initState) || {}, componentState = States.get(uid);
132
- componentState || (componentState = {
133
- prev: initialState
134
- }, States.set(uid, componentState));
135
- var getSnapshot = function() {
136
- if (!componentState)
137
- return initialState;
138
- var { enabled, keys, prev = initialState } = componentState;
139
- if (enabled === !1)
140
- return prev;
141
- var _ref, testKeys = (_ref = (keys != null || enabled) && keys) !== null && _ref !== void 0 ? _ref : null, hasntUpdated = !testKeys || Object.keys(testKeys).every(function(key) {
142
- return mediaState[key] === prev[key];
143
- });
144
- return hasntUpdated ? prev : (componentState.prev = mediaState, mediaState);
145
- }, state;
146
- if (process.env.TAMAGUI_SYNC_MEDIA_QUERY)
147
- state = import_react.default.useSyncExternalStore(subscribe, getSnapshot, function() {
148
- return initialState;
149
- });
150
- else {
151
- var [_state, setState] = import_react.default.useState(initialState);
152
- state = _state, (0, import_constants.useIsomorphicLayoutEffect)(function() {
153
- function update() {
154
- setState(getSnapshot);
130
+ function useMedia(cc, debug) {
131
+ var disableSSR = (0, import_config.getSetting)("disableSSR") || (0, import_useDisableSSR.getDisableSSR)(cc), initialState = disableSSR || !import_constants.isWeb ? mediaState : initState, [state, setState] = import_react.default.useState(initialState), currentKeys, getCurrentKeys = function() {
132
+ return currentKeys;
133
+ };
134
+ function getSnapshot(cur) {
135
+ var keys = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : cur.lastKeys;
136
+ if (!keys) return cur;
137
+ var _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
138
+ try {
139
+ for (var _iterator = keys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
140
+ var key = _step.value;
141
+ if (mediaState[key] !== cur[key])
142
+ return process.env.NODE_ENV === "development" && debug && console.warn("useMedia()\u270D\uFE0F", key, cur[key], ">", mediaState[key]), {
143
+ ...mediaState,
144
+ lastKeys: new Set(keys)
145
+ };
155
146
  }
156
- return update(), disableSSR || Promise.resolve().then(function() {
157
- update();
158
- }), subscribe(update);
159
- }, []);
147
+ } catch (err) {
148
+ _didIteratorError = !0, _iteratorError = err;
149
+ } finally {
150
+ try {
151
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
152
+ } finally {
153
+ if (_didIteratorError)
154
+ throw _iteratorError;
155
+ }
156
+ }
157
+ return cur;
160
158
  }
161
- return new Proxy(state, {
159
+ var isRendering = !0, isInitialState = state === initialState;
160
+ return (0, import_constants.useIsomorphicLayoutEffect)(function() {
161
+ isRendering = !1;
162
+ }), (0, import_constants.useIsomorphicLayoutEffect)(function() {
163
+ var update = function() {
164
+ return setState(function(prev) {
165
+ return getSnapshot(
166
+ prev,
167
+ // because the !didHydrateOnce logic we can't update as we render
168
+ // we need to get the current keys in case we added
169
+ // these only ever add keys so likely ok?
170
+ getCurrentKeys()
171
+ );
172
+ });
173
+ };
174
+ return update(), subscribe(update);
175
+ }, []), new Proxy(state, {
162
176
  get(_, key) {
163
- if (!disableMediaTouch) {
164
- if (typeof key == "string") {
165
- var _componentState;
166
- (_componentState = componentState).keys || (_componentState.keys = {}), componentState.keys[key] = !0, process.env.NODE_ENV === "development" && debug && console.info("useMedia() TOUCH", key);
177
+ if (isRendering && !disableMediaTouch && typeof key == "string") {
178
+ var needsUpdateKeys = !state.lastKeys || !state.lastKeys.has(key);
179
+ if ((needsUpdateKeys || state[key] !== mediaState[key]) && (process.env.NODE_ENV === "development" && debug && console.info("useMedia() TOUCH", key), currentKeys || (currentKeys = /* @__PURE__ */ new Set()), currentKeys.add(key), !isInitialState)) {
180
+ var next = getSnapshot(state, currentKeys);
181
+ next !== state && setState(next);
167
182
  }
168
- return Reflect.get(state, key);
169
183
  }
184
+ return Reflect.get(state, key);
170
185
  }
171
186
  });
172
187
  }
173
188
  var disableMediaTouch = !1;
174
- function _dmt(val) {
189
+ function _disableMediaTouch(val) {
175
190
  disableMediaTouch = val;
176
191
  }
177
192
  function getMediaState(mediaGroups, layout) {
@@ -224,7 +239,7 @@ function mediaKeyMatch(key, dimensions) {
224
239
  }
225
240
  // Annotate the CommonJS export names for ESM import in node:
226
241
  0 && (module.exports = {
227
- _dmt,
242
+ _disableMediaTouch,
228
243
  configureMedia,
229
244
  getMedia,
230
245
  getMediaImportanceIfMoreImportant,