@tamagui/core 1.0.1-beta.99 → 1.0.1-rc.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 (755) hide show
  1. package/dist/cjs/Tamagui.js +12 -6
  2. package/dist/cjs/Tamagui.js.map +2 -2
  3. package/dist/cjs/addTheme.js +77 -0
  4. package/dist/cjs/addTheme.js.map +7 -0
  5. package/dist/cjs/{conf.js → config.js} +25 -13
  6. package/dist/cjs/config.js.map +7 -0
  7. package/dist/cjs/constants/constants.js +16 -23
  8. package/dist/cjs/constants/constants.js.map +2 -2
  9. package/dist/cjs/constants/isDevTools.js +37 -0
  10. package/dist/cjs/constants/isDevTools.js.map +7 -0
  11. package/dist/cjs/constants/platform.js +16 -9
  12. package/dist/cjs/constants/platform.js.map +2 -2
  13. package/dist/cjs/constants/platform.native.js +62 -0
  14. package/dist/cjs/constants/platform.native.js.map +7 -0
  15. package/dist/cjs/contexts/ButtonInsideButtonContext.js +1 -0
  16. package/dist/cjs/contexts/ButtonInsideButtonContext.js.map +1 -1
  17. package/dist/cjs/contexts/ButtonNestingContext.js +30 -0
  18. package/dist/cjs/contexts/ButtonNestingContext.js.map +7 -0
  19. package/dist/cjs/contexts/FontLanguageContext.js +30 -0
  20. package/dist/cjs/contexts/FontLanguageContext.js.map +7 -0
  21. package/dist/cjs/contexts/TextAncestorContext.js +30 -0
  22. package/dist/cjs/contexts/TextAncestorContext.js.map +7 -0
  23. package/dist/cjs/{ThemeContext.js → contexts/ThemeContext.js} +1 -0
  24. package/dist/cjs/contexts/ThemeContext.js.map +7 -0
  25. package/dist/cjs/createComponent.js +583 -644
  26. package/dist/cjs/createComponent.js.map +3 -3
  27. package/dist/cjs/createFont.js +39 -19
  28. package/dist/cjs/createFont.js.map +2 -2
  29. package/dist/cjs/createFont.test.js +125 -0
  30. package/dist/cjs/createFont.test.js.map +7 -0
  31. package/dist/cjs/createShorthands.js +1 -0
  32. package/dist/cjs/createShorthands.js.map +2 -2
  33. package/dist/cjs/createTamagui.js +98 -193
  34. package/dist/cjs/createTamagui.js.map +3 -3
  35. package/dist/cjs/createTheme.js +1 -0
  36. package/dist/cjs/createTheme.js.map +2 -2
  37. package/dist/cjs/createTokens.js +1 -4
  38. package/dist/cjs/createTokens.js.map +2 -2
  39. package/dist/cjs/createTokens.test.js +27 -0
  40. package/dist/cjs/createTokens.test.js.map +7 -0
  41. package/dist/cjs/createVariable.js +36 -40
  42. package/dist/cjs/createVariable.js.map +2 -2
  43. package/dist/cjs/createVariable.test.js +7 -0
  44. package/dist/cjs/createVariable.test.js.map +7 -0
  45. package/dist/cjs/createVariables.js +15 -19
  46. package/dist/cjs/createVariables.js.map +2 -2
  47. package/dist/cjs/helpers/RNComponents.js +12 -11
  48. package/dist/cjs/helpers/RNComponents.js.map +2 -2
  49. package/dist/cjs/helpers/ThemeManager.js +230 -0
  50. package/dist/cjs/helpers/ThemeManager.js.map +7 -0
  51. package/dist/cjs/helpers/ThemeManager.test.js +465 -0
  52. package/dist/cjs/helpers/ThemeManager.test.js.map +7 -0
  53. package/dist/cjs/helpers/ThemeManagerContext.js +30 -0
  54. package/dist/cjs/helpers/ThemeManagerContext.js.map +7 -0
  55. package/dist/cjs/helpers/areEqualSets.js +1 -0
  56. package/dist/cjs/helpers/areEqualSets.js.map +1 -1
  57. package/dist/cjs/helpers/assignNativePropsToWeb.js +1 -0
  58. package/dist/cjs/helpers/assignNativePropsToWeb.js.map +1 -1
  59. package/dist/cjs/helpers/assignNativePropsToWeb.native.js +1 -0
  60. package/dist/cjs/helpers/assignNativePropsToWeb.native.js.map +1 -1
  61. package/dist/cjs/helpers/cache.js +43 -0
  62. package/dist/cjs/helpers/cache.js.map +7 -0
  63. package/dist/cjs/helpers/calc.js +1 -0
  64. package/dist/cjs/helpers/calc.js.map +3 -3
  65. package/dist/cjs/helpers/createMediaStyle.js +23 -9
  66. package/dist/cjs/helpers/createMediaStyle.js.map +2 -2
  67. package/dist/cjs/helpers/createPropMapper.js +185 -57
  68. package/dist/cjs/helpers/createPropMapper.js.map +2 -2
  69. package/dist/cjs/helpers/createProxy.js +43 -0
  70. package/dist/cjs/helpers/createProxy.js.map +7 -0
  71. package/dist/cjs/helpers/createShallowUpdate.js +13 -23
  72. package/dist/cjs/helpers/createShallowUpdate.js.map +2 -2
  73. package/dist/cjs/helpers/expandStyle.js +9 -30
  74. package/dist/cjs/helpers/expandStyle.js.map +3 -3
  75. package/dist/cjs/helpers/expandStyles.js +26 -37
  76. package/dist/cjs/helpers/expandStyles.js.map +2 -2
  77. package/dist/cjs/helpers/extendStaticConfig.js +35 -34
  78. package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
  79. package/dist/cjs/helpers/fixNativeShadow.js +1 -0
  80. package/dist/cjs/helpers/fixNativeShadow.js.map +1 -1
  81. package/dist/cjs/helpers/getAnimationDriver.js +32 -0
  82. package/dist/cjs/helpers/getAnimationDriver.js.map +7 -0
  83. package/dist/cjs/helpers/getBoundingClientRect.js +37 -0
  84. package/dist/cjs/helpers/getBoundingClientRect.js.map +7 -0
  85. package/dist/cjs/helpers/getExpandedShorthands.js +4 -3
  86. package/dist/cjs/helpers/getExpandedShorthands.js.map +2 -2
  87. package/dist/cjs/helpers/getFont.js +7 -2
  88. package/dist/cjs/helpers/getFont.js.map +2 -2
  89. package/dist/cjs/helpers/getFontLanguage.js +29 -0
  90. package/dist/cjs/helpers/getFontLanguage.js.map +7 -0
  91. package/dist/cjs/helpers/getRect.js +36 -0
  92. package/dist/cjs/helpers/getRect.js.map +7 -0
  93. package/dist/cjs/helpers/getSize.js +3 -2
  94. package/dist/cjs/helpers/getSize.js.map +2 -2
  95. package/dist/cjs/helpers/getSplitStyles.js +538 -228
  96. package/dist/cjs/helpers/getSplitStyles.js.map +3 -3
  97. package/dist/cjs/helpers/getStackSize.js +1 -0
  98. package/dist/cjs/helpers/getStackSize.js.map +1 -1
  99. package/dist/cjs/helpers/getStylesAtomic.js +53 -65
  100. package/dist/cjs/helpers/getStylesAtomic.js.map +2 -2
  101. package/dist/cjs/helpers/getStylesAtomic.native.js +1 -0
  102. package/dist/cjs/helpers/getStylesAtomic.native.js.map +2 -2
  103. package/dist/cjs/helpers/getThemeCSSRules.js +107 -0
  104. package/dist/cjs/helpers/getThemeCSSRules.js.map +7 -0
  105. package/dist/cjs/helpers/getThemeCSSRules.native.js +31 -0
  106. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +7 -0
  107. package/dist/cjs/helpers/getVariantExtras.js +50 -7
  108. package/dist/cjs/helpers/getVariantExtras.js.map +2 -2
  109. package/dist/cjs/helpers/insertStyleRule.js +53 -28
  110. package/dist/cjs/helpers/insertStyleRule.js.map +3 -3
  111. package/dist/cjs/helpers/isObj.js +1 -0
  112. package/dist/cjs/helpers/isObj.js.map +1 -1
  113. package/dist/cjs/helpers/isTamaguiComponent.js +1 -0
  114. package/dist/cjs/helpers/isTamaguiComponent.js.map +2 -2
  115. package/dist/cjs/helpers/isTamaguiElement.js +1 -0
  116. package/dist/cjs/helpers/isTamaguiElement.js.map +2 -2
  117. package/dist/cjs/helpers/matchMedia.js +7 -5
  118. package/dist/cjs/helpers/matchMedia.js.map +2 -2
  119. package/dist/cjs/helpers/matchMedia.native.js +5 -1
  120. package/dist/cjs/helpers/matchMedia.native.js.map +2 -2
  121. package/dist/cjs/helpers/mergeProps.js +19 -14
  122. package/dist/cjs/helpers/mergeProps.js.map +2 -2
  123. package/dist/cjs/helpers/mergeTransform.js +12 -8
  124. package/dist/cjs/helpers/mergeTransform.js.map +2 -2
  125. package/dist/cjs/helpers/normalizeColor.js +5 -1
  126. package/dist/cjs/helpers/normalizeColor.js.map +2 -2
  127. package/dist/cjs/helpers/normalizeValueWithProperty.js +47 -5
  128. package/dist/cjs/helpers/normalizeValueWithProperty.js.map +2 -2
  129. package/dist/cjs/helpers/proxyThemeVariables.js +3 -1
  130. package/dist/cjs/helpers/proxyThemeVariables.js.map +2 -2
  131. package/dist/cjs/helpers/pseudoDescriptors.js +12 -0
  132. package/dist/cjs/helpers/pseudoDescriptors.js.map +2 -2
  133. package/dist/cjs/helpers/registerCSSVariable.js +8 -8
  134. package/dist/cjs/helpers/registerCSSVariable.js.map +2 -2
  135. package/dist/cjs/{constants/rnw.js → helpers/startTransition.js} +13 -9
  136. package/dist/cjs/helpers/startTransition.js.map +7 -0
  137. package/dist/cjs/helpers/themeable.js +17 -43
  138. package/dist/cjs/helpers/themeable.js.map +3 -3
  139. package/dist/cjs/helpers/themes.js +79 -0
  140. package/dist/cjs/helpers/themes.js.map +7 -0
  141. package/dist/cjs/{constants/rnw.native.js → helpers/timer.js} +14 -7
  142. package/dist/cjs/helpers/timer.js.map +7 -0
  143. package/dist/cjs/helpers/useShallowSetState.js +49 -0
  144. package/dist/cjs/helpers/useShallowSetState.js.map +7 -0
  145. package/dist/cjs/helpers/validate.js +1 -124
  146. package/dist/cjs/helpers/validate.js.map +3 -3
  147. package/dist/cjs/helpers/withStaticProperties.js +1 -0
  148. package/dist/cjs/helpers/withStaticProperties.js.map +1 -1
  149. package/dist/cjs/hooks/getThemeUnwrapped.js +37 -0
  150. package/dist/cjs/hooks/getThemeUnwrapped.js.map +7 -0
  151. package/dist/cjs/hooks/useConstant.js +4 -0
  152. package/dist/cjs/hooks/useConstant.js.map +2 -2
  153. package/dist/cjs/hooks/useElementLayout.js +84 -0
  154. package/dist/cjs/hooks/useElementLayout.js.map +7 -0
  155. package/dist/cjs/hooks/useId.js +3 -32
  156. package/dist/cjs/hooks/useId.js.map +2 -2
  157. package/dist/cjs/hooks/useIsMounted.js +1 -0
  158. package/dist/cjs/hooks/useIsMounted.js.map +1 -1
  159. package/dist/cjs/hooks/useIsSSR.js +46 -0
  160. package/dist/cjs/hooks/useIsSSR.js.map +7 -0
  161. package/dist/cjs/hooks/useIsTouchDevice.js +4 -9
  162. package/dist/cjs/hooks/useIsTouchDevice.js.map +2 -2
  163. package/dist/cjs/hooks/useMedia.js +165 -120
  164. package/dist/cjs/hooks/useMedia.js.map +3 -3
  165. package/dist/cjs/hooks/usePressable.js +2 -15
  166. package/dist/cjs/hooks/usePressable.js.map +1 -1
  167. package/dist/cjs/hooks/useSafeRef.js +58 -0
  168. package/dist/cjs/hooks/useSafeRef.js.map +7 -0
  169. package/dist/cjs/hooks/useServerHooks.js +36 -0
  170. package/dist/cjs/hooks/useServerHooks.js.map +7 -0
  171. package/dist/cjs/hooks/useTheme.js +182 -163
  172. package/dist/cjs/hooks/useTheme.js.map +3 -3
  173. package/dist/cjs/hooks/useThemeName.js +52 -0
  174. package/dist/cjs/hooks/useThemeName.js.map +7 -0
  175. package/dist/cjs/hooks/useUnmountEffect.js +1 -0
  176. package/dist/cjs/hooks/useUnmountEffect.js.map +1 -1
  177. package/dist/cjs/index.js +41 -30
  178. package/dist/cjs/index.js.map +2 -2
  179. package/dist/cjs/inject-styles.js +40 -0
  180. package/dist/cjs/inject-styles.js.map +7 -0
  181. package/dist/cjs/injectStyles.js +40 -0
  182. package/dist/cjs/injectStyles.js.map +7 -0
  183. package/dist/cjs/insertFont.js +19 -15
  184. package/dist/cjs/insertFont.js.map +2 -2
  185. package/dist/cjs/setupReactNative.js +50 -0
  186. package/dist/cjs/setupReactNative.js.map +7 -0
  187. package/dist/cjs/static.js +2 -17
  188. package/dist/cjs/static.js.map +2 -2
  189. package/dist/cjs/styled.js +30 -49
  190. package/dist/cjs/styled.js.map +2 -2
  191. package/dist/cjs/types-rnw.js +1 -0
  192. package/dist/cjs/types-rnw.js.map +1 -1
  193. package/dist/cjs/types.js +1 -0
  194. package/dist/cjs/types.js.map +2 -2
  195. package/dist/cjs/{helpers/cssHash.js → updateTheme.js} +23 -26
  196. package/dist/cjs/updateTheme.js.map +7 -0
  197. package/dist/cjs/{Pressability.js → vendor/Pressability.js} +6 -2
  198. package/dist/cjs/vendor/Pressability.js.map +7 -0
  199. package/dist/cjs/{Pressability.native.js → vendor/Pressability.native.js} +6 -2
  200. package/dist/cjs/vendor/Pressability.native.js.map +7 -0
  201. package/dist/cjs/views/FontLanguage.js +38 -0
  202. package/dist/cjs/views/FontLanguage.js.map +7 -0
  203. package/dist/cjs/views/FontLanguage.native.js +38 -0
  204. package/dist/cjs/views/FontLanguage.native.js.map +7 -0
  205. package/dist/cjs/{helpers/nativeGestureHandler.native.js → views/FontLanguage.types.js} +4 -5
  206. package/dist/cjs/views/FontLanguage.types.js.map +7 -0
  207. package/dist/cjs/views/Slot.js +49 -52
  208. package/dist/cjs/views/Slot.js.map +2 -2
  209. package/dist/cjs/views/Stack.js +4 -19
  210. package/dist/cjs/views/Stack.js.map +2 -2
  211. package/dist/cjs/views/TamaguiProvider.js +83 -0
  212. package/dist/cjs/views/TamaguiProvider.js.map +7 -0
  213. package/dist/cjs/views/Text.js +32 -29
  214. package/dist/cjs/views/Text.js.map +2 -2
  215. package/dist/cjs/views/Theme.js +55 -23
  216. package/dist/cjs/views/Theme.js.map +3 -3
  217. package/dist/cjs/views/ThemeInverse.js +22 -20
  218. package/dist/cjs/views/ThemeInverse.js.map +2 -2
  219. package/dist/cjs/views/ThemeProvider.js +14 -27
  220. package/dist/cjs/views/ThemeProvider.js.map +3 -3
  221. package/dist/cjs/views/ThemeReset.js +11 -5
  222. package/dist/cjs/views/ThemeReset.js.map +3 -3
  223. package/dist/esm/Tamagui.js +7 -5
  224. package/dist/esm/Tamagui.js.map +2 -2
  225. package/dist/esm/addTheme.js +53 -0
  226. package/dist/esm/addTheme.js.map +7 -0
  227. package/dist/esm/{conf.js → config.js} +18 -8
  228. package/dist/esm/config.js.map +7 -0
  229. package/dist/esm/constants/constants.js +13 -24
  230. package/dist/esm/constants/constants.js.map +2 -2
  231. package/dist/esm/constants/isDevTools.js +13 -0
  232. package/dist/esm/constants/isDevTools.js.map +7 -0
  233. package/dist/esm/constants/platform.js +11 -7
  234. package/dist/esm/constants/platform.js.map +2 -2
  235. package/dist/esm/constants/platform.native.js +28 -0
  236. package/dist/esm/constants/platform.native.js.map +7 -0
  237. package/dist/esm/contexts/ButtonInsideButtonContext.js +0 -0
  238. package/dist/esm/contexts/ButtonInsideButtonContext.js.map +1 -1
  239. package/dist/esm/contexts/ButtonNestingContext.js +6 -0
  240. package/dist/esm/contexts/ButtonNestingContext.js.map +7 -0
  241. package/dist/esm/contexts/FontLanguageContext.js +6 -0
  242. package/dist/esm/contexts/FontLanguageContext.js.map +7 -0
  243. package/dist/esm/contexts/TextAncestorContext.js +6 -0
  244. package/dist/esm/contexts/TextAncestorContext.js.map +7 -0
  245. package/dist/esm/{ThemeContext.js → contexts/ThemeContext.js} +0 -0
  246. package/dist/esm/contexts/ThemeContext.js.map +7 -0
  247. package/dist/esm/createComponent.js +583 -648
  248. package/dist/esm/createComponent.js.map +3 -3
  249. package/dist/esm/createFont.js +38 -19
  250. package/dist/esm/createFont.js.map +2 -2
  251. package/dist/esm/createFont.test.js +124 -0
  252. package/dist/esm/createFont.test.js.map +7 -0
  253. package/dist/esm/createShorthands.js +0 -0
  254. package/dist/esm/createShorthands.js.map +2 -2
  255. package/dist/esm/createTamagui.js +95 -192
  256. package/dist/esm/createTamagui.js.map +3 -3
  257. package/dist/esm/createTheme.js +0 -0
  258. package/dist/esm/createTheme.js.map +2 -2
  259. package/dist/esm/createTokens.js +0 -4
  260. package/dist/esm/createTokens.js.map +2 -2
  261. package/dist/esm/createTokens.test.js +26 -0
  262. package/dist/esm/createTokens.test.js.map +7 -0
  263. package/dist/esm/createVariable.js +32 -38
  264. package/dist/esm/createVariable.js.map +2 -2
  265. package/dist/esm/createVariable.test.js +6 -0
  266. package/dist/esm/createVariable.test.js.map +7 -0
  267. package/dist/esm/createVariables.js +14 -19
  268. package/dist/esm/createVariables.js.map +2 -2
  269. package/dist/esm/helpers/RNComponents.js +11 -8
  270. package/dist/esm/helpers/RNComponents.js.map +2 -2
  271. package/dist/esm/helpers/ThemeManager.js +186 -0
  272. package/dist/esm/helpers/ThemeManager.js.map +7 -0
  273. package/dist/esm/helpers/ThemeManager.test.js +464 -0
  274. package/dist/esm/helpers/ThemeManager.test.js.map +7 -0
  275. package/dist/esm/helpers/ThemeManagerContext.js +6 -0
  276. package/dist/esm/helpers/ThemeManagerContext.js.map +7 -0
  277. package/dist/esm/helpers/areEqualSets.js +0 -0
  278. package/dist/esm/helpers/areEqualSets.js.map +0 -0
  279. package/dist/esm/helpers/assignNativePropsToWeb.js +0 -0
  280. package/dist/esm/helpers/assignNativePropsToWeb.js.map +1 -1
  281. package/dist/esm/helpers/assignNativePropsToWeb.native.js +0 -0
  282. package/dist/esm/helpers/assignNativePropsToWeb.native.js.map +1 -1
  283. package/dist/esm/helpers/cache.js +18 -0
  284. package/dist/esm/helpers/cache.js.map +7 -0
  285. package/dist/esm/helpers/calc.js +0 -0
  286. package/dist/esm/helpers/calc.js.map +3 -3
  287. package/dist/esm/helpers/createMediaStyle.js +22 -9
  288. package/dist/esm/helpers/createMediaStyle.js.map +2 -2
  289. package/dist/esm/helpers/createPropMapper.js +180 -55
  290. package/dist/esm/helpers/createPropMapper.js.map +2 -2
  291. package/dist/esm/helpers/createProxy.js +19 -0
  292. package/dist/esm/helpers/createProxy.js.map +7 -0
  293. package/dist/esm/helpers/createShallowUpdate.js +12 -25
  294. package/dist/esm/helpers/createShallowUpdate.js.map +2 -2
  295. package/dist/esm/helpers/expandStyle.js +8 -32
  296. package/dist/esm/helpers/expandStyle.js.map +3 -3
  297. package/dist/esm/helpers/expandStyles.js +25 -39
  298. package/dist/esm/helpers/expandStyles.js.map +2 -2
  299. package/dist/esm/helpers/extendStaticConfig.js +34 -36
  300. package/dist/esm/helpers/extendStaticConfig.js.map +2 -2
  301. package/dist/esm/helpers/fixNativeShadow.js +0 -0
  302. package/dist/esm/helpers/fixNativeShadow.js.map +0 -0
  303. package/dist/esm/helpers/getAnimationDriver.js +8 -0
  304. package/dist/esm/helpers/getAnimationDriver.js.map +7 -0
  305. package/dist/esm/helpers/getBoundingClientRect.js +13 -0
  306. package/dist/esm/helpers/getBoundingClientRect.js.map +7 -0
  307. package/dist/esm/helpers/getExpandedShorthands.js +2 -2
  308. package/dist/esm/helpers/getExpandedShorthands.js.map +2 -2
  309. package/dist/esm/helpers/getFont.js +6 -2
  310. package/dist/esm/helpers/getFont.js.map +2 -2
  311. package/dist/esm/helpers/getFontLanguage.js +5 -0
  312. package/dist/esm/helpers/getFontLanguage.js.map +7 -0
  313. package/dist/esm/helpers/getRect.js +12 -0
  314. package/dist/esm/helpers/getRect.js.map +7 -0
  315. package/dist/esm/helpers/getSize.js +2 -2
  316. package/dist/esm/helpers/getSize.js.map +2 -2
  317. package/dist/esm/helpers/getSplitStyles.js +551 -229
  318. package/dist/esm/helpers/getSplitStyles.js.map +3 -3
  319. package/dist/esm/helpers/getStackSize.js +0 -0
  320. package/dist/esm/helpers/getStackSize.js.map +1 -1
  321. package/dist/esm/helpers/getStylesAtomic.js +49 -59
  322. package/dist/esm/helpers/getStylesAtomic.js.map +2 -2
  323. package/dist/esm/helpers/getStylesAtomic.native.js +0 -0
  324. package/dist/esm/helpers/getStylesAtomic.native.js.map +2 -2
  325. package/dist/esm/helpers/getThemeCSSRules.js +83 -0
  326. package/dist/esm/helpers/getThemeCSSRules.js.map +7 -0
  327. package/dist/esm/helpers/getThemeCSSRules.native.js +7 -0
  328. package/dist/esm/helpers/getThemeCSSRules.native.js.map +7 -0
  329. package/dist/esm/helpers/getVariantExtras.js +47 -6
  330. package/dist/esm/helpers/getVariantExtras.js.map +2 -2
  331. package/dist/esm/helpers/insertStyleRule.js +48 -25
  332. package/dist/esm/helpers/insertStyleRule.js.map +3 -3
  333. package/dist/esm/helpers/isObj.js +0 -0
  334. package/dist/esm/helpers/isObj.js.map +0 -0
  335. package/dist/esm/helpers/isTamaguiComponent.js +0 -0
  336. package/dist/esm/helpers/isTamaguiComponent.js.map +2 -2
  337. package/dist/esm/helpers/isTamaguiElement.js +0 -0
  338. package/dist/esm/helpers/isTamaguiElement.js.map +2 -2
  339. package/dist/esm/helpers/matchMedia.js +6 -5
  340. package/dist/esm/helpers/matchMedia.js.map +2 -2
  341. package/dist/esm/helpers/matchMedia.native.js +0 -0
  342. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  343. package/dist/esm/helpers/mergeProps.js +18 -14
  344. package/dist/esm/helpers/mergeProps.js.map +2 -2
  345. package/dist/esm/helpers/mergeTransform.js +8 -6
  346. package/dist/esm/helpers/mergeTransform.js.map +2 -2
  347. package/dist/esm/helpers/normalizeColor.js +0 -0
  348. package/dist/esm/helpers/normalizeColor.js.map +1 -1
  349. package/dist/esm/helpers/normalizeValueWithProperty.js +44 -4
  350. package/dist/esm/helpers/normalizeValueWithProperty.js.map +2 -2
  351. package/dist/esm/helpers/proxyThemeVariables.js +2 -1
  352. package/dist/esm/helpers/proxyThemeVariables.js.map +2 -2
  353. package/dist/esm/helpers/pseudoDescriptors.js +11 -0
  354. package/dist/esm/helpers/pseudoDescriptors.js.map +2 -2
  355. package/dist/esm/helpers/registerCSSVariable.js +5 -6
  356. package/dist/esm/helpers/registerCSSVariable.js.map +2 -2
  357. package/dist/esm/helpers/startTransition.js +6 -0
  358. package/dist/esm/helpers/startTransition.js.map +7 -0
  359. package/dist/esm/helpers/themeable.js +12 -44
  360. package/dist/esm/helpers/themeable.js.map +2 -2
  361. package/dist/esm/helpers/themes.js +54 -0
  362. package/dist/esm/helpers/themes.js.map +7 -0
  363. package/dist/esm/helpers/timer.js +11 -0
  364. package/dist/esm/helpers/timer.js.map +7 -0
  365. package/dist/esm/helpers/useShallowSetState.js +25 -0
  366. package/dist/esm/helpers/useShallowSetState.js.map +7 -0
  367. package/dist/esm/helpers/validate.js +0 -98
  368. package/dist/esm/helpers/validate.js.map +3 -3
  369. package/dist/esm/helpers/withStaticProperties.js +0 -0
  370. package/dist/esm/helpers/withStaticProperties.js.map +0 -0
  371. package/dist/esm/hooks/getThemeUnwrapped.js +12 -0
  372. package/dist/esm/hooks/getThemeUnwrapped.js.map +7 -0
  373. package/dist/esm/hooks/useConstant.js +4 -1
  374. package/dist/esm/hooks/useConstant.js.map +2 -2
  375. package/dist/esm/hooks/useElementLayout.js +59 -0
  376. package/dist/esm/hooks/useElementLayout.js.map +7 -0
  377. package/dist/esm/hooks/useId.js +1 -28
  378. package/dist/esm/hooks/useId.js.map +2 -2
  379. package/dist/esm/hooks/useIsMounted.js +0 -0
  380. package/dist/esm/hooks/useIsMounted.js.map +1 -1
  381. package/dist/esm/hooks/useIsSSR.js +22 -0
  382. package/dist/esm/hooks/useIsSSR.js.map +7 -0
  383. package/dist/esm/hooks/useIsTouchDevice.js +3 -9
  384. package/dist/esm/hooks/useIsTouchDevice.js.map +2 -2
  385. package/dist/esm/hooks/useMedia.js +159 -122
  386. package/dist/esm/hooks/useMedia.js.map +3 -3
  387. package/dist/esm/hooks/usePressable.js +1 -16
  388. package/dist/esm/hooks/usePressable.js.map +1 -1
  389. package/dist/esm/hooks/useSafeRef.js +34 -0
  390. package/dist/esm/hooks/useSafeRef.js.map +7 -0
  391. package/dist/esm/hooks/useServerHooks.js +11 -0
  392. package/dist/esm/hooks/useServerHooks.js.map +7 -0
  393. package/dist/esm/hooks/useTheme.js +178 -162
  394. package/dist/esm/hooks/useTheme.js.map +3 -3
  395. package/dist/esm/hooks/useThemeName.js +28 -0
  396. package/dist/esm/hooks/useThemeName.js.map +7 -0
  397. package/dist/esm/hooks/useUnmountEffect.js +0 -0
  398. package/dist/esm/hooks/useUnmountEffect.js.map +1 -1
  399. package/dist/esm/index.js +37 -22
  400. package/dist/esm/index.js.map +2 -2
  401. package/dist/esm/inject-styles.js +16 -0
  402. package/dist/esm/inject-styles.js.map +7 -0
  403. package/dist/esm/injectStyles.js +16 -0
  404. package/dist/esm/injectStyles.js.map +7 -0
  405. package/dist/esm/insertFont.js +18 -15
  406. package/dist/esm/insertFont.js.map +2 -2
  407. package/dist/esm/setupReactNative.js +24 -0
  408. package/dist/esm/setupReactNative.js.map +7 -0
  409. package/dist/esm/static.js +1 -17
  410. package/dist/esm/static.js.map +2 -2
  411. package/dist/esm/styled.js +29 -51
  412. package/dist/esm/styled.js.map +2 -2
  413. package/dist/esm/types-rnw.js +0 -0
  414. package/dist/esm/types-rnw.js.map +0 -0
  415. package/dist/esm/types.js +0 -0
  416. package/dist/esm/types.js.map +0 -0
  417. package/dist/esm/updateTheme.js +23 -0
  418. package/dist/esm/updateTheme.js.map +7 -0
  419. package/dist/esm/{Pressability.js → vendor/Pressability.js} +3 -1
  420. package/dist/esm/vendor/Pressability.js.map +7 -0
  421. package/dist/esm/{Pressability.native.js → vendor/Pressability.native.js} +3 -1
  422. package/dist/esm/vendor/Pressability.native.js.map +7 -0
  423. package/dist/esm/views/FontLanguage.js +14 -0
  424. package/dist/esm/views/FontLanguage.js.map +7 -0
  425. package/dist/esm/views/FontLanguage.native.js +14 -0
  426. package/dist/esm/views/FontLanguage.native.js.map +7 -0
  427. package/dist/esm/views/FontLanguage.types.js +1 -0
  428. package/dist/{cjs/defaultComponentState.js.map → esm/views/FontLanguage.types.js.map} +0 -0
  429. package/dist/esm/views/Slot.js +47 -50
  430. package/dist/esm/views/Slot.js.map +2 -2
  431. package/dist/esm/views/Stack.js +3 -21
  432. package/dist/esm/views/Stack.js.map +2 -2
  433. package/dist/esm/views/TamaguiProvider.js +53 -0
  434. package/dist/esm/views/TamaguiProvider.js.map +7 -0
  435. package/dist/esm/views/Text.js +29 -29
  436. package/dist/esm/views/Text.js.map +2 -2
  437. package/dist/esm/views/Theme.js +48 -21
  438. package/dist/esm/views/Theme.js.map +2 -2
  439. package/dist/esm/views/ThemeInverse.js +20 -15
  440. package/dist/esm/views/ThemeInverse.js.map +2 -2
  441. package/dist/esm/views/ThemeProvider.js +11 -22
  442. package/dist/esm/views/ThemeProvider.js.map +2 -2
  443. package/dist/esm/views/ThemeReset.js +6 -4
  444. package/dist/esm/views/ThemeReset.js.map +2 -2
  445. package/package.json +51 -19
  446. package/reset.css +1 -9
  447. package/src/Tamagui.ts +48 -0
  448. package/src/__snapshots__/createTokens.test.ts.snap +877 -0
  449. package/src/addTheme.ts +65 -0
  450. package/src/config.ts +52 -0
  451. package/src/constants/constants.ts +19 -0
  452. package/src/constants/isDevTools.ts +12 -0
  453. package/src/contexts/ButtonNestingContext.tsx +3 -0
  454. package/src/contexts/FontLanguageContext.tsx +5 -0
  455. package/src/contexts/TextAncestorContext.tsx +3 -0
  456. package/src/createComponent.tsx +1280 -0
  457. package/src/createFont.test.ts +129 -0
  458. package/src/createFont.ts +52 -0
  459. package/src/createShorthands.ts +7 -0
  460. package/src/createTamagui.ts +230 -0
  461. package/src/createTheme.ts +13 -0
  462. package/src/createTokens.test.ts +29 -0
  463. package/src/createTokens.ts +35 -0
  464. package/src/createVariable.test.ts +7 -0
  465. package/src/createVariable.ts +79 -0
  466. package/src/createVariables.ts +42 -0
  467. package/src/helpers/RNComponents.tsx +14 -0
  468. package/src/helpers/ThemeManager.test.tsx +497 -0
  469. package/src/helpers/ThemeManager.tsx +252 -0
  470. package/src/helpers/ThemeManagerContext.tsx +5 -0
  471. package/src/helpers/cache.ts +18 -0
  472. package/src/helpers/createMediaStyle.ts +55 -0
  473. package/src/helpers/createPropMapper.ts +526 -0
  474. package/src/helpers/createProxy.ts +16 -0
  475. package/src/helpers/expandStyle.ts +81 -0
  476. package/src/helpers/expandStyles.ts +106 -0
  477. package/src/helpers/extendStaticConfig.ts +75 -0
  478. package/src/helpers/fixNativeShadow.tsx +2 -0
  479. package/src/helpers/getAnimationDriver.tsx +5 -0
  480. package/src/helpers/getBoundingClientRect.tsx +7 -0
  481. package/src/helpers/getExpandedShorthands.ts +15 -0
  482. package/src/helpers/getFontLanguage.ts +2 -0
  483. package/src/helpers/getRect.tsx +8 -0
  484. package/src/helpers/getSize.ts +22 -0
  485. package/src/helpers/getSplitStyles.tsx +980 -0
  486. package/src/helpers/getStylesAtomic.native.ts +4 -0
  487. package/src/helpers/getStylesAtomic.ts +275 -0
  488. package/src/helpers/getThemeCSSRules.native.ts +3 -0
  489. package/src/helpers/getThemeCSSRules.ts +112 -0
  490. package/src/helpers/getVariantExtras.tsx +85 -0
  491. package/src/helpers/insertStyleRule.tsx +163 -0
  492. package/src/helpers/isObj.ts +1 -0
  493. package/src/helpers/isTamaguiComponent.tsx +15 -0
  494. package/src/helpers/isTamaguiElement.tsx +12 -0
  495. package/src/helpers/matchMedia.native.ts +6 -0
  496. package/src/helpers/matchMedia.ts +17 -0
  497. package/src/helpers/mergeProps.ts +56 -0
  498. package/src/helpers/mergeTransform.ts +23 -0
  499. package/src/helpers/normalizeColor.ts +53 -0
  500. package/src/helpers/normalizeValueWithProperty.ts +123 -0
  501. package/src/helpers/proxyThemeVariables.tsx +15 -0
  502. package/src/helpers/pseudoDescriptors.ts +40 -0
  503. package/src/helpers/registerCSSVariable.ts +11 -0
  504. package/src/helpers/themeable.tsx +44 -0
  505. package/src/helpers/themes.ts +69 -0
  506. package/src/helpers/timer.ts +9 -0
  507. package/src/helpers/useShallowSetState.tsx +29 -0
  508. package/src/helpers/withStaticProperties.tsx +7 -0
  509. package/src/hooks/getThemeUnwrapped.tsx +7 -0
  510. package/src/hooks/useElementLayout.tsx +85 -0
  511. package/src/hooks/useId.tsx +1 -0
  512. package/src/hooks/useIsTouchDevice.tsx +6 -0
  513. package/src/hooks/useMedia.tsx +265 -0
  514. package/src/hooks/useSafeRef.ts +48 -0
  515. package/src/hooks/useServerHooks.tsx +12 -0
  516. package/src/hooks/useTheme.tsx +243 -0
  517. package/src/hooks/useThemeName.tsx +27 -0
  518. package/src/index.ts +73 -0
  519. package/src/inject-styles.ts +20 -0
  520. package/src/insertFont.ts +70 -0
  521. package/src/setupReactNative.ts +20 -0
  522. package/src/static.ts +5 -0
  523. package/src/styled.tsx +172 -0
  524. package/src/types-rnw.tsx +162 -0
  525. package/src/types.tsx +1350 -0
  526. package/src/updateTheme.ts +26 -0
  527. package/src/vendor/Pressability.native.tsx +3 -0
  528. package/src/vendor/Pressability.tsx +2 -0
  529. package/src/views/FontLanguage.native.tsx +10 -0
  530. package/src/views/FontLanguage.tsx +18 -0
  531. package/src/views/FontLanguage.types.ts +13 -0
  532. package/src/views/Slot.tsx +147 -0
  533. package/src/views/Stack.tsx +24 -0
  534. package/src/views/TamaguiProvider.tsx +59 -0
  535. package/src/views/Text.tsx +87 -0
  536. package/src/views/Theme.tsx +77 -0
  537. package/src/views/ThemeProvider.tsx +41 -0
  538. package/types/Tamagui.d.ts +9 -7
  539. package/types/addTheme.d.ts +32 -0
  540. package/types/config.d.ts +46 -0
  541. package/types/constants/constants.d.ts +14 -3
  542. package/types/constants/isDevTools.d.ts +2 -0
  543. package/types/contexts/ButtonNestingContext.d.ts +3 -0
  544. package/types/contexts/FontLanguageContext.d.ts +5 -0
  545. package/types/contexts/TextAncestorContext.d.ts +3 -0
  546. package/types/createComponent.d.ts +1 -24
  547. package/types/createFont.d.ts +0 -0
  548. package/types/createFont.test.d.ts +2 -0
  549. package/types/createShorthands.d.ts +2 -1
  550. package/types/createTamagui.d.ts +2 -25
  551. package/types/createTheme.d.ts +1 -1
  552. package/types/createTokens.d.ts +5 -5
  553. package/types/createTokens.test.d.ts +2 -0
  554. package/types/createVariable.d.ts +15 -10
  555. package/types/createVariable.test.d.ts +2 -0
  556. package/types/createVariables.d.ts +1 -1
  557. package/types/helpers/RNComponents.d.ts +1 -1
  558. package/types/helpers/ThemeManager.d.ts +36 -0
  559. package/types/helpers/ThemeManager.test.d.ts +2 -0
  560. package/types/helpers/ThemeManagerContext.d.ts +4 -0
  561. package/types/helpers/cache.d.ts +12 -0
  562. package/types/helpers/createMediaStyle.d.ts +2 -4
  563. package/types/helpers/createPropMapper.d.ts +3 -1
  564. package/types/helpers/createProxy.d.ts +2 -0
  565. package/types/helpers/expandStyle.d.ts +4 -0
  566. package/types/helpers/expandStyles.d.ts +20 -1
  567. package/types/helpers/extendStaticConfig.d.ts +0 -0
  568. package/types/helpers/fixNativeShadow.d.ts +0 -0
  569. package/types/helpers/getAnimationDriver.d.ts +6 -0
  570. package/types/helpers/getBoundingClientRect.d.ts +2 -0
  571. package/types/helpers/getExpandedShorthands.d.ts +0 -0
  572. package/types/helpers/getFontLanguage.d.ts +2 -0
  573. package/types/helpers/getRect.d.ts +9 -0
  574. package/types/helpers/getSize.d.ts +0 -0
  575. package/types/helpers/getSplitStyles.d.ts +32 -16
  576. package/types/helpers/getStylesAtomic.d.ts +11 -10
  577. package/types/helpers/getStylesAtomic.native.d.ts +0 -0
  578. package/types/helpers/getThemeCSSRules.d.ts +8 -0
  579. package/types/helpers/getThemeCSSRules.native.d.ts +2 -0
  580. package/types/helpers/getVariantExtras.d.ts +4 -6
  581. package/types/helpers/insertStyleRule.d.ts +8 -4
  582. package/types/helpers/isObj.d.ts +0 -0
  583. package/types/helpers/isTamaguiComponent.d.ts +1 -1
  584. package/types/helpers/isTamaguiElement.d.ts +5 -1
  585. package/types/helpers/matchMedia.d.ts +1 -1
  586. package/types/helpers/matchMedia.native.d.ts +0 -0
  587. package/types/helpers/mergeProps.d.ts +16 -1
  588. package/types/helpers/mergeTransform.d.ts +6 -4
  589. package/types/helpers/normalizeColor.d.ts +0 -0
  590. package/types/helpers/normalizeValueWithProperty.d.ts +5 -0
  591. package/types/helpers/proxyThemeVariables.d.ts +0 -0
  592. package/types/helpers/pseudoDescriptors.d.ts +8 -14
  593. package/types/helpers/registerCSSVariable.d.ts +3 -3
  594. package/types/helpers/themeable.d.ts +7 -7
  595. package/types/helpers/themes.d.ts +4 -0
  596. package/types/helpers/timer.d.ts +2 -0
  597. package/types/helpers/useShallowSetState.d.ts +4 -0
  598. package/types/helpers/withStaticProperties.d.ts +0 -0
  599. package/types/hooks/getThemeUnwrapped.d.ts +3 -0
  600. package/types/hooks/useElementLayout.d.ts +19 -0
  601. package/types/hooks/useId.d.ts +1 -8
  602. package/types/hooks/useIsTouchDevice.d.ts +0 -0
  603. package/types/hooks/useMedia.d.ts +22 -6
  604. package/types/hooks/useSafeRef.d.ts +4 -0
  605. package/types/hooks/useServerHooks.d.ts +4 -0
  606. package/types/hooks/useTheme.d.ts +11 -41
  607. package/types/hooks/useThemeName.d.ts +5 -0
  608. package/types/index.d.ts +17 -17
  609. package/types/inject-styles.d.ts +7 -0
  610. package/types/insertFont.d.ts +4 -1
  611. package/types/setupReactNative.d.ts +5 -0
  612. package/types/static.d.ts +1 -17
  613. package/types/styled.d.ts +6 -2
  614. package/types/types-rnw.d.ts +0 -0
  615. package/types/types.d.ts +298 -89
  616. package/types/updateTheme.d.ts +30 -0
  617. package/types/vendor/Pressability.d.ts +3 -0
  618. package/types/vendor/Pressability.native.d.ts +3 -0
  619. package/types/views/FontLanguage.d.ts +4 -0
  620. package/types/views/FontLanguage.native.d.ts +4 -0
  621. package/types/views/FontLanguage.types.d.ts +11 -0
  622. package/types/views/Slot.d.ts +4 -4
  623. package/types/views/Stack.d.ts +1 -1
  624. package/types/views/TamaguiProvider.d.ts +4 -0
  625. package/types/views/Text.d.ts +1 -1
  626. package/types/views/Theme.d.ts +4 -3
  627. package/types/views/ThemeProvider.d.ts +0 -1
  628. package/dist/cjs/Pressability.js.map +0 -7
  629. package/dist/cjs/Pressability.native.js.map +0 -7
  630. package/dist/cjs/ThemeContext.js.map +0 -7
  631. package/dist/cjs/ThemeManager.js +0 -204
  632. package/dist/cjs/ThemeManager.js.map +0 -7
  633. package/dist/cjs/conf.js.map +0 -7
  634. package/dist/cjs/constants/rnw.js.map +0 -7
  635. package/dist/cjs/constants/rnw.native.js.map +0 -7
  636. package/dist/cjs/defaultComponentState.js +0 -1
  637. package/dist/cjs/helpers/createTamaguiProvider.js +0 -91
  638. package/dist/cjs/helpers/createTamaguiProvider.js.map +0 -7
  639. package/dist/cjs/helpers/cssHash.js.map +0 -7
  640. package/dist/cjs/helpers/getTextSize.js +0 -55
  641. package/dist/cjs/helpers/getTextSize.js.map +0 -7
  642. package/dist/cjs/helpers/nativeGestureHandler.native.js.map +0 -7
  643. package/dist/cjs/helpers/wrapThemeManagerContext.js +0 -37
  644. package/dist/cjs/helpers/wrapThemeManagerContext.js.map +0 -7
  645. package/dist/cjs/hooks/useFeatures.js +0 -230
  646. package/dist/cjs/hooks/useFeatures.js.map +0 -7
  647. package/dist/cjs/hooks/usePrevious.js +0 -1
  648. package/dist/cjs/hooks/usePrevious.js.map +0 -7
  649. package/dist/cjs/views/TextAncestorContext.js +0 -43
  650. package/dist/cjs/views/TextAncestorContext.js.map +0 -7
  651. package/dist/esm/Pressability.js.map +0 -7
  652. package/dist/esm/Pressability.native.js.map +0 -7
  653. package/dist/esm/ThemeContext.js.map +0 -7
  654. package/dist/esm/ThemeManager.js +0 -179
  655. package/dist/esm/ThemeManager.js.map +0 -7
  656. package/dist/esm/conf.js.map +0 -7
  657. package/dist/esm/constants/rnw.js +0 -6
  658. package/dist/esm/constants/rnw.js.map +0 -7
  659. package/dist/esm/constants/rnw.native.js +0 -5
  660. package/dist/esm/constants/rnw.native.js.map +0 -7
  661. package/dist/esm/defaultComponentState.js +0 -1
  662. package/dist/esm/defaultComponentState.js.map +0 -7
  663. package/dist/esm/helpers/createTamaguiProvider.js +0 -67
  664. package/dist/esm/helpers/createTamaguiProvider.js.map +0 -7
  665. package/dist/esm/helpers/cssHash.js +0 -27
  666. package/dist/esm/helpers/cssHash.js.map +0 -7
  667. package/dist/esm/helpers/getTextSize.js +0 -32
  668. package/dist/esm/helpers/getTextSize.js.map +0 -7
  669. package/dist/esm/helpers/nativeGestureHandler.native.js +0 -2
  670. package/dist/esm/helpers/nativeGestureHandler.native.js.map +0 -7
  671. package/dist/esm/helpers/wrapThemeManagerContext.js +0 -11
  672. package/dist/esm/helpers/wrapThemeManagerContext.js.map +0 -7
  673. package/dist/esm/hooks/useFeatures.js +0 -206
  674. package/dist/esm/hooks/useFeatures.js.map +0 -7
  675. package/dist/esm/hooks/usePrevious.js +0 -1
  676. package/dist/esm/hooks/usePrevious.js.map +0 -7
  677. package/dist/esm/views/TextAncestorContext.js +0 -15
  678. package/dist/esm/views/TextAncestorContext.js.map +0 -7
  679. package/types/Pressability.d.ts +0 -2
  680. package/types/Pressability.native.d.ts +0 -2
  681. package/types/Tamagui.d.ts.map +0 -1
  682. package/types/ThemeContext.d.ts +0 -7
  683. package/types/ThemeContext.d.ts.map +0 -1
  684. package/types/ThemeManager.d.ts +0 -52
  685. package/types/ThemeManager.d.ts.map +0 -1
  686. package/types/conf.d.ts +0 -26
  687. package/types/conf.d.ts.map +0 -1
  688. package/types/constants/platform.d.ts +0 -12
  689. package/types/constants/rnw.d.ts +0 -2
  690. package/types/constants/rnw.d.ts.map +0 -1
  691. package/types/constants/rnw.native.d.ts +0 -2
  692. package/types/contexts/ButtonInsideButtonContext.d.ts +0 -3
  693. package/types/createComponent.d.ts.map +0 -1
  694. package/types/createFont.d.ts.map +0 -1
  695. package/types/createTamagui.d.ts.map +0 -1
  696. package/types/createTokens.d.ts.map +0 -1
  697. package/types/defaultComponentState.d.ts +0 -1
  698. package/types/helpers/areEqualSets.d.ts +0 -2
  699. package/types/helpers/assignNativePropsToWeb.d.ts +0 -2
  700. package/types/helpers/assignNativePropsToWeb.d.ts.map +0 -1
  701. package/types/helpers/assignNativePropsToWeb.native.d.ts +0 -2
  702. package/types/helpers/calc.d.ts +0 -12
  703. package/types/helpers/calc.d.ts.map +0 -1
  704. package/types/helpers/createMediaStyle.d.ts.map +0 -1
  705. package/types/helpers/createPropMapper.d.ts.map +0 -1
  706. package/types/helpers/createShallowUpdate.d.ts +0 -3
  707. package/types/helpers/createTamaguiProvider.d.ts +0 -3
  708. package/types/helpers/createTamaguiProvider.d.ts.map +0 -1
  709. package/types/helpers/cssHash.d.ts +0 -2
  710. package/types/helpers/cssHash.d.ts.map +0 -1
  711. package/types/helpers/expandStyle.d.ts.map +0 -1
  712. package/types/helpers/expandStyles.d.ts.map +0 -1
  713. package/types/helpers/extendStaticConfig.d.ts.map +0 -1
  714. package/types/helpers/getExpandedShorthands.d.ts.map +0 -1
  715. package/types/helpers/getFont.d.ts +0 -3
  716. package/types/helpers/getFont.d.ts.map +0 -1
  717. package/types/helpers/getSize.d.ts.map +0 -1
  718. package/types/helpers/getSplitStyles.d.ts.map +0 -1
  719. package/types/helpers/getStackSize.d.ts +0 -8
  720. package/types/helpers/getStackSize.d.ts.map +0 -1
  721. package/types/helpers/getStylesAtomic.d.ts.map +0 -1
  722. package/types/helpers/getVariantExtras.d.ts.map +0 -1
  723. package/types/helpers/isTamaguiComponent.d.ts.map +0 -1
  724. package/types/helpers/isTamaguiElement.d.ts.map +0 -1
  725. package/types/helpers/nativeGestureHandler.native.d.ts +0 -2
  726. package/types/helpers/normalizeColor.d.ts.map +0 -1
  727. package/types/helpers/normalizeValueWithProperty.d.ts.map +0 -1
  728. package/types/helpers/themeable.d.ts.map +0 -1
  729. package/types/helpers/validate.d.ts +0 -4
  730. package/types/helpers/wrapThemeManagerContext.d.ts +0 -3
  731. package/types/helpers/wrapThemeManagerContext.d.ts.map +0 -1
  732. package/types/hooks/useConstant.d.ts +0 -2
  733. package/types/hooks/useFeatures.d.ts +0 -24
  734. package/types/hooks/useFeatures.d.ts.map +0 -1
  735. package/types/hooks/useIsMounted.d.ts +0 -3
  736. package/types/hooks/useMedia.d.ts.map +0 -1
  737. package/types/hooks/usePressable.d.ts +0 -3
  738. package/types/hooks/usePrevious.d.ts +0 -1
  739. package/types/hooks/useTheme.d.ts.map +0 -1
  740. package/types/hooks/useUnmountEffect.d.ts +0 -2
  741. package/types/index.d.ts.map +0 -1
  742. package/types/insertFont.d.ts.map +0 -1
  743. package/types/static.d.ts.map +0 -1
  744. package/types/styled.d.ts.map +0 -1
  745. package/types/types.d.ts.map +0 -1
  746. package/types/views/Stack.d.ts.map +0 -1
  747. package/types/views/Text.d.ts.map +0 -1
  748. package/types/views/TextAncestorContext.d.ts +0 -5
  749. package/types/views/TextAncestorContext.d.ts.map +0 -1
  750. package/types/views/Theme.d.ts.map +0 -1
  751. package/types/views/ThemeInverse.d.ts +0 -10
  752. package/types/views/ThemeInverse.d.ts.map +0 -1
  753. package/types/views/ThemeProvider.d.ts.map +0 -1
  754. package/types/views/ThemeReset.d.ts +0 -4
  755. package/types/views/ThemeReset.d.ts.map +0 -1
package/types/types.d.ts CHANGED
@@ -1,18 +1,22 @@
1
- import { Properties } from 'csstype';
2
- import React from 'react';
3
- import { GestureResponderEvent, Image, TextProps as ReactTextProps, Text, TextInput, TextStyle, View, ViewProps, ViewStyle } from 'react-native';
4
- import { Variable } from './createVariable';
5
- import { ResolveVariableTypes } from './helpers/createPropMapper';
6
- import { RNWTextProps, RNWViewProps } from './types-rnw';
7
- import { ThemeProviderProps } from './views/ThemeProvider';
1
+ import type { Image, PressableProps, TextProps as ReactTextProps, Text, TextInput, TextStyle, View, ViewProps, ViewStyle } from '@tamagui/types-react-native';
2
+ import type { Properties } from 'csstype';
3
+ import type { ComponentType, ForwardRefExoticComponent, FunctionComponent, HTMLAttributes, ReactNode, RefAttributes, RefObject } from 'react';
4
+ import type { Variable } from './createVariable';
5
+ import type { ResolveVariableTypes } from './helpers/createPropMapper';
6
+ import type { TamaguiReactElement } from './static';
7
+ import type { RNWTextProps, RNWViewProps } from './types-rnw';
8
+ import type { FontLanguageProps } from './views/FontLanguage.types';
9
+ import type { ThemeProviderProps } from './views/ThemeProvider';
8
10
  export declare type SpaceDirection = 'vertical' | 'horizontal' | 'both';
9
11
  export declare type TamaguiElement = HTMLElement | View;
10
12
  export declare type DebugProp = boolean | 'break' | 'verbose';
13
+ declare type DivAttributes = HTMLAttributes<HTMLDivElement>;
11
14
  export declare type TamaguiComponentPropsBase = {
15
+ hitSlop?: PressableProps['hitSlop'];
12
16
  asChild?: boolean;
13
17
  space?: SpaceTokens | null;
14
18
  spaceDirection?: SpaceDirection;
15
- separator?: React.ReactNode;
19
+ separator?: ReactNode;
16
20
  dangerouslySetInnerHTML?: {
17
21
  __html: string;
18
22
  };
@@ -22,23 +26,25 @@ export declare type TamaguiComponentPropsBase = {
22
26
  debug?: DebugProp;
23
27
  disabled?: boolean;
24
28
  className?: string;
29
+ themeShallow?: boolean;
25
30
  id?: string;
26
31
  tag?: string;
27
32
  theme?: ThemeName | null;
28
33
  componentName?: string;
34
+ /**
35
+ * Forces the pseudo style state to be on
36
+ */
29
37
  forceStyle?: 'hover' | 'press' | 'focus';
30
- onHoverIn?: (e: MouseEvent) => any;
31
- onHoverOut?: (e: MouseEvent) => any;
32
- onPress?: (e: GestureResponderEvent) => any;
33
- onPressIn?: (e: GestureResponderEvent) => any;
34
- onPressOut?: (e: GestureResponderEvent) => any;
35
- onMouseEnter?: (e: MouseEvent) => any;
36
- onMouseLeave?: (e: MouseEvent) => any;
37
- onMouseDown?: (e: MouseEvent) => any;
38
- userSelect?: Properties['userSelect'];
39
- cursor?: Properties['cursor'];
40
- };
41
- export declare type ReactComponentWithRef<Props, Ref> = React.ForwardRefExoticComponent<Props & React.RefAttributes<Ref>>;
38
+ onHoverIn?: DivAttributes['onMouseEnter'];
39
+ onHoverOut?: DivAttributes['onMouseLeave'];
40
+ onPress?: PressableProps['onPress'];
41
+ onPressIn?: PressableProps['onPress'];
42
+ onPressOut?: PressableProps['onPress'];
43
+ onMouseEnter?: DivAttributes['onMouseEnter'];
44
+ onMouseLeave?: DivAttributes['onMouseLeave'];
45
+ onMouseDown?: DivAttributes['onMouseDown'];
46
+ };
47
+ export declare type ReactComponentWithRef<Props, Ref> = ForwardRefExoticComponent<Props & RefAttributes<Ref>>;
42
48
  export declare type ConfigListener = (conf: TamaguiInternalConfig) => void;
43
49
  export declare type VariableVal = number | string | Variable;
44
50
  export declare type VariableColorVal = string | Variable;
@@ -84,57 +90,142 @@ declare type GenericThemes = {
84
90
  [key: string]: VariableVal;
85
91
  });
86
92
  };
87
- declare type GenericShorthands = {};
88
- declare type GenericMedia<K extends string = string> = {
89
- [key in K]: {
93
+ declare type AllStyleKeys = keyof StackStylePropsBase | keyof TextStylePropsBase;
94
+ export declare type CreateShorthands = {
95
+ [key: string]: AllStyleKeys;
96
+ };
97
+ export declare type GenericShorthands = {};
98
+ declare type GenericMedia = {
99
+ [key: string]: {
90
100
  [key: string]: number | string;
91
101
  };
92
102
  };
93
- export declare type GenericFonts = {
94
- [key: string]: GenericFont;
95
- };
103
+ export declare type GenericFonts = Record<string, GenericFont>;
96
104
  declare type GenericAnimations = {
97
105
  [key: string]: string | {
98
106
  [key: string]: any;
99
- };
107
+ } | any[];
100
108
  };
101
109
  export interface TamaguiCustomConfig {
102
110
  }
103
111
  export interface TamaguiConfig extends Omit<GenericTamaguiConfig, keyof TamaguiCustomConfig>, TamaguiCustomConfig {
104
112
  }
105
- export declare type CreateTamaguiConfig<A extends GenericTokens, B extends GenericThemes, C extends GenericShorthands = GenericShorthands, D extends GenericMedia = GenericMedia, E extends GenericAnimations = GenericAnimations, F extends GenericFonts = GenericFonts> = Partial<Pick<ThemeProviderProps, 'defaultTheme' | 'disableRootThemeClass'>> & {
106
- fonts: F;
113
+ export declare type CreateTamaguiConfig<A extends GenericTokens, B extends GenericThemes, C extends GenericShorthands = GenericShorthands, D extends GenericMedia = GenericMedia, E extends GenericAnimations = GenericAnimations, F extends GenericFonts = GenericFonts> = {
114
+ fonts: RemoveLanguagePostfixes<F>;
115
+ fontLanguages: GetLanguagePostfixes<F> extends never ? string[] : GetLanguagePostfixes<F>[];
107
116
  tokens: A;
108
- themes: B;
117
+ themes: {
118
+ [Name in keyof B]: {
119
+ [Key in keyof B[Name]]: Variable;
120
+ };
121
+ };
109
122
  shorthands: C;
110
123
  media: D;
111
124
  animations: AnimationDriver<E>;
112
- defaultProps?: Record<string, Object>;
113
125
  };
126
+ declare type GetLanguagePostfix<Set> = Set extends string ? Set extends `${string}_${infer Postfix}` ? Postfix : never : never;
127
+ declare type OmitLanguagePostfix<Set> = Set extends string ? Set extends `${infer Prefix}_${string}` ? Prefix : Set : never;
128
+ declare type RemoveLanguagePostfixes<F extends GenericFonts> = {
129
+ [Key in OmitLanguagePostfix<keyof F>]: F[Key];
130
+ };
131
+ declare type GetLanguagePostfixes<F extends GenericFonts> = GetLanguagePostfix<keyof F>;
132
+ declare type ConfProps<A extends GenericTokens, B extends GenericThemes, C extends GenericShorthands = GenericShorthands, D extends GenericMedia = GenericMedia, E extends GenericAnimations = GenericAnimations, F extends GenericFonts = GenericFonts> = {
133
+ tokens: A;
134
+ themes: B;
135
+ shorthands?: C;
136
+ media?: D;
137
+ animations?: AnimationDriver<E>;
138
+ fonts: F;
139
+ };
140
+ export declare type InferTamaguiConfig<Conf> = Conf extends ConfProps<infer A, infer B, infer C, infer D, infer E, infer F> ? TamaguiInternalConfig<A, B, C, D, E, F> : unknown;
114
141
  export declare type GenericTamaguiConfig = CreateTamaguiConfig<GenericTokens, GenericThemes, GenericShorthands, GenericMedia, GenericAnimations, GenericFonts>;
115
- export declare type ThemeObject = TamaguiConfig['themes'][keyof TamaguiConfig['themes']];
142
+ export declare type ThemeDefinition = TamaguiConfig['themes'][keyof TamaguiConfig['themes']];
143
+ export declare type ThemeKeys = keyof ThemeDefinition;
144
+ export declare type ThemeParsed = {
145
+ [key in ThemeKeys]: Variable<any>;
146
+ };
116
147
  export declare type Tokens = TamaguiConfig['tokens'];
117
148
  export declare type Shorthands = TamaguiConfig['shorthands'];
118
149
  export declare type Media = TamaguiConfig['media'];
119
150
  export declare type Themes = TamaguiConfig['themes'];
120
- export declare type ThemeName = GetAltThemeNames<keyof Themes>;
121
- export declare type ThemeKeys = keyof ThemeObject;
151
+ export declare type ThemeName = Exclude<GetAltThemeNames<keyof Themes>, number>;
122
152
  export declare type ThemeTokens = `$${ThemeKeys}`;
123
- export declare type AnimationKeys = Omit<GetAnimationKeys<TamaguiConfig>, number>;
153
+ export declare type AnimationKeys = TamaguiConfig['animations'] extends AnimationDriver<infer Config> ? keyof Config : string;
154
+ export declare type FontLanguages = ArrayIntersection<TamaguiConfig['fontLanguages']>;
155
+ export interface ThemeProps {
156
+ className?: string;
157
+ disableThemeClass?: boolean;
158
+ name?: Exclude<ThemeName, number> | null;
159
+ componentName?: string;
160
+ children?: any;
161
+ reset?: boolean;
162
+ debug?: boolean | 'verbose';
163
+ inverse?: boolean;
164
+ }
165
+ declare type ArrayIntersection<A extends any[]> = A[keyof A];
124
166
  declare type GetAltThemeNames<S> = (S extends `${string}_${infer Alt}` ? GetAltThemeNames<Alt> : S) | S;
125
- export declare type TamaguiInternalConfig<A extends GenericTokens = GenericTokens, B extends GenericThemes = GenericThemes, C extends GenericShorthands = GenericShorthands, D extends GenericMedia = GenericMedia, E extends GenericAnimations = GenericAnimations, F extends GenericFonts = GenericFonts> = CreateTamaguiConfig<A, B, C, D, E, F> & {
126
- Provider: (props: TamaguiProviderProps) => any;
167
+ declare type SpacerPropsBase = {
168
+ size?: number | SpaceTokens | null;
169
+ flex?: boolean | number;
170
+ direction?: SpaceDirection;
171
+ };
172
+ declare type SpacerOwnProps = SpacerPropsBase & WithThemeShorthandsPseudosMediaAnimation<SpacerPropsBase>;
173
+ export declare type SpacerProps = Omit<StackProps, 'flex' | 'direction' | 'size'> & SpacerOwnProps;
174
+ export declare type CreateTamaguiProps = {
175
+ reactNative?: any;
176
+ shorthands?: CreateShorthands;
177
+ media?: GenericTamaguiConfig['media'];
178
+ animations?: AnimationDriver<any>;
179
+ fonts: GenericTamaguiConfig['fonts'];
180
+ tokens: GenericTamaguiConfig['tokens'];
181
+ themes: {
182
+ [key: string]: {
183
+ [key: string]: string | number | Variable;
184
+ };
185
+ };
186
+ /**
187
+ * *Advanced use case* For all CSS extracted views, this has no effect.
188
+ *
189
+ * For SSR compatibility on the web, Tamagui will render once with the settings
190
+ * from `mediaQueryDefaultActive` set for all media queries. Then, it will render
191
+ * again after the initial render using the proper media query values. This is so that
192
+ * hydration will match perfectly with the server.
193
+ *
194
+ * Setting disableSSR will avoid this second render by setting the media query state
195
+ * to the actual browser dimensions on initial load. This is only useful for client-only
196
+ * apps.
197
+ *
198
+ */
199
+ disableSSR?: boolean;
200
+ /**
201
+ * Disable inserting a theme class in the DOM or context, allowing you to manually place it higher.
202
+ * For custom use cases like integration with next-theme.
203
+ */
204
+ disableRootThemeClass?: boolean;
205
+ defaultProps?: Record<string, any> & {
206
+ Stack?: StackProps;
207
+ Text?: TextProps;
208
+ Spacer?: SpacerProps;
209
+ };
210
+ mediaQueryDefaultActive?: Record<MediaQueryKey, boolean>;
211
+ cssStyleSeparator?: string;
212
+ maxDarkLightNesting?: number;
213
+ shouldAddPrefersColorThemes?: boolean;
214
+ themeClassNameOnRoot?: boolean;
215
+ };
216
+ export declare type TamaguiInternalConfig<A extends GenericTokens = GenericTokens, B extends GenericThemes = GenericThemes, C extends GenericShorthands = GenericShorthands, D extends GenericMedia = GenericMedia, E extends GenericAnimations = GenericAnimations, F extends GenericFonts = GenericFonts> = Omit<CreateTamaguiProps, keyof GenericTamaguiConfig> & CreateTamaguiConfig<A, B, C, D, E, F> & {
127
217
  tokensParsed: CreateTokens<Variable>;
128
218
  themeConfig: any;
129
219
  fontsParsed: GenericFonts;
130
220
  getCSS: () => string;
131
221
  parsed: boolean;
132
- themeClassNameOnRoot?: boolean;
222
+ inverseShorthands: Record<string, string>;
223
+ reactNative?: any;
133
224
  };
134
- export declare type GetAnimationKeys<A extends GenericTamaguiConfig> = keyof A['animations']['animations'];
225
+ export declare type GetAnimationKeys<A extends GenericTamaguiConfig> = keyof A['animations'];
135
226
  export declare type UnionableString = string & {};
136
227
  export declare type UnionableNumber = number & {};
137
- export declare type PropTypes<A extends TamaguiComponent> = A extends React.FunctionComponent<infer Props> ? Props : unknown;
228
+ export declare type PropTypes<A extends TamaguiComponent> = A extends FunctionComponent<infer Props> ? Props : unknown;
138
229
  export declare type GenericFont<Key extends number | string = number | string> = {
139
230
  size: {
140
231
  [key in Key]: number | Variable;
@@ -158,8 +249,13 @@ export declare type GenericFont<Key extends number | string = number | string> =
158
249
  color?: Partial<{
159
250
  [key in Key]: string | Variable;
160
251
  }>;
252
+ face?: Partial<{
253
+ [key in FontWeightSteps]: {
254
+ normal?: string;
255
+ italic?: string;
256
+ };
257
+ }>;
161
258
  };
162
- export declare type MediaKeys = keyof Media;
163
259
  export declare type MediaQueryObject = {
164
260
  [key: string]: string | number | string;
165
261
  };
@@ -174,10 +270,6 @@ export declare type MediaProps<A> = {
174
270
  export declare type MediaQueries = {
175
271
  [key in MediaQueryKey]: MediaQueryObject;
176
272
  };
177
- export declare type ConfigureMediaQueryOptions = {
178
- queries?: MediaQueries;
179
- defaultActive?: MediaQueryKey[];
180
- };
181
273
  export declare type TransformStyleProps = {
182
274
  x?: number;
183
275
  y?: number;
@@ -212,13 +304,14 @@ declare type GetTokenFontKeysFor<A extends 'size' | 'weight' | 'letterSpacing' |
212
304
  declare type GetTokenString<A> = A extends string | number ? `$${A}` : `$${string}`;
213
305
  export declare type SizeTokens = GetTokenString<keyof Tokens['size']> | number;
214
306
  export declare type SpaceTokens = GetTokenString<keyof Tokens['space']> | number | boolean;
215
- export declare type ColorTokens = GetTokenString<keyof Tokens['color']> | GetTokenString<keyof ThemeObject> | CSSColorNames;
307
+ export declare type ColorTokens = GetTokenString<keyof Tokens['color']> | GetTokenString<keyof ThemeParsed> | CSSColorNames;
216
308
  export declare type ZIndexTokens = GetTokenString<keyof Tokens['zIndex']> | number;
217
309
  export declare type RadiusTokens = GetTokenString<keyof Tokens['radius']> | number;
218
310
  export declare type FontTokens = GetTokenString<keyof TamaguiConfig['fonts']>;
219
311
  export declare type FontSizeTokens = GetTokenString<GetTokenFontKeysFor<'size'>> | number;
220
312
  export declare type FontLineHeightTokens = `$${GetTokenFontKeysFor<'lineHeight'>}` | number;
221
- export declare type FontWeightTokens = `$${GetTokenFontKeysFor<'weight'>}` | `${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}00`;
313
+ export declare type FontWeightSteps = `${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}00`;
314
+ export declare type FontWeightTokens = `$${GetTokenFontKeysFor<'weight'>}` | FontWeightSteps;
222
315
  export declare type FontColorTokens = `$${GetTokenFontKeysFor<'color'>}` | number;
223
316
  export declare type FontLetterSpacingTokens = `$${GetTokenFontKeysFor<'letterSpacing'>}` | number;
224
317
  export declare type FontStyleTokens = `$${GetTokenFontKeysFor<'style'>}` | TextStyle['fontStyle'];
@@ -230,7 +323,7 @@ declare type FontWeightKeys = 'fontWeight';
230
323
  declare type FontLetterSpacingKeys = 'letterSpacing';
231
324
  declare type LineHeightKeys = 'lineHeight';
232
325
  declare type ZIndexKeys = 'zIndex';
233
- export declare type ThemeValueGet<K extends string | number | symbol> = K extends 'theme' ? ThemeTokens : K extends SizeKeys ? SizeTokens : K extends FontKeys ? FontTokens : K extends FontSizeKeys ? FontSizeTokens : K extends SpaceKeys ? K extends 'shadowOffset' ? {
326
+ export declare type ThemeValueGet<K extends string | number | symbol> = K extends 'theme' ? ThemeTokens : K extends SizeKeys ? SizeTokens : K extends FontKeys ? FontTokens : K extends FontSizeKeys ? FontSizeTokens : K extends `${`border${string | ''}Radius`}` ? RadiusTokens : K extends SpaceKeys ? K extends 'shadowOffset' ? {
234
327
  width: SpaceTokens;
235
328
  height: SpaceTokens;
236
329
  } : SpaceTokens : K extends ColorKeys ? ColorTokens : K extends ZIndexKeys ? ZIndexTokens : K extends LineHeightKeys ? FontLineHeightTokens : K extends FontWeightKeys ? FontWeightTokens : K extends FontLetterSpacingKeys ? FontLetterSpacingTokens : never;
@@ -259,19 +352,18 @@ export declare type PseudoStyles = {
259
352
  declare type WithThemeAndShorthands<A extends object> = WithThemeValues<A> & WithShorthands<WithThemeValues<A>>;
260
353
  declare type WithThemeShorthandsAndPseudos<A extends object> = WithThemeAndShorthands<A> & PseudoProps<WithThemeAndShorthands<A>>;
261
354
  declare type WithThemeShorthandsPseudosMediaAnimation<A extends object> = WithThemeShorthandsAndPseudos<A> & MediaProps<WithThemeShorthandsAndPseudos<A>>;
262
- declare type WebOnlyStyleProps = {
263
- cursor?: string;
264
- contain?: 'none' | 'strict' | 'content' | 'size' | 'layout' | 'paint' | string;
265
- display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex';
355
+ /**
356
+ * Base style-only props (no media, pseudo):
357
+ */
358
+ declare type StylePropsWebOnly = {
266
359
  pointerEvents?: ViewProps['pointerEvents'];
360
+ cursor?: Properties['cursor'];
361
+ contain?: Properties['contain'];
362
+ display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex';
363
+ userSelect?: Properties['userSelect'];
267
364
  };
268
- export declare type StackStylePropsBase = Omit<ViewStyle, 'display' | 'backfaceVisibility' | 'elevation'> & TransformStyleProps & WebOnlyStyleProps;
269
- export declare type StackPropsBaseShared = Omit<ViewProps, 'display' | 'children'> & RNWViewProps & TamaguiComponentPropsBase;
270
- export declare type StackStyleProps = WithThemeShorthandsPseudosMediaAnimation<StackStylePropsBase>;
271
- export declare type StackPropsBase = StackPropsBaseShared & WithThemeAndShorthands<StackStylePropsBase>;
272
- export declare type StackProps = StackPropsBaseShared & StackStyleProps;
273
- export declare type GestureReponderEvent = Exclude<View['props']['onResponderMove'], void> extends (event: infer Event) => void ? Event : never;
274
- export declare type TextStylePropsBase = Omit<TextStyle, 'display' | 'backfaceVisibility'> & TransformStyleProps & WebOnlyStyleProps & {
365
+ export declare type StackStylePropsBase = Omit<ViewStyle, 'display' | 'backfaceVisibility' | 'elevation'> & TransformStyleProps & StylePropsWebOnly;
366
+ export declare type TextStylePropsBase = Omit<TextStyle, 'display' | 'backfaceVisibility'> & TransformStyleProps & StylePropsWebOnly & {
275
367
  ellipse?: boolean;
276
368
  selectable?: boolean;
277
369
  textDecorationDistance?: number;
@@ -279,10 +371,14 @@ export declare type TextStylePropsBase = Omit<TextStyle, 'display' | 'backfaceVi
279
371
  whiteSpace?: Properties['whiteSpace'];
280
372
  wordWrap?: Properties['wordWrap'];
281
373
  };
282
- export declare type TextPropsBaseShared = Omit<ReactTextProps, 'children'> & RNWTextProps & TamaguiComponentPropsBase;
283
- export declare type TextPropsBase = TextPropsBaseShared & WithThemeAndShorthands<TextStylePropsBase>;
374
+ export declare type StackNonStyleProps = Omit<ViewProps, 'display' | 'children'> & RNWViewProps & TamaguiComponentPropsBase;
375
+ export declare type StackStyleProps = WithThemeShorthandsPseudosMediaAnimation<StackStylePropsBase>;
376
+ export declare type StackPropsBase = StackNonStyleProps & WithThemeAndShorthands<StackStylePropsBase>;
377
+ export declare type StackProps = StackNonStyleProps & StackStyleProps;
378
+ export declare type TextNonStyleProps = Omit<ReactTextProps, 'children'> & RNWTextProps & TamaguiComponentPropsBase;
379
+ export declare type TextPropsBase = TextNonStyleProps & WithThemeAndShorthands<TextStylePropsBase>;
284
380
  export declare type TextStyleProps = WithThemeShorthandsPseudosMediaAnimation<TextStylePropsBase>;
285
- export declare type TextProps = TextPropsBaseShared & TextStyleProps;
381
+ export declare type TextProps = TextNonStyleProps & TextStyleProps;
286
382
  export declare type ViewOrTextProps = WithThemeShorthandsPseudosMediaAnimation<Omit<TextStylePropsBase, keyof StackStylePropsBase> & StackStylePropsBase>;
287
383
  export declare type TamaguiComponent<Props = any, Ref = any, BaseProps = {}, VariantProps = {}> = ReactComponentWithRef<Props, Ref> & StaticComponentObject;
288
384
  declare type StaticComponentObject = {
@@ -290,10 +386,11 @@ declare type StaticComponentObject = {
290
386
  extractable: <X>(a: X, opts?: Partial<StaticConfig>) => X;
291
387
  };
292
388
  export declare type TamaguiProviderProps = Partial<Omit<ThemeProviderProps, 'children'>> & {
389
+ config: TamaguiInternalConfig;
293
390
  disableInjectCSS?: boolean;
294
- children?: React.ReactNode;
391
+ children?: ReactNode;
295
392
  };
296
- export declare type PropMapper = (key: string, value: any, theme: ThemeObject, props: Record<string, any>, state: Partial<SplitStyleState>, avoidDefaultProps?: boolean, debug?: DebugProp) => undefined | [string, any][];
393
+ export declare type PropMapper = (key: string, value: any, theme: ThemeParsed, props: Record<string, any>, state: Partial<SplitStyleState>, languageContext?: FontLanguageProps, avoidDefaultProps?: boolean, debug?: DebugProp) => undefined | [string, any][];
297
394
  export declare type StaticConfigParsed = StaticConfig & {
298
395
  parsed: true;
299
396
  propMapper: PropMapper;
@@ -310,39 +407,105 @@ export declare type GenericVariantDefinitions = {
310
407
  };
311
408
  };
312
409
  };
313
- export declare type StaticConfig = {
314
- Component?: React.FunctionComponent<any> & StaticComponentObject;
315
- variants?: GenericVariantDefinitions;
316
- componentName?: string;
410
+ export declare type StaticConfigPublic = {
411
+ /**
412
+ * (compiler) If you need to pass context or something, prevents from ever
413
+ * flattening. The 'jsx' option means it will never flatten. if you
414
+ * pass JSX as a children (if its purely string, it will still flatten).
415
+ */
317
416
  neverFlatten?: boolean | 'jsx';
417
+ /**
418
+ * Determines ultimate output tag (Text vs View)
419
+ */
318
420
  isText?: boolean;
319
- isInput?: boolean;
320
- isImage?: boolean;
421
+ /**
422
+ * Which style keys are allowed to be extracted.
423
+ */
321
424
  validStyles?: {
322
425
  [key: string]: boolean;
323
426
  };
324
- defaultProps: Record<string, any>;
427
+ /**
428
+ * (compiler) If these props are encountered, bail on all optimization.
429
+ */
325
430
  deoptProps?: Set<string>;
431
+ /**
432
+ * (compiler) If these props are encountered, leave them un-extracted.
433
+ */
326
434
  inlineProps?: Set<string>;
435
+ /**
436
+ * (compiler) If not flattening, leave this prop as original value.
437
+ * Only applies to style attributes
438
+ */
327
439
  inlineWhenUnflattened?: Set<string>;
440
+ /**
441
+ * (compiler) A bit odd, only for more advanced heirarchies.
442
+ * Indicates that the component will set this prop so the
443
+ * static extraction can ensure it sets them to ={undefined}
444
+ * so they get overriddent. In the future, this can be smarter.
445
+ */
328
446
  ensureOverriddenProp?: {
329
447
  [key: string]: boolean;
330
448
  };
449
+ /**
450
+ * Auto-detected, but can ovverride. Wraps children to space them on top
451
+ */
331
452
  isZStack?: boolean;
453
+ /**
454
+ * Auto-detect, but can override, passes styles properly to react-native-web
455
+ */
456
+ isReactNative?: boolean;
457
+ /**
458
+ * By default if styled() doesn't recognize a parent Tamagui compoent or specific react-native views,
459
+ * it will assume the passed in component only accepts style={} for react-native compatibility.
460
+ * Setting `acceptsClassName: true` indicates Tamagui can pass in className props.
461
+ */
462
+ acceptsClassName?: boolean;
463
+ };
464
+ export declare type StaticConfig = StaticConfigPublic & {
465
+ Component?: FunctionComponent<any> & StaticComponentObject;
466
+ variants?: GenericVariantDefinitions;
467
+ /**
468
+ * Used for applying sub theme style
469
+ */
470
+ componentName?: string;
471
+ /**
472
+ * Same as React.defaultProps, be sure to sync
473
+ */
474
+ defaultProps: Record<string, any>;
475
+ /**
476
+ * Merges into defaultProps later on, used internally yonly
477
+ */
332
478
  defaultVariants?: {
333
479
  [key: string]: any;
334
480
  };
335
- isReactNativeWeb?: boolean;
336
- reactNativeWebComponent?: any;
481
+ /**
482
+ * Memoize the component
483
+ */
337
484
  memo?: boolean;
338
- isTamagui?: boolean;
339
- isExtractable?: boolean;
485
+ /**
486
+ * Used insternally to attach default props to names
487
+ */
340
488
  parentNames?: string[];
489
+ /**
490
+ * By default if styled() doesn't recognize a parent Tamagui compoent or specific react-native views,
491
+ * it will assume the passed in component only accepts style={} for react-native compatibility.
492
+ * Setting `acceptsClassName: true` indicates Tamagui can pass in className props.
493
+ */
494
+ acceptsClassName?: boolean;
495
+ /**
496
+ * Used internally for handling focus
497
+ */
498
+ isInput?: boolean;
341
499
  };
342
- export declare type StylableComponent = TamaguiComponent | React.Component | React.ForwardRefExoticComponent<any> | ReactComponentWithRef<any, any> | (new (props: any) => any) | typeof View | typeof Text | typeof TextInput | typeof Image;
500
+ /**
501
+ * --------------------------------------------
502
+ * variants
503
+ * --------------------------------------------
504
+ */
505
+ export declare type StylableComponent = TamaguiComponent | ComponentType<any> | ForwardRefExoticComponent<any> | ReactComponentWithRef<any, any> | (new (props: any) => any) | typeof View | typeof Text | typeof TextInput | typeof Image;
343
506
  export declare type GetStyledVariants<A extends TamaguiComponent> = A extends TamaguiComponent<any, any, any, infer Variants> ? Variants : never;
344
507
  export declare type GetBaseProps<A extends StylableComponent> = A extends TamaguiComponent<any, any, infer BaseProps> ? BaseProps : never;
345
- export declare type GetProps<A extends StylableComponent> = A extends TamaguiComponent<infer Props> ? Props : A extends React.Component<infer Props> ? GetGenericComponentTamaguiProps<Props> : A extends new (props: infer Props) => any ? GetGenericComponentTamaguiProps<Props> : {};
508
+ export declare type GetProps<A extends StylableComponent> = A extends TamaguiComponent<infer Props> ? Props : A extends TamaguiReactElement<infer Props> ? Props : A extends ComponentType<infer Props> ? GetGenericComponentTamaguiProps<Props> : A extends new (props: infer Props) => any ? GetGenericComponentTamaguiProps<Props> : {};
346
509
  declare type GetGenericComponentTamaguiProps<P> = P & Omit<'textAlign' extends keyof P ? TextProps : StackProps, keyof P>;
347
510
  export declare type SpreadKeys = '...fontSize' | '...fontStyle' | '...fontTransform' | '...lineHeight' | '...letterSpacing' | '...size' | '...space' | '...color' | '...zIndex' | '...theme' | '...radius';
348
511
  export declare type VariantDefinitions<Parent extends StylableComponent = TamaguiComponent, MyProps extends Object = GetProps<Parent>, Val = any> = VariantDefinitionFromProps<MyProps, Val>;
@@ -387,6 +550,11 @@ export declare type FontTransformVariantSpreadFunction<A extends PropLike> = Var
387
550
  export declare type ZIndexVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, ZIndexTokens>;
388
551
  export declare type RadiusVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, RadiusTokens>;
389
552
  export declare type ThemeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, ThemeTokens>;
553
+ /**
554
+ * --------------------------------------------
555
+ * end variants
556
+ * --------------------------------------------
557
+ */
390
558
  declare type SizeKeys = 'width' | 'height' | 'minWidth' | 'minHeight' | 'maxWidth' | 'maxHeight' | 'shadowRadius';
391
559
  declare type ColorKeys = 'color' | 'backgroundColor' | 'borderColor' | 'borderBottomColor' | 'borderTopColor' | 'borderLeftColor' | 'borderRightColor' | 'shadowColor' | 'textShadowColor';
392
560
  declare type SpaceKeys = 'space' | 'padding' | 'paddingHorizontal' | 'paddingVertical' | 'paddingLeft' | 'paddingTop' | 'paddingBottom' | 'paddingLeft' | 'paddingRight' | 'paddingEnd' | 'paddingStart' | 'margin' | 'marginHorizontal' | 'marginVertical' | 'marginLeft' | 'marginTop' | 'marginBottom' | 'marginLeft' | 'marginRight' | 'marginEnd' | 'marginStart' | 'x' | 'y' | 'scale' | 'scaleX' | 'scaleY' | 'borderTopEndRadius' | 'borderTopLeftRadius' | 'borderTopRightRadius' | 'borderTopStartRadius' | 'borderBottomEndRadius' | 'borderBottomLeftRadius' | 'borderBottomRightRadius' | 'borderBottomStartRadius' | 'borderBottomWidth' | 'borderLeftWidth' | 'borderRadius' | 'borderRightWidth' | 'borderTopEndRadius' | 'borderTopLeftRadius' | 'borderTopRightRadius' | 'borderEndWidth' | 'borderStartWidth' | 'borderTopStartRadius' | 'borderTopWidth' | 'borderWidth' | 'left' | 'top' | 'right' | 'bottom' | 'shadowOffset';
@@ -396,7 +564,8 @@ export declare type TamaguiComponentState = {
396
564
  press: boolean;
397
565
  pressIn: boolean;
398
566
  focus: boolean;
399
- mounted: boolean;
567
+ unmounted: boolean;
568
+ mediaState?: null | Record<string, boolean>;
400
569
  animation?: null | {
401
570
  style?: any;
402
571
  avoidClasses?: boolean;
@@ -409,33 +578,73 @@ export declare type SplitStyleState = TamaguiComponentState & {
409
578
  fallbackProps?: Record<string, any>;
410
579
  keepVariantsAsProps?: boolean;
411
580
  hasTextAncestor?: boolean;
412
- };
581
+ isExiting?: boolean;
582
+ exitVariant?: string;
583
+ enterVariant?: string;
584
+ };
585
+ export interface PresenceContextProps {
586
+ id: string;
587
+ isPresent: boolean;
588
+ register: (id: string) => () => void;
589
+ onExitComplete?: (id: string) => void;
590
+ initial?: false | string | string[];
591
+ custom?: any;
592
+ exitVariant?: string | null;
593
+ enterVariant?: string | null;
594
+ }
595
+ declare type SafeToRemoveCallback = () => void;
596
+ declare type AlwaysPresent = [true, null, null];
597
+ declare type Present = [true, undefined, PresenceContextProps];
598
+ declare type NotPresent = [false, SafeToRemoveCallback, PresenceContextProps];
599
+ export declare type UsePresenceResult = AlwaysPresent | Present | NotPresent;
413
600
  declare type AnimationConfig = {
414
601
  [key: string]: any;
415
602
  };
603
+ export declare type AnimatedNumberStrategy = {
604
+ type: 'spring';
605
+ stiffness?: number;
606
+ damping?: number;
607
+ mass?: number;
608
+ overshootClamping?: boolean;
609
+ restSpeedThreshold?: number;
610
+ restDisplacementThreshold?: number;
611
+ } | {
612
+ type: 'timing';
613
+ duration: number;
614
+ } | {
615
+ type: 'direct';
616
+ };
617
+ export declare type UniversalAnimatedNumber<A> = {
618
+ getInstance(): A;
619
+ getValue(): number;
620
+ setValue(next: number, config?: AnimatedNumberStrategy): void;
621
+ stop(): void;
622
+ };
416
623
  export declare type AnimationDriver<A extends AnimationConfig = AnimationConfig> = {
417
- avoidClasses?: boolean;
624
+ isReactNative?: boolean;
418
625
  useAnimations: UseAnimationHook;
626
+ usePresence: () => UsePresenceResult;
627
+ useAnimatedNumber: (initial: number) => UniversalAnimatedNumber<any>;
628
+ useAnimatedNumberStyle: <V extends UniversalAnimatedNumber<any>>(val: V, getStyle: (current: any) => any) => any;
629
+ useAnimatedNumberReaction: (val: UniversalAnimatedNumber<any>, onValue: (current: number) => void) => void;
419
630
  animations: A;
420
631
  View?: any;
421
632
  Text?: any;
422
633
  };
423
634
  export declare type UseAnimationProps = TamaguiComponentPropsBase & Record<string, any>;
424
- export declare type UseAnimationHelpers = {
635
+ export declare type UseAnimationHook = (props: {
636
+ style: Record<string, any>;
637
+ props: Record<string, any>;
638
+ presence?: UsePresenceResult | null;
639
+ hostRef: RefObject<HTMLElement | View>;
425
640
  staticConfig: StaticConfigParsed;
426
- getStyle: (props?: {
427
- isEntering?: boolean;
428
- isExiting?: boolean;
429
- exitVariant?: string | null;
430
- enterVariant?: string | null;
431
- }) => ViewStyle;
432
641
  state: SplitStyleState;
433
642
  pseudos: PseudoProps<ViewStyle>;
434
643
  onDidAnimate?: any;
435
644
  delay?: number;
436
- };
437
- export declare type UseAnimationHook = (props: UseAnimationProps, helpers: UseAnimationHelpers) => {
645
+ }) => null | {
438
646
  style?: StackStylePropsBase | StackStylePropsBase[];
439
647
  };
648
+ export declare type GestureReponderEvent = Exclude<View['props']['onResponderMove'], void> extends (event: infer Event) => void ? Event : never;
440
649
  export {};
441
650
  //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1,30 @@
1
+ import { ThemeDefinition } from './types';
2
+ export declare function updateTheme({ name, theme, }: {
3
+ name: string;
4
+ theme: Partial<Record<keyof ThemeDefinition, any>>;
5
+ }): {
6
+ theme: {
7
+ [x: string]: import("./createVariable").Variable<any>;
8
+ background?: import("./createVariable").Variable<any> | undefined;
9
+ backgroundHover?: import("./createVariable").Variable<any> | undefined;
10
+ backgroundPress?: import("./createVariable").Variable<any> | undefined;
11
+ backgroundFocus?: import("./createVariable").Variable<any> | undefined;
12
+ color?: import("./createVariable").Variable<any> | undefined;
13
+ colorHover?: import("./createVariable").Variable<any> | undefined;
14
+ colorPress?: import("./createVariable").Variable<any> | undefined;
15
+ colorFocus?: import("./createVariable").Variable<any> | undefined;
16
+ borderColor?: import("./createVariable").Variable<any> | undefined;
17
+ borderColorHover?: import("./createVariable").Variable<any> | undefined;
18
+ borderColorPress?: import("./createVariable").Variable<any> | undefined;
19
+ borderColorFocus?: import("./createVariable").Variable<any> | undefined;
20
+ shadowColor?: import("./createVariable").Variable<any> | undefined;
21
+ shadowColorHover?: import("./createVariable").Variable<any> | undefined;
22
+ shadowColorPress?: import("./createVariable").Variable<any> | undefined;
23
+ shadowColorFocus?: import("./createVariable").Variable<any> | undefined;
24
+ };
25
+ cssRules?: undefined;
26
+ } | {
27
+ theme: any;
28
+ cssRules: string[];
29
+ };
30
+ //# sourceMappingURL=updateTheme.d.ts.map
@@ -0,0 +1,3 @@
1
+ export declare const Pressability: any;
2
+ export declare const usePressability: Function;
3
+ //# sourceMappingURL=Pressability.d.ts.map
@@ -0,0 +1,3 @@
1
+ export declare const Pressability: any;
2
+ export declare const usePressability: any;
3
+ //# sourceMappingURL=Pressability.native.d.ts.map
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { FontLanguageProps } from './FontLanguage.types';
3
+ export declare const FontLanguage: ({ children, ...props }: FontLanguageProps) => JSX.Element;
4
+ //# sourceMappingURL=FontLanguage.d.ts.map
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { FontLanguageProps } from './FontLanguage.types';
3
+ export declare const FontLanguage: ({ children, ...props }: FontLanguageProps) => JSX.Element;
4
+ //# sourceMappingURL=FontLanguage.native.d.ts.map
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { FontLanguages, FontTokens } from '../types';
3
+ declare type FontFamilies = FontTokens extends `$${infer Token}` ? Token : never;
4
+ export declare type LanguageContextType = Partial<{
5
+ [key in FontFamilies]: FontLanguages | 'default';
6
+ }>;
7
+ export declare type FontLanguageProps = LanguageContextType & {
8
+ children?: React.ReactNode;
9
+ };
10
+ export {};
11
+ //# sourceMappingURL=FontLanguage.types.d.ts.map
@@ -1,10 +1,10 @@
1
- import * as React from 'react';
1
+ import { ReactNode } from 'react';
2
2
  export declare type SlotProps = {
3
- children?: React.ReactNode;
3
+ children?: ReactNode;
4
4
  };
5
- export declare const Slot: React.ForwardRefExoticComponent<SlotProps & React.RefAttributes<HTMLElement>>;
5
+ export declare const Slot: import("react").ForwardRefExoticComponent<SlotProps & import("react").RefAttributes<HTMLElement>>;
6
6
  export declare const Slottable: ({ children }: {
7
- children: React.ReactNode;
7
+ children: ReactNode;
8
8
  }) => JSX.Element;
9
9
  export declare function mergeEvent(a?: Function, b?: Function): (...args: unknown[]) => void;
10
10
  //# sourceMappingURL=Slot.d.ts.map