@tamagui/web 3.0.18 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/dist/cjs/Tamagui.cjs +2 -1
  2. package/dist/cjs/Tamagui.native.cjs +2 -1
  3. package/dist/cjs/Tamagui.native.js +2 -1
  4. package/dist/cjs/Tamagui.native.js.map +1 -1
  5. package/dist/cjs/_withStableStyle.cjs +2 -1
  6. package/dist/cjs/_withStableStyle.native.cjs +2 -1
  7. package/dist/cjs/_withStableStyle.native.js +2 -1
  8. package/dist/cjs/_withStableStyle.native.js.map +1 -1
  9. package/dist/cjs/config.cjs +8 -7
  10. package/dist/cjs/config.native.cjs +8 -7
  11. package/dist/cjs/config.native.js +8 -7
  12. package/dist/cjs/config.native.js.map +1 -1
  13. package/dist/cjs/constants/constants.cjs +2 -1
  14. package/dist/cjs/constants/constants.native.cjs +2 -1
  15. package/dist/cjs/constants/constants.native.js +2 -1
  16. package/dist/cjs/constants/constants.native.js.map +1 -1
  17. package/dist/cjs/constants/isDevTools.cjs +2 -1
  18. package/dist/cjs/constants/isDevTools.native.cjs +2 -1
  19. package/dist/cjs/constants/isDevTools.native.js +2 -1
  20. package/dist/cjs/constants/isDevTools.native.js.map +1 -1
  21. package/dist/cjs/createComponent.cjs +40 -39
  22. package/dist/cjs/createComponent.native.cjs +40 -39
  23. package/dist/cjs/createComponent.native.js +40 -39
  24. package/dist/cjs/createComponent.native.js.map +1 -1
  25. package/dist/cjs/createTamagui.cjs +2 -1
  26. package/dist/cjs/createTamagui.native.cjs +2 -1
  27. package/dist/cjs/createTamagui.native.js +2 -1
  28. package/dist/cjs/createTamagui.native.js.map +1 -1
  29. package/dist/cjs/createTokens.cjs +2 -1
  30. package/dist/cjs/createTokens.native.cjs +2 -1
  31. package/dist/cjs/createTokens.native.js +2 -1
  32. package/dist/cjs/createTokens.native.js.map +1 -1
  33. package/dist/cjs/createVariable.cjs +2 -1
  34. package/dist/cjs/createVariable.native.cjs +2 -1
  35. package/dist/cjs/createVariable.native.js +2 -1
  36. package/dist/cjs/createVariable.native.js.map +1 -1
  37. package/dist/cjs/helpers/createDesignSystem.cjs +3 -2
  38. package/dist/cjs/helpers/createDesignSystem.native.cjs +2 -1
  39. package/dist/cjs/helpers/createDesignSystem.native.js +2 -1
  40. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
  41. package/dist/cjs/helpers/formatDiagnostic.cjs +2 -1
  42. package/dist/cjs/helpers/formatDiagnostic.native.cjs +2 -1
  43. package/dist/cjs/helpers/formatDiagnostic.native.js +2 -1
  44. package/dist/cjs/helpers/formatDiagnostic.native.js.map +1 -1
  45. package/dist/cjs/helpers/getSplitStyles.cjs +37 -36
  46. package/dist/cjs/helpers/getSplitStyles.native.cjs +40 -39
  47. package/dist/cjs/helpers/getSplitStyles.native.js +40 -39
  48. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
  49. package/dist/cjs/helpers/getThemeCSSRules.cjs +4 -3
  50. package/dist/cjs/helpers/insertStyleRule.cjs +4 -3
  51. package/dist/cjs/helpers/insertStyleRule.native.cjs +4 -3
  52. package/dist/cjs/helpers/insertStyleRule.native.js +4 -3
  53. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
  54. package/dist/cjs/helpers/log.cjs +2 -1
  55. package/dist/cjs/helpers/log.native.cjs +2 -1
  56. package/dist/cjs/helpers/log.native.js +2 -1
  57. package/dist/cjs/helpers/log.native.js.map +1 -1
  58. package/dist/cjs/helpers/matchMedia.native.cjs +3 -2
  59. package/dist/cjs/helpers/matchMedia.native.js +3 -2
  60. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  61. package/dist/cjs/helpers/noteOnce.cjs +2 -1
  62. package/dist/cjs/helpers/noteOnce.native.cjs +2 -1
  63. package/dist/cjs/helpers/noteOnce.native.js +2 -1
  64. package/dist/cjs/helpers/noteOnce.native.js.map +1 -1
  65. package/dist/cjs/helpers/resolveSafeAreaVariable.native.cjs +2 -1
  66. package/dist/cjs/helpers/resolveSafeAreaVariable.native.js +2 -1
  67. package/dist/cjs/helpers/resolveSafeAreaVariable.native.js.map +1 -1
  68. package/dist/cjs/helpers/resolveSizing.cjs +2 -1
  69. package/dist/cjs/helpers/resolveSizing.native.cjs +2 -1
  70. package/dist/cjs/helpers/resolveSizing.native.js +2 -1
  71. package/dist/cjs/helpers/resolveSizing.native.js.map +1 -1
  72. package/dist/cjs/helpers/skipProps.cjs +3 -2
  73. package/dist/cjs/helpers/skipProps.native.cjs +3 -2
  74. package/dist/cjs/helpers/skipProps.native.js +3 -2
  75. package/dist/cjs/helpers/skipProps.native.js.map +1 -1
  76. package/dist/cjs/helpers/styledDynamic.cjs +2 -1
  77. package/dist/cjs/helpers/styledDynamic.native.cjs +2 -1
  78. package/dist/cjs/helpers/styledDynamic.native.js +2 -1
  79. package/dist/cjs/helpers/styledDynamic.native.js.map +1 -1
  80. package/dist/cjs/helpers/subscribeToContextGroup.cjs +2 -1
  81. package/dist/cjs/helpers/subscribeToContextGroup.native.cjs +2 -1
  82. package/dist/cjs/helpers/subscribeToContextGroup.native.js +2 -1
  83. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
  84. package/dist/cjs/helpers/variableValue.cjs +2 -1
  85. package/dist/cjs/helpers/variableValue.native.cjs +2 -1
  86. package/dist/cjs/helpers/variableValue.native.js +2 -1
  87. package/dist/cjs/helpers/variableValue.native.js.map +1 -1
  88. package/dist/cjs/helpers/variables.cjs +5 -4
  89. package/dist/cjs/helpers/variables.native.cjs +5 -4
  90. package/dist/cjs/helpers/variables.native.js +5 -4
  91. package/dist/cjs/helpers/variables.native.js.map +1 -1
  92. package/dist/cjs/helpers/warnOnce.cjs +4 -3
  93. package/dist/cjs/helpers/warnOnce.native.cjs +4 -3
  94. package/dist/cjs/helpers/warnOnce.native.js +4 -3
  95. package/dist/cjs/helpers/warnOnce.native.js.map +1 -1
  96. package/dist/cjs/hooks/getThemeProxied.cjs +2 -1
  97. package/dist/cjs/hooks/getThemeProxied.native.cjs +5 -4
  98. package/dist/cjs/hooks/getThemeProxied.native.js +5 -4
  99. package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
  100. package/dist/cjs/hooks/useAnimationDriver.cjs +3 -2
  101. package/dist/cjs/hooks/useAnimationDriver.native.cjs +3 -2
  102. package/dist/cjs/hooks/useAnimationDriver.native.js +3 -2
  103. package/dist/cjs/hooks/useAnimationDriver.native.js.map +1 -1
  104. package/dist/cjs/hooks/useMedia.cjs +3 -2
  105. package/dist/cjs/hooks/useMedia.native.cjs +3 -2
  106. package/dist/cjs/hooks/useMedia.native.js +3 -2
  107. package/dist/cjs/hooks/useMedia.native.js.map +1 -1
  108. package/dist/cjs/hooks/useTheme.cjs +2 -1
  109. package/dist/cjs/hooks/useTheme.native.cjs +2 -1
  110. package/dist/cjs/hooks/useTheme.native.js +2 -1
  111. package/dist/cjs/hooks/useTheme.native.js.map +1 -1
  112. package/dist/cjs/hooks/useThemeState.cjs +2 -1
  113. package/dist/cjs/hooks/useThemeState.native.cjs +2 -1
  114. package/dist/cjs/hooks/useThemeState.native.js +2 -1
  115. package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
  116. package/dist/cjs/style.cjs +2 -1
  117. package/dist/cjs/style.native.cjs +2 -1
  118. package/dist/cjs/style.native.js +2 -1
  119. package/dist/cjs/style.native.js.map +1 -1
  120. package/dist/cjs/styled.cjs +3 -2
  121. package/dist/cjs/styled.native.cjs +2 -1
  122. package/dist/cjs/styled.native.js +2 -1
  123. package/dist/cjs/styled.native.js.map +1 -1
  124. package/dist/cjs/views/TamaguiProvider.cjs +2 -1
  125. package/dist/cjs/views/TamaguiProvider.native.cjs +2 -1
  126. package/dist/cjs/views/TamaguiProvider.native.js +2 -1
  127. package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
  128. package/dist/cjs/views/Theme.cjs +5 -4
  129. package/dist/cjs/views/Theme.native.cjs +5 -4
  130. package/dist/cjs/views/Theme.native.js +5 -4
  131. package/dist/cjs/views/Theme.native.js.map +1 -1
  132. package/dist/cjs/views/ThemeDebug.cjs +3 -2
  133. package/dist/esm/Tamagui.mjs +2 -1
  134. package/dist/esm/Tamagui.mjs.map +1 -1
  135. package/dist/esm/Tamagui.native.js +2 -1
  136. package/dist/esm/Tamagui.native.js.map +1 -1
  137. package/dist/esm/_withStableStyle.mjs +2 -1
  138. package/dist/esm/_withStableStyle.mjs.map +1 -1
  139. package/dist/esm/_withStableStyle.native.js +2 -1
  140. package/dist/esm/_withStableStyle.native.js.map +1 -1
  141. package/dist/esm/config.mjs +8 -7
  142. package/dist/esm/config.mjs.map +1 -1
  143. package/dist/esm/config.native.js +8 -7
  144. package/dist/esm/config.native.js.map +1 -1
  145. package/dist/esm/constants/constants.mjs +2 -1
  146. package/dist/esm/constants/constants.mjs.map +1 -1
  147. package/dist/esm/constants/constants.native.js +2 -1
  148. package/dist/esm/constants/constants.native.js.map +1 -1
  149. package/dist/esm/constants/isDevTools.mjs +2 -1
  150. package/dist/esm/constants/isDevTools.mjs.map +1 -1
  151. package/dist/esm/constants/isDevTools.native.js +2 -1
  152. package/dist/esm/constants/isDevTools.native.js.map +1 -1
  153. package/dist/esm/createComponent.mjs +40 -39
  154. package/dist/esm/createComponent.mjs.map +1 -1
  155. package/dist/esm/createComponent.native.js +40 -39
  156. package/dist/esm/createComponent.native.js.map +1 -1
  157. package/dist/esm/createTamagui.mjs +2 -1
  158. package/dist/esm/createTamagui.mjs.map +1 -1
  159. package/dist/esm/createTamagui.native.js +2 -1
  160. package/dist/esm/createTamagui.native.js.map +1 -1
  161. package/dist/esm/createTokens.mjs +2 -1
  162. package/dist/esm/createTokens.mjs.map +1 -1
  163. package/dist/esm/createTokens.native.js +2 -1
  164. package/dist/esm/createTokens.native.js.map +1 -1
  165. package/dist/esm/createVariable.mjs +2 -1
  166. package/dist/esm/createVariable.mjs.map +1 -1
  167. package/dist/esm/createVariable.native.js +2 -1
  168. package/dist/esm/createVariable.native.js.map +1 -1
  169. package/dist/esm/helpers/createDesignSystem.mjs +3 -2
  170. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
  171. package/dist/esm/helpers/createDesignSystem.native.js +2 -1
  172. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
  173. package/dist/esm/helpers/formatDiagnostic.mjs +2 -1
  174. package/dist/esm/helpers/formatDiagnostic.mjs.map +1 -1
  175. package/dist/esm/helpers/formatDiagnostic.native.js +2 -1
  176. package/dist/esm/helpers/formatDiagnostic.native.js.map +1 -1
  177. package/dist/esm/helpers/getSplitStyles.mjs +37 -36
  178. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  179. package/dist/esm/helpers/getSplitStyles.native.js +40 -39
  180. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
  181. package/dist/esm/helpers/getThemeCSSRules.mjs +4 -3
  182. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
  183. package/dist/esm/helpers/insertStyleRule.mjs +4 -3
  184. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
  185. package/dist/esm/helpers/insertStyleRule.native.js +4 -3
  186. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
  187. package/dist/esm/helpers/log.mjs +2 -1
  188. package/dist/esm/helpers/log.mjs.map +1 -1
  189. package/dist/esm/helpers/log.native.js +2 -1
  190. package/dist/esm/helpers/log.native.js.map +1 -1
  191. package/dist/esm/helpers/matchMedia.native.js +3 -2
  192. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  193. package/dist/esm/helpers/noteOnce.mjs +2 -1
  194. package/dist/esm/helpers/noteOnce.mjs.map +1 -1
  195. package/dist/esm/helpers/noteOnce.native.js +2 -1
  196. package/dist/esm/helpers/noteOnce.native.js.map +1 -1
  197. package/dist/esm/helpers/resolveSafeAreaVariable.native.js +2 -1
  198. package/dist/esm/helpers/resolveSafeAreaVariable.native.js.map +1 -1
  199. package/dist/esm/helpers/resolveSizing.mjs +2 -1
  200. package/dist/esm/helpers/resolveSizing.mjs.map +1 -1
  201. package/dist/esm/helpers/resolveSizing.native.js +2 -1
  202. package/dist/esm/helpers/resolveSizing.native.js.map +1 -1
  203. package/dist/esm/helpers/skipProps.mjs +3 -2
  204. package/dist/esm/helpers/skipProps.mjs.map +1 -1
  205. package/dist/esm/helpers/skipProps.native.js +3 -2
  206. package/dist/esm/helpers/skipProps.native.js.map +1 -1
  207. package/dist/esm/helpers/styledDynamic.mjs +2 -1
  208. package/dist/esm/helpers/styledDynamic.mjs.map +1 -1
  209. package/dist/esm/helpers/styledDynamic.native.js +2 -1
  210. package/dist/esm/helpers/styledDynamic.native.js.map +1 -1
  211. package/dist/esm/helpers/subscribeToContextGroup.mjs +2 -1
  212. package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
  213. package/dist/esm/helpers/subscribeToContextGroup.native.js +2 -1
  214. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
  215. package/dist/esm/helpers/variableValue.mjs +2 -1
  216. package/dist/esm/helpers/variableValue.mjs.map +1 -1
  217. package/dist/esm/helpers/variableValue.native.js +2 -1
  218. package/dist/esm/helpers/variableValue.native.js.map +1 -1
  219. package/dist/esm/helpers/variables.mjs +5 -4
  220. package/dist/esm/helpers/variables.mjs.map +1 -1
  221. package/dist/esm/helpers/variables.native.js +5 -4
  222. package/dist/esm/helpers/variables.native.js.map +1 -1
  223. package/dist/esm/helpers/warnOnce.mjs +4 -3
  224. package/dist/esm/helpers/warnOnce.mjs.map +1 -1
  225. package/dist/esm/helpers/warnOnce.native.js +4 -3
  226. package/dist/esm/helpers/warnOnce.native.js.map +1 -1
  227. package/dist/esm/hooks/getThemeProxied.mjs +2 -1
  228. package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
  229. package/dist/esm/hooks/getThemeProxied.native.js +5 -4
  230. package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
  231. package/dist/esm/hooks/useAnimationDriver.mjs +3 -2
  232. package/dist/esm/hooks/useAnimationDriver.mjs.map +1 -1
  233. package/dist/esm/hooks/useAnimationDriver.native.js +3 -2
  234. package/dist/esm/hooks/useAnimationDriver.native.js.map +1 -1
  235. package/dist/esm/hooks/useMedia.mjs +3 -2
  236. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  237. package/dist/esm/hooks/useMedia.native.js +3 -2
  238. package/dist/esm/hooks/useMedia.native.js.map +1 -1
  239. package/dist/esm/hooks/useTheme.mjs +2 -1
  240. package/dist/esm/hooks/useTheme.mjs.map +1 -1
  241. package/dist/esm/hooks/useTheme.native.js +2 -1
  242. package/dist/esm/hooks/useTheme.native.js.map +1 -1
  243. package/dist/esm/hooks/useThemeState.mjs +2 -1
  244. package/dist/esm/hooks/useThemeState.mjs.map +1 -1
  245. package/dist/esm/hooks/useThemeState.native.js +2 -1
  246. package/dist/esm/hooks/useThemeState.native.js.map +1 -1
  247. package/dist/esm/style.mjs +2 -1
  248. package/dist/esm/style.mjs.map +1 -1
  249. package/dist/esm/style.native.js +2 -1
  250. package/dist/esm/style.native.js.map +1 -1
  251. package/dist/esm/styled.mjs +3 -2
  252. package/dist/esm/styled.mjs.map +1 -1
  253. package/dist/esm/styled.native.js +2 -1
  254. package/dist/esm/styled.native.js.map +1 -1
  255. package/dist/esm/views/TamaguiProvider.mjs +2 -1
  256. package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
  257. package/dist/esm/views/TamaguiProvider.native.js +2 -1
  258. package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
  259. package/dist/esm/views/Theme.mjs +5 -4
  260. package/dist/esm/views/Theme.mjs.map +1 -1
  261. package/dist/esm/views/Theme.native.js +5 -4
  262. package/dist/esm/views/Theme.native.js.map +1 -1
  263. package/dist/esm/views/ThemeDebug.mjs +3 -2
  264. package/dist/esm/views/ThemeDebug.mjs.map +1 -1
  265. package/package.json +20 -20
  266. package/src/Tamagui.ts +3 -1
  267. package/src/_withStableStyle.tsx +3 -1
  268. package/src/config.ts +9 -6
  269. package/src/constants/constants.ts +3 -1
  270. package/src/constants/isDevTools.ts +2 -1
  271. package/src/createComponent.tsx +61 -42
  272. package/src/createTamagui.ts +3 -1
  273. package/src/createTokens.ts +3 -1
  274. package/src/createVariable.ts +3 -1
  275. package/src/helpers/createDesignSystem.ts +4 -2
  276. package/src/helpers/formatDiagnostic.ts +2 -1
  277. package/src/helpers/getSplitStyles.tsx +56 -29
  278. package/src/helpers/getThemeCSSRules.ts +5 -3
  279. package/src/helpers/insertStyleRule.tsx +5 -3
  280. package/src/helpers/log.ts +3 -1
  281. package/src/helpers/matchMedia.native.ts +4 -2
  282. package/src/helpers/noteOnce.ts +2 -1
  283. package/src/helpers/resolveSafeAreaVariable.native.ts +3 -1
  284. package/src/helpers/resolveSizing.ts +3 -1
  285. package/src/helpers/skipProps.ts +4 -2
  286. package/src/helpers/styledDynamic.ts +3 -1
  287. package/src/helpers/subscribeToContextGroup.tsx +3 -1
  288. package/src/helpers/variableValue.ts +3 -1
  289. package/src/helpers/variables.ts +6 -4
  290. package/src/helpers/warnOnce.ts +4 -3
  291. package/src/hooks/getThemeProxied.ts +14 -4
  292. package/src/hooks/useAnimationDriver.ts +4 -2
  293. package/src/hooks/useMedia.tsx +4 -2
  294. package/src/hooks/useTheme.tsx +3 -1
  295. package/src/hooks/useThemeState.ts +3 -1
  296. package/src/index.ts +1 -0
  297. package/src/style.ts +3 -1
  298. package/src/styled.tsx +14 -26
  299. package/src/views/TamaguiProvider.tsx +4 -1
  300. package/src/views/Theme.tsx +6 -4
  301. package/src/views/ThemeDebug.tsx +8 -2
  302. package/types/Tamagui.d.ts.map +1 -1
  303. package/types/_withStableStyle.d.ts.map +1 -1
  304. package/types/config.d.ts.map +1 -1
  305. package/types/constants/constants.d.ts.map +1 -1
  306. package/types/constants/isDevTools.d.ts.map +1 -1
  307. package/types/createComponent.d.ts.map +1 -1
  308. package/types/createTamagui.d.ts.map +1 -1
  309. package/types/createTokens.d.ts.map +1 -1
  310. package/types/createVariable.d.ts.map +1 -1
  311. package/types/helpers/createDesignSystem.d.ts.map +1 -1
  312. package/types/helpers/formatDiagnostic.d.ts.map +1 -1
  313. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  314. package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
  315. package/types/helpers/insertStyleRule.d.ts.map +1 -1
  316. package/types/helpers/log.d.ts.map +1 -1
  317. package/types/helpers/matchMedia.native.d.ts.map +1 -1
  318. package/types/helpers/noteOnce.d.ts.map +1 -1
  319. package/types/helpers/resolveSafeAreaVariable.native.d.ts.map +1 -1
  320. package/types/helpers/resolveSizing.d.ts.map +1 -1
  321. package/types/helpers/skipProps.d.ts.map +1 -1
  322. package/types/helpers/styledDynamic.d.ts.map +1 -1
  323. package/types/helpers/subscribeToContextGroup.d.ts.map +1 -1
  324. package/types/helpers/variableValue.d.ts.map +1 -1
  325. package/types/helpers/variables.d.ts.map +1 -1
  326. package/types/helpers/warnOnce.d.ts.map +1 -1
  327. package/types/hooks/getThemeProxied.d.ts.map +1 -1
  328. package/types/hooks/useAnimationDriver.d.ts.map +1 -1
  329. package/types/hooks/useMedia.d.ts.map +1 -1
  330. package/types/hooks/useTheme.d.ts.map +1 -1
  331. package/types/hooks/useThemeState.d.ts.map +1 -1
  332. package/types/index.d.ts +1 -1
  333. package/types/index.d.ts.map +1 -1
  334. package/types/style.d.ts.map +1 -1
  335. package/types/styled.d.ts +1 -2
  336. package/types/styled.d.ts.map +1 -1
  337. package/types/views/TamaguiProvider.d.ts.map +1 -1
  338. package/types/views/Theme.d.ts.map +1 -1
  339. package/types/views/ThemeDebug.d.ts.map +1 -1
package/src/config.ts CHANGED
@@ -12,13 +12,15 @@ import type {
12
12
  import { formatDiagnostic } from './helpers/formatDiagnostic'
13
13
  import { prepareConfigRevision } from './helpers/grammarConfig'
14
14
 
15
+ const isProd = process.env.NODE_ENV === 'production'
16
+
15
17
  export type StyleCompat = 'legacy' | 'react-native' | 'web'
16
18
 
17
19
  let conf: TamaguiInternalConfig | null
18
20
  let setConfigCalledByThisInstance = false
19
21
 
20
22
  const haventCalledErrorMessage =
21
- process.env.NODE_ENV === 'development'
23
+ !isProd && process.env.NODE_ENV === 'development'
22
24
  ? `
23
25
  Haven't called createTamagui yet. ${MISSING_THEME_MESSAGE}
24
26
  `
@@ -36,6 +38,7 @@ const getConfigFromGlobalOrLocal = (): TamaguiInternalConfig | null => {
36
38
  // defer warning - if createTamagui runs in THIS instance, it's HMR (safe)
37
39
  // if it never runs, it's a true duplicate (warn)
38
40
  if (
41
+ !isProd &&
39
42
  process.env.NODE_ENV === 'development' &&
40
43
  globalThis.__tamaguiEvaluationConfig !== globalThis.__tamaguiConfig &&
41
44
  !globalThis.__tamaguiHasWarnedGlobalFallback &&
@@ -69,7 +72,7 @@ export const getSetting = <Key extends keyof GenericTamaguiSettings>(
69
72
  key: Key
70
73
  ): GenericTamaguiSettings[Key] => {
71
74
  const config = getConfigFromGlobalOrLocal()
72
- if (process.env.NODE_ENV === 'development') {
75
+ if (!isProd && process.env.NODE_ENV === 'development') {
73
76
  if (!config) throw new Error(haventCalledErrorMessage)
74
77
  }
75
78
  return config!.settings[key]
@@ -95,7 +98,7 @@ export const setConfig = (next: TamaguiInternalConfig) => {
95
98
 
96
99
  export const setConfigFont = (name: string, font: any, fontParsed: any) => {
97
100
  const config = getConfigFromGlobalOrLocal()
98
- if (process.env.NODE_ENV === 'development') {
101
+ if (!isProd && process.env.NODE_ENV === 'development') {
99
102
  if (!config) throw new Error(haventCalledErrorMessage)
100
103
  }
101
104
  config!.fonts[name] = font
@@ -136,7 +139,7 @@ const getTokensParsed = (): TokensParsed =>
136
139
  getConfigFromGlobalOrLocal()?.tokensParsed ?? tokens
137
140
 
138
141
  export const getTokens = (): TokensParsed => {
139
- if (process.env.NODE_ENV === 'development') {
142
+ if (!isProd && process.env.NODE_ENV === 'development') {
140
143
  if (!getConfigFromGlobalOrLocal()) throw new Error(haventCalledErrorMessage)
141
144
  }
142
145
  return getTokensParsed()
@@ -199,7 +202,7 @@ type DevConfig = {
199
202
  export let devConfig: DevConfig | undefined
200
203
 
201
204
  export function setupDev(conf: DevConfig) {
202
- if (process.env.NODE_ENV === 'development') {
205
+ if (!isProd && process.env.NODE_ENV === 'development') {
203
206
  devConfig = conf
204
207
  }
205
208
  }
@@ -220,7 +223,7 @@ export function setupDev(conf: DevConfig) {
220
223
  export function loadAnimationDriver(name: string, driver: AnimationDriver) {
221
224
  const config = getConfigFromGlobalOrLocal()
222
225
  if (!config) {
223
- if (process.env.NODE_ENV === 'development') {
226
+ if (!isProd && process.env.NODE_ENV === 'development') {
224
227
  console.warn('loadAnimationDriver called before createTamagui')
225
228
  }
226
229
  return
@@ -1,11 +1,13 @@
1
1
  import type { StackStyle } from '../types'
2
2
 
3
+ const isProd = process.env.NODE_ENV === 'production'
4
+
3
5
  export const THEME_NAME_SEPARATOR = '_'
4
6
  export const THEME_CLASSNAME_PREFIX = 't_'
5
7
  export const FONT_DATA_ATTRIBUTE_NAME = 'data-tamagui-font'
6
8
 
7
9
  export const MISSING_THEME_MESSAGE =
8
- process.env.NODE_ENV === 'development'
10
+ !isProd && process.env.NODE_ENV === 'development'
9
11
  ? `Can't find Tamagui configuration.
10
12
 
11
13
  Most of the time this is due to having mis-matched versions of Tamagui dependencies, or bundlers somehow duplicating them.
@@ -1,7 +1,8 @@
1
+ const isProd = process.env.NODE_ENV === 'production'
1
2
  // for verbose logging outside node/cli
2
3
 
3
4
  export const isDevTools = (() => {
4
- if (process.env.NODE_ENV === 'development') {
5
+ if (!isProd && process.env.NODE_ENV === 'development') {
5
6
  try {
6
7
  return new Function('try {return this===window;}catch(e){ return false;}')()
7
8
  } catch {
@@ -75,6 +75,9 @@ import { Slot } from './views/Slot'
75
75
  import { getThemedChildren } from './views/Theme'
76
76
  import type { ViewProps } from './views/View'
77
77
 
78
+ // cache production mode for node; retain inline checks for client dead-code removal.
79
+ const isProd = process.env.NODE_ENV === 'production'
80
+
78
81
  /**
79
82
  * All things that need one-time setup after createTamagui is called
80
83
  */
@@ -146,7 +149,7 @@ if (process.env.TAMAGUI_TARGET !== 'native' && typeof window !== 'undefined') {
146
149
  addEventListener('touchcancel', cancelTouches)
147
150
 
148
151
  // hold option to see debug visualization
149
- if (process.env.NODE_ENV === 'development') {
152
+ if (!isProd && process.env.NODE_ENV === 'development') {
150
153
  startVisualizer = () => {
151
154
  const devVisualizerConfig = devConfig?.visualizer
152
155
 
@@ -266,7 +269,7 @@ export function createComponent<
266
269
  // a const, a config read) makes it unfoldable.
267
270
  if (process.env.TAMAGUI_RUNTIME === 'zero') {
268
271
  throw new Error(
269
- process.env.NODE_ENV !== 'production'
272
+ !isProd && process.env.NODE_ENV !== 'production'
270
273
  ? `[tamagui zero-runtime] createComponent ran in a zero-runtime graph. No Tamagui component renderer ships in this mode, so a component reference survived compilation. Fix the site or move the owning module to a declared full-runtime island.`
271
274
  : '❌ Error 010'
272
275
  )
@@ -332,9 +335,10 @@ export function createComponent<
332
335
  const styleStaticConfig = resolvedStyleStaticConfig!
333
336
  const styledContextKeys = styleStaticConfig.styledContextKeys
334
337
 
335
- const internalID = process.env.NODE_ENV === 'development' ? React.useId() : ''
338
+ const internalID =
339
+ !isProd && process.env.NODE_ENV === 'development' ? React.useId() : ''
336
340
 
337
- if (process.env.NODE_ENV === 'development') {
341
+ if (!isProd && process.env.NODE_ENV === 'development') {
338
342
  if (startVisualizer) {
339
343
  startVisualizer()
340
344
  startVisualizer = undefined
@@ -354,7 +358,7 @@ export function createComponent<
354
358
  }
355
359
 
356
360
  // test only
357
- if (process.env.NODE_ENV === 'test') {
361
+ if (!isProd && process.env.NODE_ENV === 'test') {
358
362
  const testRenderCount = propsIn['data-test-renders']
359
363
  if (
360
364
  testRenderCount &&
@@ -393,10 +397,16 @@ export function createComponent<
393
397
  : false
394
398
 
395
399
  // pick up globalThis.time if set externally (e.g. by a profiling harness)
396
- if (process.env.NODE_ENV === 'development' && !time && (globalThis as any).time) {
400
+ if (
401
+ !isProd &&
402
+ process.env.NODE_ENV === 'development' &&
403
+ !time &&
404
+ (globalThis as any).time
405
+ ) {
397
406
  time = (globalThis as any).time
398
407
  }
399
- if (process.env.NODE_ENV === 'development' && time) time`non-tamagui time (ignore)`
408
+ if (!isProd && process.env.NODE_ENV === 'development' && time)
409
+ time`non-tamagui time (ignore)`
400
410
 
401
411
  // React inserts default props after your props for some reason...
402
412
  // order important so we do loops, you can't just spread because JS does weird things
@@ -413,7 +423,7 @@ export function createComponent<
413
423
  props = nextProps as ViewProps | TextProps
414
424
  overriddenContextProps = overrides
415
425
 
416
- if (process.env.NODE_ENV === 'development' && isClient) {
426
+ if (!isProd && process.env.NODE_ENV === 'development' && isClient) {
417
427
  React.useEffect(() => {
418
428
  let node: HTMLElement | undefined
419
429
  let overlay: HTMLSpanElement | null = null
@@ -606,7 +616,7 @@ export function createComponent<
606
616
  // but still stores the current state and applies if it it needs to during render
607
617
  let setStateShallow = componentState.setStateShallow
608
618
 
609
- if (process.env.NODE_ENV === 'development' && time) time`use-state`
619
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`use-state`
610
620
 
611
621
  // web-only - string-style not valid for native
612
622
  const renderProp = props.render
@@ -646,15 +656,16 @@ export function createComponent<
646
656
  : props['data-disable-theme'] && !('theme' in props)
647
657
 
648
658
  // a styled HOC leaves theming to the component it wraps and hands it the
649
- // theme prop. on native the HOC's own styles resolve to values here, before
650
- // that, so an HOC given a theme themes itself and the wrapped component
651
- // inherits it instead of applying it a second time. keyed on presence, like
652
- // disableThemeProp, so hook order never changes across renders
659
+ // theme prop. on native the HOC's own styles resolve to values here, so it
660
+ // keeps a theme state that follows theme changes, and an HOC given a theme
661
+ // themes itself and the wrapped component inherits it instead of applying
662
+ // it a second time
653
663
  const hocThemesSelf =
654
664
  process.env.TAMAGUI_TARGET === 'native' && isHOC && 'theme' in props
655
- const disableTheme = disableThemeProp || (isHOC && !hocThemesSelf)
665
+ const disableTheme =
666
+ disableThemeProp || (isHOC && process.env.TAMAGUI_TARGET !== 'native')
656
667
 
657
- if (process.env.NODE_ENV === 'development' && time) time`theme-props`
668
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`theme-props`
658
669
 
659
670
  const themeStateProps: UseThemeWithStateProps = {
660
671
  disable: disableTheme,
@@ -684,7 +695,7 @@ export function createComponent<
684
695
  stateRef.current.nativeStyleUpdate?.(next) ?? false
685
696
  }
686
697
 
687
- if (process.env.NODE_ENV === 'development') {
698
+ if (!isProd && process.env.NODE_ENV === 'development') {
688
699
  if (debugProp && debugProp !== 'profile') {
689
700
  const name = `${
690
701
  displayName ||
@@ -744,11 +755,11 @@ export function createComponent<
744
755
  }
745
756
  }
746
757
 
747
- if (process.env.NODE_ENV === 'development' && time) time`pre-theme-media`
758
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`pre-theme-media`
748
759
 
749
760
  const [theme, themeState] = useThemeWithState(themeStateProps)
750
761
 
751
- if (process.env.NODE_ENV === 'development' && time) time`theme`
762
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`theme`
752
763
 
753
764
  // don't replace the animated driver component (set above) with the base element,
754
765
  // the render string is forwarded to it via viewProps.render instead
@@ -763,7 +774,7 @@ export function createComponent<
763
774
 
764
775
  setDidGetVariableValue(false)
765
776
 
766
- if (process.env.NODE_ENV === 'development' && time) time`media`
777
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`media`
767
778
 
768
779
  const resolveValues =
769
780
  // if HOC + mounted + has animation prop, resolve as value so it passes non-variable to child
@@ -787,7 +798,8 @@ export function createComponent<
787
798
 
788
799
  const themeName = themeState?.name || ''
789
800
 
790
- if (process.env.NODE_ENV === 'development' && time) time`split-styles-prepare`
801
+ if (!isProd && process.env.NODE_ENV === 'development' && time)
802
+ time`split-styles-prepare`
791
803
 
792
804
  const splitStyles = useSplitStyles(
793
805
  props,
@@ -1240,6 +1252,7 @@ export function createComponent<
1240
1252
 
1241
1253
  if (canAvoidReRender) {
1242
1254
  if (
1255
+ !isProd &&
1243
1256
  process.env.NODE_ENV === 'development' &&
1244
1257
  debugProp &&
1245
1258
  debugProp !== 'profile'
@@ -1256,6 +1269,7 @@ export function createComponent<
1256
1269
  stateRef.current.updateStyleListener?.()
1257
1270
  } else {
1258
1271
  if (
1272
+ !isProd &&
1259
1273
  process.env.NODE_ENV === 'development' &&
1260
1274
  debugProp &&
1261
1275
  debugProp !== 'profile'
@@ -1272,7 +1286,7 @@ export function createComponent<
1272
1286
  }
1273
1287
  }
1274
1288
 
1275
- if (process.env.NODE_ENV === 'development' && time) time`split-styles`
1289
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`split-styles`
1276
1290
 
1277
1291
  // hide strategy will set this opacity = 0 until measured
1278
1292
  if (splitStyles) {
@@ -1297,7 +1311,7 @@ export function createComponent<
1297
1311
  const mediaListeningKeys = hasRuntimeMediaKeys
1298
1312
  ? (splitStyles.hasMedia as Set<string>)
1299
1313
  : null
1300
- if (process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
1314
+ if (!isProd && process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
1301
1315
  console.info(`useMedia() createComponent`, shouldListenForMedia, mediaListeningKeys)
1302
1316
  }
1303
1317
 
@@ -1463,20 +1477,25 @@ export function createComponent<
1463
1477
  }
1464
1478
  }
1465
1479
 
1466
- if (process.env.NODE_ENV === 'development' && time) time`animations`
1480
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`animations`
1467
1481
  }
1468
1482
 
1469
1483
  if (isWeb && isExiting) {
1470
1484
  viewProps.className = `t_exiting ${viewProps.className || ''}`
1471
1485
  }
1472
1486
 
1473
- if (process.env.NODE_ENV === 'development' && props.untilMeasured && !isContainer) {
1487
+ if (
1488
+ !isProd &&
1489
+ process.env.NODE_ENV === 'development' &&
1490
+ props.untilMeasured &&
1491
+ !isContainer
1492
+ ) {
1474
1493
  console.warn(
1475
1494
  `You set untilMeasured without establishing a container. Set it on the parent with container or container="name", not on the child using a container clause.`
1476
1495
  )
1477
1496
  }
1478
1497
 
1479
- if (process.env.NODE_ENV === 'development' && time) time`destructure`
1498
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`destructure`
1480
1499
 
1481
1500
  if (
1482
1501
  !isPassthrough &&
@@ -1565,7 +1584,7 @@ export function createComponent<
1565
1584
  // handle pointer events (native: maps to touch events, web: no-op)
1566
1585
  usePointerEvents(props, viewProps)
1567
1586
 
1568
- if (process.env.NODE_ENV === 'development') {
1587
+ if (!isProd && process.env.NODE_ENV === 'development') {
1569
1588
  if (!isText && isWeb && !isHOC) {
1570
1589
  React.Children.toArray(props.children).forEach((item) => {
1571
1590
  // allow newlines because why not its annoying with mdx
@@ -1579,13 +1598,13 @@ export function createComponent<
1579
1598
  }
1580
1599
  }
1581
1600
 
1582
- if (process.env.NODE_ENV === 'development' && time) time`events-hooks`
1601
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`events-hooks`
1583
1602
 
1584
1603
  const unPress = () => {
1585
1604
  setStateShallow({ press: false, pressIn: false })
1586
1605
  }
1587
1606
 
1588
- if (process.env.NODE_ENV === 'development' && isWeb) {
1607
+ if (!isProd && process.env.NODE_ENV === 'development' && isWeb) {
1589
1608
  useIsomorphicLayoutEffect(() => {
1590
1609
  if (debugProp === 'verbose') {
1591
1610
  function cssStyleDeclarationToObject(style: CSSStyleDeclaration) {
@@ -1754,9 +1773,9 @@ export function createComponent<
1754
1773
 
1755
1774
  const needsPressState = Boolean(hasDynamicGroupChildren || runtimePressStyle)
1756
1775
 
1757
- if (process.env.NODE_ENV === 'development' && time) time`events-setup`
1776
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`events-setup`
1758
1777
 
1759
- if (process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
1778
+ if (!isProd && process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
1760
1779
  log(`🪩 events()`, {
1761
1780
  runtimeFocusStyle,
1762
1781
  runtimePressStyle,
@@ -1920,9 +1939,9 @@ export function createComponent<
1920
1939
  Object.assign(viewProps, getWebEvents(events))
1921
1940
  }
1922
1941
 
1923
- if (process.env.NODE_ENV === 'development' && time) time`events`
1942
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`events`
1924
1943
 
1925
- if (process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
1944
+ if (!isProd && process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
1926
1945
  log(`events`, { events, attachHover, attachPress })
1927
1946
  }
1928
1947
 
@@ -1960,7 +1979,7 @@ export function createComponent<
1960
1979
  )
1961
1980
  }
1962
1981
 
1963
- if (process.env.NODE_ENV === 'development' && time) time`hooks`
1982
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`hooks`
1964
1983
 
1965
1984
  if (asChild && !isHOC) {
1966
1985
  elementType = Slot
@@ -1988,7 +2007,7 @@ export function createComponent<
1988
2007
  }
1989
2008
  }
1990
2009
 
1991
- if (process.env.NODE_ENV === 'development' && time) time`spaced-as-child`
2010
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`spaced-as-child`
1992
2011
 
1993
2012
  let content: ReactNode | undefined
1994
2013
 
@@ -2078,7 +2097,7 @@ export function createComponent<
2078
2097
  }
2079
2098
  }
2080
2099
 
2081
- if (process.env.NODE_ENV === 'development' && time) time`use-children`
2100
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`use-children`
2082
2101
  }
2083
2102
 
2084
2103
  // wrap with GestureDetector for RNGH press handling (native only, no-op on web)
@@ -2121,7 +2140,7 @@ export function createComponent<
2121
2140
  content = <ResetPresence disabled={!needsReset}>{content}</ResetPresence>
2122
2141
  }
2123
2142
 
2124
- if (process.env.NODE_ENV === 'development' && time) time`create-element`
2143
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`create-element`
2125
2144
 
2126
2145
  if (process.env.TAMAGUI_TARGET === 'web' && conditionalStates?.has('focus-within')) {
2127
2146
  content = (
@@ -2188,14 +2207,14 @@ export function createComponent<
2188
2207
  )
2189
2208
  }
2190
2209
 
2191
- if (process.env.NODE_ENV === 'development' && time) time`group-context`
2210
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`group-context`
2192
2211
 
2193
2212
  content =
2194
2213
  disableTheme || !splitStyles
2195
2214
  ? content
2196
2215
  : getThemedChildren(themeState, content, themeStateProps, false, stateRef)
2197
2216
 
2198
- if (process.env.NODE_ENV === 'development' && time) time`themed-children`
2217
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`themed-children`
2199
2218
 
2200
2219
  if (overriddenContextProps && contextForOverride) {
2201
2220
  const Provider = contextForOverride.Provider!
@@ -2214,7 +2233,7 @@ export function createComponent<
2214
2233
  )
2215
2234
  }
2216
2235
 
2217
- if (process.env.NODE_ENV === 'development' && time) time`context-override`
2236
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`context-override`
2218
2237
 
2219
2238
  // SSR style support - for non compiled styles we render them inline until client takes over
2220
2239
  // on client we then switch over to our global sheet insert, because rendering inline is expensive
@@ -2233,9 +2252,9 @@ export function createComponent<
2233
2252
  )
2234
2253
  }
2235
2254
 
2236
- if (process.env.NODE_ENV === 'development' && time) time`style-tags`
2255
+ if (!isProd && process.env.NODE_ENV === 'development' && time) time`style-tags`
2237
2256
 
2238
- if (process.env.NODE_ENV === 'development') {
2257
+ if (!isProd && process.env.NODE_ENV === 'development') {
2239
2258
  if (debugProp && debugProp !== 'profile') {
2240
2259
  const element = typeof elementType === 'string' ? elementType : 'Component'
2241
2260
  const title = `render <${element} /> (${internalID}) with props`
@@ -2292,7 +2311,7 @@ export function createComponent<
2292
2311
  }
2293
2312
  }
2294
2313
 
2295
- if (process.env.NODE_ENV === 'development' && time) {
2314
+ if (!isProd && process.env.NODE_ENV === 'development' && time) {
2296
2315
  time`rest`
2297
2316
  if (!globalThis['willPrint']) {
2298
2317
  globalThis['willPrint'] = true
@@ -38,6 +38,8 @@ import type {
38
38
  Variable,
39
39
  } from './types'
40
40
 
41
+ const isProd = process.env.NODE_ENV === 'production'
42
+
41
43
  /**
42
44
  * Determines if a token category should have px units added.
43
45
  * Following the principle: only add px to predefined categories that need them.
@@ -315,7 +317,7 @@ export function createTamagui<Conf extends CreateTamaguiProps>(
315
317
 
316
318
  initializeTamaguiConfig(config)
317
319
 
318
- if (process.env.NODE_ENV !== 'development') {
320
+ if (isProd || process.env.NODE_ENV !== 'development') {
319
321
  return config as any
320
322
  }
321
323
 
@@ -1,8 +1,10 @@
1
1
  import { createVariables } from './createVariables'
2
2
  import type { CreateTokens, Variable } from './types'
3
3
 
4
+ const isProd = process.env.NODE_ENV === 'production'
5
+
4
6
  export function createTokens<T extends CreateTokens>(tokens: T): MakeTokens<T> {
5
- if (process.env.NODE_ENV !== 'production') {
7
+ if (!isProd && process.env.NODE_ENV !== 'production') {
6
8
  validateNoTrueTokenKeys(tokens)
7
9
  }
8
10
  return createVariables(tokens, process.env.TAMAGUI_TOKEN_PREFIX ?? 't') as any
@@ -4,6 +4,8 @@ import { simpleHash } from '@tamagui/helpers'
4
4
  import { getConfig } from './config'
5
5
  import type { PxValue, TokenCategories, Variable } from './types'
6
6
 
7
+ const isProd = process.env.NODE_ENV === 'production'
8
+
7
9
  /**
8
10
  * Should rename this to Token
9
11
  * Moving to objects for React Server Components support
@@ -102,7 +104,7 @@ export function getVariableValue(v: Variable | any, group?: TokenCategories) {
102
104
 
103
105
  // bugfix { space: { 0.5: 10 } } was generating var(--space-0.5) (invalid CSS):
104
106
  export const createCSSVariable = (nameProp: string, includeVar = true) => {
105
- if (process.env.NODE_ENV === 'development') {
107
+ if (!isProd && process.env.NODE_ENV === 'development') {
106
108
  if (!nameProp || typeof nameProp !== 'string') {
107
109
  throw new Error(`createCSSVariable expected string, got: ${nameProp}`)
108
110
  }
@@ -11,6 +11,8 @@ import { htmlResetCSS } from '../dom/htmlReset'
11
11
  import { getThemeCSSRules } from './getThemeCSSRules'
12
12
  import { getAllRules, wrapStyleRules } from './insertStyleRule'
13
13
 
14
+ const isProd = process.env.NODE_ENV === 'production'
15
+
14
16
  type ThemeConfig = {
15
17
  cssRuleSets: string[]
16
18
  getThemeRulesSets: () => string[]
@@ -96,7 +98,7 @@ export function buildCSSRuleSets(
96
98
  ): string[] {
97
99
  if (!process.env.TAMAGUI_DID_OUTPUT_CSS) {
98
100
  const cssRuleSets: string[] = []
99
- const developmentWhitespace = process.env.NODE_ENV === 'development'
101
+ const developmentWhitespace = !isProd && process.env.NODE_ENV === 'development'
100
102
  const sep = developmentWhitespace ? ' ' : ''
101
103
 
102
104
  function declarationsToRuleSet(decs: string[], selector = '') {
@@ -251,7 +253,7 @@ ${htmlResetCSS}
251
253
  ${pointerEventsCSS}
252
254
  ${hideScrollBarsCSS}`
253
255
  const designSystem = `${
254
- process.env.NODE_ENV === 'production'
256
+ isProd || process.env.NODE_ENV === 'production'
255
257
  ? baseDesignSystem
256
258
  .replaceAll(' {', '{')
257
259
  .replaceAll('{ ', '{')
@@ -1,3 +1,4 @@
1
+ const isProd = process.env.NODE_ENV === 'production'
1
2
  const maxDiagnosticValueLength = 160
2
3
 
3
4
  function formatDiagnosticValue(
@@ -56,7 +57,7 @@ export function formatDiagnostic(
56
57
  prop?: string,
57
58
  received?: unknown
58
59
  ) {
59
- if (process.env.NODE_ENV === 'development') {
60
+ if (!isProd && process.env.NODE_ENV === 'development') {
60
61
  const formattedValue = prop ? formatDiagnosticValue(received) : ''
61
62
  const boundedValue =
62
63
  formattedValue.length > maxDiagnosticValueLength