@tamagui/web 2.7.7 → 3.0.0-beta.643.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 (1630) hide show
  1. package/dist/cjs/Tamagui.cjs +45 -53
  2. package/dist/cjs/Tamagui.native.cjs +124 -0
  3. package/dist/cjs/Tamagui.native.js +94 -96
  4. package/dist/cjs/Tamagui.native.js.map +1 -1
  5. package/dist/cjs/_withNativeStyle.cjs +81 -0
  6. package/dist/cjs/_withNativeStyle.native.cjs +86 -0
  7. package/dist/cjs/_withNativeStyle.native.js +88 -0
  8. package/dist/cjs/_withNativeStyle.native.js.map +1 -0
  9. package/dist/cjs/_withStableStyle.cjs +59 -54
  10. package/dist/cjs/_withStableStyle.native.cjs +93 -0
  11. package/dist/cjs/_withStableStyle.native.js +70 -57
  12. package/dist/cjs/_withStableStyle.native.js.map +1 -1
  13. package/dist/cjs/config.cjs +120 -133
  14. package/dist/cjs/config.native.cjs +193 -0
  15. package/dist/cjs/config.native.js +157 -173
  16. package/dist/cjs/config.native.js.map +1 -1
  17. package/dist/cjs/constants/accessibilityDirectMap.cjs +19 -20
  18. package/dist/cjs/constants/accessibilityDirectMap.native.cjs +37 -0
  19. package/dist/cjs/constants/accessibilityDirectMap.native.js +19 -19
  20. package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
  21. package/dist/cjs/constants/constants.cjs +18 -19
  22. package/dist/cjs/constants/constants.native.cjs +41 -0
  23. package/dist/cjs/constants/constants.native.js +18 -18
  24. package/dist/cjs/constants/constants.native.js.map +1 -1
  25. package/dist/cjs/constants/isDevTools.cjs +21 -24
  26. package/dist/cjs/constants/isDevTools.native.cjs +34 -0
  27. package/dist/cjs/constants/isDevTools.native.js +23 -25
  28. package/dist/cjs/constants/isDevTools.native.js.map +1 -1
  29. package/dist/cjs/contexts/ComponentContext.cjs +32 -25
  30. package/dist/cjs/contexts/ComponentContext.native.cjs +50 -0
  31. package/dist/cjs/contexts/ComponentContext.native.js +33 -25
  32. package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
  33. package/dist/cjs/contexts/GroupContext.cjs +15 -18
  34. package/dist/cjs/contexts/GroupContext.native.cjs +28 -0
  35. package/dist/cjs/contexts/GroupContext.native.js +16 -18
  36. package/dist/cjs/contexts/GroupContext.native.js.map +1 -1
  37. package/dist/cjs/createComponent.cjs +967 -1017
  38. package/dist/cjs/createComponent.native.cjs +1144 -0
  39. package/dist/cjs/createComponent.native.js +1072 -994
  40. package/dist/cjs/createComponent.native.js.map +1 -1
  41. package/dist/cjs/createFont.cjs +41 -36
  42. package/dist/cjs/createFont.native.cjs +57 -0
  43. package/dist/cjs/createFont.native.js +44 -38
  44. package/dist/cjs/createFont.native.js.map +1 -1
  45. package/dist/cjs/createShorthands.cjs +16 -19
  46. package/dist/cjs/createShorthands.native.cjs +29 -0
  47. package/dist/cjs/createShorthands.native.js +16 -18
  48. package/dist/cjs/createShorthands.native.js.map +1 -1
  49. package/dist/cjs/createStyledHOC.cjs +55 -0
  50. package/dist/cjs/createStyledHOC.native.cjs +57 -0
  51. package/dist/cjs/createStyledHOC.native.js +59 -0
  52. package/dist/cjs/createStyledHOC.native.js.map +1 -0
  53. package/dist/cjs/createTamagui.cjs +269 -224
  54. package/dist/cjs/createTamagui.native.cjs +335 -0
  55. package/dist/cjs/createTamagui.native.js +302 -272
  56. package/dist/cjs/createTamagui.native.js.map +1 -1
  57. package/dist/cjs/createTokens.cjs +28 -19
  58. package/dist/cjs/createTokens.native.cjs +47 -0
  59. package/dist/cjs/createTokens.native.js +33 -19
  60. package/dist/cjs/createTokens.native.js.map +1 -1
  61. package/dist/cjs/createVariable.cjs +92 -86
  62. package/dist/cjs/createVariable.native.cjs +145 -0
  63. package/dist/cjs/createVariable.native.js +106 -100
  64. package/dist/cjs/createVariable.native.js.map +1 -1
  65. package/dist/cjs/createVariables.cjs +50 -60
  66. package/dist/cjs/createVariables.native.cjs +71 -0
  67. package/dist/cjs/createVariables.native.js +54 -64
  68. package/dist/cjs/createVariables.native.js.map +1 -1
  69. package/dist/cjs/defaultComponentState.cjs +29 -30
  70. package/dist/cjs/defaultComponentState.native.cjs +48 -0
  71. package/dist/cjs/defaultComponentState.native.js +29 -29
  72. package/dist/cjs/defaultComponentState.native.js.map +1 -1
  73. package/dist/cjs/dom/adapters.cjs +96 -0
  74. package/dist/cjs/dom/adapters.native.cjs +117 -0
  75. package/dist/cjs/dom/adapters.native.js +119 -0
  76. package/dist/cjs/dom/adapters.native.js.map +1 -0
  77. package/dist/cjs/dom/contract.cjs +17 -0
  78. package/dist/cjs/dom/contract.native.cjs +19 -0
  79. package/dist/cjs/dom/contract.native.js +21 -0
  80. package/dist/cjs/dom/contract.native.js.map +1 -0
  81. package/dist/cjs/dom/domEventProps.native.cjs +57 -0
  82. package/dist/cjs/dom/domEventProps.native.js +59 -0
  83. package/dist/cjs/dom/domEventProps.native.js.map +1 -0
  84. package/dist/cjs/dom/html.cjs +583 -0
  85. package/dist/cjs/dom/html.native.cjs +952 -0
  86. package/dist/cjs/dom/html.native.js +954 -0
  87. package/dist/cjs/dom/html.native.js.map +1 -0
  88. package/dist/cjs/dom/htmlRuntime.native.cjs +168 -0
  89. package/dist/cjs/dom/htmlRuntime.native.js +170 -0
  90. package/dist/cjs/dom/htmlRuntime.native.js.map +1 -0
  91. package/dist/cjs/dom/index.cjs +29 -0
  92. package/dist/cjs/dom/index.native.cjs +42 -0
  93. package/dist/cjs/dom/index.native.js +44 -0
  94. package/dist/cjs/dom/index.native.js.map +1 -0
  95. package/dist/cjs/dom/primitives.native.cjs +644 -0
  96. package/dist/cjs/dom/primitives.native.js +646 -0
  97. package/dist/cjs/dom/primitives.native.js.map +1 -0
  98. package/dist/cjs/dom/standalone.cjs +34 -0
  99. package/dist/cjs/dom/standalone.native.cjs +40 -0
  100. package/dist/cjs/dom/standalone.native.js +42 -0
  101. package/dist/cjs/dom/standalone.native.js.map +1 -0
  102. package/dist/cjs/dom/standaloneHtml.cjs +76 -0
  103. package/dist/cjs/dom/standaloneHtml.native.cjs +78 -0
  104. package/dist/cjs/dom/standaloneHtml.native.js +80 -0
  105. package/dist/cjs/dom/standaloneHtml.native.js.map +1 -0
  106. package/dist/cjs/dom/styleTypes.cjs +17 -0
  107. package/dist/cjs/dom/styleTypes.native.cjs +19 -0
  108. package/dist/cjs/dom/styleTypes.native.js +21 -0
  109. package/dist/cjs/dom/styleTypes.native.js.map +1 -0
  110. package/dist/cjs/eventDetails.cjs +39 -0
  111. package/dist/cjs/eventDetails.native.cjs +41 -0
  112. package/dist/cjs/eventDetails.native.js +43 -0
  113. package/dist/cjs/eventDetails.native.js.map +1 -0
  114. package/dist/cjs/eventHandling.cjs +30 -31
  115. package/dist/cjs/eventHandling.native.cjs +192 -0
  116. package/dist/cjs/eventHandling.native.js +159 -188
  117. package/dist/cjs/eventHandling.native.js.map +1 -1
  118. package/dist/cjs/helpers/componentDisplayName.cjs +35 -0
  119. package/dist/cjs/helpers/componentDisplayName.native.cjs +37 -0
  120. package/dist/cjs/helpers/componentDisplayName.native.js +39 -0
  121. package/dist/cjs/helpers/componentDisplayName.native.js.map +1 -0
  122. package/dist/cjs/helpers/consoleLog.native.cjs +31 -0
  123. package/dist/cjs/helpers/consoleLog.native.js +17 -17
  124. package/dist/cjs/helpers/consoleLog.native.js.map +1 -1
  125. package/dist/cjs/helpers/createDesignSystem.cjs +147 -150
  126. package/dist/cjs/helpers/createDesignSystem.native.cjs +196 -0
  127. package/dist/cjs/helpers/createDesignSystem.native.js +168 -205
  128. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
  129. package/dist/cjs/helpers/createStyledContext.cjs +73 -84
  130. package/dist/cjs/helpers/createStyledContext.native.cjs +97 -0
  131. package/dist/cjs/helpers/createStyledContext.native.js +78 -88
  132. package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
  133. package/dist/cjs/helpers/defaultAnimationDriver.cjs +29 -32
  134. package/dist/cjs/helpers/defaultAnimationDriver.native.cjs +60 -0
  135. package/dist/cjs/helpers/defaultAnimationDriver.native.js +46 -48
  136. package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -1
  137. package/dist/cjs/helpers/defaultOffset.cjs +17 -20
  138. package/dist/cjs/helpers/defaultOffset.native.cjs +30 -0
  139. package/dist/cjs/helpers/defaultOffset.native.js +17 -19
  140. package/dist/cjs/helpers/defaultOffset.native.js.map +1 -1
  141. package/dist/cjs/helpers/directStyle.cjs +940 -0
  142. package/dist/cjs/helpers/directStyle.native.cjs +1145 -0
  143. package/dist/cjs/helpers/directStyle.native.js +1147 -0
  144. package/dist/cjs/helpers/directStyle.native.js.map +1 -0
  145. package/dist/cjs/helpers/expandStyle.cjs +132 -84
  146. package/dist/cjs/helpers/expandStyle.native.cjs +186 -0
  147. package/dist/cjs/helpers/expandStyle.native.js +154 -124
  148. package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
  149. package/dist/cjs/helpers/expandStyles.cjs +22 -25
  150. package/dist/cjs/helpers/expandStyles.native.cjs +47 -0
  151. package/dist/cjs/helpers/expandStyles.native.js +29 -31
  152. package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
  153. package/dist/cjs/helpers/extractPseudoState.cjs +45 -0
  154. package/dist/cjs/helpers/extractPseudoState.native.cjs +48 -0
  155. package/dist/cjs/helpers/extractPseudoState.native.js +50 -0
  156. package/dist/cjs/helpers/extractPseudoState.native.js.map +1 -0
  157. package/dist/cjs/helpers/formatDiagnostic.cjs +69 -0
  158. package/dist/cjs/helpers/formatDiagnostic.native.cjs +78 -0
  159. package/dist/cjs/helpers/formatDiagnostic.native.js +80 -0
  160. package/dist/cjs/helpers/formatDiagnostic.native.js.map +1 -0
  161. package/dist/cjs/helpers/frontendProgram.cjs +44 -0
  162. package/dist/cjs/helpers/frontendProgram.native.cjs +50 -0
  163. package/dist/cjs/helpers/frontendProgram.native.js +52 -0
  164. package/dist/cjs/helpers/frontendProgram.native.js.map +1 -0
  165. package/dist/cjs/helpers/getCSSStylesAtomic.cjs +200 -190
  166. package/dist/cjs/helpers/getCSSStylesAtomic.native.cjs +38 -0
  167. package/dist/cjs/helpers/getCSSStylesAtomic.native.js +21 -19
  168. package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -1
  169. package/dist/cjs/helpers/getDefaultProps.cjs +15 -33
  170. package/dist/cjs/helpers/getDefaultProps.native.cjs +29 -0
  171. package/dist/cjs/helpers/getDefaultProps.native.js +17 -33
  172. package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -1
  173. package/dist/cjs/helpers/getDynamicVal.cjs +45 -52
  174. package/dist/cjs/helpers/getDynamicVal.native.cjs +68 -0
  175. package/dist/cjs/helpers/getDynamicVal.native.js +45 -51
  176. package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -1
  177. package/dist/cjs/helpers/getExpandedShorthands.cjs +17 -30
  178. package/dist/cjs/helpers/getExpandedShorthands.native.cjs +32 -0
  179. package/dist/cjs/helpers/getExpandedShorthands.native.js +18 -30
  180. package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -1
  181. package/dist/cjs/helpers/getFontLanguage.cjs +15 -18
  182. package/dist/cjs/helpers/getFontLanguage.native.cjs +29 -0
  183. package/dist/cjs/helpers/getFontLanguage.native.js +17 -19
  184. package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -1
  185. package/dist/cjs/helpers/getShorthandValue.cjs +17 -20
  186. package/dist/cjs/helpers/getShorthandValue.native.cjs +33 -0
  187. package/dist/cjs/helpers/getShorthandValue.native.js +19 -21
  188. package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -1
  189. package/dist/cjs/helpers/getSplitStyles.cjs +711 -894
  190. package/dist/cjs/helpers/getSplitStyles.native.cjs +845 -0
  191. package/dist/cjs/helpers/getSplitStyles.native.js +788 -926
  192. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
  193. package/dist/cjs/helpers/getThemeCSSRules.cjs +106 -109
  194. package/dist/cjs/helpers/getThemeCSSRules.native.cjs +29 -0
  195. package/dist/cjs/helpers/getThemeCSSRules.native.js +16 -18
  196. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
  197. package/dist/cjs/helpers/getVariantExtras.cjs +71 -69
  198. package/dist/cjs/helpers/getVariantExtras.native.cjs +90 -0
  199. package/dist/cjs/helpers/getVariantExtras.native.js +72 -69
  200. package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -1
  201. package/dist/cjs/helpers/grammarConfig.cjs +73 -0
  202. package/dist/cjs/helpers/grammarConfig.native.cjs +151 -0
  203. package/dist/cjs/helpers/grammarConfig.native.js +153 -0
  204. package/dist/cjs/helpers/grammarConfig.native.js.map +1 -0
  205. package/dist/cjs/helpers/insertStyleRule.cjs +249 -184
  206. package/dist/cjs/helpers/insertStyleRule.native.cjs +159 -0
  207. package/dist/cjs/helpers/insertStyleRule.native.js +120 -63
  208. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
  209. package/dist/cjs/helpers/isObj.cjs +23 -16
  210. package/dist/cjs/helpers/isObj.native.cjs +43 -0
  211. package/dist/cjs/helpers/isObj.native.js +27 -20
  212. package/dist/cjs/helpers/isObj.native.js.map +1 -1
  213. package/dist/cjs/helpers/isTamaguiComponent.cjs +18 -21
  214. package/dist/cjs/helpers/isTamaguiComponent.native.cjs +30 -0
  215. package/dist/cjs/helpers/isTamaguiComponent.native.js +18 -20
  216. package/dist/cjs/helpers/isTamaguiComponent.native.js.map +1 -1
  217. package/dist/cjs/helpers/isTamaguiElement.cjs +20 -28
  218. package/dist/cjs/helpers/isTamaguiElement.native.cjs +37 -0
  219. package/dist/cjs/helpers/isTamaguiElement.native.js +20 -27
  220. package/dist/cjs/helpers/isTamaguiElement.native.js.map +1 -1
  221. package/dist/cjs/helpers/log.cjs +24 -27
  222. package/dist/cjs/helpers/log.native.cjs +39 -0
  223. package/dist/cjs/helpers/log.native.js +25 -27
  224. package/dist/cjs/helpers/log.native.js.map +1 -1
  225. package/dist/cjs/helpers/mainThreadPressEvents.cjs +15 -18
  226. package/dist/cjs/helpers/mainThreadPressEvents.native.cjs +156 -0
  227. package/dist/cjs/helpers/mainThreadPressEvents.native.js +139 -142
  228. package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
  229. package/dist/cjs/helpers/matchMedia.cjs +22 -23
  230. package/dist/cjs/helpers/matchMedia.native.cjs +69 -0
  231. package/dist/cjs/helpers/matchMedia.native.js +50 -41
  232. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  233. package/dist/cjs/helpers/mediaObjectToString.cjs +35 -38
  234. package/dist/cjs/helpers/mediaObjectToString.native.cjs +53 -0
  235. package/dist/cjs/helpers/mediaObjectToString.native.js +38 -40
  236. package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -1
  237. package/dist/cjs/helpers/mediaState.cjs +23 -43
  238. package/dist/cjs/helpers/mediaState.native.cjs +41 -0
  239. package/dist/cjs/helpers/mediaState.native.js +26 -46
  240. package/dist/cjs/helpers/mediaState.native.js.map +1 -1
  241. package/dist/cjs/helpers/mergeProps.cjs +51 -63
  242. package/dist/cjs/helpers/mergeProps.native.cjs +69 -0
  243. package/dist/cjs/helpers/mergeProps.native.js +54 -70
  244. package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
  245. package/dist/cjs/helpers/mergeRenderElementProps.cjs +18 -23
  246. package/dist/cjs/helpers/mergeRenderElementProps.native.cjs +32 -0
  247. package/dist/cjs/helpers/mergeRenderElementProps.native.js +18 -22
  248. package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -1
  249. package/dist/cjs/helpers/mergeSlotStyleProps.cjs +35 -38
  250. package/dist/cjs/helpers/mergeSlotStyleProps.native.cjs +51 -0
  251. package/dist/cjs/helpers/mergeSlotStyleProps.native.js +35 -37
  252. package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -1
  253. package/dist/cjs/helpers/mergeVariants.cjs +52 -41
  254. package/dist/cjs/helpers/mergeVariants.native.cjs +66 -0
  255. package/dist/cjs/helpers/mergeVariants.native.js +54 -42
  256. package/dist/cjs/helpers/mergeVariants.native.js.map +1 -1
  257. package/dist/cjs/helpers/nativeOnlyProps.cjs +48 -51
  258. package/dist/cjs/helpers/nativeOnlyProps.native.cjs +61 -0
  259. package/dist/cjs/helpers/nativeOnlyProps.native.js +48 -50
  260. package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
  261. package/dist/cjs/helpers/nativeStyleEngine.cjs +209 -0
  262. package/dist/cjs/helpers/nativeStyleEngine.native.cjs +303 -0
  263. package/dist/cjs/helpers/nativeStyleEngine.native.js +305 -0
  264. package/dist/cjs/helpers/nativeStyleEngine.native.js.map +1 -0
  265. package/dist/cjs/helpers/nativeTransitionTarget.cjs +27 -0
  266. package/dist/cjs/helpers/nativeTransitionTarget.native.cjs +43 -0
  267. package/dist/cjs/helpers/nativeTransitionTarget.native.js +45 -0
  268. package/dist/cjs/helpers/nativeTransitionTarget.native.js.map +1 -0
  269. package/dist/cjs/helpers/normalizeColor.cjs +23 -35
  270. package/dist/cjs/helpers/normalizeColor.native.cjs +50 -0
  271. package/dist/cjs/helpers/normalizeColor.native.js +33 -34
  272. package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
  273. package/dist/cjs/helpers/normalizeShadow.cjs +26 -39
  274. package/dist/cjs/helpers/normalizeShadow.native.cjs +42 -0
  275. package/dist/cjs/helpers/normalizeShadow.native.js +27 -37
  276. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
  277. package/dist/cjs/helpers/normalizeStyle.cjs +45 -60
  278. package/dist/cjs/helpers/normalizeStyle.native.cjs +80 -0
  279. package/dist/cjs/helpers/normalizeStyle.native.js +63 -79
  280. package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -1
  281. package/dist/cjs/helpers/normalizeStylePropKeys.cjs +15 -18
  282. package/dist/cjs/helpers/normalizeStylePropKeys.native.cjs +38 -0
  283. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +25 -27
  284. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
  285. package/dist/cjs/helpers/normalizeValueWithProperty.cjs +42 -39
  286. package/dist/cjs/helpers/normalizeValueWithProperty.native.cjs +64 -0
  287. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +45 -42
  288. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
  289. package/dist/cjs/helpers/noteOnce.cjs +32 -0
  290. package/dist/cjs/helpers/noteOnce.native.cjs +34 -0
  291. package/dist/cjs/helpers/noteOnce.native.js +36 -0
  292. package/dist/cjs/helpers/noteOnce.native.js.map +1 -0
  293. package/dist/cjs/helpers/objectIdentityKey.cjs +31 -34
  294. package/dist/cjs/helpers/objectIdentityKey.native.cjs +49 -0
  295. package/dist/cjs/helpers/objectIdentityKey.native.js +34 -37
  296. package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
  297. package/dist/cjs/helpers/parseBorderShorthand.cjs +16 -19
  298. package/dist/cjs/helpers/parseBorderShorthand.native.cjs +97 -0
  299. package/dist/cjs/helpers/parseBorderShorthand.native.js +84 -71
  300. package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -1
  301. package/dist/cjs/helpers/parseNativeStyle.native.cjs +205 -0
  302. package/dist/cjs/helpers/parseNativeStyle.native.js +182 -165
  303. package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
  304. package/dist/cjs/helpers/parseNativeTransform.native.cjs +68 -0
  305. package/dist/cjs/helpers/parseNativeTransform.native.js +70 -0
  306. package/dist/cjs/helpers/parseNativeTransform.native.js.map +1 -0
  307. package/dist/cjs/helpers/parseOutlineShorthand.cjs +16 -19
  308. package/dist/cjs/helpers/parseOutlineShorthand.native.cjs +85 -0
  309. package/dist/cjs/helpers/parseOutlineShorthand.native.js +72 -65
  310. package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -1
  311. package/dist/cjs/helpers/pointerEvents.cjs +15 -18
  312. package/dist/cjs/helpers/pointerEvents.native.cjs +132 -0
  313. package/dist/cjs/helpers/pointerEvents.native.js +117 -144
  314. package/dist/cjs/helpers/pointerEvents.native.js.map +1 -1
  315. package/dist/cjs/helpers/propMapper.cjs +338 -252
  316. package/dist/cjs/helpers/propMapper.native.cjs +506 -0
  317. package/dist/cjs/helpers/propMapper.native.js +475 -348
  318. package/dist/cjs/helpers/propMapper.native.js.map +1 -1
  319. package/dist/cjs/helpers/proxyThemeToParents.cjs +40 -47
  320. package/dist/cjs/helpers/proxyThemeToParents.native.cjs +143 -0
  321. package/dist/cjs/helpers/proxyThemeToParents.native.js +125 -141
  322. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
  323. package/dist/cjs/helpers/registerCSSVariable.cjs +106 -60
  324. package/dist/cjs/helpers/registerCSSVariable.native.cjs +144 -0
  325. package/dist/cjs/helpers/registerCSSVariable.native.js +122 -61
  326. package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
  327. package/dist/cjs/helpers/resolveAnimationDriver.cjs +28 -26
  328. package/dist/cjs/helpers/resolveAnimationDriver.native.cjs +45 -0
  329. package/dist/cjs/helpers/resolveAnimationDriver.native.js +32 -26
  330. package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -1
  331. package/dist/cjs/helpers/resolveRem.cjs +18 -19
  332. package/dist/cjs/helpers/resolveRem.native.cjs +57 -0
  333. package/dist/cjs/helpers/resolveRem.native.js +37 -37
  334. package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
  335. package/dist/cjs/helpers/resolveSafeArea.cjs +114 -23
  336. package/dist/cjs/helpers/resolveSafeArea.native.cjs +130 -0
  337. package/dist/cjs/helpers/resolveSafeArea.native.js +115 -29
  338. package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -1
  339. package/dist/cjs/helpers/resolveSafeAreaVariable.cjs +34 -0
  340. package/dist/cjs/helpers/resolveSafeAreaVariable.native.cjs +52 -0
  341. package/dist/cjs/helpers/resolveSafeAreaVariable.native.js +54 -0
  342. package/dist/cjs/helpers/resolveSafeAreaVariable.native.js.map +1 -0
  343. package/dist/cjs/helpers/resolveVariableValue.cjs +35 -0
  344. package/dist/cjs/helpers/resolveVariableValue.native.cjs +39 -0
  345. package/dist/cjs/helpers/resolveVariableValue.native.js +41 -0
  346. package/dist/cjs/helpers/resolveVariableValue.native.js.map +1 -0
  347. package/dist/cjs/helpers/setElementProps.cjs +17 -20
  348. package/dist/cjs/helpers/setElementProps.native.cjs +35 -0
  349. package/dist/cjs/helpers/setElementProps.native.js +22 -24
  350. package/dist/cjs/helpers/setElementProps.native.js.map +1 -1
  351. package/dist/cjs/helpers/skipProps.cjs +31 -31
  352. package/dist/cjs/helpers/skipProps.native.cjs +48 -0
  353. package/dist/cjs/helpers/skipProps.native.js +31 -30
  354. package/dist/cjs/helpers/skipProps.native.js.map +1 -1
  355. package/dist/cjs/helpers/sortString.cjs +15 -18
  356. package/dist/cjs/helpers/sortString.native.cjs +29 -0
  357. package/dist/cjs/helpers/sortString.native.js +17 -19
  358. package/dist/cjs/helpers/sortString.native.js.map +1 -1
  359. package/dist/cjs/helpers/styleFrontend.cjs +31 -0
  360. package/dist/cjs/helpers/styleFrontend.native.cjs +35 -0
  361. package/dist/cjs/helpers/styleFrontend.native.js +37 -0
  362. package/dist/cjs/helpers/styleFrontend.native.js.map +1 -0
  363. package/dist/cjs/helpers/styleOriginalValues.cjs +15 -18
  364. package/dist/cjs/helpers/styleOriginalValues.native.cjs +27 -0
  365. package/dist/cjs/helpers/styleOriginalValues.native.js +16 -18
  366. package/dist/cjs/helpers/styleOriginalValues.native.js.map +1 -1
  367. package/dist/cjs/helpers/styleProvenance.cjs +26 -27
  368. package/dist/cjs/helpers/styleProvenance.native.cjs +44 -0
  369. package/dist/cjs/helpers/styleProvenance.native.js +26 -26
  370. package/dist/cjs/helpers/styleProvenance.native.js.map +1 -1
  371. package/dist/cjs/helpers/subscribeToContextGroup.cjs +77 -96
  372. package/dist/cjs/helpers/subscribeToContextGroup.native.cjs +133 -0
  373. package/dist/cjs/helpers/subscribeToContextGroup.native.js +118 -140
  374. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
  375. package/dist/cjs/helpers/themeRef.cjs +42 -0
  376. package/dist/cjs/helpers/themeRef.native.cjs +48 -0
  377. package/dist/cjs/helpers/themeRef.native.js +50 -0
  378. package/dist/cjs/helpers/themeRef.native.js.map +1 -0
  379. package/dist/cjs/helpers/themeable.cjs +76 -97
  380. package/dist/cjs/helpers/themeable.native.cjs +96 -0
  381. package/dist/cjs/helpers/themeable.native.js +76 -97
  382. package/dist/cjs/helpers/themeable.native.js.map +1 -1
  383. package/dist/cjs/helpers/themes.cjs +30 -34
  384. package/dist/cjs/helpers/themes.native.cjs +44 -0
  385. package/dist/cjs/helpers/themes.native.js +30 -33
  386. package/dist/cjs/helpers/themes.native.js.map +1 -1
  387. package/dist/cjs/helpers/timer.cjs +16 -21
  388. package/dist/cjs/helpers/timer.native.cjs +31 -0
  389. package/dist/cjs/helpers/timer.native.js +18 -22
  390. package/dist/cjs/helpers/timer.native.js.map +1 -1
  391. package/dist/cjs/helpers/tokenCategories.cjs +103 -0
  392. package/dist/cjs/helpers/tokenCategories.native.cjs +107 -0
  393. package/dist/cjs/helpers/tokenCategories.native.js +109 -0
  394. package/dist/cjs/helpers/tokenCategories.native.js.map +1 -0
  395. package/dist/cjs/helpers/transformsToString.cjs +25 -31
  396. package/dist/cjs/helpers/transformsToString.native.cjs +56 -0
  397. package/dist/cjs/helpers/transformsToString.native.js +42 -30
  398. package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
  399. package/dist/cjs/helpers/useRenderElement.cjs +34 -39
  400. package/dist/cjs/helpers/useRenderElement.native.cjs +54 -0
  401. package/dist/cjs/helpers/useRenderElement.native.js +38 -42
  402. package/dist/cjs/helpers/useRenderElement.native.js.map +1 -1
  403. package/dist/cjs/helpers/variables.cjs +611 -0
  404. package/dist/cjs/helpers/variables.native.cjs +873 -0
  405. package/dist/cjs/helpers/variables.native.js +875 -0
  406. package/dist/cjs/helpers/variables.native.js.map +1 -0
  407. package/dist/cjs/helpers/warnOnce.cjs +38 -0
  408. package/dist/cjs/helpers/warnOnce.native.cjs +41 -0
  409. package/dist/cjs/helpers/warnOnce.native.js +43 -0
  410. package/dist/cjs/helpers/warnOnce.native.js.map +1 -0
  411. package/dist/cjs/helpers/webPropsToSkip.cjs +15 -18
  412. package/dist/cjs/helpers/webPropsToSkip.native.cjs +68 -0
  413. package/dist/cjs/helpers/webPropsToSkip.native.js +54 -62
  414. package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
  415. package/dist/cjs/helpers/wrapStyleTags.cjs +45 -48
  416. package/dist/cjs/helpers/wrapStyleTags.native.cjs +30 -0
  417. package/dist/cjs/helpers/wrapStyleTags.native.js +16 -17
  418. package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
  419. package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +16 -19
  420. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.cjs +32 -0
  421. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +17 -19
  422. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
  423. package/dist/cjs/hooks/getThemeProxied.cjs +61 -58
  424. package/dist/cjs/hooks/getThemeProxied.native.cjs +124 -0
  425. package/dist/cjs/hooks/getThemeProxied.native.js +98 -79
  426. package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
  427. package/dist/cjs/hooks/isOptimizedForFirstRender.cjs +28 -0
  428. package/dist/cjs/hooks/isOptimizedForFirstRender.native.cjs +30 -0
  429. package/dist/cjs/hooks/isOptimizedForFirstRender.native.js +32 -0
  430. package/dist/cjs/hooks/isOptimizedForFirstRender.native.js.map +1 -0
  431. package/dist/cjs/hooks/useAnimationDriver.cjs +46 -0
  432. package/dist/cjs/hooks/useAnimationDriver.native.cjs +54 -0
  433. package/dist/cjs/hooks/useAnimationDriver.native.js +56 -0
  434. package/dist/cjs/hooks/useAnimationDriver.native.js.map +1 -0
  435. package/dist/cjs/hooks/useComponentState.cjs +215 -199
  436. package/dist/cjs/hooks/useComponentState.native.cjs +250 -0
  437. package/dist/cjs/hooks/useComponentState.native.js +225 -208
  438. package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
  439. package/dist/cjs/hooks/useDisableSSR.cjs +16 -19
  440. package/dist/cjs/hooks/useDisableSSR.native.cjs +31 -0
  441. package/dist/cjs/hooks/useDisableSSR.native.js +17 -19
  442. package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -1
  443. package/dist/cjs/hooks/useIsTouchDevice.cjs +16 -19
  444. package/dist/cjs/hooks/useIsTouchDevice.native.cjs +31 -0
  445. package/dist/cjs/hooks/useIsTouchDevice.native.js +17 -19
  446. package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -1
  447. package/dist/cjs/hooks/useMedia.cjs +329 -256
  448. package/dist/cjs/hooks/useMedia.native.cjs +532 -0
  449. package/dist/cjs/hooks/useMedia.native.js +481 -305
  450. package/dist/cjs/hooks/useMedia.native.js.map +1 -1
  451. package/dist/cjs/hooks/usePortalThemeState.cjs +41 -0
  452. package/dist/cjs/hooks/usePortalThemeState.native.cjs +43 -0
  453. package/dist/cjs/hooks/usePortalThemeState.native.js +45 -0
  454. package/dist/cjs/hooks/usePortalThemeState.native.js.map +1 -0
  455. package/dist/cjs/hooks/useProps.cjs +96 -88
  456. package/dist/cjs/hooks/useProps.native.cjs +134 -0
  457. package/dist/cjs/hooks/useProps.native.js +100 -89
  458. package/dist/cjs/hooks/useProps.native.js.map +1 -1
  459. package/dist/cjs/hooks/useTheme.cjs +41 -49
  460. package/dist/cjs/hooks/useTheme.native.cjs +65 -0
  461. package/dist/cjs/hooks/useTheme.native.js +44 -52
  462. package/dist/cjs/hooks/useTheme.native.js.map +1 -1
  463. package/dist/cjs/hooks/useThemeName.cjs +20 -25
  464. package/dist/cjs/hooks/useThemeName.native.cjs +39 -0
  465. package/dist/cjs/hooks/useThemeName.native.js +23 -27
  466. package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
  467. package/dist/cjs/hooks/useThemeState.cjs +347 -364
  468. package/dist/cjs/hooks/useThemeState.native.cjs +442 -0
  469. package/dist/cjs/hooks/useThemeState.native.js +394 -473
  470. package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
  471. package/dist/cjs/index.cjs +62 -45
  472. package/dist/cjs/index.native.cjs +144 -0
  473. package/dist/cjs/index.native.js +62 -44
  474. package/dist/cjs/index.native.js.map +1 -1
  475. package/dist/cjs/inject-styles.cjs +25 -31
  476. package/dist/cjs/inject-styles.native.cjs +39 -0
  477. package/dist/cjs/inject-styles.native.js +26 -31
  478. package/dist/cjs/inject-styles.native.js.map +1 -1
  479. package/dist/cjs/insertFont.cjs +61 -61
  480. package/dist/cjs/insertFont.native.cjs +79 -0
  481. package/dist/cjs/insertFont.native.js +54 -54
  482. package/dist/cjs/insertFont.native.js.map +1 -1
  483. package/dist/cjs/interfaces/CSSColorNames.cjs +167 -11
  484. package/dist/cjs/interfaces/CSSColorNames.native.cjs +176 -0
  485. package/dist/cjs/interfaces/CSSColorNames.native.js +167 -10
  486. package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -1
  487. package/dist/cjs/interfaces/GetRef.cjs +10 -11
  488. package/dist/cjs/interfaces/GetRef.native.cjs +19 -0
  489. package/dist/cjs/interfaces/GetRef.native.js +10 -10
  490. package/dist/cjs/interfaces/GetRef.native.js.map +1 -1
  491. package/dist/cjs/interfaces/RNExclusiveTypes.cjs +10 -11
  492. package/dist/cjs/interfaces/RNExclusiveTypes.native.cjs +19 -0
  493. package/dist/cjs/interfaces/RNExclusiveTypes.native.js +10 -10
  494. package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -1
  495. package/dist/cjs/interfaces/TamaguiComponentEvents.cjs +10 -11
  496. package/dist/cjs/interfaces/TamaguiComponentEvents.native.cjs +19 -0
  497. package/dist/cjs/interfaces/TamaguiComponentEvents.native.js +10 -10
  498. package/dist/cjs/interfaces/TamaguiComponentEvents.native.js.map +1 -1
  499. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.cjs +10 -11
  500. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.cjs +19 -0
  501. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js +10 -10
  502. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js.map +1 -1
  503. package/dist/cjs/internal-runtime.cjs +76 -0
  504. package/dist/cjs/internal-runtime.native.cjs +78 -0
  505. package/dist/cjs/internal-runtime.native.js +80 -0
  506. package/dist/cjs/internal-runtime.native.js.map +1 -0
  507. package/dist/cjs/internalRuntimeTypes.cjs +17 -0
  508. package/dist/cjs/internalRuntimeTypes.native.cjs +19 -0
  509. package/dist/cjs/internalRuntimeTypes.native.js +21 -0
  510. package/dist/cjs/internalRuntimeTypes.native.js.map +1 -0
  511. package/dist/cjs/setupHooks.cjs +17 -18
  512. package/dist/cjs/setupHooks.native.cjs +33 -0
  513. package/dist/cjs/setupHooks.native.js +17 -17
  514. package/dist/cjs/setupHooks.native.js.map +1 -1
  515. package/dist/cjs/setupReactNative.cjs +40 -41
  516. package/dist/cjs/setupReactNative.native.cjs +56 -0
  517. package/dist/cjs/setupReactNative.native.js +41 -41
  518. package/dist/cjs/setupReactNative.native.js.map +1 -1
  519. package/dist/cjs/styled.cjs +170 -141
  520. package/dist/cjs/styled.native.cjs +198 -0
  521. package/dist/cjs/styled.native.js +179 -144
  522. package/dist/cjs/styled.native.js.map +1 -1
  523. package/dist/cjs/type-utils.cjs +10 -11
  524. package/dist/cjs/type-utils.native.cjs +19 -0
  525. package/dist/cjs/type-utils.native.js +10 -10
  526. package/dist/cjs/type-utils.native.js.map +1 -1
  527. package/dist/cjs/types.cjs +40 -11
  528. package/dist/cjs/types.native.cjs +49 -0
  529. package/dist/cjs/types.native.js +40 -10
  530. package/dist/cjs/types.native.js.map +1 -1
  531. package/dist/cjs/views/ConfigRevisionCheck.cjs +69 -0
  532. package/dist/cjs/views/ConfigRevisionCheck.native.cjs +74 -0
  533. package/dist/cjs/views/ConfigRevisionCheck.native.js +76 -0
  534. package/dist/cjs/views/ConfigRevisionCheck.native.js.map +1 -0
  535. package/dist/cjs/views/Configuration.cjs +27 -35
  536. package/dist/cjs/views/Configuration.native.cjs +47 -0
  537. package/dist/cjs/views/Configuration.native.js +28 -35
  538. package/dist/cjs/views/Configuration.native.js.map +1 -1
  539. package/dist/cjs/views/FontLanguage.cjs +21 -29
  540. package/dist/cjs/views/FontLanguage.native.cjs +47 -0
  541. package/dist/cjs/views/FontLanguage.native.js +28 -38
  542. package/dist/cjs/views/FontLanguage.native.js.map +1 -1
  543. package/dist/cjs/views/SafeAreaTracker.cjs +33 -0
  544. package/dist/cjs/views/SafeAreaTracker.native.cjs +37 -0
  545. package/dist/cjs/views/SafeAreaTracker.native.js +39 -0
  546. package/dist/cjs/views/SafeAreaTracker.native.js.map +1 -0
  547. package/dist/cjs/views/Slot.cjs +52 -59
  548. package/dist/cjs/views/Slot.native.cjs +78 -0
  549. package/dist/cjs/views/Slot.native.js +53 -59
  550. package/dist/cjs/views/Slot.native.js.map +1 -1
  551. package/dist/cjs/views/TamaguiProvider.cjs +74 -75
  552. package/dist/cjs/views/TamaguiProvider.native.cjs +104 -0
  553. package/dist/cjs/views/TamaguiProvider.native.js +73 -75
  554. package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
  555. package/dist/cjs/views/TamaguiRoot.cjs +47 -61
  556. package/dist/cjs/views/TamaguiRoot.native.cjs +29 -0
  557. package/dist/cjs/views/TamaguiRoot.native.js +16 -18
  558. package/dist/cjs/views/TamaguiRoot.native.js.map +1 -1
  559. package/dist/cjs/views/Text.cjs +44 -46
  560. package/dist/cjs/views/Text.native.cjs +47 -0
  561. package/dist/cjs/views/Text.native.js +33 -37
  562. package/dist/cjs/views/Text.native.js.map +1 -1
  563. package/dist/cjs/views/Theme.cjs +141 -166
  564. package/dist/cjs/views/Theme.native.cjs +171 -0
  565. package/dist/cjs/views/Theme.native.js +138 -172
  566. package/dist/cjs/views/Theme.native.js.map +1 -1
  567. package/dist/cjs/views/ThemeDebug.cjs +77 -81
  568. package/dist/cjs/views/ThemeDebug.native.cjs +31 -0
  569. package/dist/cjs/views/ThemeDebug.native.js +17 -23
  570. package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
  571. package/dist/cjs/views/ThemeProvider.cjs +35 -39
  572. package/dist/cjs/views/ThemeProvider.native.cjs +44 -0
  573. package/dist/cjs/views/ThemeProvider.native.js +26 -28
  574. package/dist/cjs/views/ThemeProvider.native.js.map +1 -1
  575. package/dist/cjs/views/View.cjs +21 -19
  576. package/dist/cjs/views/View.native.cjs +37 -0
  577. package/dist/cjs/views/View.native.js +22 -19
  578. package/dist/cjs/views/View.native.js.map +1 -1
  579. package/dist/esm/Tamagui.mjs +27 -27
  580. package/dist/esm/Tamagui.mjs.map +1 -1
  581. package/dist/esm/Tamagui.native.js +76 -71
  582. package/dist/esm/Tamagui.native.js.map +1 -1
  583. package/dist/esm/_withNativeStyle.mjs +55 -0
  584. package/dist/esm/_withNativeStyle.mjs.map +1 -0
  585. package/dist/esm/_withNativeStyle.native.js +58 -0
  586. package/dist/esm/_withNativeStyle.native.js.map +1 -0
  587. package/dist/esm/_withStableStyle.mjs +44 -29
  588. package/dist/esm/_withStableStyle.mjs.map +1 -1
  589. package/dist/esm/_withStableStyle.native.js +55 -33
  590. package/dist/esm/_withStableStyle.native.js.map +1 -1
  591. package/dist/esm/config.mjs +90 -100
  592. package/dist/esm/config.mjs.map +1 -1
  593. package/dist/esm/config.native.js +115 -129
  594. package/dist/esm/config.native.js.map +1 -1
  595. package/dist/esm/constants/accessibilityDirectMap.mjs +1 -0
  596. package/dist/esm/constants/accessibilityDirectMap.mjs.map +1 -1
  597. package/dist/esm/constants/accessibilityDirectMap.native.js +1 -0
  598. package/dist/esm/constants/accessibilityDirectMap.native.js.map +1 -1
  599. package/dist/esm/constants/constants.mjs +1 -0
  600. package/dist/esm/constants/constants.mjs.map +1 -1
  601. package/dist/esm/constants/constants.native.js +1 -0
  602. package/dist/esm/constants/constants.native.js.map +1 -1
  603. package/dist/esm/constants/isDevTools.mjs +7 -6
  604. package/dist/esm/constants/isDevTools.mjs.map +1 -1
  605. package/dist/esm/constants/isDevTools.native.js +9 -8
  606. package/dist/esm/constants/isDevTools.native.js.map +1 -1
  607. package/dist/esm/contexts/ComponentContext.mjs +18 -8
  608. package/dist/esm/contexts/ComponentContext.mjs.map +1 -1
  609. package/dist/esm/contexts/ComponentContext.native.js +19 -9
  610. package/dist/esm/contexts/ComponentContext.native.js.map +1 -1
  611. package/dist/esm/contexts/GroupContext.mjs +2 -0
  612. package/dist/esm/contexts/GroupContext.mjs.map +1 -1
  613. package/dist/esm/contexts/GroupContext.native.js +3 -1
  614. package/dist/esm/contexts/GroupContext.native.js.map +1 -1
  615. package/dist/esm/createComponent.mjs +953 -988
  616. package/dist/esm/createComponent.mjs.map +1 -1
  617. package/dist/esm/createComponent.native.js +1061 -970
  618. package/dist/esm/createComponent.native.js.map +1 -1
  619. package/dist/esm/createFont.mjs +27 -18
  620. package/dist/esm/createFont.mjs.map +1 -1
  621. package/dist/esm/createFont.native.js +30 -21
  622. package/dist/esm/createFont.native.js.map +1 -1
  623. package/dist/esm/createShorthands.mjs +2 -1
  624. package/dist/esm/createShorthands.mjs.map +1 -1
  625. package/dist/esm/createShorthands.native.js +2 -1
  626. package/dist/esm/createShorthands.native.js.map +1 -1
  627. package/dist/esm/createStyledHOC.mjs +29 -0
  628. package/dist/esm/createStyledHOC.mjs.map +1 -0
  629. package/dist/esm/createStyledHOC.native.js +29 -0
  630. package/dist/esm/createStyledHOC.native.js.map +1 -0
  631. package/dist/esm/createTamagui.mjs +256 -207
  632. package/dist/esm/createTamagui.mjs.map +1 -1
  633. package/dist/esm/createTamagui.native.js +289 -255
  634. package/dist/esm/createTamagui.native.js.map +1 -1
  635. package/dist/esm/createTokens.mjs +15 -1
  636. package/dist/esm/createTokens.mjs.map +1 -1
  637. package/dist/esm/createTokens.native.js +20 -2
  638. package/dist/esm/createTokens.native.js.map +1 -1
  639. package/dist/esm/createVariable.mjs +69 -60
  640. package/dist/esm/createVariable.mjs.map +1 -1
  641. package/dist/esm/createVariable.native.js +83 -75
  642. package/dist/esm/createVariable.native.js.map +1 -1
  643. package/dist/esm/createVariables.mjs +37 -42
  644. package/dist/esm/createVariables.mjs.map +1 -1
  645. package/dist/esm/createVariables.native.js +41 -47
  646. package/dist/esm/createVariables.native.js.map +1 -1
  647. package/dist/esm/defaultComponentState.mjs +13 -12
  648. package/dist/esm/defaultComponentState.mjs.map +1 -1
  649. package/dist/esm/defaultComponentState.native.js +13 -12
  650. package/dist/esm/defaultComponentState.native.js.map +1 -1
  651. package/dist/esm/dom/adapters.mjs +67 -0
  652. package/dist/esm/dom/adapters.mjs.map +1 -0
  653. package/dist/esm/dom/adapters.native.js +86 -0
  654. package/dist/esm/dom/adapters.native.js.map +1 -0
  655. package/dist/esm/dom/contract.mjs +0 -0
  656. package/dist/esm/dom/contract.native.js +0 -0
  657. package/dist/esm/dom/domEventProps.native.js +34 -0
  658. package/dist/esm/dom/domEventProps.native.js.map +1 -0
  659. package/dist/esm/dom/html.mjs +563 -0
  660. package/dist/esm/dom/html.mjs.map +1 -0
  661. package/dist/esm/dom/html.native.js +930 -0
  662. package/dist/esm/dom/html.native.js.map +1 -0
  663. package/dist/esm/dom/htmlRuntime.native.js +143 -0
  664. package/dist/esm/dom/htmlRuntime.native.js.map +1 -0
  665. package/dist/esm/dom/index.mjs +4 -0
  666. package/dist/esm/dom/index.native.js +5 -0
  667. package/dist/esm/dom/primitives.native.js +610 -0
  668. package/dist/esm/dom/primitives.native.js.map +1 -0
  669. package/dist/esm/dom/standalone.mjs +10 -0
  670. package/dist/esm/dom/standalone.mjs.map +1 -0
  671. package/dist/esm/dom/standalone.native.js +14 -0
  672. package/dist/esm/dom/standalone.native.js.map +1 -0
  673. package/dist/esm/dom/standaloneHtml.mjs +56 -0
  674. package/dist/esm/dom/standaloneHtml.mjs.map +1 -0
  675. package/dist/esm/dom/standaloneHtml.native.js +56 -0
  676. package/dist/esm/dom/standaloneHtml.native.js.map +1 -0
  677. package/dist/esm/dom/styleTypes.mjs +0 -0
  678. package/dist/esm/dom/styleTypes.native.js +0 -0
  679. package/dist/esm/eventDetails.mjs +18 -0
  680. package/dist/esm/eventDetails.mjs.map +1 -0
  681. package/dist/esm/eventDetails.native.js +18 -0
  682. package/dist/esm/eventDetails.native.js.map +1 -0
  683. package/dist/esm/eventHandling.mjs +14 -13
  684. package/dist/esm/eventHandling.mjs.map +1 -1
  685. package/dist/esm/eventHandling.native.js +141 -163
  686. package/dist/esm/eventHandling.native.js.map +1 -1
  687. package/dist/esm/helpers/componentDisplayName.mjs +11 -0
  688. package/dist/esm/helpers/componentDisplayName.mjs.map +1 -0
  689. package/dist/esm/helpers/componentDisplayName.native.js +11 -0
  690. package/dist/esm/helpers/componentDisplayName.native.js.map +1 -0
  691. package/dist/esm/helpers/consoleLog.native.js +2 -1
  692. package/dist/esm/helpers/consoleLog.native.js.map +1 -1
  693. package/dist/esm/helpers/createDesignSystem.mjs +133 -132
  694. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
  695. package/dist/esm/helpers/createDesignSystem.native.js +151 -186
  696. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
  697. package/dist/esm/helpers/createStyledContext.mjs +57 -58
  698. package/dist/esm/helpers/createStyledContext.mjs.map +1 -1
  699. package/dist/esm/helpers/createStyledContext.native.js +62 -63
  700. package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
  701. package/dist/esm/helpers/defaultAnimationDriver.mjs +15 -14
  702. package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -1
  703. package/dist/esm/helpers/defaultAnimationDriver.native.js +32 -31
  704. package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -1
  705. package/dist/esm/helpers/defaultOffset.mjs +3 -2
  706. package/dist/esm/helpers/defaultOffset.mjs.map +1 -1
  707. package/dist/esm/helpers/defaultOffset.native.js +3 -2
  708. package/dist/esm/helpers/defaultOffset.native.js.map +1 -1
  709. package/dist/esm/helpers/directStyle.mjs +907 -0
  710. package/dist/esm/helpers/directStyle.mjs.map +1 -0
  711. package/dist/esm/helpers/directStyle.native.js +1112 -0
  712. package/dist/esm/helpers/directStyle.native.js.map +1 -0
  713. package/dist/esm/helpers/expandStyle.mjs +119 -66
  714. package/dist/esm/helpers/expandStyle.mjs.map +1 -1
  715. package/dist/esm/helpers/expandStyle.native.js +141 -107
  716. package/dist/esm/helpers/expandStyle.native.js.map +1 -1
  717. package/dist/esm/helpers/expandStyles.mjs +9 -7
  718. package/dist/esm/helpers/expandStyles.mjs.map +1 -1
  719. package/dist/esm/helpers/expandStyles.native.js +16 -14
  720. package/dist/esm/helpers/expandStyles.native.js.map +1 -1
  721. package/dist/esm/helpers/extractPseudoState.mjs +24 -0
  722. package/dist/esm/helpers/extractPseudoState.mjs.map +1 -0
  723. package/dist/esm/helpers/extractPseudoState.native.js +25 -0
  724. package/dist/esm/helpers/extractPseudoState.native.js.map +1 -0
  725. package/dist/esm/helpers/formatDiagnostic.mjs +48 -0
  726. package/dist/esm/helpers/formatDiagnostic.mjs.map +1 -0
  727. package/dist/esm/helpers/formatDiagnostic.native.js +55 -0
  728. package/dist/esm/helpers/formatDiagnostic.native.js.map +1 -0
  729. package/dist/esm/helpers/frontendProgram.mjs +20 -0
  730. package/dist/esm/helpers/frontendProgram.mjs.map +1 -0
  731. package/dist/esm/helpers/frontendProgram.native.js +24 -0
  732. package/dist/esm/helpers/frontendProgram.native.js.map +1 -0
  733. package/dist/esm/helpers/getCSSStylesAtomic.mjs +186 -173
  734. package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
  735. package/dist/esm/helpers/getCSSStylesAtomic.native.js +5 -3
  736. package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +1 -1
  737. package/dist/esm/helpers/getDefaultProps.mjs +2 -16
  738. package/dist/esm/helpers/getDefaultProps.mjs.map +1 -1
  739. package/dist/esm/helpers/getDefaultProps.native.js +3 -16
  740. package/dist/esm/helpers/getDefaultProps.native.js.map +1 -1
  741. package/dist/esm/helpers/getDynamicVal.mjs +28 -33
  742. package/dist/esm/helpers/getDynamicVal.mjs.map +1 -1
  743. package/dist/esm/helpers/getDynamicVal.native.js +28 -33
  744. package/dist/esm/helpers/getDynamicVal.native.js.map +1 -1
  745. package/dist/esm/helpers/getExpandedShorthands.mjs +5 -12
  746. package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -1
  747. package/dist/esm/helpers/getExpandedShorthands.native.js +6 -13
  748. package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -1
  749. package/dist/esm/helpers/getFontLanguage.mjs +2 -1
  750. package/dist/esm/helpers/getFontLanguage.mjs.map +1 -1
  751. package/dist/esm/helpers/getFontLanguage.native.js +3 -2
  752. package/dist/esm/helpers/getFontLanguage.native.js.map +1 -1
  753. package/dist/esm/helpers/getShorthandValue.mjs +4 -2
  754. package/dist/esm/helpers/getShorthandValue.mjs.map +1 -1
  755. package/dist/esm/helpers/getShorthandValue.native.js +6 -4
  756. package/dist/esm/helpers/getShorthandValue.native.js.map +1 -1
  757. package/dist/esm/helpers/getSplitStyles.mjs +695 -868
  758. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  759. package/dist/esm/helpers/getSplitStyles.native.js +773 -899
  760. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
  761. package/dist/esm/helpers/getThemeCSSRules.mjs +94 -92
  762. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
  763. package/dist/esm/helpers/getThemeCSSRules.native.js +2 -1
  764. package/dist/esm/helpers/getThemeCSSRules.native.js.map +1 -1
  765. package/dist/esm/helpers/getVariantExtras.mjs +57 -52
  766. package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
  767. package/dist/esm/helpers/getVariantExtras.native.js +58 -53
  768. package/dist/esm/helpers/getVariantExtras.native.js.map +1 -1
  769. package/dist/esm/helpers/grammarConfig.mjs +53 -0
  770. package/dist/esm/helpers/grammarConfig.mjs.map +1 -0
  771. package/dist/esm/helpers/grammarConfig.native.js +129 -0
  772. package/dist/esm/helpers/grammarConfig.native.js.map +1 -0
  773. package/dist/esm/helpers/insertStyleRule.mjs +228 -160
  774. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
  775. package/dist/esm/helpers/insertStyleRule.native.js +61 -24
  776. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
  777. package/dist/esm/helpers/isObj.mjs +10 -2
  778. package/dist/esm/helpers/isObj.mjs.map +1 -1
  779. package/dist/esm/helpers/isObj.native.js +13 -6
  780. package/dist/esm/helpers/isObj.native.js.map +1 -1
  781. package/dist/esm/helpers/isTamaguiComponent.mjs +4 -3
  782. package/dist/esm/helpers/isTamaguiComponent.mjs.map +1 -1
  783. package/dist/esm/helpers/isTamaguiComponent.native.js +4 -3
  784. package/dist/esm/helpers/isTamaguiComponent.native.js.map +1 -1
  785. package/dist/esm/helpers/isTamaguiElement.mjs +4 -2
  786. package/dist/esm/helpers/isTamaguiElement.mjs.map +1 -1
  787. package/dist/esm/helpers/isTamaguiElement.native.js +4 -2
  788. package/dist/esm/helpers/isTamaguiElement.native.js.map +1 -1
  789. package/dist/esm/helpers/log.mjs +11 -9
  790. package/dist/esm/helpers/log.mjs.map +1 -1
  791. package/dist/esm/helpers/log.native.js +12 -10
  792. package/dist/esm/helpers/log.native.js.map +1 -1
  793. package/dist/esm/helpers/mainThreadPressEvents.mjs +1 -0
  794. package/dist/esm/helpers/mainThreadPressEvents.mjs.map +1 -1
  795. package/dist/esm/helpers/mainThreadPressEvents.native.js +126 -125
  796. package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -1
  797. package/dist/esm/helpers/matchMedia.mjs +7 -6
  798. package/dist/esm/helpers/matchMedia.mjs.map +1 -1
  799. package/dist/esm/helpers/matchMedia.native.js +36 -25
  800. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  801. package/dist/esm/helpers/mediaObjectToString.mjs +21 -20
  802. package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -1
  803. package/dist/esm/helpers/mediaObjectToString.native.js +24 -23
  804. package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -1
  805. package/dist/esm/helpers/mediaState.mjs +7 -24
  806. package/dist/esm/helpers/mediaState.mjs.map +1 -1
  807. package/dist/esm/helpers/mediaState.native.js +9 -27
  808. package/dist/esm/helpers/mediaState.native.js.map +1 -1
  809. package/dist/esm/helpers/mergeProps.mjs +37 -47
  810. package/dist/esm/helpers/mergeProps.mjs.map +1 -1
  811. package/dist/esm/helpers/mergeProps.native.js +39 -54
  812. package/dist/esm/helpers/mergeProps.native.js.map +1 -1
  813. package/dist/esm/helpers/mergeRenderElementProps.mjs +5 -5
  814. package/dist/esm/helpers/mergeRenderElementProps.mjs.map +1 -1
  815. package/dist/esm/helpers/mergeRenderElementProps.native.js +5 -5
  816. package/dist/esm/helpers/mergeRenderElementProps.native.js.map +1 -1
  817. package/dist/esm/helpers/mergeSlotStyleProps.mjs +22 -20
  818. package/dist/esm/helpers/mergeSlotStyleProps.mjs.map +1 -1
  819. package/dist/esm/helpers/mergeSlotStyleProps.native.js +22 -20
  820. package/dist/esm/helpers/mergeSlotStyleProps.native.js.map +1 -1
  821. package/dist/esm/helpers/mergeVariants.mjs +39 -23
  822. package/dist/esm/helpers/mergeVariants.mjs.map +1 -1
  823. package/dist/esm/helpers/mergeVariants.native.js +41 -25
  824. package/dist/esm/helpers/mergeVariants.native.js.map +1 -1
  825. package/dist/esm/helpers/nativeOnlyProps.mjs +34 -33
  826. package/dist/esm/helpers/nativeOnlyProps.mjs.map +1 -1
  827. package/dist/esm/helpers/nativeOnlyProps.native.js +34 -33
  828. package/dist/esm/helpers/nativeOnlyProps.native.js.map +1 -1
  829. package/dist/esm/helpers/nativeStyleEngine.mjs +178 -0
  830. package/dist/esm/helpers/nativeStyleEngine.mjs.map +1 -0
  831. package/dist/esm/helpers/nativeStyleEngine.native.js +270 -0
  832. package/dist/esm/helpers/nativeStyleEngine.native.js.map +1 -0
  833. package/dist/esm/helpers/nativeTransitionTarget.mjs +6 -0
  834. package/dist/esm/helpers/nativeTransitionTarget.mjs.map +1 -0
  835. package/dist/esm/helpers/nativeTransitionTarget.native.js +21 -0
  836. package/dist/esm/helpers/nativeTransitionTarget.native.js.map +1 -0
  837. package/dist/esm/helpers/normalizeColor.mjs +11 -18
  838. package/dist/esm/helpers/normalizeColor.mjs.map +1 -1
  839. package/dist/esm/helpers/normalizeColor.native.js +19 -19
  840. package/dist/esm/helpers/normalizeColor.native.js.map +1 -1
  841. package/dist/esm/helpers/normalizeShadow.mjs +13 -21
  842. package/dist/esm/helpers/normalizeShadow.mjs.map +1 -1
  843. package/dist/esm/helpers/normalizeShadow.native.js +14 -20
  844. package/dist/esm/helpers/normalizeShadow.native.js.map +1 -1
  845. package/dist/esm/helpers/normalizeStyle.mjs +32 -42
  846. package/dist/esm/helpers/normalizeStyle.mjs.map +1 -1
  847. package/dist/esm/helpers/normalizeStyle.native.js +50 -62
  848. package/dist/esm/helpers/normalizeStyle.native.js.map +1 -1
  849. package/dist/esm/helpers/normalizeStylePropKeys.mjs +1 -0
  850. package/dist/esm/helpers/normalizeStylePropKeys.mjs.map +1 -1
  851. package/dist/esm/helpers/normalizeStylePropKeys.native.js +11 -10
  852. package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +1 -1
  853. package/dist/esm/helpers/normalizeValueWithProperty.mjs +29 -21
  854. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
  855. package/dist/esm/helpers/normalizeValueWithProperty.native.js +32 -25
  856. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
  857. package/dist/esm/helpers/noteOnce.mjs +11 -0
  858. package/dist/esm/helpers/noteOnce.mjs.map +1 -0
  859. package/dist/esm/helpers/noteOnce.native.js +11 -0
  860. package/dist/esm/helpers/noteOnce.native.js.map +1 -0
  861. package/dist/esm/helpers/objectIdentityKey.mjs +18 -17
  862. package/dist/esm/helpers/objectIdentityKey.mjs.map +1 -1
  863. package/dist/esm/helpers/objectIdentityKey.native.js +20 -20
  864. package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -1
  865. package/dist/esm/helpers/parseBorderShorthand.mjs +2 -1
  866. package/dist/esm/helpers/parseBorderShorthand.mjs.map +1 -1
  867. package/dist/esm/helpers/parseBorderShorthand.native.js +70 -54
  868. package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -1
  869. package/dist/esm/helpers/parseNativeStyle.native.js +166 -146
  870. package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
  871. package/dist/esm/helpers/parseNativeTransform.native.js +45 -0
  872. package/dist/esm/helpers/parseNativeTransform.native.js.map +1 -0
  873. package/dist/esm/helpers/parseOutlineShorthand.mjs +2 -1
  874. package/dist/esm/helpers/parseOutlineShorthand.mjs.map +1 -1
  875. package/dist/esm/helpers/parseOutlineShorthand.native.js +58 -48
  876. package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -1
  877. package/dist/esm/helpers/pointerEvents.mjs +1 -0
  878. package/dist/esm/helpers/pointerEvents.mjs.map +1 -1
  879. package/dist/esm/helpers/pointerEvents.native.js +104 -127
  880. package/dist/esm/helpers/pointerEvents.native.js.map +1 -1
  881. package/dist/esm/helpers/propMapper.mjs +325 -234
  882. package/dist/esm/helpers/propMapper.mjs.map +1 -1
  883. package/dist/esm/helpers/propMapper.native.js +462 -332
  884. package/dist/esm/helpers/propMapper.native.js.map +1 -1
  885. package/dist/esm/helpers/proxyThemeToParents.mjs +25 -30
  886. package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
  887. package/dist/esm/helpers/proxyThemeToParents.native.js +110 -125
  888. package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
  889. package/dist/esm/helpers/registerCSSVariable.mjs +84 -39
  890. package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
  891. package/dist/esm/helpers/registerCSSVariable.native.js +103 -44
  892. package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
  893. package/dist/esm/helpers/resolveAnimationDriver.mjs +14 -8
  894. package/dist/esm/helpers/resolveAnimationDriver.mjs.map +1 -1
  895. package/dist/esm/helpers/resolveAnimationDriver.native.js +18 -9
  896. package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -1
  897. package/dist/esm/helpers/resolveRem.mjs +3 -2
  898. package/dist/esm/helpers/resolveRem.mjs.map +1 -1
  899. package/dist/esm/helpers/resolveRem.native.js +23 -21
  900. package/dist/esm/helpers/resolveRem.native.js.map +1 -1
  901. package/dist/esm/helpers/resolveSafeArea.mjs +101 -9
  902. package/dist/esm/helpers/resolveSafeArea.mjs.map +1 -1
  903. package/dist/esm/helpers/resolveSafeArea.native.js +101 -15
  904. package/dist/esm/helpers/resolveSafeArea.native.js.map +1 -1
  905. package/dist/esm/helpers/resolveSafeAreaVariable.mjs +10 -0
  906. package/dist/esm/helpers/resolveSafeAreaVariable.mjs.map +1 -0
  907. package/dist/esm/helpers/resolveSafeAreaVariable.native.js +27 -0
  908. package/dist/esm/helpers/resolveSafeAreaVariable.native.js.map +1 -0
  909. package/dist/esm/helpers/resolveVariableValue.mjs +15 -0
  910. package/dist/esm/helpers/resolveVariableValue.mjs.map +1 -0
  911. package/dist/esm/helpers/resolveVariableValue.native.js +17 -0
  912. package/dist/esm/helpers/resolveVariableValue.native.js.map +1 -0
  913. package/dist/esm/helpers/setElementProps.mjs +4 -2
  914. package/dist/esm/helpers/setElementProps.mjs.map +1 -1
  915. package/dist/esm/helpers/setElementProps.native.js +8 -7
  916. package/dist/esm/helpers/setElementProps.native.js.map +1 -1
  917. package/dist/esm/helpers/skipProps.mjs +18 -13
  918. package/dist/esm/helpers/skipProps.mjs.map +1 -1
  919. package/dist/esm/helpers/skipProps.native.js +18 -13
  920. package/dist/esm/helpers/skipProps.native.js.map +1 -1
  921. package/dist/esm/helpers/sortString.mjs +1 -0
  922. package/dist/esm/helpers/sortString.mjs.map +1 -1
  923. package/dist/esm/helpers/sortString.native.js +3 -2
  924. package/dist/esm/helpers/sortString.native.js.map +1 -1
  925. package/dist/esm/helpers/styleFrontend.mjs +6 -0
  926. package/dist/esm/helpers/styleFrontend.mjs.map +1 -0
  927. package/dist/esm/helpers/styleFrontend.native.js +8 -0
  928. package/dist/esm/helpers/styleFrontend.native.js.map +1 -0
  929. package/dist/esm/helpers/styleOriginalValues.mjs +2 -1
  930. package/dist/esm/helpers/styleOriginalValues.mjs.map +1 -1
  931. package/dist/esm/helpers/styleOriginalValues.native.js +2 -1
  932. package/dist/esm/helpers/styleOriginalValues.native.js.map +1 -1
  933. package/dist/esm/helpers/styleProvenance.mjs +10 -9
  934. package/dist/esm/helpers/styleProvenance.mjs.map +1 -1
  935. package/dist/esm/helpers/styleProvenance.native.js +10 -9
  936. package/dist/esm/helpers/styleProvenance.native.js.map +1 -1
  937. package/dist/esm/helpers/subscribeToContextGroup.mjs +64 -78
  938. package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
  939. package/dist/esm/helpers/subscribeToContextGroup.native.js +105 -123
  940. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
  941. package/dist/esm/helpers/themeRef.mjs +17 -0
  942. package/dist/esm/helpers/themeRef.mjs.map +1 -0
  943. package/dist/esm/helpers/themeRef.native.js +21 -0
  944. package/dist/esm/helpers/themeRef.native.js.map +1 -0
  945. package/dist/esm/helpers/themeable.mjs +59 -71
  946. package/dist/esm/helpers/themeable.mjs.map +1 -1
  947. package/dist/esm/helpers/themeable.native.js +61 -73
  948. package/dist/esm/helpers/themeable.native.js.map +1 -1
  949. package/dist/esm/helpers/themes.mjs +17 -16
  950. package/dist/esm/helpers/themes.mjs.map +1 -1
  951. package/dist/esm/helpers/themes.native.js +17 -16
  952. package/dist/esm/helpers/themes.native.js.map +1 -1
  953. package/dist/esm/helpers/timer.mjs +9 -5
  954. package/dist/esm/helpers/timer.mjs.map +1 -1
  955. package/dist/esm/helpers/timer.native.js +9 -5
  956. package/dist/esm/helpers/timer.native.js.map +1 -1
  957. package/dist/esm/helpers/tokenCategories.mjs +80 -0
  958. package/dist/esm/helpers/tokenCategories.mjs.map +1 -0
  959. package/dist/esm/helpers/tokenCategories.native.js +82 -0
  960. package/dist/esm/helpers/tokenCategories.native.js.map +1 -0
  961. package/dist/esm/helpers/transformsToString.mjs +12 -13
  962. package/dist/esm/helpers/transformsToString.mjs.map +1 -1
  963. package/dist/esm/helpers/transformsToString.native.js +29 -13
  964. package/dist/esm/helpers/transformsToString.native.js.map +1 -1
  965. package/dist/esm/helpers/useRenderElement.mjs +19 -19
  966. package/dist/esm/helpers/useRenderElement.mjs.map +1 -1
  967. package/dist/esm/helpers/useRenderElement.native.js +24 -24
  968. package/dist/esm/helpers/useRenderElement.native.js.map +1 -1
  969. package/dist/esm/helpers/variables.mjs +581 -0
  970. package/dist/esm/helpers/variables.mjs.map +1 -0
  971. package/dist/esm/helpers/variables.native.js +841 -0
  972. package/dist/esm/helpers/variables.native.js.map +1 -0
  973. package/dist/esm/helpers/warnOnce.mjs +14 -0
  974. package/dist/esm/helpers/warnOnce.mjs.map +1 -0
  975. package/dist/esm/helpers/warnOnce.native.js +15 -0
  976. package/dist/esm/helpers/warnOnce.native.js.map +1 -0
  977. package/dist/esm/helpers/webPropsToSkip.mjs +1 -0
  978. package/dist/esm/helpers/webPropsToSkip.mjs.map +1 -1
  979. package/dist/esm/helpers/webPropsToSkip.native.js +41 -45
  980. package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -1
  981. package/dist/esm/helpers/wrapStyleTags.mjs +32 -30
  982. package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -1
  983. package/dist/esm/helpers/wrapStyleTags.native.js +1 -0
  984. package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -1
  985. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +2 -1
  986. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs.map +1 -1
  987. package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js +4 -2
  988. package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
  989. package/dist/esm/hooks/getThemeProxied.mjs +47 -40
  990. package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
  991. package/dist/esm/hooks/getThemeProxied.native.js +85 -62
  992. package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
  993. package/dist/esm/hooks/isOptimizedForFirstRender.mjs +8 -0
  994. package/dist/esm/hooks/isOptimizedForFirstRender.mjs.map +1 -0
  995. package/dist/esm/hooks/isOptimizedForFirstRender.native.js +8 -0
  996. package/dist/esm/hooks/isOptimizedForFirstRender.native.js.map +1 -0
  997. package/dist/esm/hooks/useAnimationDriver.mjs +20 -0
  998. package/dist/esm/hooks/useAnimationDriver.mjs.map +1 -0
  999. package/dist/esm/hooks/useAnimationDriver.native.js +26 -0
  1000. package/dist/esm/hooks/useAnimationDriver.native.js.map +1 -0
  1001. package/dist/esm/hooks/useComponentState.mjs +202 -181
  1002. package/dist/esm/hooks/useComponentState.mjs.map +1 -1
  1003. package/dist/esm/hooks/useComponentState.native.js +212 -191
  1004. package/dist/esm/hooks/useComponentState.native.js.map +1 -1
  1005. package/dist/esm/hooks/useDisableSSR.mjs +3 -1
  1006. package/dist/esm/hooks/useDisableSSR.mjs.map +1 -1
  1007. package/dist/esm/hooks/useDisableSSR.native.js +4 -2
  1008. package/dist/esm/hooks/useDisableSSR.native.js.map +1 -1
  1009. package/dist/esm/hooks/useIsTouchDevice.mjs +3 -1
  1010. package/dist/esm/hooks/useIsTouchDevice.mjs.map +1 -1
  1011. package/dist/esm/hooks/useIsTouchDevice.native.js +4 -2
  1012. package/dist/esm/hooks/useIsTouchDevice.native.js.map +1 -1
  1013. package/dist/esm/hooks/useMedia.mjs +310 -231
  1014. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  1015. package/dist/esm/hooks/useMedia.native.js +462 -281
  1016. package/dist/esm/hooks/useMedia.native.js.map +1 -1
  1017. package/dist/esm/hooks/usePortalThemeState.mjs +21 -0
  1018. package/dist/esm/hooks/usePortalThemeState.mjs.map +1 -0
  1019. package/dist/esm/hooks/usePortalThemeState.native.js +21 -0
  1020. package/dist/esm/hooks/usePortalThemeState.native.js.map +1 -0
  1021. package/dist/esm/hooks/useProps.mjs +78 -62
  1022. package/dist/esm/hooks/useProps.mjs.map +1 -1
  1023. package/dist/esm/hooks/useProps.native.js +82 -64
  1024. package/dist/esm/hooks/useProps.native.js.map +1 -1
  1025. package/dist/esm/hooks/useTheme.mjs +27 -32
  1026. package/dist/esm/hooks/useTheme.mjs.map +1 -1
  1027. package/dist/esm/hooks/useTheme.native.js +30 -36
  1028. package/dist/esm/hooks/useTheme.native.js.map +1 -1
  1029. package/dist/esm/hooks/useThemeName.mjs +7 -7
  1030. package/dist/esm/hooks/useThemeName.mjs.map +1 -1
  1031. package/dist/esm/hooks/useThemeName.native.js +10 -10
  1032. package/dist/esm/hooks/useThemeName.native.js.map +1 -1
  1033. package/dist/esm/hooks/useThemeState.mjs +324 -345
  1034. package/dist/esm/hooks/useThemeState.mjs.map +1 -1
  1035. package/dist/esm/hooks/useThemeState.native.js +370 -454
  1036. package/dist/esm/hooks/useThemeState.native.js.map +1 -1
  1037. package/dist/esm/index.js +145 -72
  1038. package/dist/esm/index.mjs +145 -72
  1039. package/dist/esm/index.native.js +145 -72
  1040. package/dist/esm/inject-styles.mjs +11 -13
  1041. package/dist/esm/inject-styles.mjs.map +1 -1
  1042. package/dist/esm/inject-styles.native.js +12 -14
  1043. package/dist/esm/inject-styles.native.js.map +1 -1
  1044. package/dist/esm/insertFont.mjs +44 -41
  1045. package/dist/esm/insertFont.mjs.map +1 -1
  1046. package/dist/esm/insertFont.native.js +37 -35
  1047. package/dist/esm/insertFont.native.js.map +1 -1
  1048. package/dist/esm/interfaces/CSSColorNames.mjs +151 -0
  1049. package/dist/esm/interfaces/CSSColorNames.mjs.map +1 -1
  1050. package/dist/esm/interfaces/CSSColorNames.native.js +151 -0
  1051. package/dist/esm/interfaces/CSSColorNames.native.js.map +1 -1
  1052. package/dist/esm/interfaces/GetRef.mjs +0 -2
  1053. package/dist/esm/interfaces/GetRef.native.js +0 -2
  1054. package/dist/esm/interfaces/RNExclusiveTypes.mjs +0 -2
  1055. package/dist/esm/interfaces/RNExclusiveTypes.native.js +0 -2
  1056. package/dist/esm/interfaces/TamaguiComponentEvents.mjs +0 -2
  1057. package/dist/esm/interfaces/TamaguiComponentEvents.native.js +0 -2
  1058. package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.mjs +0 -2
  1059. package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.native.js +0 -2
  1060. package/dist/esm/internal-runtime.mjs +45 -0
  1061. package/dist/esm/internal-runtime.mjs.map +1 -0
  1062. package/dist/esm/internal-runtime.native.js +45 -0
  1063. package/dist/esm/internal-runtime.native.js.map +1 -0
  1064. package/dist/esm/internalRuntimeTypes.mjs +0 -0
  1065. package/dist/esm/internalRuntimeTypes.native.js +0 -0
  1066. package/dist/esm/setupHooks.mjs +2 -1
  1067. package/dist/esm/setupHooks.mjs.map +1 -1
  1068. package/dist/esm/setupHooks.native.js +2 -1
  1069. package/dist/esm/setupHooks.native.js.map +1 -1
  1070. package/dist/esm/setupReactNative.mjs +26 -23
  1071. package/dist/esm/setupReactNative.mjs.map +1 -1
  1072. package/dist/esm/setupReactNative.native.js +27 -24
  1073. package/dist/esm/setupReactNative.native.js.map +1 -1
  1074. package/dist/esm/styled.mjs +156 -126
  1075. package/dist/esm/styled.mjs.map +1 -1
  1076. package/dist/esm/styled.native.js +164 -129
  1077. package/dist/esm/styled.native.js.map +1 -1
  1078. package/dist/esm/type-utils.mjs +0 -2
  1079. package/dist/esm/type-utils.native.js +0 -2
  1080. package/dist/esm/types.mjs +21 -0
  1081. package/dist/esm/types.mjs.map +1 -1
  1082. package/dist/esm/types.native.js +21 -0
  1083. package/dist/esm/types.native.js.map +1 -1
  1084. package/dist/esm/views/ConfigRevisionCheck.mjs +43 -0
  1085. package/dist/esm/views/ConfigRevisionCheck.mjs.map +1 -0
  1086. package/dist/esm/views/ConfigRevisionCheck.native.js +46 -0
  1087. package/dist/esm/views/ConfigRevisionCheck.native.js.map +1 -0
  1088. package/dist/esm/views/Configuration.mjs +11 -9
  1089. package/dist/esm/views/Configuration.mjs.map +1 -1
  1090. package/dist/esm/views/Configuration.native.js +13 -11
  1091. package/dist/esm/views/Configuration.native.js.map +1 -1
  1092. package/dist/esm/views/FontLanguage.mjs +8 -11
  1093. package/dist/esm/views/FontLanguage.mjs.map +1 -1
  1094. package/dist/esm/views/FontLanguage.native.js +13 -14
  1095. package/dist/esm/views/FontLanguage.native.js.map +1 -1
  1096. package/dist/esm/views/SafeAreaTracker.mjs +9 -0
  1097. package/dist/esm/views/SafeAreaTracker.mjs.map +1 -0
  1098. package/dist/esm/views/SafeAreaTracker.native.js +12 -0
  1099. package/dist/esm/views/SafeAreaTracker.native.js.map +1 -0
  1100. package/dist/esm/views/Slot.mjs +39 -44
  1101. package/dist/esm/views/Slot.mjs.map +1 -1
  1102. package/dist/esm/views/Slot.native.js +41 -46
  1103. package/dist/esm/views/Slot.native.js.map +1 -1
  1104. package/dist/esm/views/TamaguiProvider.mjs +58 -49
  1105. package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
  1106. package/dist/esm/views/TamaguiProvider.native.js +56 -50
  1107. package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
  1108. package/dist/esm/views/TamaguiRoot.mjs +31 -35
  1109. package/dist/esm/views/TamaguiRoot.mjs.map +1 -1
  1110. package/dist/esm/views/TamaguiRoot.native.js +2 -1
  1111. package/dist/esm/views/TamaguiRoot.native.js.map +1 -1
  1112. package/dist/esm/views/Text.mjs +32 -32
  1113. package/dist/esm/views/Text.mjs.map +1 -1
  1114. package/dist/esm/views/Text.native.js +19 -23
  1115. package/dist/esm/views/Text.native.js.map +1 -1
  1116. package/dist/esm/views/Theme.mjs +123 -144
  1117. package/dist/esm/views/Theme.mjs.map +1 -1
  1118. package/dist/esm/views/Theme.native.js +120 -151
  1119. package/dist/esm/views/Theme.native.js.map +1 -1
  1120. package/dist/esm/views/ThemeDebug.mjs +64 -63
  1121. package/dist/esm/views/ThemeDebug.mjs.map +1 -1
  1122. package/dist/esm/views/ThemeDebug.native.js +3 -6
  1123. package/dist/esm/views/ThemeDebug.native.js.map +1 -1
  1124. package/dist/esm/views/ThemeProvider.mjs +21 -20
  1125. package/dist/esm/views/ThemeProvider.mjs.map +1 -1
  1126. package/dist/esm/views/ThemeProvider.native.js +12 -10
  1127. package/dist/esm/views/ThemeProvider.native.js.map +1 -1
  1128. package/dist/esm/views/View.mjs +9 -5
  1129. package/dist/esm/views/View.mjs.map +1 -1
  1130. package/dist/esm/views/View.native.js +9 -5
  1131. package/dist/esm/views/View.native.js.map +1 -1
  1132. package/internal-runtime/index.cjs +2 -0
  1133. package/internal-runtime/index.js +4 -0
  1134. package/internal-runtime/index.native.js +2 -0
  1135. package/package.json +47 -15
  1136. package/reset.css +1 -9
  1137. package/src/_withNativeStyle.tsx +84 -0
  1138. package/src/_withStableStyle.tsx +61 -43
  1139. package/src/config.ts +26 -35
  1140. package/src/contexts/ComponentContext.tsx +25 -8
  1141. package/src/createComponent.tsx +482 -160
  1142. package/src/createStyledHOC.tsx +88 -0
  1143. package/src/createTamagui.ts +125 -78
  1144. package/src/createTokens.ts +16 -0
  1145. package/src/createVariable.ts +17 -2
  1146. package/src/createVariables.ts +5 -17
  1147. package/src/dom/adapters.ts +99 -0
  1148. package/src/dom/contract.ts +60 -0
  1149. package/src/dom/domEventProps.native.ts +40 -0
  1150. package/src/dom/html.native.tsx +1405 -0
  1151. package/src/dom/html.tsx +979 -0
  1152. package/src/dom/htmlRuntime.native.tsx +220 -0
  1153. package/src/dom/index.native.ts +28 -0
  1154. package/src/dom/index.ts +16 -0
  1155. package/src/dom/primitives.native.tsx +667 -0
  1156. package/src/dom/standalone.ts +107 -0
  1157. package/src/dom/standaloneHtml.ts +104 -0
  1158. package/src/dom/styleTypes.ts +637 -0
  1159. package/src/eventDetails.ts +85 -0
  1160. package/src/eventHandling.native.ts +16 -16
  1161. package/src/helpers/componentDisplayName.ts +14 -0
  1162. package/src/helpers/createDesignSystem.ts +127 -87
  1163. package/src/helpers/createStyledContext.tsx +87 -7
  1164. package/src/helpers/directStyle.ts +1746 -0
  1165. package/src/helpers/expandStyle.ts +17 -2
  1166. package/src/helpers/extractPseudoState.ts +32 -0
  1167. package/src/helpers/formatDiagnostic.ts +68 -0
  1168. package/src/helpers/frontendProgram.ts +48 -0
  1169. package/src/helpers/getCSSStylesAtomic.native.ts +1 -0
  1170. package/src/helpers/getCSSStylesAtomic.ts +154 -95
  1171. package/src/helpers/getDefaultProps.ts +1 -26
  1172. package/src/helpers/getExpandedShorthands.ts +0 -17
  1173. package/src/helpers/getSplitStyles.tsx +757 -1019
  1174. package/src/helpers/getThemeCSSRules.ts +16 -1
  1175. package/src/helpers/getVariantExtras.tsx +23 -8
  1176. package/src/helpers/grammarConfig.ts +78 -0
  1177. package/src/helpers/insertStyleRule.tsx +97 -19
  1178. package/src/helpers/isObj.ts +8 -0
  1179. package/src/helpers/isTamaguiComponent.tsx +2 -5
  1180. package/src/helpers/isTamaguiElement.tsx +2 -3
  1181. package/src/helpers/matchMedia.native.ts +16 -1
  1182. package/src/helpers/mediaState.ts +4 -33
  1183. package/src/helpers/mergeProps.ts +2 -32
  1184. package/src/helpers/mergeVariants.ts +39 -17
  1185. package/src/helpers/nativeStyleEngine.ts +291 -0
  1186. package/src/helpers/nativeTransitionTarget.native.ts +22 -0
  1187. package/src/helpers/nativeTransitionTarget.ts +6 -0
  1188. package/src/helpers/normalizeColor.native.ts +2 -3
  1189. package/src/helpers/normalizeColor.ts +4 -14
  1190. package/src/helpers/normalizeShadow.native.ts +1 -1
  1191. package/src/helpers/normalizeStyle.ts +1 -15
  1192. package/src/helpers/normalizeValueWithProperty.ts +10 -1
  1193. package/src/helpers/noteOnce.ts +9 -0
  1194. package/src/helpers/{parseNativeStyle.ts → parseNativeStyle.native.ts} +50 -10
  1195. package/src/helpers/parseNativeTransform.native.ts +35 -0
  1196. package/src/helpers/propMapper.ts +347 -134
  1197. package/src/helpers/registerCSSVariable.ts +80 -10
  1198. package/src/helpers/resolveAnimationDriver.ts +16 -13
  1199. package/src/helpers/resolveSafeArea.native.ts +90 -10
  1200. package/src/helpers/resolveSafeArea.ts +113 -7
  1201. package/src/helpers/resolveSafeAreaVariable.native.ts +28 -0
  1202. package/src/helpers/resolveSafeAreaVariable.ts +10 -0
  1203. package/src/helpers/resolveVariableValue.ts +31 -0
  1204. package/src/helpers/skipProps.ts +8 -2
  1205. package/src/helpers/styleFrontend.ts +104 -0
  1206. package/src/helpers/styleProvenance.ts +17 -2
  1207. package/src/helpers/themeRef.ts +34 -0
  1208. package/src/helpers/themeable.tsx +4 -12
  1209. package/src/helpers/themes.ts +9 -10
  1210. package/src/helpers/tokenCategories.ts +104 -0
  1211. package/src/helpers/transformsToString.ts +18 -16
  1212. package/src/helpers/variables.ts +901 -0
  1213. package/src/helpers/warnOnce.ts +47 -0
  1214. package/src/helpers/webPropsToSkip.native.ts +7 -8
  1215. package/src/helpers/wrapStyleTags.tsx +3 -1
  1216. package/src/hooks/getThemeProxied.ts +136 -101
  1217. package/src/hooks/isOptimizedForFirstRender.native.ts +7 -0
  1218. package/src/hooks/isOptimizedForFirstRender.ts +7 -0
  1219. package/src/hooks/useAnimationDriver.ts +37 -0
  1220. package/src/hooks/useComponentState.ts +99 -24
  1221. package/src/hooks/useMedia.tsx +260 -119
  1222. package/src/hooks/usePortalThemeState.ts +34 -0
  1223. package/src/hooks/useProps.tsx +34 -10
  1224. package/src/hooks/useTheme.tsx +19 -6
  1225. package/src/hooks/useThemeState.ts +204 -129
  1226. package/src/index.ts +32 -6
  1227. package/src/insertFont.ts +4 -4
  1228. package/src/interfaces/CSSColorNames.tsx +152 -149
  1229. package/src/interfaces/RNExclusiveTypes.ts +1 -0
  1230. package/src/interfaces/TamaguiComponentEvents.tsx +0 -1
  1231. package/src/interfaces/TamaguiComponentPropsBaseBase.tsx +2 -4
  1232. package/src/internal-runtime.ts +107 -0
  1233. package/src/internalRuntimeTypes.ts +22 -0
  1234. package/src/setupHooks.ts +9 -1
  1235. package/src/styled.tsx +302 -175
  1236. package/src/types.tsx +650 -471
  1237. package/src/views/ConfigRevisionCheck.tsx +55 -0
  1238. package/src/views/SafeAreaTracker.native.tsx +10 -0
  1239. package/src/views/SafeAreaTracker.tsx +7 -0
  1240. package/src/views/Slot.tsx +3 -2
  1241. package/src/views/TamaguiProvider.tsx +21 -8
  1242. package/src/views/Text.tsx +15 -10
  1243. package/src/views/Theme.tsx +112 -41
  1244. package/src/views/ThemeDebug.tsx +0 -1
  1245. package/src/views/ThemeProvider.tsx +6 -5
  1246. package/src/views/View.tsx +16 -7
  1247. package/types/Tamagui.d.ts.map +1 -1
  1248. package/types/_withNativeStyle.d.ts +5 -0
  1249. package/types/_withNativeStyle.d.ts.map +1 -0
  1250. package/types/_withStableStyle.d.ts +1 -1
  1251. package/types/_withStableStyle.d.ts.map +1 -1
  1252. package/types/config.d.ts +22 -32
  1253. package/types/config.d.ts.map +1 -1
  1254. package/types/contexts/ComponentContext.d.ts +1 -1
  1255. package/types/contexts/ComponentContext.d.ts.map +1 -1
  1256. package/types/createComponent.d.ts.map +1 -1
  1257. package/types/createFont.d.ts.map +1 -1
  1258. package/types/createStyledHOC.d.ts +4 -0
  1259. package/types/createStyledHOC.d.ts.map +1 -0
  1260. package/types/createTamagui.d.ts +2 -1
  1261. package/types/createTamagui.d.ts.map +1 -1
  1262. package/types/createTokens.d.ts.map +1 -1
  1263. package/types/createVariable.d.ts.map +1 -1
  1264. package/types/createVariables.d.ts.map +1 -1
  1265. package/types/dom/adapters.d.ts +42 -0
  1266. package/types/dom/adapters.d.ts.map +1 -0
  1267. package/types/dom/contract.d.ts +48 -0
  1268. package/types/dom/contract.d.ts.map +1 -0
  1269. package/types/dom/domEventProps.native.d.ts +7 -0
  1270. package/types/dom/domEventProps.native.d.ts.map +1 -0
  1271. package/types/dom/html.d.ts +54 -0
  1272. package/types/dom/html.d.ts.map +1 -0
  1273. package/types/dom/html.native.d.ts +63 -0
  1274. package/types/dom/html.native.d.ts.map +1 -0
  1275. package/types/dom/htmlRuntime.native.d.ts +63 -0
  1276. package/types/dom/htmlRuntime.native.d.ts.map +1 -0
  1277. package/types/dom/index.d.ts +11 -0
  1278. package/types/dom/index.d.ts.map +1 -0
  1279. package/types/dom/index.native.d.ts +12 -0
  1280. package/types/dom/index.native.d.ts.map +1 -0
  1281. package/types/dom/primitives.native.d.ts +43 -0
  1282. package/types/dom/primitives.native.d.ts.map +1 -0
  1283. package/types/dom/standalone.d.ts +89 -0
  1284. package/types/dom/standalone.d.ts.map +1 -0
  1285. package/types/dom/standaloneHtml.d.ts +67 -0
  1286. package/types/dom/standaloneHtml.d.ts.map +1 -0
  1287. package/types/dom/styleTypes.d.ts +494 -0
  1288. package/types/dom/styleTypes.d.ts.map +1 -0
  1289. package/types/eventDetails.d.ts +12 -0
  1290. package/types/eventDetails.d.ts.map +1 -0
  1291. package/types/helpers/componentDisplayName.d.ts +5 -0
  1292. package/types/helpers/componentDisplayName.d.ts.map +1 -0
  1293. package/types/helpers/createDesignSystem.d.ts +24 -6
  1294. package/types/helpers/createDesignSystem.d.ts.map +1 -1
  1295. package/types/helpers/createStyledContext.d.ts +29 -2
  1296. package/types/helpers/createStyledContext.d.ts.map +1 -1
  1297. package/types/helpers/defaultOffset.d.ts.map +1 -1
  1298. package/types/helpers/directStyle.d.ts +35 -0
  1299. package/types/helpers/directStyle.d.ts.map +1 -0
  1300. package/types/helpers/expandStyle.d.ts.map +1 -1
  1301. package/types/helpers/extractPseudoState.d.ts +14 -0
  1302. package/types/helpers/extractPseudoState.d.ts.map +1 -0
  1303. package/types/helpers/formatDiagnostic.d.ts +2 -0
  1304. package/types/helpers/formatDiagnostic.d.ts.map +1 -0
  1305. package/types/helpers/frontendProgram.d.ts +10 -0
  1306. package/types/helpers/frontendProgram.d.ts.map +1 -0
  1307. package/types/helpers/getCSSStylesAtomic.d.ts +3 -4
  1308. package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -1
  1309. package/types/helpers/getCSSStylesAtomic.native.d.ts +6 -3
  1310. package/types/helpers/getCSSStylesAtomic.native.d.ts.map +1 -1
  1311. package/types/helpers/getDefaultProps.d.ts +1 -1
  1312. package/types/helpers/getDefaultProps.d.ts.map +1 -1
  1313. package/types/helpers/getDynamicVal.d.ts +1 -1
  1314. package/types/helpers/getExpandedShorthands.d.ts +0 -5
  1315. package/types/helpers/getExpandedShorthands.d.ts.map +1 -1
  1316. package/types/helpers/getFontLanguage.d.ts.map +1 -1
  1317. package/types/helpers/getShorthandValue.d.ts.map +1 -1
  1318. package/types/helpers/getSplitStyles.d.ts +5 -5
  1319. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  1320. package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
  1321. package/types/helpers/getVariantExtras.d.ts.map +1 -1
  1322. package/types/helpers/grammarConfig.d.ts +9 -0
  1323. package/types/helpers/grammarConfig.d.ts.map +1 -0
  1324. package/types/helpers/insertStyleRule.d.ts +3 -1
  1325. package/types/helpers/insertStyleRule.d.ts.map +1 -1
  1326. package/types/helpers/isObj.d.ts +1 -0
  1327. package/types/helpers/isObj.d.ts.map +1 -1
  1328. package/types/helpers/isTamaguiComponent.d.ts +1 -1
  1329. package/types/helpers/isTamaguiComponent.d.ts.map +1 -1
  1330. package/types/helpers/isTamaguiElement.d.ts +1 -1
  1331. package/types/helpers/isTamaguiElement.d.ts.map +1 -1
  1332. package/types/helpers/matchMedia.d.ts +1 -1
  1333. package/types/helpers/matchMedia.native.d.ts.map +1 -1
  1334. package/types/helpers/mediaState.d.ts +1 -2
  1335. package/types/helpers/mediaState.d.ts.map +1 -1
  1336. package/types/helpers/mergeProps.d.ts +0 -2
  1337. package/types/helpers/mergeProps.d.ts.map +1 -1
  1338. package/types/helpers/mergeVariants.d.ts +1 -1
  1339. package/types/helpers/mergeVariants.d.ts.map +1 -1
  1340. package/types/helpers/nativeOnlyProps.d.ts.map +1 -1
  1341. package/types/helpers/nativeStyleEngine.d.ts +69 -0
  1342. package/types/helpers/nativeStyleEngine.d.ts.map +1 -0
  1343. package/types/helpers/nativeTransitionTarget.d.ts +3 -0
  1344. package/types/helpers/nativeTransitionTarget.d.ts.map +1 -0
  1345. package/types/helpers/nativeTransitionTarget.native.d.ts +3 -0
  1346. package/types/helpers/nativeTransitionTarget.native.d.ts.map +1 -0
  1347. package/types/helpers/normalizeColor.d.ts +0 -6
  1348. package/types/helpers/normalizeColor.d.ts.map +1 -1
  1349. package/types/helpers/normalizeColor.native.d.ts.map +1 -1
  1350. package/types/helpers/normalizeShadow.d.ts.map +1 -1
  1351. package/types/helpers/normalizeShadow.native.d.ts.map +1 -1
  1352. package/types/helpers/normalizeStyle.d.ts +1 -1
  1353. package/types/helpers/normalizeStyle.d.ts.map +1 -1
  1354. package/types/helpers/normalizeStylePropKeys.native.d.ts.map +1 -1
  1355. package/types/helpers/normalizeValueWithProperty.d.ts.map +1 -1
  1356. package/types/helpers/noteOnce.d.ts +2 -0
  1357. package/types/helpers/noteOnce.d.ts.map +1 -0
  1358. package/types/helpers/{parseNativeStyle.d.ts → parseNativeStyle.native.d.ts} +1 -1
  1359. package/types/helpers/parseNativeStyle.native.d.ts.map +1 -0
  1360. package/types/helpers/parseNativeTransform.native.d.ts +2 -0
  1361. package/types/helpers/parseNativeTransform.native.d.ts.map +1 -0
  1362. package/types/helpers/propMapper.d.ts +2 -1
  1363. package/types/helpers/propMapper.d.ts.map +1 -1
  1364. package/types/helpers/registerCSSVariable.d.ts +12 -0
  1365. package/types/helpers/registerCSSVariable.d.ts.map +1 -1
  1366. package/types/helpers/resolveAnimationDriver.d.ts +4 -4
  1367. package/types/helpers/resolveAnimationDriver.d.ts.map +1 -1
  1368. package/types/helpers/resolveSafeArea.d.ts +2 -1
  1369. package/types/helpers/resolveSafeArea.d.ts.map +1 -1
  1370. package/types/helpers/resolveSafeArea.native.d.ts +2 -1
  1371. package/types/helpers/resolveSafeArea.native.d.ts.map +1 -1
  1372. package/types/helpers/resolveSafeAreaVariable.d.ts +3 -0
  1373. package/types/helpers/resolveSafeAreaVariable.d.ts.map +1 -0
  1374. package/types/helpers/resolveSafeAreaVariable.native.d.ts +3 -0
  1375. package/types/helpers/resolveSafeAreaVariable.native.d.ts.map +1 -0
  1376. package/types/helpers/resolveVariableValue.d.ts +3 -0
  1377. package/types/helpers/resolveVariableValue.d.ts.map +1 -0
  1378. package/types/helpers/setElementProps.d.ts.map +1 -1
  1379. package/types/helpers/skipProps.d.ts +3 -1
  1380. package/types/helpers/skipProps.d.ts.map +1 -1
  1381. package/types/helpers/sortString.d.ts +1 -1
  1382. package/types/helpers/sortString.d.ts.map +1 -1
  1383. package/types/helpers/styleFrontend.d.ts +87 -0
  1384. package/types/helpers/styleFrontend.d.ts.map +1 -0
  1385. package/types/helpers/styleProvenance.d.ts +14 -1
  1386. package/types/helpers/styleProvenance.d.ts.map +1 -1
  1387. package/types/helpers/subscribeToContextGroup.d.ts.map +1 -1
  1388. package/types/helpers/themeRef.d.ts +22 -0
  1389. package/types/helpers/themeRef.d.ts.map +1 -0
  1390. package/types/helpers/themeable.d.ts +1 -1
  1391. package/types/helpers/themeable.d.ts.map +1 -1
  1392. package/types/helpers/themes.d.ts.map +1 -1
  1393. package/types/helpers/tokenCategories.d.ts +5 -0
  1394. package/types/helpers/tokenCategories.d.ts.map +1 -0
  1395. package/types/helpers/transformsToString.d.ts.map +1 -1
  1396. package/types/helpers/variables.d.ts +90 -0
  1397. package/types/helpers/variables.d.ts.map +1 -0
  1398. package/types/helpers/warnOnce.d.ts +20 -0
  1399. package/types/helpers/warnOnce.d.ts.map +1 -0
  1400. package/types/helpers/webPropsToSkip.native.d.ts +63 -62
  1401. package/types/helpers/webPropsToSkip.native.d.ts.map +1 -1
  1402. package/types/helpers/wrapStyleTags.d.ts +1 -1
  1403. package/types/helpers/wrapStyleTags.d.ts.map +1 -1
  1404. package/types/hooks/getThemeProxied.d.ts +1 -1
  1405. package/types/hooks/getThemeProxied.d.ts.map +1 -1
  1406. package/types/hooks/isOptimizedForFirstRender.d.ts +2 -0
  1407. package/types/hooks/isOptimizedForFirstRender.d.ts.map +1 -0
  1408. package/types/hooks/isOptimizedForFirstRender.native.d.ts +2 -0
  1409. package/types/hooks/isOptimizedForFirstRender.native.d.ts.map +1 -0
  1410. package/types/hooks/useAnimationDriver.d.ts +7 -0
  1411. package/types/hooks/useAnimationDriver.d.ts.map +1 -0
  1412. package/types/hooks/useComponentState.d.ts +5 -4
  1413. package/types/hooks/useComponentState.d.ts.map +1 -1
  1414. package/types/hooks/useMedia.d.ts +13 -7
  1415. package/types/hooks/useMedia.d.ts.map +1 -1
  1416. package/types/hooks/usePortalThemeState.d.ts +15 -0
  1417. package/types/hooks/usePortalThemeState.d.ts.map +1 -0
  1418. package/types/hooks/useProps.d.ts +1 -3
  1419. package/types/hooks/useProps.d.ts.map +1 -1
  1420. package/types/hooks/useTheme.d.ts +1 -1
  1421. package/types/hooks/useTheme.d.ts.map +1 -1
  1422. package/types/hooks/useThemeState.d.ts +26 -3
  1423. package/types/hooks/useThemeState.d.ts.map +1 -1
  1424. package/types/index.d.ts +14 -7
  1425. package/types/index.d.ts.map +1 -1
  1426. package/types/inject-styles.d.ts.map +1 -1
  1427. package/types/interfaces/CSSColorNames.d.ts +2 -1
  1428. package/types/interfaces/CSSColorNames.d.ts.map +1 -1
  1429. package/types/interfaces/RNExclusiveTypes.d.ts +1 -1
  1430. package/types/interfaces/RNExclusiveTypes.d.ts.map +1 -1
  1431. package/types/interfaces/TamaguiComponentEvents.d.ts +0 -1
  1432. package/types/interfaces/TamaguiComponentEvents.d.ts.map +1 -1
  1433. package/types/interfaces/TamaguiComponentPropsBaseBase.d.ts +2 -4
  1434. package/types/interfaces/TamaguiComponentPropsBaseBase.d.ts.map +1 -1
  1435. package/types/internal-runtime.d.ts +33 -0
  1436. package/types/internal-runtime.d.ts.map +1 -0
  1437. package/types/internalRuntimeTypes.d.ts +16 -0
  1438. package/types/internalRuntimeTypes.d.ts.map +1 -0
  1439. package/types/setupHooks.d.ts +1 -1
  1440. package/types/setupHooks.d.ts.map +1 -1
  1441. package/types/styled.d.ts +47 -12
  1442. package/types/styled.d.ts.map +1 -1
  1443. package/types/types.d.ts +392 -231
  1444. package/types/types.d.ts.map +1 -1
  1445. package/types/views/ConfigRevisionCheck.d.ts +6 -0
  1446. package/types/views/ConfigRevisionCheck.d.ts.map +1 -0
  1447. package/types/views/Configuration.d.ts +1 -1
  1448. package/types/views/Configuration.d.ts.map +1 -1
  1449. package/types/views/FontLanguage.d.ts +4 -4
  1450. package/types/views/FontLanguage.d.ts.map +1 -1
  1451. package/types/views/FontLanguage.native.d.ts +2 -1
  1452. package/types/views/FontLanguage.native.d.ts.map +1 -1
  1453. package/types/views/SafeAreaTracker.d.ts +3 -0
  1454. package/types/views/SafeAreaTracker.d.ts.map +1 -0
  1455. package/types/views/SafeAreaTracker.native.d.ts +3 -0
  1456. package/types/views/SafeAreaTracker.native.d.ts.map +1 -0
  1457. package/types/views/Slot.d.ts +7 -7
  1458. package/types/views/Slot.d.ts.map +1 -1
  1459. package/types/views/TamaguiProvider.d.ts +2 -1
  1460. package/types/views/TamaguiProvider.d.ts.map +1 -1
  1461. package/types/views/TamaguiRoot.d.ts +1 -1
  1462. package/types/views/TamaguiRoot.d.ts.map +1 -1
  1463. package/types/views/Text.d.ts +6 -2
  1464. package/types/views/Text.d.ts.map +1 -1
  1465. package/types/views/Theme.d.ts +16 -8
  1466. package/types/views/Theme.d.ts.map +1 -1
  1467. package/types/views/ThemeDebug.d.ts.map +1 -1
  1468. package/types/views/ThemeProvider.d.ts +1 -1
  1469. package/types/views/ThemeProvider.d.ts.map +1 -1
  1470. package/types/views/View.d.ts +8 -2
  1471. package/types/views/View.d.ts.map +1 -1
  1472. package/.turbo/turbo-build.log +0 -2
  1473. package/.turbo/turbo-test$colon$web.log +0 -25
  1474. package/dist/cjs/animationDriverTypes.test-d.cjs +0 -77
  1475. package/dist/cjs/animationDriverTypes.test-d.native.js +0 -80
  1476. package/dist/cjs/animationDriverTypes.test-d.native.js.map +0 -1
  1477. package/dist/cjs/helpers/createMediaStyle.cjs +0 -127
  1478. package/dist/cjs/helpers/createMediaStyle.native.js +0 -140
  1479. package/dist/cjs/helpers/createMediaStyle.native.js.map +0 -1
  1480. package/dist/cjs/helpers/getGroupPropParts.cjs +0 -54
  1481. package/dist/cjs/helpers/getGroupPropParts.native.js +0 -59
  1482. package/dist/cjs/helpers/getGroupPropParts.native.js.map +0 -1
  1483. package/dist/cjs/helpers/getTokenForKey.cjs +0 -174
  1484. package/dist/cjs/helpers/getTokenForKey.native.js +0 -186
  1485. package/dist/cjs/helpers/getTokenForKey.native.js.map +0 -1
  1486. package/dist/cjs/helpers/isActivePlatform.cjs +0 -40
  1487. package/dist/cjs/helpers/isActivePlatform.native.js +0 -43
  1488. package/dist/cjs/helpers/isActivePlatform.native.js.map +0 -1
  1489. package/dist/cjs/helpers/isActiveTheme.cjs +0 -31
  1490. package/dist/cjs/helpers/isActiveTheme.native.js +0 -34
  1491. package/dist/cjs/helpers/isActiveTheme.native.js.map +0 -1
  1492. package/dist/cjs/helpers/parseNativeStyle.cjs +0 -167
  1493. package/dist/cjs/helpers/platformResolveValue.cjs +0 -38
  1494. package/dist/cjs/helpers/platformResolveValue.native.js +0 -74
  1495. package/dist/cjs/helpers/platformResolveValue.native.js.map +0 -1
  1496. package/dist/cjs/helpers/proxyThemeVariables.cjs +0 -38
  1497. package/dist/cjs/helpers/proxyThemeVariables.native.js +0 -43
  1498. package/dist/cjs/helpers/proxyThemeVariables.native.js.map +0 -1
  1499. package/dist/cjs/helpers/pseudoDescriptors.cjs +0 -82
  1500. package/dist/cjs/helpers/pseudoDescriptors.native.js +0 -85
  1501. package/dist/cjs/helpers/pseudoDescriptors.native.js.map +0 -1
  1502. package/dist/cjs/helpers/pseudoTransitions.cjs +0 -83
  1503. package/dist/cjs/helpers/pseudoTransitions.native.js +0 -88
  1504. package/dist/cjs/helpers/pseudoTransitions.native.js.map +0 -1
  1505. package/dist/cjs/helpers/resolveCompoundTokens.cjs +0 -41
  1506. package/dist/cjs/helpers/resolveCompoundTokens.native.js +0 -44
  1507. package/dist/cjs/helpers/resolveCompoundTokens.native.js.map +0 -1
  1508. package/dist/cjs/opacityModifier.test-d.cjs +0 -36
  1509. package/dist/cjs/opacityModifier.test-d.native.js +0 -39
  1510. package/dist/cjs/opacityModifier.test-d.native.js.map +0 -1
  1511. package/dist/cjs/styledHtml.test-d.cjs +0 -187
  1512. package/dist/cjs/styledHtml.test-d.native.js +0 -190
  1513. package/dist/cjs/styledHtml.test-d.native.js.map +0 -1
  1514. package/dist/cjs/styledNonStyleProps.test-d.cjs +0 -63
  1515. package/dist/cjs/styledNonStyleProps.test-d.native.js +0 -66
  1516. package/dist/cjs/styledNonStyleProps.test-d.native.js.map +0 -1
  1517. package/dist/esm/animationDriverTypes.test-d.mjs +0 -78
  1518. package/dist/esm/animationDriverTypes.test-d.mjs.map +0 -1
  1519. package/dist/esm/animationDriverTypes.test-d.native.js +0 -78
  1520. package/dist/esm/animationDriverTypes.test-d.native.js.map +0 -1
  1521. package/dist/esm/helpers/createMediaStyle.mjs +0 -100
  1522. package/dist/esm/helpers/createMediaStyle.mjs.map +0 -1
  1523. package/dist/esm/helpers/createMediaStyle.native.js +0 -110
  1524. package/dist/esm/helpers/createMediaStyle.native.js.map +0 -1
  1525. package/dist/esm/helpers/getGroupPropParts.mjs +0 -29
  1526. package/dist/esm/helpers/getGroupPropParts.mjs.map +0 -1
  1527. package/dist/esm/helpers/getGroupPropParts.native.js +0 -31
  1528. package/dist/esm/helpers/getGroupPropParts.native.js.map +0 -1
  1529. package/dist/esm/helpers/getTokenForKey.mjs +0 -146
  1530. package/dist/esm/helpers/getTokenForKey.mjs.map +0 -1
  1531. package/dist/esm/helpers/getTokenForKey.native.js +0 -155
  1532. package/dist/esm/helpers/getTokenForKey.native.js.map +0 -1
  1533. package/dist/esm/helpers/isActivePlatform.mjs +0 -14
  1534. package/dist/esm/helpers/isActivePlatform.mjs.map +0 -1
  1535. package/dist/esm/helpers/isActivePlatform.native.js +0 -14
  1536. package/dist/esm/helpers/isActivePlatform.native.js.map +0 -1
  1537. package/dist/esm/helpers/isActiveTheme.mjs +0 -6
  1538. package/dist/esm/helpers/isActiveTheme.mjs.map +0 -1
  1539. package/dist/esm/helpers/isActiveTheme.native.js +0 -6
  1540. package/dist/esm/helpers/isActiveTheme.native.js.map +0 -1
  1541. package/dist/esm/helpers/parseNativeStyle.mjs +0 -142
  1542. package/dist/esm/helpers/parseNativeStyle.mjs.map +0 -1
  1543. package/dist/esm/helpers/platformResolveValue.mjs +0 -13
  1544. package/dist/esm/helpers/platformResolveValue.mjs.map +0 -1
  1545. package/dist/esm/helpers/platformResolveValue.native.js +0 -46
  1546. package/dist/esm/helpers/platformResolveValue.native.js.map +0 -1
  1547. package/dist/esm/helpers/proxyThemeVariables.mjs +0 -13
  1548. package/dist/esm/helpers/proxyThemeVariables.mjs.map +0 -1
  1549. package/dist/esm/helpers/proxyThemeVariables.native.js +0 -15
  1550. package/dist/esm/helpers/proxyThemeVariables.native.js.map +0 -1
  1551. package/dist/esm/helpers/pseudoDescriptors.mjs +0 -54
  1552. package/dist/esm/helpers/pseudoDescriptors.mjs.map +0 -1
  1553. package/dist/esm/helpers/pseudoDescriptors.native.js +0 -54
  1554. package/dist/esm/helpers/pseudoDescriptors.native.js.map +0 -1
  1555. package/dist/esm/helpers/pseudoTransitions.mjs +0 -57
  1556. package/dist/esm/helpers/pseudoTransitions.mjs.map +0 -1
  1557. package/dist/esm/helpers/pseudoTransitions.native.js +0 -59
  1558. package/dist/esm/helpers/pseudoTransitions.native.js.map +0 -1
  1559. package/dist/esm/helpers/resolveCompoundTokens.mjs +0 -16
  1560. package/dist/esm/helpers/resolveCompoundTokens.mjs.map +0 -1
  1561. package/dist/esm/helpers/resolveCompoundTokens.native.js +0 -16
  1562. package/dist/esm/helpers/resolveCompoundTokens.native.js.map +0 -1
  1563. package/dist/esm/index.js.map +0 -1
  1564. package/dist/esm/index.mjs.map +0 -1
  1565. package/dist/esm/index.native.js.map +0 -1
  1566. package/dist/esm/interfaces/GetRef.mjs.map +0 -1
  1567. package/dist/esm/interfaces/GetRef.native.js.map +0 -1
  1568. package/dist/esm/interfaces/RNExclusiveTypes.mjs.map +0 -1
  1569. package/dist/esm/interfaces/RNExclusiveTypes.native.js.map +0 -1
  1570. package/dist/esm/interfaces/TamaguiComponentEvents.mjs.map +0 -1
  1571. package/dist/esm/interfaces/TamaguiComponentEvents.native.js.map +0 -1
  1572. package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.mjs.map +0 -1
  1573. package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.native.js.map +0 -1
  1574. package/dist/esm/opacityModifier.test-d.mjs +0 -37
  1575. package/dist/esm/opacityModifier.test-d.mjs.map +0 -1
  1576. package/dist/esm/opacityModifier.test-d.native.js +0 -37
  1577. package/dist/esm/opacityModifier.test-d.native.js.map +0 -1
  1578. package/dist/esm/styledHtml.test-d.mjs +0 -188
  1579. package/dist/esm/styledHtml.test-d.mjs.map +0 -1
  1580. package/dist/esm/styledHtml.test-d.native.js +0 -188
  1581. package/dist/esm/styledHtml.test-d.native.js.map +0 -1
  1582. package/dist/esm/styledNonStyleProps.test-d.mjs +0 -64
  1583. package/dist/esm/styledNonStyleProps.test-d.mjs.map +0 -1
  1584. package/dist/esm/styledNonStyleProps.test-d.native.js +0 -64
  1585. package/dist/esm/styledNonStyleProps.test-d.native.js.map +0 -1
  1586. package/dist/esm/type-utils.mjs.map +0 -1
  1587. package/dist/esm/type-utils.native.js.map +0 -1
  1588. package/src/animationDriverTypes.test-d.ts +0 -332
  1589. package/src/helpers/createMediaStyle.ts +0 -167
  1590. package/src/helpers/getGroupPropParts.ts +0 -46
  1591. package/src/helpers/getTokenForKey.ts +0 -236
  1592. package/src/helpers/isActivePlatform.ts +0 -43
  1593. package/src/helpers/isActiveTheme.ts +0 -4
  1594. package/src/helpers/platformResolveValue.native.ts +0 -75
  1595. package/src/helpers/platformResolveValue.ts +0 -26
  1596. package/src/helpers/proxyThemeVariables.tsx +0 -13
  1597. package/src/helpers/pseudoDescriptors.ts +0 -74
  1598. package/src/helpers/pseudoTransitions.ts +0 -97
  1599. package/src/helpers/resolveCompoundTokens.ts +0 -28
  1600. package/src/opacityModifier.test-d.ts +0 -65
  1601. package/src/styledHtml.test-d.ts +0 -286
  1602. package/src/styledNonStyleProps.test-d.ts +0 -106
  1603. package/tsconfig.json +0 -44
  1604. package/tsconfig.test.json +0 -9
  1605. package/types/helpers/createMediaStyle.d.ts +0 -5
  1606. package/types/helpers/createMediaStyle.d.ts.map +0 -1
  1607. package/types/helpers/getGroupPropParts.d.ts +0 -7
  1608. package/types/helpers/getGroupPropParts.d.ts.map +0 -1
  1609. package/types/helpers/getTokenForKey.d.ts +0 -6
  1610. package/types/helpers/getTokenForKey.d.ts.map +0 -1
  1611. package/types/helpers/isActivePlatform.d.ts +0 -16
  1612. package/types/helpers/isActivePlatform.d.ts.map +0 -1
  1613. package/types/helpers/isActiveTheme.d.ts +0 -2
  1614. package/types/helpers/isActiveTheme.d.ts.map +0 -1
  1615. package/types/helpers/parseNativeStyle.d.ts.map +0 -1
  1616. package/types/helpers/platformResolveValue.d.ts +0 -6
  1617. package/types/helpers/platformResolveValue.d.ts.map +0 -1
  1618. package/types/helpers/platformResolveValue.native.d.ts +0 -7
  1619. package/types/helpers/platformResolveValue.native.d.ts.map +0 -1
  1620. package/types/helpers/proxyThemeVariables.d.ts +0 -2
  1621. package/types/helpers/proxyThemeVariables.d.ts.map +0 -1
  1622. package/types/helpers/pseudoDescriptors.d.ts +0 -51
  1623. package/types/helpers/pseudoDescriptors.d.ts.map +0 -1
  1624. package/types/helpers/pseudoTransitions.d.ts +0 -29
  1625. package/types/helpers/pseudoTransitions.d.ts.map +0 -1
  1626. package/types/helpers/resolveCompoundTokens.d.ts +0 -9
  1627. package/types/helpers/resolveCompoundTokens.d.ts.map +0 -1
  1628. package/vitest.config.d.ts +0 -3
  1629. package/vitest.config.d.ts.map +0 -1
  1630. package/vitest.config.ts +0 -14
@@ -1,59 +1,28 @@
1
- import { isServer, isWeb } from '@tamagui/constants'
1
+ import { isServer, isWeb, useIsomorphicLayoutEffect } from '@tamagui/constants'
2
2
  import { useEffect, useReducer, useRef } from 'react'
3
3
  import { getSetting } from '../config'
4
- import { resetMediaStyleCache } from '../helpers/createMediaStyle'
4
+ import { formatDiagnostic } from '../helpers/formatDiagnostic'
5
+ import { isOptimizedForFirstRender } from './isOptimizedForFirstRender'
5
6
  import { matchMedia } from '../helpers/matchMedia'
6
7
  import { mediaObjectToString } from '../helpers/mediaObjectToString'
7
8
  import {
8
9
  getMedia,
9
10
  mediaKeys,
10
- mediaKeysOrdered,
11
11
  mediaQueryConfig,
12
12
  setMediaState,
13
13
  } from '../helpers/mediaState'
14
14
  import type {
15
15
  ComponentContextI,
16
16
  DebugProp,
17
- GetStyleState,
18
- IsMediaType,
19
17
  MediaQueryState,
20
18
  TamaguiInternalConfig,
21
19
  UseMediaState,
22
20
  WidthHeight,
23
21
  } from '../types'
24
- import { defaultMediaImportance } from '../helpers/pseudoDescriptors'
25
-
26
- const mediaKeyRegex = /\$(platform|theme|group)-/
27
-
28
- export const isMediaKey = (key: string): boolean => {
29
- if (key[0] !== '$') return false
30
- if (mediaKeys.has(key)) return true
31
- if (mediaKeyRegex.test(key)) return true
32
- return false
33
- }
34
-
35
- export const getMediaKey = (key: string): IsMediaType => {
36
- if (key[0] !== '$') return false
37
- if (mediaKeys.has(key)) return true
38
- const match = key.match(mediaKeyRegex)
39
- if (match) return match[1] as 'platform' | 'theme' | 'group'
40
- return false
41
- }
42
22
 
43
23
  // for SSR capture it at time of startup
44
24
  let initState: MediaQueryState
45
25
 
46
- export const getMediaKeyImportance = (key: string) => {
47
- if (process.env.NODE_ENV === 'development' && key[0] === '$') {
48
- throw new Error('use short key')
49
- }
50
-
51
- // + 100 because we set base usedKeys=1, pseudos are 2-N (however many we have)
52
- // all media go above all pseudos so we need to pad it based on that
53
- // right now theres 5 pseudos but in the future could be a few more
54
- return mediaKeysOrdered.indexOf(key) + 100
55
- }
56
-
57
26
  const dispose = new Set<Function>()
58
27
 
59
28
  let mediaVersion = 0
@@ -63,20 +32,16 @@ export const configureMedia = (config: TamaguiInternalConfig) => {
63
32
  const mediaQueryDefaultActive = getSetting('mediaQueryDefaultActive')
64
33
  if (!media) return
65
34
  mediaVersion++
66
- // reset cached media style prefixes/selectors so they get recalculated with new key order
67
- resetMediaStyleCache()
68
35
  // touch-tracker getter object depends on the current media key set
69
36
  resetMediaTouchTracker()
37
+ // a replaced key set invalidates the diff baseline
38
+ publishedState = null
70
39
  for (const key in media) {
71
40
  getMedia()[key] = mediaQueryDefaultActive?.[key] || false
72
- mediaKeys.add(`$${key}`)
41
+ mediaKeys.add(key)
73
42
  }
74
43
  Object.assign(mediaQueryConfig, media)
75
44
  initState = { ...getMedia() }
76
- // in place: the array is shared across copies of this package, so replacing it
77
- // would leave the other copies pointing at the old one
78
- mediaKeysOrdered.length = 0
79
- mediaKeysOrdered.push(...Object.keys(media))
80
45
  setupMediaListeners()
81
46
  }
82
47
 
@@ -107,7 +72,16 @@ export function setupMediaListeners() {
107
72
  const getMatch = () => matchMedia(str)
108
73
  const match = getMatch()
109
74
  if (!match) {
110
- throw new Error('⚠️ No match')
75
+ throw new Error(
76
+ formatDiagnostic(
77
+ 'TAMAGUI_MEDIA_MATCH',
78
+ 'useMedia',
79
+ 'matchMedia returned no MediaQueryList',
80
+ 'Provide a matchMedia implementation that returns a MediaQueryList',
81
+ 'key,query,platform',
82
+ { key, query: str, platform: isWeb ? 'web' : 'native' }
83
+ )
84
+ )
111
85
  }
112
86
 
113
87
  // react native needs these deprecated apis for now
@@ -127,10 +101,58 @@ export function setupMediaListeners() {
127
101
  }
128
102
  }
129
103
 
130
- const listeners = new Set<any>()
104
+ type MediaListener = (state: MediaQueryState) => void
105
+
106
+ // subscribers indexed by the media key they actually read, so a breakpoint
107
+ // change wakes only the components that read that breakpoint instead of every
108
+ // media subscriber on the page. `globalListeners` holds the subscribers that
109
+ // can't be keyed: first-render mode hands out the raw state object with no
110
+ // getter tracking, so its snapshot compares by identity and any publish counts.
111
+ const listenersByKey = new Map<string, Set<MediaListener>>()
112
+ const globalListeners = new Set<MediaListener>()
113
+
114
+ // last state published to subscribers, so a publish can wake only the buckets
115
+ // whose key value actually changed. null means "no baseline": configureMedia
116
+ // resets it so the first publish after a config swap reaches every bucket.
117
+ let publishedState: MediaQueryState | null = null
118
+
119
+ /**
120
+ * instrumentation for the media render-count fixture. `notified` counts
121
+ * subscriber callbacks actually invoked, which is a different number from
122
+ * committed React renders: a woken callback re-reads its snapshot and usually
123
+ * bails out, and the native fast path can commit a style without a render.
124
+ */
125
+ export const _mediaListenerStats = {
126
+ publishes: 0,
127
+ notified: 0,
128
+ }
131
129
 
132
130
  export function updateMediaListeners() {
133
- listeners.forEach((cb) => cb(getMedia()))
131
+ _mediaListenerStats.publishes++
132
+ const media = getMedia()
133
+ const prev = publishedState
134
+ publishedState = media
135
+
136
+ if (listenersByKey.size) {
137
+ // dedupe: one subscriber can sit in several key buckets
138
+ const woken = new Set<MediaListener>()
139
+ for (const key of mediaKeys) {
140
+ if (prev !== null && media[key] === prev[key]) continue
141
+ const bucket = listenersByKey.get(key)
142
+ if (bucket) {
143
+ for (const cb of bucket) woken.add(cb)
144
+ }
145
+ }
146
+ for (const cb of woken) {
147
+ _mediaListenerStats.notified++
148
+ cb(media)
149
+ }
150
+ }
151
+
152
+ globalListeners.forEach((cb) => {
153
+ _mediaListenerStats.notified++
154
+ cb(media)
155
+ })
134
156
  }
135
157
 
136
158
  type MediaState = {
@@ -138,6 +160,11 @@ type MediaState = {
138
160
  keys?: Set<string> | null
139
161
  }
140
162
 
163
+ // per-component media-update state, keyed on a per-instance object
164
+ // (createComponent passes stateRef.current). never key this on a shared object
165
+ // like componentContext: every component under a provider would write to the
166
+ // same entry and the last sibling to render would win, disabling media updates
167
+ // for any earlier-rendered media-dependent sibling.
141
168
  const States = new WeakMap<any, MediaState>()
142
169
 
143
170
  // shared "touch tracker" prototype: one object whose enumerable getter
@@ -155,8 +182,7 @@ const refSlot = Symbol('mediaRefSlot')
155
182
 
156
183
  function buildTouchTrackerProto(): object {
157
184
  const proto: PropertyDescriptorMap = {}
158
- for (const fullKey of mediaKeys) {
159
- const key = fullKey[0] === '$' ? fullKey.slice(1) : fullKey
185
+ for (const key of mediaKeys) {
160
186
  proto[key] = {
161
187
  enumerable: true,
162
188
  configurable: true,
@@ -184,8 +210,11 @@ function resetMediaTouchTracker() {
184
210
  export function setMediaShouldUpdate(
185
211
  ref: any,
186
212
  enabled?: boolean,
187
- keys?: MediaState['keys']
213
+ keys?: MediaState['keys'],
214
+ optimizeForFirstRender = false
188
215
  ) {
216
+ if (optimizeForFirstRender) return
217
+
189
218
  const cur = States.get(ref)
190
219
 
191
220
  if (!cur || cur.enabled !== enabled || keys) {
@@ -197,58 +226,156 @@ export function setMediaShouldUpdate(
197
226
  }
198
227
  }
199
228
 
200
- function subscribe(subscriber: () => void) {
201
- listeners.add(subscriber)
202
- return () => {
203
- listeners.delete(subscriber)
229
+ type MediaRef = {
230
+ keys: Set<string> | null
231
+ lastState: MediaQueryState
232
+ pendingState?: MediaQueryState
233
+ renderVersion: number
234
+ // the callback registered in the buckets, stable for the life of the hook
235
+ onChange?: MediaListener
236
+ // which buckets `onChange` currently sits in. a Set is a copy of the touched
237
+ // keys at the last commit (`keys` is cleared and refilled every render), null
238
+ // is the whole-object bucket, undefined means not subscribed at all.
239
+ listeningTo?: Set<string> | null
240
+ // stable per-component closures + reusable Proxy. allocating new ones each
241
+ // render (via useSyncExternalStore + `new Proxy(state, ...)`) was a real
242
+ // per-component-per-render cost; we hold one Proxy whose target is swapped
243
+ // by mutating `proxyTarget` and re-reading it in the get trap.
244
+ proxyTarget: MediaQueryState
245
+ proxy: UseMediaState
246
+ getSnapshot: () => MediaQueryState
247
+ componentContext?: ComponentContextI
248
+ uid?: object
249
+ debug?: DebugProp
250
+ optimizeForFirstRender: boolean
251
+ }
252
+
253
+ // the media keys a subscriber observes. null means the whole state object:
254
+ // first-render mode has no getter tracking, so it can only compare identity.
255
+ // getSnapshot and the bucket index MUST agree here, or a component gets skipped
256
+ // for a key it reads.
257
+ function mediaListenKeys(ref: MediaRef): Set<string> | null {
258
+ if (ref.optimizeForFirstRender) return null
259
+ return (ref.uid ? States.get(ref.uid)?.keys : undefined) || ref.keys!
260
+ }
261
+
262
+ function indexMediaListener(ref: MediaRef) {
263
+ const keys = mediaListenKeys(ref)
264
+ const cur = ref.listeningTo
265
+ if (cur !== undefined && sameMediaKeys(cur, keys)) return
266
+
267
+ unindexMediaListener(ref)
268
+ const cb = ref.onChange!
269
+
270
+ if (keys === null) {
271
+ globalListeners.add(cb)
272
+ ref.listeningTo = null
273
+ return
274
+ }
275
+
276
+ ref.listeningTo = new Set(keys)
277
+ for (const key of keys) {
278
+ let bucket = listenersByKey.get(key)
279
+ if (!bucket) {
280
+ bucket = new Set()
281
+ listenersByKey.set(key, bucket)
282
+ }
283
+ bucket.add(cb)
284
+ }
285
+ }
286
+
287
+ function unindexMediaListener(ref: MediaRef) {
288
+ const keys = ref.listeningTo
289
+ if (keys === undefined) return
290
+ ref.listeningTo = undefined
291
+
292
+ const cb = ref.onChange!
293
+ if (keys === null) {
294
+ globalListeners.delete(cb)
295
+ return
296
+ }
297
+
298
+ for (const key of keys) {
299
+ const bucket = listenersByKey.get(key)
300
+ if (!bucket) continue
301
+ bucket.delete(cb)
302
+ // drop empties so a key removed by configureMedia leaves no bucket behind
303
+ if (!bucket.size) listenersByKey.delete(key)
304
+ }
305
+ }
306
+
307
+ function sameMediaKeys(a: Set<string> | null, b: Set<string> | null) {
308
+ if (a === null || b === null) return a === b
309
+ if (a.size !== b.size) return false
310
+ for (const key of b) {
311
+ if (!a.has(key)) return false
204
312
  }
313
+ return true
205
314
  }
206
315
 
207
316
  export function useMedia(
208
317
  componentContext?: ComponentContextI,
209
- debug?: DebugProp
318
+ debug?: DebugProp,
319
+ // per-component-instance key for the States map (createComponent passes
320
+ // stateRef.current, matching its setMediaShouldUpdate call)
321
+ uid?: object
210
322
  ): UseMediaState {
211
323
  'use no memo'
212
324
 
213
- type MediaRef = {
214
- keys: Set<string>
215
- lastState: MediaQueryState
216
- pendingState?: MediaQueryState
217
- renderVersion: number
218
- unsubscribe?: () => void
219
- // stable per-component closures + reusable Proxy. allocating new ones each
220
- // render (via useSyncExternalStore + `new Proxy(state, ...)`) was a real
221
- // per-component-per-render cost; we hold one Proxy whose target is swapped
222
- // by mutating `proxyTarget` and re-reading it in the get trap.
223
- proxyTarget: MediaQueryState
224
- proxy: UseMediaState
225
- getSnapshot: () => MediaQueryState
226
- componentContext?: ComponentContextI
227
- debug?: DebugProp
228
- }
229
-
230
325
  const internalRef = useRef<MediaRef | null>(null)
231
326
  if (!internalRef.current) {
232
- const initial = getMedia()
327
+ // SSR contract (see settings.disableSSR docs): every first WEB render uses
328
+ // mediaQueryDefaultActive so hydration matches the server — including
329
+ // lazily-hydrated boundaries that mount long after the initial pass.
330
+ // a pre-paint layout effect then corrects to the real matchMedia values,
331
+ // so fresh client-only mounts never paint a wrong frame. Native has no
332
+ // hydration: starting from the defaults object made the sync effect's
333
+ // reference check fail on every mount and re-render the entire tree once.
334
+ const initial =
335
+ isWeb && !isServer && !getSetting('disableSSR') ? initState : getMedia()
336
+ const optimizeForFirstRender = isOptimizedForFirstRender()
233
337
  const r: MediaRef = {
234
- keys: new Set<string>(),
338
+ keys: optimizeForFirstRender ? null : new Set<string>(),
235
339
  lastState: initial,
236
340
  renderVersion: 0,
237
341
  proxyTarget: initial,
238
342
  proxy: undefined as unknown as UseMediaState,
239
343
  getSnapshot: undefined as unknown as () => MediaQueryState,
240
344
  componentContext,
345
+ uid,
241
346
  debug,
347
+ optimizeForFirstRender,
348
+ }
349
+ if (optimizeForFirstRender) {
350
+ r.proxy = initial as UseMediaState
351
+ } else {
352
+ // proxy → Object.create(getterProto) with a Symbol slot. Per-key get is a
353
+ // monomorphic getter call (Hermes-fast) instead of a Proxy trap.
354
+ const tracker = Object.create(getTouchTrackerProto())
355
+ tracker[refSlot] = {
356
+ proxyTarget: initial,
357
+ keys: r.keys!,
358
+ } as MediaRefSlot
359
+ r.proxy = tracker as UseMediaState
242
360
  }
243
- // proxy → Object.create(getterProto) with a Symbol slot. Per-key get is a
244
- // monomorphic getter call (Hermes-fast) instead of a Proxy trap.
245
- const tracker = Object.create(getTouchTrackerProto())
246
- tracker[refSlot] = { proxyTarget: initial, keys: r.keys } as MediaRefSlot
247
- r.proxy = tracker as UseMediaState
248
361
  r.getSnapshot = () => {
249
- const curKeys = r.componentContext
250
- ? States.get(r.componentContext)?.keys || r.keys
251
- : r.keys
362
+ if (r.optimizeForFirstRender) {
363
+ const ms = getMedia()
364
+ if (ms === r.lastState) {
365
+ return r.lastState
366
+ }
367
+
368
+ if (r.componentContext?.mediaEmit) {
369
+ r.componentContext.mediaEmit(ms)
370
+ r.pendingState = ms
371
+ return r.lastState
372
+ }
373
+
374
+ r.lastState = ms
375
+ return ms
376
+ }
377
+
378
+ const curKeys = mediaListenKeys(r)!
252
379
  const { lastState, pendingState } = r
253
380
 
254
381
  if (!curKeys.size) {
@@ -281,6 +408,7 @@ export function useMedia(
281
408
  } else {
282
409
  // refresh per-render inputs the closures read through the ref
283
410
  internalRef.current.componentContext = componentContext
411
+ internalRef.current.uid = uid
284
412
  internalRef.current.debug = debug
285
413
  }
286
414
 
@@ -294,38 +422,65 @@ export function useMedia(
294
422
  }
295
423
 
296
424
  // clear each render to track only rendered touched keys
297
- if (ref.keys.size) {
425
+ if (ref.keys?.size) {
298
426
  ref.keys.clear()
299
427
  }
300
428
 
301
- // manual subscription (same shape as useThemeStateSubscribed): same
302
- // granular bailout via getSnapshot returning the same MediaQueryState ref
303
- // when none of the component's touched keys changed, but fewer
304
- // React-internal hook slots on Hermes than useSyncExternalStore.
429
+ // manual subscription (same shape as useThemeStateSubscribed): the
430
+ // subscription is indexed by the keys this component reads, so a breakpoint
431
+ // change never reaches a component that doesn't read it, and getSnapshot
432
+ // returns the same MediaQueryState ref for anything that slips through.
433
+ // fewer React-internal hook slots on Hermes than useSyncExternalStore.
305
434
  const [, forceUpdate] = useReducer(incReducer, 0)
306
- const state = isServer ? initState : ref.getSnapshot()
435
+ const state = isServer
436
+ ? initState
437
+ : ref.optimizeForFirstRender && ref.renderVersion === 1
438
+ ? ref.lastState
439
+ : ref.getSnapshot()
307
440
  ref.proxyTarget = state
308
- ;(ref.proxy as any)[refSlot].proxyTarget = state
441
+ if (!ref.optimizeForFirstRender) {
442
+ ;(ref.proxy as any)[refSlot].proxyTarget = state
443
+ }
444
+
445
+ // correct the defaults-first render to real matchMedia values before paint
446
+ useIsomorphicLayoutEffect(() => {
447
+ const synced = ref.getSnapshot()
448
+ if (synced !== ref.proxyTarget) {
449
+ ref.proxyTarget = synced
450
+ if (!ref.optimizeForFirstRender) {
451
+ ;(ref.proxy as any)[refSlot].proxyTarget = synced
452
+ }
453
+ forceUpdate()
454
+ }
455
+ }, [])
309
456
 
310
457
  useEffect(() => {
311
458
  const renderVersion = ref.renderVersion
312
459
  const shouldSubscribe =
313
- !ref.componentContext || !!States.get(ref.componentContext)?.enabled
460
+ ref.optimizeForFirstRender || !ref.uid || !!States.get(ref.uid)?.enabled
314
461
 
315
462
  if (shouldSubscribe) {
316
- if (!ref.unsubscribe) {
317
- ref.unsubscribe = subscribe(() => {
318
- const next = ref.getSnapshot()
319
- if (next !== ref.proxyTarget) {
320
- ref.proxyTarget = next
463
+ ref.onChange ||= () => {
464
+ const next = ref.getSnapshot()
465
+ if (next !== ref.proxyTarget) {
466
+ // mirrors update first either way, so a later natural render
467
+ // resolves the same media values the fast path committed
468
+ ref.proxyTarget = next
469
+ if (!ref.optimizeForFirstRender) {
321
470
  ;(ref.proxy as any)[refSlot].proxyTarget = next
322
- forceUpdate()
323
471
  }
324
- })
472
+ // native fast path (experimental): uid is createComponent's
473
+ // stateRef.current; when the component can commit the media-driven
474
+ // style change straight to the native tree, skip the re-render
475
+ if ((ref.uid as any)?.nativeMediaUpdate?.(forceUpdate)) return
476
+ forceUpdate()
477
+ }
325
478
  }
326
- } else if (ref.unsubscribe) {
327
- ref.unsubscribe()
328
- ref.unsubscribe = undefined
479
+ // re-index every commit: the touched-key set is rebuilt each render, so a
480
+ // component that starts or stops reading a breakpoint changes buckets
481
+ indexMediaListener(ref)
482
+ } else {
483
+ unindexMediaListener(ref)
329
484
  }
330
485
 
331
486
  return () => {
@@ -333,19 +488,16 @@ export function useMedia(
333
488
  // a newer render bumps renderVersion before that cleanup, so equality here
334
489
  // means this is the final unmount cleanup.
335
490
  if (ref.renderVersion === renderVersion) {
336
- ref.unsubscribe?.()
337
- ref.unsubscribe = undefined
491
+ unindexMediaListener(ref)
338
492
  }
339
493
  }
340
494
  })
341
495
 
342
- return ref.proxy
496
+ return ref.optimizeForFirstRender ? (state as UseMediaState) : ref.proxy
343
497
  }
344
498
 
345
499
  const incReducer = (c: number): number => c + 1
346
500
 
347
- const getServerSnapshot = () => initState
348
-
349
501
  let disableMediaTouch = false
350
502
  export function _disableMediaTouch(val: boolean) {
351
503
  disableMediaTouch = val
@@ -366,19 +518,6 @@ export function getMediaState(mediaGroups: Set<string>, layout: WidthHeight) {
366
518
  return res
367
519
  }
368
520
 
369
- export const getMediaImportanceIfMoreImportant = (
370
- mediaKey: string,
371
- key: string,
372
- styleState: GetStyleState,
373
- isSizeMedia: boolean
374
- ) => {
375
- const importance = isSizeMedia
376
- ? getMediaKeyImportance(mediaKey)
377
- : defaultMediaImportance
378
- const usedKeys = styleState.usedKeys
379
- return !usedKeys[key] || importance > usedKeys[key] ? importance : null
380
- }
381
-
382
521
  const cachedMediaKeyToQuery: Record<string, string> = {}
383
522
 
384
523
  export function mediaKeyToQuery(key: string) {
@@ -393,13 +532,15 @@ export function mediaKeyMatch(
393
532
  dimensions: { width: number; height: number }
394
533
  ) {
395
534
  const mediaQueries = mediaQueryConfig[key]
396
- const result = Object.keys(mediaQueries).every((query) => {
535
+ for (const query in mediaQueries) {
397
536
  const expectedVal = +mediaQueries[query]
398
537
  const isMax = query.startsWith('max')
399
538
  const isWidth = query.endsWith('Width')
400
539
  const givenVal = dimensions[isWidth ? 'width' : 'height']
401
540
  // if not max then min
402
- return isMax ? givenVal < expectedVal : givenVal > expectedVal
403
- })
404
- return result
541
+ if (isMax ? givenVal >= expectedVal : givenVal <= expectedVal) {
542
+ return false
543
+ }
544
+ }
545
+ return true
405
546
  }
@@ -0,0 +1,34 @@
1
+ import { useContext } from 'react'
2
+
3
+ import {
4
+ getInlineThemeLayer,
5
+ getThemeProviderParent,
6
+ ThemeStateContext,
7
+ type InlineThemeLayer,
8
+ } from './useThemeState'
9
+ import { useThemeName } from './useThemeName'
10
+
11
+ export type PortalThemeState = {
12
+ name: string
13
+ /** Root-most first, so a consumer can replay them in authored order. */
14
+ layers: InlineThemeLayer[]
15
+ }
16
+
17
+ /**
18
+ * The theme state a portal must carry across the mount boundary.
19
+ *
20
+ * A name alone is not enough: `<Theme name="dark" background="#0b2545">` puts
21
+ * its direct values on a CSS custom-property node in the mount ancestry, and
22
+ * portaled content is not a descendant of that node.
23
+ */
24
+ export function usePortalThemeState(): PortalThemeState {
25
+ const name = useThemeName()
26
+ const layers: InlineThemeLayer[] = []
27
+ let cursor: string | undefined = useContext(ThemeStateContext)
28
+ while (cursor) {
29
+ const layer = getInlineThemeLayer(cursor)
30
+ if (layer) layers.unshift(layer)
31
+ cursor = getThemeProviderParent(cursor)
32
+ }
33
+ return { name, layers }
34
+ }
@@ -4,6 +4,7 @@ import { getConfig } from '../config'
4
4
  import { ComponentContext } from '../contexts/ComponentContext'
5
5
  import { GroupContext } from '../contexts/GroupContext'
6
6
  import { useSplitStyles } from '../helpers/getSplitStyles'
7
+ import { subscribeToSafeArea } from '../helpers/resolveSafeAreaVariable'
7
8
  import { subscribeToContextGroup } from '../helpers/subscribeToContextGroup'
8
9
  import type { SplitStyleProps, StaticConfig, ThemeParsed, UseMediaState } from '../types'
9
10
  import type { ViewProps, ViewStyle } from '../views/View'
@@ -27,10 +28,7 @@ type UsePropsOptions = Pick<
27
28
  noMedia?: boolean
28
29
  }
29
30
 
30
- export type PropsWithoutMediaStyles<A> = {
31
- // remove all media
32
- [Key in keyof A as Key extends `$${string}` ? never : Key]?: A[Key]
33
- }
31
+ export type PropsWithoutMediaStyles<A> = Partial<A>
34
32
 
35
33
  type PropsLikeObject = (ViewProps & Record<string, any>) | object
36
34
  type StyleLikeObject = (ViewStyle & Record<string, any>) | object
@@ -82,7 +80,6 @@ export function usePropsAndStyle<A extends PropsLikeObject>(
82
80
  ): [PropsWithoutMediaStyles<A>, PropsWithoutMediaStyles<A>, ThemeParsed, UseMediaState] {
83
81
  const staticConfig = opts?.forComponent?.staticConfig ?? View.staticConfig
84
82
  const [theme, themeState] = useThemeWithState({
85
- componentName: staticConfig.componentName,
86
83
  name: 'theme' in props ? props.theme : undefined,
87
84
  needsUpdate() {
88
85
  return true
@@ -90,7 +87,16 @@ export function usePropsAndStyle<A extends PropsLikeObject>(
90
87
  })
91
88
  const componentContext = React.useContext(ComponentContext)
92
89
  const groupContext = React.useContext(GroupContext)
93
- const { state, disabled, setStateShallow } = useComponentState(
90
+ // useComponentState injects enter/exit presence variants onto a fresh copy
91
+ // (it no longer mutates our `props` in place), so use the returned object for
92
+ // style resolution below to keep those variants applied
93
+ const {
94
+ props: statefulProps,
95
+ state,
96
+ disabled,
97
+ setState,
98
+ setStateShallow,
99
+ } = useComponentState(
94
100
  props,
95
101
  componentContext.animationDriver,
96
102
  staticConfig,
@@ -103,7 +109,7 @@ export function usePropsAndStyle<A extends PropsLikeObject>(
103
109
  : useMedia()
104
110
 
105
111
  const splitStyles = useSplitStyles(
106
- props,
112
+ statefulProps,
107
113
  staticConfig,
108
114
  theme,
109
115
  themeState?.name || '',
@@ -125,26 +131,44 @@ export function usePropsAndStyle<A extends PropsLikeObject>(
125
131
  const { mediaGroups, pseudoGroups } = splitStyles || {}
126
132
 
127
133
  useIsomorphicLayoutEffect(() => {
134
+ let disposeSafeArea: (() => void) | undefined
135
+ if (splitStyles?.usesSafeArea) {
136
+ const updateSafeArea = () => {
137
+ setState((previous) => ({ ...previous }))
138
+ }
139
+ disposeSafeArea = subscribeToSafeArea(updateSafeArea)
140
+ // close the render-to-subscribe race: the provider tracker may have
141
+ // published new insets after this hook evaluated its styles.
142
+ updateSafeArea()
143
+ }
144
+
128
145
  if (disabled) {
129
- return
146
+ return disposeSafeArea
130
147
  }
131
148
 
132
149
  if (state.unmounted) {
133
150
  setStateShallow({ unmounted: false })
134
- return
151
+ return disposeSafeArea
135
152
  }
136
153
 
137
154
  if (groupContext) {
138
- return subscribeToContextGroup({
155
+ const disposeGroup = subscribeToContextGroup({
139
156
  groupContext,
140
157
  setStateShallow,
141
158
  mediaGroups,
142
159
  pseudoGroups,
143
160
  })
161
+ if (!disposeSafeArea) return disposeGroup
162
+ return () => {
163
+ disposeSafeArea()
164
+ disposeGroup?.()
165
+ }
144
166
  }
167
+ return disposeSafeArea
145
168
  }, [
146
169
  disabled,
147
170
  groupContext,
171
+ splitStyles?.usesSafeArea,
148
172
  pseudoGroups ? Object.keys([...pseudoGroups]).join('') : 0,
149
173
  mediaGroups ? Object.keys([...mediaGroups]).join('') : 0,
150
174
  ])