@tamagui/web 3.0.0-beta.922.1 → 3.0.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 (636) hide show
  1. package/dist/cjs/_withNativeStyle.cjs +3 -0
  2. package/dist/cjs/_withNativeStyle.native.cjs +3 -0
  3. package/dist/cjs/_withNativeStyle.native.js +3 -0
  4. package/dist/cjs/_withNativeStyle.native.js.map +1 -1
  5. package/dist/cjs/_withStableStyle.native.cjs +1 -5
  6. package/dist/cjs/_withStableStyle.native.js +1 -5
  7. package/dist/cjs/_withStableStyle.native.js.map +1 -1
  8. package/dist/cjs/config.cjs +6 -3
  9. package/dist/cjs/config.native.cjs +7 -5
  10. package/dist/cjs/config.native.js +7 -5
  11. package/dist/cjs/config.native.js.map +1 -1
  12. package/dist/cjs/contexts/ComponentContext.cjs +1 -0
  13. package/dist/cjs/contexts/ComponentContext.native.cjs +8 -0
  14. package/dist/cjs/contexts/ComponentContext.native.js +8 -0
  15. package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
  16. package/dist/cjs/createComponent.cjs +46 -32
  17. package/dist/cjs/createComponent.native.cjs +92 -72
  18. package/dist/cjs/createComponent.native.js +92 -72
  19. package/dist/cjs/createComponent.native.js.map +1 -1
  20. package/dist/cjs/createTamagui.cjs +32 -14
  21. package/dist/cjs/createTamagui.native.cjs +33 -19
  22. package/dist/cjs/createTamagui.native.js +33 -19
  23. package/dist/cjs/createTamagui.native.js.map +1 -1
  24. package/dist/cjs/createTokens.native.cjs +1 -5
  25. package/dist/cjs/createTokens.native.js +1 -5
  26. package/dist/cjs/createTokens.native.js.map +1 -1
  27. package/dist/cjs/createVariable.native.cjs +1 -5
  28. package/dist/cjs/createVariable.native.js +1 -5
  29. package/dist/cjs/createVariable.native.js.map +1 -1
  30. package/dist/cjs/createVariables.native.cjs +2 -6
  31. package/dist/cjs/createVariables.native.js +2 -6
  32. package/dist/cjs/createVariables.native.js.map +1 -1
  33. package/dist/cjs/dom/html.cjs +87 -329
  34. package/dist/cjs/dom/html.native.cjs +53 -2
  35. package/dist/cjs/dom/html.native.js +53 -2
  36. package/dist/cjs/dom/html.native.js.map +1 -1
  37. package/dist/cjs/{helpers/timer.native.js → dom/htmlReset.cjs} +6 -12
  38. package/dist/cjs/{helpers/timer.native.cjs → dom/htmlReset.native.cjs} +6 -8
  39. package/dist/cjs/dom/htmlReset.native.js +30 -0
  40. package/dist/cjs/dom/htmlReset.native.js.map +1 -0
  41. package/dist/cjs/dom/htmlRuntime.native.cjs +4 -0
  42. package/dist/cjs/dom/htmlRuntime.native.js +4 -0
  43. package/dist/cjs/dom/htmlRuntime.native.js.map +1 -1
  44. package/dist/cjs/dom/htmlStaticConfig.cjs +44 -0
  45. package/dist/cjs/dom/htmlStaticConfig.native.cjs +46 -0
  46. package/dist/cjs/dom/htmlStaticConfig.native.js +48 -0
  47. package/dist/cjs/dom/htmlStaticConfig.native.js.map +1 -0
  48. package/dist/cjs/dom/primitives.native.cjs +81 -34
  49. package/dist/cjs/dom/primitives.native.js +81 -34
  50. package/dist/cjs/dom/primitives.native.js.map +1 -1
  51. package/dist/cjs/eventHandling.cjs +10 -4
  52. package/dist/cjs/eventHandling.native.cjs +52 -16
  53. package/dist/cjs/eventHandling.native.js +52 -16
  54. package/dist/cjs/eventHandling.native.js.map +1 -1
  55. package/dist/cjs/helpers/NativeTextBinding.cjs +36 -0
  56. package/dist/cjs/helpers/NativeTextBinding.native.cjs +39 -0
  57. package/dist/cjs/helpers/NativeTextBinding.native.js +41 -0
  58. package/dist/cjs/helpers/NativeTextBinding.native.js.map +1 -0
  59. package/dist/cjs/helpers/configVariables.native.cjs +2 -6
  60. package/dist/cjs/helpers/configVariables.native.js +2 -6
  61. package/dist/cjs/helpers/configVariables.native.js.map +1 -1
  62. package/dist/cjs/helpers/createDesignSystem.cjs +14 -10
  63. package/dist/cjs/helpers/createDesignSystem.native.cjs +5 -4
  64. package/dist/cjs/helpers/createDesignSystem.native.js +5 -4
  65. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
  66. package/dist/cjs/helpers/createStyledContext.native.cjs +1 -5
  67. package/dist/cjs/helpers/createStyledContext.native.js +1 -5
  68. package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
  69. package/dist/cjs/helpers/expandStyle.cjs +45 -1
  70. package/dist/cjs/helpers/expandStyle.native.cjs +38 -2
  71. package/dist/cjs/helpers/expandStyle.native.js +38 -2
  72. package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
  73. package/dist/cjs/helpers/expandStyles.cjs +15 -3
  74. package/dist/cjs/helpers/expandStyles.native.cjs +14 -8
  75. package/dist/cjs/helpers/expandStyles.native.js +14 -8
  76. package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
  77. package/dist/cjs/helpers/fluid.cjs +56 -0
  78. package/dist/cjs/helpers/fluid.native.cjs +58 -0
  79. package/dist/cjs/helpers/fluid.native.js +60 -0
  80. package/dist/cjs/helpers/fluid.native.js.map +1 -0
  81. package/dist/cjs/helpers/formatDiagnostic.native.cjs +2 -6
  82. package/dist/cjs/helpers/formatDiagnostic.native.js +2 -6
  83. package/dist/cjs/helpers/formatDiagnostic.native.js.map +1 -1
  84. package/dist/cjs/helpers/getCSSStylesAtomic.cjs +6 -6
  85. package/dist/cjs/helpers/getSplitStyles.cjs +366 -150
  86. package/dist/cjs/helpers/getSplitStyles.native.cjs +584 -184
  87. package/dist/cjs/helpers/getSplitStyles.native.js +584 -184
  88. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
  89. package/dist/cjs/helpers/getThemeCSSRules.cjs +37 -25
  90. package/dist/cjs/helpers/grammarConfig.cjs +6 -14
  91. package/dist/cjs/helpers/grammarConfig.native.cjs +32 -22
  92. package/dist/cjs/helpers/grammarConfig.native.js +32 -22
  93. package/dist/cjs/helpers/grammarConfig.native.js.map +1 -1
  94. package/dist/cjs/helpers/insertStyleRule.cjs +11 -4
  95. package/dist/cjs/helpers/insertStyleRule.native.cjs +8 -11
  96. package/dist/cjs/helpers/insertStyleRule.native.js +8 -11
  97. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
  98. package/dist/cjs/helpers/isObj.native.cjs +1 -5
  99. package/dist/cjs/helpers/isObj.native.js +1 -5
  100. package/dist/cjs/helpers/isObj.native.js.map +1 -1
  101. package/dist/cjs/helpers/mainThreadPressEvents.native.cjs +48 -100
  102. package/dist/cjs/helpers/mainThreadPressEvents.native.js +48 -100
  103. package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
  104. package/dist/cjs/helpers/mergeProps.cjs +18 -21
  105. package/dist/cjs/helpers/mergeProps.native.cjs +20 -23
  106. package/dist/cjs/helpers/mergeProps.native.js +20 -23
  107. package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
  108. package/dist/cjs/helpers/nativeOnlyProps.cjs +0 -1
  109. package/dist/cjs/helpers/nativeOnlyProps.native.cjs +0 -1
  110. package/dist/cjs/helpers/nativeOnlyProps.native.js +0 -1
  111. package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
  112. package/dist/cjs/helpers/nativeTextMetrics.cjs +74 -0
  113. package/dist/cjs/helpers/nativeTextMetrics.native.cjs +77 -0
  114. package/dist/cjs/helpers/nativeTextMetrics.native.js +79 -0
  115. package/dist/cjs/helpers/nativeTextMetrics.native.js.map +1 -0
  116. package/dist/cjs/helpers/normalizeColor.native.cjs +17 -2
  117. package/dist/cjs/helpers/normalizeColor.native.js +17 -2
  118. package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
  119. package/dist/cjs/helpers/normalizeValueWithProperty.cjs +2 -1
  120. package/dist/cjs/helpers/normalizeValueWithProperty.native.cjs +3 -6
  121. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +3 -6
  122. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
  123. package/dist/cjs/helpers/objectIdentityKey.native.cjs +1 -5
  124. package/dist/cjs/helpers/objectIdentityKey.native.js +1 -5
  125. package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
  126. package/dist/cjs/helpers/parseNativeStyle.cjs +187 -0
  127. package/dist/cjs/helpers/parseNativeStyle.native.cjs +6 -4
  128. package/dist/cjs/helpers/parseNativeStyle.native.js +6 -4
  129. package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
  130. package/dist/cjs/helpers/proxyThemeToParents.cjs +9 -2
  131. package/dist/cjs/helpers/proxyThemeToParents.native.cjs +28 -2
  132. package/dist/cjs/helpers/proxyThemeToParents.native.js +28 -2
  133. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
  134. package/dist/cjs/helpers/resolveAnimationDriver.native.cjs +1 -5
  135. package/dist/cjs/helpers/resolveAnimationDriver.native.js +1 -5
  136. package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -1
  137. package/dist/cjs/helpers/{timer.cjs → resolveNativeUnits.cjs} +12 -8
  138. package/dist/cjs/helpers/resolveNativeUnits.native.cjs +205 -0
  139. package/dist/cjs/helpers/resolveNativeUnits.native.js +207 -0
  140. package/dist/cjs/helpers/resolveNativeUnits.native.js.map +1 -0
  141. package/dist/cjs/helpers/resolveRem.native.cjs +18 -21
  142. package/dist/cjs/helpers/resolveRem.native.js +18 -21
  143. package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
  144. package/dist/cjs/helpers/resolveSizing.cjs +124 -0
  145. package/dist/cjs/helpers/resolveSizing.native.cjs +133 -0
  146. package/dist/cjs/helpers/resolveSizing.native.js +135 -0
  147. package/dist/cjs/helpers/resolveSizing.native.js.map +1 -0
  148. package/dist/cjs/helpers/resolveVariableValue.cjs +7 -7
  149. package/dist/cjs/helpers/resolveVariableValue.native.cjs +7 -9
  150. package/dist/cjs/helpers/resolveVariableValue.native.js +7 -9
  151. package/dist/cjs/helpers/resolveVariableValue.native.js.map +1 -1
  152. package/dist/cjs/helpers/resolveVariantStyle.native.cjs +2 -6
  153. package/dist/cjs/helpers/resolveVariantStyle.native.js +2 -6
  154. package/dist/cjs/helpers/resolveVariantStyle.native.js.map +1 -1
  155. package/dist/cjs/helpers/skipProps.cjs +0 -1
  156. package/dist/cjs/helpers/skipProps.native.cjs +0 -1
  157. package/dist/cjs/helpers/skipProps.native.js +0 -1
  158. package/dist/cjs/helpers/skipProps.native.js.map +1 -1
  159. package/dist/cjs/helpers/styleFrontend.cjs +23 -1
  160. package/dist/cjs/helpers/styleFrontend.native.cjs +23 -1
  161. package/dist/cjs/helpers/styleFrontend.native.js +23 -1
  162. package/dist/cjs/helpers/styleFrontend.native.js.map +1 -1
  163. package/dist/cjs/helpers/styleStaticConfigCore.cjs +5 -4
  164. package/dist/cjs/helpers/styleStaticConfigCore.native.cjs +7 -4
  165. package/dist/cjs/helpers/styleStaticConfigCore.native.js +7 -4
  166. package/dist/cjs/helpers/styleStaticConfigCore.native.js.map +1 -1
  167. package/dist/cjs/helpers/styledDynamic.cjs +5 -0
  168. package/dist/cjs/helpers/styledDynamic.native.cjs +8 -7
  169. package/dist/cjs/helpers/styledDynamic.native.js +8 -7
  170. package/dist/cjs/helpers/styledDynamic.native.js.map +1 -1
  171. package/dist/cjs/helpers/subscribeToContextGroup.cjs +16 -7
  172. package/dist/cjs/helpers/subscribeToContextGroup.native.cjs +18 -8
  173. package/dist/cjs/helpers/subscribeToContextGroup.native.js +18 -8
  174. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
  175. package/dist/cjs/helpers/themeRef.native.cjs +1 -5
  176. package/dist/cjs/helpers/themeRef.native.js +1 -5
  177. package/dist/cjs/helpers/themeRef.native.js.map +1 -1
  178. package/dist/cjs/helpers/themes.cjs +26 -11
  179. package/dist/cjs/helpers/themes.native.cjs +26 -11
  180. package/dist/cjs/helpers/themes.native.js +26 -11
  181. package/dist/cjs/helpers/themes.native.js.map +1 -1
  182. package/dist/cjs/helpers/tokenCategories.cjs +2 -2
  183. package/dist/cjs/helpers/tokenCategories.native.cjs +2 -2
  184. package/dist/cjs/helpers/tokenCategories.native.js +2 -2
  185. package/dist/cjs/helpers/tokenCategories.native.js.map +1 -1
  186. package/dist/cjs/helpers/variables.cjs +1 -1
  187. package/dist/cjs/helpers/variables.native.cjs +4 -8
  188. package/dist/cjs/helpers/variables.native.js +4 -8
  189. package/dist/cjs/helpers/variables.native.js.map +1 -1
  190. package/dist/cjs/helpers/warnOnce.cjs +6 -0
  191. package/dist/cjs/helpers/warnOnce.native.cjs +6 -0
  192. package/dist/cjs/helpers/warnOnce.native.js +6 -0
  193. package/dist/cjs/helpers/warnOnce.native.js.map +1 -1
  194. package/dist/cjs/helpers/webPropsToSkip.native.cjs +3 -3
  195. package/dist/cjs/helpers/webPropsToSkip.native.js +3 -3
  196. package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
  197. package/dist/cjs/helpers/wrapStyleTags.cjs +1 -1
  198. package/dist/cjs/helpers/wrapStyleTags.native.cjs +1 -1
  199. package/dist/cjs/helpers/wrapStyleTags.native.js +1 -1
  200. package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
  201. package/dist/cjs/hooks/useComponentState.native.cjs +1 -5
  202. package/dist/cjs/hooks/useComponentState.native.js +1 -5
  203. package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
  204. package/dist/cjs/hooks/useMedia.cjs +27 -34
  205. package/dist/cjs/hooks/useMedia.native.cjs +45 -51
  206. package/dist/cjs/hooks/useMedia.native.js +45 -51
  207. package/dist/cjs/hooks/useMedia.native.js.map +1 -1
  208. package/dist/cjs/hooks/useSplitStyles.cjs +1 -1
  209. package/dist/cjs/hooks/useSplitStyles.native.cjs +1 -1
  210. package/dist/cjs/hooks/useSplitStyles.native.js +1 -1
  211. package/dist/cjs/hooks/useSplitStyles.native.js.map +1 -1
  212. package/dist/cjs/hooks/useThemeState.cjs +37 -47
  213. package/dist/cjs/hooks/useThemeState.native.cjs +44 -50
  214. package/dist/cjs/hooks/useThemeState.native.js +44 -50
  215. package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
  216. package/dist/cjs/index.cjs +7 -0
  217. package/dist/cjs/index.native.cjs +7 -0
  218. package/dist/cjs/index.native.js +7 -0
  219. package/dist/cjs/index.native.js.map +1 -1
  220. package/dist/cjs/internal-runtime.cjs +22 -0
  221. package/dist/cjs/internal-runtime.native.cjs +22 -0
  222. package/dist/cjs/internal-runtime.native.js +22 -0
  223. package/dist/cjs/internal-runtime.native.js.map +1 -1
  224. package/dist/cjs/static-resolve.native.cjs +2 -9
  225. package/dist/cjs/static-resolve.native.js +2 -9
  226. package/dist/cjs/static-resolve.native.js.map +1 -1
  227. package/dist/cjs/style.cjs +1 -1
  228. package/dist/cjs/style.native.cjs +4 -7
  229. package/dist/cjs/style.native.js +4 -7
  230. package/dist/cjs/style.native.js.map +1 -1
  231. package/dist/cjs/views/Theme.cjs +10 -17
  232. package/dist/cjs/views/Theme.native.cjs +9 -11
  233. package/dist/cjs/views/Theme.native.js +9 -11
  234. package/dist/cjs/views/Theme.native.js.map +1 -1
  235. package/dist/cjs/views/ThemeDebug.cjs +1 -1
  236. package/dist/cjs/views/ThemeUpdate.cjs +1 -1
  237. package/dist/cjs/views/ThemeUpdate.native.cjs +1 -1
  238. package/dist/cjs/views/ThemeUpdate.native.js +1 -1
  239. package/dist/cjs/views/ThemeUpdate.native.js.map +1 -1
  240. package/dist/esm/_withNativeStyle.mjs +4 -1
  241. package/dist/esm/_withNativeStyle.mjs.map +1 -1
  242. package/dist/esm/_withNativeStyle.native.js +4 -1
  243. package/dist/esm/_withNativeStyle.native.js.map +1 -1
  244. package/dist/esm/_withStableStyle.native.js +1 -5
  245. package/dist/esm/_withStableStyle.native.js.map +1 -1
  246. package/dist/esm/config.mjs +6 -3
  247. package/dist/esm/config.mjs.map +1 -1
  248. package/dist/esm/config.native.js +7 -5
  249. package/dist/esm/config.native.js.map +1 -1
  250. package/dist/esm/contexts/ComponentContext.mjs +9 -9
  251. package/dist/esm/contexts/ComponentContext.mjs.map +1 -1
  252. package/dist/esm/contexts/ComponentContext.native.js +16 -9
  253. package/dist/esm/contexts/ComponentContext.native.js.map +1 -1
  254. package/dist/esm/createComponent.mjs +45 -42
  255. package/dist/esm/createComponent.mjs.map +1 -1
  256. package/dist/esm/createComponent.native.js +93 -82
  257. package/dist/esm/createComponent.native.js.map +1 -1
  258. package/dist/esm/createTamagui.mjs +33 -15
  259. package/dist/esm/createTamagui.mjs.map +1 -1
  260. package/dist/esm/createTamagui.native.js +34 -20
  261. package/dist/esm/createTamagui.native.js.map +1 -1
  262. package/dist/esm/createTokens.native.js +1 -5
  263. package/dist/esm/createTokens.native.js.map +1 -1
  264. package/dist/esm/createVariable.native.js +1 -5
  265. package/dist/esm/createVariable.native.js.map +1 -1
  266. package/dist/esm/createVariables.native.js +2 -6
  267. package/dist/esm/createVariables.native.js.map +1 -1
  268. package/dist/esm/dom/html.mjs +87 -329
  269. package/dist/esm/dom/html.mjs.map +1 -1
  270. package/dist/esm/dom/html.native.js +53 -2
  271. package/dist/esm/dom/html.native.js.map +1 -1
  272. package/dist/esm/dom/htmlReset.mjs +6 -0
  273. package/dist/esm/dom/htmlReset.mjs.map +1 -0
  274. package/dist/esm/dom/htmlReset.native.js +6 -0
  275. package/dist/esm/dom/htmlReset.native.js.map +1 -0
  276. package/dist/esm/dom/htmlRuntime.native.js +4 -0
  277. package/dist/esm/dom/htmlRuntime.native.js.map +1 -1
  278. package/dist/esm/dom/htmlStaticConfig.mjs +22 -0
  279. package/dist/esm/dom/htmlStaticConfig.mjs.map +1 -0
  280. package/dist/esm/dom/htmlStaticConfig.native.js +22 -0
  281. package/dist/esm/dom/htmlStaticConfig.native.js.map +1 -0
  282. package/dist/esm/dom/primitives.native.js +81 -34
  283. package/dist/esm/dom/primitives.native.js.map +1 -1
  284. package/dist/esm/eventHandling.mjs +10 -4
  285. package/dist/esm/eventHandling.mjs.map +1 -1
  286. package/dist/esm/eventHandling.native.js +52 -16
  287. package/dist/esm/eventHandling.native.js.map +1 -1
  288. package/dist/esm/helpers/NativeTextBinding.mjs +17 -0
  289. package/dist/esm/helpers/NativeTextBinding.mjs.map +1 -0
  290. package/dist/esm/helpers/NativeTextBinding.native.js +18 -0
  291. package/dist/esm/helpers/NativeTextBinding.native.js.map +1 -0
  292. package/dist/esm/helpers/configVariables.native.js +2 -6
  293. package/dist/esm/helpers/configVariables.native.js.map +1 -1
  294. package/dist/esm/helpers/createDesignSystem.mjs +14 -10
  295. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
  296. package/dist/esm/helpers/createDesignSystem.native.js +4 -4
  297. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
  298. package/dist/esm/helpers/createStyledContext.native.js +1 -5
  299. package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
  300. package/dist/esm/helpers/expandStyle.mjs +41 -1
  301. package/dist/esm/helpers/expandStyle.mjs.map +1 -1
  302. package/dist/esm/helpers/expandStyle.native.js +36 -3
  303. package/dist/esm/helpers/expandStyle.native.js.map +1 -1
  304. package/dist/esm/helpers/expandStyles.mjs +15 -3
  305. package/dist/esm/helpers/expandStyles.mjs.map +1 -1
  306. package/dist/esm/helpers/expandStyles.native.js +14 -8
  307. package/dist/esm/helpers/expandStyles.native.js.map +1 -1
  308. package/dist/esm/helpers/fluid.mjs +36 -0
  309. package/dist/esm/helpers/fluid.mjs.map +1 -0
  310. package/dist/esm/helpers/fluid.native.js +36 -0
  311. package/dist/esm/helpers/fluid.native.js.map +1 -0
  312. package/dist/esm/helpers/formatDiagnostic.native.js +2 -6
  313. package/dist/esm/helpers/formatDiagnostic.native.js.map +1 -1
  314. package/dist/esm/helpers/getCSSStylesAtomic.mjs +6 -6
  315. package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
  316. package/dist/esm/helpers/getSplitStyles.mjs +364 -150
  317. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  318. package/dist/esm/helpers/getSplitStyles.native.js +588 -188
  319. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
  320. package/dist/esm/helpers/getThemeCSSRules.mjs +37 -25
  321. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
  322. package/dist/esm/helpers/grammarConfig.mjs +6 -14
  323. package/dist/esm/helpers/grammarConfig.mjs.map +1 -1
  324. package/dist/esm/helpers/grammarConfig.native.js +32 -22
  325. package/dist/esm/helpers/grammarConfig.native.js.map +1 -1
  326. package/dist/esm/helpers/insertStyleRule.mjs +11 -4
  327. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
  328. package/dist/esm/helpers/insertStyleRule.native.js +4 -4
  329. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
  330. package/dist/esm/helpers/isObj.native.js +1 -5
  331. package/dist/esm/helpers/isObj.native.js.map +1 -1
  332. package/dist/esm/helpers/mainThreadPressEvents.native.js +48 -100
  333. package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -1
  334. package/dist/esm/helpers/mergeProps.mjs +18 -21
  335. package/dist/esm/helpers/mergeProps.mjs.map +1 -1
  336. package/dist/esm/helpers/mergeProps.native.js +20 -23
  337. package/dist/esm/helpers/mergeProps.native.js.map +1 -1
  338. package/dist/esm/helpers/nativeOnlyProps.mjs +0 -1
  339. package/dist/esm/helpers/nativeOnlyProps.mjs.map +1 -1
  340. package/dist/esm/helpers/nativeOnlyProps.native.js +0 -1
  341. package/dist/esm/helpers/nativeOnlyProps.native.js.map +1 -1
  342. package/dist/esm/helpers/nativeTextMetrics.mjs +55 -0
  343. package/dist/esm/helpers/nativeTextMetrics.mjs.map +1 -0
  344. package/dist/esm/helpers/nativeTextMetrics.native.js +56 -0
  345. package/dist/esm/helpers/nativeTextMetrics.native.js.map +1 -0
  346. package/dist/esm/helpers/normalizeColor.native.js +17 -2
  347. package/dist/esm/helpers/normalizeColor.native.js.map +1 -1
  348. package/dist/esm/helpers/normalizeValueWithProperty.mjs +2 -1
  349. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
  350. package/dist/esm/helpers/normalizeValueWithProperty.native.js +3 -6
  351. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
  352. package/dist/esm/helpers/objectIdentityKey.native.js +1 -5
  353. package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -1
  354. package/dist/esm/helpers/parseNativeStyle.mjs +168 -0
  355. package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -0
  356. package/dist/esm/helpers/parseNativeStyle.native.js +4 -1
  357. package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
  358. package/dist/esm/helpers/proxyThemeToParents.mjs +10 -2
  359. package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
  360. package/dist/esm/helpers/proxyThemeToParents.native.js +29 -2
  361. package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
  362. package/dist/esm/helpers/resolveAnimationDriver.native.js +1 -5
  363. package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -1
  364. package/dist/esm/helpers/resolveNativeUnits.mjs +9 -0
  365. package/dist/esm/helpers/resolveNativeUnits.mjs.map +1 -0
  366. package/dist/esm/helpers/resolveNativeUnits.native.js +178 -0
  367. package/dist/esm/helpers/resolveNativeUnits.native.js.map +1 -0
  368. package/dist/esm/helpers/resolveRem.native.js +18 -21
  369. package/dist/esm/helpers/resolveRem.native.js.map +1 -1
  370. package/dist/esm/helpers/resolveSizing.mjs +102 -0
  371. package/dist/esm/helpers/resolveSizing.mjs.map +1 -0
  372. package/dist/esm/helpers/resolveSizing.native.js +109 -0
  373. package/dist/esm/helpers/resolveSizing.native.js.map +1 -0
  374. package/dist/esm/helpers/resolveVariableValue.mjs +7 -7
  375. package/dist/esm/helpers/resolveVariableValue.mjs.map +1 -1
  376. package/dist/esm/helpers/resolveVariableValue.native.js +7 -9
  377. package/dist/esm/helpers/resolveVariableValue.native.js.map +1 -1
  378. package/dist/esm/helpers/resolveVariantStyle.native.js +2 -6
  379. package/dist/esm/helpers/resolveVariantStyle.native.js.map +1 -1
  380. package/dist/esm/helpers/skipProps.mjs +0 -1
  381. package/dist/esm/helpers/skipProps.mjs.map +1 -1
  382. package/dist/esm/helpers/skipProps.native.js +0 -1
  383. package/dist/esm/helpers/skipProps.native.js.map +1 -1
  384. package/dist/esm/helpers/styleFrontend.mjs +20 -1
  385. package/dist/esm/helpers/styleFrontend.mjs.map +1 -1
  386. package/dist/esm/helpers/styleFrontend.native.js +20 -1
  387. package/dist/esm/helpers/styleFrontend.native.js.map +1 -1
  388. package/dist/esm/helpers/styleStaticConfigCore.mjs +5 -4
  389. package/dist/esm/helpers/styleStaticConfigCore.mjs.map +1 -1
  390. package/dist/esm/helpers/styleStaticConfigCore.native.js +7 -4
  391. package/dist/esm/helpers/styleStaticConfigCore.native.js.map +1 -1
  392. package/dist/esm/helpers/styledDynamic.mjs +5 -0
  393. package/dist/esm/helpers/styledDynamic.mjs.map +1 -1
  394. package/dist/esm/helpers/styledDynamic.native.js +8 -7
  395. package/dist/esm/helpers/styledDynamic.native.js.map +1 -1
  396. package/dist/esm/helpers/subscribeToContextGroup.mjs +16 -7
  397. package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
  398. package/dist/esm/helpers/subscribeToContextGroup.native.js +18 -8
  399. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
  400. package/dist/esm/helpers/themeRef.native.js +1 -5
  401. package/dist/esm/helpers/themeRef.native.js.map +1 -1
  402. package/dist/esm/helpers/themes.mjs +20 -11
  403. package/dist/esm/helpers/themes.mjs.map +1 -1
  404. package/dist/esm/helpers/themes.native.js +20 -11
  405. package/dist/esm/helpers/themes.native.js.map +1 -1
  406. package/dist/esm/helpers/tokenCategories.mjs +2 -2
  407. package/dist/esm/helpers/tokenCategories.mjs.map +1 -1
  408. package/dist/esm/helpers/tokenCategories.native.js +2 -2
  409. package/dist/esm/helpers/tokenCategories.native.js.map +1 -1
  410. package/dist/esm/helpers/variables.mjs +1 -1
  411. package/dist/esm/helpers/variables.mjs.map +1 -1
  412. package/dist/esm/helpers/variables.native.js +4 -8
  413. package/dist/esm/helpers/variables.native.js.map +1 -1
  414. package/dist/esm/helpers/warnOnce.mjs +6 -1
  415. package/dist/esm/helpers/warnOnce.mjs.map +1 -1
  416. package/dist/esm/helpers/warnOnce.native.js +6 -1
  417. package/dist/esm/helpers/warnOnce.native.js.map +1 -1
  418. package/dist/esm/helpers/webPropsToSkip.native.js +3 -3
  419. package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -1
  420. package/dist/esm/helpers/wrapStyleTags.mjs +1 -1
  421. package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -1
  422. package/dist/esm/helpers/wrapStyleTags.native.js +1 -1
  423. package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -1
  424. package/dist/esm/hooks/useComponentState.native.js +1 -5
  425. package/dist/esm/hooks/useComponentState.native.js.map +1 -1
  426. package/dist/esm/hooks/useMedia.mjs +27 -34
  427. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  428. package/dist/esm/hooks/useMedia.native.js +45 -51
  429. package/dist/esm/hooks/useMedia.native.js.map +1 -1
  430. package/dist/esm/hooks/useSplitStyles.mjs +1 -1
  431. package/dist/esm/hooks/useSplitStyles.mjs.map +1 -1
  432. package/dist/esm/hooks/useSplitStyles.native.js +1 -1
  433. package/dist/esm/hooks/useSplitStyles.native.js.map +1 -1
  434. package/dist/esm/hooks/useThemeState.mjs +36 -48
  435. package/dist/esm/hooks/useThemeState.mjs.map +1 -1
  436. package/dist/esm/hooks/useThemeState.native.js +44 -50
  437. package/dist/esm/hooks/useThemeState.native.js.map +1 -1
  438. package/dist/esm/index.js +4 -1
  439. package/dist/esm/index.mjs +4 -1
  440. package/dist/esm/index.native.js +4 -1
  441. package/dist/esm/internal-runtime.mjs +22 -3
  442. package/dist/esm/internal-runtime.mjs.map +1 -1
  443. package/dist/esm/internal-runtime.native.js +22 -3
  444. package/dist/esm/internal-runtime.native.js.map +1 -1
  445. package/dist/esm/static-resolve.native.js +2 -9
  446. package/dist/esm/static-resolve.native.js.map +1 -1
  447. package/dist/esm/style.mjs +1 -1
  448. package/dist/esm/style.mjs.map +1 -1
  449. package/dist/esm/style.native.js +4 -7
  450. package/dist/esm/style.native.js.map +1 -1
  451. package/dist/esm/views/Theme.mjs +15 -14
  452. package/dist/esm/views/Theme.mjs.map +1 -1
  453. package/dist/esm/views/Theme.native.js +15 -15
  454. package/dist/esm/views/Theme.native.js.map +1 -1
  455. package/dist/esm/views/ThemeDebug.mjs +1 -1
  456. package/dist/esm/views/ThemeDebug.mjs.map +1 -1
  457. package/dist/esm/views/ThemeUpdate.mjs +1 -1
  458. package/dist/esm/views/ThemeUpdate.mjs.map +1 -1
  459. package/dist/esm/views/ThemeUpdate.native.js +1 -1
  460. package/dist/esm/views/ThemeUpdate.native.js.map +1 -1
  461. package/package.json +20 -18
  462. package/reset.css +11 -0
  463. package/src/_withNativeStyle.tsx +6 -1
  464. package/src/config.ts +6 -6
  465. package/src/contexts/ComponentContext.tsx +8 -0
  466. package/src/createComponent.tsx +177 -57
  467. package/src/createStyledHOC.tsx +25 -26
  468. package/src/createTamagui.ts +47 -28
  469. package/src/dom/contract.ts +4 -1
  470. package/src/dom/html.native.tsx +55 -2
  471. package/src/dom/html.tsx +189 -388
  472. package/src/dom/htmlReset.ts +15 -0
  473. package/src/dom/htmlRuntime.native.tsx +5 -0
  474. package/src/dom/htmlStaticConfig.ts +40 -0
  475. package/src/dom/primitives.native.tsx +138 -33
  476. package/src/dom/standalone.ts +2 -1
  477. package/src/dom/styleTypes.ts +82 -92
  478. package/src/eventHandling.native.ts +61 -11
  479. package/src/eventHandling.ts +19 -4
  480. package/src/helpers/NativeTextBinding.tsx +26 -0
  481. package/src/helpers/createDesignSystem.ts +24 -8
  482. package/src/helpers/expandStyle.ts +88 -4
  483. package/src/helpers/expandStyles.ts +6 -11
  484. package/src/helpers/fluid.ts +66 -0
  485. package/src/helpers/getCSSStylesAtomic.ts +11 -6
  486. package/src/helpers/getSplitStyles.tsx +1032 -296
  487. package/src/helpers/getThemeCSSRules.ts +73 -35
  488. package/src/helpers/grammarConfig.ts +23 -8
  489. package/src/helpers/insertStyleRule.tsx +14 -8
  490. package/src/helpers/mainThreadPressEvents.native.ts +65 -141
  491. package/src/helpers/mergeProps.ts +29 -62
  492. package/src/helpers/nativeOnlyProps.ts +0 -1
  493. package/src/helpers/nativeTextMetrics.ts +77 -0
  494. package/src/helpers/normalizeColor.native.ts +29 -4
  495. package/src/helpers/normalizeValueWithProperty.ts +2 -1
  496. package/src/helpers/{parseNativeStyle.native.ts → parseNativeStyle.ts} +8 -1
  497. package/src/helpers/proxyThemeToParents.ts +13 -2
  498. package/src/helpers/resolveNativeUnits.native.ts +247 -0
  499. package/src/helpers/resolveNativeUnits.ts +10 -0
  500. package/src/helpers/resolveRem.native.ts +25 -26
  501. package/src/helpers/resolveSizing.ts +167 -0
  502. package/src/helpers/resolveVariableValue.ts +21 -17
  503. package/src/helpers/skipProps.ts +0 -1
  504. package/src/helpers/styleFrontend.ts +39 -0
  505. package/src/helpers/styleProvenance.ts +1 -1
  506. package/src/helpers/styleStaticConfigCore.ts +15 -4
  507. package/src/helpers/styledDynamic.ts +3 -1
  508. package/src/helpers/subscribeToContextGroup.tsx +16 -7
  509. package/src/helpers/themes.ts +27 -11
  510. package/src/helpers/tokenCategories.ts +15 -3
  511. package/src/helpers/variables.ts +2 -2
  512. package/src/helpers/warnOnce.ts +6 -0
  513. package/src/helpers/webPropsToSkip.native.ts +9 -3
  514. package/src/helpers/wrapStyleTags.tsx +4 -1
  515. package/src/hooks/useMedia.tsx +36 -47
  516. package/src/hooks/useSplitStyles.tsx +4 -1
  517. package/src/hooks/useThemeState.ts +69 -74
  518. package/src/index.ts +13 -0
  519. package/src/interfaces/RNExclusiveTypes.ts +1 -3
  520. package/src/internal-runtime.ts +43 -2
  521. package/src/style.ts +4 -1
  522. package/src/styled.tsx +34 -3
  523. package/src/types.tsx +412 -132
  524. package/src/views/Theme.tsx +18 -21
  525. package/src/views/ThemeDebug.tsx +1 -1
  526. package/src/views/ThemeUpdate.tsx +1 -1
  527. package/types/_withNativeStyle.d.ts.map +1 -1
  528. package/types/config.d.ts.map +1 -1
  529. package/types/contexts/ComponentContext.d.ts +1 -1
  530. package/types/contexts/ComponentContext.d.ts.map +1 -1
  531. package/types/createComponent.d.ts.map +1 -1
  532. package/types/createStyledHOC.d.ts +5 -2
  533. package/types/createStyledHOC.d.ts.map +1 -1
  534. package/types/createTamagui.d.ts.map +1 -1
  535. package/types/dom/contract.d.ts +4 -1
  536. package/types/dom/contract.d.ts.map +1 -1
  537. package/types/dom/html.d.ts +60 -51
  538. package/types/dom/html.d.ts.map +1 -1
  539. package/types/dom/html.native.d.ts.map +1 -1
  540. package/types/dom/htmlReset.d.ts +10 -0
  541. package/types/dom/htmlReset.d.ts.map +1 -0
  542. package/types/dom/htmlRuntime.native.d.ts.map +1 -1
  543. package/types/dom/htmlStaticConfig.d.ts +22 -0
  544. package/types/dom/htmlStaticConfig.d.ts.map +1 -0
  545. package/types/dom/primitives.native.d.ts.map +1 -1
  546. package/types/dom/standalone.d.ts +2 -1
  547. package/types/dom/standalone.d.ts.map +1 -1
  548. package/types/dom/styleTypes.d.ts +63 -84
  549. package/types/dom/styleTypes.d.ts.map +1 -1
  550. package/types/eventHandling.d.ts +12 -4
  551. package/types/eventHandling.d.ts.map +1 -1
  552. package/types/eventHandling.native.d.ts.map +1 -1
  553. package/types/helpers/NativeTextBinding.d.ts +11 -0
  554. package/types/helpers/NativeTextBinding.d.ts.map +1 -0
  555. package/types/helpers/createDesignSystem.d.ts.map +1 -1
  556. package/types/helpers/expandStyle.d.ts +1 -0
  557. package/types/helpers/expandStyle.d.ts.map +1 -1
  558. package/types/helpers/expandStyles.d.ts.map +1 -1
  559. package/types/helpers/fluid.d.ts +21 -0
  560. package/types/helpers/fluid.d.ts.map +1 -0
  561. package/types/helpers/getCSSStylesAtomic.d.ts +3 -1
  562. package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -1
  563. package/types/helpers/getSplitStyles.d.ts +2 -1
  564. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  565. package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
  566. package/types/helpers/grammarConfig.d.ts.map +1 -1
  567. package/types/helpers/insertStyleRule.d.ts.map +1 -1
  568. package/types/helpers/mainThreadPressEvents.native.d.ts +0 -7
  569. package/types/helpers/mainThreadPressEvents.native.d.ts.map +1 -1
  570. package/types/helpers/mergeProps.d.ts +1 -15
  571. package/types/helpers/mergeProps.d.ts.map +1 -1
  572. package/types/helpers/nativeOnlyProps.d.ts +0 -1
  573. package/types/helpers/nativeOnlyProps.d.ts.map +1 -1
  574. package/types/helpers/nativeTextMetrics.d.ts +16 -0
  575. package/types/helpers/nativeTextMetrics.d.ts.map +1 -0
  576. package/types/helpers/normalizeColor.native.d.ts +4 -1
  577. package/types/helpers/normalizeColor.native.d.ts.map +1 -1
  578. package/types/helpers/normalizeShadow.native.d.ts +3 -1
  579. package/types/helpers/normalizeShadow.native.d.ts.map +1 -1
  580. package/types/helpers/normalizeValueWithProperty.d.ts.map +1 -1
  581. package/types/helpers/{parseNativeStyle.native.d.ts → parseNativeStyle.d.ts} +1 -1
  582. package/types/helpers/parseNativeStyle.d.ts.map +1 -0
  583. package/types/helpers/proxyThemeToParents.d.ts +1 -1
  584. package/types/helpers/proxyThemeToParents.d.ts.map +1 -1
  585. package/types/helpers/resolveNativeUnits.d.ts +6 -0
  586. package/types/helpers/resolveNativeUnits.d.ts.map +1 -0
  587. package/types/helpers/resolveNativeUnits.native.d.ts +16 -0
  588. package/types/helpers/resolveNativeUnits.native.d.ts.map +1 -0
  589. package/types/helpers/resolveRem.native.d.ts +6 -4
  590. package/types/helpers/resolveRem.native.d.ts.map +1 -1
  591. package/types/helpers/resolveSizing.d.ts +90 -0
  592. package/types/helpers/resolveSizing.d.ts.map +1 -0
  593. package/types/helpers/resolveVariableValue.d.ts.map +1 -1
  594. package/types/helpers/skipProps.d.ts +0 -1
  595. package/types/helpers/skipProps.d.ts.map +1 -1
  596. package/types/helpers/styleFrontend.d.ts +21 -0
  597. package/types/helpers/styleFrontend.d.ts.map +1 -1
  598. package/types/helpers/styleProvenance.d.ts +1 -1
  599. package/types/helpers/styleProvenance.d.ts.map +1 -1
  600. package/types/helpers/styleStaticConfigCore.d.ts.map +1 -1
  601. package/types/helpers/styledDynamic.d.ts +1 -1
  602. package/types/helpers/styledDynamic.d.ts.map +1 -1
  603. package/types/helpers/themes.d.ts +4 -0
  604. package/types/helpers/themes.d.ts.map +1 -1
  605. package/types/helpers/tokenCategories.d.ts +1 -1
  606. package/types/helpers/tokenCategories.d.ts.map +1 -1
  607. package/types/helpers/warnOnce.d.ts +1 -0
  608. package/types/helpers/warnOnce.d.ts.map +1 -1
  609. package/types/helpers/webPropsToSkip.native.d.ts +6 -2
  610. package/types/helpers/webPropsToSkip.native.d.ts.map +1 -1
  611. package/types/helpers/wrapStyleTags.d.ts.map +1 -1
  612. package/types/hooks/useMedia.d.ts +5 -2
  613. package/types/hooks/useMedia.d.ts.map +1 -1
  614. package/types/hooks/useSplitStyles.d.ts.map +1 -1
  615. package/types/hooks/useThemeState.d.ts.map +1 -1
  616. package/types/index.d.ts +4 -1
  617. package/types/index.d.ts.map +1 -1
  618. package/types/interfaces/RNExclusiveTypes.d.ts +2 -3
  619. package/types/interfaces/RNExclusiveTypes.d.ts.map +1 -1
  620. package/types/internal-runtime.d.ts +12 -1
  621. package/types/internal-runtime.d.ts.map +1 -1
  622. package/types/style.d.ts.map +1 -1
  623. package/types/styled.d.ts +7 -4
  624. package/types/styled.d.ts.map +1 -1
  625. package/types/types.d.ts +258 -102
  626. package/types/types.d.ts.map +1 -1
  627. package/types/views/Theme.d.ts.map +1 -1
  628. package/dist/cjs/helpers/timer.native.js.map +0 -1
  629. package/dist/esm/helpers/timer.mjs +0 -13
  630. package/dist/esm/helpers/timer.mjs.map +0 -1
  631. package/dist/esm/helpers/timer.native.js +0 -13
  632. package/dist/esm/helpers/timer.native.js.map +0 -1
  633. package/src/helpers/timer.ts +0 -9
  634. package/types/helpers/parseNativeStyle.native.d.ts.map +0 -1
  635. package/types/helpers/timer.d.ts +0 -2
  636. package/types/helpers/timer.d.ts.map +0 -1
@@ -1,21 +1,31 @@
1
1
  import type { Properties } from 'csstype'
2
2
 
3
+ export type UnprefixedCSSProperties<Length = string | number> = Omit<
4
+ Properties<Length>,
5
+ `${'Webkit' | 'Moz' | 'ms'}${string}`
6
+ >
7
+
3
8
  /**
4
- * The style grammar `style()` accepts, owned by Tamagui rather than borrowed
9
+ * The web style contract: the style grammar `style()` accepts and the surface
10
+ * every `html.*` tag is typed against, owned by Tamagui rather than borrowed
5
11
  * from react-native.
6
12
  *
7
13
  * `@tamagui/core/dom` is the one entry that must typecheck in a project with no
8
14
  * react-native installed, so nothing here may reference it. The regular
9
- * `View`/`Text` props still come from react-native's `ViewStyle`/`TextStyle`;
10
- * this is a parallel definition of the same property set, not a replacement for
11
- * those.
15
+ * `View`/`Text` props combine react-native's style types with the canonical CSS
16
+ * properties (see `StackStyleBase` / `TextStylePropsBase` in `../types`). This
17
+ * entry uses the same CSS properties with its own native-free overrides.
12
18
  *
13
- * `styleTypes.test-d.ts` holds it to that: it runs where react-native *is*
14
- * available and asserts, at the type level, that this key set is exactly the key
15
- * set of `StackStyleBase & TextStylePropsBase`, that every react-native
16
- * `ViewStyle`/`TextStyle` key appears here, and that every value the regular
17
- * props accept is accepted here too. Add a property to `types.tsx` without
18
- * adding it here and that test goes red.
19
+ * The react-native-only keys (`elevation`, `marginHorizontal`,
20
+ * `marginVertical`, `paddingHorizontal`, `paddingVertical`, the `shadow*`
21
+ * longhands, `textAlignVertical`, `includeFontPadding`, `writingDirection`)
22
+ * are absent here rather than deprecated: on web their replacements
23
+ * (`boxShadow`, the logical box props, `direction`, `verticalAlign`) are the
24
+ * contract. `styleTypes.test-d.ts` holds this to that: it runs where
25
+ * react-native *is* available and asserts, at the type level, that this key
26
+ * set is exactly the key set of `StackStyleBase & TextStylePropsBase` minus
27
+ * those keys, and that every value the regular props accept is accepted here
28
+ * too.
19
29
  *
20
30
  * Three value forms are deliberately absent, because they only exist at runtime
21
31
  * and `style()` is resolved by the compiler:
@@ -32,16 +42,16 @@ import type { Properties } from 'csstype'
32
42
  */
33
43
 
34
44
  /** a length, a percentage, or `auto` — react-native's `DimensionValue` */
35
- type DimensionValue = number | 'auto' | `${number}%` | null
45
+ type DimensionValue = number | string | null
36
46
 
37
47
  /** a color: a theme or token name, a CSS color, or a clause like `'a hover:b'` */
38
- type ColorValue = string
48
+ type ColorValue = string | number | null
39
49
 
40
50
  /**
41
51
  * `color` and `outlineColor` also take the theme-value fallbacks, which include
42
52
  * a bare number.
43
53
  */
44
- type ThemeColorValue = string | number
54
+ type ThemeColorValue = ColorValue
45
55
 
46
56
  /** a size token name, a CSS length, or `true` for the token named `true` */
47
57
  type SizeValue = number | string | true
@@ -51,7 +61,7 @@ type SpaceValue = number | string | true
51
61
 
52
62
  type FlexAlignType = 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'
53
63
 
54
- type BorderStyleValue = 'solid' | 'dotted' | 'dashed'
64
+ type BorderStyleValue = 'solid' | 'dotted' | 'dashed' | 'none' | 'hidden'
55
65
 
56
66
  type FontVariantValue =
57
67
  | 'small-caps'
@@ -141,15 +151,16 @@ interface TransformFunctions {
141
151
  scale: number
142
152
  scaleX: number
143
153
  scaleY: number
144
- translateX: number | `${number}%`
145
- translateY: number | `${number}%`
154
+ translate: readonly [number | string, number | string]
155
+ translateX: number | string
156
+ translateY: number | string
146
157
  skewX: string
147
158
  skewY: string
148
- matrix: number[]
159
+ matrix: readonly number[]
149
160
  }
150
161
 
151
162
  type TransformFunction = {
152
- [K in keyof TransformFunctions]: Pick<TransformFunctions, K> &
163
+ [K in keyof TransformFunctions]: Partial<Pick<TransformFunctions, K>> &
153
164
  Partial<Record<Exclude<keyof TransformFunctions, K>, undefined>>
154
165
  }[keyof TransformFunctions]
155
166
 
@@ -184,7 +195,17 @@ interface LayoutStyle {
184
195
  columnGap?: number | string
185
196
  direction?: 'inherit' | 'ltr' | 'rtl'
186
197
  /** extends react-native's `display` with the web values */
187
- display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex'
198
+ display?:
199
+ | 'inherit'
200
+ | 'none'
201
+ | 'inline'
202
+ | 'block'
203
+ | 'inline-block'
204
+ | 'contents'
205
+ | 'flex'
206
+ | 'inline-flex'
207
+ | 'grid'
208
+ | 'inline-grid'
188
209
  end?: DimensionValue
189
210
  flex?: number
190
211
  flexBasis?: DimensionValue
@@ -205,26 +226,22 @@ interface LayoutStyle {
205
226
  margin?: DimensionValue
206
227
  marginBottom?: DimensionValue
207
228
  marginEnd?: DimensionValue
208
- marginHorizontal?: DimensionValue
209
229
  marginLeft?: DimensionValue
210
230
  marginRight?: DimensionValue
211
231
  marginStart?: DimensionValue
212
232
  marginTop?: DimensionValue
213
- marginVertical?: DimensionValue
214
233
  maxHeight?: DimensionValue
215
234
  maxWidth?: DimensionValue
216
235
  minHeight?: DimensionValue
217
236
  minWidth?: DimensionValue
218
- overflow?: 'visible' | 'hidden' | 'scroll'
237
+ overflow?: 'visible' | 'hidden' | 'scroll' | 'auto' | 'clip'
219
238
  padding?: DimensionValue
220
239
  paddingBottom?: DimensionValue
221
240
  paddingEnd?: DimensionValue
222
- paddingHorizontal?: DimensionValue
223
241
  paddingLeft?: DimensionValue
224
242
  paddingRight?: DimensionValue
225
243
  paddingStart?: DimensionValue
226
244
  paddingTop?: DimensionValue
227
- paddingVertical?: DimensionValue
228
245
  /** extends react-native's `position` with the web values */
229
246
  position?: 'absolute' | 'relative' | 'fixed' | 'static' | 'sticky'
230
247
  right?: DimensionValue
@@ -349,7 +366,6 @@ interface PaintStyle {
349
366
  boxShadow?: ShorthandString
350
367
  caretColor?: Properties['caretColor']
351
368
  clipPath?: Properties['clipPath']
352
- elevation?: number
353
369
  experimental_backgroundImage?: string | readonly BackgroundImageValue[]
354
370
  experimental_backgroundSize?: string | readonly BackgroundSizeValue[]
355
371
  experimental_backgroundPosition?: string | readonly RadialGradientPosition[]
@@ -375,10 +391,6 @@ interface PaintStyle {
375
391
  | 'luminosity'
376
392
  | 'plus-lighter'
377
393
  opacity?: number
378
- shadowColor?: ColorValue
379
- shadowOffset?: Readonly<{ width: number; height: number }>
380
- shadowOpacity?: number
381
- shadowRadius?: number
382
394
  visibility?: Properties['visibility']
383
395
  }
384
396
 
@@ -432,7 +444,8 @@ interface TextStyle {
432
444
  fontFamily?: string
433
445
  fontSize?: number
434
446
  fontStyle?: 'normal' | 'italic'
435
- fontVariant?: FontVariantValue[]
447
+ // readonly so an `as const` style literal still assigns (#2787)
448
+ fontVariant?: readonly FontVariantValue[]
436
449
  fontWeight?:
437
450
  | 'normal'
438
451
  | 'bold'
@@ -464,17 +477,15 @@ interface TextStyle {
464
477
  | 'condensed'
465
478
  | 'heavy'
466
479
  | 'black'
467
- includeFontPadding?: boolean
468
480
  letterSpacing?: number
469
- lineHeight?: number
481
+ lineHeight?: number | Px | `${number}`
470
482
  numberOfLines?: number
471
- textAlign?: 'auto' | 'left' | 'right' | 'center' | 'justify'
472
- textAlignVertical?: 'auto' | 'top' | 'bottom' | 'center'
483
+ textAlign?: 'auto' | 'left' | 'right' | 'center' | 'justify' | 'start' | 'end'
473
484
  textDecoration?: ShorthandString
474
485
  textDecorationColor?: ColorValue
475
486
  textDecorationDistance?: number
476
487
  textDecorationLine?: 'none' | 'underline' | 'line-through' | 'underline line-through'
477
- textDecorationStyle?: 'solid' | 'double' | 'dotted' | 'dashed'
488
+ textDecorationStyle?: 'solid' | 'double' | 'dotted' | 'dashed' | 'wavy'
478
489
  textEmphasis?: Properties['textEmphasis']
479
490
  textOverflow?: Properties['textOverflow']
480
491
  textShadow?: ShorthandString
@@ -486,7 +497,6 @@ interface TextStyle {
486
497
  verticalAlign?: Properties['verticalAlign']
487
498
  whiteSpace?: Properties['whiteSpace']
488
499
  wordWrap?: Properties['wordWrap']
489
- writingDirection?: 'auto' | 'ltr' | 'rtl'
490
500
  }
491
501
 
492
502
  /**
@@ -505,7 +515,7 @@ interface TransformStyle {
505
515
  scaleY?: number
506
516
  skewX?: string
507
517
  skewY?: string
508
- transform?: string | readonly TransformFunction[]
518
+ transform?: string | readonly (TransformFunction | undefined)[]
509
519
  transformOrigin?:
510
520
  | PxOrPct
511
521
  | 'left'
@@ -516,18 +526,10 @@ interface TransformStyle {
516
526
  | TwoValueTransformOrigin
517
527
  | `${TwoValueTransformOrigin} ${Px}`
518
528
  transformStyle?: Properties['transformStyle']
519
- /** maps to `translateX` */
520
- x?: number
521
- /** maps to `translateY` */
522
- y?: number
523
- /** @deprecated use `matrix` in `transform` */
524
- transformMatrix?: number[]
525
- /** @deprecated use `rotate` */
526
- rotation?: number
527
- /** @deprecated use `x` */
528
- translateX?: number
529
- /** @deprecated use `y` */
530
- translateY?: number
529
+ /** maps to `translateX`; a percent string is relative to the element's own width */
530
+ x?: number | `${number}%`
531
+ /** maps to `translateY`; a percent string is relative to the element's own height */
532
+ y?: number | `${number}%`
531
533
  }
532
534
 
533
535
  /**
@@ -551,58 +553,41 @@ interface WebStyle {
551
553
  userSelect?: Properties['userSelect']
552
554
  }
553
555
 
556
+ /** low-level spring physics, for porting an already-tuned config */
554
557
  type TransitionSpringConfig = {
555
558
  stiffness?: number
556
559
  damping?: number
557
560
  mass?: number
558
- tension?: number
559
- friction?: number
560
561
  velocity?: number
561
562
  overshootClamping?: boolean
562
- duration?: number
563
- bounciness?: number
564
- speed?: number
563
+ restDisplacementThreshold?: number
564
+ restSpeedThreshold?: number
565
565
  }
566
566
 
567
- /** a configured driver animation name, or a CSS transition string like `'200ms'` */
567
+ /**
568
+ * A configured driver animation name, or a CSS transition string like `'200ms'`,
569
+ * `'200ms ease-out'`, or `'opacity 150ms, transform spring(300ms, 0.4)'`.
570
+ */
568
571
  type TransitionValue = string
569
572
 
573
+ type TransitionConfig = {
574
+ preset?: string
575
+ duration?: number | string
576
+ bounce?: number
577
+ easing?: string
578
+ delay?: number | string
579
+ behavior?: 'normal' | 'allow-discrete'
580
+ properties?: string
581
+ spring?: TransitionSpringConfig
582
+ enter?: TransitionProp
583
+ exit?: TransitionProp
584
+ }
585
+
570
586
  type TransitionProp =
571
587
  | TransitionValue
572
- | ({
573
- default?: TransitionValue
574
- enter?: TransitionValue
575
- exit?: TransitionValue
576
- delay?: number
577
- } & TransitionSpringConfig & {
578
- [key: string]:
579
- | TransitionValue
580
- | {
581
- type: TransitionValue
582
- [key: string]: any
583
- }
584
- | number
585
- | boolean
586
- | undefined
587
- })
588
- | [
589
- TransitionValue,
590
- {
591
- delay?: number
592
- enter?: TransitionValue
593
- exit?: TransitionValue
594
- } & TransitionSpringConfig & {
595
- [key: string]:
596
- | TransitionValue
597
- | {
598
- type?: TransitionValue
599
- [key: string]: any
600
- }
601
- | number
602
- | boolean
603
- | undefined
604
- },
605
- ]
588
+ | (TransitionConfig & {
589
+ [property: string]: TransitionValue | TransitionConfig | unknown
590
+ })
606
591
 
607
592
  /**
608
593
  * The animation props, which ride along with the style grammar because a
@@ -610,7 +595,6 @@ type TransitionProp =
610
595
  */
611
596
  interface AnimationStyle {
612
597
  transition?: TransitionProp | null
613
- animateOnly?: string[]
614
598
  animatePresence?: boolean
615
599
  onTransition?: (event: {
616
600
  phase: 'start' | 'end'
@@ -621,9 +605,9 @@ interface AnimationStyle {
621
605
  }
622
606
 
623
607
  /**
624
- * The whole style grammar `style()` accepts.
608
+ * the owned overrides in the web style grammar.
625
609
  */
626
- export interface TamaguiStyleProps
610
+ interface TamaguiStylePropsBase
627
611
  extends
628
612
  LayoutStyle,
629
613
  LogicalStyle,
@@ -635,3 +619,9 @@ export interface TamaguiStyleProps
635
619
  TransformStyle,
636
620
  WebStyle,
637
621
  AnimationStyle {}
622
+
623
+ /** the whole style grammar; container remains a component query prop. */
624
+ export interface TamaguiStyleProps
625
+ extends
626
+ TamaguiStylePropsBase,
627
+ Omit<UnprefixedCSSProperties, keyof TamaguiStylePropsBase | 'container'> {}
@@ -152,7 +152,46 @@ export function useEvents(
152
152
  // rngh path - hooks
153
153
  const callbacksRef = useRef<any>(isUsingRNGH ? {} : null)
154
154
  const gestureRef = useRef<any>(null)
155
+ // pairs pressIn with exactly one pressOut across the Manual observer's
156
+ // touchesDown/touchesUp/touchesCancelled/finalize channels. RNGH can drop a
157
+ // trailing touch event (the handler is re-attached to a new view mid-touch,
158
+ // or cancelled without a touch-cancel), and because the press state lives in
159
+ // the component's own state a dropped release latches the press look with no
160
+ // event left to clear it. Guarding here means a stray duplicate release is a
161
+ // no-op while a missing one is caught by onFinalize / the detach clear below.
162
+ const longPressTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null)
163
+ const longPressedRef = useRef(false)
164
+ const clearLongPress = () => {
165
+ if (longPressTimerRef.current) clearTimeout(longPressTimerRef.current)
166
+ longPressTimerRef.current = null
167
+ }
168
+ React.useEffect(() => clearLongPress, [])
169
+ const pressActiveRef = useRef(false)
170
+ const beginPress = (e?: any) => {
171
+ if (pressActiveRef.current) return
172
+ pressActiveRef.current = true
173
+ if (isInsideNativeMenu) {
174
+ clearLongPress()
175
+ longPressedRef.current = false
176
+ if (callbacksRef.current.onLongPress) {
177
+ longPressTimerRef.current = setTimeout(() => {
178
+ longPressTimerRef.current = null
179
+ longPressedRef.current = true
180
+ callbacksRef.current.onLongPress?.(e ?? {})
181
+ }, callbacksRef.current.delayLongPress ?? 500)
182
+ }
183
+ }
184
+ callbacksRef.current.onPressIn?.(e ?? {})
185
+ }
186
+ const endPress = (e?: any, firePress = false) => {
187
+ clearLongPress()
188
+ if (!pressActiveRef.current) return
189
+ pressActiveRef.current = false
190
+ if (firePress && !longPressedRef.current) callbacksRef.current.onPress?.(e ?? {})
191
+ callbacksRef.current.onPressOut?.(e ?? {})
192
+ }
155
193
 
194
+ // native menu triggers leave responder ownership to the adapter.
156
195
  // Real press handlers use the responder system for delivery even when RNGH
157
196
  // is configured. RNGH Tap begin/end ordering is not stable enough for
158
197
  // nested Tamagui press arbitration, and Fabric can mount a stale Tap that
@@ -164,9 +203,9 @@ export function useEvents(
164
203
  // freezes Android — see top-of-file isAndroid comment). Hook is called
165
204
  // unconditionally here for stable hooks order; useMainThreadPressEvents
166
205
  // no-ops when enabled is false.
167
- const useResponderFallback =
168
- !isInsideNativeMenu &&
169
- Boolean(hasRealPressEvents || (getIsAndroid() && hasPressEvents))
206
+ const useResponderFallback = Boolean(
207
+ !isInsideNativeMenu && (hasRealPressEvents || (getIsAndroid() && hasPressEvents))
208
+ )
170
209
  useMainThreadPressEvents(events, viewProps, useResponderFallback, debugName)
171
210
 
172
211
  if (everEnabled) {
@@ -177,6 +216,7 @@ export function useEvents(
177
216
  onPressOut: events.onPressOut,
178
217
  onPress: events.onPress,
179
218
  onLongPress: events.onLongPress,
219
+ delayLongPress: events.delayLongPress,
180
220
  }
181
221
  : {}
182
222
 
@@ -184,6 +224,10 @@ export function useEvents(
184
224
  // Real handlers are delivered by useMainThreadPressEvents above. Clear
185
225
  // any cached press-clause observer from an earlier render so it cannot
186
226
  // double-fire after onPress appears dynamically.
227
+ // No observer will run for this component after the swap, so an
228
+ // in-flight press from that observer is definitionally orphaned —
229
+ // release it before dropping the gesture.
230
+ endPress()
187
231
  gestureRef.current = null
188
232
  return null
189
233
  }
@@ -200,14 +244,16 @@ export function useEvents(
200
244
  .runOnJS(true)
201
245
  .manualActivation(true)
202
246
  .onTouchesDown(() => {
203
- callbacksRef.current.onPressIn?.({})
247
+ beginPress()
204
248
  })
205
249
  .onTouchesUp(() => {
206
- callbacksRef.current.onPress?.({})
207
- callbacksRef.current.onPressOut?.({})
250
+ endPress(undefined, true)
208
251
  })
209
252
  .onTouchesCancelled(() => {
210
- callbacksRef.current.onPressOut?.({})
253
+ endPress()
254
+ })
255
+ .onFinalize(() => {
256
+ endPress()
211
257
  })
212
258
  gestureRef.current = manual
213
259
  } else if (!getIsAndroid()) {
@@ -222,15 +268,19 @@ export function useEvents(
222
268
  //
223
269
  // Android: skipped — see isAndroid comment at top. Synthesized
224
270
  // press-clause handlers fall through to viewProps responder events.
271
+ //
272
+ // onFinalize is the safety net for a release RNGH never delivers as a
273
+ // touch event (handler cancelled/failed without a touch-cancel): it
274
+ // fires on the gesture's own end/cancel and clears the latch.
225
275
  gestureRef.current = Gesture.Manual()
226
276
  .runOnJS(true)
227
277
  .manualActivation(true)
228
- .onTouchesDown((e: any) => callbacksRef.current.onPressIn?.(e))
278
+ .onTouchesDown((e: any) => beginPress(e))
229
279
  .onTouchesUp((e: any) => {
230
- callbacksRef.current.onPress?.(e)
231
- callbacksRef.current.onPressOut?.(e)
280
+ endPress(e, true)
232
281
  })
233
- .onTouchesCancelled((e: any) => callbacksRef.current.onPressOut?.(e))
282
+ .onTouchesCancelled((e: any) => endPress(e))
283
+ .onFinalize(() => endPress())
234
284
  }
235
285
  }
236
286
  // TODO update viewProps.hitSlop / events.delayLongPress!
@@ -7,15 +7,30 @@ import type { TamaguiComponentEvents } from './interfaces/TamaguiComponentEvents
7
7
  type EventKeys = keyof TamaguiComponentEvents
8
8
  type EventLikeObject = { [key in EventKeys]?: any }
9
9
 
10
+ // a tap on a touch screen fires touchstart and touchend, then the browser's
11
+ // compatibility mousedown and mouseup for the same tap. press in and press out
12
+ // listen to both so a mouse presses too, so without this every press-in and
13
+ // press-out handler ran twice per tap (a toggle opened and closed again).
14
+ let lastTouch = -1e9
15
+
16
+ // a mouse event within a second of a touch is that compatibility echo
17
+ const pressFrom = (touch: boolean, handler?: (e: { timeStamp: number }) => void) =>
18
+ handler &&
19
+ ((e: { timeStamp: number }) => {
20
+ if (touch) lastTouch = e.timeStamp
21
+ else if (e.timeStamp - lastTouch < 1000) return
22
+ handler(e)
23
+ })
24
+
10
25
  export function getWebEvents<E extends EventLikeObject>(events: E, webStyle = true) {
11
26
  return {
12
27
  onMouseEnter: events.onMouseEnter,
13
28
  onMouseLeave: events.onMouseLeave,
14
29
  [webStyle ? 'onClick' : 'onPress']: events.onPress,
15
- onMouseDown: events.onPressIn,
16
- onMouseUp: events.onPressOut,
17
- onTouchStart: events.onPressIn,
18
- onTouchEnd: events.onPressOut,
30
+ onMouseDown: pressFrom(false, events.onPressIn),
31
+ onMouseUp: pressFrom(false, events.onPressOut),
32
+ onTouchStart: pressFrom(true, events.onPressIn),
33
+ onTouchEnd: pressFrom(true, events.onPressOut),
19
34
  onFocus: events.onFocus,
20
35
  onBlur: events.onBlur,
21
36
  }
@@ -0,0 +1,26 @@
1
+ import { createElement, type ReactElement } from 'react'
2
+ import type { AnimationDriverLike } from '../types'
3
+ import type { AnimatedTextChannel, NativeTextMetrics } from './nativeTextMetrics'
4
+
5
+ // only inherited animated text mounts this hook boundary; ordinary text keeps its host.
6
+ export function NativeTextBinding({
7
+ element,
8
+ useTextMetrics,
9
+ inheritedText,
10
+ lineHeight,
11
+ isInput,
12
+ }: {
13
+ element: ReactElement<any>
14
+ useTextMetrics: NonNullable<AnimationDriverLike['useTextMetrics']>
15
+ inheritedText: AnimatedTextChannel
16
+ lineHeight: NativeTextMetrics['lineHeight']
17
+ isInput?: boolean
18
+ }) {
19
+ const binding = useTextMetrics({ inheritedText, lineHeight })
20
+ if (!binding.style) return element
21
+ const Host = isInput ? binding.TextInput : binding.Text
22
+ return createElement(Host, {
23
+ ...element.props,
24
+ style: [element.props.style, binding.style],
25
+ })
26
+ }
@@ -7,6 +7,7 @@ import {
7
7
  variableToCSS,
8
8
  } from './registerCSSVariable'
9
9
  import { getConfigMaybe } from '../config'
10
+ import { htmlResetCSS } from '../dom/htmlReset'
10
11
  import { getThemeCSSRules } from './getThemeCSSRules'
11
12
  import { getAllRules, wrapStyleRules } from './insertStyleRule'
12
13
 
@@ -95,10 +96,13 @@ export function buildCSSRuleSets(
95
96
  ): string[] {
96
97
  if (!process.env.TAMAGUI_DID_OUTPUT_CSS) {
97
98
  const cssRuleSets: string[] = []
98
- const sep = ' '
99
+ const developmentWhitespace = process.env.NODE_ENV === 'development'
100
+ const sep = developmentWhitespace ? ' ' : ''
99
101
 
100
102
  function declarationsToRuleSet(decs: string[], selector = '') {
101
- return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}\n}`
103
+ return `:root${selector}${sep}{${sep}${[...decs].join(`;${sep}`)}${
104
+ developmentWhitespace ? '\n' : ''
105
+ }}`
102
106
  }
103
107
 
104
108
  // non-font tokens
@@ -129,7 +133,7 @@ export function buildCSSRuleSets(
129
133
  // These are defaults, so an atomic style prop must be able to override
130
134
  // them regardless of stylesheet insertion order.
131
135
  const sharedSelectors = `:where(${[...fontSelectors, '.is_View'].join(', ')})`
132
- cssRuleSets.push(`${sharedSelectors} {font-family: var(--f-family)}`)
136
+ cssRuleSets.push(`${sharedSelectors}${sep}{font-family:${sep}var(--f-family)}`)
133
137
  }
134
138
  }
135
139
 
@@ -233,18 +237,30 @@ const getStaticCSS = (
233
237
  ._hsb-y::-webkit-scrollbar:vertical { display: none !important; }
234
238
  ._hsb-x { scrollbar-width: none !important; }
235
239
  ._hsb-y { scrollbar-width: none !important; }`
236
- const pointerEventsCSS = `:root ._pe-boxonly>* {pointer-events:none;}
237
- :root ._pe-boxnone>* {pointer-events:auto;}`
240
+ const pointerEventsCSS = `:where(._pe-boxonly)>* {pointer-events:none;}
241
+ :where(._pe-boxnone)>* {pointer-events:auto;}`
238
242
 
239
- const designSystem = `._ovs-contain {overscroll-behavior:contain;}
240
- .t_unmounted .is_View, .t_unmounted .is_Text { transition: none !important; }
243
+ const baseDesignSystem = `._ovs-contain {overscroll-behavior:contain;}
244
+ .t_unmounted .is_View, .t_unmounted .is_Text, .t_unmounted .is_DOM { transition: none !important; }
241
245
  :where(.is_View) { display: flex; align-items: stretch; flex-direction: column; flex-basis: auto; box-sizing: border-box; min-height: 0; min-width: 0; flex-shrink: 0; }
242
246
  :where(.is_Text) { display: inline; box-sizing: border-box; word-wrap: break-word; white-space: pre-wrap; margin: 0; }
247
+ ${htmlResetCSS}
243
248
  @scope (.is_Text) to (.is_View) { :where(.is_Text) { white-space: inherit; word-wrap: inherit; } }
244
249
  ._dsp_contents {display:contents;}
245
250
  ._no_backdrop::backdrop {display: none;}
246
251
  ${pointerEventsCSS}
247
- ${hideScrollBarsCSS}
252
+ ${hideScrollBarsCSS}`
253
+ const designSystem = `${
254
+ process.env.NODE_ENV === 'production'
255
+ ? baseDesignSystem
256
+ .replaceAll(' {', '{')
257
+ .replaceAll('{ ', '{')
258
+ .replaceAll(': ', ':')
259
+ .replaceAll('; ', ';')
260
+ .replaceAll(';}', '}')
261
+ .replaceAll('\n', '')
262
+ : baseDesignSystem
263
+ }
248
264
  ${autoVarCSS}
249
265
  ${themeConfig.cssRuleSets.join(separator)}`
250
266