@tamagui/web 2.0.0-rc.8 → 2.0.0

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