@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,3 +1,4 @@
1
+
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -5,36 +6,29 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
5
6
  var __getProtoOf = Object.getPrototypeOf;
6
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
8
  var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: true
11
- });
9
+ for (var name in all) __defProp(target, name, {
10
+ get: all[name],
11
+ enumerable: true
12
+ });
12
13
  };
13
14
  var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
- get: () => from[key],
17
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
- });
19
- }
20
- return to;
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
17
+ get: () => from[key],
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ return to;
21
22
  };
22
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
- // If the importer is in node compatibility mode or this is not an ESM
24
- // file that has been converted to a CommonJS file using a Babel-
25
- // compatible transform (i.e. "__esModule" has not been set), then set
26
- // "default" to the CommonJS "module.exports" for node compatibility.
27
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
- value: mod,
29
- enumerable: true
23
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
24
+ value: mod,
25
+ enumerable: true
30
26
  }) : target, mod));
31
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
- value: true
33
- }), mod);
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
34
28
  var createComponent_exports = {};
35
29
  __export(createComponent_exports, {
36
- componentSetStates: () => componentSetStates,
37
- createComponent: () => createComponent
30
+ componentSetStates: () => componentSetStates,
31
+ createComponent: () => createComponent
38
32
  });
39
33
  module.exports = __toCommonJS(createComponent_exports);
40
34
  var import_compose_refs = require("@tamagui/compose-refs");
@@ -51,17 +45,21 @@ var import_createVariable = require("./createVariable.cjs");
51
45
  var import_defaultComponentState = require("./defaultComponentState.cjs");
52
46
  var import_eventHandling = require("./eventHandling.cjs");
53
47
  var import_getDefaultProps = require("./helpers/getDefaultProps.cjs");
48
+ var import_componentDisplayName = require("./helpers/componentDisplayName.cjs");
54
49
  var import_resolveAnimationDriver = require("./helpers/resolveAnimationDriver.cjs");
55
50
  var import_getSplitStyles = require("./helpers/getSplitStyles.cjs");
51
+ require("./helpers/nativeStyleEngine.cjs");
52
+ require("./hooks/getThemeProxied.cjs");
56
53
  var import_log = require("./helpers/log.cjs");
57
54
  var import_mergeProps = require("./helpers/mergeProps.cjs");
58
55
  var import_mergeRenderElementProps = require("./helpers/mergeRenderElementProps.cjs");
56
+ require("./helpers/mediaState.cjs");
59
57
  var import_objectIdentityKey = require("./helpers/objectIdentityKey.cjs");
60
58
  var import_pointerEvents = require("./helpers/pointerEvents.cjs");
61
- var import_pseudoTransitions = require("./helpers/pseudoTransitions.cjs");
59
+ var import_extractPseudoState = require("./helpers/extractPseudoState.cjs");
60
+ var import_resolveSafeAreaVariable = require("./helpers/resolveSafeAreaVariable.cjs");
62
61
  var import_setElementProps = require("./helpers/setElementProps.cjs");
63
62
  var import_subscribeToContextGroup = require("./helpers/subscribeToContextGroup.cjs");
64
- var import_themeable = require("./helpers/themeable.cjs");
65
63
  var import_wrapStyleTags = require("./helpers/wrapStyleTags.cjs");
66
64
  var import_useComponentState = require("./hooks/useComponentState.cjs");
67
65
  var import_useMedia = require("./hooks/useMedia.cjs");
@@ -73,1011 +71,963 @@ var import_jsx_runtime = require("react/jsx-runtime");
73
71
  let time;
74
72
  let debugKeyListeners;
75
73
  let startVisualizer;
76
- const componentSetStates = /* @__PURE__ */new Set();
77
- const avoidReRenderKeys = /* @__PURE__ */new Set(["hover", "press", "pressIn", "group", "focus", "focusWithin", "media", "group"]);
78
- const groupPseudoKeys = ["disabled", "hover", "press", "pressIn", "focus", "focusVisible", "focusWithin"];
74
+ const componentSetStates = /* @__PURE__ */ new Set();
75
+ const avoidReRenderKeys = /* @__PURE__ */ new Set([
76
+ "hover",
77
+ "press",
78
+ "pressIn",
79
+ "group",
80
+ "focus",
81
+ "focusWithin",
82
+ "media",
83
+ "group"
84
+ ]);
85
+ const groupPseudoKeys = [
86
+ "disabled",
87
+ "hover",
88
+ "press",
89
+ "pressIn",
90
+ "focus",
91
+ "focusVisible",
92
+ "focusWithin"
93
+ ];
94
+ function getStyledContextKeys(staticConfig, styledContextValue) {
95
+ const propKeys = staticConfig.contextProps || staticConfig.context?.propKeys;
96
+ if (!propKeys) return styledContextValue;
97
+ const out = {};
98
+ for (const key of propKeys) out[key] = true;
99
+ if (styledContextValue) Object.assign(out, styledContextValue);
100
+ return out;
101
+ }
79
102
  if (typeof window !== "undefined") {
80
- const cancelPresses = () => {
81
- componentSetStates.forEach(setState => setState(prev => {
82
- if (prev.press || prev.pressIn) return {
83
- ...prev,
84
- press: false,
85
- pressIn: false
86
- };
87
- return prev;
88
- }));
89
- componentSetStates.clear();
90
- };
91
- const cancelTouches = () => {
92
- componentSetStates.forEach(setState => setState(prev => {
93
- if (prev.press || prev.pressIn || prev.hover) return {
94
- ...prev,
95
- press: false,
96
- pressIn: false,
97
- hover: false
98
- };
99
- return prev;
100
- }));
101
- componentSetStates.clear();
102
- };
103
- addEventListener("mouseup", cancelPresses);
104
- addEventListener("touchend", cancelTouches);
105
- addEventListener("touchcancel", cancelTouches);
106
- if (process.env.NODE_ENV === "development") startVisualizer = () => {
107
- const devVisualizerConfig = import_config.devConfig?.visualizer;
108
- if (devVisualizerConfig && !globalThis.__tamaguiDevVisualizer) {
109
- let show = function (val) {
110
- clearTimeout(tm);
111
- isShowing = val;
112
- debugKeyListeners?.forEach(l => l(val));
113
- if (!val && resizeListener) {
114
- window.removeEventListener("resize", resizeListener);
115
- resizeListener = null;
116
- }
117
- },
118
- cancelShow = function () {
119
- clearTimeout(tm);
120
- if (resizeListener) {
121
- window.removeEventListener("resize", resizeListener);
122
- resizeListener = null;
123
- }
124
- };
125
- globalThis.__tamaguiDevVisualizer = true;
126
- debugKeyListeners = /* @__PURE__ */new Set();
127
- let tm;
128
- let isShowing = false;
129
- let resizeListener = null;
130
- const options = {
131
- key: "Alt",
132
- delay: 800,
133
- ...(typeof devVisualizerConfig === "object" ? devVisualizerConfig : {})
134
- };
135
- window.addEventListener("blur", () => {
136
- show(false);
137
- });
138
- window.addEventListener("keydown", ({
139
- key,
140
- metaKey,
141
- defaultPrevented
142
- }) => {
143
- clearTimeout(tm);
144
- if (defaultPrevented) return;
145
- if (metaKey) return;
146
- if (key === options.key) {
147
- if (!resizeListener) {
148
- resizeListener = () => cancelShow();
149
- window.addEventListener("resize", resizeListener);
150
- }
151
- tm = setTimeout(() => {
152
- show(true);
153
- }, options.delay);
154
- }
155
- });
156
- window.addEventListener("keyup", ({
157
- defaultPrevented
158
- }) => {
159
- if (defaultPrevented) return;
160
- cancelShow();
161
- if (isShowing) show(false);
162
- });
163
- }
164
- };
103
+ const cancelPresses = () => {
104
+ componentSetStates.forEach((setState) => setState((prev) => {
105
+ if (prev.press || prev.pressIn) return {
106
+ ...prev,
107
+ press: false,
108
+ pressIn: false
109
+ };
110
+ return prev;
111
+ }));
112
+ componentSetStates.clear();
113
+ };
114
+ const cancelTouches = () => {
115
+ componentSetStates.forEach((setState) => setState((prev) => {
116
+ if (prev.press || prev.pressIn || prev.hover) return {
117
+ ...prev,
118
+ press: false,
119
+ pressIn: false,
120
+ hover: false
121
+ };
122
+ return prev;
123
+ }));
124
+ componentSetStates.clear();
125
+ };
126
+ addEventListener("mouseup", cancelPresses);
127
+ addEventListener("touchend", cancelTouches);
128
+ addEventListener("touchcancel", cancelTouches);
129
+ if (process.env.NODE_ENV === "development") startVisualizer = () => {
130
+ const devVisualizerConfig = import_config.devConfig?.visualizer;
131
+ if (devVisualizerConfig && !globalThis.__tamaguiDevVisualizer) {
132
+ let show = function(val) {
133
+ clearTimeout(tm);
134
+ isShowing = val;
135
+ debugKeyListeners?.forEach((l) => l(val));
136
+ if (!val && resizeListener) {
137
+ window.removeEventListener("resize", resizeListener);
138
+ resizeListener = null;
139
+ }
140
+ }, cancelShow = function() {
141
+ clearTimeout(tm);
142
+ if (resizeListener) {
143
+ window.removeEventListener("resize", resizeListener);
144
+ resizeListener = null;
145
+ }
146
+ };
147
+ globalThis.__tamaguiDevVisualizer = true;
148
+ debugKeyListeners = /* @__PURE__ */ new Set();
149
+ let tm;
150
+ let isShowing = false;
151
+ let resizeListener = null;
152
+ const options = {
153
+ key: "Alt",
154
+ delay: 800,
155
+ ...typeof devVisualizerConfig === "object" ? devVisualizerConfig : {}
156
+ };
157
+ window.addEventListener("blur", () => {
158
+ show(false);
159
+ });
160
+ window.addEventListener("keydown", ({ key, metaKey, defaultPrevented }) => {
161
+ clearTimeout(tm);
162
+ if (defaultPrevented) return;
163
+ if (metaKey) return;
164
+ if (key === options.key) {
165
+ if (!resizeListener) {
166
+ resizeListener = () => cancelShow();
167
+ window.addEventListener("resize", resizeListener);
168
+ }
169
+ tm = setTimeout(() => {
170
+ show(true);
171
+ }, options.delay);
172
+ }
173
+ });
174
+ window.addEventListener("keyup", ({ defaultPrevented }) => {
175
+ if (defaultPrevented) return;
176
+ cancelShow();
177
+ if (isShowing) show(false);
178
+ });
179
+ }
180
+ };
165
181
  }
166
- const lastInteractionWasKeyboard = {
167
- value: false
168
- };
169
- const lastInteractionWasTouch = {
170
- value: false
171
- };
182
+ const lastInteractionWasKeyboard = { value: false };
183
+ const lastInteractionWasTouch = { value: false };
172
184
  if (import_constants.isWeb && typeof document !== "undefined") {
173
- document.addEventListener("keydown", () => {
174
- if (!lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = true;
175
- });
176
- document.addEventListener("mousedown", () => {
177
- if (lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = false;
178
- });
179
- document.addEventListener("mousemove", () => {
180
- if (lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = false;
181
- lastInteractionWasTouch.value = false;
182
- });
183
- document.addEventListener("touchstart", () => {
184
- lastInteractionWasTouch.value = true;
185
- });
185
+ document.addEventListener("keydown", () => {
186
+ if (!lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = true;
187
+ });
188
+ document.addEventListener("mousedown", () => {
189
+ if (lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = false;
190
+ });
191
+ document.addEventListener("mousemove", () => {
192
+ if (lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = false;
193
+ lastInteractionWasTouch.value = false;
194
+ });
195
+ document.addEventListener("touchstart", () => {
196
+ lastInteractionWasTouch.value = true;
197
+ });
186
198
  }
187
199
  function createComponent(staticConfig) {
188
- let config = null;
189
- const {
190
- Component,
191
- isText,
192
- isHOC
193
- } = staticConfig;
194
- const component = import_react.default.forwardRef((propsIn, forwardedRef) => {
195
- "use no memo";
196
-
197
- config = config || (0, import_config.getConfig)();
198
- const internalID = process.env.NODE_ENV === "development" ? import_react.default.useId() : "";
199
- if (process.env.NODE_ENV === "development") {
200
- if (startVisualizer) {
201
- startVisualizer();
202
- startVisualizer = void 0;
203
- }
204
- }
205
- if (process.env.NODE_ENV === "test") {
206
- const testRenderCount = propsIn["data-test-renders"];
207
- if (testRenderCount && typeof testRenderCount === "object" && !Object.isFrozen(testRenderCount)) {
208
- testRenderCount.current = testRenderCount.current ?? 0;
209
- testRenderCount.current += 1;
210
- }
211
- }
212
- const {
213
- context,
214
- isReactNative
215
- } = staticConfig;
216
- const debugProp = propsIn["debug"];
217
- const styledContextValue = context ? import_react.default.useContext(context) : void 0;
218
- let overriddenContextProps = null;
219
- const componentContext = import_react.default.useContext(import_ComponentContext.ComponentContext);
220
- const hasTextAncestor = !!(import_constants.isWeb && isText ? componentContext.inText : false);
221
- if (!process.env.TAMAGUI_IS_CORE_NODE && process.env.NODE_ENV === "development" && debugProp === "profile" && !time) {
222
- time = require("@tamagui/timer").timer().start();
223
- globalThis["time"] = time;
224
- }
225
- if (process.env.NODE_ENV === "development" && !time && globalThis.time) time = globalThis.time;
226
- if (process.env.NODE_ENV === "development" && time) time`non-tamagui time (ignore)`;
227
- let props = propsIn;
228
- const componentName = props.componentName || staticConfig.componentName;
229
- const defaultProps = (0, import_getDefaultProps.getDefaultProps)(staticConfig, props.componentName);
230
- const [nextProps, overrides] = (0, import_mergeProps.mergeComponentProps)(defaultProps, styledContextValue, propsIn);
231
- props = nextProps;
232
- overriddenContextProps = overrides;
233
- if (process.env.NODE_ENV === "development" && import_constants.isClient) import_react.default.useEffect(() => {
234
- let node;
235
- let overlay = null;
236
- const remove = () => {
237
- if (overlay) try {
238
- overlay.parentNode?.removeChild(overlay);
239
- overlay = null;
240
- } catch {}
241
- };
242
- const debugVisualizerHandler = (show = false) => {
243
- node = stateRef.current.host;
244
- if (!node) return;
245
- if (show) {
246
- if (!overlay) {
247
- overlay = document.createElement("span");
248
- overlay.style.inset = "0px";
249
- overlay.style.zIndex = "1000000";
250
- overlay.style.position = "absolute";
251
- overlay.style.borderColor = "red";
252
- overlay.style.borderWidth = "1px";
253
- overlay.style.borderStyle = "dotted";
254
- }
255
- const dataAt = node.getAttribute("data-at") || "";
256
- const dataIn = node.getAttribute("data-in") || "";
257
- const tooltip = document.createElement("span");
258
- tooltip.style.position = "absolute";
259
- tooltip.style.top = "0px";
260
- tooltip.style.left = "0px";
261
- tooltip.style.padding = "3px";
262
- tooltip.style.background = "rgba(0,0,0,0.75)";
263
- tooltip.style.color = "rgba(255,255,255,1)";
264
- tooltip.style.fontSize = "12px";
265
- tooltip.style.lineHeight = "12px";
266
- tooltip.style.fontFamily = "monospace";
267
- tooltip.innerText = `${componentName || ""} ${dataAt} ${dataIn}`.trim();
268
- overlay.appendChild(tooltip);
269
- node.appendChild(overlay);
270
- } else remove();
271
- };
272
- debugKeyListeners = debugKeyListeners || /* @__PURE__ */new Set();
273
- debugKeyListeners.add(debugVisualizerHandler);
274
- return () => {
275
- remove();
276
- debugKeyListeners?.delete(debugVisualizerHandler);
277
- };
278
- }, [componentName]);
279
- const groupContextParent = import_react.default.useContext(import_GroupContext.GroupContext);
280
- const animationDriver = (() => {
281
- if (props.animatedBy && config) {
282
- if (config.animationDrivers) return config.animationDrivers[props.animatedBy] ?? config.animations;
283
- return props.animatedBy === "default" ? config.animations : null;
284
- }
285
- return (0, import_resolveAnimationDriver.resolveAnimationDriver)(componentContext.animationDriver) ?? (0, import_resolveAnimationDriver.resolveAnimationDriver)(config?.animations) ?? null;
286
- })();
287
- const useAnimations = animationDriver?.useAnimations;
288
- const componentState = (0, import_useComponentState.useComponentState)(props, animationDriver?.isStub ? null : animationDriver, staticConfig, config);
289
- const {
290
- disabled,
291
- groupName,
292
- hasAnimationProp,
293
- hasEnterStyle,
294
- isAnimated,
295
- isExiting,
296
- isHydrated,
297
- presence,
298
- presenceState,
299
- setState,
300
- noClass,
301
- state,
302
- stateRef,
303
- inputStyle,
304
- outputStyle,
305
- willBeAnimated,
306
- willBeAnimatedClient,
307
- platformPseudo,
308
- startedUnhydrated
309
- } = componentState;
310
- if (animationDriver?.avoidReRenders) (0, import_constants.useIsomorphicLayoutEffect)(() => {
311
- const emitted = stateRef.current.prevPseudoState;
312
- if (emitted && (emitted.hover || emitted.press || emitted.focus)) stateRef.current.updateStyleListener?.();
313
- const pendingState = stateRef.current.nextState;
314
- if (!pendingState) return;
315
- stateRef.current.nextState = void 0;
316
- if (!(0, import_is_equal_shallow.isEqualShallow)(state, pendingState)) componentState.setStateShallow(pendingState);
317
- });
318
- (0, import_constants.useIsomorphicLayoutEffect)(() => {
319
- if (!platformPseudo || props.disabled) return;
320
- const pseudoDriver = (0, import_constants.getPlatformDriver)()?.pseudo;
321
- const host = stateRef.current.host;
322
- if (!pseudoDriver || !host) return;
323
- return pseudoDriver.subscribe(host, ({
324
- hovered
325
- }) => {
326
- stateRef.current.setStateShallow?.({
327
- hover: hovered
328
- });
329
- });
330
- }, [platformPseudo, props.disabled]);
331
- const allGroupContexts = (0, import_react.useMemo)(() => {
332
- if (!groupName || props.passThrough) return groupContextParent;
333
- const listeners = /* @__PURE__ */new Set();
334
- stateRef.current.group?.listeners?.clear();
335
- stateRef.current.group = {
336
- listeners,
337
- emit(state2) {
338
- listeners.forEach(l => l(state2));
339
- },
340
- subscribe(cb) {
341
- listeners.add(cb);
342
- if (listeners.size === 1) setStateShallow({
343
- hasDynGroupChildren: true
344
- });
345
- return () => {
346
- listeners.delete(cb);
347
- if (listeners.size === 0) setStateShallow({
348
- hasDynGroupChildren: false
349
- });
350
- };
351
- }
352
- };
353
- return {
354
- ...groupContextParent,
355
- [groupName]: {
356
- state: {
357
- pseudo: import_defaultComponentState.defaultComponentStateMounted
358
- },
359
- subscribe: listener => {
360
- const dispose = stateRef.current.group?.subscribe(listener);
361
- return () => {
362
- dispose?.();
363
- };
364
- }
365
- }
366
- };
367
- }, [stateRef, groupName, groupContextParent]);
368
- let setStateShallow = componentState.setStateShallow;
369
- if (process.env.NODE_ENV === "development" && time) time`use-state`;
370
- const renderProp = props.render;
371
- const isRenderString = !Component || typeof Component === "string";
372
- const element = import_constants.isWeb ? isRenderString ? renderProp || Component : Component : Component;
373
- const BaseComponent = isText ? element || "span" : element || (hasTextAncestor ? "span" : "div");
374
- let elementType = BaseComponent;
375
- if (animationDriver && isAnimated && animationDriver.needsCustomComponent) elementType = animationDriver[isText ? "Text" : "View"] || elementType;
376
- const disableTheme = props["data-disable-theme"] || isHOC;
377
- if (process.env.NODE_ENV === "development" && time) time`theme-props`;
378
- const themeStateProps = {
379
- componentName,
380
- disable: disableTheme,
381
- shallow: props.themeShallow,
382
- debug: debugProp,
383
- unstyled: props.unstyled
384
- };
385
- if ("theme" in props) themeStateProps.name = props.theme;
386
- themeStateProps.needsUpdate = () => !!stateRef.current.isListeningToTheme;
387
- if (process.env.NODE_ENV === "development") {
388
- if (debugProp && debugProp !== "profile") {
389
- const name = `${componentName || Component?.displayName || Component?.name || "[Unnamed Component]"}`;
390
- const type = (hasEnterStyle ? "(hasEnter)" : " ") + (isAnimated ? "(animated)" : " ") + (isReactNative ? "(rnw)" : " ") + (noClass ? "(noClass)" : " ") + (state.press || state.pressIn ? "(PRESSED)" : " ") + (state.hover ? "(HOVERED)" : " ") + (state.focus ? "(FOCUSED)" : " ") + (state.focusWithin ? "(WITHIN FOCUSED)" : " ") + (presenceState?.isPresent === false ? "(EXIT)" : "");
391
- const dataIs = propsIn["data-is"] || "";
392
- const banner = `<${name} /> ${internalID} ${dataIs ? ` ${dataIs}` : ""} ${type.trim()} (hydrated: ${isHydrated}) (unmounted: ${state.unmounted})`;
393
- const ch = propsIn.children;
394
- let childLog = typeof ch === "string" ? ch.length > 4 ? ch.slice(0, 4) + "..." : ch : "";
395
- if (childLog.length) childLog = `(children: ${childLog})`;
396
- if (import_constants.isWeb) {
397
- console.info(`%c ${banner}`, "background: green; color: white;");
398
- if (import_constants.isServer) (0, import_log.log)({
399
- noClass,
400
- isAnimated,
401
- isWeb: import_constants.isWeb,
402
- inputStyle
403
- });else {
404
- console.groupEnd();
405
- console.groupCollapsed(`${childLog} [inspect props, state, context \u{1F447}]`);
406
- (0, import_log.log)("props in:", propsIn);
407
- (0, import_log.log)("final props:", props, Object.keys(props));
408
- (0, import_log.log)({
409
- state,
410
- staticConfig,
411
- elementType,
412
- themeStateProps
413
- });
414
- (0, import_log.log)({
415
- context,
416
- overriddenContextProps,
417
- componentContext
418
- });
419
- (0, import_log.log)({
420
- presence,
421
- isAnimated,
422
- isHOC,
423
- hasAnimationProp,
424
- useAnimations
425
- });
426
- console.groupEnd();
427
- }
428
- } else {
429
- console.info(`
200
+ if (process.env.TAMAGUI_RUNTIME === "zero") throw new Error(`[tamagui zero-runtime] createComponent ran in a zero-runtime graph. No Tamagui component renderer ships in this mode, so a component reference survived compilation. Fix the site or move the owning module to a declared full-runtime island.`);
201
+ let config = null;
202
+ let resolvedDefaultProps;
203
+ let didResolveDefaultProps = false;
204
+ const { Component, isText, isHOC } = staticConfig;
205
+ let res;
206
+ const component = (propsInWithRef) => {
207
+ "use no memo";
208
+ const displayName = res[import_componentDisplayName.componentDisplayName];
209
+ const forwardedRef = propsInWithRef.ref;
210
+ const propsIn = propsInWithRef;
211
+ config = config || (0, import_config.getConfig)();
212
+ const internalID = process.env.NODE_ENV === "development" ? import_react.default.useId() : "";
213
+ if (process.env.NODE_ENV === "development") {
214
+ if (startVisualizer) {
215
+ startVisualizer();
216
+ startVisualizer = void 0;
217
+ }
218
+ }
219
+ if (process.env.NODE_ENV === "test") {
220
+ const testRenderCount = propsIn["data-test-renders"];
221
+ if (testRenderCount && typeof testRenderCount === "object" && !Object.isFrozen(testRenderCount)) {
222
+ testRenderCount.current = testRenderCount.current ?? 0;
223
+ testRenderCount.current += 1;
224
+ }
225
+ }
226
+ const { context, isReactNative } = staticConfig;
227
+ const debugProp = propsIn["debug"];
228
+ const styledContextValue = context ? import_react.default.useContext(context) : void 0;
229
+ let overriddenContextProps = null;
230
+ const componentContext = import_react.default.useContext(import_ComponentContext.ComponentContext);
231
+ const hasTextAncestor = !!(import_constants.isWeb && isText ? componentContext.inText : false);
232
+ if (!process.env.TAMAGUI_IS_CORE_NODE && process.env.NODE_ENV === "development" && debugProp === "profile" && !time) {
233
+ time = require("@tamagui/timer").timer().start();
234
+ globalThis["time"] = time;
235
+ }
236
+ if (process.env.NODE_ENV === "development" && !time && globalThis.time) time = globalThis.time;
237
+ if (process.env.NODE_ENV === "development" && time) time`non-tamagui time (ignore)`;
238
+ let props = propsIn;
239
+ if (!didResolveDefaultProps) {
240
+ didResolveDefaultProps = true;
241
+ const staticDefaultProps = (0, import_getDefaultProps.getDefaultProps)(staticConfig);
242
+ resolvedDefaultProps = import_constants.isWeb && !isText && config.settings.defaultPosition === "relative" && staticDefaultProps?.position === void 0 ? staticDefaultProps ? {
243
+ position: "relative",
244
+ ...staticDefaultProps
245
+ } : { position: "relative" } : staticDefaultProps;
246
+ }
247
+ const [nextProps, overrides] = (0, import_mergeProps.mergeComponentProps)(resolvedDefaultProps, styledContextValue, propsIn);
248
+ props = nextProps;
249
+ overriddenContextProps = overrides;
250
+ if (staticConfig.styleFrontend) props = staticConfig.styleFrontend.preprocessProps(props, config);
251
+ if (process.env.NODE_ENV === "development" && import_constants.isClient) import_react.default.useEffect(() => {
252
+ let node;
253
+ let overlay = null;
254
+ const remove = () => {
255
+ if (overlay) try {
256
+ overlay.parentNode?.removeChild(overlay);
257
+ overlay = null;
258
+ } catch {}
259
+ };
260
+ const debugVisualizerHandler = (show = false) => {
261
+ node = stateRef.current.host;
262
+ if (!node) return;
263
+ if (show) {
264
+ if (!overlay) {
265
+ overlay = document.createElement("span");
266
+ overlay.style.inset = "0px";
267
+ overlay.style.zIndex = "1000000";
268
+ overlay.style.position = "absolute";
269
+ overlay.style.borderColor = "red";
270
+ overlay.style.borderWidth = "1px";
271
+ overlay.style.borderStyle = "dotted";
272
+ }
273
+ const dataAt = node.getAttribute("data-at") || "";
274
+ const dataIn = node.getAttribute("data-in") || "";
275
+ const tooltip = document.createElement("span");
276
+ tooltip.style.position = "absolute";
277
+ tooltip.style.top = "0px";
278
+ tooltip.style.left = "0px";
279
+ tooltip.style.padding = "3px";
280
+ tooltip.style.background = "rgba(0,0,0,0.75)";
281
+ tooltip.style.color = "rgba(255,255,255,1)";
282
+ tooltip.style.fontSize = "12px";
283
+ tooltip.style.lineHeight = "12px";
284
+ tooltip.style.fontFamily = "monospace";
285
+ tooltip.innerText = `${displayName || ""} ${dataAt} ${dataIn}`.trim();
286
+ overlay.appendChild(tooltip);
287
+ node.appendChild(overlay);
288
+ } else remove();
289
+ };
290
+ debugKeyListeners = debugKeyListeners || /* @__PURE__ */ new Set();
291
+ debugKeyListeners.add(debugVisualizerHandler);
292
+ return () => {
293
+ remove();
294
+ debugKeyListeners?.delete(debugVisualizerHandler);
295
+ };
296
+ }, [displayName]);
297
+ const groupContextParent = import_react.default.useContext(import_GroupContext.GroupContext);
298
+ const animationDriver = (() => {
299
+ if (props.animatedBy && config) {
300
+ let selectedDriver;
301
+ if (config.animationDrivers) selectedDriver = config.animationDrivers[props.animatedBy] ?? config.animations;
302
+ else selectedDriver = props.animatedBy === "default" ? config.animations : null;
303
+ return (0, import_resolveAnimationDriver.resolveAnimationDriver)(selectedDriver);
304
+ }
305
+ return (0, import_resolveAnimationDriver.resolveAnimationDriver)(componentContext.animationDriver) ?? (0, import_resolveAnimationDriver.resolveAnimationDriver)(config?.animations) ?? null;
306
+ })();
307
+ const useAnimations = animationDriver?.isStub ? void 0 : animationDriver?.useAnimations;
308
+ const componentState = (0, import_useComponentState.useComponentState)(props, animationDriver?.isStub ? null : animationDriver, staticConfig, config);
309
+ const { disabled, groupName, hasAnimationProp, hasEnterStyle, isAnimated, isExiting, isHydrated, presence, presenceState, setState, noClass, state, stateRef, inputStyle, outputStyle, willBeAnimated, willBeAnimatedClient, platformPseudo, startedUnhydrated } = componentState;
310
+ props = componentState.props;
311
+ stateRef.current.avoidReRenders ??= !!animationDriver?.avoidReRenders;
312
+ if (stateRef.current.avoidReRenders) (0, import_constants.useIsomorphicLayoutEffect)(() => {
313
+ const emitted = stateRef.current.prevPseudoState;
314
+ if (emitted && (emitted.hover || emitted.press || emitted.focus)) stateRef.current.updateStyleListener?.();
315
+ const pendingState = stateRef.current.nextState;
316
+ if (!pendingState) return;
317
+ stateRef.current.nextState = void 0;
318
+ if (!(0, import_is_equal_shallow.isEqualShallow)(state, pendingState)) componentState.setStateShallow(pendingState);
319
+ });
320
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
321
+ if (!platformPseudo || props.disabled) return;
322
+ const pseudoDriver = (0, import_constants.getPlatformDriver)()?.pseudo;
323
+ const host = stateRef.current.host;
324
+ if (!pseudoDriver || !host) return;
325
+ return pseudoDriver.subscribe(host, ({ hovered }) => {
326
+ stateRef.current.setStateShallow?.({ hover: hovered });
327
+ });
328
+ }, [platformPseudo, props.disabled]);
329
+ const containerName = props.containerName;
330
+ const isContainer = !!(props.container || containerName || props.containerType && props.containerType !== "normal");
331
+ const allGroupContexts = (0, import_react.useMemo)(() => {
332
+ if (!groupName && !isContainer || props.passThrough) return groupContextParent;
333
+ const listeners = /* @__PURE__ */ new Set();
334
+ stateRef.current.group?.listeners?.clear();
335
+ stateRef.current.group = {
336
+ listeners,
337
+ emit(state2) {
338
+ listeners.forEach((l) => l(state2));
339
+ },
340
+ subscribe(cb) {
341
+ listeners.add(cb);
342
+ if (listeners.size === 1) setStateShallow({ hasDynGroupChildren: true });
343
+ return () => {
344
+ listeners.delete(cb);
345
+ if (listeners.size === 0) setStateShallow({ hasDynGroupChildren: false });
346
+ };
347
+ }
348
+ };
349
+ const entry = {
350
+ state: { pseudo: import_defaultComponentState.defaultComponentStateMounted },
351
+ subscribe: (listener) => {
352
+ const dispose = stateRef.current.group?.subscribe(listener);
353
+ return () => {
354
+ dispose?.();
355
+ };
356
+ }
357
+ };
358
+ const next = { ...groupContextParent };
359
+ if (groupName) next[groupName] = entry;
360
+ if (isContainer) {
361
+ next["@"] = entry;
362
+ if (containerName) next[`@${containerName}`] = entry;
363
+ }
364
+ return next;
365
+ }, [
366
+ stateRef,
367
+ groupName,
368
+ containerName,
369
+ isContainer,
370
+ groupContextParent
371
+ ]);
372
+ let setStateShallow = componentState.setStateShallow;
373
+ if (process.env.NODE_ENV === "development" && time) time`use-state`;
374
+ const renderProp = props.render;
375
+ const isRenderString = !Component || typeof Component === "string";
376
+ const element = import_constants.isWeb ? isRenderString ? renderProp || Component : Component : Component;
377
+ const BaseComponent = isText ? element || "span" : element || (hasTextAncestor ? "span" : "div");
378
+ let elementType = BaseComponent;
379
+ const isAnimatedCustomComponent = animationDriver && isAnimated && animationDriver.needsCustomComponent;
380
+ if (isAnimatedCustomComponent) elementType = animationDriver[isText ? "Text" : "View"] || elementType;
381
+ const disableTheme = props["data-disable-theme"] || isHOC;
382
+ if (process.env.NODE_ENV === "development" && time) time`theme-props`;
383
+ const themeStateProps = {
384
+ disable: disableTheme,
385
+ shallow: props.themeShallow,
386
+ debug: debugProp
387
+ };
388
+ if ("theme" in props) themeStateProps.name = props.theme;
389
+ if (!stateRef.current.optimizeForFirstRender) themeStateProps.needsUpdate = stateRef.current.themeNeedsUpdate || (stateRef.current.themeNeedsUpdate = () => !!stateRef.current.isListeningToTheme);
390
+ if (process.env.NODE_ENV === "development") {
391
+ if (debugProp && debugProp !== "profile") {
392
+ const name = `${displayName || Component?.displayName || Component?.name || "[Unnamed Component]"}`;
393
+ const type = (hasEnterStyle ? "(hasEnter)" : " ") + (isAnimated ? "(animated)" : " ") + (isReactNative ? "(rnw)" : " ") + (noClass ? "(noClass)" : " ") + (state.press || state.pressIn ? "(PRESSED)" : " ") + (state.hover ? "(HOVERED)" : " ") + (state.focus ? "(FOCUSED)" : " ") + (state.focusWithin ? "(WITHIN FOCUSED)" : " ") + (presenceState?.isPresent === false ? "(EXIT)" : "");
394
+ const dataIs = propsIn["data-is"] || "";
395
+ const banner = `<${name} /> ${internalID} ${dataIs ? ` ${dataIs}` : ""} ${type.trim()} (hydrated: ${isHydrated}) (unmounted: ${state.unmounted})`;
396
+ const ch = propsIn.children;
397
+ let childLog = typeof ch === "string" ? ch.length > 4 ? ch.slice(0, 4) + "..." : ch : "";
398
+ if (childLog.length) childLog = `(children: ${childLog})`;
399
+ if (import_constants.isWeb) {
400
+ console.info(`%c ${banner}`, "background: green; color: white;");
401
+ if (import_constants.isServer) (0, import_log.log)({
402
+ noClass,
403
+ isAnimated,
404
+ isWeb: import_constants.isWeb,
405
+ inputStyle
406
+ });
407
+ else {
408
+ console.groupEnd();
409
+ console.groupCollapsed(`${childLog} [inspect props, state, context \u{1F447}]`);
410
+ (0, import_log.log)("props in:", propsIn);
411
+ (0, import_log.log)("final props:", props, Object.keys(props));
412
+ (0, import_log.log)({
413
+ state,
414
+ staticConfig,
415
+ elementType,
416
+ themeStateProps
417
+ });
418
+ (0, import_log.log)({
419
+ context,
420
+ overriddenContextProps,
421
+ componentContext
422
+ });
423
+ (0, import_log.log)({
424
+ presence,
425
+ isAnimated,
426
+ isHOC,
427
+ hasAnimationProp,
428
+ useAnimations
429
+ });
430
+ console.groupEnd();
431
+ }
432
+ } else {
433
+ console.info(`
430
434
 
431
435
  ------------------------------
432
436
  ${banner}
433
437
  ------------------------------
434
438
  `);
435
- (0, import_log.log)(`children:`, props.children);
436
- (0, import_log.log)({
437
- overriddenContextProps,
438
- styledContextValue
439
- });
440
- (0, import_log.log)({
441
- noClass,
442
- isAnimated,
443
- isWeb: import_constants.isWeb,
444
- inputStyle
445
- });
446
- }
447
- }
448
- }
449
- if (process.env.NODE_ENV === "development" && time) time`pre-theme-media`;
450
- const [theme, themeState] = (0, import_useTheme.useThemeWithState)(themeStateProps);
451
- if (process.env.NODE_ENV === "development" && time) time`theme`;
452
- elementType = element || elementType;
453
- const isStringElement = typeof elementType === "string";
454
- const mediaState = (0, import_useMedia.useMedia)(componentContext, debugProp);
455
- (0, import_createVariable.setDidGetVariableValue)(false);
456
- if (process.env.NODE_ENV === "development" && time) time`media`;
457
- const styleProps = {
458
- mediaState,
459
- noClass,
460
- resolveValues: isAnimated && inputStyle !== "css" || isHOC && state.unmounted == false && hasAnimationProp ? "value" : "auto",
461
- isExiting,
462
- isAnimated,
463
- willBeAnimated,
464
- styledContext: styledContextValue
465
- };
466
- const themeName = themeState?.name || "";
467
- if (process.env.NODE_ENV === "development" && time) time`split-styles-prepare`;
468
- const splitStyles = (0, import_getSplitStyles.useSplitStyles)(props, staticConfig, theme, themeName, state, styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp, animationDriver);
469
- const isPassthrough = !splitStyles;
470
- let contextForOverride = staticConfig.context;
471
- if (splitStyles?.overriddenContextProps) {
472
- const contextForProps = staticConfig.context || staticConfig.parentStaticConfig?.context;
473
- if (contextForProps) {
474
- for (const key in splitStyles.overriddenContextProps) {
475
- overriddenContextProps = overriddenContextProps || {};
476
- overriddenContextProps[key] = splitStyles.overriddenContextProps[key];
477
- }
478
- if (!staticConfig.context) contextForOverride = contextForProps;
479
- }
480
- }
481
- const groupContext = groupName ? allGroupContexts?.[groupName] || null : null;
482
- if (!isPassthrough && groupContext && props.containerType !== "normal") {
483
- const groupState = groupContext?.state;
484
- if (groupState && groupState.layout === void 0) {
485
- if (splitStyles.style?.width || splitStyles.style?.height) groupState.layout = {
486
- width: fromPx(splitStyles.style.width),
487
- height: fromPx(splitStyles.style.height)
488
- };
489
- }
490
- }
491
- const hasEnterExitTransition = props.transition && typeof props.transition === "object" && !Array.isArray(props.transition) && ("enter" in props.transition || "exit" in props.transition);
492
- if (!isPassthrough && (hasAnimationProp || groupName || platformPseudo) && animationDriver?.avoidReRenders && !hasEnterExitTransition) {
493
- let updateGroupListeners = function () {
494
- const updatedState = stateRef.current.nextState;
495
- if (groupContext) {
496
- const {
497
- group,
498
- hasDynGroupChildren,
499
- unmounted,
500
- transition,
501
- ...childrenGroupState
502
- } = updatedState;
503
- notifyGroupSubscribers(groupContext, stateRef.current.group || null, childrenGroupState);
504
- }
505
- };
506
- const ogSetStateShallow = setStateShallow;
507
- stateRef.current.updateStyleListener = () => {
508
- const useStyleListener = stateRef.current.useStyleListener;
509
- if (!useStyleListener) {
510
- const pendingState = stateRef.current.nextState;
511
- if (pendingState) ogSetStateShallow(pendingState);
512
- return;
513
- }
514
- const updatedState = stateRef.current.nextState || state;
515
- const mediaState2 = stateRef.current.nextMedia;
516
- const nextStyles = (0, import_getSplitStyles.getSplitStyles)(props, staticConfig, theme, themeName, updatedState, mediaState2 ? {
517
- ...styleProps,
518
- mediaState: mediaState2
519
- } : styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp, animationDriver);
520
- const effectiveTransition = (0, import_pseudoTransitions.resolveEffectivePseudoTransition)(stateRef.current.prevPseudoState, updatedState, nextStyles?.pseudoTransitions,
521
- // platform-pseudo with no declared transition = instant (CSS :hover semantics)
522
- props.transition ?? (platformPseudo ? "0ms" : void 0));
523
- stateRef.current.prevPseudoState = (0, import_pseudoTransitions.extractPseudoState)(updatedState);
524
- const hasActivePseudo = Boolean(updatedState.hover || updatedState.press || updatedState.pressIn || updatedState.focus || updatedState.focusWithin);
525
- useStyleListener(nextStyles?.style || {}, effectiveTransition, hasActivePseudo);
526
- };
527
- componentContext.mediaEmitListeners = componentContext.mediaEmitListeners || /* @__PURE__ */new Set();
528
- if (!stateRef.current.mediaEmitCleanup) {
529
- const updateListener = next => {
530
- stateRef.current.nextMedia = next;
531
- stateRef.current.updateStyleListener?.();
532
- };
533
- componentContext.mediaEmitListeners.add(updateListener);
534
- stateRef.current.mediaEmitCleanup = () => {
535
- componentContext.mediaEmitListeners?.delete(updateListener);
536
- };
537
- }
538
- componentContext.mediaEmit = componentContext.mediaEmit || (next => {
539
- for (const listener of componentContext.mediaEmitListeners) listener(next);
540
- });
541
- stateRef.current.setStateShallow = nextOrGetNext => {
542
- const prev = stateRef.current.nextState || state;
543
- const next = typeof nextOrGetNext === "function" ? nextOrGetNext(prev) : nextOrGetNext;
544
- if (next === prev || (0, import_is_equal_shallow.isEqualShallow)(prev, next)) return;
545
- const canAvoidReRender = Object.keys(next).every(key => avoidReRenderKeys.has(key));
546
- const updatedState = {
547
- ...prev,
548
- ...next
549
- };
550
- stateRef.current.nextState = updatedState;
551
- if (canAvoidReRender) {
552
- if (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") {
553
- console.groupCollapsed(`[\u26A1\uFE0F] avoid setState`, componentName, next, {
554
- updatedState,
555
- props
556
- });
557
- console.info(stateRef.current.host);
558
- console.groupEnd();
559
- }
560
- updateGroupListeners();
561
- stateRef.current.updateStyleListener?.();
562
- } else {
563
- if (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") console.info(`[\u{1F40C}] re-render`, {
564
- canAvoidReRender,
565
- next
566
- });
567
- ogSetStateShallow(next);
568
- }
569
- };
570
- setStateShallow = state2 => {
571
- stateRef.current.setStateShallow?.(state2);
572
- };
573
- }
574
- if (process.env.NODE_ENV === "development" && time) time`split-styles`;
575
- if (splitStyles) {
576
- if (props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured) {
577
- splitStyles.style = splitStyles.style || {};
578
- splitStyles.style.opacity = 0;
579
- }
580
- if (splitStyles.dynamicThemeAccess != null) stateRef.current.isListeningToTheme = splitStyles.dynamicThemeAccess;
581
- }
582
- const hasRuntimeMediaKeys = splitStyles?.hasMedia && splitStyles.hasMedia !== true;
583
- const shouldListenForMedia = (0, import_createVariable.didGetVariableValue)() || hasRuntimeMediaKeys || noClass && splitStyles?.hasMedia === true;
584
- const mediaListeningKeys = hasRuntimeMediaKeys ? splitStyles.hasMedia : null;
585
- if (process.env.NODE_ENV === "development" && debugProp === "verbose") console.info(`useMedia() createComponent`, shouldListenForMedia, mediaListeningKeys);
586
- (0, import_useMedia.setMediaShouldUpdate)(componentContext, shouldListenForMedia, mediaListeningKeys);
587
- const {
588
- viewProps: viewPropsIn,
589
- pseudos,
590
- style: splitStylesStyle,
591
- classNames,
592
- pseudoGroups,
593
- mediaGroups
594
- } = splitStyles || {};
595
- const propsWithAnimation = props;
596
- const {
597
- asChild,
598
- children,
599
- themeShallow,
600
- spaceDirection: _spaceDirection,
601
- onPress,
602
- onLongPress,
603
- onPressIn,
604
- onPressOut,
605
- onHoverIn,
606
- onHoverOut,
607
- onMouseUp,
608
- onMouseDown,
609
- onMouseEnter,
610
- onMouseLeave,
611
- onFocus,
612
- onBlur,
613
- onDidAnimate,
614
- separator,
615
- passThrough,
616
- forceStyle: _forceStyle,
617
- onClick,
618
- theme: _themeProp,
619
- ...nonTamaguiProps
620
- } = viewPropsIn || {};
621
- let viewProps = nonTamaguiProps;
622
- if (props.forceStyle) viewProps.forceStyle = props.forceStyle;
623
- if (isHOC) {
624
- if (typeof _themeProp !== "undefined") viewProps.theme = _themeProp;
625
- if (typeof passThrough !== "undefined") viewProps.passThrough = passThrough;
626
- }
627
- let animationStyles;
628
- const shouldUseAnimation = (inputStyle === "css" ? willBeAnimatedClient : willBeAnimated) && useAnimations && !isHOC;
629
- let animatedRef;
630
- if (shouldUseAnimation) {
631
- const useStyleEmitter = animationDriver?.avoidReRenders ? listener => {
632
- stateRef.current.useStyleListener = listener;
633
- } : void 0;
634
- const effectiveTransition = (0, import_pseudoTransitions.resolveEffectivePseudoTransition)(stateRef.current.prevPseudoState, state, splitStyles?.pseudoTransitions,
635
- // platform-pseudo with no declared transition = instant (CSS :hover semantics)
636
- props.transition ?? (platformPseudo ? "0ms" : void 0));
637
- if (splitStyles) splitStyles.effectiveTransition = effectiveTransition;
638
- stateRef.current.prevPseudoState = (0, import_pseudoTransitions.extractPseudoState)(state);
639
- const animations = useAnimations({
640
- props: propsWithAnimation,
641
- style: isHydrated ? splitStylesStyle || {} : {
642
- ...splitStylesStyle
643
- },
644
- styleState: splitStyles,
645
- useStyleEmitter,
646
- presence,
647
- componentState: state,
648
- styleProps,
649
- theme,
650
- themeName,
651
- pseudos: pseudos || null,
652
- staticConfig,
653
- stateRef,
654
- onDidAnimate
655
- });
656
- if (animations) {
657
- if (animations.ref) animatedRef = animations.ref;
658
- if (isHydrated && animations) {
659
- animationStyles = animations.style;
660
- viewProps.style = animationStyles;
661
- if (animations.className) viewProps.className = `${state.unmounted === "should-enter" ? "t_unmounted " : ""}${viewProps.className || ""} ${animations.className}`;
662
- }
663
- }
664
- if (process.env.NODE_ENV === "development" && time) time`animations`;
665
- }
666
- if (process.env.NODE_ENV === "development" && props.untilMeasured && !props.group) console.warn(`You set the untilMeasured prop without setting group. This doesn't work, be sure to set untilMeasured on the parent that sets group, not the children that use the $group- prop.
439
+ (0, import_log.log)(`children:`, props.children);
440
+ (0, import_log.log)({
441
+ overriddenContextProps,
442
+ styledContextValue
443
+ });
444
+ (0, import_log.log)({
445
+ noClass,
446
+ isAnimated,
447
+ isWeb: import_constants.isWeb,
448
+ inputStyle
449
+ });
450
+ }
451
+ }
452
+ }
453
+ if (process.env.NODE_ENV === "development" && time) time`pre-theme-media`;
454
+ const [theme, themeState] = (0, import_useTheme.useThemeWithState)(themeStateProps);
455
+ if (process.env.NODE_ENV === "development" && time) time`theme`;
456
+ if (!isAnimatedCustomComponent) elementType = element || elementType;
457
+ const isStringElement = typeof elementType === "string";
458
+ const mediaState = (0, import_useMedia.useMedia)(componentContext, debugProp, stateRef.current);
459
+ (0, import_createVariable.setDidGetVariableValue)(false);
460
+ if (process.env.NODE_ENV === "development" && time) time`media`;
461
+ const styleProps = {
462
+ mediaState,
463
+ noClass,
464
+ resolveValues: isAnimated && inputStyle !== "css" || isHOC && state.unmounted == false && hasAnimationProp ? "value" : "auto",
465
+ isExiting,
466
+ isAnimated,
467
+ willBeAnimated,
468
+ displayName,
469
+ styledContext: getStyledContextKeys(staticConfig, styledContextValue)
470
+ };
471
+ const themeName = themeState?.name || "";
472
+ if (process.env.NODE_ENV === "development" && time) time`split-styles-prepare`;
473
+ const splitStyles = (0, import_getSplitStyles.useSplitStyles)(props, staticConfig, theme, themeName, state, styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp, animationDriver);
474
+ const isPassthrough = !splitStyles;
475
+ let contextForOverride = staticConfig.context;
476
+ if (splitStyles?.overriddenContextProps) {
477
+ const contextForProps = staticConfig.context || staticConfig.parentStaticConfig?.context;
478
+ if (contextForProps) {
479
+ for (const key in splitStyles.overriddenContextProps) {
480
+ overriddenContextProps = overriddenContextProps || {};
481
+ overriddenContextProps[key] = splitStyles.overriddenContextProps[key];
482
+ }
483
+ if (!staticConfig.context) contextForOverride = contextForProps;
484
+ }
485
+ }
486
+ const groupContext = groupName || isContainer ? allGroupContexts?.[groupName ?? "@"] || null : null;
487
+ if (!isPassthrough && groupContext && props.containerType !== "normal") {
488
+ const groupState = groupContext?.state;
489
+ if (groupState && groupState.layout === void 0) {
490
+ if (splitStyles.style?.width || splitStyles.style?.height) groupState.layout = {
491
+ width: fromPx(splitStyles.style.width),
492
+ height: fromPx(splitStyles.style.height)
493
+ };
494
+ }
495
+ }
496
+ const hasEnterExitTransition = props.transition && typeof props.transition === "object" && !Array.isArray(props.transition) && ("enter" in props.transition || "exit" in props.transition);
497
+ if (!isPassthrough && (hasAnimationProp || groupName || platformPseudo) && animationDriver?.avoidReRenders && !hasEnterExitTransition) {
498
+ let updateGroupListeners = function() {
499
+ const updatedState = stateRef.current.nextState;
500
+ if (groupContext) {
501
+ const { group, hasDynGroupChildren, unmounted, transition, ...childrenGroupState } = updatedState;
502
+ notifyGroupSubscribers(groupContext, stateRef.current.group || null, childrenGroupState);
503
+ }
504
+ };
505
+ const ogSetStateShallow = setStateShallow;
506
+ stateRef.current.updateStyleListener = () => {
507
+ const useStyleListener = stateRef.current.useStyleListener;
508
+ if (!useStyleListener) {
509
+ const pendingState = stateRef.current.nextState;
510
+ if (pendingState) ogSetStateShallow(pendingState);
511
+ return;
512
+ }
513
+ const updatedState = stateRef.current.nextState || state;
514
+ const mediaState2 = stateRef.current.nextMedia;
515
+ const nextStyles = (0, import_getSplitStyles.getSplitStyles)(props, staticConfig, theme, themeName, updatedState, mediaState2 ? {
516
+ ...styleProps,
517
+ mediaState: mediaState2
518
+ } : styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp, animationDriver);
519
+ const effectiveTransition = nextStyles?.effectiveTransition ?? props.transition ?? (platformPseudo ? "0ms" : void 0);
520
+ stateRef.current.prevPseudoState = (0, import_extractPseudoState.extractPseudoState)(updatedState);
521
+ const hasActivePseudo = Boolean(updatedState.hover || updatedState.press || updatedState.pressIn || updatedState.focus || updatedState.focusWithin);
522
+ useStyleListener(nextStyles?.style || {}, effectiveTransition, hasActivePseudo);
523
+ };
524
+ componentContext.mediaEmitListeners = componentContext.mediaEmitListeners || /* @__PURE__ */ new Set();
525
+ if (!stateRef.current.mediaEmitCleanup) {
526
+ const updateListener = (next) => {
527
+ stateRef.current.nextMedia = next;
528
+ stateRef.current.updateStyleListener?.();
529
+ };
530
+ componentContext.mediaEmitListeners.add(updateListener);
531
+ stateRef.current.mediaEmitCleanup = () => {
532
+ componentContext.mediaEmitListeners?.delete(updateListener);
533
+ };
534
+ }
535
+ componentContext.mediaEmit = componentContext.mediaEmit || ((next) => {
536
+ for (const listener of componentContext.mediaEmitListeners) listener(next);
537
+ });
538
+ stateRef.current.setStateShallow = (nextOrGetNext) => {
539
+ const prev = stateRef.current.nextState || state;
540
+ const next = typeof nextOrGetNext === "function" ? nextOrGetNext(prev) : nextOrGetNext;
541
+ if (next === prev || (0, import_is_equal_shallow.isEqualShallow)(prev, next)) return;
542
+ const canAvoidReRender = Object.keys(next).every((key) => avoidReRenderKeys.has(key));
543
+ const updatedState = {
544
+ ...prev,
545
+ ...next
546
+ };
547
+ stateRef.current.nextState = updatedState;
548
+ if (canAvoidReRender) {
549
+ if (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") {
550
+ console.groupCollapsed(`[\u26A1\uFE0F] avoid setState`, displayName, next, {
551
+ updatedState,
552
+ props
553
+ });
554
+ console.info(stateRef.current.host);
555
+ console.groupEnd();
556
+ }
557
+ updateGroupListeners();
558
+ stateRef.current.updateStyleListener?.();
559
+ } else {
560
+ if (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") console.info(`[\u{1F40C}] re-render`, {
561
+ canAvoidReRender,
562
+ next
563
+ });
564
+ ogSetStateShallow(next);
565
+ }
566
+ };
567
+ setStateShallow = (state2) => {
568
+ stateRef.current.setStateShallow?.(state2);
569
+ };
570
+ }
571
+ if (process.env.NODE_ENV === "development" && time) time`split-styles`;
572
+ if (splitStyles) {
573
+ if (props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured) {
574
+ splitStyles.style = splitStyles.style || {};
575
+ splitStyles.style.opacity = 0;
576
+ }
577
+ }
578
+ const hasRuntimeMediaKeys = splitStyles?.hasMedia && splitStyles.hasMedia !== true;
579
+ const shouldListenForMedia = (0, import_createVariable.didGetVariableValue)() || hasRuntimeMediaKeys || noClass && splitStyles?.hasMedia === true;
580
+ const mediaListeningKeys = hasRuntimeMediaKeys ? splitStyles.hasMedia : null;
581
+ if (process.env.NODE_ENV === "development" && debugProp === "verbose") console.info(`useMedia() createComponent`, shouldListenForMedia, mediaListeningKeys);
582
+ (0, import_useMedia.setMediaShouldUpdate)(stateRef.current, shouldListenForMedia, mediaListeningKeys, stateRef.current.optimizeForFirstRender);
583
+ const { viewProps: viewPropsIn, style: splitStylesStyle, classNames, pseudoGroups, mediaGroups } = splitStyles || {};
584
+ const propsWithAnimation = props;
585
+ const { asChild, children, themeShallow, spaceDirection: _spaceDirection, onPress, onLongPress, onPressIn, onPressOut, onHoverIn, onHoverOut, onMouseUp, onMouseDown, onMouseEnter, onMouseLeave, onFocus, onBlur, onTransition, separator, passThrough, forceStyle: _forceStyle, onClick, theme: _themeProp, ...nonTamaguiProps } = viewPropsIn || {};
586
+ let viewProps = nonTamaguiProps;
587
+ if (props.forceStyle) viewProps.forceStyle = props.forceStyle;
588
+ if (isHOC) {
589
+ if (typeof _themeProp !== "undefined") viewProps.theme = _themeProp;
590
+ if (typeof passThrough !== "undefined") viewProps.passThrough = passThrough;
591
+ if (typeof asChild !== "undefined") viewProps.asChild = asChild;
592
+ if (typeof onTransition !== "undefined") viewProps.onTransition = onTransition;
593
+ }
594
+ let animationStyles;
595
+ const shouldUseAnimation = (inputStyle === "css" ? willBeAnimatedClient : willBeAnimated) && useAnimations && !isHOC;
596
+ let animatedRef;
597
+ if (shouldUseAnimation) {
598
+ const useStyleEmitter = animationDriver?.avoidReRenders ? (listener) => {
599
+ stateRef.current.useStyleListener = listener;
600
+ } : void 0;
601
+ const effectiveTransition = splitStyles?.effectiveTransition ?? props.transition ?? (platformPseudo ? "0ms" : void 0);
602
+ if (splitStyles) splitStyles.effectiveTransition = effectiveTransition;
603
+ stateRef.current.prevPseudoState = (0, import_extractPseudoState.extractPseudoState)(state);
604
+ const animations = useAnimations({
605
+ props: propsWithAnimation,
606
+ style: isHydrated ? splitStylesStyle || {} : { ...splitStylesStyle },
607
+ styleState: splitStyles,
608
+ useStyleEmitter,
609
+ presence,
610
+ componentState: state,
611
+ styleProps,
612
+ theme,
613
+ themeName,
614
+ staticConfig,
615
+ stateRef,
616
+ onTransition
617
+ });
618
+ if (animations) {
619
+ if (animations.ref) animatedRef = animations.ref;
620
+ if (isHydrated && animations) {
621
+ animationStyles = animations.style;
622
+ viewProps.style = animationStyles;
623
+ if (animations.className) viewProps.className = `${state.unmounted === "should-enter" ? "t_unmounted " : ""}${viewProps.className || ""} ${animations.className}`;
624
+ }
625
+ }
626
+ if (process.env.NODE_ENV === "development" && time) time`animations`;
627
+ }
628
+ if (import_constants.isWeb && isExiting) viewProps.className = `t_exiting ${viewProps.className || ""}`;
629
+ if (process.env.NODE_ENV === "development" && props.untilMeasured && !props.group) console.warn(`You set the untilMeasured prop without setting group. This doesn't work, be sure to set untilMeasured on the parent that sets group, not the children that use a group clause.
667
630
 
668
631
  If you meant to do this, you can disable this warning - either change untilMeasured and group at the same time, or do group={conditional ? 'name' : undefined}`);
669
- if (process.env.NODE_ENV === "development" && time) time`destructure`;
670
- if (!isPassthrough && groupContext && props.containerType !== "normal") nonTamaguiProps.onLayout = (0, import_helpers.composeEventHandlers)(nonTamaguiProps.onLayout, e => {
671
- const layout = e.nativeEvent.layout;
672
- groupContext.state.layout = layout;
673
- stateRef.current.group?.emit({
674
- layout
675
- });
676
- if (!stateRef.current.hasMeasured && props.untilMeasured === "hide") setState(prev => ({
677
- ...prev
678
- }));
679
- stateRef.current.hasMeasured = true;
680
- });
681
- viewProps = import_setupHooks.hooks.usePropsTransform?.(elementType, nonTamaguiProps, stateRef, stateRef.current.willHydrate) || nonTamaguiProps;
682
- if (!stateRef.current.composedRef) stateRef.current.composedRef = (0, import_compose_refs.composeRefs)(x => stateRef.current.host = x, forwardedRef, import_setElementProps.setElementProps, animatedRef);
683
- viewProps.ref = stateRef.current.composedRef;
684
- (0, import_pointerEvents.usePointerEvents)(props, viewProps);
685
- if (process.env.NODE_ENV === "development") {
686
- if (!isReactNative && !isText && import_constants.isWeb && !isHOC) import_react.default.Children.toArray(props.children).forEach(item => {
687
- if (typeof item === "string" && item !== "\n") console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <${staticConfig.componentName || propsIn.tag || "View"}>.`, props);
688
- });
689
- }
690
- if (process.env.NODE_ENV === "development" && time) time`events-hooks`;
691
- const unPress = () => {
692
- setStateShallow({
693
- press: false,
694
- pressIn: false
695
- });
696
- };
697
- if (process.env.NODE_ENV === "development" && import_constants.isWeb) (0, import_constants.useIsomorphicLayoutEffect)(() => {
698
- if (debugProp === "verbose") {
699
- let cssStyleDeclarationToObject = function (style) {
700
- const styleObject = {};
701
- for (let i = 0; i < style.length; i++) {
702
- let prop = style[i];
703
- styleObject[prop] = style.getPropertyValue(prop);
704
- }
705
- return styleObject;
706
- };
707
- const computed = stateRef.current.host ? cssStyleDeclarationToObject(getComputedStyle(stateRef.current.host)) : {};
708
- console.groupCollapsed(`Rendered > (opacity: ${computed.opacity})`);
709
- console.warn(stateRef.current.host);
710
- console.warn(computed);
711
- console.groupEnd();
712
- }
713
- });
714
- (0, import_constants.useIsomorphicLayoutEffect)(() => {
715
- if (state.unmounted === true && hasEnterStyle) {
716
- setStateShallow({
717
- unmounted: "should-enter"
718
- });
719
- return;
720
- }
721
- if (state.unmounted) {
722
- if (inputStyle === "css") {
723
- let cancelled = false;
724
- requestAnimationFrame(() => {
725
- if (cancelled) return;
726
- requestAnimationFrame(() => {
727
- if (cancelled) return;
728
- setStateShallow({
729
- unmounted: false
730
- });
731
- });
732
- });
733
- return () => {
734
- cancelled = true;
735
- };
736
- }
737
- setStateShallow({
738
- unmounted: false
739
- });
740
- }
741
- return () => {
742
- componentSetStates.delete(setState);
743
- stateRef.current.mediaEmitCleanup?.();
744
- };
745
- }, [state.unmounted, inputStyle]);
746
- (0, import_constants.useIsomorphicLayoutEffect)(() => {
747
- if (disabled) return;
748
- if (!pseudoGroups && !mediaGroups) return;
749
- if (!allGroupContexts) return;
750
- return (0, import_subscribeToContextGroup.subscribeToContextGroup)({
751
- groupContext: allGroupContexts,
752
- setStateShallow,
753
- mediaGroups,
754
- pseudoGroups
755
- });
756
- }, [allGroupContexts, disabled, pseudoGroups ? (0, import_objectIdentityKey.objectIdentityKey)(pseudoGroups) : 0, mediaGroups ? (0, import_objectIdentityKey.objectIdentityKey)(mediaGroups) : 0]);
757
- const groupEmitter = stateRef.current.group;
758
- (0, import_constants.useIsomorphicLayoutEffect)(() => {
759
- if (!groupContext || !groupEmitter) return;
760
- notifyGroupSubscribers(groupContext, groupEmitter, state);
761
- }, [groupContext, groupEmitter, state]);
762
- const runtimePressStyle = !disabled && noClass && pseudos?.pressStyle;
763
- const runtimeFocusStyle = !disabled && noClass && pseudos?.focusStyle;
764
- const runtimeFocusVisibleStyle = !disabled && noClass && pseudos?.focusVisibleStyle;
765
- const attachFocus = Boolean(runtimePressStyle || runtimeFocusStyle || runtimeFocusVisibleStyle || onFocus || onBlur || !!componentContext.setParentFocusState);
766
- const hasDynamicGroupChildren = Boolean(groupName && state.hasDynGroupChildren);
767
- const attachPress = Boolean(hasDynamicGroupChildren || runtimePressStyle || onPress || onPressOut || onPressIn || onMouseDown || onMouseUp || onLongPress || onClick || pseudos?.focusVisibleStyle);
768
- const runtimeHoverStyle = !disabled && noClass && pseudos?.hoverStyle;
769
- const needsHoverState = Boolean(hasDynamicGroupChildren || runtimeHoverStyle && !platformPseudo);
770
- const attachHover = (import_constants.isWeb || import_constants.isNativeDesktop) && !!(hasDynamicGroupChildren || needsHoverState || onMouseEnter || onMouseLeave);
771
- const shouldAttach = !disabled && !props.asChild && Boolean(attachFocus || attachPress || attachHover || runtimePressStyle || runtimeHoverStyle || runtimeFocusStyle);
772
- const needsPressState = Boolean(hasDynamicGroupChildren || runtimePressStyle);
773
- if (process.env.NODE_ENV === "development" && time) time`events-setup`;
774
- if (process.env.NODE_ENV === "development" && debugProp === "verbose") (0, import_log.log)(`\u{1FAA9} events()`, {
775
- runtimeFocusStyle,
776
- runtimePressStyle,
777
- runtimeHoverStyle,
778
- runtimeFocusVisibleStyle,
779
- attachPress,
780
- attachFocus,
781
- attachHover,
782
- shouldAttach,
783
- needsHoverState,
784
- pseudos
785
- });
786
- const events = shouldAttach ? {
787
- onPressOut: attachPress ? e => {
788
- unPress();
789
- onPressOut?.(e);
790
- onMouseUp?.(e);
791
- } : void 0,
792
- ...((attachHover || attachPress) && {
793
- onMouseEnter: e => {
794
- const next = {};
795
- if (needsHoverState && !lastInteractionWasTouch.value) next.hover = true;
796
- if (needsPressState) {
797
- if (state.pressIn) next.press = true;
798
- }
799
- setStateShallow(next);
800
- onHoverIn?.(e);
801
- onMouseEnter?.(e);
802
- },
803
- onMouseLeave: e => {
804
- const next = {};
805
- if (needsHoverState) next.hover = false;
806
- if (needsPressState) {
807
- next.press = false;
808
- next.pressIn = false;
809
- }
810
- setStateShallow(next);
811
- onHoverOut?.(e);
812
- onMouseLeave?.(e);
813
- }
814
- }),
815
- onPressIn: attachPress ? e => {
816
- if (needsPressState) setStateShallow({
817
- press: true,
818
- pressIn: true
819
- });
820
- onPressIn?.(e);
821
- onMouseDown?.(e);
822
- if (import_constants.isWeb) componentSetStates.add(setState);
823
- } : void 0,
824
- onPress: attachPress ? e => {
825
- unPress();
826
- onClick?.(e);
827
- if (onPress || onClick) e.stopPropagation();
828
- onPress?.(e);
829
- onLongPress?.(e);
830
- } : void 0,
831
- ...(attachFocus && {
832
- onFocus: e => {
833
- const next = {};
834
- if (componentContext.setParentFocusState) {
835
- componentContext.setParentFocusState({
836
- focusWithin: true
837
- });
838
- next.focusWithin = true;
839
- }
840
- if (pseudos?.focusVisibleStyle) {
841
- if (lastInteractionWasKeyboard.value) next.focusVisible = true;else next.focus = true;
842
- } else next.focus = true;
843
- setStateShallow(next);
844
- onFocus?.(e);
845
- },
846
- onBlur: e => {
847
- if (componentContext.setParentFocusState) componentContext.setParentFocusState({
848
- focusWithin: false
849
- });
850
- setStateShallow({
851
- focus: false,
852
- focusVisible: false,
853
- focusWithin: false
854
- });
855
- onBlur?.(e);
856
- }
857
- })
858
- } : null;
859
- if (events && !isReactNative) Object.assign(viewProps, (0, import_eventHandling.getWebEvents)(events));
860
- if (process.env.NODE_ENV === "development" && time) time`events`;
861
- if (process.env.NODE_ENV === "development" && debugProp === "verbose") (0, import_log.log)(`events`, {
862
- events,
863
- attachHover,
864
- attachPress
865
- });
866
- const propsWithHref = props;
867
- const propsInWithHref = propsIn;
868
- [componentName, props.testID ?? propsIn.testID ?? props.accessibilityLabel ?? propsIn.accessibilityLabel ?? (typeof propsWithHref.href === "string" ? propsWithHref.href : null) ?? (typeof propsInWithHref.href === "string" ? propsInWithHref.href : null)].filter(Boolean).join(":");
869
- if (process.env.NODE_ENV === "development" && time) time`hooks`;
870
- if (asChild) {
871
- elementType = import_Slot.Slot;
872
- {
873
- const webStyleEvents = asChild === "web" || asChild === "except-style-web";
874
- const passEvents = (0, import_eventHandling.getWebEvents)({
875
- onPress,
876
- onLongPress,
877
- onPressIn,
878
- onPressOut,
879
- onMouseUp,
880
- onMouseDown,
881
- onMouseEnter,
882
- onMouseLeave
883
- }, webStyleEvents);
884
- Object.assign(viewProps, passEvents);
885
- }
886
- }
887
- if (process.env.NODE_ENV === "development" && time) time`spaced-as-child`;
888
- let content;
889
- if (isPassthrough) content = import_react.default.createElement(BaseComponent, {
890
- style: {
891
- display: "contents"
892
- }
893
- }, propsIn.children);else {
894
- if (import_setupHooks.hooks.useChildren) content = import_setupHooks.hooks.useChildren(elementType, content || children, viewProps);
895
- const isRenderPropString = typeof renderProp === "string";
896
- if (renderProp && !isRenderPropString) {
897
- const out = getCustomRender(renderProp, content || children, viewProps, componentState);
898
- if (out) {
899
- viewProps = out.viewProps;
900
- elementType = out.elementType;
901
- }
902
- }
903
- if (!content) {
904
- if (isRenderPropString) viewProps.render;
905
- content = import_react.default.createElement(elementType, viewProps, content || children);
906
- }
907
- if (process.env.NODE_ENV === "development" && time) time`use-children`;
908
- }
909
- const ResetPresence = animationDriver?.ResetPresence;
910
- const needsReset = Boolean(
911
- // not when passing down to child
912
- !asChild && splitStyles && !isHOC && ResetPresence && willBeAnimated && (hasEnterStyle || presenceState));
913
- const hasEverReset = stateRef.current.hasEverResetPresence;
914
- if (needsReset && !hasEverReset) stateRef.current.hasEverResetPresence = true;
915
- if ((needsReset || hasEverReset) && ResetPresence) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ResetPresence, {
916
- disabled: !needsReset,
917
- children: content
918
- });
919
- if (process.env.NODE_ENV === "development" && time) time`create-element`;
920
- if ("focusWithinStyle" in propsIn || pseudos?.focusWithinStyle) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
921
- ...componentContext,
922
- setParentFocusState: setStateShallow,
923
- children: content
924
- });
925
- if ("group" in props) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_GroupContext.GroupContext.Provider, {
926
- value: allGroupContexts,
927
- children: content
928
- });
929
- if (!asChild && isText && !hasTextAncestor) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
930
- ...componentContext,
931
- inText: true,
932
- children: content
933
- });
934
- if (process.env.NODE_ENV === "development" && time) time`group-context`;
935
- content = disableTheme || !splitStyles ? content : (0, import_Theme.getThemedChildren)(themeState, content, themeStateProps, false, stateRef);
936
- if (process.env.NODE_ENV === "development" && time) time`themed-children`;
937
- if (isReactNative && !asChild) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)("span", {
938
- className: "_dsp_contents",
939
- ...(!isPassthrough && isHydrated && events && (0, import_eventHandling.getWebEvents)(events)),
940
- children: content
941
- });
942
- if (overriddenContextProps && contextForOverride) {
943
- const Provider = contextForOverride.Provider;
944
- for (const key in styledContextValue) if (!(key in overriddenContextProps)) overriddenContextProps[key] = styledContextValue[key];
945
- content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(Provider, {
946
- __disableMergeDefaultValues: true,
947
- ...overriddenContextProps,
948
- children: content
949
- });
950
- }
951
- if (process.env.NODE_ENV === "development" && time) time`context-override`;
952
- if (startedUnhydrated && splitStyles) content = /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
953
- children: [content, !isHydrated ? (0, import_wrapStyleTags.getStyleTags)(Object.values(splitStyles.rulesToInsert)) : null]
954
- });
955
- if (process.env.NODE_ENV === "development" && time) time`style-tags`;
956
- if (process.env.NODE_ENV === "development") {
957
- if (debugProp && debugProp !== "profile") {
958
- const title = `render <${typeof elementType === "string" ? elementType : "Component"} /> (${internalID}) with props`;
959
- if (!import_constants.isWeb || !import_constants.isClient) {
960
- (0, import_log.log)(title);
961
- (0, import_log.log)(`state: `, state);
962
- if (import_isDevTools.isDevTools) (0, import_log.log)("viewProps", viewProps);
963
- (0, import_log.log)(`final styles:`);
964
- for (const key in splitStylesStyle) (0, import_log.log)(key, splitStylesStyle[key]);
965
- } else {
966
- console.groupCollapsed(title);
967
- try {
968
- (0, import_log.log)("viewProps", viewProps);
969
- (0, import_log.log)("children", content);
970
- if (typeof window !== "undefined") (0, import_log.log)({
971
- propsIn,
972
- props,
973
- attachPress,
974
- animationStyles,
975
- classNames,
976
- content,
977
- elementType,
978
- events,
979
- isAnimated,
980
- hasRuntimeMediaKeys,
981
- isStringElement,
982
- mediaListeningKeys,
983
- pseudos,
984
- shouldAttach,
985
- noClass,
986
- shouldListenForMedia,
987
- splitStyles,
988
- splitStylesStyle,
989
- state,
990
- stateRef,
991
- staticConfig,
992
- styleProps,
993
- themeState,
994
- viewProps,
995
- willBeAnimated,
996
- startedUnhydrated
997
- });
998
- } catch {} finally {
999
- console.groupEnd();
1000
- }
1001
- }
1002
- if (debugProp === "break") {}
1003
- }
1004
- }
1005
- if (process.env.NODE_ENV === "development" && time) {
1006
- time`rest`;
1007
- if (!globalThis["willPrint"]) {
1008
- globalThis["willPrint"] = true;
1009
- setTimeout(() => {
1010
- delete globalThis["willPrint"];
1011
- time.print();
1012
- time = null;
1013
- }, 50);
1014
- }
1015
- }
1016
- return content;
1017
- });
1018
- function notifyGroupSubscribers(groupContext, groupEmitter, pseudo) {
1019
- if (!groupContext || !groupEmitter) return;
1020
- const prevPseudo = groupContext.state.pseudo;
1021
- const shouldReplacePseudo = !prevPseudo || "unmounted" in prevPseudo || "group" in prevPseudo || "hasDynGroupChildren" in prevPseudo || "transition" in prevPseudo;
1022
- const nextPseudo = shouldReplacePseudo ? {} : prevPseudo;
1023
- let didChange = shouldReplacePseudo;
1024
- for (let i = 0; i < groupPseudoKeys.length; i++) {
1025
- const key = groupPseudoKeys[i];
1026
- const value = pseudo[key];
1027
- if (nextPseudo[key] !== value) {
1028
- nextPseudo[key] = value;
1029
- didChange = true;
1030
- } else if (didChange) nextPseudo[key] = value;
1031
- }
1032
- if (!didChange) return;
1033
- groupContext.state.pseudo = nextPseudo;
1034
- groupEmitter.emit(groupContext.state);
1035
- }
1036
- if (staticConfig.componentName) component.displayName = staticConfig.componentName;
1037
- let res = component;
1038
- res = import_react.default.memo(res);
1039
- res.staticConfig = staticConfig;
1040
- function extendStyledConfig(extended) {
1041
- return {
1042
- ...staticConfig,
1043
- ...extended,
1044
- neverFlatten: true,
1045
- isHOC: true,
1046
- isStyledHOC: false
1047
- };
1048
- }
1049
- function styleable(Component2, options) {
1050
- let out = typeof Component2 === "function" && Component2.length === 1 ? Component2 : import_react.default.forwardRef(Component2);
1051
- const extendedConfig = extendStyledConfig(options?.staticConfig);
1052
- out = options?.disableTheme ? out : (0, import_themeable.themeable)(out, extendedConfig, true);
1053
- if (extendedConfig.memo || process.env.TAMAGUI_MEMOIZE_STYLEABLE) out = import_react.default.memo(out);
1054
- out.staticConfig = extendedConfig;
1055
- out.styleable = styleable;
1056
- return out;
1057
- }
1058
- res.styleable = styleable;
1059
- return res;
632
+ if (process.env.NODE_ENV === "development" && time) time`destructure`;
633
+ if (!isPassthrough && groupContext && props.containerType !== "normal") nonTamaguiProps.onLayout = (0, import_helpers.composeEventHandlers)(nonTamaguiProps.onLayout, (e) => {
634
+ const layout = e.nativeEvent.layout;
635
+ groupContext.state.layout = layout;
636
+ stateRef.current.group?.emit({ layout });
637
+ if (!stateRef.current.hasMeasured && props.untilMeasured === "hide") setState((prev) => ({ ...prev }));
638
+ stateRef.current.hasMeasured = true;
639
+ });
640
+ viewProps = import_setupHooks.hooks.usePropsTransform?.(elementType, nonTamaguiProps, stateRef, stateRef.current.willHydrate) || nonTamaguiProps;
641
+ if (!stateRef.current.composedRef) stateRef.current.composedRef = (0, import_compose_refs.composeRefs)((x) => {
642
+ stateRef.current.host = x;
643
+ }, forwardedRef, import_setElementProps.setElementProps, animatedRef);
644
+ viewProps.ref = stateRef.current.composedRef;
645
+ (0, import_pointerEvents.usePointerEvents)(props, viewProps);
646
+ if (process.env.NODE_ENV === "development") {
647
+ if (!isReactNative && !isText && import_constants.isWeb && !isHOC) import_react.default.Children.toArray(props.children).forEach((item) => {
648
+ if (typeof item === "string" && item !== "\n") console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <${displayName || propsIn.tag || "View"}>.`, props);
649
+ });
650
+ }
651
+ if (process.env.NODE_ENV === "development" && time) time`events-hooks`;
652
+ const unPress = () => {
653
+ setStateShallow({
654
+ press: false,
655
+ pressIn: false
656
+ });
657
+ };
658
+ if (process.env.NODE_ENV === "development" && import_constants.isWeb) (0, import_constants.useIsomorphicLayoutEffect)(() => {
659
+ if (debugProp === "verbose") {
660
+ let cssStyleDeclarationToObject = function(style) {
661
+ const styleObject = {};
662
+ for (let i = 0; i < style.length; i++) {
663
+ let prop = style[i];
664
+ styleObject[prop] = style.getPropertyValue(prop);
665
+ }
666
+ return styleObject;
667
+ };
668
+ const computed = stateRef.current.host ? cssStyleDeclarationToObject(getComputedStyle(stateRef.current.host)) : {};
669
+ console.groupCollapsed(`Rendered > (opacity: ${computed.opacity})`);
670
+ console.warn(stateRef.current.host);
671
+ console.warn(computed);
672
+ console.groupEnd();
673
+ }
674
+ });
675
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
676
+ if (state.unmounted === true && hasEnterStyle) {
677
+ setStateShallow({ unmounted: "should-enter" });
678
+ return;
679
+ }
680
+ if (state.unmounted) {
681
+ if (inputStyle === "css") {
682
+ let cancelled = false;
683
+ requestAnimationFrame(() => {
684
+ if (cancelled) return;
685
+ requestAnimationFrame(() => {
686
+ if (cancelled) return;
687
+ setStateShallow({ unmounted: false });
688
+ });
689
+ });
690
+ return () => {
691
+ cancelled = true;
692
+ };
693
+ }
694
+ setStateShallow({ unmounted: false });
695
+ }
696
+ }, [state.unmounted, inputStyle]);
697
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
698
+ return () => {
699
+ componentSetStates.delete(setState);
700
+ stateRef.current.mediaEmitCleanup?.();
701
+ stateRef.current.mediaEmitCleanup = void 0;
702
+ };
703
+ }, []);
704
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
705
+ let disposeSafeArea;
706
+ if (splitStyles?.usesSafeArea) {
707
+ const updateSafeArea = () => {
708
+ setState((previous) => ({ ...previous }));
709
+ };
710
+ disposeSafeArea = (0, import_resolveSafeAreaVariable.subscribeToSafeArea)(updateSafeArea);
711
+ updateSafeArea();
712
+ }
713
+ if (disabled) return disposeSafeArea;
714
+ if (!pseudoGroups && !mediaGroups) return disposeSafeArea;
715
+ if (!allGroupContexts) return disposeSafeArea;
716
+ const disposeGroup = (0, import_subscribeToContextGroup.subscribeToContextGroup)({
717
+ groupContext: allGroupContexts,
718
+ setStateShallow,
719
+ mediaGroups,
720
+ pseudoGroups
721
+ });
722
+ if (!disposeSafeArea) return disposeGroup;
723
+ return () => {
724
+ disposeSafeArea();
725
+ disposeGroup?.();
726
+ };
727
+ }, [
728
+ allGroupContexts,
729
+ disabled,
730
+ splitStyles?.usesSafeArea,
731
+ pseudoGroups ? (0, import_objectIdentityKey.objectIdentityKey)(pseudoGroups) : 0,
732
+ mediaGroups ? (0, import_objectIdentityKey.objectIdentityKey)(mediaGroups) : 0
733
+ ]);
734
+ const groupEmitter = stateRef.current.group;
735
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
736
+ if (!groupContext || !groupEmitter) return;
737
+ notifyGroupSubscribers(groupContext, groupEmitter, state);
738
+ }, [
739
+ groupContext,
740
+ groupEmitter,
741
+ state
742
+ ]);
743
+ const conditionalStates = !disabled ? splitStyles?.programStates : void 0;
744
+ const runtimePressStyle = !disabled && (conditionalStates?.has("press") || conditionalStates?.has("active"));
745
+ const runtimeFocusStyle = !disabled && conditionalStates?.has("focus");
746
+ const runtimeFocusVisibleStyle = !disabled && conditionalStates?.has("focus-visible");
747
+ const attachFocus = Boolean(runtimePressStyle || runtimeFocusStyle || runtimeFocusVisibleStyle || onFocus || onBlur || !!componentContext.setParentFocusState);
748
+ const hasDynamicGroupChildren = Boolean(groupName && state.hasDynGroupChildren);
749
+ const attachPress = Boolean(hasDynamicGroupChildren || runtimePressStyle || onPress || onPressOut || onPressIn || onMouseDown || onMouseUp || onLongPress || onClick);
750
+ const runtimeHoverStyle = !disabled && conditionalStates?.has("hover");
751
+ const needsHoverState = Boolean(hasDynamicGroupChildren || runtimeHoverStyle && !platformPseudo);
752
+ const attachHover = (import_constants.isWeb || import_constants.isNativeDesktop) && !!(hasDynamicGroupChildren || needsHoverState || onMouseEnter || onMouseLeave);
753
+ const shouldAttach = !disabled && !props.asChild && Boolean(attachFocus || attachPress || attachHover || runtimePressStyle || runtimeHoverStyle || runtimeFocusStyle);
754
+ const needsPressState = Boolean(hasDynamicGroupChildren || runtimePressStyle);
755
+ if (process.env.NODE_ENV === "development" && time) time`events-setup`;
756
+ if (process.env.NODE_ENV === "development" && debugProp === "verbose") (0, import_log.log)(`\u{1FAA9} events()`, {
757
+ runtimeFocusStyle,
758
+ runtimePressStyle,
759
+ runtimeHoverStyle,
760
+ runtimeFocusVisibleStyle,
761
+ attachPress,
762
+ attachFocus,
763
+ attachHover,
764
+ shouldAttach,
765
+ needsHoverState
766
+ });
767
+ const events = shouldAttach ? {
768
+ onPressOut: attachPress ? (e) => {
769
+ unPress();
770
+ onPressOut?.(e);
771
+ onMouseUp?.(e);
772
+ } : void 0,
773
+ ...(attachHover || attachPress) && {
774
+ onMouseEnter: (e) => {
775
+ const next = {};
776
+ if (needsHoverState && !lastInteractionWasTouch.value) next.hover = true;
777
+ if (needsPressState) {
778
+ if (state.pressIn) next.press = true;
779
+ }
780
+ setStateShallow(next);
781
+ onHoverIn?.(e);
782
+ onMouseEnter?.(e);
783
+ },
784
+ onMouseLeave: (e) => {
785
+ const next = {};
786
+ if (needsHoverState) next.hover = false;
787
+ if (needsPressState) {
788
+ next.press = false;
789
+ next.pressIn = false;
790
+ }
791
+ setStateShallow(next);
792
+ onHoverOut?.(e);
793
+ onMouseLeave?.(e);
794
+ }
795
+ },
796
+ onPressIn: attachPress ? (e) => {
797
+ if (needsPressState) setStateShallow({
798
+ press: true,
799
+ pressIn: true
800
+ });
801
+ onPressIn?.(e);
802
+ onMouseDown?.(e);
803
+ if (import_constants.isWeb) componentSetStates.add(setState);
804
+ } : void 0,
805
+ onPress: attachPress ? (e) => {
806
+ unPress();
807
+ onClick?.(e);
808
+ if (onPress || onClick) e.stopPropagation();
809
+ onPress?.(e);
810
+ onLongPress?.(e);
811
+ } : void 0,
812
+ ...attachFocus && {
813
+ onFocus: (e) => {
814
+ const next = {};
815
+ if (componentContext.setParentFocusState) {
816
+ componentContext.setParentFocusState({ focusWithin: true });
817
+ next.focusWithin = true;
818
+ }
819
+ if (conditionalStates?.has("focus-visible")) if (lastInteractionWasKeyboard.value) next.focusVisible = true;
820
+ else next.focus = true;
821
+ else next.focus = true;
822
+ setStateShallow(next);
823
+ onFocus?.(e);
824
+ },
825
+ onBlur: (e) => {
826
+ if (componentContext.setParentFocusState) componentContext.setParentFocusState({ focusWithin: false });
827
+ setStateShallow({
828
+ focus: false,
829
+ focusVisible: false,
830
+ focusWithin: false
831
+ });
832
+ onBlur?.(e);
833
+ }
834
+ }
835
+ } : null;
836
+ if (events && !isReactNative) Object.assign(viewProps, (0, import_eventHandling.getWebEvents)(events));
837
+ if (process.env.NODE_ENV === "development" && time) time`events`;
838
+ if (process.env.NODE_ENV === "development" && debugProp === "verbose") (0, import_log.log)(`events`, {
839
+ events,
840
+ attachHover,
841
+ attachPress
842
+ });
843
+ const propsWithHref = props;
844
+ const propsInWithHref = propsIn;
845
+ [displayName, props.testID ?? propsIn.testID ?? props.accessibilityLabel ?? propsIn.accessibilityLabel ?? (typeof propsWithHref.href === "string" ? propsWithHref.href : null) ?? (typeof propsInWithHref.href === "string" ? propsInWithHref.href : null)].filter(Boolean).join(":");
846
+ if (process.env.NODE_ENV === "development" && time) time`hooks`;
847
+ if (asChild && !isHOC) {
848
+ elementType = import_Slot.Slot;
849
+ {
850
+ const webStyleEvents = asChild === "web" || asChild === "except-style-web";
851
+ const passEvents = (0, import_eventHandling.getWebEvents)({
852
+ onPress,
853
+ onLongPress,
854
+ onPressIn,
855
+ onPressOut,
856
+ onMouseUp,
857
+ onMouseDown,
858
+ onMouseEnter,
859
+ onMouseLeave
860
+ }, webStyleEvents);
861
+ Object.assign(viewProps, passEvents);
862
+ }
863
+ }
864
+ if (process.env.NODE_ENV === "development" && time) time`spaced-as-child`;
865
+ let content;
866
+ const childrenFromHooks = import_setupHooks.hooks.useChildren ? import_setupHooks.hooks.useChildren(elementType, children, viewProps, isPassthrough) : void 0;
867
+ if (isPassthrough) content = import_react.default.createElement(BaseComponent, { style: { display: "contents" } }, propsIn.children);
868
+ else {
869
+ if (childrenFromHooks) content = childrenFromHooks;
870
+ const isRenderPropString = typeof renderProp === "string";
871
+ if (renderProp && !isRenderPropString) {
872
+ const out = getCustomRender(renderProp, content || children, viewProps, componentState);
873
+ if (out) {
874
+ viewProps = out.viewProps;
875
+ if (isAnimatedCustomComponent && elementType["acceptRenderProp"] && typeof out.elementType === "string") viewProps.render = out.elementType;
876
+ else elementType = out.elementType;
877
+ }
878
+ }
879
+ if (!content) {
880
+ if (isRenderPropString && elementType["acceptRenderProp"]) viewProps.render = renderProp;
881
+ content = import_react.default.createElement(elementType, viewProps, content || children);
882
+ }
883
+ if (process.env.NODE_ENV === "development" && time) time`use-children`;
884
+ }
885
+ const ResetPresence = animationDriver?.isStub ? void 0 : animationDriver?.ResetPresence;
886
+ const needsReset = Boolean(!asChild && splitStyles && !isHOC && ResetPresence && willBeAnimated && (hasEnterStyle || presenceState));
887
+ const hasEverReset = stateRef.current.hasEverResetPresence;
888
+ if (needsReset && !hasEverReset) stateRef.current.hasEverResetPresence = true;
889
+ if ((needsReset || hasEverReset) && ResetPresence) content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ResetPresence, {
890
+ disabled: !needsReset,
891
+ children: content
892
+ });
893
+ if (process.env.NODE_ENV === "development" && time) time`create-element`;
894
+ if (conditionalStates?.has("focus-within")) content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
895
+ ...componentContext,
896
+ setParentFocusState: setStateShallow,
897
+ children: content
898
+ });
899
+ if ("group" in props || isContainer) content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_GroupContext.GroupContext.Provider, {
900
+ value: allGroupContexts,
901
+ children: content
902
+ });
903
+ if (!asChild && isText && !hasTextAncestor) content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
904
+ ...componentContext,
905
+ inText: true,
906
+ children: content
907
+ });
908
+ if (process.env.NODE_ENV === "development" && time) time`group-context`;
909
+ content = disableTheme || !splitStyles ? content : (0, import_Theme.getThemedChildren)(themeState, content, themeStateProps, false, stateRef);
910
+ if (process.env.NODE_ENV === "development" && time) time`themed-children`;
911
+ if (isReactNative && !asChild) content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
912
+ className: "_dsp_contents",
913
+ ...!isPassthrough && isHydrated && events && (0, import_eventHandling.getWebEvents)(events),
914
+ children: content
915
+ });
916
+ if (overriddenContextProps && contextForOverride) {
917
+ const Provider = contextForOverride.Provider;
918
+ for (const key in styledContextValue) if (!(key in overriddenContextProps)) overriddenContextProps[key] = styledContextValue[key];
919
+ content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Provider, {
920
+ __disableMergeDefaultValues: true,
921
+ ...overriddenContextProps,
922
+ children: content
923
+ });
924
+ }
925
+ if (process.env.NODE_ENV === "development" && time) time`context-override`;
926
+ if (startedUnhydrated && splitStyles) content = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [content, !isHydrated ? (0, import_wrapStyleTags.getStyleTags)(Object.values(splitStyles.rulesToInsert)) : null] });
927
+ if (process.env.NODE_ENV === "development" && time) time`style-tags`;
928
+ if (process.env.NODE_ENV === "development") {
929
+ if (debugProp && debugProp !== "profile") {
930
+ const title = `render <${typeof elementType === "string" ? elementType : "Component"} /> (${internalID}) with props`;
931
+ if (!import_constants.isWeb || !import_constants.isClient) {
932
+ (0, import_log.log)(title);
933
+ (0, import_log.log)(`state: `, state);
934
+ if (import_isDevTools.isDevTools) (0, import_log.log)("viewProps", viewProps);
935
+ (0, import_log.log)(`final styles:`);
936
+ for (const key in splitStylesStyle) (0, import_log.log)(key, splitStylesStyle[key]);
937
+ } else {
938
+ console.groupCollapsed(title);
939
+ try {
940
+ (0, import_log.log)("viewProps", viewProps);
941
+ (0, import_log.log)("children", content);
942
+ if (typeof window !== "undefined") (0, import_log.log)({
943
+ propsIn,
944
+ props,
945
+ attachPress,
946
+ animationStyles,
947
+ classNames,
948
+ content,
949
+ elementType,
950
+ events,
951
+ isAnimated,
952
+ hasRuntimeMediaKeys,
953
+ isStringElement,
954
+ mediaListeningKeys,
955
+ shouldAttach,
956
+ noClass,
957
+ shouldListenForMedia,
958
+ splitStyles,
959
+ splitStylesStyle,
960
+ state,
961
+ stateRef,
962
+ staticConfig,
963
+ styleProps,
964
+ themeState,
965
+ viewProps,
966
+ willBeAnimated,
967
+ startedUnhydrated
968
+ });
969
+ } catch {} finally {
970
+ console.groupEnd();
971
+ }
972
+ }
973
+ }
974
+ }
975
+ if (process.env.NODE_ENV === "development" && time) {
976
+ time`rest`;
977
+ if (!globalThis["willPrint"]) {
978
+ globalThis["willPrint"] = true;
979
+ setTimeout(() => {
980
+ delete globalThis["willPrint"];
981
+ time.print();
982
+ time = null;
983
+ }, 50);
984
+ }
985
+ }
986
+ return content;
987
+ };
988
+ function notifyGroupSubscribers(groupContext, groupEmitter, pseudo) {
989
+ if (!groupContext || !groupEmitter) return;
990
+ const prevPseudo = groupContext.state.pseudo;
991
+ const shouldReplacePseudo = !prevPseudo || "unmounted" in prevPseudo || "group" in prevPseudo || "hasDynGroupChildren" in prevPseudo || "transition" in prevPseudo;
992
+ const nextPseudo = shouldReplacePseudo ? {} : prevPseudo;
993
+ let didChange = shouldReplacePseudo;
994
+ for (let i = 0; i < groupPseudoKeys.length; i++) {
995
+ const key = groupPseudoKeys[i];
996
+ const value = pseudo[key];
997
+ if (nextPseudo[key] !== value) {
998
+ nextPseudo[key] = value;
999
+ didChange = true;
1000
+ } else if (didChange) nextPseudo[key] = value;
1001
+ }
1002
+ if (!didChange) return;
1003
+ groupContext.state.pseudo = nextPseudo;
1004
+ groupEmitter.emit(groupContext.state);
1005
+ }
1006
+ res = component;
1007
+ res = import_react.default.memo(res);
1008
+ res.staticConfig = staticConfig;
1009
+ return res;
1060
1010
  }
1061
- const fromPx = val => {
1062
- if (typeof val === "number") return val;
1063
- if (typeof val === "string") return +val.replace("px", "");
1064
- return 0;
1011
+ const fromPx = (val) => {
1012
+ if (typeof val === "number") return val;
1013
+ if (typeof val === "string") return +val.replace("px", "");
1014
+ return 0;
1065
1015
  };
1066
1016
  const getCustomRender = (renderProp, content, viewProps, state) => {
1067
- if (typeof renderProp === "function") renderProp = getRenderElementForPlatform(renderProp(viewProps, state));
1068
- if (renderProp) {
1069
- if (typeof renderProp === "object" && import_react.default.isValidElement(renderProp)) {
1070
- if (getRenderElementForPlatform(renderProp)) {
1071
- const elementProps = renderProp.props;
1072
- const mergedProps = elementProps ? (0, import_mergeRenderElementProps.mergeRenderElementProps)(elementProps, viewProps, content) : viewProps;
1073
- return {
1074
- elementType: renderProp.type,
1075
- viewProps: mergedProps
1076
- };
1077
- }
1078
- }
1079
- }
1017
+ if (typeof renderProp === "function") renderProp = getRenderElementForPlatform(renderProp(viewProps, state));
1018
+ if (renderProp) {
1019
+ if (typeof renderProp === "object" && import_react.default.isValidElement(renderProp)) {
1020
+ if (getRenderElementForPlatform(renderProp)) {
1021
+ const elementProps = renderProp.props;
1022
+ const mergedProps = elementProps ? (0, import_mergeRenderElementProps.mergeRenderElementProps)(elementProps, viewProps, content) : viewProps;
1023
+ return {
1024
+ elementType: renderProp.type,
1025
+ viewProps: mergedProps
1026
+ };
1027
+ }
1028
+ }
1029
+ }
1080
1030
  };
1081
1031
  function getRenderElementForPlatform(potential) {
1082
- return potential;
1083
- }
1032
+ return potential;
1033
+ }