@tamagui/web 1.61.3 → 1.62.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 (497) hide show
  1. package/dist/cjs/Tamagui.js +10 -26
  2. package/dist/cjs/Tamagui.js.map +1 -1
  3. package/dist/cjs/Tamagui.native.js +64 -0
  4. package/dist/cjs/Tamagui.native.js.map +6 -0
  5. package/dist/cjs/config.js +25 -64
  6. package/dist/cjs/config.js.map +2 -2
  7. package/dist/cjs/config.native.js +90 -0
  8. package/dist/cjs/config.native.js.map +6 -0
  9. package/dist/cjs/constants/accessibilityDirectMap.js +41 -51
  10. package/dist/cjs/constants/accessibilityDirectMap.js.map +1 -1
  11. package/dist/cjs/constants/accessibilityDirectMap.native.js +9 -16
  12. package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
  13. package/dist/cjs/constants/constants.js +16 -24
  14. package/dist/cjs/constants/constants.js.map +1 -1
  15. package/dist/cjs/constants/constants.native.js +32 -0
  16. package/dist/cjs/constants/constants.native.js.map +6 -0
  17. package/dist/cjs/constants/isDevTools.js +7 -12
  18. package/dist/cjs/constants/isDevTools.js.map +1 -1
  19. package/dist/cjs/constants/isDevTools.native.js +33 -0
  20. package/dist/cjs/constants/isDevTools.native.js.map +6 -0
  21. package/dist/cjs/contexts/ComponentContext.js +8 -14
  22. package/dist/cjs/contexts/ComponentContext.js.map +1 -1
  23. package/dist/cjs/contexts/ComponentContext.native.js +42 -0
  24. package/dist/cjs/contexts/ComponentContext.native.js.map +6 -0
  25. package/dist/cjs/createComponent.js +288 -710
  26. package/dist/cjs/createComponent.js.map +2 -2
  27. package/dist/cjs/createComponent.native.js +643 -0
  28. package/dist/cjs/createComponent.native.js.map +6 -0
  29. package/dist/cjs/createFont.js +18 -29
  30. package/dist/cjs/createFont.js.map +1 -1
  31. package/dist/cjs/createFont.native.js +59 -0
  32. package/dist/cjs/createFont.native.js.map +6 -0
  33. package/dist/cjs/createShorthands.js +5 -9
  34. package/dist/cjs/createShorthands.js.map +1 -1
  35. package/dist/cjs/createShorthands.native.js +28 -0
  36. package/dist/cjs/createShorthands.native.js.map +6 -0
  37. package/dist/cjs/createTamagui.js +56 -144
  38. package/dist/cjs/createTamagui.js.map +2 -2
  39. package/dist/cjs/createTamagui.native.js +186 -0
  40. package/dist/cjs/createTamagui.native.js.map +6 -0
  41. package/dist/cjs/createTheme.js +6 -12
  42. package/dist/cjs/createTheme.js.map +1 -1
  43. package/dist/cjs/createTheme.native.js +26 -0
  44. package/dist/cjs/createTheme.native.js.map +6 -0
  45. package/dist/cjs/createTokens.js +5 -9
  46. package/dist/cjs/createTokens.js.map +1 -1
  47. package/dist/cjs/createTokens.native.js +29 -0
  48. package/dist/cjs/createTokens.native.js.map +6 -0
  49. package/dist/cjs/createVariable.js +20 -47
  50. package/dist/cjs/createVariable.js.map +1 -1
  51. package/dist/cjs/createVariable.native.js +85 -0
  52. package/dist/cjs/createVariable.native.js.map +6 -0
  53. package/dist/cjs/createVariables.js +11 -22
  54. package/dist/cjs/createVariables.js.map +1 -1
  55. package/dist/cjs/createVariables.native.js +54 -0
  56. package/dist/cjs/createVariables.native.js.map +6 -0
  57. package/dist/cjs/helpers/ThemeManager.js +75 -169
  58. package/dist/cjs/helpers/ThemeManager.js.map +1 -1
  59. package/dist/cjs/helpers/ThemeManager.native.js +178 -0
  60. package/dist/cjs/helpers/ThemeManager.native.js.map +6 -0
  61. package/dist/cjs/helpers/ThemeManagerContext.js +5 -9
  62. package/dist/cjs/helpers/ThemeManagerContext.js.map +1 -1
  63. package/dist/cjs/helpers/ThemeManagerContext.native.js +27 -0
  64. package/dist/cjs/helpers/ThemeManagerContext.native.js.map +6 -0
  65. package/dist/cjs/helpers/createChainedWeakCache.js +14 -24
  66. package/dist/cjs/helpers/createChainedWeakCache.js.map +1 -1
  67. package/dist/cjs/helpers/createChainedWeakCache.native.js +54 -0
  68. package/dist/cjs/helpers/createChainedWeakCache.native.js.map +6 -0
  69. package/dist/cjs/helpers/createMediaStyle.js +20 -70
  70. package/dist/cjs/helpers/createMediaStyle.js.map +1 -1
  71. package/dist/cjs/helpers/createMediaStyle.native.js +72 -0
  72. package/dist/cjs/helpers/createMediaStyle.native.js.map +6 -0
  73. package/dist/cjs/helpers/createProxy.js +11 -20
  74. package/dist/cjs/helpers/createProxy.js.map +1 -1
  75. package/dist/cjs/helpers/createProxy.native.js +35 -0
  76. package/dist/cjs/helpers/createProxy.native.js.map +6 -0
  77. package/dist/cjs/helpers/createShallowSetState.js +7 -13
  78. package/dist/cjs/helpers/createShallowSetState.js.map +1 -1
  79. package/dist/cjs/helpers/createShallowSetState.native.js +36 -0
  80. package/dist/cjs/helpers/createShallowSetState.native.js.map +6 -0
  81. package/dist/cjs/helpers/createStyledContext.js +12 -26
  82. package/dist/cjs/helpers/createStyledContext.js.map +1 -1
  83. package/dist/cjs/helpers/createStyledContext.native.js +39 -0
  84. package/dist/cjs/helpers/createStyledContext.native.js.map +6 -0
  85. package/dist/cjs/helpers/defaultOffset.js +5 -9
  86. package/dist/cjs/helpers/defaultOffset.js.map +1 -1
  87. package/dist/cjs/helpers/defaultOffset.native.js +26 -0
  88. package/dist/cjs/helpers/defaultOffset.native.js.map +6 -0
  89. package/dist/cjs/helpers/expandStyle.js +20 -40
  90. package/dist/cjs/helpers/expandStyle.js.map +1 -1
  91. package/dist/cjs/helpers/expandStyle.native.js +64 -0
  92. package/dist/cjs/helpers/expandStyle.native.js.map +6 -0
  93. package/dist/cjs/helpers/expandStyles.js +13 -39
  94. package/dist/cjs/helpers/expandStyles.js.map +1 -1
  95. package/dist/cjs/helpers/expandStyles.native.js +55 -0
  96. package/dist/cjs/helpers/expandStyles.native.js.map +6 -0
  97. package/dist/cjs/helpers/getAnimationDriver.js +5 -9
  98. package/dist/cjs/helpers/getAnimationDriver.js.map +1 -1
  99. package/dist/cjs/helpers/getAnimationDriver.native.js +29 -0
  100. package/dist/cjs/helpers/getAnimationDriver.native.js.map +6 -0
  101. package/dist/cjs/helpers/getExpandedShorthands.js +6 -11
  102. package/dist/cjs/helpers/getExpandedShorthands.js.map +1 -1
  103. package/dist/cjs/helpers/getExpandedShorthands.native.js +35 -0
  104. package/dist/cjs/helpers/getExpandedShorthands.native.js.map +6 -0
  105. package/dist/cjs/helpers/getFontLanguage.js +5 -9
  106. package/dist/cjs/helpers/getFontLanguage.js.map +1 -1
  107. package/dist/cjs/helpers/getFontLanguage.native.js +26 -0
  108. package/dist/cjs/helpers/getFontLanguage.native.js.map +6 -0
  109. package/dist/cjs/helpers/getGroupPropParts.js +7 -17
  110. package/dist/cjs/helpers/getGroupPropParts.js.map +1 -1
  111. package/dist/cjs/helpers/getGroupPropParts.native.js +32 -0
  112. package/dist/cjs/helpers/getGroupPropParts.native.js.map +6 -0
  113. package/dist/cjs/helpers/getSplitStyles.js +364 -827
  114. package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
  115. package/dist/cjs/helpers/getSplitStyles.native.js +503 -0
  116. package/dist/cjs/helpers/getSplitStyles.native.js.map +6 -0
  117. package/dist/cjs/helpers/getStylesAtomic.js +39 -102
  118. package/dist/cjs/helpers/getStylesAtomic.js.map +1 -1
  119. package/dist/cjs/helpers/getStylesAtomic.native.js +6 -13
  120. package/dist/cjs/helpers/getStylesAtomic.native.js.map +1 -1
  121. package/dist/cjs/helpers/getThemeCSSRules.js +25 -70
  122. package/dist/cjs/helpers/getThemeCSSRules.js.map +1 -1
  123. package/dist/cjs/helpers/getThemeCSSRules.native.js +5 -8
  124. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
  125. package/dist/cjs/helpers/getVariantExtras.js +13 -26
  126. package/dist/cjs/helpers/getVariantExtras.js.map +1 -1
  127. package/dist/cjs/helpers/getVariantExtras.native.js +72 -0
  128. package/dist/cjs/helpers/getVariantExtras.native.js.map +6 -0
  129. package/dist/cjs/helpers/insertStyleRule.js +85 -197
  130. package/dist/cjs/helpers/insertStyleRule.js.map +1 -1
  131. package/dist/cjs/helpers/insertStyleRule.native.js +223 -0
  132. package/dist/cjs/helpers/insertStyleRule.native.js.map +6 -0
  133. package/dist/cjs/helpers/isObj.js +6 -10
  134. package/dist/cjs/helpers/isObj.js.map +1 -1
  135. package/dist/cjs/helpers/isObj.native.js +26 -0
  136. package/dist/cjs/helpers/isObj.native.js.map +6 -0
  137. package/dist/cjs/helpers/isTamaguiComponent.js +7 -11
  138. package/dist/cjs/helpers/isTamaguiComponent.js.map +1 -1
  139. package/dist/cjs/helpers/isTamaguiComponent.native.js +29 -0
  140. package/dist/cjs/helpers/isTamaguiComponent.native.js.map +6 -0
  141. package/dist/cjs/helpers/isTamaguiElement.js +7 -14
  142. package/dist/cjs/helpers/isTamaguiElement.js.map +1 -1
  143. package/dist/cjs/helpers/isTamaguiElement.native.js +27 -0
  144. package/dist/cjs/helpers/isTamaguiElement.native.js.map +6 -0
  145. package/dist/cjs/helpers/matchMedia.js +8 -12
  146. package/dist/cjs/helpers/matchMedia.js.map +1 -1
  147. package/dist/cjs/helpers/matchMedia.native.js +9 -16
  148. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  149. package/dist/cjs/helpers/mergeProps.js +10 -18
  150. package/dist/cjs/helpers/mergeProps.js.map +1 -1
  151. package/dist/cjs/helpers/mergeProps.native.js +49 -0
  152. package/dist/cjs/helpers/mergeProps.native.js.map +6 -0
  153. package/dist/cjs/helpers/mergeVariants.js +16 -30
  154. package/dist/cjs/helpers/mergeVariants.js.map +1 -1
  155. package/dist/cjs/helpers/mergeVariants.native.js +56 -0
  156. package/dist/cjs/helpers/mergeVariants.native.js.map +6 -0
  157. package/dist/cjs/helpers/normalizeColor.js +9 -27
  158. package/dist/cjs/helpers/normalizeColor.js.map +1 -1
  159. package/dist/cjs/helpers/normalizeColor.native.js +40 -0
  160. package/dist/cjs/helpers/normalizeColor.native.js.map +6 -0
  161. package/dist/cjs/helpers/normalizeShadow.js +6 -12
  162. package/dist/cjs/helpers/normalizeShadow.js.map +1 -1
  163. package/dist/cjs/helpers/normalizeShadow.native.js +8 -17
  164. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
  165. package/dist/cjs/helpers/normalizeStylePropKeys.js +5 -9
  166. package/dist/cjs/helpers/normalizeStylePropKeys.js.map +1 -1
  167. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +15 -18
  168. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
  169. package/dist/cjs/helpers/normalizeValueWithProperty.js +22 -63
  170. package/dist/cjs/helpers/normalizeValueWithProperty.js.map +1 -1
  171. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +60 -0
  172. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +6 -0
  173. package/dist/cjs/helpers/objectIdentityKey.js +9 -14
  174. package/dist/cjs/helpers/objectIdentityKey.js.map +1 -1
  175. package/dist/cjs/helpers/objectIdentityKey.native.js +43 -0
  176. package/dist/cjs/helpers/objectIdentityKey.native.js.map +6 -0
  177. package/dist/cjs/helpers/propMapper.js +91 -241
  178. package/dist/cjs/helpers/propMapper.js.map +1 -1
  179. package/dist/cjs/helpers/propMapper.native.js +201 -0
  180. package/dist/cjs/helpers/propMapper.native.js.map +6 -0
  181. package/dist/cjs/helpers/proxyThemeToParents.js +12 -29
  182. package/dist/cjs/helpers/proxyThemeToParents.js.map +1 -1
  183. package/dist/cjs/helpers/proxyThemeToParents.native.js +62 -0
  184. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +6 -0
  185. package/dist/cjs/helpers/proxyThemeVariables.js +6 -10
  186. package/dist/cjs/helpers/proxyThemeVariables.js.map +1 -1
  187. package/dist/cjs/helpers/proxyThemeVariables.native.js +37 -0
  188. package/dist/cjs/helpers/proxyThemeVariables.native.js.map +6 -0
  189. package/dist/cjs/helpers/pseudoDescriptors.js +7 -13
  190. package/dist/cjs/helpers/pseudoDescriptors.js.map +1 -1
  191. package/dist/cjs/helpers/pseudoDescriptors.native.js +60 -0
  192. package/dist/cjs/helpers/pseudoDescriptors.native.js.map +6 -0
  193. package/dist/cjs/helpers/registerCSSVariable.js +6 -14
  194. package/dist/cjs/helpers/registerCSSVariable.js.map +1 -1
  195. package/dist/cjs/helpers/registerCSSVariable.native.js +33 -0
  196. package/dist/cjs/helpers/registerCSSVariable.native.js.map +6 -0
  197. package/dist/cjs/helpers/themeable.js +15 -27
  198. package/dist/cjs/helpers/themeable.js.map +1 -1
  199. package/dist/cjs/helpers/themeable.native.js +56 -0
  200. package/dist/cjs/helpers/themeable.native.js.map +6 -0
  201. package/dist/cjs/helpers/themes.js +15 -26
  202. package/dist/cjs/helpers/themes.js.map +1 -1
  203. package/dist/cjs/helpers/themes.native.js +38 -0
  204. package/dist/cjs/helpers/themes.native.js.map +6 -0
  205. package/dist/cjs/helpers/timer.js +6 -10
  206. package/dist/cjs/helpers/timer.js.map +1 -1
  207. package/dist/cjs/helpers/timer.native.js +32 -0
  208. package/dist/cjs/helpers/timer.native.js.map +6 -0
  209. package/dist/cjs/helpers/withStaticProperties.js +8 -15
  210. package/dist/cjs/helpers/withStaticProperties.js.map +1 -1
  211. package/dist/cjs/helpers/withStaticProperties.native.js +41 -0
  212. package/dist/cjs/helpers/withStaticProperties.native.js.map +6 -0
  213. package/dist/cjs/hooks/getThemeUnwrapped.js +6 -13
  214. package/dist/cjs/hooks/getThemeUnwrapped.js.map +1 -1
  215. package/dist/cjs/hooks/getThemeUnwrapped.native.js +28 -0
  216. package/dist/cjs/hooks/getThemeUnwrapped.native.js.map +6 -0
  217. package/dist/cjs/hooks/useAnimationDriver.js +7 -15
  218. package/dist/cjs/hooks/useAnimationDriver.js.map +1 -1
  219. package/dist/cjs/hooks/useAnimationDriver.native.js +27 -0
  220. package/dist/cjs/hooks/useAnimationDriver.native.js.map +6 -0
  221. package/dist/cjs/hooks/useId.js +5 -9
  222. package/dist/cjs/hooks/useId.js.map +1 -1
  223. package/dist/cjs/hooks/useId.native.js +26 -0
  224. package/dist/cjs/hooks/useId.native.js.map +6 -0
  225. package/dist/cjs/hooks/useIsTouchDevice.js +7 -14
  226. package/dist/cjs/hooks/useIsTouchDevice.js.map +1 -1
  227. package/dist/cjs/hooks/useIsTouchDevice.native.js +27 -0
  228. package/dist/cjs/hooks/useIsTouchDevice.native.js.map +6 -0
  229. package/dist/cjs/hooks/useMedia.js +60 -170
  230. package/dist/cjs/hooks/useMedia.js.map +2 -2
  231. package/dist/cjs/hooks/useMedia.native.js +219 -0
  232. package/dist/cjs/hooks/useMedia.native.js.map +6 -0
  233. package/dist/cjs/hooks/useMemoDebug.js +7 -17
  234. package/dist/cjs/hooks/useMemoDebug.js.map +1 -1
  235. package/dist/cjs/hooks/useMemoDebug.native.js +31 -0
  236. package/dist/cjs/hooks/useMemoDebug.native.js.map +6 -0
  237. package/dist/cjs/hooks/useProps.js +7 -11
  238. package/dist/cjs/hooks/useProps.js.map +1 -1
  239. package/dist/cjs/hooks/useProps.native.js +32 -0
  240. package/dist/cjs/hooks/useProps.native.js.map +6 -0
  241. package/dist/cjs/hooks/useStyle.js +8 -21
  242. package/dist/cjs/hooks/useStyle.js.map +1 -1
  243. package/dist/cjs/hooks/useStyle.native.js +48 -0
  244. package/dist/cjs/hooks/useStyle.native.js.map +6 -0
  245. package/dist/cjs/hooks/useTheme.js +95 -215
  246. package/dist/cjs/hooks/useTheme.js.map +1 -1
  247. package/dist/cjs/hooks/useTheme.native.js +215 -0
  248. package/dist/cjs/hooks/useTheme.native.js.map +6 -0
  249. package/dist/cjs/hooks/useThemeName.js +14 -26
  250. package/dist/cjs/hooks/useThemeName.js.map +1 -1
  251. package/dist/cjs/hooks/useThemeName.native.js +36 -0
  252. package/dist/cjs/hooks/useThemeName.native.js.map +6 -0
  253. package/dist/cjs/index.js +7 -11
  254. package/dist/cjs/index.js.map +1 -1
  255. package/dist/cjs/index.native.js +168 -0
  256. package/dist/cjs/index.native.js.map +6 -0
  257. package/dist/cjs/inject-styles.js +7 -15
  258. package/dist/cjs/inject-styles.js.map +1 -1
  259. package/dist/cjs/inject-styles.native.js +33 -0
  260. package/dist/cjs/inject-styles.native.js.map +6 -0
  261. package/dist/cjs/insertFont.js +25 -49
  262. package/dist/cjs/insertFont.js.map +1 -1
  263. package/dist/cjs/insertFont.native.js +69 -0
  264. package/dist/cjs/insertFont.native.js.map +6 -0
  265. package/dist/cjs/interfaces/CSSColorNames.js +3 -6
  266. package/dist/cjs/interfaces/CSSColorNames.js.map +1 -1
  267. package/dist/cjs/interfaces/CSSColorNames.native.js +15 -0
  268. package/dist/cjs/interfaces/CSSColorNames.native.js.map +6 -0
  269. package/dist/cjs/interfaces/GetRef.js +3 -6
  270. package/dist/cjs/interfaces/GetRef.js.map +1 -1
  271. package/dist/cjs/interfaces/GetRef.native.js +15 -0
  272. package/dist/cjs/interfaces/GetRef.native.js.map +6 -0
  273. package/dist/cjs/interfaces/Role.js +3 -6
  274. package/dist/cjs/interfaces/Role.js.map +1 -1
  275. package/dist/cjs/interfaces/Role.native.js +15 -0
  276. package/dist/cjs/interfaces/Role.native.js.map +6 -0
  277. package/dist/cjs/setupHooks.js +5 -9
  278. package/dist/cjs/setupHooks.js.map +1 -1
  279. package/dist/cjs/setupHooks.native.js +31 -0
  280. package/dist/cjs/setupHooks.native.js.map +6 -0
  281. package/dist/cjs/setupReactNative.js +11 -17
  282. package/dist/cjs/setupReactNative.js.map +1 -1
  283. package/dist/cjs/setupReactNative.native.js +44 -0
  284. package/dist/cjs/setupReactNative.native.js.map +6 -0
  285. package/dist/cjs/styled.js +25 -67
  286. package/dist/cjs/styled.js.map +1 -1
  287. package/dist/cjs/styled.native.js +75 -0
  288. package/dist/cjs/styled.native.js.map +6 -0
  289. package/dist/cjs/types.js +3 -6
  290. package/dist/cjs/types.js.map +1 -1
  291. package/dist/cjs/types.native.js +15 -0
  292. package/dist/cjs/types.native.js.map +6 -0
  293. package/dist/cjs/views/AnimationDriverProvider.js +7 -14
  294. package/dist/cjs/views/AnimationDriverProvider.js.map +1 -1
  295. package/dist/cjs/views/AnimationDriverProvider.native.js +27 -0
  296. package/dist/cjs/views/AnimationDriverProvider.native.js.map +6 -0
  297. package/dist/cjs/views/FontLanguage.js +15 -21
  298. package/dist/cjs/views/FontLanguage.js.map +1 -1
  299. package/dist/cjs/views/FontLanguage.native.js +6 -11
  300. package/dist/cjs/views/FontLanguage.native.js.map +1 -1
  301. package/dist/cjs/views/FontLanguage.types.js +3 -6
  302. package/dist/cjs/views/FontLanguage.types.js.map +1 -1
  303. package/dist/cjs/views/FontLanguage.types.native.js +15 -0
  304. package/dist/cjs/views/FontLanguage.types.native.js.map +6 -0
  305. package/dist/cjs/views/Slot.js +15 -46
  306. package/dist/cjs/views/Slot.js.map +2 -2
  307. package/dist/cjs/views/Slot.native.js +58 -0
  308. package/dist/cjs/views/Slot.native.js.map +6 -0
  309. package/dist/cjs/views/Stack.js +7 -13
  310. package/dist/cjs/views/Stack.js.map +1 -1
  311. package/dist/cjs/views/Stack.native.js +31 -0
  312. package/dist/cjs/views/Stack.native.js.map +6 -0
  313. package/dist/cjs/views/TamaguiProvider.js +16 -38
  314. package/dist/cjs/views/TamaguiProvider.js.map +1 -1
  315. package/dist/cjs/views/TamaguiProvider.native.js +58 -0
  316. package/dist/cjs/views/TamaguiProvider.native.js.map +6 -0
  317. package/dist/cjs/views/Text.js +28 -45
  318. package/dist/cjs/views/Text.js.map +1 -1
  319. package/dist/cjs/views/Text.native.js +53 -0
  320. package/dist/cjs/views/Text.native.js.map +6 -0
  321. package/dist/cjs/views/Theme.js +41 -89
  322. package/dist/cjs/views/Theme.js.map +2 -2
  323. package/dist/cjs/views/Theme.native.js +99 -0
  324. package/dist/cjs/views/Theme.native.js.map +6 -0
  325. package/dist/cjs/views/ThemeDebug.js +19 -52
  326. package/dist/cjs/views/ThemeDebug.js.map +2 -2
  327. package/dist/cjs/views/ThemeDebug.native.js +5 -8
  328. package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
  329. package/dist/cjs/views/ThemeProvider.js +22 -37
  330. package/dist/cjs/views/ThemeProvider.js.map +1 -1
  331. package/dist/cjs/views/ThemeProvider.native.js +43 -0
  332. package/dist/cjs/views/ThemeProvider.native.js.map +6 -0
  333. package/dist/cjs/views/View.js +7 -12
  334. package/dist/cjs/views/View.js.map +1 -1
  335. package/dist/cjs/views/View.native.js +30 -0
  336. package/dist/cjs/views/View.native.js.map +6 -0
  337. package/dist/esm/Tamagui.js +2 -9
  338. package/dist/esm/Tamagui.js.map +1 -1
  339. package/dist/esm/config.js +20 -55
  340. package/dist/esm/config.js.map +2 -2
  341. package/dist/esm/constants/accessibilityDirectMap.js +36 -42
  342. package/dist/esm/constants/accessibilityDirectMap.js.map +1 -1
  343. package/dist/esm/constants/constants.js +11 -15
  344. package/dist/esm/constants/constants.js.map +1 -1
  345. package/dist/esm/constants/isDevTools.js +2 -3
  346. package/dist/esm/constants/isDevTools.js.map +1 -1
  347. package/dist/esm/contexts/ComponentContext.js +3 -5
  348. package/dist/esm/contexts/ComponentContext.js.map +1 -1
  349. package/dist/esm/createComponent.js +281 -677
  350. package/dist/esm/createComponent.js.map +2 -2
  351. package/dist/esm/createFont.js +13 -20
  352. package/dist/esm/createFont.js.map +1 -1
  353. package/dist/esm/createTamagui.js +50 -124
  354. package/dist/esm/createTamagui.js.map +2 -2
  355. package/dist/esm/createTheme.js +1 -3
  356. package/dist/esm/createTheme.js.map +1 -1
  357. package/dist/esm/createVariable.js +14 -35
  358. package/dist/esm/createVariable.js.map +1 -1
  359. package/dist/esm/createVariables.js +5 -11
  360. package/dist/esm/createVariables.js.map +1 -1
  361. package/dist/esm/helpers/ThemeManager.js +69 -157
  362. package/dist/esm/helpers/ThemeManager.js.map +1 -1
  363. package/dist/esm/helpers/createChainedWeakCache.js +9 -15
  364. package/dist/esm/helpers/createChainedWeakCache.js.map +1 -1
  365. package/dist/esm/helpers/createMediaStyle.js +14 -58
  366. package/dist/esm/helpers/createMediaStyle.js.map +1 -1
  367. package/dist/esm/helpers/createProxy.js +6 -11
  368. package/dist/esm/helpers/createProxy.js.map +1 -1
  369. package/dist/esm/helpers/createShallowSetState.js +2 -4
  370. package/dist/esm/helpers/createShallowSetState.js.map +1 -1
  371. package/dist/esm/helpers/createStyledContext.js +7 -15
  372. package/dist/esm/helpers/createStyledContext.js.map +1 -1
  373. package/dist/esm/helpers/expandStyle.js +16 -32
  374. package/dist/esm/helpers/expandStyle.js.map +1 -1
  375. package/dist/esm/helpers/expandStyles.js +7 -25
  376. package/dist/esm/helpers/expandStyles.js.map +1 -1
  377. package/dist/esm/helpers/getExpandedShorthands.js +1 -2
  378. package/dist/esm/helpers/getExpandedShorthands.js.map +1 -1
  379. package/dist/esm/helpers/getGroupPropParts.js +2 -8
  380. package/dist/esm/helpers/getGroupPropParts.js.map +1 -1
  381. package/dist/esm/helpers/getSplitStyles.js +360 -810
  382. package/dist/esm/helpers/getSplitStyles.js.map +2 -2
  383. package/dist/esm/helpers/getStylesAtomic.js +33 -88
  384. package/dist/esm/helpers/getStylesAtomic.js.map +1 -1
  385. package/dist/esm/helpers/getThemeCSSRules.js +19 -57
  386. package/dist/esm/helpers/getThemeCSSRules.js.map +1 -1
  387. package/dist/esm/helpers/getVariantExtras.js +7 -15
  388. package/dist/esm/helpers/getVariantExtras.js.map +1 -1
  389. package/dist/esm/helpers/insertStyleRule.js +79 -186
  390. package/dist/esm/helpers/insertStyleRule.js.map +1 -1
  391. package/dist/esm/helpers/isObj.js +1 -1
  392. package/dist/esm/helpers/isObj.js.map +1 -1
  393. package/dist/esm/helpers/isTamaguiComponent.js +2 -2
  394. package/dist/esm/helpers/isTamaguiComponent.js.map +1 -1
  395. package/dist/esm/helpers/isTamaguiElement.js +1 -3
  396. package/dist/esm/helpers/isTamaguiElement.js.map +1 -1
  397. package/dist/esm/helpers/matchMedia.js +3 -3
  398. package/dist/esm/helpers/matchMedia.js.map +1 -1
  399. package/dist/esm/helpers/mergeProps.js +5 -9
  400. package/dist/esm/helpers/mergeProps.js.map +1 -1
  401. package/dist/esm/helpers/mergeVariants.js +11 -21
  402. package/dist/esm/helpers/mergeVariants.js.map +1 -1
  403. package/dist/esm/helpers/normalizeColor.js +3 -15
  404. package/dist/esm/helpers/normalizeColor.js.map +1 -1
  405. package/dist/esm/helpers/normalizeValueWithProperty.js +16 -51
  406. package/dist/esm/helpers/normalizeValueWithProperty.js.map +1 -1
  407. package/dist/esm/helpers/objectIdentityKey.js +4 -5
  408. package/dist/esm/helpers/objectIdentityKey.js.map +1 -1
  409. package/dist/esm/helpers/propMapper.js +86 -223
  410. package/dist/esm/helpers/propMapper.js.map +1 -1
  411. package/dist/esm/helpers/proxyThemeToParents.js +6 -18
  412. package/dist/esm/helpers/proxyThemeToParents.js.map +1 -1
  413. package/dist/esm/helpers/proxyThemeVariables.js +1 -1
  414. package/dist/esm/helpers/proxyThemeVariables.js.map +1 -1
  415. package/dist/esm/helpers/pseudoDescriptors.js +2 -4
  416. package/dist/esm/helpers/pseudoDescriptors.js.map +1 -1
  417. package/dist/esm/helpers/registerCSSVariable.js +1 -5
  418. package/dist/esm/helpers/registerCSSVariable.js.map +1 -1
  419. package/dist/esm/helpers/themeable.js +8 -12
  420. package/dist/esm/helpers/themeable.js.map +1 -1
  421. package/dist/esm/helpers/themes.js +10 -17
  422. package/dist/esm/helpers/themes.js.map +1 -1
  423. package/dist/esm/helpers/timer.js +1 -1
  424. package/dist/esm/helpers/withStaticProperties.js +3 -6
  425. package/dist/esm/helpers/withStaticProperties.js.map +1 -1
  426. package/dist/esm/hooks/getThemeUnwrapped.js +1 -4
  427. package/dist/esm/hooks/getThemeUnwrapped.js.map +1 -1
  428. package/dist/esm/hooks/useAnimationDriver.js +1 -3
  429. package/dist/esm/hooks/useAnimationDriver.js.map +1 -1
  430. package/dist/esm/hooks/useIsTouchDevice.js +1 -3
  431. package/dist/esm/hooks/useIsTouchDevice.js.map +1 -1
  432. package/dist/esm/hooks/useMedia.js +54 -152
  433. package/dist/esm/hooks/useMedia.js.map +2 -2
  434. package/dist/esm/hooks/useMemoDebug.js +2 -8
  435. package/dist/esm/hooks/useMemoDebug.js.map +1 -1
  436. package/dist/esm/hooks/useProps.js +2 -2
  437. package/dist/esm/hooks/useProps.js.map +1 -1
  438. package/dist/esm/hooks/useStyle.js +2 -6
  439. package/dist/esm/hooks/useStyle.js.map +1 -1
  440. package/dist/esm/hooks/useTheme.js +89 -198
  441. package/dist/esm/hooks/useTheme.js.map +1 -1
  442. package/dist/esm/hooks/useThemeName.js +8 -14
  443. package/dist/esm/hooks/useThemeName.js.map +1 -1
  444. package/dist/esm/index.js +1 -0
  445. package/dist/esm/index.js.map +1 -1
  446. package/dist/esm/inject-styles.js +2 -6
  447. package/dist/esm/inject-styles.js.map +1 -1
  448. package/dist/esm/insertFont.js +19 -36
  449. package/dist/esm/insertFont.js.map +1 -1
  450. package/dist/esm/setupReactNative.js +6 -8
  451. package/dist/esm/setupReactNative.js.map +1 -1
  452. package/dist/esm/styled.js +19 -55
  453. package/dist/esm/styled.js.map +1 -1
  454. package/dist/esm/views/AnimationDriverProvider.js +2 -4
  455. package/dist/esm/views/AnimationDriverProvider.js.map +1 -1
  456. package/dist/esm/views/FontLanguage.js +10 -12
  457. package/dist/esm/views/FontLanguage.js.map +1 -1
  458. package/dist/esm/views/Slot.js +10 -33
  459. package/dist/esm/views/Slot.js.map +2 -2
  460. package/dist/esm/views/Stack.js +1 -1
  461. package/dist/esm/views/TamaguiProvider.js +9 -20
  462. package/dist/esm/views/TamaguiProvider.js.map +1 -1
  463. package/dist/esm/views/Text.js +22 -34
  464. package/dist/esm/views/Text.js.map +1 -1
  465. package/dist/esm/views/Theme.js +34 -70
  466. package/dist/esm/views/Theme.js.map +2 -2
  467. package/dist/esm/views/ThemeDebug.js +14 -40
  468. package/dist/esm/views/ThemeDebug.js.map +2 -2
  469. package/dist/esm/views/ThemeProvider.js +17 -24
  470. package/dist/esm/views/ThemeProvider.js.map +1 -1
  471. package/dist/esm/views/View.js +1 -1
  472. package/package.json +15 -10
  473. package/src/createTamagui.ts +8 -7
  474. package/src/helpers/getStylesAtomic.ts +1 -0
  475. package/src/helpers/getThemeCSSRules.ts +3 -1
  476. package/src/index.ts +2 -0
  477. package/types/createTamagui.d.ts.map +1 -1
  478. package/types/helpers/getStylesAtomic.d.ts.map +1 -1
  479. package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
  480. package/types/index.d.ts +1 -0
  481. package/types/index.d.ts.map +1 -1
  482. package/dist/esm/constants/accessibilityDirectMap.native.js +0 -63
  483. package/dist/esm/constants/accessibilityDirectMap.native.js.map +0 -6
  484. package/dist/esm/helpers/getStylesAtomic.native.js +0 -14
  485. package/dist/esm/helpers/getStylesAtomic.native.js.map +0 -6
  486. package/dist/esm/helpers/getThemeCSSRules.native.js +0 -7
  487. package/dist/esm/helpers/getThemeCSSRules.native.js.map +0 -6
  488. package/dist/esm/helpers/matchMedia.native.js +0 -24
  489. package/dist/esm/helpers/matchMedia.native.js.map +0 -6
  490. package/dist/esm/helpers/normalizeShadow.native.js +0 -31
  491. package/dist/esm/helpers/normalizeShadow.native.js.map +0 -6
  492. package/dist/esm/helpers/normalizeStylePropKeys.native.js +0 -16
  493. package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +0 -6
  494. package/dist/esm/views/FontLanguage.native.js +0 -11
  495. package/dist/esm/views/FontLanguage.native.js.map +0 -6
  496. package/dist/esm/views/ThemeDebug.native.js +0 -11
  497. package/dist/esm/views/ThemeDebug.native.js.map +0 -6
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useMemoDebug.tsx"],
4
- "mappings": "AAEA,SAAS,eAAe;AAEjB,MAAM,eAA+B,CAAC,IAAI,SAAS;AACxD,MAAI,MAAM;AAEV,QAAM,MAAM,QAAQ,MAAM;AACxB,UAAM;AACN,WAAO,GAAG;AAAA,EACZ,GAAG,IAAI;AAEP,MAAI,QAAQ,GAAG;AAEb,YAAQ,IAAI,aAAa;AAAA,EAC3B;AAEA,SAAO;AACT;",
4
+ "mappings": "AAEA,SAAS,eAAe;AAEjB,MAAM,eAA+B,CAAC,IAAI,SAAS;AACxD,MAAI,MAAM;AAEV,QAAM,MAAM,QAAQ,OAClB,MAAM,GACC,GAAG,IACT,IAAI;AAEP,SAAI,QAAQ,KAEV,QAAQ,IAAI,aAAa,GAGpB;AACT;",
5
5
  "names": []
6
6
  }
@@ -1,8 +1,8 @@
1
1
  import { useMediaPropsActive } from "./useMedia";
2
2
  function useProps(props, opts) {
3
3
  return useMediaPropsActive(props, {
4
- expandShorthands: !(opts == null ? void 0 : opts.disableExpandShorthands),
5
- resolveValues: opts == null ? void 0 : opts.resolveValues
4
+ expandShorthands: !opts?.disableExpandShorthands,
5
+ resolveValues: opts?.resolveValues
6
6
  });
7
7
  }
8
8
  export {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useProps.tsx"],
4
- "mappings": "AACA,SAAS,2BAA2B;AAQ7B,SAAS,SACd,OACA,MAOA;AACA,SAAO,oBAAoB,OAAO;AAAA,IAChC,kBAAkB,EAAC,6BAAM;AAAA,IACzB,eAAe,6BAAM;AAAA,EACvB,CAAC;AACH;",
4
+ "mappings": "AACA,SAAS,2BAA2B;AAQ7B,SAAS,SACd,OACA,MAOA;AACA,SAAO,oBAAoB,OAAO;AAAA,IAChC,kBAAkB,CAAC,MAAM;AAAA,IACzB,eAAe,MAAM;AAAA,EACvB,CAAC;AACH;",
5
5
  "names": []
6
6
  }
@@ -5,11 +5,7 @@ import { useSplitStyles } from "../helpers/getSplitStyles";
5
5
  import { useMedia } from "./useMedia";
6
6
  import { useThemeWithState } from "./useTheme";
7
7
  function useStyle(base, style, options) {
8
- const isText = base.staticConfig.isText;
9
- const componentContext = useContext(ComponentContext);
10
- const [themeState] = useThemeWithState({});
11
- const media = useMedia();
12
- const out = useSplitStyles(
8
+ const isText = base.staticConfig.isText, componentContext = useContext(ComponentContext), [themeState] = useThemeWithState({}), media = useMedia(), out = useSplitStyles(
13
9
  style,
14
10
  base.staticConfig,
15
11
  themeState.state.theme,
@@ -23,7 +19,7 @@ function useStyle(base, style, options) {
23
19
  null,
24
20
  componentContext,
25
21
  isText ? "span" : "div",
26
- options == null ? void 0 : options.debug
22
+ options?.debug
27
23
  );
28
24
  return {
29
25
  style: Object.keys(out.style).length ? out.style : null,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useStyle.tsx"],
4
- "mappings": "AAAA,SAAS,kBAAkB;AAE3B,SAAS,wBAAwB;AACjC,SAAS,6BAA6B;AACtC,SAAS,sBAAsB;AAQ/B,SAAS,gBAAgB;AACzB,SAAS,yBAAyB;AAE3B,SAAS,SAId,MACA,OACA,SACA;AACA,QAAM,SAAS,KAAK,aAAa;AACjC,QAAM,mBAAmB,WAAW,gBAAgB;AACpD,QAAM,CAAC,UAAU,IAAI,kBAAkB,CAAC,CAAC;AACzC,QAAM,QAAQ,SAAS;AACvB,QAAM,MAAM;AAAA,IACV;AAAA,IACA,KAAK;AAAA,IACL,WAAW,MAAM;AAAA,IACjB,WAAW,MAAM;AAAA,IACjB;AAAA,IACA;AAAA,MACE,GAAI;AAAA,MACJ,YAAY;AAAA,MACZ,oBAAoB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS,SAAS;AAAA,IAClB,mCAAS;AAAA,EACX;AACA,SAAO;AAAA,IACL,OAAO,OAAO,KAAK,IAAI,KAAK,EAAE,SAAS,IAAI,QAAQ;AAAA,IACnD,YAAY,IAAI;AAAA,EAClB;AACF;",
4
+ "mappings": "AAAA,SAAS,kBAAkB;AAE3B,SAAS,wBAAwB;AACjC,SAAS,6BAA6B;AACtC,SAAS,sBAAsB;AAQ/B,SAAS,gBAAgB;AACzB,SAAS,yBAAyB;AAE3B,SAAS,SAId,MACA,OACA,SACA;AACA,QAAM,SAAS,KAAK,aAAa,QAC3B,mBAAmB,WAAW,gBAAgB,GAC9C,CAAC,UAAU,IAAI,kBAAkB,CAAC,CAAC,GACnC,QAAQ,SAAS,GACjB,MAAM;AAAA,IACV;AAAA,IACA,KAAK;AAAA,IACL,WAAW,MAAM;AAAA,IACjB,WAAW,MAAM;AAAA,IACjB;AAAA,IACA;AAAA,MACE,GAAI;AAAA,MACJ,YAAY;AAAA,MACZ,oBAAoB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS,SAAS;AAAA,IAClB,SAAS;AAAA,EACX;AACA,SAAO;AAAA,IACL,OAAO,OAAO,KAAK,IAAI,KAAK,EAAE,SAAS,IAAI,QAAQ;AAAA,IACnD,YAAY,IAAI;AAAA,EAClB;AACF;",
5
5
  "names": []
6
6
  }
@@ -14,201 +14,127 @@ let cached;
14
14
  function getDefaultThemeProxied() {
15
15
  if (cached)
16
16
  return cached;
17
- const config = getConfig();
18
- const defaultTheme = config.themes.light ?? config.themes[Object.keys(config.themes)[0]];
19
- cached = getThemeProxied(defaultTheme);
20
- return cached;
17
+ const config = getConfig(), defaultTheme = config.themes.light ?? config.themes[Object.keys(config.themes)[0]];
18
+ return cached = getThemeProxied(defaultTheme), cached;
21
19
  }
22
20
  const useTheme = (props = emptyProps) => {
23
21
  const [_, theme] = useThemeWithState(props);
24
- const res = theme || getDefaultThemeProxied();
25
- return res;
26
- };
27
- const useThemeWithState = (props) => {
28
- const keys = useRef([]);
29
- const changedThemeState = useChangeThemeEffect(
22
+ return theme || getDefaultThemeProxied();
23
+ }, useThemeWithState = (props) => {
24
+ const keys = useRef([]), changedThemeState = useChangeThemeEffect(
30
25
  props,
31
- false,
26
+ !1,
32
27
  keys.current,
33
- !isServer ? () => {
34
- var _a, _b;
35
- const next = ((_a = props.shouldUpdate) == null ? void 0 : _a.call(props)) ?? (keys.current.length > 0 ? true : void 0);
36
- if (process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile") {
37
- console.log(` \u{1F3A8} useTheme() shouldUpdate?`, next, {
38
- shouldUpdateProp: (_b = props.shouldUpdate) == null ? void 0 : _b.call(props),
39
- keys: [...keys.current]
40
- });
41
- }
42
- return next;
43
- } : void 0
44
- );
45
- const { themeManager, state } = changedThemeState;
46
- const { theme, name, className } = state;
47
- if (!theme) {
48
- if (process.env.NODE_ENV === "development") {
49
- throw new Error(
50
- `No theme found given props ${JSON.stringify(
51
- props
52
- )}. Themes given to tamagui are: ${Object.keys(getConfig().themes)}`
53
- );
28
+ isServer ? void 0 : () => {
29
+ const next = props.shouldUpdate?.() ?? (keys.current.length > 0 ? !0 : void 0);
30
+ return process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile" && console.log(" \u{1F3A8} useTheme() shouldUpdate?", next, {
31
+ shouldUpdateProp: props.shouldUpdate?.(),
32
+ keys: [...keys.current]
33
+ }), next;
54
34
  }
55
- throw `\u274C 1`;
56
- }
57
- const themeProxied = useMemo(() => {
58
- return getThemeProxied(theme, themeManager, keys.current, props.debug);
59
- }, [theme, name, className, themeManager]);
60
- if (process.env.NODE_ENV === "development" && props.debug === "verbose") {
61
- console.groupCollapsed(" \u{1F539} useTheme =>", name);
62
- console.log("returning state", changedThemeState, "from props", props);
63
- console.groupEnd();
64
- }
65
- return [changedThemeState, themeProxied];
35
+ ), { themeManager, state } = changedThemeState, { theme, name, className } = state;
36
+ if (!theme)
37
+ throw process.env.NODE_ENV === "development" ? new Error(
38
+ `No theme found given props ${JSON.stringify(
39
+ props
40
+ )}. Themes given to tamagui are: ${Object.keys(getConfig().themes)}`
41
+ ) : "\u274C 1";
42
+ const themeProxied = useMemo(() => getThemeProxied(theme, themeManager, keys.current, props.debug), [theme, name, className, themeManager]);
43
+ return process.env.NODE_ENV === "development" && props.debug === "verbose" && (console.groupCollapsed(" \u{1F539} useTheme =>", name), console.log("returning state", changedThemeState, "from props", props), console.groupEnd()), [changedThemeState, themeProxied];
66
44
  };
67
45
  function getThemeProxied(theme, themeManager, keys, debug) {
68
46
  return createProxy(theme, {
69
47
  has(_, key) {
70
- if (Reflect.has(theme, key)) {
71
- return true;
72
- }
73
- if (typeof key === "string") {
74
- if (key[0] === "$")
75
- key = key.slice(1);
76
- return themeManager == null ? void 0 : themeManager.allKeys.has(key);
77
- }
48
+ if (Reflect.has(theme, key))
49
+ return !0;
50
+ if (typeof key == "string")
51
+ return key[0] === "$" && (key = key.slice(1)), themeManager?.allKeys.has(key);
78
52
  },
79
53
  get(_, key) {
80
- if (key === GetThemeUnwrapped) {
54
+ if (key === GetThemeUnwrapped)
81
55
  return theme;
82
- }
83
56
  if (
84
57
  // dont ask me, idk why but on hermes you can see that useTheme()[undefined] passes in STRING undefined to proxy
85
58
  // if someone is crazy enough to use "undefined" as a theme key then this not working is on them
86
- key !== "undefined" && typeof key === "string"
59
+ key !== "undefined" && typeof key == "string"
87
60
  ) {
88
- const keyString = key[0] === "$" ? key.slice(1) : key;
89
- const val = theme[keyString];
90
- if (val && typeof val === "object") {
61
+ const keyString = key[0] === "$" ? key.slice(1) : key, val = theme[keyString];
62
+ if (val && typeof val == "object")
91
63
  return new Proxy(val, {
92
64
  // when they touch the actual value we only track it
93
65
  // if its a variable (web), its ignored!
94
66
  get(_2, subkey) {
95
- if (keys) {
96
- if ((subkey === "val" || subkey === "get" && !isWeb) && !keys.includes(keyString)) {
97
- keys.push(keyString);
98
- if (process.env.NODE_ENV === "development" && debug) {
99
- console.log(` \u{1F3A8} useTheme() tracking new key: ${keyString}`);
100
- }
101
- }
102
- }
103
- if (subkey === "get") {
104
- return () => getVariable(val);
105
- }
106
- return Reflect.get(val, subkey);
67
+ return keys && (subkey === "val" || subkey === "get" && !isWeb) && !keys.includes(keyString) && (keys.push(keyString), process.env.NODE_ENV === "development" && debug && console.log(` \u{1F3A8} useTheme() tracking new key: ${keyString}`)), subkey === "get" ? () => getVariable(val) : Reflect.get(val, subkey);
107
68
  }
108
69
  });
109
- }
110
70
  }
111
71
  return Reflect.get(_, key);
112
72
  }
113
73
  });
114
74
  }
115
- const activeThemeManagers = /* @__PURE__ */ new Set();
116
- const useChangeThemeEffect = (props, root = false, keys, shouldUpdate) => {
75
+ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (props, root = !1, keys, shouldUpdate) => {
117
76
  const {
118
77
  // @ts-expect-error internal use only
119
78
  disable
120
- } = props;
121
- const parentManager = useContext(ThemeManagerContext);
79
+ } = props, parentManager = useContext(ThemeManagerContext);
122
80
  if (disable) {
123
81
  if (!parentManager)
124
- throw `\u274C 2`;
82
+ throw "\u274C 2";
125
83
  return {
126
- isNewTheme: false,
84
+ isNewTheme: !1,
127
85
  state: parentManager.state,
128
86
  themeManager: parentManager
129
87
  };
130
88
  }
131
- const [themeState, setThemeState] = useState(createState);
132
- const { state, mounted, isNewTheme, themeManager } = themeState;
133
- const isInversingOnMount = Boolean(!themeState.mounted && props.inverse);
134
- function getShouldUpdateTheme(manager = themeManager, nextState, prevState = state, forceShouldChange = false) {
135
- const forceUpdate = shouldUpdate == null ? void 0 : shouldUpdate();
136
- if (!forceShouldChange && forceUpdate === false)
89
+ const [themeState, setThemeState] = useState(createState), { state, mounted, isNewTheme, themeManager } = themeState, isInversingOnMount = !!(!themeState.mounted && props.inverse);
90
+ function getShouldUpdateTheme(manager = themeManager, nextState, prevState = state, forceShouldChange = !1) {
91
+ const forceUpdate = shouldUpdate?.();
92
+ if (!forceShouldChange && forceUpdate === !1)
137
93
  return;
138
94
  const next = nextState || manager.getState(props, parentManager);
139
95
  if (forceShouldChange)
140
96
  return next;
141
- if (!next)
142
- return;
143
- if (forceUpdate !== true && !manager.getStateShouldChange(next, prevState)) {
144
- return;
145
- }
146
- return next;
97
+ if (next && !(forceUpdate !== !0 && !manager.getStateShouldChange(next, prevState)))
98
+ return next;
147
99
  }
148
- if (!isServer) {
149
- useLayoutEffect(() => {
150
- if (props.inverse && !mounted) {
151
- setThemeState({ ...themeState, mounted: true });
152
- return;
153
- }
154
- if (isNewTheme && themeManager) {
155
- activeThemeManagers.add(themeManager);
156
- }
157
- if (isNewTheme || getShouldUpdateTheme(themeManager)) {
158
- setThemeState(createState);
159
- }
160
- const selfListenerDispose = themeManager.onChangeTheme((_a, _b, forced) => {
161
- if (forced) {
162
- setThemeState((prev) => createState(prev, true));
163
- }
164
- });
165
- const disposeChangeListener = parentManager == null ? void 0 : parentManager.onChangeTheme((name, manager) => {
166
- const force = shouldUpdate == null ? void 0 : shouldUpdate();
167
- const doUpdate = force ?? Boolean((keys == null ? void 0 : keys.length) || isNewTheme);
168
- if (process.env.NODE_ENV === "development" && props.debug) {
169
- console.log(` \u{1F538} onChange`, themeManager.id, {
170
- force,
171
- doUpdate,
172
- props,
173
- name,
174
- manager,
175
- keys
176
- });
177
- }
178
- if (doUpdate) {
179
- setThemeState(createState);
180
- }
181
- }, themeManager.id);
182
- return () => {
183
- selfListenerDispose();
184
- disposeChangeListener == null ? void 0 : disposeChangeListener();
185
- activeThemeManagers.delete(themeManager);
186
- };
187
- }, [
188
- themeManager,
189
- parentManager,
190
- isNewTheme,
191
- props.componentName,
192
- props.inverse,
193
- props.name,
194
- props.reset,
195
- mounted
196
- ]);
197
- if (process.env.NODE_ENV === "development" && props.debug !== "profile") {
198
- useEffect(() => {
199
- globalThis["TamaguiThemeManagers"] ??= /* @__PURE__ */ new Set();
200
- globalThis["TamaguiThemeManagers"].add(themeManager);
201
- return () => {
202
- globalThis["TamaguiThemeManagers"].delete(themeManager);
203
- };
204
- }, [themeManager]);
100
+ if (isServer || (useLayoutEffect(() => {
101
+ if (props.inverse && !mounted) {
102
+ setThemeState({ ...themeState, mounted: !0 });
103
+ return;
205
104
  }
206
- }
207
- if (isInversingOnMount) {
105
+ isNewTheme && themeManager && activeThemeManagers.add(themeManager), (isNewTheme || getShouldUpdateTheme(themeManager)) && setThemeState(createState);
106
+ const selfListenerDispose = themeManager.onChangeTheme((_a, _b, forced) => {
107
+ forced && setThemeState((prev) => createState(prev, !0));
108
+ }), disposeChangeListener = parentManager?.onChangeTheme((name, manager) => {
109
+ const force = shouldUpdate?.(), doUpdate = force ?? !!(keys?.length || isNewTheme);
110
+ process.env.NODE_ENV === "development" && props.debug && console.log(" \u{1F538} onChange", themeManager.id, {
111
+ force,
112
+ doUpdate,
113
+ props,
114
+ name,
115
+ manager,
116
+ keys
117
+ }), doUpdate && setThemeState(createState);
118
+ }, themeManager.id);
119
+ return () => {
120
+ selfListenerDispose(), disposeChangeListener?.(), activeThemeManagers.delete(themeManager);
121
+ };
122
+ }, [
123
+ themeManager,
124
+ parentManager,
125
+ isNewTheme,
126
+ props.componentName,
127
+ props.inverse,
128
+ props.name,
129
+ props.reset,
130
+ mounted
131
+ ]), process.env.NODE_ENV === "development" && props.debug !== "profile" && useEffect(() => (globalThis.TamaguiThemeManagers ??= /* @__PURE__ */ new Set(), globalThis.TamaguiThemeManagers.add(themeManager), () => {
132
+ globalThis.TamaguiThemeManagers.delete(themeManager);
133
+ }), [themeManager])), isInversingOnMount) {
208
134
  if (!parentManager)
209
135
  throw "\u274C 3";
210
136
  return {
211
- isNewTheme: false,
137
+ isNewTheme: !1,
212
138
  themeManager: parentManager,
213
139
  state: {
214
140
  ...parentManager.state,
@@ -221,70 +147,36 @@ const useChangeThemeEffect = (props, root = false, keys, shouldUpdate) => {
221
147
  isNewTheme,
222
148
  themeManager
223
149
  };
224
- function createState(prev, force = false) {
225
- if (prev && (shouldUpdate == null ? void 0 : shouldUpdate()) === false) {
150
+ function createState(prev, force = !1) {
151
+ if (prev && shouldUpdate?.() === !1)
226
152
  return prev;
227
- }
228
- let themeManager2 = parentManager;
229
- let state2;
230
- const hasThemeUpdatingProps = getHasThemeUpdatingProps(props);
231
- if (hasThemeUpdatingProps) {
232
- const getNewThemeManager = () => {
233
- return new ThemeManager(props, root ? "root" : parentManager);
234
- };
235
- if (prev == null ? void 0 : prev.themeManager) {
153
+ let themeManager2 = parentManager, state2;
154
+ if (getHasThemeUpdatingProps(props)) {
155
+ const getNewThemeManager = () => new ThemeManager(props, root ? "root" : parentManager);
156
+ if (prev?.themeManager) {
236
157
  themeManager2 = prev.themeManager;
237
- const forceChange = Boolean(keys == null ? void 0 : keys.length);
238
- const next = themeManager2.getState(props, parentManager);
239
- const nextState = getShouldUpdateTheme(
158
+ const forceChange = !!keys?.length, next = themeManager2.getState(props, parentManager), nextState = getShouldUpdateTheme(
240
159
  themeManager2,
241
160
  next,
242
161
  prev.state,
243
162
  forceChange
244
163
  );
245
- if (nextState) {
246
- state2 = nextState;
247
- if (!prev.isNewTheme || !isWeb) {
248
- themeManager2 = getNewThemeManager();
249
- } else {
250
- themeManager2.updateState(nextState);
251
- }
252
- } else {
253
- if (prev.isNewTheme) {
254
- if (parentManager && !next) {
255
- themeManager2 = parentManager;
256
- }
257
- }
258
- }
259
- } else {
260
- themeManager2 = getNewThemeManager();
261
- state2 = { ...themeManager2.state };
262
- }
164
+ nextState ? (state2 = nextState, !prev.isNewTheme || !isWeb ? themeManager2 = getNewThemeManager() : themeManager2.updateState(nextState)) : prev.isNewTheme && parentManager && !next && (themeManager2 = parentManager);
165
+ } else
166
+ themeManager2 = getNewThemeManager(), state2 = { ...themeManager2.state };
263
167
  }
264
- const isNewTheme2 = Boolean(themeManager2 !== parentManager || props.inverse);
265
- const mounted2 = !props.inverse ? true : root || (prev == null ? void 0 : prev.mounted);
266
- if (!state2) {
267
- if (isNewTheme2) {
268
- state2 = themeManager2.state;
269
- } else {
270
- state2 = parentManager.state;
271
- themeManager2 = parentManager;
272
- }
273
- }
274
- if (!force && state2.name === (prev == null ? void 0 : prev.state.name)) {
168
+ const isNewTheme2 = !!(themeManager2 !== parentManager || props.inverse), mounted2 = props.inverse ? root || prev?.mounted : !0;
169
+ if (state2 || (isNewTheme2 ? state2 = themeManager2.state : (state2 = parentManager.state, themeManager2 = parentManager)), !force && state2.name === prev?.state.name)
275
170
  return prev;
276
- }
277
171
  const response = {
278
172
  state: state2,
279
173
  themeManager: themeManager2,
280
174
  isNewTheme: isNewTheme2,
281
175
  mounted: mounted2
282
176
  };
283
- if (process.env.NODE_ENV === "development" && props["debug"] && isClient) {
177
+ if (process.env.NODE_ENV === "development" && props.debug && isClient) {
284
178
  console.groupCollapsed(` \u{1F537} ${themeManager2.id} useChangeThemeEffect createState`);
285
- const parentState = { ...parentManager == null ? void 0 : parentManager.state };
286
- const parentId = parentManager == null ? void 0 : parentManager.id;
287
- const themeManagerState = { ...themeManager2.state };
179
+ const parentState = { ...parentManager?.state }, parentId = parentManager?.id, themeManagerState = { ...themeManager2.state };
288
180
  console.log({
289
181
  props,
290
182
  parentState,
@@ -293,8 +185,7 @@ const useChangeThemeEffect = (props, root = false, keys, shouldUpdate) => {
293
185
  prev,
294
186
  response,
295
187
  themeManagerState
296
- });
297
- console.groupEnd();
188
+ }), console.groupEnd();
298
189
  }
299
190
  return response;
300
191
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useTheme.tsx"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["_", "themeManager", "state", "isNewTheme", "mounted"]
6
6
  }
@@ -2,20 +2,14 @@ import { useIsomorphicLayoutEffect } from "@tamagui/constants";
2
2
  import { useContext, useState } from "react";
3
3
  import { ThemeManagerContext } from "../helpers/ThemeManagerContext";
4
4
  function useThemeName(opts) {
5
- const manager = useContext(ThemeManagerContext);
6
- const [name, setName] = useState((manager == null ? void 0 : manager.state.name) || "");
7
- useIsomorphicLayoutEffect(() => {
8
- if (!manager)
9
- return;
10
- setName(manager.state.name);
11
- return manager.onChangeTheme((next, manager2) => {
12
- const name2 = (opts == null ? void 0 : opts.parent) ? manager2.state.parentName || next : next;
13
- if (!name2)
14
- return;
15
- setName(name2);
16
- });
17
- }, [manager == null ? void 0 : manager.state.name]);
18
- return name;
5
+ const manager = useContext(ThemeManagerContext), [name, setName] = useState(manager?.state.name || "");
6
+ return useIsomorphicLayoutEffect(() => {
7
+ if (manager)
8
+ return setName(manager.state.name), manager.onChangeTheme((next, manager2) => {
9
+ const name2 = opts?.parent && manager2.state.parentName || next;
10
+ name2 && setName(name2);
11
+ });
12
+ }, [manager?.state.name]), name;
19
13
  }
20
14
  export {
21
15
  useThemeName
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useThemeName.tsx"],
4
- "mappings": "AAAA,SAAS,iCAAiC;AAC1C,SAAS,YAAY,gBAAgB;AAErC,SAAS,2BAA2B;AAG7B,SAAS,aAAa,MAAqC;AAChE,QAAM,UAAU,WAAW,mBAAmB;AAC9C,QAAM,CAAC,MAAM,OAAO,IAAI,UAAS,mCAAS,MAAM,SAAQ,EAAE;AAE1D,4BAA0B,MAAM;AAC9B,QAAI,CAAC;AAAS;AACd,YAAQ,QAAQ,MAAM,IAAI;AAC1B,WAAO,QAAQ,cAAc,CAAC,MAAMA,aAAY;AAC9C,YAAMC,SAAO,6BAAM,UAASD,SAAQ,MAAM,cAAc,OAAO;AAC/D,UAAI,CAACC;AAAM;AACX,cAAQA,KAAI;AAAA,IACd,CAAC;AAAA,EACH,GAAG,CAAC,mCAAS,MAAM,IAAI,CAAC;AAExB,SAAO;AACT;",
4
+ "mappings": "AAAA,SAAS,iCAAiC;AAC1C,SAAS,YAAY,gBAAgB;AAErC,SAAS,2BAA2B;AAG7B,SAAS,aAAa,MAAqC;AAChE,QAAM,UAAU,WAAW,mBAAmB,GACxC,CAAC,MAAM,OAAO,IAAI,SAAS,SAAS,MAAM,QAAQ,EAAE;AAE1D,mCAA0B,MAAM;AAC9B,QAAK;AACL,qBAAQ,QAAQ,MAAM,IAAI,GACnB,QAAQ,cAAc,CAAC,MAAMA,aAAY;AAC9C,cAAMC,QAAO,MAAM,UAASD,SAAQ,MAAM,cAAc;AACxD,QAAKC,SACL,QAAQA,KAAI;AAAA,MACd,CAAC;AAAA,EACH,GAAG,CAAC,SAAS,MAAM,IAAI,CAAC,GAEjB;AACT;",
5
5
  "names": ["manager", "name"]
6
6
  }
package/dist/esm/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import "@tamagui/polyfill-dev";
1
2
  export * from "./Tamagui";
2
3
  export * from "./createComponent";
3
4
  export * from "./createShorthands";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AAEd;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,cAAc;AAEd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;",
4
+ "mappings": "AAAA,OAAO;AAEP,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AAEd;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,cAAc;AAEd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;",
5
5
  "names": []
6
6
  }
@@ -1,12 +1,8 @@
1
- const stylesheets = {};
2
- const injectStyles = ({ filePath, css }) => {
1
+ const stylesheets = {}, injectStyles = ({ filePath, css }) => {
3
2
  let stylesheet = stylesheets[filePath];
4
3
  if (!stylesheet) {
5
4
  const styleEl = document.createElement("style");
6
- styleEl.setAttribute("data-file", filePath);
7
- styleEl.setAttribute("type", "text/css");
8
- stylesheet = stylesheets[filePath] = styleEl;
9
- document.head.appendChild(styleEl);
5
+ styleEl.setAttribute("data-file", filePath), styleEl.setAttribute("type", "text/css"), stylesheet = stylesheets[filePath] = styleEl, document.head.appendChild(styleEl);
10
6
  }
11
7
  stylesheet.innerHTML = css;
12
8
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/inject-styles.ts"],
4
- "mappings": "AAEA,MAAM,cAA2C,CAAC;AAO3C,MAAM,eAAe,CAAC,EAAE,UAAU,IAAI,MAA2B;AACtE,MAAI,aAAa,YAAY,QAAQ;AACrC,MAAI,CAAC,YAAY;AACf,UAAM,UAAU,SAAS,cAAc,OAAO;AAC9C,YAAQ,aAAa,aAAa,QAAQ;AAC1C,YAAQ,aAAa,QAAQ,UAAU;AACvC,iBAAa,YAAY,QAAQ,IAAI;AACrC,aAAS,KAAK,YAAY,OAAO;AAAA,EACnC;AACA,aAAW,YAAY;AACzB;",
4
+ "mappings": "AAEA,MAAM,cAA2C,CAAC,GAOrC,eAAe,CAAC,EAAE,UAAU,IAAI,MAA2B;AACtE,MAAI,aAAa,YAAY,QAAQ;AACrC,MAAI,CAAC,YAAY;AACf,UAAM,UAAU,SAAS,cAAc,OAAO;AAC9C,YAAQ,aAAa,aAAa,QAAQ,GAC1C,QAAQ,aAAa,QAAQ,UAAU,GACvC,aAAa,YAAY,QAAQ,IAAI,SACrC,SAAS,KAAK,YAAY,OAAO;AAAA,EACnC;AACA,aAAW,YAAY;AACzB;",
5
5
  "names": []
6
6
  }