@tamagui/web 2.0.0-rc.4 → 2.0.0-rc.40

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 (1368) hide show
  1. package/.turbo/turbo-build.log +3 -0
  2. package/.turbo/turbo-test$colon$web.log +15 -0
  3. package/dist/cjs/Tamagui.cjs +57 -53
  4. package/dist/cjs/Tamagui.native.js +95 -79
  5. package/dist/cjs/Tamagui.native.js.map +1 -1
  6. package/dist/cjs/_withStableStyle.cjs +56 -35
  7. package/dist/cjs/_withStableStyle.native.js +64 -46
  8. package/dist/cjs/_withStableStyle.native.js.map +1 -1
  9. package/dist/cjs/animationDriverTypes.test-d.cjs +39 -11
  10. package/dist/cjs/animationDriverTypes.test-d.native.js +39 -11
  11. package/dist/cjs/animationDriverTypes.test-d.native.js.map +1 -1
  12. package/dist/cjs/config.cjs +130 -75
  13. package/dist/cjs/config.native.js +152 -106
  14. package/dist/cjs/config.native.js.map +1 -1
  15. package/dist/cjs/constants/accessibilityDirectMap.cjs +17 -15
  16. package/dist/cjs/constants/accessibilityDirectMap.native.js +17 -15
  17. package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
  18. package/dist/cjs/constants/constants.cjs +17 -29
  19. package/dist/cjs/constants/constants.native.js +18 -29
  20. package/dist/cjs/constants/constants.native.js.map +1 -1
  21. package/dist/cjs/constants/isDevTools.cjs +18 -14
  22. package/dist/cjs/constants/isDevTools.native.js +18 -14
  23. package/dist/cjs/constants/isDevTools.native.js.map +1 -1
  24. package/dist/cjs/contexts/ComponentContext.cjs +24 -20
  25. package/dist/cjs/contexts/ComponentContext.native.js +25 -23
  26. package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
  27. package/dist/cjs/contexts/GroupContext.cjs +12 -10
  28. package/dist/cjs/contexts/GroupContext.native.js +14 -12
  29. package/dist/cjs/contexts/GroupContext.native.js.map +1 -1
  30. package/dist/cjs/createComponent.cjs +919 -635
  31. package/dist/cjs/createComponent.native.js +919 -691
  32. package/dist/cjs/createComponent.native.js.map +1 -1
  33. package/dist/cjs/createFont.cjs +33 -27
  34. package/dist/cjs/createFont.native.js +35 -32
  35. package/dist/cjs/createFont.native.js.map +1 -1
  36. package/dist/cjs/createShorthands.cjs +12 -10
  37. package/dist/cjs/createShorthands.native.js +12 -10
  38. package/dist/cjs/createShorthands.native.js.map +1 -1
  39. package/dist/cjs/createTamagui.cjs +118 -97
  40. package/dist/cjs/createTamagui.native.js +155 -141
  41. package/dist/cjs/createTamagui.native.js.map +1 -1
  42. package/dist/cjs/createTokens.cjs +12 -10
  43. package/dist/cjs/createTokens.native.js +12 -10
  44. package/dist/cjs/createTokens.native.js.map +1 -1
  45. package/dist/cjs/createVariable.cjs +57 -31
  46. package/dist/cjs/createVariable.native.js +67 -42
  47. package/dist/cjs/createVariable.native.js.map +1 -1
  48. package/dist/cjs/createVariables.cjs +55 -49
  49. package/dist/cjs/createVariables.native.js +57 -51
  50. package/dist/cjs/createVariables.native.js.map +1 -1
  51. package/dist/cjs/defaultComponentState.cjs +29 -27
  52. package/dist/cjs/defaultComponentState.native.js +29 -27
  53. package/dist/cjs/defaultComponentState.native.js.map +1 -1
  54. package/dist/cjs/eventHandling.cjs +15 -13
  55. package/dist/cjs/eventHandling.native.js +160 -92
  56. package/dist/cjs/eventHandling.native.js.map +1 -1
  57. package/dist/cjs/helpers/consoleLog.native.js +14 -12
  58. package/dist/cjs/helpers/consoleLog.native.js.map +1 -1
  59. package/dist/cjs/helpers/createDesignSystem.cjs +82 -42
  60. package/dist/cjs/helpers/createDesignSystem.native.js +118 -88
  61. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
  62. package/dist/cjs/helpers/createMediaStyle.cjs +91 -61
  63. package/dist/cjs/helpers/createMediaStyle.native.js +98 -69
  64. package/dist/cjs/helpers/createMediaStyle.native.js.map +1 -1
  65. package/dist/cjs/helpers/createStyledContext.cjs +84 -61
  66. package/dist/cjs/helpers/createStyledContext.native.js +88 -68
  67. package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
  68. package/dist/cjs/helpers/defaultAnimationDriver.cjs +29 -28
  69. package/dist/cjs/helpers/defaultAnimationDriver.native.js +45 -42
  70. package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -1
  71. package/dist/cjs/helpers/defaultOffset.cjs +12 -10
  72. package/dist/cjs/helpers/defaultOffset.native.js +12 -10
  73. package/dist/cjs/helpers/defaultOffset.native.js.map +1 -1
  74. package/dist/cjs/helpers/expandStyle.cjs +40 -37
  75. package/dist/cjs/helpers/expandStyle.native.js +69 -70
  76. package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
  77. package/dist/cjs/helpers/expandStyles.cjs +24 -23
  78. package/dist/cjs/helpers/expandStyles.native.js +27 -21
  79. package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
  80. package/dist/cjs/helpers/getCSSStylesAtomic.cjs +111 -73
  81. package/dist/cjs/helpers/getCSSStylesAtomic.native.js +17 -15
  82. package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -1
  83. package/dist/cjs/helpers/getDefaultProps.cjs +22 -23
  84. package/dist/cjs/helpers/getDefaultProps.native.js +27 -23
  85. package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -1
  86. package/dist/cjs/helpers/getDynamicVal.cjs +32 -27
  87. package/dist/cjs/helpers/getDynamicVal.native.js +37 -32
  88. package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -1
  89. package/dist/cjs/helpers/getExpandedShorthands.cjs +15 -11
  90. package/dist/cjs/helpers/getExpandedShorthands.native.js +17 -13
  91. package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -1
  92. package/dist/cjs/helpers/getFontLanguage.cjs +12 -10
  93. package/dist/cjs/helpers/getFontLanguage.native.js +12 -10
  94. package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -1
  95. package/dist/cjs/helpers/getGroupPropParts.cjs +27 -18
  96. package/dist/cjs/helpers/getGroupPropParts.native.js +28 -19
  97. package/dist/cjs/helpers/getGroupPropParts.native.js.map +1 -1
  98. package/dist/cjs/helpers/getShorthandValue.cjs +16 -11
  99. package/dist/cjs/helpers/getShorthandValue.native.js +19 -17
  100. package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -1
  101. package/dist/cjs/helpers/getSplitStyles.cjs +628 -395
  102. package/dist/cjs/helpers/getSplitStyles.native.js +742 -597
  103. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
  104. package/dist/cjs/helpers/getThemeCSSRules.cjs +96 -82
  105. package/dist/cjs/helpers/getThemeCSSRules.native.js +12 -10
  106. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
  107. package/dist/cjs/helpers/getTokenForKey.cjs +171 -0
  108. package/dist/cjs/helpers/getTokenForKey.native.js +183 -0
  109. package/dist/cjs/helpers/getTokenForKey.native.js.map +1 -0
  110. package/dist/cjs/helpers/getVariantExtras.cjs +56 -44
  111. package/dist/cjs/helpers/getVariantExtras.native.js +56 -44
  112. package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -1
  113. package/dist/cjs/helpers/insertStyleRule.cjs +109 -75
  114. package/dist/cjs/helpers/insertStyleRule.native.js +52 -263
  115. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
  116. package/dist/cjs/helpers/isActivePlatform.cjs +21 -17
  117. package/dist/cjs/helpers/isActivePlatform.native.js +21 -17
  118. package/dist/cjs/helpers/isActivePlatform.native.js.map +1 -1
  119. package/dist/cjs/helpers/isActiveTheme.cjs +14 -11
  120. package/dist/cjs/helpers/isActiveTheme.native.js +14 -11
  121. package/dist/cjs/helpers/isActiveTheme.native.js.map +1 -1
  122. package/dist/cjs/helpers/isObj.cjs +13 -11
  123. package/dist/cjs/helpers/isObj.native.js +14 -12
  124. package/dist/cjs/helpers/isObj.native.js.map +1 -1
  125. package/dist/cjs/helpers/isTamaguiComponent.cjs +14 -12
  126. package/dist/cjs/helpers/isTamaguiComponent.native.js +14 -12
  127. package/dist/cjs/helpers/isTamaguiComponent.native.js.map +1 -1
  128. package/dist/cjs/helpers/isTamaguiElement.cjs +29 -25
  129. package/dist/cjs/helpers/isTamaguiElement.native.js +29 -27
  130. package/dist/cjs/helpers/isTamaguiElement.native.js.map +1 -1
  131. package/dist/cjs/helpers/log.cjs +20 -19
  132. package/dist/cjs/helpers/log.native.js +20 -19
  133. package/dist/cjs/helpers/log.native.js.map +1 -1
  134. package/dist/cjs/helpers/mainThreadPressEvents.cjs +13 -11
  135. package/dist/cjs/helpers/mainThreadPressEvents.native.js +111 -26
  136. package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
  137. package/dist/cjs/helpers/matchMedia.cjs +15 -13
  138. package/dist/cjs/helpers/matchMedia.native.js +34 -19
  139. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  140. package/dist/cjs/helpers/mediaObjectToString.cjs +51 -0
  141. package/dist/cjs/helpers/mediaObjectToString.native.js +57 -0
  142. package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -0
  143. package/dist/cjs/helpers/mediaState.cjs +49 -0
  144. package/dist/cjs/helpers/mediaState.native.js +54 -0
  145. package/dist/cjs/helpers/mediaState.native.js.map +1 -0
  146. package/dist/cjs/helpers/mergeProps.cjs +54 -30
  147. package/dist/cjs/helpers/mergeProps.native.js +55 -30
  148. package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
  149. package/dist/cjs/helpers/mergeRenderElementProps.cjs +14 -11
  150. package/dist/cjs/helpers/mergeRenderElementProps.native.js +14 -11
  151. package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -1
  152. package/dist/cjs/helpers/mergeSlotStyleProps.cjs +31 -18
  153. package/dist/cjs/helpers/mergeSlotStyleProps.native.js +32 -19
  154. package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -1
  155. package/dist/cjs/helpers/mergeVariants.cjs +28 -16
  156. package/dist/cjs/helpers/mergeVariants.native.js +30 -18
  157. package/dist/cjs/helpers/mergeVariants.native.js.map +1 -1
  158. package/dist/cjs/helpers/nativeOnlyProps.cjs +12 -10
  159. package/dist/cjs/helpers/nativeOnlyProps.native.js +12 -10
  160. package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
  161. package/dist/cjs/helpers/normalizeColor.cjs +30 -13
  162. package/dist/cjs/helpers/normalizeColor.native.js +33 -30
  163. package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
  164. package/dist/cjs/helpers/normalizeShadow.cjs +12 -10
  165. package/dist/cjs/helpers/normalizeShadow.native.js +25 -23
  166. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
  167. package/dist/cjs/helpers/normalizeStyle.cjs +27 -20
  168. package/dist/cjs/helpers/normalizeStyle.native.js +34 -28
  169. package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -1
  170. package/dist/cjs/helpers/normalizeStylePropKeys.cjs +12 -10
  171. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +22 -20
  172. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
  173. package/dist/cjs/helpers/normalizeValueWithProperty.cjs +33 -16
  174. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +34 -17
  175. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
  176. package/dist/cjs/helpers/objectIdentityKey.cjs +19 -12
  177. package/dist/cjs/helpers/objectIdentityKey.native.js +22 -15
  178. package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
  179. package/dist/cjs/helpers/parseBorderShorthand.cjs +15 -11
  180. package/dist/cjs/helpers/parseBorderShorthand.native.js +52 -24
  181. package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -1
  182. package/dist/cjs/helpers/parseNativeStyle.cjs +167 -0
  183. package/dist/cjs/helpers/parseNativeStyle.native.js +190 -0
  184. package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -0
  185. package/dist/cjs/helpers/parseOutlineShorthand.cjs +30 -0
  186. package/dist/cjs/helpers/parseOutlineShorthand.native.js +80 -0
  187. package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -0
  188. package/dist/cjs/helpers/platformResolveValue.cjs +38 -0
  189. package/dist/cjs/helpers/platformResolveValue.native.js +74 -0
  190. package/dist/cjs/helpers/platformResolveValue.native.js.map +1 -0
  191. package/dist/cjs/helpers/pointerEvents.cjs +12 -10
  192. package/dist/cjs/helpers/pointerEvents.native.js +124 -89
  193. package/dist/cjs/helpers/pointerEvents.native.js.map +1 -1
  194. package/dist/cjs/helpers/propMapper.cjs +195 -211
  195. package/dist/cjs/helpers/propMapper.native.js +276 -287
  196. package/dist/cjs/helpers/propMapper.native.js.map +1 -1
  197. package/dist/cjs/helpers/proxyThemeToParents.cjs +33 -19
  198. package/dist/cjs/helpers/proxyThemeToParents.native.js +84 -55
  199. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
  200. package/dist/cjs/helpers/proxyThemeVariables.cjs +13 -11
  201. package/dist/cjs/helpers/proxyThemeVariables.native.js +13 -11
  202. package/dist/cjs/helpers/proxyThemeVariables.native.js.map +1 -1
  203. package/dist/cjs/helpers/pseudoDescriptors.cjs +60 -58
  204. package/dist/cjs/helpers/pseudoDescriptors.native.js +60 -58
  205. package/dist/cjs/helpers/pseudoDescriptors.native.js.map +1 -1
  206. package/dist/cjs/helpers/pseudoTransitions.cjs +83 -0
  207. package/dist/cjs/helpers/pseudoTransitions.native.js +88 -0
  208. package/dist/cjs/helpers/pseudoTransitions.native.js.map +1 -0
  209. package/dist/cjs/helpers/registerCSSVariable.cjs +55 -38
  210. package/dist/cjs/helpers/registerCSSVariable.native.js +60 -45
  211. package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
  212. package/dist/cjs/helpers/resolveAnimationDriver.cjs +37 -0
  213. package/dist/cjs/helpers/resolveAnimationDriver.native.js +41 -0
  214. package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -0
  215. package/dist/cjs/helpers/resolveCompoundTokens.cjs +41 -0
  216. package/dist/cjs/helpers/resolveCompoundTokens.native.js +44 -0
  217. package/dist/cjs/helpers/resolveCompoundTokens.native.js.map +1 -0
  218. package/dist/cjs/helpers/resolveRem.cjs +13 -11
  219. package/dist/cjs/helpers/resolveRem.native.js +31 -22
  220. package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
  221. package/dist/cjs/helpers/resolveSafeArea.cjs +12 -10
  222. package/dist/cjs/helpers/resolveSafeArea.native.js +18 -14
  223. package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -1
  224. package/dist/cjs/helpers/setElementProps.cjs +12 -10
  225. package/dist/cjs/helpers/setElementProps.native.js +19 -13
  226. package/dist/cjs/helpers/setElementProps.native.js.map +1 -1
  227. package/dist/cjs/helpers/skipProps.cjs +16 -14
  228. package/dist/cjs/helpers/skipProps.native.js +30 -28
  229. package/dist/cjs/helpers/skipProps.native.js.map +1 -1
  230. package/dist/cjs/helpers/sortString.cjs +12 -10
  231. package/dist/cjs/helpers/sortString.native.js +12 -10
  232. package/dist/cjs/helpers/sortString.native.js.map +1 -1
  233. package/dist/cjs/helpers/subscribeToContextGroup.cjs +83 -55
  234. package/dist/cjs/helpers/subscribeToContextGroup.native.js +118 -92
  235. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
  236. package/dist/cjs/helpers/themeable.cjs +77 -48
  237. package/dist/cjs/helpers/themeable.native.js +97 -69
  238. package/dist/cjs/helpers/themeable.native.js.map +1 -1
  239. package/dist/cjs/helpers/themes.cjs +27 -19
  240. package/dist/cjs/helpers/themes.native.js +27 -19
  241. package/dist/cjs/helpers/themes.native.js.map +1 -1
  242. package/dist/cjs/helpers/timer.cjs +13 -11
  243. package/dist/cjs/helpers/timer.native.js +13 -11
  244. package/dist/cjs/helpers/timer.native.js.map +1 -1
  245. package/dist/cjs/helpers/transformsToString.cjs +18 -13
  246. package/dist/cjs/helpers/transformsToString.native.js +18 -13
  247. package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
  248. package/dist/cjs/helpers/useRenderElement.cjs +29 -24
  249. package/dist/cjs/helpers/useRenderElement.native.js +33 -25
  250. package/dist/cjs/helpers/useRenderElement.native.js.map +1 -1
  251. package/dist/cjs/helpers/webPropsToSkip.cjs +12 -10
  252. package/dist/cjs/helpers/webPropsToSkip.native.js +60 -58
  253. package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
  254. package/dist/cjs/helpers/wrapStyleTags.cjs +16 -15
  255. package/dist/cjs/helpers/wrapStyleTags.native.js +14 -12
  256. package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
  257. package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +13 -11
  258. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +14 -12
  259. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
  260. package/dist/cjs/hooks/getThemeProxied.cjs +45 -27
  261. package/dist/cjs/hooks/getThemeProxied.native.js +79 -65
  262. package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
  263. package/dist/cjs/hooks/useComponentState.cjs +141 -86
  264. package/dist/cjs/hooks/useComponentState.native.js +145 -97
  265. package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
  266. package/dist/cjs/hooks/useDisableSSR.cjs +12 -10
  267. package/dist/cjs/hooks/useDisableSSR.native.js +13 -11
  268. package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -1
  269. package/dist/cjs/hooks/useIsTouchDevice.cjs +17 -13
  270. package/dist/cjs/hooks/useIsTouchDevice.native.js +17 -15
  271. package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -1
  272. package/dist/cjs/hooks/useMedia.cjs +155 -120
  273. package/dist/cjs/hooks/useMedia.native.js +165 -141
  274. package/dist/cjs/hooks/useMedia.native.js.map +1 -1
  275. package/dist/cjs/hooks/useProps.cjs +83 -76
  276. package/dist/cjs/hooks/useProps.native.js +85 -78
  277. package/dist/cjs/hooks/useProps.native.js.map +1 -1
  278. package/dist/cjs/hooks/useTheme.cjs +40 -25
  279. package/dist/cjs/hooks/useTheme.native.js +40 -28
  280. package/dist/cjs/hooks/useTheme.native.js.map +1 -1
  281. package/dist/cjs/hooks/useThemeName.cjs +20 -18
  282. package/dist/cjs/hooks/useThemeName.native.js +24 -22
  283. package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
  284. package/dist/cjs/hooks/useThemeState.cjs +252 -172
  285. package/dist/cjs/hooks/useThemeState.native.js +318 -247
  286. package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
  287. package/dist/cjs/index.cjs +25 -19
  288. package/dist/cjs/index.native.js +25 -19
  289. package/dist/cjs/index.native.js.map +1 -1
  290. package/dist/cjs/inject-styles.cjs +27 -22
  291. package/dist/cjs/inject-styles.native.js +28 -23
  292. package/dist/cjs/inject-styles.native.js.map +1 -1
  293. package/dist/cjs/insertFont.cjs +37 -28
  294. package/dist/cjs/insertFont.native.js +35 -30
  295. package/dist/cjs/insertFont.native.js.map +1 -1
  296. package/dist/cjs/interfaces/CSSColorNames.cjs +7 -5
  297. package/dist/cjs/interfaces/CSSColorNames.native.js +7 -5
  298. package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -1
  299. package/dist/cjs/interfaces/GetRef.cjs +7 -5
  300. package/dist/cjs/interfaces/GetRef.native.js +7 -5
  301. package/dist/cjs/interfaces/GetRef.native.js.map +1 -1
  302. package/dist/cjs/interfaces/RNExclusiveTypes.cjs +7 -5
  303. package/dist/cjs/interfaces/RNExclusiveTypes.native.js +7 -5
  304. package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -1
  305. package/dist/cjs/interfaces/TamaguiComponentEvents.cjs +7 -5
  306. package/dist/cjs/interfaces/TamaguiComponentEvents.native.js +7 -5
  307. package/dist/cjs/interfaces/TamaguiComponentEvents.native.js.map +1 -1
  308. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.cjs +7 -5
  309. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js +7 -5
  310. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js.map +1 -1
  311. package/dist/cjs/setupHooks.cjs +12 -10
  312. package/dist/cjs/setupHooks.native.js +12 -10
  313. package/dist/cjs/setupHooks.native.js.map +1 -1
  314. package/dist/cjs/setupReactNative.cjs +25 -18
  315. package/dist/cjs/setupReactNative.native.js +25 -21
  316. package/dist/cjs/setupReactNative.native.js.map +1 -1
  317. package/dist/cjs/styled.cjs +121 -77
  318. package/dist/cjs/styled.native.js +125 -87
  319. package/dist/cjs/styled.native.js.map +1 -1
  320. package/dist/cjs/styledHtml.test-d.cjs +58 -27
  321. package/dist/cjs/styledHtml.test-d.native.js +58 -27
  322. package/dist/cjs/styledHtml.test-d.native.js.map +1 -1
  323. package/dist/cjs/type-utils.cjs +7 -5
  324. package/dist/cjs/type-utils.native.js +7 -5
  325. package/dist/cjs/type-utils.native.js.map +1 -1
  326. package/dist/cjs/types.cjs +7 -5
  327. package/dist/cjs/types.native.js +7 -5
  328. package/dist/cjs/types.native.js.map +1 -1
  329. package/dist/cjs/views/Configuration.cjs +28 -26
  330. package/dist/cjs/views/Configuration.native.js +39 -37
  331. package/dist/cjs/views/Configuration.native.js.map +1 -1
  332. package/dist/cjs/views/FontLanguage.cjs +22 -18
  333. package/dist/cjs/views/FontLanguage.native.js +34 -32
  334. package/dist/cjs/views/FontLanguage.native.js.map +1 -1
  335. package/dist/cjs/views/Slot.cjs +55 -37
  336. package/dist/cjs/views/Slot.native.js +57 -41
  337. package/dist/cjs/views/Slot.native.js.map +1 -1
  338. package/dist/cjs/views/TamaguiProvider.cjs +65 -69
  339. package/dist/cjs/views/TamaguiProvider.native.js +68 -71
  340. package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
  341. package/dist/cjs/views/TamaguiRoot.cjs +79 -0
  342. package/dist/cjs/views/TamaguiRoot.native.js +33 -0
  343. package/dist/cjs/views/TamaguiRoot.native.js.map +1 -0
  344. package/dist/cjs/views/Text.cjs +43 -48
  345. package/dist/cjs/views/Text.native.js +31 -32
  346. package/dist/cjs/views/Text.native.js.map +1 -1
  347. package/dist/cjs/views/Theme.cjs +139 -101
  348. package/dist/cjs/views/Theme.native.js +148 -113
  349. package/dist/cjs/views/Theme.native.js.map +1 -1
  350. package/dist/cjs/views/ThemeDebug.cjs +39 -18
  351. package/dist/cjs/views/ThemeDebug.native.js +13 -11
  352. package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
  353. package/dist/cjs/views/ThemeProvider.cjs +25 -20
  354. package/dist/cjs/views/ThemeProvider.native.js +30 -28
  355. package/dist/cjs/views/ThemeProvider.native.js.map +1 -1
  356. package/dist/cjs/views/View.cjs +15 -15
  357. package/dist/cjs/views/View.native.js +18 -18
  358. package/dist/cjs/views/View.native.js.map +1 -1
  359. package/dist/esm/Tamagui.mjs +30 -28
  360. package/dist/esm/Tamagui.mjs.map +1 -1
  361. package/dist/esm/Tamagui.native.js +68 -54
  362. package/dist/esm/Tamagui.native.js.map +1 -1
  363. package/dist/esm/_withStableStyle.mjs +29 -10
  364. package/dist/esm/_withStableStyle.mjs.map +1 -1
  365. package/dist/esm/_withStableStyle.native.js +32 -16
  366. package/dist/esm/_withStableStyle.native.js.map +1 -1
  367. package/dist/esm/animationDriverTypes.test-d.mjs +39 -11
  368. package/dist/esm/animationDriverTypes.test-d.mjs.map +1 -1
  369. package/dist/esm/animationDriverTypes.test-d.native.js +39 -11
  370. package/dist/esm/animationDriverTypes.test-d.native.js.map +1 -1
  371. package/dist/esm/config.mjs +116 -63
  372. package/dist/esm/config.mjs.map +1 -1
  373. package/dist/esm/config.native.js +138 -94
  374. package/dist/esm/config.native.js.map +1 -1
  375. package/dist/esm/constants/accessibilityDirectMap.mjs +5 -5
  376. package/dist/esm/constants/accessibilityDirectMap.mjs.map +1 -1
  377. package/dist/esm/constants/accessibilityDirectMap.native.js +5 -5
  378. package/dist/esm/constants/accessibilityDirectMap.native.js.map +1 -1
  379. package/dist/esm/constants/constants.mjs +5 -17
  380. package/dist/esm/constants/constants.mjs.map +1 -1
  381. package/dist/esm/constants/constants.native.js +6 -17
  382. package/dist/esm/constants/constants.native.js.map +1 -1
  383. package/dist/esm/constants/isDevTools.mjs +6 -4
  384. package/dist/esm/constants/isDevTools.mjs.map +1 -1
  385. package/dist/esm/constants/isDevTools.native.js +6 -4
  386. package/dist/esm/constants/isDevTools.native.js.map +1 -1
  387. package/dist/esm/contexts/ComponentContext.mjs +10 -8
  388. package/dist/esm/contexts/ComponentContext.mjs.map +1 -1
  389. package/dist/esm/contexts/ComponentContext.native.js +10 -10
  390. package/dist/esm/contexts/ComponentContext.native.js.map +1 -1
  391. package/dist/esm/createComponent.mjs +864 -585
  392. package/dist/esm/createComponent.mjs.map +1 -1
  393. package/dist/esm/createComponent.native.js +867 -644
  394. package/dist/esm/createComponent.native.js.map +1 -1
  395. package/dist/esm/createFont.mjs +21 -17
  396. package/dist/esm/createFont.mjs.map +1 -1
  397. package/dist/esm/createFont.native.js +23 -22
  398. package/dist/esm/createFont.native.js.map +1 -1
  399. package/dist/esm/createTamagui.mjs +94 -77
  400. package/dist/esm/createTamagui.mjs.map +1 -1
  401. package/dist/esm/createTamagui.native.js +130 -121
  402. package/dist/esm/createTamagui.native.js.map +1 -1
  403. package/dist/esm/createVariable.mjs +42 -18
  404. package/dist/esm/createVariable.mjs.map +1 -1
  405. package/dist/esm/createVariable.native.js +52 -29
  406. package/dist/esm/createVariable.native.js.map +1 -1
  407. package/dist/esm/createVariables.mjs +40 -36
  408. package/dist/esm/createVariables.mjs.map +1 -1
  409. package/dist/esm/createVariables.native.js +42 -38
  410. package/dist/esm/createVariables.native.js.map +1 -1
  411. package/dist/esm/defaultComponentState.mjs +17 -17
  412. package/dist/esm/defaultComponentState.mjs.map +1 -1
  413. package/dist/esm/defaultComponentState.native.js +17 -17
  414. package/dist/esm/defaultComponentState.native.js.map +1 -1
  415. package/dist/esm/eventHandling.mjs +3 -3
  416. package/dist/esm/eventHandling.mjs.map +1 -1
  417. package/dist/esm/eventHandling.native.js +132 -66
  418. package/dist/esm/eventHandling.native.js.map +1 -1
  419. package/dist/esm/helpers/consoleLog.native.js +2 -2
  420. package/dist/esm/helpers/consoleLog.native.js.map +1 -1
  421. package/dist/esm/helpers/createDesignSystem.mjs +65 -28
  422. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
  423. package/dist/esm/helpers/createDesignSystem.native.js +103 -76
  424. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
  425. package/dist/esm/helpers/createMediaStyle.mjs +77 -49
  426. package/dist/esm/helpers/createMediaStyle.mjs.map +1 -1
  427. package/dist/esm/helpers/createMediaStyle.native.js +83 -56
  428. package/dist/esm/helpers/createMediaStyle.native.js.map +1 -1
  429. package/dist/esm/helpers/createStyledContext.mjs +57 -36
  430. package/dist/esm/helpers/createStyledContext.mjs.map +1 -1
  431. package/dist/esm/helpers/createStyledContext.native.js +61 -43
  432. package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
  433. package/dist/esm/helpers/defaultAnimationDriver.mjs +17 -18
  434. package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -1
  435. package/dist/esm/helpers/defaultAnimationDriver.native.js +33 -32
  436. package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -1
  437. package/dist/esm/helpers/expandStyle.mjs +27 -26
  438. package/dist/esm/helpers/expandStyle.mjs.map +1 -1
  439. package/dist/esm/helpers/expandStyle.native.js +50 -53
  440. package/dist/esm/helpers/expandStyle.native.js.map +1 -1
  441. package/dist/esm/helpers/expandStyles.mjs +10 -11
  442. package/dist/esm/helpers/expandStyles.mjs.map +1 -1
  443. package/dist/esm/helpers/expandStyles.native.js +13 -9
  444. package/dist/esm/helpers/expandStyles.native.js.map +1 -1
  445. package/dist/esm/helpers/getCSSStylesAtomic.mjs +91 -55
  446. package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
  447. package/dist/esm/helpers/getCSSStylesAtomic.native.js +5 -5
  448. package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +1 -1
  449. package/dist/esm/helpers/getDefaultProps.mjs +10 -13
  450. package/dist/esm/helpers/getDefaultProps.mjs.map +1 -1
  451. package/dist/esm/helpers/getDefaultProps.native.js +14 -12
  452. package/dist/esm/helpers/getDefaultProps.native.js.map +1 -1
  453. package/dist/esm/helpers/getDynamicVal.mjs +20 -17
  454. package/dist/esm/helpers/getDynamicVal.mjs.map +1 -1
  455. package/dist/esm/helpers/getDynamicVal.native.js +25 -22
  456. package/dist/esm/helpers/getDynamicVal.native.js.map +1 -1
  457. package/dist/esm/helpers/getExpandedShorthands.mjs +3 -1
  458. package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -1
  459. package/dist/esm/helpers/getExpandedShorthands.native.js +5 -3
  460. package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -1
  461. package/dist/esm/helpers/getGroupPropParts.mjs +14 -7
  462. package/dist/esm/helpers/getGroupPropParts.mjs.map +1 -1
  463. package/dist/esm/helpers/getGroupPropParts.native.js +15 -8
  464. package/dist/esm/helpers/getGroupPropParts.native.js.map +1 -1
  465. package/dist/esm/helpers/getShorthandValue.mjs +4 -1
  466. package/dist/esm/helpers/getShorthandValue.mjs.map +1 -1
  467. package/dist/esm/helpers/getShorthandValue.native.js +6 -6
  468. package/dist/esm/helpers/getShorthandValue.native.js.map +1 -1
  469. package/dist/esm/helpers/getSplitStyles.mjs +588 -358
  470. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  471. package/dist/esm/helpers/getSplitStyles.native.js +699 -558
  472. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
  473. package/dist/esm/helpers/getThemeCSSRules.mjs +78 -66
  474. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
  475. package/dist/esm/helpers/getTokenForKey.mjs +143 -0
  476. package/dist/esm/helpers/getTokenForKey.mjs.map +1 -0
  477. package/dist/esm/helpers/getTokenForKey.native.js +152 -0
  478. package/dist/esm/helpers/getTokenForKey.native.js.map +1 -0
  479. package/dist/esm/helpers/getVariantExtras.mjs +42 -32
  480. package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
  481. package/dist/esm/helpers/getVariantExtras.native.js +42 -32
  482. package/dist/esm/helpers/getVariantExtras.native.js.map +1 -1
  483. package/dist/esm/helpers/insertStyleRule.mjs +95 -63
  484. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
  485. package/dist/esm/helpers/insertStyleRule.native.js +38 -251
  486. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
  487. package/dist/esm/helpers/isActivePlatform.mjs +10 -9
  488. package/dist/esm/helpers/isActivePlatform.mjs.map +1 -1
  489. package/dist/esm/helpers/isActivePlatform.native.js +10 -9
  490. package/dist/esm/helpers/isActivePlatform.native.js.map +1 -1
  491. package/dist/esm/helpers/isActiveTheme.mjs +2 -1
  492. package/dist/esm/helpers/isActiveTheme.mjs.map +1 -1
  493. package/dist/esm/helpers/isActiveTheme.native.js +2 -1
  494. package/dist/esm/helpers/isActiveTheme.native.js.map +1 -1
  495. package/dist/esm/helpers/isObj.mjs +1 -1
  496. package/dist/esm/helpers/isObj.mjs.map +1 -1
  497. package/dist/esm/helpers/isObj.native.js +2 -2
  498. package/dist/esm/helpers/isTamaguiComponent.mjs +2 -2
  499. package/dist/esm/helpers/isTamaguiComponent.mjs.map +1 -1
  500. package/dist/esm/helpers/isTamaguiComponent.native.js +2 -2
  501. package/dist/esm/helpers/isTamaguiComponent.native.js.map +1 -1
  502. package/dist/esm/helpers/isTamaguiElement.mjs +3 -1
  503. package/dist/esm/helpers/isTamaguiElement.mjs.map +1 -1
  504. package/dist/esm/helpers/isTamaguiElement.native.js.map +1 -1
  505. package/dist/esm/helpers/log.mjs +8 -9
  506. package/dist/esm/helpers/log.mjs.map +1 -1
  507. package/dist/esm/helpers/log.native.js +8 -9
  508. package/dist/esm/helpers/log.native.js.map +1 -1
  509. package/dist/esm/helpers/mainThreadPressEvents.mjs +1 -1
  510. package/dist/esm/helpers/mainThreadPressEvents.mjs.map +1 -1
  511. package/dist/esm/helpers/mainThreadPressEvents.native.js +99 -16
  512. package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -1
  513. package/dist/esm/helpers/matchMedia.mjs +3 -3
  514. package/dist/esm/helpers/matchMedia.mjs.map +1 -1
  515. package/dist/esm/helpers/matchMedia.native.js +22 -9
  516. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  517. package/dist/esm/helpers/mediaObjectToString.mjs +26 -0
  518. package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -0
  519. package/dist/esm/helpers/mediaObjectToString.native.js +29 -0
  520. package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -0
  521. package/dist/esm/helpers/mediaState.mjs +20 -0
  522. package/dist/esm/helpers/mediaState.mjs.map +1 -0
  523. package/dist/esm/helpers/mediaState.native.js +22 -0
  524. package/dist/esm/helpers/mediaState.native.js.map +1 -0
  525. package/dist/esm/helpers/mergeProps.mjs +42 -20
  526. package/dist/esm/helpers/mergeProps.mjs.map +1 -1
  527. package/dist/esm/helpers/mergeProps.native.js +43 -20
  528. package/dist/esm/helpers/mergeProps.native.js.map +1 -1
  529. package/dist/esm/helpers/mergeRenderElementProps.mjs +2 -1
  530. package/dist/esm/helpers/mergeRenderElementProps.mjs.map +1 -1
  531. package/dist/esm/helpers/mergeRenderElementProps.native.js +2 -1
  532. package/dist/esm/helpers/mergeRenderElementProps.native.js.map +1 -1
  533. package/dist/esm/helpers/mergeSlotStyleProps.mjs +17 -6
  534. package/dist/esm/helpers/mergeSlotStyleProps.mjs.map +1 -1
  535. package/dist/esm/helpers/mergeSlotStyleProps.native.js +17 -6
  536. package/dist/esm/helpers/mergeSlotStyleProps.native.js.map +1 -1
  537. package/dist/esm/helpers/mergeVariants.mjs +16 -6
  538. package/dist/esm/helpers/mergeVariants.mjs.map +1 -1
  539. package/dist/esm/helpers/mergeVariants.native.js +18 -8
  540. package/dist/esm/helpers/mergeVariants.native.js.map +1 -1
  541. package/dist/esm/helpers/normalizeColor.mjs +18 -3
  542. package/dist/esm/helpers/normalizeColor.mjs.map +1 -1
  543. package/dist/esm/helpers/normalizeColor.native.js +18 -17
  544. package/dist/esm/helpers/normalizeColor.native.js.map +1 -1
  545. package/dist/esm/helpers/normalizeShadow.native.js +11 -11
  546. package/dist/esm/helpers/normalizeShadow.native.js.map +1 -1
  547. package/dist/esm/helpers/normalizeStyle.mjs +10 -5
  548. package/dist/esm/helpers/normalizeStyle.mjs.map +1 -1
  549. package/dist/esm/helpers/normalizeStyle.native.js +17 -13
  550. package/dist/esm/helpers/normalizeStyle.native.js.map +1 -1
  551. package/dist/esm/helpers/normalizeStylePropKeys.native.js +10 -10
  552. package/dist/esm/helpers/normalizeValueWithProperty.mjs +19 -4
  553. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
  554. package/dist/esm/helpers/normalizeValueWithProperty.native.js +20 -5
  555. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
  556. package/dist/esm/helpers/objectIdentityKey.mjs +7 -2
  557. package/dist/esm/helpers/objectIdentityKey.mjs.map +1 -1
  558. package/dist/esm/helpers/objectIdentityKey.native.js +10 -5
  559. package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -1
  560. package/dist/esm/helpers/parseBorderShorthand.mjs +3 -1
  561. package/dist/esm/helpers/parseBorderShorthand.mjs.map +1 -1
  562. package/dist/esm/helpers/parseBorderShorthand.native.js +40 -14
  563. package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -1
  564. package/dist/esm/helpers/parseNativeStyle.mjs +142 -0
  565. package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -0
  566. package/dist/esm/helpers/parseNativeStyle.native.js +162 -0
  567. package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -0
  568. package/dist/esm/helpers/parseOutlineShorthand.mjs +5 -0
  569. package/dist/esm/helpers/parseOutlineShorthand.mjs.map +1 -0
  570. package/dist/esm/helpers/parseOutlineShorthand.native.js +52 -0
  571. package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -0
  572. package/dist/esm/helpers/platformResolveValue.mjs +13 -0
  573. package/dist/esm/helpers/platformResolveValue.mjs.map +1 -0
  574. package/dist/esm/helpers/platformResolveValue.native.js +46 -0
  575. package/dist/esm/helpers/platformResolveValue.native.js.map +1 -0
  576. package/dist/esm/helpers/pointerEvents.native.js +110 -77
  577. package/dist/esm/helpers/pointerEvents.native.js.map +1 -1
  578. package/dist/esm/helpers/propMapper.mjs +176 -194
  579. package/dist/esm/helpers/propMapper.mjs.map +1 -1
  580. package/dist/esm/helpers/propMapper.native.js +256 -269
  581. package/dist/esm/helpers/propMapper.native.js.map +1 -1
  582. package/dist/esm/helpers/proxyThemeToParents.mjs +21 -9
  583. package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
  584. package/dist/esm/helpers/proxyThemeToParents.native.js +72 -45
  585. package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
  586. package/dist/esm/helpers/proxyThemeVariables.mjs +1 -1
  587. package/dist/esm/helpers/proxyThemeVariables.mjs.map +1 -1
  588. package/dist/esm/helpers/proxyThemeVariables.native.js +1 -1
  589. package/dist/esm/helpers/pseudoDescriptors.mjs +48 -48
  590. package/dist/esm/helpers/pseudoDescriptors.mjs.map +1 -1
  591. package/dist/esm/helpers/pseudoDescriptors.native.js +48 -48
  592. package/dist/esm/helpers/pseudoDescriptors.native.js.map +1 -1
  593. package/dist/esm/helpers/pseudoTransitions.mjs +57 -0
  594. package/dist/esm/helpers/pseudoTransitions.mjs.map +1 -0
  595. package/dist/esm/helpers/pseudoTransitions.native.js +59 -0
  596. package/dist/esm/helpers/pseudoTransitions.native.js.map +1 -0
  597. package/dist/esm/helpers/registerCSSVariable.mjs +42 -27
  598. package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
  599. package/dist/esm/helpers/registerCSSVariable.native.js +46 -33
  600. package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
  601. package/dist/esm/helpers/resolveAnimationDriver.mjs +12 -0
  602. package/dist/esm/helpers/resolveAnimationDriver.mjs.map +1 -0
  603. package/dist/esm/helpers/resolveAnimationDriver.native.js +13 -0
  604. package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -0
  605. package/dist/esm/helpers/resolveCompoundTokens.mjs +16 -0
  606. package/dist/esm/helpers/resolveCompoundTokens.mjs.map +1 -0
  607. package/dist/esm/helpers/resolveCompoundTokens.native.js +16 -0
  608. package/dist/esm/helpers/resolveCompoundTokens.native.js.map +1 -0
  609. package/dist/esm/helpers/resolveRem.mjs +1 -1
  610. package/dist/esm/helpers/resolveRem.mjs.map +1 -1
  611. package/dist/esm/helpers/resolveRem.native.js +16 -9
  612. package/dist/esm/helpers/resolveRem.native.js.map +1 -1
  613. package/dist/esm/helpers/resolveSafeArea.native.js +6 -4
  614. package/dist/esm/helpers/resolveSafeArea.native.js.map +1 -1
  615. package/dist/esm/helpers/setElementProps.native.js +7 -3
  616. package/dist/esm/helpers/setElementProps.native.js.map +1 -1
  617. package/dist/esm/helpers/skipProps.mjs +3 -3
  618. package/dist/esm/helpers/skipProps.mjs.map +1 -1
  619. package/dist/esm/helpers/skipProps.native.js +3 -3
  620. package/dist/esm/helpers/skipProps.native.js.map +1 -1
  621. package/dist/esm/helpers/subscribeToContextGroup.mjs +68 -42
  622. package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
  623. package/dist/esm/helpers/subscribeToContextGroup.native.js +103 -79
  624. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
  625. package/dist/esm/helpers/themeable.mjs +47 -20
  626. package/dist/esm/helpers/themeable.mjs.map +1 -1
  627. package/dist/esm/helpers/themeable.native.js +69 -43
  628. package/dist/esm/helpers/themeable.native.js.map +1 -1
  629. package/dist/esm/helpers/themes.mjs +15 -9
  630. package/dist/esm/helpers/themes.mjs.map +1 -1
  631. package/dist/esm/helpers/themes.native.js +15 -9
  632. package/dist/esm/helpers/themes.native.js.map +1 -1
  633. package/dist/esm/helpers/timer.mjs +1 -1
  634. package/dist/esm/helpers/timer.native.js +1 -1
  635. package/dist/esm/helpers/transformsToString.mjs +6 -3
  636. package/dist/esm/helpers/transformsToString.mjs.map +1 -1
  637. package/dist/esm/helpers/transformsToString.native.js +6 -3
  638. package/dist/esm/helpers/transformsToString.native.js.map +1 -1
  639. package/dist/esm/helpers/useRenderElement.mjs +14 -13
  640. package/dist/esm/helpers/useRenderElement.mjs.map +1 -1
  641. package/dist/esm/helpers/useRenderElement.native.js +18 -13
  642. package/dist/esm/helpers/useRenderElement.native.js.map +1 -1
  643. package/dist/esm/helpers/webPropsToSkip.native.js +46 -46
  644. package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -1
  645. package/dist/esm/helpers/wrapStyleTags.mjs +2 -3
  646. package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -1
  647. package/dist/esm/helpers/wrapStyleTags.native.js +2 -2
  648. package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -1
  649. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +1 -1
  650. package/dist/esm/hooks/getThemeProxied.mjs +32 -16
  651. package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
  652. package/dist/esm/hooks/getThemeProxied.native.js +62 -50
  653. package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
  654. package/dist/esm/hooks/useComponentState.mjs +121 -68
  655. package/dist/esm/hooks/useComponentState.mjs.map +1 -1
  656. package/dist/esm/hooks/useComponentState.native.js +125 -79
  657. package/dist/esm/hooks/useComponentState.native.js.map +1 -1
  658. package/dist/esm/hooks/useDisableSSR.native.js +1 -1
  659. package/dist/esm/hooks/useDisableSSR.native.js.map +1 -1
  660. package/dist/esm/hooks/useIsTouchDevice.mjs +3 -1
  661. package/dist/esm/hooks/useIsTouchDevice.mjs.map +1 -1
  662. package/dist/esm/hooks/useIsTouchDevice.native.js +1 -1
  663. package/dist/esm/hooks/useIsTouchDevice.native.js.map +1 -1
  664. package/dist/esm/hooks/useMedia.mjs +137 -99
  665. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  666. package/dist/esm/hooks/useMedia.native.js +148 -121
  667. package/dist/esm/hooks/useMedia.native.js.map +1 -1
  668. package/dist/esm/hooks/useProps.mjs +49 -44
  669. package/dist/esm/hooks/useProps.mjs.map +1 -1
  670. package/dist/esm/hooks/useProps.native.js +51 -46
  671. package/dist/esm/hooks/useProps.native.js.map +1 -1
  672. package/dist/esm/hooks/useTheme.mjs +25 -12
  673. package/dist/esm/hooks/useTheme.mjs.map +1 -1
  674. package/dist/esm/hooks/useTheme.native.js +25 -15
  675. package/dist/esm/hooks/useTheme.native.js.map +1 -1
  676. package/dist/esm/hooks/useThemeName.mjs +8 -8
  677. package/dist/esm/hooks/useThemeName.mjs.map +1 -1
  678. package/dist/esm/hooks/useThemeName.native.js +10 -10
  679. package/dist/esm/hooks/useThemeName.native.js.map +1 -1
  680. package/dist/esm/hooks/useThemeState.mjs +237 -159
  681. package/dist/esm/hooks/useThemeState.mjs.map +1 -1
  682. package/dist/esm/hooks/useThemeState.native.js +301 -232
  683. package/dist/esm/hooks/useThemeState.native.js.map +1 -1
  684. package/dist/esm/index.js +67 -107
  685. package/dist/esm/index.js.map +1 -6
  686. package/dist/esm/index.mjs +5 -1
  687. package/dist/esm/index.mjs.map +1 -1
  688. package/dist/esm/index.native.js +5 -1
  689. package/dist/esm/index.native.js.map +1 -1
  690. package/dist/esm/inject-styles.mjs +15 -12
  691. package/dist/esm/inject-styles.mjs.map +1 -1
  692. package/dist/esm/inject-styles.native.js +16 -13
  693. package/dist/esm/inject-styles.native.js.map +1 -1
  694. package/dist/esm/insertFont.mjs +19 -13
  695. package/dist/esm/insertFont.mjs.map +1 -1
  696. package/dist/esm/insertFont.native.js +18 -16
  697. package/dist/esm/insertFont.native.js.map +1 -1
  698. package/dist/esm/setupReactNative.mjs +13 -8
  699. package/dist/esm/setupReactNative.mjs.map +1 -1
  700. package/dist/esm/setupReactNative.native.js +13 -11
  701. package/dist/esm/setupReactNative.native.js.map +1 -1
  702. package/dist/esm/styled.mjs +106 -64
  703. package/dist/esm/styled.mjs.map +1 -1
  704. package/dist/esm/styled.native.js +109 -73
  705. package/dist/esm/styled.native.js.map +1 -1
  706. package/dist/esm/styledHtml.test-d.mjs +56 -25
  707. package/dist/esm/styledHtml.test-d.mjs.map +1 -1
  708. package/dist/esm/styledHtml.test-d.native.js +56 -25
  709. package/dist/esm/styledHtml.test-d.native.js.map +1 -1
  710. package/dist/esm/views/Configuration.native.js +2 -2
  711. package/dist/esm/views/Configuration.native.js.map +1 -1
  712. package/dist/esm/views/FontLanguage.mjs +10 -8
  713. package/dist/esm/views/FontLanguage.mjs.map +1 -1
  714. package/dist/esm/views/FontLanguage.native.js +7 -7
  715. package/dist/esm/views/FontLanguage.native.js.map +1 -1
  716. package/dist/esm/views/Slot.mjs +38 -22
  717. package/dist/esm/views/Slot.mjs.map +1 -1
  718. package/dist/esm/views/Slot.native.js +40 -26
  719. package/dist/esm/views/Slot.native.js.map +1 -1
  720. package/dist/esm/views/TamaguiProvider.mjs +33 -39
  721. package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
  722. package/dist/esm/views/TamaguiProvider.native.js +37 -42
  723. package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
  724. package/dist/esm/views/TamaguiRoot.mjs +43 -0
  725. package/dist/esm/views/TamaguiRoot.mjs.map +1 -0
  726. package/dist/esm/views/TamaguiRoot.native.js +5 -0
  727. package/dist/esm/views/TamaguiRoot.native.js.map +1 -0
  728. package/dist/esm/views/Text.mjs +29 -36
  729. package/dist/esm/views/Text.mjs.map +1 -1
  730. package/dist/esm/views/Text.native.js +18 -20
  731. package/dist/esm/views/Text.native.js.map +1 -1
  732. package/dist/esm/views/Theme.mjs +108 -72
  733. package/dist/esm/views/Theme.mjs.map +1 -1
  734. package/dist/esm/views/Theme.native.js +114 -81
  735. package/dist/esm/views/Theme.native.js.map +1 -1
  736. package/dist/esm/views/ThemeDebug.mjs +22 -3
  737. package/dist/esm/views/ThemeDebug.mjs.map +1 -1
  738. package/dist/esm/views/ThemeDebug.native.js +1 -1
  739. package/dist/esm/views/ThemeDebug.native.js.map +1 -1
  740. package/dist/esm/views/ThemeProvider.mjs +7 -4
  741. package/dist/esm/views/ThemeProvider.mjs.map +1 -1
  742. package/dist/esm/views/ThemeProvider.native.js +5 -5
  743. package/dist/esm/views/ThemeProvider.native.js.map +1 -1
  744. package/dist/esm/views/View.mjs +1 -3
  745. package/dist/esm/views/View.mjs.map +1 -1
  746. package/dist/esm/views/View.native.js +1 -3
  747. package/dist/esm/views/View.native.js.map +1 -1
  748. package/inject-styles/index.cjs +2 -0
  749. package/inject-styles/index.js +2 -0
  750. package/inject-styles.cjs +1 -0
  751. package/package.json +21 -27
  752. package/src/Tamagui.ts +1 -1
  753. package/src/_withStableStyle.tsx +54 -19
  754. package/src/animationDriverTypes.test-d.ts +76 -0
  755. package/src/config.ts +5 -1
  756. package/src/constants/constants.ts +0 -17
  757. package/src/createComponent.tsx +266 -97
  758. package/src/createTamagui.ts +37 -20
  759. package/src/createVariable.ts +1 -1
  760. package/src/eventHandling.native.ts +108 -58
  761. package/src/eventHandling.ts +5 -2
  762. package/src/helpers/createDesignSystem.ts +77 -6
  763. package/src/helpers/createMediaStyle.ts +12 -4
  764. package/src/helpers/createStyledContext.tsx +27 -18
  765. package/src/helpers/defaultAnimationDriver.tsx +1 -2
  766. package/src/helpers/expandStyle.ts +11 -0
  767. package/src/helpers/getCSSStylesAtomic.ts +13 -14
  768. package/src/helpers/getDefaultProps.ts +4 -15
  769. package/src/helpers/getGroupPropParts.ts +1 -1
  770. package/src/helpers/getSplitStyles.tsx +262 -52
  771. package/src/helpers/getThemeCSSRules.ts +16 -14
  772. package/src/helpers/getTokenForKey.ts +223 -0
  773. package/src/helpers/insertStyleRule.tsx +1 -1
  774. package/src/helpers/isActivePlatform.ts +33 -4
  775. package/src/helpers/mainThreadPressEvents.native.ts +122 -25
  776. package/src/helpers/mainThreadPressEvents.ts +2 -1
  777. package/src/helpers/mediaObjectToString.ts +30 -0
  778. package/src/helpers/mediaState.ts +32 -0
  779. package/src/helpers/normalizeColor.ts +12 -8
  780. package/src/helpers/normalizeValueWithProperty.ts +8 -1
  781. package/src/helpers/parseNativeStyle.ts +193 -0
  782. package/src/helpers/parseOutlineShorthand.native.ts +62 -0
  783. package/src/helpers/parseOutlineShorthand.ts +6 -0
  784. package/src/helpers/platformResolveValue.native.ts +72 -0
  785. package/src/helpers/platformResolveValue.ts +22 -0
  786. package/src/helpers/propMapper.ts +65 -221
  787. package/src/helpers/pseudoTransitions.ts +97 -0
  788. package/src/helpers/resolveAnimationDriver.ts +23 -0
  789. package/src/helpers/resolveCompoundTokens.ts +28 -0
  790. package/src/helpers/skipProps.ts +1 -0
  791. package/src/helpers/themeable.tsx +7 -5
  792. package/src/helpers/useRenderElement.tsx +7 -0
  793. package/src/hooks/useComponentState.ts +11 -8
  794. package/src/hooks/useMedia.tsx +28 -75
  795. package/src/hooks/useProps.tsx +2 -1
  796. package/src/hooks/useTheme.tsx +4 -0
  797. package/src/hooks/useThemeState.ts +58 -14
  798. package/src/index.ts +4 -4
  799. package/src/styled.tsx +2 -2
  800. package/src/types.tsx +225 -69
  801. package/src/views/TamaguiProvider.tsx +35 -54
  802. package/src/views/TamaguiRoot.native.tsx +9 -0
  803. package/src/views/TamaguiRoot.tsx +64 -0
  804. package/src/views/Text.tsx +2 -9
  805. package/src/views/Theme.tsx +2 -0
  806. package/src/views/ThemeProvider.tsx +3 -1
  807. package/src/views/View.tsx +0 -2
  808. package/tsconfig.json +44 -0
  809. package/tsconfig.test.json +9 -0
  810. package/types/_withStableStyle.d.ts +1 -2
  811. package/types/_withStableStyle.d.ts.map +1 -1
  812. package/types/config.d.ts.map +1 -1
  813. package/types/constants/constants.d.ts +0 -3
  814. package/types/constants/constants.d.ts.map +1 -1
  815. package/types/createComponent.d.ts.map +1 -1
  816. package/types/createTamagui.d.ts.map +1 -1
  817. package/types/createVariable.d.ts +1 -1
  818. package/types/createVariable.d.ts.map +1 -1
  819. package/types/eventHandling.d.ts +2 -2
  820. package/types/eventHandling.d.ts.map +1 -1
  821. package/types/eventHandling.native.d.ts +3 -3
  822. package/types/eventHandling.native.d.ts.map +1 -1
  823. package/types/helpers/createDesignSystem.d.ts +5 -2
  824. package/types/helpers/createDesignSystem.d.ts.map +1 -1
  825. package/types/helpers/createMediaStyle.d.ts.map +1 -1
  826. package/types/helpers/createStyledContext.d.ts +1 -1
  827. package/types/helpers/createStyledContext.d.ts.map +1 -1
  828. package/types/helpers/defaultAnimationDriver.d.ts.map +1 -1
  829. package/types/helpers/expandStyle.d.ts.map +1 -1
  830. package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -1
  831. package/types/helpers/getDefaultProps.d.ts +1 -1
  832. package/types/helpers/getDefaultProps.d.ts.map +1 -1
  833. package/types/helpers/getSplitStyles.d.ts +2 -2
  834. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  835. package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
  836. package/types/helpers/getTokenForKey.d.ts +6 -0
  837. package/types/helpers/getTokenForKey.d.ts.map +1 -0
  838. package/types/helpers/isActivePlatform.d.ts +14 -0
  839. package/types/helpers/isActivePlatform.d.ts.map +1 -1
  840. package/types/helpers/mainThreadPressEvents.d.ts +1 -1
  841. package/types/helpers/mainThreadPressEvents.d.ts.map +1 -1
  842. package/types/helpers/mainThreadPressEvents.native.d.ts +5 -6
  843. package/types/helpers/mainThreadPressEvents.native.d.ts.map +1 -1
  844. package/types/helpers/mediaObjectToString.d.ts +3 -0
  845. package/types/helpers/mediaObjectToString.d.ts.map +1 -0
  846. package/types/helpers/mediaState.d.ts +7 -0
  847. package/types/helpers/mediaState.d.ts.map +1 -0
  848. package/types/helpers/normalizeColor.d.ts +1 -1
  849. package/types/helpers/normalizeColor.d.ts.map +1 -1
  850. package/types/helpers/normalizeValueWithProperty.d.ts.map +1 -1
  851. package/types/helpers/parseNativeStyle.d.ts +14 -0
  852. package/types/helpers/parseNativeStyle.d.ts.map +1 -0
  853. package/types/helpers/parseOutlineShorthand.d.ts +3 -0
  854. package/types/helpers/parseOutlineShorthand.d.ts.map +1 -0
  855. package/types/helpers/parseOutlineShorthand.native.d.ts +3 -0
  856. package/types/helpers/parseOutlineShorthand.native.d.ts.map +1 -0
  857. package/types/helpers/platformResolveValue.d.ts +6 -0
  858. package/types/helpers/platformResolveValue.d.ts.map +1 -0
  859. package/types/helpers/platformResolveValue.native.d.ts +7 -0
  860. package/types/helpers/platformResolveValue.native.d.ts.map +1 -0
  861. package/types/helpers/propMapper.d.ts +2 -2
  862. package/types/helpers/propMapper.d.ts.map +1 -1
  863. package/types/helpers/pseudoTransitions.d.ts +29 -0
  864. package/types/helpers/pseudoTransitions.d.ts.map +1 -0
  865. package/types/helpers/resolveAnimationDriver.d.ts +7 -0
  866. package/types/helpers/resolveAnimationDriver.d.ts.map +1 -0
  867. package/types/helpers/resolveCompoundTokens.d.ts +9 -0
  868. package/types/helpers/resolveCompoundTokens.d.ts.map +1 -0
  869. package/types/helpers/skipProps.d.ts +1 -0
  870. package/types/helpers/skipProps.d.ts.map +1 -1
  871. package/types/helpers/themeable.d.ts.map +1 -1
  872. package/types/helpers/useRenderElement.d.ts.map +1 -1
  873. package/types/helpers/webPropsToSkip.native.d.ts +20 -20
  874. package/types/hooks/useComponentState.d.ts +2 -1
  875. package/types/hooks/useComponentState.d.ts.map +1 -1
  876. package/types/hooks/useMedia.d.ts +1 -6
  877. package/types/hooks/useMedia.d.ts.map +1 -1
  878. package/types/hooks/useProps.d.ts.map +1 -1
  879. package/types/hooks/useTheme.d.ts.map +1 -1
  880. package/types/hooks/useThemeState.d.ts.map +1 -1
  881. package/types/index.d.ts +5 -1
  882. package/types/index.d.ts.map +1 -1
  883. package/types/styled.d.ts +2 -2
  884. package/types/styled.d.ts.map +1 -1
  885. package/types/types.d.ts +116 -34
  886. package/types/types.d.ts.map +1 -1
  887. package/types/views/TamaguiProvider.d.ts +1 -4
  888. package/types/views/TamaguiProvider.d.ts.map +1 -1
  889. package/types/views/TamaguiRoot.d.ts +15 -0
  890. package/types/views/TamaguiRoot.d.ts.map +1 -0
  891. package/types/views/TamaguiRoot.native.d.ts +7 -0
  892. package/types/views/TamaguiRoot.native.d.ts.map +1 -0
  893. package/types/views/Text.d.ts.map +1 -1
  894. package/types/views/Theme.d.ts.map +1 -1
  895. package/types/views/ThemeProvider.d.ts.map +1 -1
  896. package/types/views/View.d.ts.map +1 -1
  897. package/vitest.config.d.ts +3 -0
  898. package/vitest.config.d.ts.map +1 -0
  899. package/vitest.config.ts +14 -0
  900. package/dist/cjs/Tamagui.js +0 -56
  901. package/dist/cjs/Tamagui.js.map +0 -6
  902. package/dist/cjs/_withStableStyle.js +0 -33
  903. package/dist/cjs/_withStableStyle.js.map +0 -6
  904. package/dist/cjs/animationDriverTypes.test-d.js +0 -51
  905. package/dist/cjs/animationDriverTypes.test-d.js.map +0 -6
  906. package/dist/cjs/config.js +0 -109
  907. package/dist/cjs/config.js.map +0 -6
  908. package/dist/cjs/constants/accessibilityDirectMap.js +0 -25
  909. package/dist/cjs/constants/accessibilityDirectMap.js.map +0 -6
  910. package/dist/cjs/constants/constants.js +0 -43
  911. package/dist/cjs/constants/constants.js.map +0 -6
  912. package/dist/cjs/constants/isDevTools.js +0 -28
  913. package/dist/cjs/constants/isDevTools.js.map +0 -6
  914. package/dist/cjs/constants/webToNativeProps.cjs +0 -28
  915. package/dist/cjs/constants/webToNativeProps.js +0 -22
  916. package/dist/cjs/constants/webToNativeProps.js.map +0 -6
  917. package/dist/cjs/constants/webToNativeProps.native.js +0 -115
  918. package/dist/cjs/constants/webToNativeProps.native.js.map +0 -1
  919. package/dist/cjs/contexts/ComponentContext.js +0 -30
  920. package/dist/cjs/contexts/ComponentContext.js.map +0 -6
  921. package/dist/cjs/contexts/GroupContext.js +0 -22
  922. package/dist/cjs/contexts/GroupContext.js.map +0 -6
  923. package/dist/cjs/createComponent.js +0 -697
  924. package/dist/cjs/createComponent.js.map +0 -6
  925. package/dist/cjs/createFont.js +0 -53
  926. package/dist/cjs/createFont.js.map +0 -6
  927. package/dist/cjs/createShorthands.js +0 -23
  928. package/dist/cjs/createShorthands.js.map +0 -6
  929. package/dist/cjs/createTamagui.js +0 -190
  930. package/dist/cjs/createTamagui.js.map +0 -6
  931. package/dist/cjs/createTheme.cjs +0 -26
  932. package/dist/cjs/createTheme.js +0 -21
  933. package/dist/cjs/createTheme.js.map +0 -6
  934. package/dist/cjs/createTheme.native.js +0 -31
  935. package/dist/cjs/createTheme.native.js.map +0 -1
  936. package/dist/cjs/createTokens.js +0 -24
  937. package/dist/cjs/createTokens.js.map +0 -6
  938. package/dist/cjs/createVariable.js +0 -89
  939. package/dist/cjs/createVariable.js.map +0 -6
  940. package/dist/cjs/createVariables.js +0 -56
  941. package/dist/cjs/createVariables.js.map +0 -6
  942. package/dist/cjs/defaultComponentState.js +0 -38
  943. package/dist/cjs/defaultComponentState.js.map +0 -6
  944. package/dist/cjs/eventHandling.js +0 -41
  945. package/dist/cjs/eventHandling.js.map +0 -6
  946. package/dist/cjs/helpers/createDesignSystem.js +0 -120
  947. package/dist/cjs/helpers/createDesignSystem.js.map +0 -6
  948. package/dist/cjs/helpers/createMediaStyle.js +0 -74
  949. package/dist/cjs/helpers/createMediaStyle.js.map +0 -6
  950. package/dist/cjs/helpers/createStyledContext.js +0 -52
  951. package/dist/cjs/helpers/createStyledContext.js.map +0 -6
  952. package/dist/cjs/helpers/defaultAnimationDriver.js +0 -39
  953. package/dist/cjs/helpers/defaultAnimationDriver.js.map +0 -6
  954. package/dist/cjs/helpers/defaultOffset.js +0 -21
  955. package/dist/cjs/helpers/defaultOffset.js.map +0 -6
  956. package/dist/cjs/helpers/expandStyle.js +0 -73
  957. package/dist/cjs/helpers/expandStyle.js.map +0 -6
  958. package/dist/cjs/helpers/expandStyles.js +0 -34
  959. package/dist/cjs/helpers/expandStyles.js.map +0 -6
  960. package/dist/cjs/helpers/getCSSStylesAtomic.js +0 -156
  961. package/dist/cjs/helpers/getCSSStylesAtomic.js.map +0 -6
  962. package/dist/cjs/helpers/getDefaultProps.js +0 -31
  963. package/dist/cjs/helpers/getDefaultProps.js.map +0 -6
  964. package/dist/cjs/helpers/getDynamicVal.js +0 -62
  965. package/dist/cjs/helpers/getDynamicVal.js.map +0 -6
  966. package/dist/cjs/helpers/getExpandedShorthands.js +0 -34
  967. package/dist/cjs/helpers/getExpandedShorthands.js.map +0 -6
  968. package/dist/cjs/helpers/getFontLanguage.js +0 -21
  969. package/dist/cjs/helpers/getFontLanguage.js.map +0 -6
  970. package/dist/cjs/helpers/getGroupPropParts.js +0 -34
  971. package/dist/cjs/helpers/getGroupPropParts.js.map +0 -6
  972. package/dist/cjs/helpers/getShorthandValue.js +0 -23
  973. package/dist/cjs/helpers/getShorthandValue.js.map +0 -6
  974. package/dist/cjs/helpers/getSplitStyles.js +0 -630
  975. package/dist/cjs/helpers/getSplitStyles.js.map +0 -6
  976. package/dist/cjs/helpers/getThemeCSSRules.js +0 -89
  977. package/dist/cjs/helpers/getThemeCSSRules.js.map +0 -6
  978. package/dist/cjs/helpers/getVariantExtras.js +0 -59
  979. package/dist/cjs/helpers/getVariantExtras.js.map +0 -6
  980. package/dist/cjs/helpers/insertStyleRule.js +0 -196
  981. package/dist/cjs/helpers/insertStyleRule.js.map +0 -6
  982. package/dist/cjs/helpers/isActivePlatform.js +0 -31
  983. package/dist/cjs/helpers/isActivePlatform.js.map +0 -6
  984. package/dist/cjs/helpers/isActiveTheme.js +0 -24
  985. package/dist/cjs/helpers/isActiveTheme.js.map +0 -6
  986. package/dist/cjs/helpers/isObj.js +0 -21
  987. package/dist/cjs/helpers/isObj.js.map +0 -6
  988. package/dist/cjs/helpers/isTamaguiComponent.js +0 -24
  989. package/dist/cjs/helpers/isTamaguiComponent.js.map +0 -6
  990. package/dist/cjs/helpers/isTamaguiElement.js +0 -30
  991. package/dist/cjs/helpers/isTamaguiElement.js.map +0 -6
  992. package/dist/cjs/helpers/log.js +0 -33
  993. package/dist/cjs/helpers/log.js.map +0 -6
  994. package/dist/cjs/helpers/mainThreadPressEvents.js +0 -22
  995. package/dist/cjs/helpers/mainThreadPressEvents.js.map +0 -6
  996. package/dist/cjs/helpers/matchMedia.js +0 -34
  997. package/dist/cjs/helpers/matchMedia.js.map +0 -6
  998. package/dist/cjs/helpers/mergeProps.js +0 -55
  999. package/dist/cjs/helpers/mergeProps.js.map +0 -6
  1000. package/dist/cjs/helpers/mergeRenderElementProps.js +0 -25
  1001. package/dist/cjs/helpers/mergeRenderElementProps.js.map +0 -6
  1002. package/dist/cjs/helpers/mergeSlotStyleProps.js +0 -29
  1003. package/dist/cjs/helpers/mergeSlotStyleProps.js.map +0 -6
  1004. package/dist/cjs/helpers/mergeVariants.js +0 -38
  1005. package/dist/cjs/helpers/mergeVariants.js.map +0 -6
  1006. package/dist/cjs/helpers/nativeOnlyProps.js +0 -55
  1007. package/dist/cjs/helpers/nativeOnlyProps.js.map +0 -6
  1008. package/dist/cjs/helpers/normalizeColor.js +0 -26
  1009. package/dist/cjs/helpers/normalizeColor.js.map +0 -6
  1010. package/dist/cjs/helpers/normalizeShadow.js +0 -40
  1011. package/dist/cjs/helpers/normalizeShadow.js.map +0 -6
  1012. package/dist/cjs/helpers/normalizeStyle.js +0 -36
  1013. package/dist/cjs/helpers/normalizeStyle.js.map +0 -6
  1014. package/dist/cjs/helpers/normalizeStylePropKeys.js +0 -21
  1015. package/dist/cjs/helpers/normalizeStylePropKeys.js.map +0 -6
  1016. package/dist/cjs/helpers/normalizeValueWithProperty.js +0 -32
  1017. package/dist/cjs/helpers/normalizeValueWithProperty.js.map +0 -6
  1018. package/dist/cjs/helpers/objectIdentityKey.js +0 -38
  1019. package/dist/cjs/helpers/objectIdentityKey.js.map +0 -6
  1020. package/dist/cjs/helpers/parseBorderShorthand.js +0 -22
  1021. package/dist/cjs/helpers/parseBorderShorthand.js.map +0 -6
  1022. package/dist/cjs/helpers/pointerEvents.js +0 -22
  1023. package/dist/cjs/helpers/pointerEvents.js.map +0 -6
  1024. package/dist/cjs/helpers/propMapper.js +0 -257
  1025. package/dist/cjs/helpers/propMapper.js.map +0 -6
  1026. package/dist/cjs/helpers/proxyThemeToParents.js +0 -40
  1027. package/dist/cjs/helpers/proxyThemeToParents.js.map +0 -6
  1028. package/dist/cjs/helpers/proxyThemeVariables.js +0 -31
  1029. package/dist/cjs/helpers/proxyThemeVariables.js.map +0 -6
  1030. package/dist/cjs/helpers/pseudoDescriptors.js +0 -72
  1031. package/dist/cjs/helpers/pseudoDescriptors.js.map +0 -6
  1032. package/dist/cjs/helpers/registerCSSVariable.js +0 -47
  1033. package/dist/cjs/helpers/registerCSSVariable.js.map +0 -6
  1034. package/dist/cjs/helpers/resolveRem.js +0 -27
  1035. package/dist/cjs/helpers/resolveRem.js.map +0 -6
  1036. package/dist/cjs/helpers/resolveSafeArea.js +0 -29
  1037. package/dist/cjs/helpers/resolveSafeArea.js.map +0 -6
  1038. package/dist/cjs/helpers/setElementProps.js +0 -24
  1039. package/dist/cjs/helpers/setElementProps.js.map +0 -6
  1040. package/dist/cjs/helpers/skipProps.js +0 -38
  1041. package/dist/cjs/helpers/skipProps.js.map +0 -6
  1042. package/dist/cjs/helpers/sortString.js +0 -21
  1043. package/dist/cjs/helpers/sortString.js.map +0 -6
  1044. package/dist/cjs/helpers/subscribeToContextGroup.js +0 -74
  1045. package/dist/cjs/helpers/subscribeToContextGroup.js.map +0 -6
  1046. package/dist/cjs/helpers/themeable.js +0 -56
  1047. package/dist/cjs/helpers/themeable.js.map +0 -6
  1048. package/dist/cjs/helpers/themes.js +0 -33
  1049. package/dist/cjs/helpers/themes.js.map +0 -6
  1050. package/dist/cjs/helpers/timer.js +0 -27
  1051. package/dist/cjs/helpers/timer.js.map +0 -6
  1052. package/dist/cjs/helpers/transformsToString.js +0 -33
  1053. package/dist/cjs/helpers/transformsToString.js.map +0 -6
  1054. package/dist/cjs/helpers/useRenderElement.js +0 -42
  1055. package/dist/cjs/helpers/useRenderElement.js.map +0 -6
  1056. package/dist/cjs/helpers/webPropsToSkip.js +0 -21
  1057. package/dist/cjs/helpers/webPropsToSkip.js.map +0 -6
  1058. package/dist/cjs/helpers/wrapStyleTags.js +0 -38
  1059. package/dist/cjs/helpers/wrapStyleTags.js.map +0 -6
  1060. package/dist/cjs/hooks/doesRootSchemeMatchSystem.js +0 -23
  1061. package/dist/cjs/hooks/doesRootSchemeMatchSystem.js.map +0 -6
  1062. package/dist/cjs/hooks/getThemeProxied.js +0 -56
  1063. package/dist/cjs/hooks/getThemeProxied.js.map +0 -6
  1064. package/dist/cjs/hooks/useComponentState.js +0 -96
  1065. package/dist/cjs/hooks/useComponentState.js.map +0 -6
  1066. package/dist/cjs/hooks/useDisableSSR.js +0 -24
  1067. package/dist/cjs/hooks/useDisableSSR.js.map +0 -6
  1068. package/dist/cjs/hooks/useIsTouchDevice.js +0 -22
  1069. package/dist/cjs/hooks/useIsTouchDevice.js.map +0 -6
  1070. package/dist/cjs/hooks/useMedia.js +0 -183
  1071. package/dist/cjs/hooks/useMedia.js.map +0 -6
  1072. package/dist/cjs/hooks/useProps.js +0 -106
  1073. package/dist/cjs/hooks/useProps.js.map +0 -6
  1074. package/dist/cjs/hooks/useTheme.js +0 -35
  1075. package/dist/cjs/hooks/useTheme.js.map +0 -6
  1076. package/dist/cjs/hooks/useThemeName.js +0 -25
  1077. package/dist/cjs/hooks/useThemeName.js.map +0 -6
  1078. package/dist/cjs/hooks/useThemeState.js +0 -218
  1079. package/dist/cjs/hooks/useThemeState.js.map +0 -6
  1080. package/dist/cjs/index.js +0 -108
  1081. package/dist/cjs/index.js.map +0 -6
  1082. package/dist/cjs/inject-styles.js +0 -28
  1083. package/dist/cjs/inject-styles.js.map +0 -6
  1084. package/dist/cjs/insertFont.js +0 -68
  1085. package/dist/cjs/insertFont.js.map +0 -6
  1086. package/dist/cjs/interfaces/CSSColorNames.js +0 -14
  1087. package/dist/cjs/interfaces/CSSColorNames.js.map +0 -6
  1088. package/dist/cjs/interfaces/GetRef.js +0 -14
  1089. package/dist/cjs/interfaces/GetRef.js.map +0 -6
  1090. package/dist/cjs/interfaces/RNExclusiveTypes.js +0 -14
  1091. package/dist/cjs/interfaces/RNExclusiveTypes.js.map +0 -6
  1092. package/dist/cjs/interfaces/TamaguiComponentEvents.js +0 -14
  1093. package/dist/cjs/interfaces/TamaguiComponentEvents.js.map +0 -6
  1094. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.js +0 -14
  1095. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.js.map +0 -6
  1096. package/dist/cjs/setupHooks.js +0 -25
  1097. package/dist/cjs/setupHooks.js.map +0 -6
  1098. package/dist/cjs/setupReactNative.js +0 -43
  1099. package/dist/cjs/setupReactNative.js.map +0 -6
  1100. package/dist/cjs/styled.js +0 -116
  1101. package/dist/cjs/styled.js.map +0 -6
  1102. package/dist/cjs/styledHtml.test-d.js +0 -136
  1103. package/dist/cjs/styledHtml.test-d.js.map +0 -6
  1104. package/dist/cjs/type-utils.js +0 -14
  1105. package/dist/cjs/type-utils.js.map +0 -6
  1106. package/dist/cjs/types.js +0 -14
  1107. package/dist/cjs/types.js.map +0 -6
  1108. package/dist/cjs/views/Configuration.js +0 -33
  1109. package/dist/cjs/views/Configuration.js.map +0 -6
  1110. package/dist/cjs/views/FontLanguage.js +0 -32
  1111. package/dist/cjs/views/FontLanguage.js.map +0 -6
  1112. package/dist/cjs/views/Slot.js +0 -55
  1113. package/dist/cjs/views/Slot.js.map +0 -6
  1114. package/dist/cjs/views/Stack.cjs +0 -34
  1115. package/dist/cjs/views/Stack.js +0 -27
  1116. package/dist/cjs/views/Stack.js.map +0 -6
  1117. package/dist/cjs/views/Stack.native.js +0 -37
  1118. package/dist/cjs/views/Stack.native.js.map +0 -1
  1119. package/dist/cjs/views/TamaguiProvider.js +0 -93
  1120. package/dist/cjs/views/TamaguiProvider.js.map +0 -6
  1121. package/dist/cjs/views/Text.js +0 -59
  1122. package/dist/cjs/views/Text.js.map +0 -6
  1123. package/dist/cjs/views/Theme.js +0 -124
  1124. package/dist/cjs/views/Theme.js.map +0 -6
  1125. package/dist/cjs/views/ThemeDebug.js +0 -81
  1126. package/dist/cjs/views/ThemeDebug.js.map +0 -6
  1127. package/dist/cjs/views/ThemeProvider.js +0 -42
  1128. package/dist/cjs/views/ThemeProvider.js.map +0 -6
  1129. package/dist/cjs/views/View.js +0 -26
  1130. package/dist/cjs/views/View.js.map +0 -6
  1131. package/dist/esm/Tamagui.js +0 -35
  1132. package/dist/esm/Tamagui.js.map +0 -6
  1133. package/dist/esm/_withStableStyle.js +0 -12
  1134. package/dist/esm/_withStableStyle.js.map +0 -6
  1135. package/dist/esm/animationDriverTypes.test-d.js +0 -51
  1136. package/dist/esm/animationDriverTypes.test-d.js.map +0 -6
  1137. package/dist/esm/config.js +0 -94
  1138. package/dist/esm/config.js.map +0 -6
  1139. package/dist/esm/constants/accessibilityDirectMap.js +0 -9
  1140. package/dist/esm/constants/accessibilityDirectMap.js.map +0 -6
  1141. package/dist/esm/constants/constants.js +0 -27
  1142. package/dist/esm/constants/constants.js.map +0 -6
  1143. package/dist/esm/constants/isDevTools.js +0 -12
  1144. package/dist/esm/constants/isDevTools.js.map +0 -6
  1145. package/dist/esm/constants/webToNativeProps.js +0 -6
  1146. package/dist/esm/constants/webToNativeProps.js.map +0 -6
  1147. package/dist/esm/constants/webToNativeProps.mjs +0 -4
  1148. package/dist/esm/constants/webToNativeProps.mjs.map +0 -1
  1149. package/dist/esm/constants/webToNativeProps.native.js +0 -88
  1150. package/dist/esm/constants/webToNativeProps.native.js.map +0 -1
  1151. package/dist/esm/contexts/ComponentContext.js +0 -15
  1152. package/dist/esm/contexts/ComponentContext.js.map +0 -6
  1153. package/dist/esm/contexts/GroupContext.js +0 -6
  1154. package/dist/esm/contexts/GroupContext.js.map +0 -6
  1155. package/dist/esm/createComponent.js +0 -702
  1156. package/dist/esm/createComponent.js.map +0 -6
  1157. package/dist/esm/createFont.js +0 -37
  1158. package/dist/esm/createFont.js.map +0 -6
  1159. package/dist/esm/createShorthands.js +0 -7
  1160. package/dist/esm/createShorthands.js.map +0 -6
  1161. package/dist/esm/createTamagui.js +0 -189
  1162. package/dist/esm/createTamagui.js.map +0 -6
  1163. package/dist/esm/createTheme.js +0 -5
  1164. package/dist/esm/createTheme.js.map +0 -6
  1165. package/dist/esm/createTheme.mjs +0 -3
  1166. package/dist/esm/createTheme.mjs.map +0 -1
  1167. package/dist/esm/createTheme.native.js +0 -5
  1168. package/dist/esm/createTheme.native.js.map +0 -1
  1169. package/dist/esm/createTokens.js +0 -8
  1170. package/dist/esm/createTokens.js.map +0 -6
  1171. package/dist/esm/createVariable.js +0 -75
  1172. package/dist/esm/createVariable.js.map +0 -6
  1173. package/dist/esm/createVariables.js +0 -42
  1174. package/dist/esm/createVariables.js.map +0 -6
  1175. package/dist/esm/defaultComponentState.js +0 -22
  1176. package/dist/esm/defaultComponentState.js.map +0 -6
  1177. package/dist/esm/eventHandling.js +0 -25
  1178. package/dist/esm/eventHandling.js.map +0 -6
  1179. package/dist/esm/helpers/createDesignSystem.js +0 -107
  1180. package/dist/esm/helpers/createDesignSystem.js.map +0 -6
  1181. package/dist/esm/helpers/createMediaStyle.js +0 -60
  1182. package/dist/esm/helpers/createMediaStyle.js.map +0 -6
  1183. package/dist/esm/helpers/createStyledContext.js +0 -31
  1184. package/dist/esm/helpers/createStyledContext.js.map +0 -6
  1185. package/dist/esm/helpers/defaultAnimationDriver.js +0 -23
  1186. package/dist/esm/helpers/defaultAnimationDriver.js.map +0 -6
  1187. package/dist/esm/helpers/defaultOffset.js +0 -5
  1188. package/dist/esm/helpers/defaultOffset.js.map +0 -6
  1189. package/dist/esm/helpers/expandStyle.js +0 -59
  1190. package/dist/esm/helpers/expandStyle.js.map +0 -6
  1191. package/dist/esm/helpers/expandStyles.js +0 -19
  1192. package/dist/esm/helpers/expandStyles.js.map +0 -6
  1193. package/dist/esm/helpers/getCSSStylesAtomic.js +0 -147
  1194. package/dist/esm/helpers/getCSSStylesAtomic.js.map +0 -6
  1195. package/dist/esm/helpers/getDefaultProps.js +0 -15
  1196. package/dist/esm/helpers/getDefaultProps.js.map +0 -6
  1197. package/dist/esm/helpers/getDynamicVal.js +0 -46
  1198. package/dist/esm/helpers/getDynamicVal.js.map +0 -6
  1199. package/dist/esm/helpers/getExpandedShorthands.js +0 -18
  1200. package/dist/esm/helpers/getExpandedShorthands.js.map +0 -6
  1201. package/dist/esm/helpers/getFontLanguage.js +0 -5
  1202. package/dist/esm/helpers/getFontLanguage.js.map +0 -6
  1203. package/dist/esm/helpers/getGroupPropParts.js +0 -19
  1204. package/dist/esm/helpers/getGroupPropParts.js.map +0 -6
  1205. package/dist/esm/helpers/getShorthandValue.js +0 -7
  1206. package/dist/esm/helpers/getShorthandValue.js.map +0 -6
  1207. package/dist/esm/helpers/getSplitStyles.js +0 -650
  1208. package/dist/esm/helpers/getSplitStyles.js.map +0 -6
  1209. package/dist/esm/helpers/getThemeCSSRules.js +0 -78
  1210. package/dist/esm/helpers/getThemeCSSRules.js.map +0 -6
  1211. package/dist/esm/helpers/getVariantExtras.js +0 -44
  1212. package/dist/esm/helpers/getVariantExtras.js.map +0 -6
  1213. package/dist/esm/helpers/insertStyleRule.js +0 -181
  1214. package/dist/esm/helpers/insertStyleRule.js.map +0 -6
  1215. package/dist/esm/helpers/isActivePlatform.js +0 -15
  1216. package/dist/esm/helpers/isActivePlatform.js.map +0 -6
  1217. package/dist/esm/helpers/isActiveTheme.js +0 -8
  1218. package/dist/esm/helpers/isActiveTheme.js.map +0 -6
  1219. package/dist/esm/helpers/isObj.js +0 -5
  1220. package/dist/esm/helpers/isObj.js.map +0 -6
  1221. package/dist/esm/helpers/isTamaguiComponent.js +0 -8
  1222. package/dist/esm/helpers/isTamaguiComponent.js.map +0 -6
  1223. package/dist/esm/helpers/isTamaguiElement.js +0 -7
  1224. package/dist/esm/helpers/isTamaguiElement.js.map +0 -6
  1225. package/dist/esm/helpers/log.js +0 -17
  1226. package/dist/esm/helpers/log.js.map +0 -6
  1227. package/dist/esm/helpers/mainThreadPressEvents.js +0 -6
  1228. package/dist/esm/helpers/mainThreadPressEvents.js.map +0 -6
  1229. package/dist/esm/helpers/matchMedia.js +0 -18
  1230. package/dist/esm/helpers/matchMedia.js.map +0 -6
  1231. package/dist/esm/helpers/mergeProps.js +0 -39
  1232. package/dist/esm/helpers/mergeProps.js.map +0 -6
  1233. package/dist/esm/helpers/mergeRenderElementProps.js +0 -9
  1234. package/dist/esm/helpers/mergeRenderElementProps.js.map +0 -6
  1235. package/dist/esm/helpers/mergeSlotStyleProps.js +0 -14
  1236. package/dist/esm/helpers/mergeSlotStyleProps.js.map +0 -6
  1237. package/dist/esm/helpers/mergeVariants.js +0 -22
  1238. package/dist/esm/helpers/mergeVariants.js.map +0 -6
  1239. package/dist/esm/helpers/nativeOnlyProps.js +0 -39
  1240. package/dist/esm/helpers/nativeOnlyProps.js.map +0 -6
  1241. package/dist/esm/helpers/normalizeColor.js +0 -10
  1242. package/dist/esm/helpers/normalizeColor.js.map +0 -6
  1243. package/dist/esm/helpers/normalizeShadow.js +0 -24
  1244. package/dist/esm/helpers/normalizeShadow.js.map +0 -6
  1245. package/dist/esm/helpers/normalizeStyle.js +0 -24
  1246. package/dist/esm/helpers/normalizeStyle.js.map +0 -6
  1247. package/dist/esm/helpers/normalizeStylePropKeys.js +0 -5
  1248. package/dist/esm/helpers/normalizeStylePropKeys.js.map +0 -6
  1249. package/dist/esm/helpers/normalizeValueWithProperty.js +0 -17
  1250. package/dist/esm/helpers/normalizeValueWithProperty.js.map +0 -6
  1251. package/dist/esm/helpers/objectIdentityKey.js +0 -22
  1252. package/dist/esm/helpers/objectIdentityKey.js.map +0 -6
  1253. package/dist/esm/helpers/parseBorderShorthand.js +0 -6
  1254. package/dist/esm/helpers/parseBorderShorthand.js.map +0 -6
  1255. package/dist/esm/helpers/pointerEvents.js +0 -6
  1256. package/dist/esm/helpers/pointerEvents.js.map +0 -6
  1257. package/dist/esm/helpers/propMapper.js +0 -251
  1258. package/dist/esm/helpers/propMapper.js.map +0 -6
  1259. package/dist/esm/helpers/proxyThemeToParents.js +0 -24
  1260. package/dist/esm/helpers/proxyThemeToParents.js.map +0 -6
  1261. package/dist/esm/helpers/proxyThemeVariables.js +0 -15
  1262. package/dist/esm/helpers/proxyThemeVariables.js.map +0 -6
  1263. package/dist/esm/helpers/pseudoDescriptors.js +0 -56
  1264. package/dist/esm/helpers/pseudoDescriptors.js.map +0 -6
  1265. package/dist/esm/helpers/registerCSSVariable.js +0 -31
  1266. package/dist/esm/helpers/registerCSSVariable.js.map +0 -6
  1267. package/dist/esm/helpers/resolveRem.js +0 -11
  1268. package/dist/esm/helpers/resolveRem.js.map +0 -6
  1269. package/dist/esm/helpers/resolveSafeArea.js +0 -13
  1270. package/dist/esm/helpers/resolveSafeArea.js.map +0 -6
  1271. package/dist/esm/helpers/setElementProps.js +0 -8
  1272. package/dist/esm/helpers/setElementProps.js.map +0 -6
  1273. package/dist/esm/helpers/skipProps.js +0 -23
  1274. package/dist/esm/helpers/skipProps.js.map +0 -6
  1275. package/dist/esm/helpers/sortString.js +0 -5
  1276. package/dist/esm/helpers/sortString.js.map +0 -6
  1277. package/dist/esm/helpers/subscribeToContextGroup.js +0 -59
  1278. package/dist/esm/helpers/subscribeToContextGroup.js.map +0 -6
  1279. package/dist/esm/helpers/themeable.js +0 -35
  1280. package/dist/esm/helpers/themeable.js.map +0 -6
  1281. package/dist/esm/helpers/themes.js +0 -17
  1282. package/dist/esm/helpers/themes.js.map +0 -6
  1283. package/dist/esm/helpers/timer.js +0 -11
  1284. package/dist/esm/helpers/timer.js.map +0 -6
  1285. package/dist/esm/helpers/transformsToString.js +0 -17
  1286. package/dist/esm/helpers/transformsToString.js.map +0 -6
  1287. package/dist/esm/helpers/useRenderElement.js +0 -28
  1288. package/dist/esm/helpers/useRenderElement.js.map +0 -6
  1289. package/dist/esm/helpers/webPropsToSkip.js +0 -5
  1290. package/dist/esm/helpers/webPropsToSkip.js.map +0 -6
  1291. package/dist/esm/helpers/wrapStyleTags.js +0 -23
  1292. package/dist/esm/helpers/wrapStyleTags.js.map +0 -6
  1293. package/dist/esm/hooks/doesRootSchemeMatchSystem.js +0 -7
  1294. package/dist/esm/hooks/doesRootSchemeMatchSystem.js.map +0 -6
  1295. package/dist/esm/hooks/getThemeProxied.js +0 -44
  1296. package/dist/esm/hooks/getThemeProxied.js.map +0 -6
  1297. package/dist/esm/hooks/useComponentState.js +0 -91
  1298. package/dist/esm/hooks/useComponentState.js.map +0 -6
  1299. package/dist/esm/hooks/useDisableSSR.js +0 -8
  1300. package/dist/esm/hooks/useDisableSSR.js.map +0 -6
  1301. package/dist/esm/hooks/useIsTouchDevice.js +0 -7
  1302. package/dist/esm/hooks/useIsTouchDevice.js.map +0 -6
  1303. package/dist/esm/hooks/useMedia.js +0 -172
  1304. package/dist/esm/hooks/useMedia.js.map +0 -6
  1305. package/dist/esm/hooks/useProps.js +0 -92
  1306. package/dist/esm/hooks/useProps.js.map +0 -6
  1307. package/dist/esm/hooks/useTheme.js +0 -21
  1308. package/dist/esm/hooks/useTheme.js.map +0 -6
  1309. package/dist/esm/hooks/useThemeName.js +0 -9
  1310. package/dist/esm/hooks/useThemeName.js.map +0 -6
  1311. package/dist/esm/hooks/useThemeState.js +0 -212
  1312. package/dist/esm/hooks/useThemeState.js.map +0 -6
  1313. package/dist/esm/inject-styles.js +0 -12
  1314. package/dist/esm/inject-styles.js.map +0 -6
  1315. package/dist/esm/insertFont.js +0 -56
  1316. package/dist/esm/insertFont.js.map +0 -6
  1317. package/dist/esm/interfaces/CSSColorNames.js +0 -1
  1318. package/dist/esm/interfaces/CSSColorNames.js.map +0 -6
  1319. package/dist/esm/interfaces/GetRef.js +0 -1
  1320. package/dist/esm/interfaces/GetRef.js.map +0 -6
  1321. package/dist/esm/interfaces/RNExclusiveTypes.js +0 -1
  1322. package/dist/esm/interfaces/RNExclusiveTypes.js.map +0 -6
  1323. package/dist/esm/interfaces/TamaguiComponentEvents.js +0 -1
  1324. package/dist/esm/interfaces/TamaguiComponentEvents.js.map +0 -6
  1325. package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.js +0 -1
  1326. package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.js.map +0 -6
  1327. package/dist/esm/setupHooks.js +0 -9
  1328. package/dist/esm/setupHooks.js.map +0 -6
  1329. package/dist/esm/setupReactNative.js +0 -27
  1330. package/dist/esm/setupReactNative.js.map +0 -6
  1331. package/dist/esm/styled.js +0 -102
  1332. package/dist/esm/styled.js.map +0 -6
  1333. package/dist/esm/styledHtml.test-d.js +0 -137
  1334. package/dist/esm/styledHtml.test-d.js.map +0 -6
  1335. package/dist/esm/type-utils.js +0 -1
  1336. package/dist/esm/type-utils.js.map +0 -6
  1337. package/dist/esm/types.js +0 -1
  1338. package/dist/esm/types.js.map +0 -6
  1339. package/dist/esm/views/Configuration.js +0 -12
  1340. package/dist/esm/views/Configuration.js.map +0 -6
  1341. package/dist/esm/views/FontLanguage.js +0 -16
  1342. package/dist/esm/views/FontLanguage.js.map +0 -6
  1343. package/dist/esm/views/Slot.js +0 -43
  1344. package/dist/esm/views/Slot.js.map +0 -6
  1345. package/dist/esm/views/Stack.js +0 -13
  1346. package/dist/esm/views/Stack.js.map +0 -6
  1347. package/dist/esm/views/Stack.mjs +0 -11
  1348. package/dist/esm/views/Stack.mjs.map +0 -1
  1349. package/dist/esm/views/Stack.native.js +0 -11
  1350. package/dist/esm/views/Stack.native.js.map +0 -1
  1351. package/dist/esm/views/TamaguiProvider.js +0 -77
  1352. package/dist/esm/views/TamaguiProvider.js.map +0 -6
  1353. package/dist/esm/views/Text.js +0 -44
  1354. package/dist/esm/views/Text.js.map +0 -6
  1355. package/dist/esm/views/Theme.js +0 -110
  1356. package/dist/esm/views/Theme.js.map +0 -6
  1357. package/dist/esm/views/ThemeDebug.js +0 -69
  1358. package/dist/esm/views/ThemeDebug.js.map +0 -6
  1359. package/dist/esm/views/ThemeProvider.js +0 -31
  1360. package/dist/esm/views/ThemeProvider.js.map +0 -6
  1361. package/dist/esm/views/View.js +0 -12
  1362. package/dist/esm/views/View.js.map +0 -6
  1363. package/types/constants/webToNativeProps.d.ts.map +0 -1
  1364. package/types/constants/webToNativeProps.native.d.ts.map +0 -1
  1365. package/types/createTheme.d.ts.map +0 -1
  1366. package/types/helpers/expandStyle.native.d.ts.map +0 -1
  1367. package/types/helpers/propMapper.native.d.ts.map +0 -1
  1368. package/types/views/Stack.d.ts.map +0 -1
@@ -2,707 +2,951 @@ var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
7
  var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: !0
11
- });
12
- },
13
- __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ 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, {
15
16
  get: () => from[key],
16
17
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
18
  });
18
- return to;
19
- };
19
+ }
20
+ return to;
21
+ };
20
22
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: !0
28
- }) : target, mod)),
29
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
- value: !0
31
- }), mod);
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
30
+ }) : target, mod));
31
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: true
33
+ }), mod);
32
34
  var createComponent_exports = {};
33
35
  __export(createComponent_exports, {
34
36
  componentSetStates: () => componentSetStates,
35
37
  createComponent: () => createComponent
36
38
  });
37
39
  module.exports = __toCommonJS(createComponent_exports);
38
- var import_compose_refs = require("@tamagui/compose-refs"),
39
- import_constants = require("@tamagui/constants"),
40
- import_helpers = require("@tamagui/helpers"),
41
- import_is_equal_shallow = require("@tamagui/is-equal-shallow"),
42
- import_react = __toESM(require("react"), 1),
43
- import_config = require("./config.cjs"),
44
- import_isDevTools = require("./constants/isDevTools.cjs"),
45
- import_ComponentContext = require("./contexts/ComponentContext.cjs"),
46
- import_GroupContext = require("./contexts/GroupContext.cjs"),
47
- import_createVariable = require("./createVariable.cjs"),
48
- import_defaultComponentState = require("./defaultComponentState.cjs"),
49
- import_eventHandling = require("./eventHandling.cjs"),
50
- import_getDefaultProps = require("./helpers/getDefaultProps.cjs"),
51
- import_getSplitStyles = require("./helpers/getSplitStyles.cjs"),
52
- import_log = require("./helpers/log.cjs"),
53
- import_pointerEvents = require("./helpers/pointerEvents.cjs"),
54
- import_mergeProps = require("./helpers/mergeProps.cjs"),
55
- import_mergeRenderElementProps = require("./helpers/mergeRenderElementProps.cjs"),
56
- import_objectIdentityKey = require("./helpers/objectIdentityKey.cjs"),
57
- import_setElementProps = require("./helpers/setElementProps.cjs"),
58
- import_subscribeToContextGroup = require("./helpers/subscribeToContextGroup.cjs"),
59
- import_themeable = require("./helpers/themeable.cjs"),
60
- import_wrapStyleTags = require("./helpers/wrapStyleTags.cjs"),
61
- import_useComponentState = require("./hooks/useComponentState.cjs"),
62
- import_useMedia = require("./hooks/useMedia.cjs"),
63
- import_useTheme = require("./hooks/useTheme.cjs"),
64
- import_setupHooks = require("./setupHooks.cjs"),
65
- import_Slot = require("./views/Slot.cjs"),
66
- import_Theme = require("./views/Theme.cjs"),
67
- import_jsx_runtime = require("react/jsx-runtime");
68
- let time, debugKeyListeners, startVisualizer;
69
- const componentSetStates = /* @__PURE__ */new Set(),
70
- avoidReRenderKeys = /* @__PURE__ */new Set(["hover", "press", "pressIn", "group", "focus", "focusWithin", "media", "group"]);
71
- if (typeof window < "u") {
40
+ var import_compose_refs = require("@tamagui/compose-refs");
41
+ var import_constants = require("@tamagui/constants");
42
+ require("@tamagui/native");
43
+ var import_helpers = require("@tamagui/helpers");
44
+ var import_is_equal_shallow = require("@tamagui/is-equal-shallow");
45
+ var import_react = __toESM(require("react"), 1);
46
+ var import_config = require("./config.cjs");
47
+ var import_isDevTools = require("./constants/isDevTools.cjs");
48
+ var import_ComponentContext = require("./contexts/ComponentContext.cjs");
49
+ var import_GroupContext = require("./contexts/GroupContext.cjs");
50
+ var import_createVariable = require("./createVariable.cjs");
51
+ var import_defaultComponentState = require("./defaultComponentState.cjs");
52
+ var import_eventHandling = require("./eventHandling.cjs");
53
+ var import_getDefaultProps = require("./helpers/getDefaultProps.cjs");
54
+ var import_resolveAnimationDriver = require("./helpers/resolveAnimationDriver.cjs");
55
+ var import_getSplitStyles = require("./helpers/getSplitStyles.cjs");
56
+ var import_log = require("./helpers/log.cjs");
57
+ var import_mergeProps = require("./helpers/mergeProps.cjs");
58
+ var import_mergeRenderElementProps = require("./helpers/mergeRenderElementProps.cjs");
59
+ var import_objectIdentityKey = require("./helpers/objectIdentityKey.cjs");
60
+ var import_pointerEvents = require("./helpers/pointerEvents.cjs");
61
+ var import_pseudoTransitions = require("./helpers/pseudoTransitions.cjs");
62
+ var import_setElementProps = require("./helpers/setElementProps.cjs");
63
+ var import_subscribeToContextGroup = require("./helpers/subscribeToContextGroup.cjs");
64
+ var import_themeable = require("./helpers/themeable.cjs");
65
+ var import_wrapStyleTags = require("./helpers/wrapStyleTags.cjs");
66
+ var import_useComponentState = require("./hooks/useComponentState.cjs");
67
+ var import_useMedia = require("./hooks/useMedia.cjs");
68
+ var import_useTheme = require("./hooks/useTheme.cjs");
69
+ var import_setupHooks = require("./setupHooks.cjs");
70
+ var import_Slot = require("./views/Slot.cjs");
71
+ var import_Theme = require("./views/Theme.cjs");
72
+ var import_jsx_runtime = require("react/jsx-runtime");
73
+ let time;
74
+ let debugKeyListeners;
75
+ let startVisualizer;
76
+ const componentSetStates = /* @__PURE__ */new Set();
77
+ const avoidReRenderKeys = /* @__PURE__ */new Set(["hover", "press", "pressIn", "group", "focus", "focusWithin", "media", "group"]);
78
+ if (typeof window !== "undefined") {
72
79
  const cancelPresses = () => {
73
- componentSetStates.forEach(setState => setState(prev => prev.press || prev.pressIn ? {
80
+ componentSetStates.forEach(setState => setState(prev => {
81
+ if (prev.press || prev.pressIn) return {
74
82
  ...prev,
75
- press: !1,
76
- pressIn: !1
77
- } : prev)), componentSetStates.clear();
78
- },
79
- cancelTouches = () => {
80
- componentSetStates.forEach(setState => setState(prev => prev.press || prev.pressIn || prev.hover ? {
83
+ press: false,
84
+ pressIn: false
85
+ };
86
+ return prev;
87
+ }));
88
+ componentSetStates.clear();
89
+ };
90
+ const cancelTouches = () => {
91
+ componentSetStates.forEach(setState => setState(prev => {
92
+ if (prev.press || prev.pressIn || prev.hover) return {
81
93
  ...prev,
82
- press: !1,
83
- pressIn: !1,
84
- hover: !1
85
- } : prev)), componentSetStates.clear();
86
- };
87
- addEventListener("mouseup", cancelPresses), addEventListener("touchend", cancelTouches), addEventListener("touchcancel", cancelTouches), process.env.NODE_ENV === "development" && (startVisualizer = () => {
94
+ press: false,
95
+ pressIn: false,
96
+ hover: false
97
+ };
98
+ return prev;
99
+ }));
100
+ componentSetStates.clear();
101
+ };
102
+ addEventListener("mouseup", cancelPresses);
103
+ addEventListener("touchend", cancelTouches);
104
+ addEventListener("touchcancel", cancelTouches);
105
+ if (process.env.NODE_ENV === "development") startVisualizer = () => {
88
106
  const devVisualizerConfig = import_config.devConfig?.visualizer;
89
107
  if (devVisualizerConfig && !globalThis.__tamaguiDevVisualizer) {
90
108
  let show = function (val) {
91
- clearTimeout(tm), isShowing = val, debugKeyListeners?.forEach(l => l(val)), !val && resizeListener && (window.removeEventListener("resize", resizeListener), resizeListener = null);
109
+ clearTimeout(tm);
110
+ isShowing = val;
111
+ debugKeyListeners?.forEach(l => l(val));
112
+ if (!val && resizeListener) {
113
+ window.removeEventListener("resize", resizeListener);
114
+ resizeListener = null;
115
+ }
92
116
  },
93
117
  cancelShow = function () {
94
- clearTimeout(tm), resizeListener && (window.removeEventListener("resize", resizeListener), resizeListener = null);
118
+ clearTimeout(tm);
119
+ if (resizeListener) {
120
+ window.removeEventListener("resize", resizeListener);
121
+ resizeListener = null;
122
+ }
95
123
  };
96
- globalThis.__tamaguiDevVisualizer = !0, debugKeyListeners = /* @__PURE__ */new Set();
97
- let tm,
98
- isShowing = !1,
99
- resizeListener = null;
124
+ globalThis.__tamaguiDevVisualizer = true;
125
+ debugKeyListeners = /* @__PURE__ */new Set();
126
+ let tm;
127
+ let isShowing = false;
128
+ let resizeListener = null;
100
129
  const options = {
101
130
  key: "Alt",
102
131
  delay: 800,
103
- ...(typeof devVisualizerConfig == "object" ? devVisualizerConfig : {})
132
+ ...(typeof devVisualizerConfig === "object" ? devVisualizerConfig : {})
104
133
  };
105
134
  window.addEventListener("blur", () => {
106
- show(!1);
107
- }), window.addEventListener("keydown", ({
135
+ show(false);
136
+ });
137
+ window.addEventListener("keydown", ({
108
138
  key,
109
139
  metaKey,
110
140
  defaultPrevented
111
141
  }) => {
112
- clearTimeout(tm), !defaultPrevented && (metaKey || key === options.key && (resizeListener || (resizeListener = () => cancelShow(), window.addEventListener("resize", resizeListener)), tm = setTimeout(() => {
113
- show(!0);
114
- }, options.delay)));
115
- }), window.addEventListener("keyup", ({
142
+ clearTimeout(tm);
143
+ if (defaultPrevented) return;
144
+ if (metaKey) return;
145
+ if (key === options.key) {
146
+ if (!resizeListener) {
147
+ resizeListener = () => cancelShow();
148
+ window.addEventListener("resize", resizeListener);
149
+ }
150
+ tm = setTimeout(() => {
151
+ show(true);
152
+ }, options.delay);
153
+ }
154
+ });
155
+ window.addEventListener("keyup", ({
116
156
  defaultPrevented
117
157
  }) => {
118
- defaultPrevented || (cancelShow(), isShowing && show(!1));
158
+ if (defaultPrevented) return;
159
+ cancelShow();
160
+ if (isShowing) show(false);
119
161
  });
120
162
  }
121
- });
163
+ };
122
164
  }
123
- let BaseText, BaseView;
124
165
  const lastInteractionWasKeyboard = {
125
- value: !1
126
- },
127
- lastInteractionWasTouch = {
128
- value: !1
129
- };
130
- import_constants.isWeb && typeof document < "u" && (document.addEventListener("keydown", () => {
131
- lastInteractionWasKeyboard.value || (lastInteractionWasKeyboard.value = !0);
132
- }), document.addEventListener("mousedown", () => {
133
- lastInteractionWasKeyboard.value && (lastInteractionWasKeyboard.value = !1);
134
- }), document.addEventListener("mousemove", () => {
135
- lastInteractionWasKeyboard.value && (lastInteractionWasKeyboard.value = !1), lastInteractionWasTouch.value = !1;
136
- }), document.addEventListener("touchstart", () => {
137
- lastInteractionWasTouch.value = !0;
138
- }));
166
+ value: false
167
+ };
168
+ const lastInteractionWasTouch = {
169
+ value: false
170
+ };
171
+ if (import_constants.isWeb && typeof document !== "undefined") {
172
+ document.addEventListener("keydown", () => {
173
+ if (!lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = true;
174
+ });
175
+ document.addEventListener("mousedown", () => {
176
+ if (lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = false;
177
+ });
178
+ document.addEventListener("mousemove", () => {
179
+ if (lastInteractionWasKeyboard.value) lastInteractionWasKeyboard.value = false;
180
+ lastInteractionWasTouch.value = false;
181
+ });
182
+ document.addEventListener("touchstart", () => {
183
+ lastInteractionWasTouch.value = true;
184
+ });
185
+ }
139
186
  function createComponent(staticConfig) {
140
187
  let config = null;
141
188
  const {
142
- Component,
143
- isText,
144
- isHOC
145
- } = staticConfig,
146
- component = import_react.default.forwardRef((propsIn, forwardedRef) => {
147
- config ||= (0, import_config.getConfig)();
148
- const internalID = process.env.NODE_ENV === "development" ? import_react.default.useId() : "";
149
- process.env.NODE_ENV === "development" && startVisualizer && (startVisualizer(), startVisualizer = void 0), process.env.NODE_ENV === "test" && propsIn["data-test-renders"] && (propsIn["data-test-renders"].current ??= 0, propsIn["data-test-renders"].current += 1);
150
- const {
151
- context,
152
- isReactNative
153
- } = staticConfig,
154
- debugProp = propsIn.debug,
155
- styledContextValue = context ? import_react.default.useContext(context) : void 0;
156
- let overriddenContextProps = null;
157
- const componentContext = import_react.default.useContext(import_ComponentContext.ComponentContext),
158
- hasTextAncestor = !!(import_constants.isWeb && isText && componentContext.inText);
159
- !process.env.TAMAGUI_IS_CORE_NODE && process.env.NODE_ENV === "development" && debugProp === "profile" && !time && (time = require("@tamagui/timer").timer().start(), globalThis.time = time), process.env.NODE_ENV === "development" && time && time`non-tamagui time (ignore)`;
160
- let props = propsIn;
161
- const componentName = props.componentName || staticConfig.componentName,
162
- defaultProps = (0, import_getDefaultProps.getDefaultProps)(staticConfig, props.componentName, isText && hasTextAncestor),
163
- [nextProps, overrides] = (0, import_mergeProps.mergeComponentProps)(defaultProps, styledContextValue, propsIn);
164
- props = nextProps, overriddenContextProps = overrides, process.env.NODE_ENV === "development" && import_constants.isClient && import_react.default.useEffect(() => {
165
- let node,
189
+ Component,
190
+ isText,
191
+ isHOC
192
+ } = staticConfig;
193
+ const component = import_react.default.forwardRef((propsIn, forwardedRef) => {
194
+ "use no memo";
195
+
196
+ config = config || (0, import_config.getConfig)();
197
+ const internalID = process.env.NODE_ENV === "development" ? import_react.default.useId() : "";
198
+ if (process.env.NODE_ENV === "development") {
199
+ if (startVisualizer) {
200
+ startVisualizer();
201
+ startVisualizer = void 0;
202
+ }
203
+ }
204
+ if (process.env.NODE_ENV === "test") {
205
+ if (propsIn["data-test-renders"]) {
206
+ propsIn["data-test-renders"]["current"] = propsIn["data-test-renders"]["current"] ?? 0;
207
+ propsIn["data-test-renders"]["current"] += 1;
208
+ }
209
+ }
210
+ const {
211
+ context,
212
+ isReactNative
213
+ } = staticConfig;
214
+ const debugProp = propsIn["debug"];
215
+ const styledContextValue = context ? import_react.default.useContext(context) : void 0;
216
+ let overriddenContextProps = null;
217
+ const componentContext = import_react.default.useContext(import_ComponentContext.ComponentContext);
218
+ const hasTextAncestor = !!(import_constants.isWeb && isText ? componentContext.inText : false);
219
+ if (!process.env.TAMAGUI_IS_CORE_NODE && process.env.NODE_ENV === "development" && debugProp === "profile" && !time) {
220
+ time = require("@tamagui/timer").timer().start();
221
+ globalThis["time"] = time;
222
+ }
223
+ if (process.env.NODE_ENV === "development" && !time && globalThis.time) time = globalThis.time;
224
+ if (process.env.NODE_ENV === "development" && time) time`non-tamagui time (ignore)`;
225
+ let props = propsIn;
226
+ const componentName = props.componentName || staticConfig.componentName;
227
+ const defaultProps = (0, import_getDefaultProps.getDefaultProps)(staticConfig, props.componentName);
228
+ const [nextProps, overrides] = (0, import_mergeProps.mergeComponentProps)(defaultProps, styledContextValue, propsIn);
229
+ props = nextProps;
230
+ overriddenContextProps = overrides;
231
+ if (process.env.NODE_ENV === "development" && import_constants.isClient) import_react.default.useEffect(() => {
232
+ let node;
233
+ let overlay = null;
234
+ const remove = () => {
235
+ if (overlay) try {
236
+ overlay.parentNode?.removeChild(overlay);
166
237
  overlay = null;
167
- const remove = () => {
168
- if (overlay) try {
169
- overlay.parentNode?.removeChild(overlay), overlay = null;
170
- } catch {}
171
- },
172
- debugVisualizerHandler = (show = !1) => {
173
- if (node = stateRef.current.host, !!node) if (show) {
174
- overlay || (overlay = document.createElement("span"), overlay.style.inset = "0px", overlay.style.zIndex = "1000000", overlay.style.position = "absolute", overlay.style.borderColor = "red", overlay.style.borderWidth = "1px", overlay.style.borderStyle = "dotted");
175
- const dataAt = node.getAttribute("data-at") || "",
176
- dataIn = node.getAttribute("data-in") || "",
177
- tooltip = document.createElement("span");
178
- tooltip.style.position = "absolute", tooltip.style.top = "0px", tooltip.style.left = "0px", tooltip.style.padding = "3px", tooltip.style.background = "rgba(0,0,0,0.75)", tooltip.style.color = "rgba(255,255,255,1)", tooltip.style.fontSize = "12px", tooltip.style.lineHeight = "12px", tooltip.style.fontFamily = "monospace", tooltip.innerText = `${componentName || ""} ${dataAt} ${dataIn}`.trim(), overlay.appendChild(tooltip), node.appendChild(overlay);
179
- } else remove();
180
- };
181
- return debugKeyListeners ||= /* @__PURE__ */new Set(), debugKeyListeners.add(debugVisualizerHandler), () => {
182
- remove(), debugKeyListeners?.delete(debugVisualizerHandler);
183
- };
184
- }, [componentName]);
185
- const groupContextParent = import_react.default.useContext(import_GroupContext.GroupContext),
186
- animationDriver = (() => {
187
- if (props.animatedBy && config?.animations) {
188
- const animations = config.animations;
189
- return "default" in animations ? animations[props.animatedBy] ?? animations.default : props.animatedBy === "default" ? animations : null;
238
+ } catch {}
239
+ };
240
+ const debugVisualizerHandler = (show = false) => {
241
+ node = stateRef.current.host;
242
+ if (!node) return;
243
+ if (show) {
244
+ if (!overlay) {
245
+ overlay = document.createElement("span");
246
+ overlay.style.inset = "0px";
247
+ overlay.style.zIndex = "1000000";
248
+ overlay.style.position = "absolute";
249
+ overlay.style.borderColor = "red";
250
+ overlay.style.borderWidth = "1px";
251
+ overlay.style.borderStyle = "dotted";
190
252
  }
191
- return componentContext.animationDriver;
192
- })(),
193
- useAnimations = animationDriver?.useAnimations,
194
- componentState = (0, import_useComponentState.useComponentState)(props, animationDriver?.isStub ? null : animationDriver, staticConfig, config),
195
- {
196
- disabled,
197
- groupName,
198
- hasAnimationProp,
199
- hasEnterStyle,
200
- isAnimated,
201
- isExiting,
202
- isHydrated,
203
- presence,
204
- presenceState,
205
- setState,
206
- noClass,
207
- state,
208
- stateRef,
209
- supportsCSS,
210
- willBeAnimated,
211
- willBeAnimatedClient,
212
- startedUnhydrated
213
- } = componentState;
214
- hasAnimationProp && animationDriver?.avoidReRenders && (0, import_constants.useIsomorphicLayoutEffect)(() => {
215
- const pendingState = stateRef.current.nextState;
216
- pendingState && (stateRef.current.nextState = void 0, componentState.setStateShallow(pendingState));
217
- });
218
- const allGroupContexts = (0, import_react.useMemo)(() => {
219
- if (!groupName || props.passThrough) return groupContextParent;
220
- const listeners = /* @__PURE__ */new Set();
221
- return stateRef.current.group?.listeners?.clear(), stateRef.current.group = {
222
- listeners,
223
- emit(state2) {
224
- listeners.forEach(l => l(state2));
253
+ const dataAt = node.getAttribute("data-at") || "";
254
+ const dataIn = node.getAttribute("data-in") || "";
255
+ const tooltip = document.createElement("span");
256
+ tooltip.style.position = "absolute";
257
+ tooltip.style.top = "0px";
258
+ tooltip.style.left = "0px";
259
+ tooltip.style.padding = "3px";
260
+ tooltip.style.background = "rgba(0,0,0,0.75)";
261
+ tooltip.style.color = "rgba(255,255,255,1)";
262
+ tooltip.style.fontSize = "12px";
263
+ tooltip.style.lineHeight = "12px";
264
+ tooltip.style.fontFamily = "monospace";
265
+ tooltip.innerText = `${componentName || ""} ${dataAt} ${dataIn}`.trim();
266
+ overlay.appendChild(tooltip);
267
+ node.appendChild(overlay);
268
+ } else remove();
269
+ };
270
+ debugKeyListeners = debugKeyListeners || /* @__PURE__ */new Set();
271
+ debugKeyListeners.add(debugVisualizerHandler);
272
+ return () => {
273
+ remove();
274
+ debugKeyListeners?.delete(debugVisualizerHandler);
275
+ };
276
+ }, [componentName]);
277
+ const groupContextParent = import_react.default.useContext(import_GroupContext.GroupContext);
278
+ const animationDriver = (() => {
279
+ if (props.animatedBy && config) {
280
+ if (config.animationDrivers) return config.animationDrivers[props.animatedBy] ?? config.animations;
281
+ return props.animatedBy === "default" ? config.animations : null;
282
+ }
283
+ return (0, import_resolveAnimationDriver.resolveAnimationDriver)(componentContext.animationDriver) ?? (0, import_resolveAnimationDriver.resolveAnimationDriver)(config?.animations) ?? null;
284
+ })();
285
+ const useAnimations = animationDriver?.useAnimations;
286
+ const componentState = (0, import_useComponentState.useComponentState)(props, animationDriver?.isStub ? null : animationDriver, staticConfig, config);
287
+ const {
288
+ disabled,
289
+ groupName,
290
+ hasAnimationProp,
291
+ hasEnterStyle,
292
+ isAnimated,
293
+ isExiting,
294
+ isHydrated,
295
+ presence,
296
+ presenceState,
297
+ setState,
298
+ noClass,
299
+ state,
300
+ stateRef,
301
+ inputStyle,
302
+ outputStyle,
303
+ willBeAnimated,
304
+ willBeAnimatedClient,
305
+ startedUnhydrated
306
+ } = componentState;
307
+ if (hasAnimationProp && animationDriver?.avoidReRenders) (0, import_constants.useIsomorphicLayoutEffect)(() => {
308
+ const pendingState = stateRef.current.nextState;
309
+ if (pendingState) {
310
+ stateRef.current.nextState = void 0;
311
+ componentState.setStateShallow(pendingState);
312
+ }
313
+ });
314
+ const allGroupContexts = (0, import_react.useMemo)(() => {
315
+ if (!groupName || props.passThrough) return groupContextParent;
316
+ const listeners = /* @__PURE__ */new Set();
317
+ stateRef.current.group?.listeners?.clear();
318
+ stateRef.current.group = {
319
+ listeners,
320
+ emit(state2) {
321
+ listeners.forEach(l => l(state2));
322
+ },
323
+ subscribe(cb) {
324
+ listeners.add(cb);
325
+ if (listeners.size === 1) setStateShallow({
326
+ hasDynGroupChildren: true
327
+ });
328
+ return () => {
329
+ listeners.delete(cb);
330
+ if (listeners.size === 0) setStateShallow({
331
+ hasDynGroupChildren: false
332
+ });
333
+ };
334
+ }
335
+ };
336
+ return {
337
+ ...groupContextParent,
338
+ [groupName]: {
339
+ state: {
340
+ pseudo: import_defaultComponentState.defaultComponentStateMounted
225
341
  },
226
- subscribe(cb) {
227
- return listeners.add(cb), listeners.size === 1 && setStateShallow({
228
- hasDynGroupChildren: !0
229
- }), () => {
230
- listeners.delete(cb), listeners.size === 0 && setStateShallow({
231
- hasDynGroupChildren: !1
232
- });
342
+ subscribe: listener => {
343
+ const dispose = stateRef.current.group?.subscribe(listener);
344
+ return () => {
345
+ dispose?.();
233
346
  };
234
347
  }
235
- }, {
236
- ...groupContextParent,
237
- [groupName]: {
238
- state: {
239
- pseudo: import_defaultComponentState.defaultComponentStateMounted
240
- },
241
- subscribe: listener => {
242
- const dispose = stateRef.current.group?.subscribe(listener);
243
- return () => {
244
- dispose?.();
245
- };
246
- }
247
- }
248
- };
249
- }, [stateRef, groupName, groupContextParent]);
250
- let setStateShallow = componentState.setStateShallow;
251
- process.env.NODE_ENV === "development" && time && time`use-state`;
252
- const isTaggable = !Component || typeof Component == "string",
253
- renderProp = props.render,
254
- element = import_constants.isWeb && isTaggable && renderProp || Component,
255
- BaseTextComponent = BaseText || element || "span",
256
- BaseViewComponent = BaseView || element || (hasTextAncestor ? "span" : "div");
257
- let elementType = isText ? BaseTextComponent : BaseViewComponent;
258
- animationDriver && isAnimated &&
259
- // this should really be behind another prop as it's not really related to
260
- // "needsWebStyles" basically with motion we just animate a plain div, but
261
- // we still have animated.View/Text for Sheet which wants to control
262
- // things declaratively
263
- !animationDriver.needsWebStyles && (elementType = animationDriver[isText ? "Text" : "View"] || elementType);
264
- const disableTheme = props["data-disable-theme"] || isHOC;
265
- process.env.NODE_ENV === "development" && time && time`theme-props`;
266
- const themeStateProps = {
267
- componentName,
268
- disable: disableTheme,
269
- shallow: props.themeShallow,
270
- debug: debugProp,
271
- unstyled: props.unstyled
348
+ }
272
349
  };
273
- if ("theme" in props && (themeStateProps.name = props.theme), themeStateProps.needsUpdate = () => !!stateRef.current.isListeningToTheme, process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") {
274
- const name = `${componentName || Component?.displayName || Component?.name || "[Unnamed Component]"}`,
275
- 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 === !1 ? "(EXIT)" : ""),
276
- dataIs = propsIn["data-is"] || "",
277
- banner = `<${name} /> ${internalID} ${dataIs ? ` ${dataIs}` : ""} ${type.trim()} (hydrated: ${isHydrated}) (unmounted: ${state.unmounted})`,
278
- ch = propsIn.children;
279
- let childLog = typeof ch == "string" ? ch.length > 4 ? ch.slice(0, 4) + "..." : ch : "";
280
- childLog.length && (childLog = `(children: ${childLog})`), import_constants.isWeb ? (console.info(`%c ${banner}`, "background: green; color: white;"), import_constants.isServer ? (0, import_log.log)({
281
- noClass,
282
- isAnimated,
283
- isWeb: import_constants.isWeb,
284
- supportsCSS
285
- }) : (console.groupEnd(), console.groupCollapsed(`${childLog} [inspect props, state, context \u{1F447}]`), (0, import_log.log)("props in:", propsIn), (0, import_log.log)("final props:", props, Object.keys(props)), (0, import_log.log)({
286
- state,
287
- staticConfig,
288
- elementType,
289
- themeStateProps
290
- }), (0, import_log.log)({
291
- context,
292
- overriddenContextProps,
293
- componentContext
294
- }), (0, import_log.log)({
295
- presence,
296
- isAnimated,
297
- isHOC,
298
- hasAnimationProp,
299
- useAnimations
300
- }), console.groupEnd())) : (console.info(`
350
+ }, [stateRef, groupName, groupContextParent]);
351
+ let setStateShallow = componentState.setStateShallow;
352
+ if (process.env.NODE_ENV === "development" && time) time`use-state`;
353
+ const renderProp = props.render;
354
+ const isRenderString = !Component || typeof Component === "string";
355
+ const element = import_constants.isWeb ? isRenderString ? renderProp || Component : Component : Component;
356
+ const BaseComponent = isText ? element || "span" : element || (hasTextAncestor ? "span" : "div");
357
+ let elementType = BaseComponent;
358
+ if (animationDriver && isAnimated && animationDriver.needsCustomComponent) elementType = animationDriver[isText ? "Text" : "View"] || elementType;
359
+ const disableTheme = props["data-disable-theme"] || isHOC;
360
+ if (process.env.NODE_ENV === "development" && time) time`theme-props`;
361
+ const themeStateProps = {
362
+ componentName,
363
+ disable: disableTheme,
364
+ shallow: props.themeShallow,
365
+ debug: debugProp,
366
+ unstyled: props.unstyled
367
+ };
368
+ if ("theme" in props) themeStateProps.name = props.theme;
369
+ themeStateProps.needsUpdate = () => !!stateRef.current.isListeningToTheme;
370
+ if (process.env.NODE_ENV === "development") {
371
+ if (debugProp && debugProp !== "profile") {
372
+ const name = `${componentName || Component?.displayName || Component?.name || "[Unnamed Component]"}`;
373
+ 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)" : "");
374
+ const dataIs = propsIn["data-is"] || "";
375
+ const banner = `<${name} /> ${internalID} ${dataIs ? ` ${dataIs}` : ""} ${type.trim()} (hydrated: ${isHydrated}) (unmounted: ${state.unmounted})`;
376
+ const ch = propsIn.children;
377
+ let childLog = typeof ch === "string" ? ch.length > 4 ? ch.slice(0, 4) + "..." : ch : "";
378
+ if (childLog.length) childLog = `(children: ${childLog})`;
379
+ if (import_constants.isWeb) {
380
+ console.info(`%c ${banner}`, "background: green; color: white;");
381
+ if (import_constants.isServer) (0, import_log.log)({
382
+ noClass,
383
+ isAnimated,
384
+ isWeb: import_constants.isWeb,
385
+ inputStyle
386
+ });else {
387
+ console.groupEnd();
388
+ console.groupCollapsed(`${childLog} [inspect props, state, context \u{1F447}]`);
389
+ (0, import_log.log)("props in:", propsIn);
390
+ (0, import_log.log)("final props:", props, Object.keys(props));
391
+ (0, import_log.log)({
392
+ state,
393
+ staticConfig,
394
+ elementType,
395
+ themeStateProps
396
+ });
397
+ (0, import_log.log)({
398
+ context,
399
+ overriddenContextProps,
400
+ componentContext
401
+ });
402
+ (0, import_log.log)({
403
+ presence,
404
+ isAnimated,
405
+ isHOC,
406
+ hasAnimationProp,
407
+ useAnimations
408
+ });
409
+ console.groupEnd();
410
+ }
411
+ } else {
412
+ console.info(`
301
413
 
302
414
  ------------------------------
303
415
  ${banner}
304
416
  ------------------------------
305
- `), (0, import_log.log)("children:", props.children), (0, import_log.log)({
306
- overriddenContextProps,
307
- styledContextValue
308
- }), (0, import_log.log)({
309
- noClass,
310
- isAnimated,
311
- isWeb: import_constants.isWeb,
312
- supportsCSS
313
- }));
417
+ `);
418
+ (0, import_log.log)(`children:`, props.children);
419
+ (0, import_log.log)({
420
+ overriddenContextProps,
421
+ styledContextValue
422
+ });
423
+ (0, import_log.log)({
424
+ noClass,
425
+ isAnimated,
426
+ isWeb: import_constants.isWeb,
427
+ inputStyle
428
+ });
429
+ }
314
430
  }
315
- process.env.NODE_ENV === "development" && time && time`pre-theme-media`;
316
- const [theme, themeState] = (0, import_useTheme.useThemeWithState)(themeStateProps);
317
- process.env.NODE_ENV === "development" && time && time`theme`, elementType = element || elementType;
318
- const isStringElement = typeof elementType == "string",
319
- mediaState = (0, import_useMedia.useMedia)(componentContext, debugProp);
320
- (0, import_createVariable.setDidGetVariableValue)(!1), process.env.NODE_ENV === "development" && time && time`media`;
321
- const resolveValues =
322
- // if HOC + mounted + has animation prop, resolve as value so it passes non-variable to child
323
- isAnimated && !supportsCSS || isHOC && state.unmounted == !1 && hasAnimationProp ? "value" : "auto",
324
- styleProps = {
325
- mediaState,
326
- noClass,
327
- resolveValues,
328
- isExiting,
329
- isAnimated,
330
- willBeAnimated,
331
- styledContext: styledContextValue
332
- },
333
- themeName = themeState?.name || "";
334
- process.env.NODE_ENV === "development" && time && time`split-styles-prepare`;
335
- const splitStyles = (0, import_getSplitStyles.useSplitStyles)(props, staticConfig, theme, themeName, state, styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp),
336
- isPassthrough = !splitStyles;
337
- let contextForOverride = staticConfig.context;
338
- if (splitStyles?.overriddenContextProps) {
339
- const contextForProps = staticConfig.context || staticConfig.parentStaticConfig?.context;
340
- if (contextForProps) {
341
- for (const key in splitStyles.overriddenContextProps) overriddenContextProps ||= {}, overriddenContextProps[key] = splitStyles.overriddenContextProps[key];
342
- staticConfig.context || (contextForOverride = contextForProps);
431
+ }
432
+ if (process.env.NODE_ENV === "development" && time) time`pre-theme-media`;
433
+ const [theme, themeState] = (0, import_useTheme.useThemeWithState)(themeStateProps);
434
+ if (process.env.NODE_ENV === "development" && time) time`theme`;
435
+ elementType = element || elementType;
436
+ const isStringElement = typeof elementType === "string";
437
+ const mediaState = (0, import_useMedia.useMedia)(componentContext, debugProp);
438
+ (0, import_createVariable.setDidGetVariableValue)(false);
439
+ if (process.env.NODE_ENV === "development" && time) time`media`;
440
+ const styleProps = {
441
+ mediaState,
442
+ noClass,
443
+ resolveValues: isAnimated && inputStyle !== "css" || isHOC && state.unmounted == false && hasAnimationProp ? "value" : "auto",
444
+ isExiting,
445
+ isAnimated,
446
+ willBeAnimated,
447
+ styledContext: styledContextValue
448
+ };
449
+ const themeName = themeState?.name || "";
450
+ if (process.env.NODE_ENV === "development" && time) time`split-styles-prepare`;
451
+ const splitStyles = (0, import_getSplitStyles.useSplitStyles)(props, staticConfig, theme, themeName, state, styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp, animationDriver);
452
+ const isPassthrough = !splitStyles;
453
+ let contextForOverride = staticConfig.context;
454
+ if (splitStyles?.overriddenContextProps) {
455
+ const contextForProps = staticConfig.context || staticConfig.parentStaticConfig?.context;
456
+ if (contextForProps) {
457
+ for (const key in splitStyles.overriddenContextProps) {
458
+ overriddenContextProps = overriddenContextProps || {};
459
+ overriddenContextProps[key] = splitStyles.overriddenContextProps[key];
343
460
  }
461
+ if (!staticConfig.context) contextForOverride = contextForProps;
344
462
  }
345
- const groupContext = groupName && allGroupContexts?.[groupName] || null;
346
- if (!isPassthrough && groupContext &&
347
- // avoids onLayout if we don't need it
348
- props.containerType !== "normal") {
349
- const groupState = groupContext?.state;
350
- groupState && groupState.layout === void 0 && (splitStyles.style?.width || splitStyles.style?.height) && (groupState.layout = {
463
+ }
464
+ const groupContext = groupName ? allGroupContexts?.[groupName] || null : null;
465
+ if (!isPassthrough && groupContext && props.containerType !== "normal") {
466
+ const groupState = groupContext?.state;
467
+ if (groupState && groupState.layout === void 0) {
468
+ if (splitStyles.style?.width || splitStyles.style?.height) groupState.layout = {
351
469
  width: fromPx(splitStyles.style.width),
352
470
  height: fromPx(splitStyles.style.height)
353
- });
471
+ };
354
472
  }
355
- if (!isPassthrough && (hasAnimationProp || groupName) && animationDriver?.avoidReRenders) {
356
- let updateGroupListeners = function () {
357
- const updatedState = stateRef.current.nextState;
358
- if (groupContext) {
359
- const {
360
- group,
361
- hasDynGroupChildren,
362
- unmounted,
363
- transition,
364
- ...childrenGroupState
365
- } = updatedState;
366
- notifyGroupSubscribers(groupContext, stateRef.current.group || null, childrenGroupState);
473
+ }
474
+ const hasEnterExitTransition = props.transition && typeof props.transition === "object" && !Array.isArray(props.transition) && ("enter" in props.transition || "exit" in props.transition);
475
+ if (!isPassthrough && (hasAnimationProp || groupName) && animationDriver?.avoidReRenders && !hasEnterExitTransition) {
476
+ let updateGroupListeners = function () {
477
+ const updatedState = stateRef.current.nextState;
478
+ if (groupContext) {
479
+ const {
480
+ group,
481
+ hasDynGroupChildren,
482
+ unmounted,
483
+ transition,
484
+ ...childrenGroupState
485
+ } = updatedState;
486
+ notifyGroupSubscribers(groupContext, stateRef.current.group || null, childrenGroupState);
487
+ }
488
+ };
489
+ const ogSetStateShallow = setStateShallow;
490
+ stateRef.current.updateStyleListener = () => {
491
+ const useStyleListener = stateRef.current.useStyleListener;
492
+ if (!useStyleListener) {
493
+ const pendingState = stateRef.current.nextState;
494
+ if (pendingState) {
495
+ stateRef.current.nextState = void 0;
496
+ ogSetStateShallow(pendingState);
367
497
  }
498
+ return;
499
+ }
500
+ const updatedState = stateRef.current.nextState || state;
501
+ const mediaState2 = stateRef.current.nextMedia;
502
+ const nextStyles = (0, import_getSplitStyles.getSplitStyles)(props, staticConfig, theme, themeName, updatedState, mediaState2 ? {
503
+ ...styleProps,
504
+ mediaState: mediaState2
505
+ } : styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp, animationDriver);
506
+ const effectiveTransition = (0, import_pseudoTransitions.resolveEffectivePseudoTransition)(stateRef.current.prevPseudoState, updatedState, nextStyles?.pseudoTransitions, props.transition);
507
+ stateRef.current.prevPseudoState = (0, import_pseudoTransitions.extractPseudoState)(updatedState);
508
+ useStyleListener(nextStyles?.style || {}, effectiveTransition);
509
+ };
510
+ componentContext.mediaEmitListeners = componentContext.mediaEmitListeners || /* @__PURE__ */new Set();
511
+ if (!stateRef.current.mediaEmitCleanup) {
512
+ const updateListener = next => {
513
+ stateRef.current.nextMedia = next;
514
+ stateRef.current.updateStyleListener?.();
368
515
  };
369
- const ogSetStateShallow = setStateShallow;
370
- if (stateRef.current.updateStyleListener = () => {
371
- const useStyleListener = stateRef.current.useStyleListener;
372
- if (!useStyleListener) {
373
- const pendingState = stateRef.current.nextState;
374
- pendingState && (stateRef.current.nextState = void 0, ogSetStateShallow(pendingState));
375
- return;
516
+ componentContext.mediaEmitListeners.add(updateListener);
517
+ stateRef.current.mediaEmitCleanup = () => {
518
+ componentContext.mediaEmitListeners?.delete(updateListener);
519
+ };
520
+ }
521
+ componentContext.mediaEmit = componentContext.mediaEmit || (next => {
522
+ for (const listener of componentContext.mediaEmitListeners) listener(next);
523
+ });
524
+ stateRef.current.setStateShallow = nextOrGetNext => {
525
+ const prev = stateRef.current.nextState || state;
526
+ const next = typeof nextOrGetNext === "function" ? nextOrGetNext(prev) : nextOrGetNext;
527
+ if (next === prev || (0, import_is_equal_shallow.isEqualShallow)(prev, next)) return;
528
+ const canAvoidReRender = Object.keys(next).every(key => avoidReRenderKeys.has(key));
529
+ const updatedState = {
530
+ ...prev,
531
+ ...next
532
+ };
533
+ stateRef.current.nextState = updatedState;
534
+ if (canAvoidReRender) {
535
+ if (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") {
536
+ console.groupCollapsed(`[\u26A1\uFE0F] avoid setState`, componentName, next, {
537
+ updatedState,
538
+ props
539
+ });
540
+ console.info(stateRef.current.host);
541
+ console.groupEnd();
376
542
  }
377
- const updatedState = stateRef.current.nextState || state,
378
- mediaState2 = stateRef.current.nextMedia,
379
- nextStyles = (0, import_getSplitStyles.getSplitStyles)(props, staticConfig, theme, themeName, updatedState, mediaState2 ? {
380
- ...styleProps,
381
- mediaState: mediaState2
382
- } : styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp);
383
- useStyleListener(nextStyles?.style || {});
384
- }, componentContext.mediaEmitListeners ||= /* @__PURE__ */new Set(), !stateRef.current.mediaEmitCleanup) {
385
- const updateListener = next => {
386
- stateRef.current.nextMedia = next, stateRef.current.updateStyleListener?.();
387
- };
388
- componentContext.mediaEmitListeners.add(updateListener), stateRef.current.mediaEmitCleanup = () => {
389
- componentContext.mediaEmitListeners?.delete(updateListener);
390
- };
391
- }
392
- componentContext.mediaEmit ||= next => {
393
- for (const listener of componentContext.mediaEmitListeners) listener(next);
394
- }, stateRef.current.setStateShallow = nextOrGetNext => {
395
- const prev = stateRef.current.nextState || state,
396
- next = typeof nextOrGetNext == "function" ? nextOrGetNext(prev) : nextOrGetNext;
397
- if (next === prev || (0, import_is_equal_shallow.isEqualShallow)(prev, next)) return;
398
- const canAvoidReRender = Object.keys(next).every(key => avoidReRenderKeys.has(key)),
399
- updatedState = {
400
- ...prev,
401
- ...next
402
- };
403
- stateRef.current.nextState = updatedState, canAvoidReRender ? (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile" && (console.groupCollapsed("[\u26A1\uFE0F] avoid setState", componentName, next, {
404
- updatedState,
405
- props
406
- }), console.info(stateRef.current.host), console.groupEnd()), updateGroupListeners(), stateRef.current.updateStyleListener?.()) : (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile" && console.info("[\u{1F40C}] re-render", {
543
+ updateGroupListeners();
544
+ stateRef.current.updateStyleListener?.();
545
+ } else {
546
+ if (process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") console.info(`[\u{1F40C}] re-render`, {
407
547
  canAvoidReRender,
408
548
  next
409
- }), ogSetStateShallow(next));
410
- }, setStateShallow = state2 => {
411
- stateRef.current.setStateShallow?.(state2);
412
- };
413
- }
414
- process.env.NODE_ENV === "development" && time && time`split-styles`, splitStyles && (props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured && (splitStyles.style ||= {}, splitStyles.style.opacity = 0), splitStyles.dynamicThemeAccess != null && (stateRef.current.isListeningToTheme = splitStyles.dynamicThemeAccess));
415
- const hasRuntimeMediaKeys = splitStyles?.hasMedia && splitStyles.hasMedia !== !0,
416
- shouldListenForMedia = (0, import_createVariable.didGetVariableValue)() || hasRuntimeMediaKeys || noClass && splitStyles?.hasMedia === !0,
417
- mediaListeningKeys = hasRuntimeMediaKeys ? splitStyles.hasMedia : null;
418
- process.env.NODE_ENV === "development" && debugProp === "verbose" && console.info("useMedia() createComponent", shouldListenForMedia, mediaListeningKeys), (0, import_useMedia.setMediaShouldUpdate)(componentContext, shouldListenForMedia, mediaListeningKeys);
419
- const {
420
- viewProps: viewPropsIn,
421
- pseudos,
422
- style: splitStylesStyle,
423
- classNames,
424
- pseudoGroups,
425
- mediaGroups
426
- } = splitStyles || {},
427
- propsWithAnimation = props,
428
- {
429
- asChild,
430
- children,
431
- themeShallow,
432
- spaceDirection: _spaceDirection,
433
- onPress,
434
- onLongPress,
435
- onPressIn,
436
- onPressOut,
437
- onHoverIn,
438
- onHoverOut,
439
- onMouseUp,
440
- onMouseDown,
441
- onMouseEnter,
442
- onMouseLeave,
443
- onFocus,
444
- onBlur,
445
- separator,
446
- // ignore from here on out
447
- passThrough,
448
- forceStyle: _forceStyle,
449
- // @ts-ignore for next/link compat etc
450
- onClick,
451
- theme: _themeProp,
452
- ...nonTamaguiProps
453
- } = viewPropsIn || {};
454
- let viewProps = nonTamaguiProps;
455
- !isTaggable && props.forceStyle && (viewProps.forceStyle = props.forceStyle), isHOC && (typeof _themeProp < "u" && (viewProps.theme = _themeProp), typeof passThrough < "u" && (viewProps.passThrough = passThrough)), renderProp && elementType.acceptTagProp && (viewProps.render = renderProp);
456
- let animationStyles;
457
- const shouldUseAnimation =
458
- // if it supports css vars we run it on server too to get matching initial style
459
- (supportsCSS ? willBeAnimatedClient : willBeAnimated) && useAnimations && !isHOC;
460
- let animatedRef;
461
- if (shouldUseAnimation) {
462
- const useStyleEmitter = animationDriver?.avoidReRenders ? listener => {
463
- stateRef.current.useStyleListener = listener;
464
- } : void 0,
465
- animations = useAnimations({
466
- props: propsWithAnimation,
467
- // if hydrating, send empty style
468
- style: splitStylesStyle || {},
469
- // @ts-ignore
470
- styleState: splitStyles,
471
- useStyleEmitter,
472
- presence,
473
- componentState: state,
474
- styleProps,
475
- theme,
476
- themeName,
477
- pseudos: pseudos || null,
478
- staticConfig,
479
- stateRef
480
549
  });
481
- animations && (animations.ref && (animatedRef = animations.ref), isHydrated && animations && (animationStyles = animations.style, viewProps.style = animationStyles, animations.className && (viewProps.className = `${state.unmounted === "should-enter" ? "t_unmounted " : ""}${viewProps.className || ""} ${animations.className}`))), process.env.NODE_ENV === "development" && time && time`animations`;
550
+ ogSetStateShallow(next);
551
+ }
552
+ };
553
+ setStateShallow = state2 => {
554
+ stateRef.current.setStateShallow?.(state2);
555
+ };
556
+ }
557
+ if (process.env.NODE_ENV === "development" && time) time`split-styles`;
558
+ if (splitStyles) {
559
+ if (props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured) {
560
+ splitStyles.style = splitStyles.style || {};
561
+ splitStyles.style.opacity = 0;
482
562
  }
483
- 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.
563
+ if (splitStyles.dynamicThemeAccess != null) stateRef.current.isListeningToTheme = splitStyles.dynamicThemeAccess;
564
+ }
565
+ const hasRuntimeMediaKeys = splitStyles?.hasMedia && splitStyles.hasMedia !== true;
566
+ const shouldListenForMedia = (0, import_createVariable.didGetVariableValue)() || hasRuntimeMediaKeys || noClass && splitStyles?.hasMedia === true;
567
+ const mediaListeningKeys = hasRuntimeMediaKeys ? splitStyles.hasMedia : null;
568
+ if (process.env.NODE_ENV === "development" && debugProp === "verbose") console.info(`useMedia() createComponent`, shouldListenForMedia, mediaListeningKeys);
569
+ (0, import_useMedia.setMediaShouldUpdate)(componentContext, shouldListenForMedia, mediaListeningKeys);
570
+ const {
571
+ viewProps: viewPropsIn,
572
+ pseudos,
573
+ style: splitStylesStyle,
574
+ classNames,
575
+ pseudoGroups,
576
+ mediaGroups
577
+ } = splitStyles || {};
578
+ const propsWithAnimation = props;
579
+ const {
580
+ asChild,
581
+ children,
582
+ themeShallow,
583
+ spaceDirection: _spaceDirection,
584
+ onPress,
585
+ onLongPress,
586
+ onPressIn,
587
+ onPressOut,
588
+ onHoverIn,
589
+ onHoverOut,
590
+ onMouseUp,
591
+ onMouseDown,
592
+ onMouseEnter,
593
+ onMouseLeave,
594
+ onFocus,
595
+ onBlur,
596
+ separator,
597
+ passThrough,
598
+ forceStyle: _forceStyle,
599
+ onClick,
600
+ theme: _themeProp,
601
+ ...nonTamaguiProps
602
+ } = viewPropsIn || {};
603
+ let viewProps = nonTamaguiProps;
604
+ if (props.forceStyle) viewProps.forceStyle = props.forceStyle;
605
+ if (isHOC) {
606
+ if (typeof _themeProp !== "undefined") viewProps.theme = _themeProp;
607
+ if (typeof passThrough !== "undefined") viewProps.passThrough = passThrough;
608
+ }
609
+ let animationStyles;
610
+ const shouldUseAnimation = (inputStyle === "css" ? willBeAnimatedClient : willBeAnimated) && useAnimations && !isHOC;
611
+ let animatedRef;
612
+ if (shouldUseAnimation) {
613
+ const useStyleEmitter = animationDriver?.avoidReRenders ? listener => {
614
+ stateRef.current.useStyleListener = listener;
615
+ } : void 0;
616
+ const effectiveTransition = (0, import_pseudoTransitions.resolveEffectivePseudoTransition)(stateRef.current.prevPseudoState, state, splitStyles?.pseudoTransitions, props.transition);
617
+ if (splitStyles) splitStyles.effectiveTransition = effectiveTransition;
618
+ stateRef.current.prevPseudoState = (0, import_pseudoTransitions.extractPseudoState)(state);
619
+ const animations = useAnimations({
620
+ props: propsWithAnimation,
621
+ style: isHydrated ? splitStylesStyle || {} : {
622
+ ...splitStylesStyle
623
+ },
624
+ styleState: splitStyles,
625
+ useStyleEmitter,
626
+ presence,
627
+ componentState: state,
628
+ styleProps,
629
+ theme,
630
+ themeName,
631
+ pseudos: pseudos || null,
632
+ staticConfig,
633
+ stateRef
634
+ });
635
+ if (animations) {
636
+ if (animations.ref) animatedRef = animations.ref;
637
+ if (isHydrated && animations) {
638
+ animationStyles = animations.style;
639
+ viewProps.style = animationStyles;
640
+ if (animations.className) viewProps.className = `${state.unmounted === "should-enter" ? "t_unmounted " : ""}${viewProps.className || ""} ${animations.className}`;
641
+ }
642
+ }
643
+ if (process.env.NODE_ENV === "development" && time) time`animations`;
644
+ }
645
+ 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.
484
646
 
485
- 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}`), process.env.NODE_ENV === "development" && time && time`destructure`, !isPassthrough && groupContext &&
486
- // avoids onLayout if we don't need it
487
- props.containerType !== "normal" && (nonTamaguiProps.onLayout = (0, import_helpers.composeEventHandlers)(nonTamaguiProps.onLayout, e => {
488
- const layout = e.nativeEvent.layout;
489
- groupContext.state.layout = layout, stateRef.current.group?.emit({
490
- layout
491
- }), !stateRef.current.hasMeasured && props.untilMeasured === "hide" && setState(prev => ({
492
- ...prev
493
- })), stateRef.current.hasMeasured = !0;
494
- })), viewProps = import_setupHooks.hooks.usePropsTransform?.(elementType, nonTamaguiProps, stateRef, stateRef.current.willHydrate) || nonTamaguiProps, stateRef.current.composedRef || (stateRef.current.composedRef = (0, import_compose_refs.composeRefs)(x => stateRef.current.host = x, forwardedRef, import_setElementProps.setElementProps, animatedRef)), viewProps.ref = stateRef.current.composedRef, (0, import_pointerEvents.usePointerEvents)(props, viewProps), process.env.NODE_ENV === "development" && !isReactNative && !isText && import_constants.isWeb && !isHOC && import_react.default.Children.toArray(props.children).forEach(item => {
495
- typeof item == "string" && item !== `
496
- ` && console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <${staticConfig.componentName || propsIn.tag || "View"}>.`, props);
497
- }), process.env.NODE_ENV === "development" && time && time`events-hooks`;
498
- const unPress = () => {
647
+ 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}`);
648
+ if (process.env.NODE_ENV === "development" && time) time`destructure`;
649
+ if (!isPassthrough && groupContext && props.containerType !== "normal") nonTamaguiProps.onLayout = (0, import_helpers.composeEventHandlers)(nonTamaguiProps.onLayout, e => {
650
+ const layout = e.nativeEvent.layout;
651
+ groupContext.state.layout = layout;
652
+ stateRef.current.group?.emit({
653
+ layout
654
+ });
655
+ if (!stateRef.current.hasMeasured && props.untilMeasured === "hide") setState(prev => ({
656
+ ...prev
657
+ }));
658
+ stateRef.current.hasMeasured = true;
659
+ });
660
+ viewProps = import_setupHooks.hooks.usePropsTransform?.(elementType, nonTamaguiProps, stateRef, stateRef.current.willHydrate) || nonTamaguiProps;
661
+ if (!stateRef.current.composedRef) stateRef.current.composedRef = (0, import_compose_refs.composeRefs)(x => stateRef.current.host = x, forwardedRef, import_setElementProps.setElementProps, animatedRef);
662
+ viewProps.ref = stateRef.current.composedRef;
663
+ (0, import_pointerEvents.usePointerEvents)(props, viewProps);
664
+ if (process.env.NODE_ENV === "development") {
665
+ if (!isReactNative && !isText && import_constants.isWeb && !isHOC) import_react.default.Children.toArray(props.children).forEach(item => {
666
+ 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);
667
+ });
668
+ }
669
+ if (process.env.NODE_ENV === "development" && time) time`events-hooks`;
670
+ const unPress = () => {
671
+ setStateShallow({
672
+ press: false,
673
+ pressIn: false
674
+ });
675
+ };
676
+ if (process.env.NODE_ENV === "development" && import_constants.isWeb) (0, import_constants.useIsomorphicLayoutEffect)(() => {
677
+ if (debugProp === "verbose") {
678
+ let cssStyleDeclarationToObject = function (style) {
679
+ const styleObject = {};
680
+ for (let i = 0; i < style.length; i++) {
681
+ let prop = style[i];
682
+ styleObject[prop] = style.getPropertyValue(prop);
683
+ }
684
+ return styleObject;
685
+ };
686
+ const computed = stateRef.current.host ? cssStyleDeclarationToObject(getComputedStyle(stateRef.current.host)) : {};
687
+ console.groupCollapsed(`Rendered > (opacity: ${computed.opacity})`);
688
+ console.warn(stateRef.current.host);
689
+ console.warn(computed);
690
+ console.groupEnd();
691
+ }
692
+ });
693
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
694
+ if (state.unmounted === true && hasEnterStyle) {
499
695
  setStateShallow({
500
- press: !1,
501
- pressIn: !1
696
+ unmounted: "should-enter"
502
697
  });
503
- };
504
- process.env.NODE_ENV === "development" && import_constants.isWeb && (0, import_constants.useIsomorphicLayoutEffect)(() => {
505
- if (debugProp === "verbose") {
506
- let cssStyleDeclarationToObject = function (style) {
507
- const styleObject = {};
508
- for (let i = 0; i < style.length; i++) {
509
- let prop = style[i];
510
- styleObject[prop] = style.getPropertyValue(prop);
511
- }
512
- return styleObject;
513
- };
514
- const computed = stateRef.current.host ? cssStyleDeclarationToObject(getComputedStyle(stateRef.current.host)) : {};
515
- console.groupCollapsed(`Rendered > (opacity: ${computed.opacity})`), console.warn(stateRef.current.host), console.warn(computed), console.groupEnd();
516
- }
517
- }), (0, import_constants.useIsomorphicLayoutEffect)(() => {
518
- if (state.unmounted === !0 && hasEnterStyle) {
519
- setStateShallow({
520
- unmounted: "should-enter"
521
- });
522
- return;
523
- }
524
- if (state.unmounted) {
525
- if (supportsCSS) {
526
- let cancelled = !1;
527
- return requestAnimationFrame(() => {
528
- cancelled || requestAnimationFrame(() => {
529
- cancelled || setStateShallow({
530
- unmounted: !1
531
- });
698
+ return;
699
+ }
700
+ if (state.unmounted) {
701
+ if (inputStyle === "css") {
702
+ let cancelled = false;
703
+ requestAnimationFrame(() => {
704
+ if (cancelled) return;
705
+ requestAnimationFrame(() => {
706
+ if (cancelled) return;
707
+ setStateShallow({
708
+ unmounted: false
532
709
  });
533
- }), () => {
534
- cancelled = !0;
535
- };
536
- }
537
- setStateShallow({
538
- unmounted: !1
710
+ });
539
711
  });
712
+ return () => {
713
+ cancelled = true;
714
+ };
540
715
  }
541
- return () => {
542
- componentSetStates.delete(setState), stateRef.current.mediaEmitCleanup?.();
543
- };
544
- }, [state.unmounted, supportsCSS]), (0, import_constants.useIsomorphicLayoutEffect)(() => {
545
- if (!disabled && !(!pseudoGroups && !mediaGroups) && allGroupContexts) return (0, import_subscribeToContextGroup.subscribeToContextGroup)({
546
- groupContext: allGroupContexts,
547
- setStateShallow,
548
- mediaGroups,
549
- pseudoGroups
716
+ setStateShallow({
717
+ unmounted: false
550
718
  });
551
- }, [allGroupContexts, disabled, pseudoGroups ? (0, import_objectIdentityKey.objectIdentityKey)(pseudoGroups) : 0, mediaGroups ? (0, import_objectIdentityKey.objectIdentityKey)(mediaGroups) : 0]);
552
- const groupEmitter = stateRef.current.group;
553
- (0, import_constants.useIsomorphicLayoutEffect)(() => {
554
- !groupContext || !groupEmitter || notifyGroupSubscribers(groupContext, groupEmitter, state);
555
- }, [groupContext, groupEmitter, state]);
556
- const runtimePressStyle = !disabled && noClass && pseudos?.pressStyle,
557
- runtimeFocusStyle = !disabled && noClass && pseudos?.focusStyle,
558
- runtimeFocusVisibleStyle = !disabled && noClass && pseudos?.focusVisibleStyle,
559
- attachFocus = !!(runtimePressStyle || runtimeFocusStyle || runtimeFocusVisibleStyle || onFocus || onBlur || componentContext.setParentFocusState),
560
- hasDynamicGroupChildren = !!(groupName && state.hasDynGroupChildren),
561
- attachPress = !!(hasDynamicGroupChildren || runtimePressStyle || onPress || onPressOut || onPressIn || onMouseDown || onMouseUp || onLongPress || onClick || pseudos?.focusVisibleStyle),
562
- runtimeHoverStyle = !disabled && noClass && pseudos?.hoverStyle,
563
- needsHoverState = !!(hasDynamicGroupChildren || runtimeHoverStyle),
564
- attachHover = import_constants.isWeb && !!(hasDynamicGroupChildren || needsHoverState || onMouseEnter || onMouseLeave),
565
- shouldAttach = !disabled && !props.asChild && !!(attachFocus || attachPress || attachHover || runtimePressStyle || runtimeHoverStyle || runtimeFocusStyle),
566
- needsPressState = !!(hasDynamicGroupChildren || runtimePressStyle);
567
- process.env.NODE_ENV === "development" && time && time`events-setup`, process.env.NODE_ENV === "development" && debugProp === "verbose" && (0, import_log.log)("\u{1FAA9} events()", {
568
- runtimeFocusStyle,
569
- runtimePressStyle,
570
- runtimeHoverStyle,
571
- runtimeFocusVisibleStyle,
572
- attachPress,
573
- attachFocus,
574
- attachHover,
575
- shouldAttach,
576
- needsHoverState,
577
- pseudos
719
+ }
720
+ return () => {
721
+ componentSetStates.delete(setState);
722
+ stateRef.current.mediaEmitCleanup?.();
723
+ };
724
+ }, [state.unmounted, inputStyle]);
725
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
726
+ if (disabled) return;
727
+ if (!pseudoGroups && !mediaGroups) return;
728
+ if (!allGroupContexts) return;
729
+ return (0, import_subscribeToContextGroup.subscribeToContextGroup)({
730
+ groupContext: allGroupContexts,
731
+ setStateShallow,
732
+ mediaGroups,
733
+ pseudoGroups
578
734
  });
579
- const events = shouldAttach ? {
580
- onPressOut: attachPress ? e => {
581
- unPress(), onPressOut?.(e), onMouseUp?.(e);
582
- } : void 0,
583
- ...((attachHover || attachPress) && {
584
- onMouseEnter: e => {
585
- const next = {};
586
- needsHoverState && !lastInteractionWasTouch.value && (next.hover = !0), needsPressState && state.pressIn && (next.press = !0), setStateShallow(next), onHoverIn?.(e), onMouseEnter?.(e);
587
- },
588
- onMouseLeave: e => {
589
- const next = {};
590
- needsHoverState && (next.hover = !1), needsPressState && (next.press = !1, next.pressIn = !1), setStateShallow(next), onHoverOut?.(e), onMouseLeave?.(e);
735
+ }, [allGroupContexts, disabled, pseudoGroups ? (0, import_objectIdentityKey.objectIdentityKey)(pseudoGroups) : 0, mediaGroups ? (0, import_objectIdentityKey.objectIdentityKey)(mediaGroups) : 0]);
736
+ const groupEmitter = stateRef.current.group;
737
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
738
+ if (!groupContext || !groupEmitter) return;
739
+ notifyGroupSubscribers(groupContext, groupEmitter, state);
740
+ }, [groupContext, groupEmitter, state]);
741
+ const runtimePressStyle = !disabled && noClass && pseudos?.pressStyle;
742
+ const runtimeFocusStyle = !disabled && noClass && pseudos?.focusStyle;
743
+ const runtimeFocusVisibleStyle = !disabled && noClass && pseudos?.focusVisibleStyle;
744
+ const attachFocus = Boolean(runtimePressStyle || runtimeFocusStyle || runtimeFocusVisibleStyle || onFocus || onBlur || !!componentContext.setParentFocusState);
745
+ const hasDynamicGroupChildren = Boolean(groupName && state.hasDynGroupChildren);
746
+ const attachPress = Boolean(hasDynamicGroupChildren || runtimePressStyle || onPress || onPressOut || onPressIn || onMouseDown || onMouseUp || onLongPress || onClick || pseudos?.focusVisibleStyle);
747
+ const runtimeHoverStyle = !disabled && noClass && pseudos?.hoverStyle;
748
+ const needsHoverState = Boolean(hasDynamicGroupChildren || runtimeHoverStyle);
749
+ const attachHover = import_constants.isWeb && !!(hasDynamicGroupChildren || needsHoverState || onMouseEnter || onMouseLeave);
750
+ const shouldAttach = !disabled && !props.asChild && Boolean(attachFocus || attachPress || attachHover || runtimePressStyle || runtimeHoverStyle || runtimeFocusStyle);
751
+ const needsPressState = Boolean(hasDynamicGroupChildren || runtimePressStyle);
752
+ if (process.env.NODE_ENV === "development" && time) time`events-setup`;
753
+ if (process.env.NODE_ENV === "development" && debugProp === "verbose") (0, import_log.log)(`\u{1FAA9} events()`, {
754
+ runtimeFocusStyle,
755
+ runtimePressStyle,
756
+ runtimeHoverStyle,
757
+ runtimeFocusVisibleStyle,
758
+ attachPress,
759
+ attachFocus,
760
+ attachHover,
761
+ shouldAttach,
762
+ needsHoverState,
763
+ pseudos
764
+ });
765
+ const events = shouldAttach ? {
766
+ onPressOut: attachPress ? e => {
767
+ unPress();
768
+ onPressOut?.(e);
769
+ onMouseUp?.(e);
770
+ } : void 0,
771
+ ...((attachHover || attachPress) && {
772
+ onMouseEnter: e => {
773
+ const next = {};
774
+ if (needsHoverState && !lastInteractionWasTouch.value) next.hover = true;
775
+ if (needsPressState) {
776
+ if (state.pressIn) next.press = true;
591
777
  }
592
- }),
593
- onPressIn: attachPress ? e => {
594
- needsPressState && setStateShallow({
595
- press: !0,
596
- pressIn: !0
597
- }), onPressIn?.(e), onMouseDown?.(e), import_constants.isWeb && componentSetStates.add(setState);
598
- } : void 0,
599
- onPress: attachPress ? e => {
600
- unPress(), import_constants.isWeb && onClick?.(e), onPress?.(e), onLongPress?.(e);
601
- } : void 0,
602
- ...(attachFocus && {
603
- onFocus: e => {
604
- const next = {};
605
- componentContext.setParentFocusState && (next.focusWithin = !0), pseudos?.focusVisibleStyle && lastInteractionWasKeyboard.value ? next.focusVisible = !0 : next.focus = !0, setStateShallow(next), onFocus?.(e);
606
- },
607
- onBlur: e => {
608
- componentContext.setParentFocusState && componentContext.setParentFocusState({
609
- focusWithin: !1
610
- }), setStateShallow({
611
- focus: !1,
612
- focusVisible: !1,
613
- focusWithin: !1
614
- }), onBlur?.(e);
778
+ setStateShallow(next);
779
+ onHoverIn?.(e);
780
+ onMouseEnter?.(e);
781
+ },
782
+ onMouseLeave: e => {
783
+ const next = {};
784
+ if (needsHoverState) next.hover = false;
785
+ if (needsPressState) {
786
+ next.press = false;
787
+ next.pressIn = false;
615
788
  }
616
- })
617
- } : null;
618
- events && !isReactNative && Object.assign(viewProps, (0, import_eventHandling.getWebEvents)(events)), process.env.NODE_ENV === "development" && time && time`events`, process.env.NODE_ENV === "development" && debugProp === "verbose" && (0, import_log.log)("events", {
619
- events,
620
- attachHover,
621
- attachPress
622
- });
623
- const pressGesture = null;
624
- process.env.NODE_ENV === "development" && time && time`hooks`;
625
- let content = children;
626
- if (asChild) {
627
- elementType = import_Slot.Slot;
628
- {
629
- const passEvents = (0, import_eventHandling.getWebEvents)({
630
- onPress,
631
- onLongPress,
632
- onPressIn,
633
- onPressOut,
634
- onMouseUp,
635
- onMouseDown,
636
- onMouseEnter,
637
- onMouseLeave
638
- }, asChild === "web" || asChild === "except-style-web");
639
- Object.assign(viewProps, passEvents);
789
+ setStateShallow(next);
790
+ onHoverOut?.(e);
791
+ onMouseLeave?.(e);
640
792
  }
793
+ }),
794
+ onPressIn: attachPress ? e => {
795
+ if (needsPressState) setStateShallow({
796
+ press: true,
797
+ pressIn: true
798
+ });
799
+ onPressIn?.(e);
800
+ onMouseDown?.(e);
801
+ if (import_constants.isWeb) componentSetStates.add(setState);
802
+ } : void 0,
803
+ onPress: attachPress ? e => {
804
+ unPress();
805
+ onClick?.(e);
806
+ if (onPress || onClick) e.stopPropagation();
807
+ onPress?.(e);
808
+ onLongPress?.(e);
809
+ } : void 0,
810
+ ...(attachFocus && {
811
+ onFocus: e => {
812
+ const next = {};
813
+ if (componentContext.setParentFocusState) {
814
+ componentContext.setParentFocusState({
815
+ focusWithin: true
816
+ });
817
+ next.focusWithin = true;
818
+ }
819
+ if (pseudos?.focusVisibleStyle) {
820
+ if (lastInteractionWasKeyboard.value) next.focusVisible = true;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({
827
+ focusWithin: false
828
+ });
829
+ setStateShallow({
830
+ focus: false,
831
+ focusVisible: false,
832
+ focusWithin: false
833
+ });
834
+ onBlur?.(e);
835
+ }
836
+ })
837
+ } : null;
838
+ if (events && !isReactNative) Object.assign(viewProps, (0, import_eventHandling.getWebEvents)(events));
839
+ if (process.env.NODE_ENV === "development" && time) time`events`;
840
+ if (process.env.NODE_ENV === "development" && debugProp === "verbose") (0, import_log.log)(`events`, {
841
+ events,
842
+ attachHover,
843
+ attachPress
844
+ });
845
+ const propsWithHref = props;
846
+ const propsInWithHref = propsIn;
847
+ [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(":");
848
+ if (process.env.NODE_ENV === "development" && time) time`hooks`;
849
+ if (asChild) {
850
+ elementType = import_Slot.Slot;
851
+ {
852
+ const webStyleEvents = asChild === "web" || asChild === "except-style-web";
853
+ const passEvents = (0, import_eventHandling.getWebEvents)({
854
+ onPress,
855
+ onLongPress,
856
+ onPressIn,
857
+ onPressOut,
858
+ onMouseUp,
859
+ onMouseDown,
860
+ onMouseEnter,
861
+ onMouseLeave
862
+ }, webStyleEvents);
863
+ Object.assign(viewProps, passEvents);
864
+ }
865
+ }
866
+ if (process.env.NODE_ENV === "development" && time) time`spaced-as-child`;
867
+ let content;
868
+ if (isPassthrough) content = import_react.default.createElement(BaseComponent, {
869
+ style: {
870
+ display: "contents"
641
871
  }
642
- process.env.NODE_ENV === "development" && time && time`spaced-as-child`, isPassthrough && (content = propsIn.children, elementType = BaseViewComponent, viewProps = {
643
- style: {
644
- display: "contents"
872
+ }, propsIn.children);else {
873
+ if (import_setupHooks.hooks.useChildren) content = import_setupHooks.hooks.useChildren(elementType, content || children, viewProps);
874
+ const isRenderPropString = typeof renderProp === "string";
875
+ if (renderProp && !isRenderPropString) {
876
+ const out = getCustomRender(renderProp, content || children, viewProps, componentState);
877
+ if (out) {
878
+ viewProps = out.viewProps;
879
+ elementType = out.elementType;
645
880
  }
646
- });
647
- let useChildrenResult;
648
- if (import_setupHooks.hooks.useChildren && (useChildrenResult = import_setupHooks.hooks.useChildren(elementType, content, viewProps)), process.env.NODE_ENV === "development" && time && time`use-children`, useChildrenResult) content = useChildrenResult;else if (typeof renderProp == "function") {
649
- const renderProps = {
650
- ...viewProps,
651
- children: content
652
- };
653
- content = renderProp(renderProps, state);
654
- } else if (renderProp && typeof renderProp == "object" && import_react.default.isValidElement(renderProp)) {
655
- const elementProps = renderProp.props || {},
656
- mergedProps = (0, import_mergeRenderElementProps.mergeRenderElementProps)(elementProps, viewProps, content);
657
- content = import_react.default.cloneElement(renderProp, mergedProps);
658
- } else content = import_react.default.createElement(elementType, viewProps, content);
659
- const ResetPresence = animationDriver?.ResetPresence,
660
- needsReset = !!(
661
- // not when passing down to child
662
- !asChild &&
663
- // not when passThrough
664
- splitStyles &&
665
- // not when HOC
666
- !isHOC && ResetPresence && willBeAnimated && (hasEnterStyle || presenceState)),
667
- hasEverReset = stateRef.current.hasEverResetPresence;
668
- if (needsReset && !hasEverReset && (stateRef.current.hasEverResetPresence = !0), (needsReset || hasEverReset) && ResetPresence && (content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ResetPresence, {
669
- disabled: !needsReset,
670
- children: content
671
- })), process.env.NODE_ENV === "development" && time && time`create-element`, "focusWithinStyle" in propsIn && (content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
672
- ...componentContext,
673
- setParentFocusState: setStateShallow,
674
- children: content
675
- })), "group" in props && (content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_GroupContext.GroupContext.Provider, {
676
- value: allGroupContexts,
677
- children: content
678
- })), !asChild && isText && !hasTextAncestor && (content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
679
- ...componentContext,
680
- inText: !0,
681
- children: content
682
- })), process.env.NODE_ENV === "development" && time && time`group-context`, content = disableTheme || !splitStyles ? content : (0, import_Theme.getThemedChildren)(themeState, content, themeStateProps, !1, stateRef), process.env.NODE_ENV === "development" && time && time`themed-children`, isReactNative && !asChild && (content = /* @__PURE__ */(0, import_jsx_runtime.jsx)("span", {
683
- className: "_dsp_contents",
684
- ...(!isPassthrough && isHydrated && events && (0, import_eventHandling.getWebEvents)(events)),
685
- children: content
686
- })), overriddenContextProps && contextForOverride) {
687
- const Provider = contextForOverride.Provider;
688
- for (const key in styledContextValue) key in overriddenContextProps || (overriddenContextProps[key] = styledContextValue[key]);
689
- content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(Provider, {
690
- __disableMergeDefaultValues: !0,
691
- ...overriddenContextProps,
692
- children: content
693
- });
694
881
  }
695
- if (process.env.NODE_ENV === "development" && time && time`context-override`, startedUnhydrated && splitStyles && (content = /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
696
- children: [content, isHydrated ? null : (0, import_wrapStyleTags.getStyleTags)(Object.values(splitStyles.rulesToInsert))]
697
- })), process.env.NODE_ENV === "development" && time && time`style-tags`, process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile") {
698
- const title = `render <${typeof elementType == "string" ? elementType : "Component"} /> (${internalID}) with props`;
882
+ if (!content) {
883
+ if (isRenderPropString) viewProps.render;
884
+ content = import_react.default.createElement(elementType, viewProps, content || children);
885
+ }
886
+ if (process.env.NODE_ENV === "development" && time) time`use-children`;
887
+ }
888
+ const ResetPresence = animationDriver?.ResetPresence;
889
+ const needsReset = Boolean(
890
+ // not when passing down to child
891
+ !asChild && splitStyles && !isHOC && ResetPresence && willBeAnimated && (hasEnterStyle || presenceState));
892
+ const hasEverReset = stateRef.current.hasEverResetPresence;
893
+ if (needsReset && !hasEverReset) stateRef.current.hasEverResetPresence = true;
894
+ if ((needsReset || hasEverReset) && ResetPresence) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ResetPresence, {
895
+ disabled: !needsReset,
896
+ children: content
897
+ });
898
+ if (process.env.NODE_ENV === "development" && time) time`create-element`;
899
+ if ("focusWithinStyle" in propsIn || pseudos?.focusWithinStyle) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
900
+ ...componentContext,
901
+ setParentFocusState: setStateShallow,
902
+ children: content
903
+ });
904
+ if ("group" in props) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_GroupContext.GroupContext.Provider, {
905
+ value: allGroupContexts,
906
+ children: content
907
+ });
908
+ if (!asChild && isText && !hasTextAncestor) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ComponentContext.ComponentContext.Provider, {
909
+ ...componentContext,
910
+ inText: true,
911
+ children: content
912
+ });
913
+ if (process.env.NODE_ENV === "development" && time) time`group-context`;
914
+ content = disableTheme || !splitStyles ? content : (0, import_Theme.getThemedChildren)(themeState, content, themeStateProps, false, stateRef);
915
+ if (process.env.NODE_ENV === "development" && time) time`themed-children`;
916
+ if (isReactNative && !asChild) content = /* @__PURE__ */(0, import_jsx_runtime.jsx)("span", {
917
+ className: "_dsp_contents",
918
+ ...(!isPassthrough && isHydrated && events && (0, import_eventHandling.getWebEvents)(events)),
919
+ children: content
920
+ });
921
+ if (overriddenContextProps && contextForOverride) {
922
+ const Provider = contextForOverride.Provider;
923
+ for (const key in styledContextValue) if (!(key in overriddenContextProps)) overriddenContextProps[key] = styledContextValue[key];
924
+ content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(Provider, {
925
+ __disableMergeDefaultValues: true,
926
+ ...overriddenContextProps,
927
+ children: content
928
+ });
929
+ }
930
+ if (process.env.NODE_ENV === "development" && time) time`context-override`;
931
+ if (startedUnhydrated && splitStyles) content = /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
932
+ children: [content, !isHydrated ? (0, import_wrapStyleTags.getStyleTags)(Object.values(splitStyles.rulesToInsert)) : null]
933
+ });
934
+ if (process.env.NODE_ENV === "development" && time) time`style-tags`;
935
+ if (process.env.NODE_ENV === "development") {
936
+ if (debugProp && debugProp !== "profile") {
937
+ const title = `render <${typeof elementType === "string" ? elementType : "Component"} /> (${internalID}) with props`;
699
938
  if (!import_constants.isWeb || !import_constants.isClient) {
700
- (0, import_log.log)(title), (0, import_log.log)("state: ", state), import_isDevTools.isDevTools && (0, import_log.log)("viewProps", viewProps), (0, import_log.log)("final styles:");
939
+ (0, import_log.log)(title);
940
+ (0, import_log.log)(`state: `, state);
941
+ if (import_isDevTools.isDevTools) (0, import_log.log)("viewProps", viewProps);
942
+ (0, import_log.log)(`final styles:`);
701
943
  for (const key in splitStylesStyle) (0, import_log.log)(key, splitStylesStyle[key]);
702
944
  } else {
703
945
  console.groupCollapsed(title);
704
946
  try {
705
- (0, import_log.log)("viewProps", viewProps), (0, import_log.log)("children", content), typeof window < "u" && (0, import_log.log)({
947
+ (0, import_log.log)("viewProps", viewProps);
948
+ (0, import_log.log)("children", content);
949
+ if (typeof window !== "undefined") (0, import_log.log)({
706
950
  propsIn,
707
951
  props,
708
952
  attachPress,
@@ -734,36 +978,76 @@ If you meant to do this, you can disable this warning - either change untilMeasu
734
978
  console.groupEnd();
735
979
  }
736
980
  }
981
+ if (debugProp === "break") {}
737
982
  }
738
- return process.env.NODE_ENV === "development" && time && (time`rest`, globalThis.willPrint || (globalThis.willPrint = !0, setTimeout(() => {
739
- delete globalThis.willPrint, time.print(), time = null;
740
- }, 50))), content;
741
- });
983
+ }
984
+ if (process.env.NODE_ENV === "development" && time) {
985
+ time`rest`;
986
+ if (!globalThis["willPrint"]) {
987
+ globalThis["willPrint"] = true;
988
+ setTimeout(() => {
989
+ delete globalThis["willPrint"];
990
+ time.print();
991
+ time = null;
992
+ }, 50);
993
+ }
994
+ }
995
+ return content;
996
+ });
742
997
  function notifyGroupSubscribers(groupContext, groupEmitter, pseudo) {
743
998
  if (!groupContext || !groupEmitter) return;
744
999
  const nextState = {
745
1000
  ...groupContext.state,
746
1001
  pseudo
747
1002
  };
748
- groupEmitter.emit(nextState), groupContext.state = nextState;
1003
+ groupEmitter.emit(nextState);
1004
+ groupContext.state = nextState;
749
1005
  }
750
- staticConfig.componentName && (component.displayName = staticConfig.componentName);
1006
+ if (staticConfig.componentName) component.displayName = staticConfig.componentName;
751
1007
  let res = component;
752
- res = import_react.default.memo(res), res.staticConfig = staticConfig;
1008
+ res = import_react.default.memo(res);
1009
+ res.staticConfig = staticConfig;
753
1010
  function extendStyledConfig(extended) {
754
1011
  return {
755
1012
  ...staticConfig,
756
1013
  ...extended,
757
- neverFlatten: !0,
758
- isHOC: !0,
759
- isStyledHOC: !1
1014
+ neverFlatten: true,
1015
+ isHOC: true,
1016
+ isStyledHOC: false
760
1017
  };
761
1018
  }
762
1019
  function styleable(Component2, options) {
763
- let out = typeof Component2 == "function" && Component2.length === 1 ? Component2 : import_react.default.forwardRef(Component2);
1020
+ let out = typeof Component2 === "function" && Component2.length === 1 ? Component2 : import_react.default.forwardRef(Component2);
764
1021
  const extendedConfig = extendStyledConfig(options?.staticConfig);
765
- return out = options?.disableTheme ? out : (0, import_themeable.themeable)(out, extendedConfig, !0), (extendedConfig.memo || process.env.TAMAGUI_MEMOIZE_STYLEABLE) && (out = import_react.default.memo(out)), out.staticConfig = extendedConfig, out.styleable = styleable, out;
1022
+ out = options?.disableTheme ? out : (0, import_themeable.themeable)(out, extendedConfig, true);
1023
+ if (extendedConfig.memo || process.env.TAMAGUI_MEMOIZE_STYLEABLE) out = import_react.default.memo(out);
1024
+ out.staticConfig = extendedConfig;
1025
+ out.styleable = styleable;
1026
+ return out;
766
1027
  }
767
- return res.styleable = styleable, res;
1028
+ res.styleable = styleable;
1029
+ return res;
768
1030
  }
769
- const fromPx = val => typeof val == "number" ? val : typeof val == "string" ? +val.replace("px", "") : 0;
1031
+ const fromPx = val => {
1032
+ if (typeof val === "number") return val;
1033
+ if (typeof val === "string") return +val.replace("px", "");
1034
+ return 0;
1035
+ };
1036
+ const getCustomRender = (renderProp, content, viewProps, state) => {
1037
+ if (typeof renderProp === "function") renderProp = getRenderElementForPlatform(renderProp(viewProps, state));
1038
+ if (renderProp) {
1039
+ if (typeof renderProp === "object" && import_react.default.isValidElement(renderProp)) {
1040
+ if (getRenderElementForPlatform(renderProp)) {
1041
+ const elementProps = renderProp.props;
1042
+ const mergedProps = elementProps ? (0, import_mergeRenderElementProps.mergeRenderElementProps)(elementProps, viewProps, content) : viewProps;
1043
+ return {
1044
+ elementType: renderProp.type,
1045
+ viewProps: mergedProps
1046
+ };
1047
+ }
1048
+ }
1049
+ }
1050
+ };
1051
+ function getRenderElementForPlatform(potential) {
1052
+ return potential;
1053
+ }