@tamagui/core 1.0.0-alpha.5 → 1.0.0-alpha.58

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 (507) hide show
  1. package/dist/cjs/conf.js +52 -0
  2. package/dist/cjs/conf.js.map +7 -0
  3. package/dist/cjs/constants/constants.js +55 -0
  4. package/dist/cjs/constants/constants.js.map +7 -0
  5. package/dist/cjs/constants/platform.js +44 -0
  6. package/dist/cjs/constants/platform.js.map +7 -0
  7. package/dist/cjs/constants/pseudos.js +42 -0
  8. package/dist/cjs/constants/pseudos.js.map +7 -0
  9. package/dist/cjs/constants/rnw.js +45 -0
  10. package/dist/cjs/constants/rnw.js.map +7 -0
  11. package/dist/cjs/createComponent.js +544 -0
  12. package/dist/cjs/createComponent.js.map +7 -0
  13. package/dist/cjs/createFont.js +51 -0
  14. package/dist/cjs/createFont.js.map +7 -0
  15. package/dist/cjs/createShorthands.js +33 -0
  16. package/dist/cjs/createShorthands.js.map +7 -0
  17. package/dist/cjs/createTamagui.js +205 -0
  18. package/dist/cjs/createTamagui.js.map +7 -0
  19. package/dist/cjs/createTheme.js +30 -0
  20. package/dist/cjs/createTheme.js.map +7 -0
  21. package/dist/cjs/createTokens.js +56 -0
  22. package/dist/cjs/createTokens.js.map +7 -0
  23. package/dist/cjs/createVariable.js +48 -0
  24. package/dist/cjs/createVariable.js.map +7 -0
  25. package/dist/cjs/helpers/addStylesUsingClassname.js +80 -0
  26. package/dist/cjs/helpers/addStylesUsingClassname.js.map +7 -0
  27. package/dist/cjs/helpers/createMediaStyle.js +57 -0
  28. package/dist/cjs/helpers/createMediaStyle.js.map +7 -0
  29. package/dist/cjs/helpers/createPropMapper.js +199 -0
  30. package/dist/cjs/helpers/createPropMapper.js.map +7 -0
  31. package/dist/cjs/helpers/createTamaguiProvider.js +80 -0
  32. package/dist/cjs/helpers/createTamaguiProvider.js.map +7 -0
  33. package/dist/cjs/helpers/extendStaticConfig.js +83 -0
  34. package/dist/cjs/helpers/extendStaticConfig.js.map +7 -0
  35. package/dist/cjs/helpers/fixNativeShadow.js +31 -0
  36. package/dist/cjs/helpers/fixNativeShadow.js.map +7 -0
  37. package/dist/cjs/helpers/fixNativeShadow.native.js +57 -0
  38. package/dist/cjs/helpers/fixNativeShadow.native.js.map +7 -0
  39. package/dist/cjs/helpers/getSplitStyles.js +181 -0
  40. package/dist/cjs/helpers/getSplitStyles.js.map +7 -0
  41. package/dist/cjs/helpers/getStylesAtomic.js +118 -0
  42. package/dist/cjs/helpers/getStylesAtomic.js.map +7 -0
  43. package/dist/cjs/helpers/getStylesAtomic.native.js +33 -0
  44. package/dist/cjs/helpers/getStylesAtomic.native.js.map +7 -0
  45. package/dist/cjs/helpers/getThemeParentClassName.js +34 -0
  46. package/dist/cjs/helpers/getThemeParentClassName.js.map +7 -0
  47. package/dist/cjs/helpers/insertStyleRule.js +47 -0
  48. package/dist/cjs/helpers/insertStyleRule.js.map +7 -0
  49. package/dist/cjs/helpers/isObj.js +30 -0
  50. package/dist/cjs/helpers/isObj.js.map +7 -0
  51. package/dist/cjs/helpers/isTamaguiElement.js +34 -0
  52. package/dist/cjs/helpers/isTamaguiElement.js.map +7 -0
  53. package/dist/cjs/helpers/matchMedia.js +41 -0
  54. package/dist/cjs/helpers/matchMedia.js.map +7 -0
  55. package/dist/cjs/helpers/matchMedia.native.js +37 -0
  56. package/dist/cjs/helpers/matchMedia.native.js.map +7 -0
  57. package/dist/cjs/helpers/themeable.js +84 -0
  58. package/dist/cjs/helpers/themeable.js.map +7 -0
  59. package/dist/cjs/helpers/validate.js +88 -0
  60. package/dist/cjs/helpers/validate.js.map +7 -0
  61. package/dist/cjs/hooks/useConstant.js +38 -0
  62. package/dist/cjs/hooks/useConstant.js.map +7 -0
  63. package/dist/cjs/hooks/useFeatures.js +106 -0
  64. package/dist/cjs/hooks/useFeatures.js.map +7 -0
  65. package/dist/cjs/hooks/useMedia.js +208 -0
  66. package/dist/cjs/hooks/useMedia.js.map +7 -0
  67. package/dist/cjs/hooks/usePressable.js +51 -0
  68. package/dist/cjs/hooks/usePressable.js.map +7 -0
  69. package/dist/cjs/hooks/useTheme.js +121 -0
  70. package/dist/cjs/hooks/useTheme.js.map +7 -0
  71. package/dist/cjs/index.js +63 -0
  72. package/dist/cjs/index.js.map +7 -0
  73. package/dist/cjs/static/postProcessStyles.js +41 -0
  74. package/dist/cjs/static/postProcessStyles.js.map +7 -0
  75. package/dist/cjs/static.js +35 -0
  76. package/dist/cjs/static.js.map +7 -0
  77. package/dist/cjs/styled.js +73 -0
  78. package/dist/cjs/styled.js.map +7 -0
  79. package/dist/cjs/tamagui-base.css +8 -0
  80. package/dist/cjs/tamagui-base.css.map +7 -0
  81. package/dist/cjs/types.js +21 -0
  82. package/dist/cjs/types.js.map +7 -0
  83. package/dist/cjs/views/AbsoluteFullscreen.js +38 -0
  84. package/dist/cjs/views/AbsoluteFullscreen.js.map +7 -0
  85. package/dist/cjs/views/AbsoluteFullscreen.native.js +1 -0
  86. package/dist/{helpers/pseudos.js.map → cjs/views/AbsoluteFullscreen.native.js.map} +0 -0
  87. package/dist/cjs/views/Animated.js +135 -0
  88. package/dist/cjs/views/Animated.js.map +7 -0
  89. package/dist/cjs/views/Stack.js +52 -0
  90. package/dist/cjs/views/Stack.js.map +7 -0
  91. package/dist/cjs/views/Text.js +94 -0
  92. package/dist/cjs/views/Text.js.map +7 -0
  93. package/dist/cjs/views/TextAncestorContext.js +46 -0
  94. package/dist/cjs/views/TextAncestorContext.js.map +7 -0
  95. package/dist/cjs/views/Theme.js +97 -0
  96. package/dist/cjs/views/Theme.js.map +7 -0
  97. package/dist/cjs/views/ThemeContext.js +30 -0
  98. package/dist/cjs/views/ThemeContext.js.map +7 -0
  99. package/dist/cjs/views/ThemeInverse.js +54 -0
  100. package/dist/cjs/views/ThemeInverse.js.map +7 -0
  101. package/dist/cjs/views/ThemeManagerContext.js +85 -0
  102. package/dist/cjs/views/ThemeManagerContext.js.map +7 -0
  103. package/dist/cjs/views/ThemeProvider.js +73 -0
  104. package/dist/cjs/views/ThemeProvider.js.map +7 -0
  105. package/dist/esm/conf.js +29 -0
  106. package/dist/esm/conf.js.map +7 -0
  107. package/dist/{constants → esm/constants}/constants.js +4 -0
  108. package/dist/esm/constants/constants.js.map +7 -0
  109. package/dist/{constants → esm/constants}/platform.js +2 -1
  110. package/dist/esm/constants/platform.js.map +7 -0
  111. package/dist/{constants → esm/constants}/pseudos.js +0 -0
  112. package/dist/{constants → esm/constants}/pseudos.js.map +1 -1
  113. package/dist/{constants → esm/constants}/rnw.js +0 -0
  114. package/dist/{constants → esm/constants}/rnw.js.map +1 -1
  115. package/dist/{createComponent.js → esm/createComponent.js} +120 -91
  116. package/dist/esm/createComponent.js.map +7 -0
  117. package/dist/{createFont.js → esm/createFont.js} +4 -0
  118. package/dist/esm/createFont.js.map +7 -0
  119. package/dist/{createShorthands.js → esm/createShorthands.js} +0 -0
  120. package/dist/{createShorthands.js.map → esm/createShorthands.js.map} +1 -1
  121. package/dist/esm/createTamagui.js +166 -0
  122. package/dist/esm/createTamagui.js.map +7 -0
  123. package/dist/esm/createTheme.js +7 -0
  124. package/dist/esm/createTheme.js.map +7 -0
  125. package/dist/{createTokens.js → esm/createTokens.js} +4 -0
  126. package/dist/esm/createTokens.js.map +7 -0
  127. package/dist/{createVariable.js → esm/createVariable.js} +3 -0
  128. package/dist/{createVariable.js.map → esm/createVariable.js.map} +3 -3
  129. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js +1 -1
  130. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js.map +3 -3
  131. package/dist/{helpers → esm/helpers}/createMediaStyle.js +0 -0
  132. package/dist/{helpers → esm/helpers}/createMediaStyle.js.map +1 -1
  133. package/dist/{helpers → esm/helpers}/createPropMapper.js +44 -20
  134. package/dist/esm/helpers/createPropMapper.js.map +7 -0
  135. package/dist/{helpers → esm/helpers}/createTamaguiProvider.js +0 -0
  136. package/dist/{helpers → esm/helpers}/createTamaguiProvider.js.map +1 -1
  137. package/dist/{helpers → esm/helpers}/extendStaticConfig.js +4 -2
  138. package/dist/esm/helpers/extendStaticConfig.js.map +7 -0
  139. package/dist/{helpers → esm/helpers}/fixNativeShadow.js +0 -0
  140. package/dist/{helpers → esm/helpers}/fixNativeShadow.js.map +1 -1
  141. package/dist/esm/helpers/fixNativeShadow.native.js +34 -0
  142. package/dist/esm/helpers/fixNativeShadow.native.js.map +7 -0
  143. package/dist/{helpers → esm/helpers}/getSplitStyles.js +13 -23
  144. package/dist/esm/helpers/getSplitStyles.js.map +7 -0
  145. package/dist/{helpers → esm/helpers}/getStylesAtomic.js +2 -1
  146. package/dist/esm/helpers/getStylesAtomic.js.map +7 -0
  147. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js +0 -0
  148. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js.map +1 -1
  149. package/dist/esm/helpers/getThemeParentClassName.js +11 -0
  150. package/dist/esm/helpers/getThemeParentClassName.js.map +7 -0
  151. package/dist/{helpers → esm/helpers}/insertStyleRule.js +0 -0
  152. package/dist/{helpers → esm/helpers}/insertStyleRule.js.map +1 -1
  153. package/dist/{helpers → esm/helpers}/isObj.js +0 -0
  154. package/dist/{helpers → esm/helpers}/isObj.js.map +1 -1
  155. package/dist/esm/helpers/isTamaguiElement.js +11 -0
  156. package/dist/esm/helpers/isTamaguiElement.js.map +7 -0
  157. package/dist/{helpers → esm/helpers}/matchMedia.js +3 -0
  158. package/dist/esm/helpers/matchMedia.js.map +7 -0
  159. package/dist/{helpers → esm/helpers}/matchMedia.native.js +1 -0
  160. package/dist/{helpers → esm/helpers}/matchMedia.native.js.map +3 -3
  161. package/dist/{helpers → esm/helpers}/themeable.js +1 -1
  162. package/dist/{helpers → esm/helpers}/themeable.js.map +2 -2
  163. package/dist/esm/helpers/validate.js +60 -0
  164. package/dist/esm/helpers/validate.js.map +7 -0
  165. package/dist/{hooks → esm/hooks}/useConstant.js +0 -0
  166. package/dist/{hooks → esm/hooks}/useConstant.js.map +1 -1
  167. package/dist/{hooks → esm/hooks}/useFeatures.js +39 -51
  168. package/dist/esm/hooks/useFeatures.js.map +7 -0
  169. package/dist/{hooks → esm/hooks}/useMedia.js +10 -6
  170. package/dist/esm/hooks/useMedia.js.map +7 -0
  171. package/dist/{hooks → esm/hooks}/usePressable.js +2 -1
  172. package/dist/{hooks → esm/hooks}/usePressable.js.map +2 -2
  173. package/dist/{hooks → esm/hooks}/useTheme.js +21 -15
  174. package/dist/esm/hooks/useTheme.js.map +7 -0
  175. package/dist/{index.js → esm/index.js} +9 -2
  176. package/dist/esm/index.js.map +7 -0
  177. package/dist/{static → esm/static}/postProcessStyles.js +0 -0
  178. package/dist/{static → esm/static}/postProcessStyles.js.map +1 -1
  179. package/dist/{static.js → esm/static.js} +0 -0
  180. package/dist/{static.js.map → esm/static.js.map} +1 -1
  181. package/dist/{styled.js → esm/styled.js} +0 -0
  182. package/dist/esm/styled.js.map +7 -0
  183. package/dist/esm/tamagui-base.css +8 -0
  184. package/dist/esm/tamagui-base.css.map +7 -0
  185. package/dist/{types.js → esm/types.js} +0 -0
  186. package/dist/{types.js.map → esm/types.js.map} +0 -0
  187. package/dist/esm/views/AbsoluteFullscreen.js +14 -0
  188. package/dist/esm/views/AbsoluteFullscreen.js.map +7 -0
  189. package/dist/esm/views/AbsoluteFullscreen.native.js +1 -0
  190. package/dist/esm/views/AbsoluteFullscreen.native.js.map +7 -0
  191. package/dist/{views → esm/views}/Animated.js +0 -0
  192. package/dist/{views → esm/views}/Animated.js.map +1 -1
  193. package/dist/{views → esm/views}/Stack.js +0 -0
  194. package/dist/{views → esm/views}/Stack.js.map +1 -1
  195. package/dist/{views → esm/views}/Text.js +2 -2
  196. package/dist/esm/views/Text.js.map +7 -0
  197. package/dist/esm/views/TextAncestorContext.js +18 -0
  198. package/dist/esm/views/TextAncestorContext.js.map +7 -0
  199. package/dist/{views → esm/views}/Theme.js +27 -14
  200. package/dist/esm/views/Theme.js.map +7 -0
  201. package/dist/{views → esm/views}/ThemeContext.js +0 -0
  202. package/dist/{views → esm/views}/ThemeContext.js.map +1 -1
  203. package/dist/{views → esm/views}/ThemeInverse.js +0 -1
  204. package/dist/{views → esm/views}/ThemeInverse.js.map +3 -3
  205. package/dist/{views → esm/views}/ThemeManagerContext.js +15 -8
  206. package/dist/esm/views/ThemeManagerContext.js.map +7 -0
  207. package/dist/{views → esm/views}/ThemeProvider.js +3 -3
  208. package/dist/esm/views/ThemeProvider.js.map +7 -0
  209. package/dist/jsx/conf.js +28 -0
  210. package/dist/jsx/constants/constants.js +17 -0
  211. package/dist/jsx/constants/platform.js +19 -0
  212. package/dist/jsx/constants/pseudos.js +17 -0
  213. package/dist/jsx/constants/rnw.js +21 -0
  214. package/dist/jsx/createComponent.js +466 -0
  215. package/dist/jsx/createFont.js +27 -0
  216. package/dist/jsx/createShorthands.js +9 -0
  217. package/dist/jsx/createTamagui.js +165 -0
  218. package/dist/jsx/createTheme.js +6 -0
  219. package/dist/jsx/createTokens.js +32 -0
  220. package/dist/jsx/createVariable.js +24 -0
  221. package/dist/jsx/helpers/addStylesUsingClassname.js +56 -0
  222. package/dist/jsx/helpers/createMediaStyle.js +33 -0
  223. package/dist/jsx/helpers/createPropMapper.js +176 -0
  224. package/dist/jsx/helpers/createTamaguiProvider.js +19 -0
  225. package/dist/jsx/helpers/extendStaticConfig.js +60 -0
  226. package/dist/jsx/helpers/fixNativeShadow.js +7 -0
  227. package/dist/jsx/helpers/fixNativeShadow.native.js +33 -0
  228. package/dist/jsx/helpers/getSplitStyles.js +149 -0
  229. package/dist/jsx/helpers/getStylesAtomic.js +83 -0
  230. package/dist/jsx/helpers/getStylesAtomic.native.js +9 -0
  231. package/dist/jsx/helpers/getThemeParentClassName.js +10 -0
  232. package/dist/jsx/helpers/insertStyleRule.js +23 -0
  233. package/dist/jsx/helpers/isObj.js +6 -0
  234. package/dist/jsx/helpers/isTamaguiElement.js +10 -0
  235. package/dist/jsx/helpers/matchMedia.js +17 -0
  236. package/dist/jsx/helpers/matchMedia.native.js +8 -0
  237. package/dist/jsx/helpers/themeable.js +23 -0
  238. package/dist/jsx/helpers/validate.js +59 -0
  239. package/dist/jsx/hooks/useConstant.js +14 -0
  240. package/dist/jsx/hooks/useFeatures.js +57 -0
  241. package/dist/jsx/hooks/useMedia.js +174 -0
  242. package/dist/jsx/hooks/usePressable.js +13 -0
  243. package/dist/jsx/hooks/useTheme.js +98 -0
  244. package/dist/jsx/index.js +38 -0
  245. package/dist/jsx/static/postProcessStyles.js +17 -0
  246. package/dist/jsx/static.js +14 -0
  247. package/dist/jsx/styled.js +20 -0
  248. package/dist/jsx/tamagui-base.css +7 -0
  249. package/dist/jsx/types.js +0 -0
  250. package/dist/jsx/views/AbsoluteFullscreen.js +13 -0
  251. package/dist/jsx/views/AbsoluteFullscreen.native.js +0 -0
  252. package/dist/jsx/views/Animated.js +74 -0
  253. package/dist/jsx/views/Stack.js +11 -0
  254. package/dist/jsx/views/Text.js +59 -0
  255. package/dist/jsx/views/TextAncestorContext.js +15 -0
  256. package/dist/jsx/views/Theme.js +63 -0
  257. package/dist/jsx/views/ThemeContext.js +5 -0
  258. package/dist/jsx/views/ThemeInverse.js +22 -0
  259. package/dist/jsx/views/ThemeManagerContext.js +61 -0
  260. package/dist/jsx/views/ThemeProvider.js +39 -0
  261. package/package.json +20 -19
  262. package/types/conf.d.ts +44 -0
  263. package/types/conf.d.ts.map +1 -0
  264. package/{dist/packages/core/src → types}/constants/constants.d.ts +2 -0
  265. package/types/constants/constants.d.ts.map +1 -0
  266. package/{dist/packages/core/src → types}/constants/platform.d.ts +0 -0
  267. package/types/constants/platform.d.ts.map +1 -0
  268. package/{dist/packages/core/src → types}/constants/pseudos.d.ts +0 -0
  269. package/types/constants/pseudos.d.ts.map +1 -0
  270. package/{dist/packages/core/src → types}/constants/rnw.d.ts +0 -0
  271. package/types/constants/rnw.d.ts.map +1 -0
  272. package/types/createComponent.d.ts +20 -0
  273. package/types/createComponent.d.ts.map +1 -0
  274. package/types/createFont.d.ts +3 -0
  275. package/types/createFont.d.ts.map +1 -0
  276. package/{dist/packages/core/src → types}/createShorthands.d.ts +0 -0
  277. package/types/createShorthands.d.ts.map +1 -0
  278. package/types/createTamagui.d.ts +13 -0
  279. package/types/createTamagui.d.ts.map +1 -0
  280. package/types/createTheme.d.ts +7 -0
  281. package/types/createTheme.d.ts.map +1 -0
  282. package/{dist/packages/core/src → types}/createTokens.d.ts +24 -14
  283. package/types/createTokens.d.ts.map +1 -0
  284. package/{dist/packages/core/src → types}/createVariable.d.ts +1 -0
  285. package/types/createVariable.d.ts.map +1 -0
  286. package/types/helpers/addStylesUsingClassname.d.ts +3 -0
  287. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -0
  288. package/{dist/packages/core/src → types}/helpers/createMediaStyle.d.ts +0 -0
  289. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  290. package/types/helpers/createPropMapper.d.ts +3 -0
  291. package/types/helpers/createPropMapper.d.ts.map +1 -0
  292. package/{dist/packages/core/src → types}/helpers/createTamaguiProvider.d.ts +0 -0
  293. package/types/helpers/createTamaguiProvider.d.ts.map +1 -0
  294. package/{dist/packages/core/src → types}/helpers/extendStaticConfig.d.ts +1 -1
  295. package/types/helpers/extendStaticConfig.d.ts.map +1 -0
  296. package/{dist/packages/core/src → types}/helpers/fixNativeShadow.d.ts +0 -0
  297. package/types/helpers/fixNativeShadow.d.ts.map +1 -0
  298. package/types/helpers/fixNativeShadow.native.d.ts +2 -0
  299. package/types/helpers/fixNativeShadow.native.d.ts.map +1 -0
  300. package/{dist/packages/core/src → types}/helpers/getSplitStyles.d.ts +0 -0
  301. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  302. package/types/helpers/getStylesAtomic.d.ts +3 -0
  303. package/types/helpers/getStylesAtomic.d.ts.map +1 -0
  304. package/{dist/packages/core/src → types}/helpers/getStylesAtomic.native.d.ts +0 -0
  305. package/types/helpers/getStylesAtomic.native.d.ts.map +1 -0
  306. package/types/helpers/getThemeParentClassName.d.ts +2 -0
  307. package/types/helpers/getThemeParentClassName.d.ts.map +1 -0
  308. package/{dist/packages/core/src → types}/helpers/insertStyleRule.d.ts +0 -0
  309. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  310. package/types/helpers/isObj.d.ts +2 -0
  311. package/types/helpers/isObj.d.ts.map +1 -0
  312. package/types/helpers/isTamaguiElement.d.ts +3 -0
  313. package/types/helpers/isTamaguiElement.d.ts.map +1 -0
  314. package/{dist/packages/core/src → types}/helpers/matchMedia.d.ts +0 -0
  315. package/types/helpers/matchMedia.d.ts.map +1 -0
  316. package/{dist/packages/core/src → types}/helpers/matchMedia.native.d.ts +0 -0
  317. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  318. package/{dist/packages/core/src → types}/helpers/themeable.d.ts +0 -0
  319. package/types/helpers/themeable.d.ts.map +1 -0
  320. package/types/helpers/validate.d.ts +4 -0
  321. package/types/helpers/validate.d.ts.map +1 -0
  322. package/{dist/packages/core/src → types}/hooks/useConstant.d.ts +0 -0
  323. package/types/hooks/useConstant.d.ts.map +1 -0
  324. package/{dist/packages/core/src → types}/hooks/useFeatures.d.ts +0 -0
  325. package/types/hooks/useFeatures.d.ts.map +1 -0
  326. package/{dist/packages/core/src → types}/hooks/useMedia.d.ts +0 -0
  327. package/types/hooks/useMedia.d.ts.map +1 -0
  328. package/{dist/packages/core/src → types}/hooks/usePressable.d.ts +0 -0
  329. package/types/hooks/usePressable.d.ts.map +1 -0
  330. package/types/hooks/useTheme.d.ts +7 -0
  331. package/types/hooks/useTheme.d.ts.map +1 -0
  332. package/{dist/packages/core/src → types}/index.d.ts +5 -1
  333. package/types/index.d.ts.map +1 -0
  334. package/{dist/packages/core/src → types}/static/postProcessStyles.d.ts +0 -0
  335. package/types/static/postProcessStyles.d.ts.map +1 -0
  336. package/{dist/packages/core/src → types}/static.d.ts +3 -0
  337. package/types/static.d.ts.map +1 -0
  338. package/types/styled.d.ts +21 -0
  339. package/types/styled.d.ts.map +1 -0
  340. package/{dist/packages/core/src → types}/types.d.ts +88 -70
  341. package/types/types.d.ts.map +1 -0
  342. package/{dist/packages/core/src → types}/views/Animated.d.ts +0 -0
  343. package/types/views/Animated.d.ts.map +1 -0
  344. package/{dist/packages/core/src → types}/views/Stack.d.ts +0 -0
  345. package/types/views/Stack.d.ts.map +1 -0
  346. package/types/views/Text.d.ts +3 -0
  347. package/types/views/Text.d.ts.map +1 -0
  348. package/types/views/TextAncestorContext.d.ts +5 -0
  349. package/types/views/TextAncestorContext.d.ts.map +1 -0
  350. package/{dist/packages/core/src → types}/views/Theme.d.ts +1 -1
  351. package/types/views/Theme.d.ts.map +1 -0
  352. package/{dist/packages/core/src → types}/views/ThemeContext.d.ts +0 -0
  353. package/types/views/ThemeContext.d.ts.map +1 -0
  354. package/{dist/packages/core/src → types}/views/ThemeInverse.d.ts +0 -0
  355. package/types/views/ThemeInverse.d.ts.map +1 -0
  356. package/types/views/ThemeManagerContext.d.ts +22 -0
  357. package/types/views/ThemeManagerContext.d.ts.map +1 -0
  358. package/{dist/packages/core/src → types}/views/ThemeProvider.d.ts +0 -1
  359. package/types/views/ThemeProvider.d.ts.map +1 -0
  360. package/dist/constants/constants.js.map +0 -7
  361. package/dist/constants/platform.js.map +0 -7
  362. package/dist/constants/styleConstants.js +0 -46
  363. package/dist/constants/styleConstants.js.map +0 -7
  364. package/dist/createComponent.js.map +0 -7
  365. package/dist/createFont.js.map +0 -7
  366. package/dist/createTamagui.js +0 -159
  367. package/dist/createTamagui.js.map +0 -7
  368. package/dist/createTheme.js +0 -20
  369. package/dist/createTheme.js.map +0 -7
  370. package/dist/createTokens.js.map +0 -7
  371. package/dist/helpers/createPropMapper.js.map +0 -7
  372. package/dist/helpers/extendStaticConfig.js.map +0 -7
  373. package/dist/helpers/fixNativeShadow.native.js +0 -30
  374. package/dist/helpers/fixNativeShadow.native.js.map +0 -7
  375. package/dist/helpers/getSplitStyles.js.map +0 -7
  376. package/dist/helpers/getStylesAtomic.js.map +0 -7
  377. package/dist/helpers/matchMedia.js.map +0 -7
  378. package/dist/helpers/pseudos.js +0 -1
  379. package/dist/hooks/useFeatures.js.map +0 -7
  380. package/dist/hooks/useForceUpdate.js +0 -28
  381. package/dist/hooks/useForceUpdate.js.map +0 -7
  382. package/dist/hooks/useMedia.js.map +0 -7
  383. package/dist/hooks/useTheme.js.map +0 -7
  384. package/dist/index.cjs +0 -2103
  385. package/dist/index.cjs.map +0 -7
  386. package/dist/index.js.map +0 -7
  387. package/dist/packages/core/src/constants/constants.d.ts.map +0 -1
  388. package/dist/packages/core/src/constants/platform.d.ts.map +0 -1
  389. package/dist/packages/core/src/constants/pseudos.d.ts.map +0 -1
  390. package/dist/packages/core/src/constants/rnw.d.ts.map +0 -1
  391. package/dist/packages/core/src/createComponent.d.ts +0 -16
  392. package/dist/packages/core/src/createComponent.d.ts.map +0 -1
  393. package/dist/packages/core/src/createShorthands.d.ts.map +0 -1
  394. package/dist/packages/core/src/createTamagui.d.ts +0 -37
  395. package/dist/packages/core/src/createTamagui.d.ts.map +0 -1
  396. package/dist/packages/core/src/createTheme.d.ts +0 -5
  397. package/dist/packages/core/src/createTheme.d.ts.map +0 -1
  398. package/dist/packages/core/src/createTokens.d.ts.map +0 -1
  399. package/dist/packages/core/src/createVariable.d.ts.map +0 -1
  400. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts +0 -2
  401. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts.map +0 -1
  402. package/dist/packages/core/src/helpers/createMediaStyle.d.ts.map +0 -1
  403. package/dist/packages/core/src/helpers/createTamaguiProvider.d.ts.map +0 -1
  404. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts.map +0 -1
  405. package/dist/packages/core/src/helpers/fixNativeShadow.d.ts.map +0 -1
  406. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts +0 -2
  407. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts.map +0 -1
  408. package/dist/packages/core/src/helpers/getSplitStyles.d.ts.map +0 -1
  409. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts +0 -3
  410. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts.map +0 -1
  411. package/dist/packages/core/src/helpers/getStylesAtomic.native.d.ts.map +0 -1
  412. package/dist/packages/core/src/helpers/insertStyleRule.d.ts.map +0 -1
  413. package/dist/packages/core/src/helpers/matchMedia.d.ts.map +0 -1
  414. package/dist/packages/core/src/helpers/matchMedia.native.d.ts.map +0 -1
  415. package/dist/packages/core/src/helpers/themeable.d.ts.map +0 -1
  416. package/dist/packages/core/src/hooks/useConstant.d.ts.map +0 -1
  417. package/dist/packages/core/src/hooks/useFeatures.d.ts.map +0 -1
  418. package/dist/packages/core/src/hooks/useForceUpdate.d.ts +0 -2
  419. package/dist/packages/core/src/hooks/useForceUpdate.d.ts.map +0 -1
  420. package/dist/packages/core/src/hooks/useMedia.d.ts.map +0 -1
  421. package/dist/packages/core/src/hooks/usePressable.d.ts.map +0 -1
  422. package/dist/packages/core/src/hooks/useTheme.d.ts +0 -18
  423. package/dist/packages/core/src/hooks/useTheme.d.ts.map +0 -1
  424. package/dist/packages/core/src/index.d.ts.map +0 -1
  425. package/dist/packages/core/src/static/postProcessStyles.d.ts.map +0 -1
  426. package/dist/packages/core/src/static.d.ts.map +0 -1
  427. package/dist/packages/core/src/styled.d.ts +0 -16
  428. package/dist/packages/core/src/styled.d.ts.map +0 -1
  429. package/dist/packages/core/src/types.d.ts.map +0 -1
  430. package/dist/packages/core/src/views/Animated.d.ts.map +0 -1
  431. package/dist/packages/core/src/views/Stack.d.ts.map +0 -1
  432. package/dist/packages/core/src/views/Text.d.ts +0 -3
  433. package/dist/packages/core/src/views/Text.d.ts.map +0 -1
  434. package/dist/packages/core/src/views/TextAncestorContext.d.ts +0 -3
  435. package/dist/packages/core/src/views/TextAncestorContext.d.ts.map +0 -1
  436. package/dist/packages/core/src/views/Theme.d.ts.map +0 -1
  437. package/dist/packages/core/src/views/ThemeContext.d.ts.map +0 -1
  438. package/dist/packages/core/src/views/ThemeInverse.d.ts.map +0 -1
  439. package/dist/packages/core/src/views/ThemeManagerContext.d.ts +0 -15
  440. package/dist/packages/core/src/views/ThemeManagerContext.d.ts.map +0 -1
  441. package/dist/packages/core/src/views/ThemeProvider.d.ts.map +0 -1
  442. package/dist/packages/helpers/src/AllRules.d.ts +0 -3
  443. package/dist/packages/helpers/src/AllRules.d.ts.map +0 -1
  444. package/dist/packages/helpers/src/concatClassName.d.ts +0 -2
  445. package/dist/packages/helpers/src/concatClassName.d.ts.map +0 -1
  446. package/dist/packages/helpers/src/index.d.ts +0 -5
  447. package/dist/packages/helpers/src/index.d.ts.map +0 -1
  448. package/dist/packages/helpers/src/types.d.ts +0 -8
  449. package/dist/packages/helpers/src/types.d.ts.map +0 -1
  450. package/dist/packages/helpers/src/validStyleProps.d.ts +0 -475
  451. package/dist/packages/helpers/src/validStyleProps.d.ts.map +0 -1
  452. package/dist/styled.js.map +0 -7
  453. package/dist/views/SafeAreaProvider.js +0 -30
  454. package/dist/views/SafeAreaProvider.js.map +0 -7
  455. package/dist/views/Text.js.map +0 -7
  456. package/dist/views/TextAncestorContext.js +0 -18
  457. package/dist/views/TextAncestorContext.js.map +0 -7
  458. package/dist/views/Theme.js.map +0 -7
  459. package/dist/views/ThemeManagerContext.js.map +0 -7
  460. package/dist/views/ThemeProvider.js.map +0 -7
  461. package/src/constants/constants.ts +0 -12
  462. package/src/constants/platform.ts +0 -15
  463. package/src/constants/pseudos.ts +0 -14
  464. package/src/constants/rnw.tsx +0 -20
  465. package/src/createComponent.tsx +0 -597
  466. package/src/createFont.ts +0 -26
  467. package/src/createShorthands.ts +0 -5
  468. package/src/createTamagui.ts +0 -207
  469. package/src/createTheme.ts +0 -19
  470. package/src/createTokens.ts +0 -83
  471. package/src/createVariable.ts +0 -22
  472. package/src/helpers/addStylesUsingClassname.tsx +0 -60
  473. package/src/helpers/createMediaStyle.ts +0 -46
  474. package/src/helpers/createPropMapper.ts +0 -184
  475. package/src/helpers/createTamaguiProvider.tsx +0 -22
  476. package/src/helpers/extendStaticConfig.ts +0 -68
  477. package/src/helpers/fixNativeShadow.native.tsx +0 -27
  478. package/src/helpers/fixNativeShadow.tsx +0 -2
  479. package/src/helpers/getSplitStyles.tsx +0 -210
  480. package/src/helpers/getStylesAtomic.native.ts +0 -3
  481. package/src/helpers/getStylesAtomic.ts +0 -103
  482. package/src/helpers/insertStyleRule.tsx +0 -18
  483. package/src/helpers/isObj.ts +0 -1
  484. package/src/helpers/matchMedia.native.ts +0 -3
  485. package/src/helpers/matchMedia.ts +0 -9
  486. package/src/helpers/themeable.tsx +0 -42
  487. package/src/hooks/useConstant.tsx +0 -10
  488. package/src/hooks/useFeatures.tsx +0 -78
  489. package/src/hooks/useMedia.tsx +0 -194
  490. package/src/hooks/usePressable.tsx +0 -9
  491. package/src/hooks/useTheme.tsx +0 -107
  492. package/src/index.ts +0 -32
  493. package/src/static/postProcessStyles.tsx +0 -20
  494. package/src/static.ts +0 -22
  495. package/src/styled.ts +0 -82
  496. package/src/types.tsx +0 -561
  497. package/src/views/Animated.tsx +0 -121
  498. package/src/views/SafeAreaProvider.tsx +0 -33
  499. package/src/views/Stack.tsx +0 -21
  500. package/src/views/Text.tsx +0 -66
  501. package/src/views/TextAncestorContext.tsx +0 -12
  502. package/src/views/Theme.tsx +0 -73
  503. package/src/views/ThemeContext.tsx +0 -5
  504. package/src/views/ThemeInverse.tsx +0 -23
  505. package/src/views/ThemeManagerContext.tsx +0 -50
  506. package/src/views/ThemeProvider.tsx +0 -52
  507. package/types.d.ts +0 -557
@@ -0,0 +1,74 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { useMemo } from "react";
4
+ import {
5
+ Animated
6
+ } from "react-native";
7
+ import { useIsomorphicLayoutEffect } from "../constants/platform";
8
+ import { useConstant } from "../hooks/useConstant";
9
+ import { Stack } from "./Stack";
10
+ const defaultAnimation = {
11
+ from: {
12
+ opacity: 0,
13
+ translateY: 12
14
+ },
15
+ to: {
16
+ opacity: 1,
17
+ translateY: 0
18
+ }
19
+ };
20
+ const styleKeys = {
21
+ opacity: true,
22
+ backgroundColor: true,
23
+ borderColor: true
24
+ };
25
+ const AnimatedStack = /* @__PURE__ */ __name(({
26
+ animateState = "in",
27
+ animation = defaultAnimation,
28
+ velocity = 6,
29
+ children,
30
+ animated,
31
+ ...props
32
+ }) => {
33
+ const driver = useConstant(() => {
34
+ return new Animated.Value(0);
35
+ });
36
+ const animatedProps = useMemo(() => {
37
+ if (!animated) {
38
+ return null;
39
+ }
40
+ const styleProps = {};
41
+ const transform = [];
42
+ for (const key in animation.from) {
43
+ const fromVal = animation.from[key];
44
+ const toVal = animation.to[key];
45
+ const interpolatedVal = driver.interpolate({
46
+ inputRange: [0, 1],
47
+ outputRange: [fromVal, toVal]
48
+ });
49
+ if (styleKeys[key]) {
50
+ styleProps[key] = interpolatedVal;
51
+ } else {
52
+ transform.push({
53
+ [key]: interpolatedVal
54
+ });
55
+ }
56
+ }
57
+ return { transform, ...styleProps };
58
+ }, [animated, animateState]);
59
+ useIsomorphicLayoutEffect(() => {
60
+ if (!animated) {
61
+ return;
62
+ }
63
+ Animated.spring(driver, {
64
+ useNativeDriver: true,
65
+ velocity,
66
+ toValue: animateState === "in" ? 1 : 0
67
+ }).start();
68
+ }, [animated, animateState]);
69
+ const childrenMemo = useMemo(() => children, [children]);
70
+ return <Stack animated={animated} {...props} {...animatedProps}>{childrenMemo}</Stack>;
71
+ }, "AnimatedStack");
72
+ export {
73
+ AnimatedStack
74
+ };
@@ -0,0 +1,11 @@
1
+ import { stackDefaultStyles } from "../constants/constants";
2
+ import { createComponent } from "../createComponent";
3
+ const Stack = createComponent({
4
+ defaultProps: {
5
+ ...stackDefaultStyles,
6
+ flexDirection: "column"
7
+ }
8
+ });
9
+ export {
10
+ Stack
11
+ };
@@ -0,0 +1,59 @@
1
+ import { stylePropsTextOnly, validStyles } from "@tamagui/helpers";
2
+ import { isWeb } from "../constants/platform";
3
+ import { createComponent } from "../createComponent";
4
+ const ellipseStyle = {
5
+ maxWidth: "100%",
6
+ overflow: "hidden",
7
+ textOverflow: "ellipsis",
8
+ whiteSpace: "nowrap"
9
+ };
10
+ const Text = createComponent({
11
+ isText: true,
12
+ defaultProps: {
13
+ display: isWeb ? "inline" : "flex",
14
+ boxSizing: "border-box",
15
+ fontFamily: "System",
16
+ wordWrap: "break-word"
17
+ },
18
+ variants: {
19
+ numberOfLines: {
20
+ 1: ellipseStyle,
21
+ "[number]": (lines) => lines > 1 ? { WebkitLineClamp: 1 } : null
22
+ },
23
+ selectable: {
24
+ true: {
25
+ userSelect: "text"
26
+ },
27
+ false: {
28
+ userSelect: "none"
29
+ }
30
+ },
31
+ pressable: {
32
+ true: {
33
+ cursor: "pointer"
34
+ }
35
+ },
36
+ ellipse: {
37
+ true: isWeb ? ellipseStyle : {
38
+ numberOfLines: 1,
39
+ lineBreakMode: "clip"
40
+ }
41
+ }
42
+ },
43
+ deoptProps: new Set(isWeb ? [] : ["ellipse"]),
44
+ validStyles: {
45
+ ...validStyles,
46
+ ...stylePropsTextOnly,
47
+ ...isWeb && {
48
+ userSelect: true,
49
+ textOverflow: true,
50
+ whiteSpace: true,
51
+ wordWrap: true,
52
+ selectable: true,
53
+ cursor: true
54
+ }
55
+ }
56
+ });
57
+ export {
58
+ Text
59
+ };
@@ -0,0 +1,15 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ var _a, _b;
4
+ import { createContext } from "react";
5
+ import { rnw } from "../constants/rnw";
6
+ const FallbackNativeContext = createContext(false);
7
+ const TextAncestorContext = (_b = (_a = rnw) == null ? void 0 : _a.TextAncestorContext) != null ? _b : FallbackNativeContext;
8
+ const TextAncestorProvider = /* @__PURE__ */ __name((props) => {
9
+ return <TextAncestorContext.Provider value={false}>{props.children}</TextAncestorContext.Provider>;
10
+ }, "TextAncestorProvider");
11
+ export {
12
+ FallbackNativeContext,
13
+ TextAncestorContext,
14
+ TextAncestorProvider
15
+ };
@@ -0,0 +1,63 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { useContext, useState } from "react";
4
+ import { isWeb, useIsomorphicLayoutEffect } from "../constants/platform";
5
+ import { getThemeParentClassName } from "../helpers/getThemeParentClassName";
6
+ import { useConstant } from "../hooks/useConstant";
7
+ import { ThemeContext } from "./ThemeContext";
8
+ import { ThemeManager, ThemeManagerContext } from "./ThemeManagerContext";
9
+ const Theme = /* @__PURE__ */ __name((props) => {
10
+ var _a, _b;
11
+ const parent = useContext(ThemeManagerContext);
12
+ const themes = useContext(ThemeContext);
13
+ const [parentName, setParentName] = useState(parent.name || "light");
14
+ if (!themes) {
15
+ console.warn("Error, no themes in context", props);
16
+ return props.children;
17
+ }
18
+ const nextNameParent = `${props.name}-${parentName}`;
19
+ const nextNameParentParent = `${props.name}-${parent.parentName}`;
20
+ const name = !props.name ? null : props.name in themes ? props.name : nextNameParent in themes ? nextNameParent : nextNameParentParent in themes ? nextNameParentParent : null;
21
+ const theme = name ? themes[name] : null;
22
+ const themeManager = useConstant(() => {
23
+ if (!theme) {
24
+ return null;
25
+ }
26
+ const manager = new ThemeManager();
27
+ if (name) {
28
+ manager.setActiveTheme({ name, theme: themes[name], parentName });
29
+ }
30
+ return manager;
31
+ });
32
+ useIsomorphicLayoutEffect(() => {
33
+ if (!themeManager) {
34
+ return;
35
+ }
36
+ if (name) {
37
+ themeManager.setActiveTheme({ name, theme, parentName });
38
+ }
39
+ return parent.onChangeTheme((next) => {
40
+ if (next) {
41
+ themeManager.setActiveTheme({ name: next, theme: themes[next], parentName });
42
+ setParentName(next);
43
+ }
44
+ });
45
+ }, [themes, name, parentName]);
46
+ if (!name || !theme) {
47
+ return props.children;
48
+ }
49
+ const contents = themeManager ? <ThemeManagerContext.Provider value={themeManager}>{props.children}</ThemeManagerContext.Provider> : props.children;
50
+ if (isWeb) {
51
+ if (props.disableThemeClass) {
52
+ return contents;
53
+ }
54
+ if (name) {
55
+ const color = (_b = (_a = themes[name]) == null ? void 0 : _a["color"]) == null ? void 0 : _b["variable"];
56
+ return <div className={getThemeParentClassName(props.name)} style={{ display: "contents", color }}>{contents}</div>;
57
+ }
58
+ }
59
+ return contents;
60
+ }, "Theme");
61
+ export {
62
+ Theme
63
+ };
@@ -0,0 +1,5 @@
1
+ import { createContext } from "react";
2
+ const ThemeContext = createContext(null);
3
+ export {
4
+ ThemeContext
5
+ };
@@ -0,0 +1,22 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { useDefaultThemeName, useThemeName } from "../hooks/useTheme";
4
+ import { Theme } from "./Theme";
5
+ let inversions = {
6
+ light: "dark",
7
+ dark: "light"
8
+ };
9
+ function setThemeInversions(next) {
10
+ inversions = next;
11
+ }
12
+ __name(setThemeInversions, "setThemeInversions");
13
+ const ThemeInverse = /* @__PURE__ */ __name((props) => {
14
+ const themeName = useThemeName();
15
+ const defaultTheme = useDefaultThemeName();
16
+ const name = inversions[themeName] || inversions[defaultTheme] || null;
17
+ return <Theme name={name}>{props.children}</Theme>;
18
+ }, "ThemeInverse");
19
+ export {
20
+ ThemeInverse,
21
+ setThemeInversions
22
+ };
@@ -0,0 +1,61 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { createContext } from "react";
4
+ class ThemeManager {
5
+ constructor() {
6
+ this.name = "light";
7
+ this.parentName = null;
8
+ this.keys = /* @__PURE__ */ new Map();
9
+ this.listeners = /* @__PURE__ */ new Map();
10
+ this.themeListeners = /* @__PURE__ */ new Set();
11
+ this.theme = null;
12
+ }
13
+ setActiveTheme({
14
+ name,
15
+ theme,
16
+ parentName
17
+ }) {
18
+ if (name === this.name)
19
+ return;
20
+ this.name = name;
21
+ this.theme = theme;
22
+ this.parentName = parentName || null;
23
+ this.update();
24
+ }
25
+ track(uuid, keys) {
26
+ if (!this.name)
27
+ return;
28
+ this.keys.set(uuid, keys);
29
+ }
30
+ update() {
31
+ var _a;
32
+ if (!this.name) {
33
+ this.keys.clear();
34
+ }
35
+ for (const [uuid, keys] of this.keys.entries()) {
36
+ if (keys.size) {
37
+ (_a = this.listeners.get(uuid)) == null ? void 0 : _a();
38
+ }
39
+ }
40
+ this.themeListeners.forEach((cb) => cb(this.name, this));
41
+ }
42
+ onChangeTheme(cb) {
43
+ this.themeListeners.add(cb);
44
+ return () => {
45
+ this.themeListeners.delete(cb);
46
+ };
47
+ }
48
+ onUpdate(uuid, cb) {
49
+ this.listeners.set(uuid, cb);
50
+ return () => {
51
+ this.listeners.delete(uuid);
52
+ this.keys.delete(uuid);
53
+ };
54
+ }
55
+ }
56
+ __name(ThemeManager, "ThemeManager");
57
+ const ThemeManagerContext = createContext(new ThemeManager());
58
+ export {
59
+ ThemeManager,
60
+ ThemeManagerContext
61
+ };
@@ -0,0 +1,39 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { useMemo } from "react";
4
+ import { getHasConfigured } from "../conf";
5
+ import { GET_DEFAULT_THEME } from "../constants/constants";
6
+ import { useIsomorphicLayoutEffect } from "../constants/platform";
7
+ import { getThemeParentClassName } from "../helpers/getThemeParentClassName";
8
+ import { Theme } from "./Theme";
9
+ import { ThemeContext } from "./ThemeContext";
10
+ const ThemeProvider = /* @__PURE__ */ __name((props) => {
11
+ if (!getHasConfigured()) {
12
+ throw new Error(`Missing configureThemes() call, add to your root file`);
13
+ }
14
+ useIsomorphicLayoutEffect(() => {
15
+ if (props.disableRootThemeClass) {
16
+ return;
17
+ }
18
+ if (typeof document !== "undefined") {
19
+ const cns = getThemeParentClassName(`${props.defaultTheme}`).split(" ");
20
+ cns.forEach((cn) => document.body.classList.add(cn));
21
+ return () => {
22
+ cns.forEach((cn) => document.body.classList.remove(cn));
23
+ };
24
+ }
25
+ }, []);
26
+ const themeContext = useMemo(() => {
27
+ return new Proxy(props.themes, {
28
+ get(target, key) {
29
+ if (key === GET_DEFAULT_THEME)
30
+ return props.defaultTheme;
31
+ return Reflect.get(target, key);
32
+ }
33
+ });
34
+ }, [props.themes]);
35
+ return <ThemeContext.Provider value={themeContext}><Theme name={props.defaultTheme} disableThemeClass={props.disableRootThemeClass}>{props.children}</Theme></ThemeContext.Provider>;
36
+ }, "ThemeProvider");
37
+ export {
38
+ ThemeProvider
39
+ };
package/package.json CHANGED
@@ -1,41 +1,42 @@
1
1
  {
2
2
  "name": "@tamagui/core",
3
- "version": "1.0.0-alpha.5",
3
+ "version": "1.0.0-alpha.58",
4
4
  "source": "src/index.ts",
5
- "main": "dist/index.cjs",
6
- "module": "dist/index.js",
7
- "typings": "types.d.ts",
5
+ "main": "dist/cjs",
6
+ "module": "dist/esm",
7
+ "typings": "types",
8
+ "sideEffects": [
9
+ "*.css"
10
+ ],
8
11
  "scripts": {
9
12
  "build": "tamagui-build",
10
13
  "watch": "tamagui-build --watch"
11
14
  },
12
15
  "files": [
13
- "types.d.ts",
14
- "dist",
15
- "src"
16
+ "types",
17
+ "dist"
16
18
  ],
17
19
  "dependencies": {
18
- "@tamagui/helpers": "^1.0.0-alpha.5",
19
- "@tamagui/use-debounce": "^1.0.0-alpha.5",
20
- "@tamagui/use-force-update": "^1.0.0-alpha.5",
20
+ "@tamagui/helpers": "^1.0.0-alpha.58",
21
+ "@tamagui/ow": "^0.28.1",
22
+ "@tamagui/use-debounce": "^1.0.0-alpha.58",
23
+ "@tamagui/use-force-update": "^1.0.0-alpha.58",
21
24
  "react": "*",
22
- "react-dom": "*",
23
- "react-native-safe-area-context": "^3.3.0"
25
+ "react-dom": "*"
24
26
  },
25
27
  "peerDependencies": {
26
28
  "react-native-web": "*"
27
29
  },
28
30
  "devDependencies": {
29
- "@tamagui/build": "^1.0.0-alpha.2",
31
+ "@tamagui/build": "^1.0.0-alpha.58",
30
32
  "@types/react": "^17.0.35",
31
- "esbuild": "^0.11.20",
32
- "typescript": "^4.4.4"
33
+ "csstype": "^3.0.10",
34
+ "esbuild": "^0.13.12",
35
+ "react-native-web": "^0.17.5",
36
+ "typescript": "^4.5.2"
33
37
  },
34
38
  "publishConfig": {
35
39
  "access": "public"
36
40
  },
37
- "engines": {
38
- "node": ">=16"
39
- },
40
- "gitHead": "e12f14aa087c41ea5ba3933a05f33fada0be03c0"
41
+ "gitHead": "d0ee3344565501e50d5a1bc2ea85ea542bb71955"
41
42
  }
@@ -0,0 +1,44 @@
1
+ import { ConfigListener, TamaguiInternalConfig } from './types';
2
+ export declare let conf: TamaguiInternalConfig | null;
3
+ export declare const setConfig: (next: TamaguiInternalConfig) => void;
4
+ export declare const getHasConfigured: () => boolean;
5
+ export declare const getTamagui: () => TamaguiInternalConfig<import("./types").CreateTokens<string | number | import("./createVariable").Variable>, {
6
+ [key: string]: {
7
+ bg: string | import("./createVariable").Variable;
8
+ bg2: string | import("./createVariable").Variable;
9
+ bg3: string | import("./createVariable").Variable;
10
+ bg4: string | import("./createVariable").Variable;
11
+ color: string | import("./createVariable").Variable;
12
+ color2: string | import("./createVariable").Variable;
13
+ color3: string | import("./createVariable").Variable;
14
+ color4: string | import("./createVariable").Variable;
15
+ borderColor: string | import("./createVariable").Variable;
16
+ borderColor2: string | import("./createVariable").Variable;
17
+ shadowColor: string | import("./createVariable").Variable;
18
+ shadowColor2: string | import("./createVariable").Variable;
19
+ };
20
+ }, {}, {
21
+ [x: string]: {
22
+ [key: string]: string | number;
23
+ };
24
+ }>;
25
+ export declare const getTokens: () => import("./types").CreateTokens<import("./createVariable").Variable>;
26
+ export declare const getThemes: () => {
27
+ [key: string]: {
28
+ bg: string | import("./createVariable").Variable;
29
+ bg2: string | import("./createVariable").Variable;
30
+ bg3: string | import("./createVariable").Variable;
31
+ bg4: string | import("./createVariable").Variable;
32
+ color: string | import("./createVariable").Variable;
33
+ color2: string | import("./createVariable").Variable;
34
+ color3: string | import("./createVariable").Variable;
35
+ color4: string | import("./createVariable").Variable;
36
+ borderColor: string | import("./createVariable").Variable;
37
+ borderColor2: string | import("./createVariable").Variable;
38
+ shadowColor: string | import("./createVariable").Variable;
39
+ shadowColor2: string | import("./createVariable").Variable;
40
+ };
41
+ };
42
+ export declare const configListeners: Set<ConfigListener>;
43
+ export declare const onConfiguredOnce: (cb: ConfigListener) => void;
44
+ //# sourceMappingURL=conf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conf.d.ts","sourceRoot":"","sources":["../src/conf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAE/D,eAAO,IAAI,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAAA;AAE7C,eAAO,MAAM,SAAS,SAAU,qBAAqB,SAEpD,CAAA;AAED,eAAO,MAAM,gBAAgB,eAAe,CAAA;AAC5C,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;EAAc,CAAA;AACrC,eAAO,MAAM,SAAS,2EAA2B,CAAA;AACjD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;CAAqB,CAAA;AAE3C,eAAO,MAAM,eAAe,qBAA4B,CAAA;AAExD,eAAO,MAAM,gBAAgB,OAAQ,cAAc,SAMlD,CAAA"}
@@ -1,3 +1,5 @@
1
+ export declare const GET_DEFAULT_THEME = "___TGUI";
2
+ export declare const PREFIX = "theme--";
1
3
  export declare const stackDefaultStyles: {
2
4
  display?: string | undefined;
3
5
  flexBasis?: string | undefined;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,YAAY,CAAA;AAE1C,eAAO,MAAM,MAAM,YAAY,CAAA;AAE/B,eAAO,MAAM,kBAAkB;;;;;;CAS9B,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/constants/platform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAmB,MAAM,OAAO,CAAA;AAGlD,eAAO,MAAM,KAAK,SAEgD,CAAA;AAElE,eAAO,MAAM,KAAK,SAAyC,CAAA;AAC3D,eAAO,MAAM,yBAAyB,kBAAsC,CAAA;AAC5E,eAAO,MAAM,QAAQ,SAA+E,CAAA;AACpG,eAAO,MAAM,gBAAgB,SAA4D,CAAA;AACzF,eAAO,MAAM,aAAa,SAA6B,CAAA;AACvD,eAAO,MAAM,QAAQ,SAKA,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pseudos.d.ts","sourceRoot":"","sources":["../../src/constants/pseudos.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO;;;;;;;;;;;;;CAanB,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rnw.d.ts","sourceRoot":"","sources":["../../src/constants/rnw.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,CAAA"}
@@ -0,0 +1,20 @@
1
+ /// <reference types="react" />
2
+ import './tamagui-base.css';
3
+ import { ViewStyle } from 'react-native';
4
+ import { StaticComponent, StaticConfig, StaticConfigParsed } from './types';
5
+ export declare const mouseUps: Set<Function>;
6
+ declare type DefaultProps = {};
7
+ export declare function createComponent<ComponentPropTypes extends Object = DefaultProps>(configIn: Partial<StaticConfig> | StaticConfigParsed): StaticComponent<ComponentPropTypes, void, StaticConfigParsed, any>;
8
+ export declare const Spacer: StaticComponent<{
9
+ size?: number | `$${string}` | `$${number}` | undefined;
10
+ flex?: number | boolean | undefined;
11
+ }, void, StaticConfigParsed, any>;
12
+ export declare function spacedChildren({ isZStack, children, space, flexDirection, }: {
13
+ isZStack?: boolean;
14
+ children: any;
15
+ space?: any;
16
+ flexDirection?: ViewStyle['flexDirection'];
17
+ }): any;
18
+ export declare const AbsoluteFill: (props: any) => JSX.Element;
19
+ export {};
20
+ //# sourceMappingURL=createComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,oBAAoB,CAAA;AAe3B,OAAO,EAA0B,SAAS,EAAE,MAAM,cAAc,CAAA;AAYhE,OAAO,EAEL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAEnB,MAAM,SAAS,CAAA;AAGhB,eAAO,MAAM,QAAQ,eAAsB,CAAA;AAS3C,aAAK,YAAY,GAAG,EAAE,CAAA;AAuBtB,wBAAgB,eAAe,CAAC,kBAAkB,SAAS,MAAM,GAAG,YAAY,EAC9E,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,kBAAkB,sEAqdrD;AAOD,eAAO,MAAM,MAAM;;;iCAyBjB,CAAA;AAEF,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,aAAa,GACd,EAAE;IACD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,GAAG,CAAA;IACb,KAAK,CAAC,EAAE,GAAG,CAAA;IACX,aAAa,CAAC,EAAE,SAAS,CAAC,eAAe,CAAC,CAAA;CAC3C,OA0CA;AAED,eAAO,MAAM,YAAY,UAAW,GAAG,gBAKpC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { GenericFont } from './types';
2
+ export declare const createFont: <A extends GenericFont>(font: A) => A;
3
+ //# sourceMappingURL=createFont.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createFont.d.ts","sourceRoot":"","sources":["../src/createFont.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAErC,eAAO,MAAM,UAAU,uCA2BtB,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createShorthands.d.ts","sourceRoot":"","sources":["../src/createShorthands.ts"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAEnF"}
@@ -0,0 +1,13 @@
1
+ import { Variable } from './createVariable';
2
+ import { CreateTamaguiConfig, GenericTamaguiConfig, MediaQueryKey, TamaguiInternalConfig, TamaguiProviderProps } from './types';
3
+ export declare type CreateTamaguiProps = TamaguiProviderProps & Partial<Omit<GenericTamaguiConfig, 'themes' | 'tokens'>> & {
4
+ tokens: GenericTamaguiConfig['tokens'];
5
+ themes: {
6
+ [key: string]: {
7
+ [key: string]: string | number | Variable;
8
+ };
9
+ };
10
+ mediaQueryDefaultActive?: MediaQueryKey[];
11
+ };
12
+ export declare function createTamagui<Conf extends CreateTamaguiProps>(config: Conf): Conf extends CreateTamaguiConfig<infer A, infer B, infer C, infer D> ? TamaguiInternalConfig<A, B, C, D> : unknown;
13
+ //# sourceMappingURL=createTamagui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTamagui.d.ts","sourceRoot":"","sources":["../src/createTamagui.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAA;AAG3D,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAEhB,oBAAY,kBAAkB,GAAG,oBAAoB,GAEnD,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAC,GAAG;IACzD,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,EAAE;QACN,CAAC,GAAG,EAAE,MAAM,GAAG;YACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAA;SAC1C,CAAA;KACF,CAAA;IAED,uBAAuB,CAAC,EAAE,aAAa,EAAE,CAAA;CAC1C,CAAA;AAIH,wBAAgB,aAAa,CAAC,IAAI,SAAS,kBAAkB,EAC3D,MAAM,EAAE,IAAI,GACX,IAAI,SAAS,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GACnE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GACjC,OAAO,CAyIV"}
@@ -0,0 +1,7 @@
1
+ import { Variable } from './createVariable';
2
+ declare type GenericTheme = {
3
+ [key: string]: string | Variable;
4
+ };
5
+ export declare const createTheme: <Theme extends GenericTheme>(theme: Theme) => { [K in keyof Theme]: string | Variable | Theme[K]; };
6
+ export {};
7
+ //# sourceMappingURL=createTheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTheme.d.ts","sourceRoot":"","sources":["../src/createTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAE3C,aAAK,YAAY,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAA;CAAE,CAAA;AAExD,eAAO,MAAM,WAAW,qGAId,CAAA"}
@@ -3,10 +3,15 @@ import { CreateTokens } from './types';
3
3
  export declare function createTokens<T extends CreateTokens>(tokens: T): MakeTokens<T>;
4
4
  export declare const mapTokensToVariables: (tokens: CreateTokens, parentPath?: string) => CreateTokens<Variable>;
5
5
  declare type MakeTokens<T> = T extends {
6
- font: infer A;
7
- fontSize: infer B;
8
- lineHeight: infer C;
9
- letterSpace: infer D;
6
+ font: {
7
+ [key in infer A]: {
8
+ size: infer B;
9
+ lineHeight: infer C;
10
+ letterSpacing: infer D;
11
+ weight: infer Z;
12
+ family: infer Y;
13
+ };
14
+ };
10
15
  color: infer E;
11
16
  space: infer F;
12
17
  size: infer G;
@@ -14,16 +19,21 @@ declare type MakeTokens<T> = T extends {
14
19
  zIndex: infer J;
15
20
  } ? {
16
21
  font: {
17
- [key in keyof A]: Variable;
18
- };
19
- fontSize: {
20
- [key in keyof B]: Variable;
21
- };
22
- lineHeight: {
23
- [key in keyof C]: Variable;
24
- };
25
- letterSpace: {
26
- [key in keyof D]: Variable;
22
+ [key in A]: {
23
+ size: {
24
+ [key in keyof B]: Variable;
25
+ };
26
+ lineHeight: {
27
+ [key in keyof C]: Variable;
28
+ };
29
+ letterSpacing: {
30
+ [key in keyof D]: Variable;
31
+ };
32
+ weight: {
33
+ [key in keyof Z]: Variable;
34
+ };
35
+ family: Y;
36
+ };
27
37
  };
28
38
  color: {
29
39
  [key in keyof E]: Variable;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTokens.d.ts","sourceRoot":"","sources":["../src/createTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAA;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAItC,wBAAgB,YAAY,CAAC,CAAC,SAAS,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAM7E;AAMD,eAAO,MAAM,oBAAoB,WACvB,YAAY,0BAEnB,aAAa,QAAQ,CAavB,CAAA;AAGD,aAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAC7B,IAAI,EAAE;SACH,GAAG,IAAI,MAAM,CAAC,GAAG;YAChB,IAAI,EAAE,MAAM,CAAC,CAAA;YACb,UAAU,EAAE,MAAM,CAAC,CAAA;YACnB,aAAa,EAAE,MAAM,CAAC,CAAA;YACtB,MAAM,EAAE,MAAM,CAAC,CAAA;YACf,MAAM,EAAE,MAAM,CAAC,CAAA;SAChB;KACF,CAAA;IACD,KAAK,EAAE,MAAM,CAAC,CAAA;IACd,KAAK,EAAE,MAAM,CAAC,CAAA;IACd,IAAI,EAAE,MAAM,CAAC,CAAA;IACb,MAAM,EAAE,MAAM,CAAC,CAAA;IACf,MAAM,EAAE,MAAM,CAAC,CAAA;CAChB,GACG;IACE,IAAI,EAAE;SACH,GAAG,IAAI,CAAC,GAAG;YACV,IAAI,EAAE;iBACH,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;aAC3B,CAAA;YACD,UAAU,EAAE;iBACT,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;aAC3B,CAAA;YACD,aAAa,EAAE;iBACZ,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;aAC3B,CAAA;YACD,MAAM,EAAE;iBACL,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;aAC3B,CAAA;YACD,MAAM,EAAE,CAAC,CAAA;SACV;KACF,CAAA;IACD,KAAK,EAAE;SACJ,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;KAC3B,CAAA;IACD,KAAK,EAAE;SACJ,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;KAC3B,CAAA;IACD,IAAI,EAAE;SACH,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;KAC3B,CAAA;IACD,MAAM,EAAE;SACL,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;KAC3B,CAAA;IACD,MAAM,EAAE;SACL,GAAG,IAAI,MAAM,CAAC,GAAG,QAAQ;KAC3B,CAAA;CACF,GACD,KAAK,CAAA"}
@@ -3,6 +3,7 @@ export declare class Variable {
3
3
  val: string | number;
4
4
  variable: string | number;
5
5
  constructor({ val, name }: VariableIn);
6
+ toString(): string;
6
7
  }
7
8
  declare type VariableIn = {
8
9
  val: string | number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createVariable.d.ts","sourceRoot":"","sources":["../src/createVariable.ts"],"names":[],"mappings":"AAEA,qBAAa,QAAQ;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;gBAEb,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,UAAU;IAOrC,QAAQ;CAGT;AAED,aAAK,UAAU,GAAG;IAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAExD,eAAO,MAAM,cAAc,UAAW,UAAU,aAAwB,CAAA;AAExE,wBAAgB,UAAU,CAAC,CAAC,EAAE,QAAQ,GAAG,GAAG,GAAG,CAAC,IAAI,QAAQ,CAE3D"}
@@ -0,0 +1,3 @@
1
+ export declare function useStylesAsClassname(styles: any[]): string;
2
+ export declare function addStylesUsingClassname(styles: any[], onAdd?: (identifier: string, rules: string[]) => any): string;
3
+ //# sourceMappingURL=addStylesUsingClassname.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addStylesUsingClassname.d.ts","sourceRoot":"","sources":["../../src/helpers/addStylesUsingClassname.tsx"],"names":[],"mappings":"AAYA,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,UAmBjD;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,GAAG,EAAE,EACb,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,UAyBrD"}