@tamagui/core 1.0.0-alpha.0 → 1.0.0-alpha.12

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 (426) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/constants/constants.js +50 -0
  3. package/dist/cjs/constants/constants.js.map +7 -0
  4. package/dist/cjs/constants/platform.js +43 -0
  5. package/dist/cjs/constants/platform.js.map +7 -0
  6. package/dist/cjs/constants/pseudos.js +25 -0
  7. package/dist/cjs/constants/pseudos.js.map +7 -0
  8. package/dist/cjs/constants/rnw.js +28 -0
  9. package/dist/cjs/constants/rnw.js.map +7 -0
  10. package/dist/cjs/createComponent.js +532 -0
  11. package/dist/cjs/createComponent.js.map +7 -0
  12. package/dist/cjs/createFont.js +50 -0
  13. package/dist/cjs/createFont.js.map +7 -0
  14. package/dist/cjs/createShorthands.js +16 -0
  15. package/dist/cjs/createShorthands.js.map +7 -0
  16. package/dist/cjs/createTamagui.js +206 -0
  17. package/dist/cjs/createTamagui.js.map +7 -0
  18. package/dist/cjs/createTheme.js +42 -0
  19. package/dist/cjs/createTheme.js.map +7 -0
  20. package/dist/cjs/createTokens.js +55 -0
  21. package/dist/cjs/createTokens.js.map +7 -0
  22. package/dist/cjs/createVariable.js +47 -0
  23. package/dist/cjs/createVariable.js.map +7 -0
  24. package/dist/cjs/helpers/addStylesUsingClassname.js +79 -0
  25. package/dist/cjs/helpers/addStylesUsingClassname.js.map +7 -0
  26. package/dist/cjs/helpers/createMediaStyle.js +56 -0
  27. package/dist/cjs/helpers/createMediaStyle.js.map +7 -0
  28. package/dist/cjs/helpers/createPropMapper.js +197 -0
  29. package/dist/cjs/helpers/createPropMapper.js.map +7 -0
  30. package/dist/cjs/helpers/createTamaguiProvider.js +74 -0
  31. package/dist/cjs/helpers/createTamaguiProvider.js.map +7 -0
  32. package/dist/cjs/helpers/extendStaticConfig.js +82 -0
  33. package/dist/cjs/helpers/extendStaticConfig.js.map +7 -0
  34. package/dist/cjs/helpers/fixNativeShadow.js +14 -0
  35. package/dist/cjs/helpers/fixNativeShadow.js.map +7 -0
  36. package/dist/cjs/helpers/fixNativeShadow.native.js +36 -0
  37. package/dist/cjs/helpers/fixNativeShadow.native.js.map +7 -0
  38. package/dist/cjs/helpers/getSplitStyles.js +180 -0
  39. package/dist/cjs/helpers/getSplitStyles.js.map +7 -0
  40. package/dist/cjs/helpers/getStylesAtomic.js +117 -0
  41. package/dist/cjs/helpers/getStylesAtomic.js.map +7 -0
  42. package/dist/cjs/helpers/getStylesAtomic.native.js +16 -0
  43. package/dist/cjs/helpers/getStylesAtomic.native.js.map +7 -0
  44. package/dist/cjs/helpers/insertStyleRule.js +46 -0
  45. package/dist/cjs/helpers/insertStyleRule.js.map +7 -0
  46. package/dist/cjs/helpers/isObj.js +13 -0
  47. package/dist/cjs/helpers/isObj.js.map +7 -0
  48. package/dist/cjs/helpers/isTamaguiElement.js +33 -0
  49. package/dist/cjs/helpers/isTamaguiElement.js.map +7 -0
  50. package/dist/cjs/helpers/matchMedia.js +24 -0
  51. package/dist/cjs/helpers/matchMedia.js.map +7 -0
  52. package/dist/cjs/helpers/matchMedia.native.js +31 -0
  53. package/dist/cjs/helpers/matchMedia.native.js.map +7 -0
  54. package/dist/cjs/helpers/themeable.js +78 -0
  55. package/dist/cjs/helpers/themeable.js.map +7 -0
  56. package/dist/cjs/helpers/validate.js +82 -0
  57. package/dist/cjs/helpers/validate.js.map +7 -0
  58. package/dist/cjs/hooks/useConstant.js +37 -0
  59. package/dist/cjs/hooks/useConstant.js.map +7 -0
  60. package/dist/cjs/hooks/useFeatures.js +100 -0
  61. package/dist/cjs/hooks/useFeatures.js.map +7 -0
  62. package/dist/cjs/hooks/useMedia.js +206 -0
  63. package/dist/cjs/hooks/useMedia.js.map +7 -0
  64. package/dist/cjs/hooks/usePressable.js +50 -0
  65. package/dist/cjs/hooks/usePressable.js.map +7 -0
  66. package/dist/cjs/hooks/useTheme.js +111 -0
  67. package/dist/cjs/hooks/useTheme.js.map +7 -0
  68. package/dist/cjs/index.js +55 -0
  69. package/dist/cjs/index.js.map +7 -0
  70. package/dist/cjs/static/postProcessStyles.js +40 -0
  71. package/dist/cjs/static/postProcessStyles.js.map +7 -0
  72. package/dist/cjs/static.js +34 -0
  73. package/dist/cjs/static.js.map +7 -0
  74. package/dist/cjs/styled.js +72 -0
  75. package/dist/cjs/styled.js.map +7 -0
  76. package/dist/cjs/types.js +4 -0
  77. package/dist/cjs/types.js.map +7 -0
  78. package/dist/cjs/views/Animated.js +129 -0
  79. package/dist/cjs/views/Animated.js.map +7 -0
  80. package/dist/cjs/views/Stack.js +51 -0
  81. package/dist/cjs/views/Stack.js.map +7 -0
  82. package/dist/cjs/views/Text.js +93 -0
  83. package/dist/cjs/views/Text.js.map +7 -0
  84. package/dist/cjs/views/TextAncestorContext.js +41 -0
  85. package/dist/cjs/views/TextAncestorContext.js.map +7 -0
  86. package/dist/cjs/views/Theme.js +91 -0
  87. package/dist/cjs/views/Theme.js.map +7 -0
  88. package/dist/cjs/views/ThemeContext.js +29 -0
  89. package/dist/cjs/views/ThemeContext.js.map +7 -0
  90. package/dist/cjs/views/ThemeInverse.js +48 -0
  91. package/dist/cjs/views/ThemeInverse.js.map +7 -0
  92. package/dist/cjs/views/ThemeManagerContext.js +84 -0
  93. package/dist/cjs/views/ThemeManagerContext.js.map +7 -0
  94. package/dist/cjs/views/ThemeProvider.js +67 -0
  95. package/dist/cjs/views/ThemeProvider.js.map +7 -0
  96. package/dist/constants/platform.js +1 -1
  97. package/dist/constants/platform.js.map +2 -2
  98. package/dist/createComponent.js +51 -32
  99. package/dist/createComponent.js.map +2 -2
  100. package/dist/createFont.js +4 -0
  101. package/dist/createFont.js.map +2 -2
  102. package/dist/createTamagui.js +11 -2
  103. package/dist/createTamagui.js.map +2 -2
  104. package/dist/createTokens.js +4 -0
  105. package/dist/createTokens.js.map +2 -2
  106. package/dist/createVariable.js +3 -0
  107. package/dist/createVariable.js.map +2 -2
  108. package/{_ → dist/esm}/constants/constants.js +0 -0
  109. package/{_ → dist/esm}/constants/constants.js.map +1 -1
  110. package/{_ → dist/esm}/constants/platform.js +1 -2
  111. package/dist/esm/constants/platform.js.map +7 -0
  112. package/{_ → dist/esm}/constants/pseudos.js +0 -0
  113. package/{_ → dist/esm}/constants/pseudos.js.map +1 -1
  114. package/{_ → dist/esm}/constants/rnw.js +0 -0
  115. package/{_ → dist/esm}/constants/rnw.js.map +1 -1
  116. package/{_ → dist/esm}/createComponent.js +115 -78
  117. package/dist/esm/createComponent.js.map +7 -0
  118. package/dist/esm/createFont.js +28 -0
  119. package/dist/esm/createFont.js.map +7 -0
  120. package/{_ → dist/esm}/createShorthands.js +0 -0
  121. package/{_ → dist/esm}/createShorthands.js.map +1 -1
  122. package/{_ → dist/esm}/createTamagui.js +61 -15
  123. package/dist/esm/createTamagui.js.map +7 -0
  124. package/{_ → dist/esm}/createTheme.js +0 -0
  125. package/{_ → dist/esm}/createTheme.js.map +1 -1
  126. package/{_ → dist/esm}/createTokens.js +4 -0
  127. package/dist/esm/createTokens.js.map +7 -0
  128. package/{_ → dist/esm}/createVariable.js +3 -0
  129. package/{_ → dist/esm}/createVariable.js.map +3 -3
  130. package/dist/esm/helpers/addStylesUsingClassname.js +57 -0
  131. package/dist/esm/helpers/addStylesUsingClassname.js.map +7 -0
  132. package/{_ → dist/esm}/helpers/createMediaStyle.js +0 -0
  133. package/{_ → dist/esm}/helpers/createMediaStyle.js.map +1 -1
  134. package/dist/esm/helpers/createPropMapper.js +160 -0
  135. package/dist/esm/helpers/createPropMapper.js.map +7 -0
  136. package/{_ → dist/esm}/helpers/createTamaguiProvider.js +2 -19
  137. package/dist/esm/helpers/createTamaguiProvider.js.map +7 -0
  138. package/dist/esm/helpers/extendStaticConfig.js +59 -0
  139. package/dist/esm/helpers/extendStaticConfig.js.map +7 -0
  140. package/{_ → dist/esm}/helpers/fixNativeShadow.js +0 -0
  141. package/{_ → dist/esm}/helpers/fixNativeShadow.js.map +1 -1
  142. package/{_ → dist/esm}/helpers/fixNativeShadow.native.js +0 -0
  143. package/{_ → dist/esm}/helpers/fixNativeShadow.native.js.map +1 -1
  144. package/{_ → dist/esm}/helpers/getSplitStyles.js +18 -28
  145. package/dist/esm/helpers/getSplitStyles.js.map +7 -0
  146. package/{_ → dist/esm}/helpers/getStylesAtomic.js +1 -2
  147. package/{_ → dist/esm}/helpers/getStylesAtomic.js.map +2 -2
  148. package/{_ → dist/esm}/helpers/getStylesAtomic.native.js +0 -0
  149. package/{_ → dist/esm}/helpers/getStylesAtomic.native.js.map +1 -1
  150. package/{_ → dist/esm}/helpers/insertStyleRule.js +0 -0
  151. package/{_ → dist/esm}/helpers/insertStyleRule.js.map +1 -1
  152. package/dist/esm/helpers/isObj.js +7 -0
  153. package/dist/esm/helpers/isObj.js.map +7 -0
  154. package/dist/esm/helpers/isTamaguiElement.js +10 -0
  155. package/dist/esm/helpers/isTamaguiElement.js.map +7 -0
  156. package/{_ → dist/esm}/helpers/matchMedia.js +3 -0
  157. package/dist/esm/helpers/matchMedia.js.map +7 -0
  158. package/{_ → dist/esm}/helpers/matchMedia.native.js +1 -0
  159. package/{_ → dist/esm}/helpers/matchMedia.native.js.map +3 -3
  160. package/{_ → dist/esm}/helpers/themeable.js +1 -1
  161. package/{_ → dist/esm}/helpers/themeable.js.map +2 -2
  162. package/dist/esm/helpers/validate.js +60 -0
  163. package/dist/esm/helpers/validate.js.map +7 -0
  164. package/{_ → dist/esm}/hooks/useConstant.js +0 -0
  165. package/{_ → dist/esm}/hooks/useConstant.js.map +1 -1
  166. package/{_ → dist/esm}/hooks/useFeatures.js +39 -51
  167. package/dist/esm/hooks/useFeatures.js.map +7 -0
  168. package/{_ → dist/esm}/hooks/useMedia.js +7 -7
  169. package/dist/esm/hooks/useMedia.js.map +7 -0
  170. package/{_ → dist/esm}/hooks/usePressable.js +1 -2
  171. package/{_ → dist/esm}/hooks/usePressable.js.map +2 -2
  172. package/{_ → dist/esm}/hooks/useTheme.js +6 -11
  173. package/dist/esm/hooks/useTheme.js.map +7 -0
  174. package/{_ → dist/esm}/index.js +3 -1
  175. package/dist/esm/index.js.map +7 -0
  176. package/{_ → dist/esm}/static/postProcessStyles.js +0 -0
  177. package/{_ → dist/esm}/static/postProcessStyles.js.map +1 -1
  178. package/{_ → dist/esm}/static.js +3 -0
  179. package/dist/esm/static.js.map +7 -0
  180. package/{_ → dist/esm}/styled.js +2 -2
  181. package/dist/esm/styled.js.map +7 -0
  182. package/{_ → dist/esm}/types.js +0 -0
  183. package/{_ → dist/esm}/types.js.map +0 -0
  184. package/{_ → dist/esm}/views/Animated.js +0 -0
  185. package/{_ → dist/esm}/views/Animated.js.map +1 -1
  186. package/{_ → dist/esm}/views/Stack.js +0 -0
  187. package/{_ → dist/esm}/views/Stack.js.map +1 -1
  188. package/{_ → dist/esm}/views/Text.js +0 -0
  189. package/{_ → dist/esm}/views/Text.js.map +1 -1
  190. package/{_ → dist/esm}/views/TextAncestorContext.js +1 -2
  191. package/{_ → dist/esm}/views/TextAncestorContext.js.map +2 -2
  192. package/{_ → dist/esm}/views/Theme.js +25 -14
  193. package/dist/esm/views/Theme.js.map +7 -0
  194. package/{_ → dist/esm}/views/ThemeContext.js +0 -0
  195. package/{_ → dist/esm}/views/ThemeContext.js.map +1 -1
  196. package/{_ → dist/esm}/views/ThemeInverse.js +0 -1
  197. package/{_ → dist/esm}/views/ThemeInverse.js.map +3 -3
  198. package/{_ → dist/esm}/views/ThemeManagerContext.js +12 -7
  199. package/dist/esm/views/ThemeManagerContext.js.map +7 -0
  200. package/{_ → dist/esm}/views/ThemeProvider.js +0 -0
  201. package/{_ → dist/esm}/views/ThemeProvider.js.map +1 -1
  202. package/dist/helpers/createPropMapper.js +16 -9
  203. package/dist/helpers/createPropMapper.js.map +2 -2
  204. package/dist/helpers/getSplitStyles.js +13 -23
  205. package/dist/helpers/getSplitStyles.js.map +2 -2
  206. package/dist/helpers/isComponent.js +10 -0
  207. package/dist/helpers/isComponent.js.map +7 -0
  208. package/dist/helpers/isTamaguiComponent.js +10 -0
  209. package/dist/helpers/isTamaguiComponent.js.map +7 -0
  210. package/dist/helpers/isTamaguiElement.js +10 -0
  211. package/dist/helpers/isTamaguiElement.js.map +7 -0
  212. package/dist/helpers/matchMedia.js +3 -0
  213. package/dist/helpers/matchMedia.js.map +2 -2
  214. package/dist/helpers/matchMedia.native.js +1 -0
  215. package/dist/helpers/matchMedia.native.js.map +2 -2
  216. package/dist/helpers/validate.js +60 -0
  217. package/dist/helpers/validate.js.map +7 -0
  218. package/dist/helpers/validateConfig.js +46 -0
  219. package/dist/helpers/validateConfig.js.map +7 -0
  220. package/dist/helpers/validateTokens.js +29 -0
  221. package/dist/helpers/validateTokens.js.map +7 -0
  222. package/dist/hooks/useFeatures.js +39 -51
  223. package/dist/hooks/useFeatures.js.map +2 -2
  224. package/dist/hooks/useMedia.js +5 -3
  225. package/dist/hooks/useMedia.js.map +2 -2
  226. package/dist/hooks/useTheme.js +5 -9
  227. package/dist/hooks/useTheme.js.map +2 -2
  228. package/dist/index.cjs +274 -197
  229. package/dist/index.cjs.map +3 -3
  230. package/dist/index.js +1 -2
  231. package/dist/index.js.map +2 -2
  232. package/dist/jsx/constants/constants.js +13 -0
  233. package/dist/jsx/constants/platform.js +18 -0
  234. package/dist/jsx/constants/pseudos.js +17 -0
  235. package/dist/jsx/constants/rnw.js +21 -0
  236. package/dist/jsx/createComponent.js +458 -0
  237. package/dist/jsx/createFont.js +27 -0
  238. package/dist/jsx/createShorthands.js +9 -0
  239. package/dist/jsx/createTamagui.js +167 -0
  240. package/dist/jsx/createTheme.js +19 -0
  241. package/dist/jsx/createTokens.js +32 -0
  242. package/dist/jsx/createVariable.js +24 -0
  243. package/dist/jsx/helpers/addStylesUsingClassname.js +56 -0
  244. package/dist/jsx/helpers/createMediaStyle.js +33 -0
  245. package/dist/jsx/helpers/createPropMapper.js +159 -0
  246. package/dist/jsx/helpers/createTamaguiProvider.js +19 -0
  247. package/dist/jsx/helpers/extendStaticConfig.js +58 -0
  248. package/dist/jsx/helpers/fixNativeShadow.js +7 -0
  249. package/dist/jsx/helpers/fixNativeShadow.native.js +29 -0
  250. package/dist/jsx/helpers/getSplitStyles.js +149 -0
  251. package/dist/jsx/helpers/getStylesAtomic.js +82 -0
  252. package/dist/jsx/helpers/getStylesAtomic.native.js +9 -0
  253. package/dist/jsx/helpers/insertStyleRule.js +23 -0
  254. package/dist/jsx/helpers/isObj.js +6 -0
  255. package/dist/jsx/helpers/isTamaguiElement.js +9 -0
  256. package/dist/jsx/helpers/matchMedia.js +17 -0
  257. package/dist/jsx/helpers/matchMedia.native.js +8 -0
  258. package/dist/jsx/helpers/themeable.js +23 -0
  259. package/dist/jsx/helpers/validate.js +59 -0
  260. package/dist/jsx/hooks/useConstant.js +14 -0
  261. package/dist/jsx/hooks/useFeatures.js +57 -0
  262. package/dist/jsx/hooks/useMedia.js +172 -0
  263. package/dist/jsx/hooks/usePressable.js +12 -0
  264. package/dist/jsx/hooks/useTheme.js +88 -0
  265. package/dist/jsx/index.js +31 -0
  266. package/dist/jsx/static/postProcessStyles.js +17 -0
  267. package/dist/jsx/static.js +14 -0
  268. package/dist/jsx/styled.js +20 -0
  269. package/dist/jsx/types.js +0 -0
  270. package/dist/jsx/views/Animated.js +74 -0
  271. package/dist/jsx/views/Stack.js +11 -0
  272. package/dist/jsx/views/Text.js +59 -0
  273. package/dist/jsx/views/TextAncestorContext.js +14 -0
  274. package/dist/jsx/views/Theme.js +62 -0
  275. package/dist/jsx/views/ThemeContext.js +5 -0
  276. package/dist/jsx/views/ThemeInverse.js +22 -0
  277. package/dist/jsx/views/ThemeManagerContext.js +60 -0
  278. package/dist/jsx/views/ThemeProvider.js +39 -0
  279. package/dist/views/Theme.js +25 -13
  280. package/dist/views/Theme.js.map +2 -2
  281. package/dist/views/ThemeInverse.js +0 -1
  282. package/dist/views/ThemeInverse.js.map +2 -2
  283. package/dist/views/ThemeManagerContext.js +11 -5
  284. package/dist/views/ThemeManagerContext.js.map +2 -2
  285. package/package.json +17 -9
  286. package/src/constants/platform.ts +1 -1
  287. package/src/createComponent.tsx +59 -41
  288. package/src/createFont.ts +5 -0
  289. package/src/createTamagui.ts +11 -1
  290. package/src/createTokens.ts +6 -1
  291. package/src/createVariable.ts +4 -0
  292. package/src/helpers/createPropMapper.ts +16 -8
  293. package/src/helpers/getSplitStyles.tsx +16 -26
  294. package/src/helpers/isTamaguiElement.tsx +5 -0
  295. package/src/helpers/matchMedia.native.ts +3 -0
  296. package/src/helpers/matchMedia.ts +9 -1
  297. package/src/helpers/validate.ts +59 -0
  298. package/src/hooks/useFeatures.tsx +54 -53
  299. package/src/hooks/useMedia.tsx +5 -3
  300. package/src/hooks/useTheme.tsx +7 -8
  301. package/src/index.ts +1 -2
  302. package/src/types.tsx +9 -8
  303. package/src/views/Text.tsx +2 -1
  304. package/src/views/Theme.tsx +42 -21
  305. package/src/views/ThemeInverse.tsx +0 -1
  306. package/src/views/ThemeManagerContext.tsx +18 -6
  307. package/types/constants/constants.d.ts +8 -0
  308. package/types/constants/constants.d.ts.map +1 -0
  309. package/types/constants/platform.d.ts +9 -0
  310. package/types/constants/platform.d.ts.map +1 -0
  311. package/types/constants/pseudos.d.ts +15 -0
  312. package/types/constants/pseudos.d.ts.map +1 -0
  313. package/types/constants/rnw.d.ts +2 -0
  314. package/types/constants/rnw.d.ts.map +1 -0
  315. package/types/createComponent.d.ts +17 -0
  316. package/types/createComponent.d.ts.map +1 -0
  317. package/types/createFont.d.ts +3 -0
  318. package/types/createFont.d.ts.map +1 -0
  319. package/types/createShorthands.d.ts +2 -0
  320. package/types/createShorthands.d.ts.map +1 -0
  321. package/types/createTamagui.d.ts +38 -0
  322. package/types/createTamagui.d.ts.map +1 -0
  323. package/types/createTheme.d.ts +5 -0
  324. package/types/createTheme.d.ts.map +1 -0
  325. package/types/createTokens.d.ts +55 -0
  326. package/types/createTokens.d.ts.map +1 -0
  327. package/types/createVariable.d.ts +15 -0
  328. package/types/createVariable.d.ts.map +1 -0
  329. package/types/helpers/addStylesUsingClassname.d.ts +3 -0
  330. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -0
  331. package/types/helpers/createMediaStyle.d.ts +8 -0
  332. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  333. package/types/helpers/createPropMapper.d.ts +3 -0
  334. package/types/helpers/createPropMapper.d.ts.map +1 -0
  335. package/types/helpers/createTamaguiProvider.d.ts +5 -0
  336. package/types/helpers/createTamaguiProvider.d.ts.map +1 -0
  337. package/types/helpers/extendStaticConfig.d.ts +5 -0
  338. package/types/helpers/extendStaticConfig.d.ts.map +1 -0
  339. package/types/helpers/fixNativeShadow.d.ts +2 -0
  340. package/types/helpers/fixNativeShadow.d.ts.map +1 -0
  341. package/types/helpers/fixNativeShadow.native.d.ts +2 -0
  342. package/types/helpers/fixNativeShadow.native.d.ts.map +1 -0
  343. package/types/helpers/getSplitStyles.d.ts +15 -0
  344. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  345. package/types/helpers/getStylesAtomic.d.ts +3 -0
  346. package/types/helpers/getStylesAtomic.d.ts.map +1 -0
  347. package/types/helpers/getStylesAtomic.native.d.ts +2 -0
  348. package/types/helpers/getStylesAtomic.native.d.ts.map +1 -0
  349. package/types/helpers/insertStyleRule.d.ts +2 -0
  350. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  351. package/types/helpers/isObj.d.ts +2 -0
  352. package/types/helpers/isObj.d.ts.map +1 -0
  353. package/types/helpers/isTamaguiElement.d.ts +3 -0
  354. package/types/helpers/isTamaguiElement.d.ts.map +1 -0
  355. package/types/helpers/matchMedia.d.ts +2 -0
  356. package/types/helpers/matchMedia.d.ts.map +1 -0
  357. package/types/helpers/matchMedia.native.d.ts +3 -0
  358. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  359. package/types/helpers/themeable.d.ts +10 -0
  360. package/types/helpers/themeable.d.ts.map +1 -0
  361. package/types/helpers/validate.d.ts +4 -0
  362. package/types/helpers/validate.d.ts.map +1 -0
  363. package/types/hooks/useConstant.d.ts +2 -0
  364. package/types/hooks/useConstant.d.ts.map +1 -0
  365. package/types/hooks/useFeatures.d.ts +5 -0
  366. package/types/hooks/useFeatures.d.ts.map +1 -0
  367. package/types/hooks/useMedia.d.ts +16 -0
  368. package/types/hooks/useMedia.d.ts.map +1 -0
  369. package/types/hooks/usePressable.d.ts +3 -0
  370. package/types/hooks/usePressable.d.ts.map +1 -0
  371. package/types/hooks/useTheme.d.ts +20 -0
  372. package/types/hooks/useTheme.d.ts.map +1 -0
  373. package/types/index.d.ts +29 -0
  374. package/types/index.d.ts.map +1 -0
  375. package/types/static/postProcessStyles.d.ts +7 -0
  376. package/types/static/postProcessStyles.d.ts.map +1 -0
  377. package/types/static.d.ts +15 -0
  378. package/types/static.d.ts.map +1 -0
  379. package/types/styled.d.ts +21 -0
  380. package/types/styled.d.ts.map +1 -0
  381. package/types/types.d.ts +306 -0
  382. package/types/types.d.ts.map +1 -0
  383. package/types/views/Animated.d.ts +15 -0
  384. package/types/views/Animated.d.ts.map +1 -0
  385. package/types/views/Stack.d.ts +3 -0
  386. package/types/views/Stack.d.ts.map +1 -0
  387. package/types/views/Text.d.ts +3 -0
  388. package/types/views/Text.d.ts.map +1 -0
  389. package/types/views/TextAncestorContext.d.ts +3 -0
  390. package/types/views/TextAncestorContext.d.ts.map +1 -0
  391. package/types/views/Theme.d.ts +8 -0
  392. package/types/views/Theme.d.ts.map +1 -0
  393. package/types/views/ThemeContext.d.ts +18 -0
  394. package/types/views/ThemeContext.d.ts.map +1 -0
  395. package/types/views/ThemeInverse.d.ts +10 -0
  396. package/types/views/ThemeInverse.d.ts.map +1 -0
  397. package/types/views/ThemeManagerContext.d.ts +22 -0
  398. package/types/views/ThemeManagerContext.d.ts.map +1 -0
  399. package/types/views/ThemeProvider.d.ts +10 -0
  400. package/types/views/ThemeProvider.d.ts.map +1 -0
  401. package/.ultra.cache.json +0 -1
  402. package/_/constants/platform.js.map +0 -7
  403. package/_/createComponent.js.map +0 -7
  404. package/_/createTamagui.js.map +0 -7
  405. package/_/createTokens.js.map +0 -7
  406. package/_/helpers/addStylesUsingClassname.js +0 -32
  407. package/_/helpers/addStylesUsingClassname.js.map +0 -7
  408. package/_/helpers/createTamaguiProvider.js.map +0 -7
  409. package/_/helpers/extendStaticConfig.js +0 -176
  410. package/_/helpers/extendStaticConfig.js.map +0 -7
  411. package/_/helpers/getSplitStyles.js.map +0 -7
  412. package/_/helpers/matchMedia.js.map +0 -7
  413. package/_/hooks/useFeatures.js.map +0 -7
  414. package/_/hooks/useForceUpdate.js +0 -28
  415. package/_/hooks/useForceUpdate.js.map +0 -7
  416. package/_/hooks/useMedia.js.map +0 -7
  417. package/_/hooks/useTheme.js.map +0 -7
  418. package/_/index.js.map +0 -7
  419. package/_/static.js.map +0 -7
  420. package/_/styled.js.map +0 -7
  421. package/_/views/Theme.js.map +0 -7
  422. package/_/views/ThemeManagerContext.js.map +0 -7
  423. package/src/hooks/useForceUpdate.tsx +0 -26
  424. package/src/views/SafeAreaProvider.tsx +0 -33
  425. package/tsconfig.json +0 -8
  426. package/types.d.ts +0 -558
@@ -1,51 +1,66 @@
1
1
  import React from 'react'
2
2
 
3
3
  import { isWeb, useIsomorphicLayoutEffect } from '../constants/platform'
4
- import { addMediaQueryListener, removeMediaQueryListener } from './useMedia'
4
+ import { addMediaQueryListener, mediaState, removeMediaQueryListener } from './useMedia'
5
5
 
6
- // only needed on native
7
- // dynamic loading of features to avoid heavy views
6
+ type FeatureDefinition = {
7
+ isEnabled: (props: any) => boolean
8
+ Component: any
9
+ }
8
10
 
9
- const createDefinition = ({ Component, propNames }: { Component; propNames: string[] }) => ({
11
+ const createDefinition = ({
12
+ Component,
13
+ propNames,
14
+ }: {
15
+ Component: any
16
+ propNames: string[]
17
+ }): FeatureDefinition => ({
10
18
  isEnabled: (props: any) => propNames.some((name) => !!props[name]),
11
19
  Component,
12
20
  })
13
21
 
14
- const mediaQueryPropNames = [
15
- '$xs',
16
- '$sm',
17
- '$md',
18
- '$lg',
19
- '$xl',
20
- '$xxl',
21
- '$pointerCoarse',
22
- '$hoverNone',
23
- '$tall',
24
- '$short',
25
- '$gtSm',
26
- '$notXs',
27
- '$gtMd',
28
- '$gtLg',
29
- ]
22
+ let featureDefinitions: Record<string, FeatureDefinition> | null = null
30
23
 
31
- const featureDefinitions = {
32
- measureLayout: createDefinition({
33
- Component: (props) => {
34
- console.log('measure', props)
35
- return null
36
- },
37
- propNames: ['onLayout'],
38
- }),
24
+ export const useFeatures = (props: any, utils?: { forceUpdate?: Function }) => {
25
+ if (!featureDefinitions) {
26
+ featureDefinitions = loadFeatures()
27
+ }
28
+ const features: JSX.Element[] = []
29
+ for (const name in featureDefinitions) {
30
+ const { isEnabled, Component } = featureDefinitions[name]
31
+ if (isEnabled(props) && Component) {
32
+ features.push(<Component key={name} {...props} _utils={utils} />)
33
+ }
34
+ }
35
+ return features
36
+ }
39
37
 
40
- // will update the parent whenever media query changes
41
- mediaQuery: createDefinition({
42
- Component: (props) => {
43
- if (isWeb) {
44
- // no need for media queries are inserted and run in css
45
- return
46
- }
38
+ function loadFeatures(): Record<string, FeatureDefinition> {
39
+ return {
40
+ // TODO
41
+ // measureLayout: createDefinition({
42
+ // Component: (props) => {
43
+ // console.log('measure', props)
44
+ // return null
45
+ // },
46
+ // propNames: ['onLayout'],
47
+ // }),
48
+
49
+ // will update the parent whenever media query changes
50
+ // no need on web, media queries are inserted and run in css
51
+ ...(!isWeb && {
52
+ mediaQuery: loadMediaQueryFeature(),
53
+ }),
54
+ }
55
+ }
56
+
57
+ function loadMediaQueryFeature() {
58
+ const mediaPropNames = Object.keys(mediaState)
59
+
60
+ return createDefinition({
61
+ Component: (props: any) => {
62
+ const keys = mediaPropNames.flatMap((x) => (x in props ? x.slice(1) : []))
47
63
 
48
- const keys = mediaQueryPropNames.flatMap((x) => (x in props ? x.slice(1) : []))
49
64
  useIsomorphicLayoutEffect(() => {
50
65
  for (const key of keys) {
51
66
  addMediaQueryListener(key, props._utils.forceUpdate)
@@ -56,23 +71,9 @@ const featureDefinitions = {
56
71
  }
57
72
  }
58
73
  }, [keys.join(',')])
74
+
59
75
  return null
60
76
  },
61
- propNames: mediaQueryPropNames,
62
- }),
63
- }
64
-
65
- const featureNames = Object.keys(featureDefinitions)
66
- const numFeatures = featureNames.length
67
-
68
- export const useFeatures = (props: any, utils?: { forceUpdate?: Function }) => {
69
- const features: JSX.Element[] = []
70
- for (let i = 0; i < numFeatures; i++) {
71
- const name = featureNames[i]
72
- const { isEnabled, Component } = featureDefinitions[name] as any //FeatureDefinition
73
- if (isEnabled(props) && Component) {
74
- features.push(<Component key={name} {...props} _utils={utils} />)
75
- }
76
- }
77
- return features
77
+ propNames: mediaPropNames,
78
+ })
78
79
  }
@@ -1,3 +1,4 @@
1
+ import { useForceUpdate } from '@tamagui/use-force-update'
1
2
  import { useRef } from 'react'
2
3
 
3
4
  import { useIsomorphicLayoutEffect } from '../constants/platform'
@@ -9,7 +10,6 @@ import {
9
10
  MediaQueryState,
10
11
  } from '../types'
11
12
  import { useConstant } from './useConstant'
12
- import { useForceUpdate } from './useForceUpdate'
13
13
 
14
14
  export const mediaState: { [key in keyof MediaQueryState]: boolean } = {} as any
15
15
  const mediaQueryListeners: { [key: string]: Set<Function> } = {}
@@ -28,13 +28,15 @@ let conf: MediaQueries | null = null
28
28
  export const mediaQueryConfig = new Proxy<MediaQueries>({} as any, {
29
29
  get(target, key) {
30
30
  if (!conf) {
31
- throw new Error(`Be sure to run configureMedia before accessing mediaQueryConfig`)
31
+ console.warn('Warning: accessing media query before init')
32
+ return null
32
33
  }
33
34
  return Reflect.get(conf, key)
34
35
  },
35
36
  ownKeys() {
36
37
  if (!conf) {
37
- throw new Error(`Be sure to run configureMedia before accessing mediaQueryConfig`)
38
+ console.warn('Warning: accessing media query before init')
39
+ return []
38
40
  }
39
41
  return Object.keys(conf)
40
42
  },
@@ -1,3 +1,4 @@
1
+ import { useForceUpdate } from '@tamagui/use-force-update'
1
2
  import React, { useContext, useEffect, useMemo, useRef, useState } from 'react'
2
3
 
3
4
  import { useIsomorphicLayoutEffect } from '../constants/platform'
@@ -6,7 +7,6 @@ import { ThemeName } from '../types'
6
7
  import { ThemeContext } from '../views/ThemeContext'
7
8
  import { ThemeManagerContext } from '../views/ThemeManagerContext'
8
9
  import { GET_DEFAULT_THEME } from '../views/ThemeProvider'
9
- import { useForceUpdate } from './useForceUpdate'
10
10
 
11
11
  type UseThemeState = {
12
12
  uuid: Object
@@ -24,17 +24,16 @@ const areEqualSets = (a: Set<string>, b: Set<string>) => {
24
24
  return true
25
25
  }
26
26
 
27
- export const useThemeName = () => {
27
+ export const useThemeName = (opts?: { parent?: true }) => {
28
28
  const parent = useContext(ThemeManagerContext)
29
29
  const [name, setName] = useState(parent.name)
30
- useEffect(() => {
31
- return parent.onChangeTheme((next) => {
32
- setName((prev) => {
33
- if (prev === next) return prev
34
- return next
35
- })
30
+
31
+ useIsomorphicLayoutEffect(() => {
32
+ return parent.onChangeTheme((next, manager) => {
33
+ setName(opts?.parent ? manager.parentName : next)
36
34
  })
37
35
  }, [parent])
36
+
38
37
  return name || 'light'
39
38
  }
40
39
 
package/src/index.ts CHANGED
@@ -17,9 +17,9 @@ export * from './helpers/isObj'
17
17
  export * from './helpers/getStylesAtomic'
18
18
  export * from './helpers/matchMedia'
19
19
  export * from './helpers/themeable'
20
+ export * from './helpers/isTamaguiElement'
20
21
 
21
22
  export * from './hooks/useConstant'
22
- export * from './hooks/useForceUpdate'
23
23
  export * from './hooks/useMedia'
24
24
  export * from './hooks/useTheme'
25
25
 
@@ -30,4 +30,3 @@ export * from './views/Theme'
30
30
  export * from './views/ThemeInverse'
31
31
  export * from './views/ThemeProvider'
32
32
  export * from './views/TextAncestorContext'
33
- export * from './views/SafeAreaProvider'
package/src/types.tsx CHANGED
@@ -88,7 +88,7 @@ export type Shorthands = TamaguiConfig['shorthands']
88
88
  export type Media = TamaguiConfig['media']
89
89
  export type Themes = TamaguiConfig['themes']
90
90
  // themes
91
- export type ThemeName = keyof Themes extends `${infer Prefix}-light`
91
+ export type ThemeName = keyof Themes extends `${infer Prefix}-${string}`
92
92
  ? Prefix | keyof Themes
93
93
  : keyof Themes
94
94
  export type ThemeKeys = keyof ThemeObject
@@ -110,6 +110,7 @@ export type TamaguiInternalConfig<
110
110
  tokensParsed: CreateTokens<Variable>
111
111
  themeConfig: any
112
112
  getCSS: () => string
113
+ parsed: boolean
113
114
  }
114
115
 
115
116
  // prevents const intersections from being clobbered into string, keeping the consts
@@ -224,7 +225,7 @@ export type WithThemeValues<T extends object> = {
224
225
  type WithShorthands<StyleProps> = {
225
226
  [Key in keyof Shorthands]?: Shorthands[Key] extends keyof StyleProps
226
227
  ? StyleProps[Shorthands[Key]] | null
227
- : {}
228
+ : undefined
228
229
  }
229
230
 
230
231
  //
@@ -262,11 +263,11 @@ type WebOnlyStyleProps = {
262
263
  pointerEvents?: ViewProps['pointerEvents']
263
264
  }
264
265
 
265
- type StackStyleProps = WithThemeShorthandsPseudosAndMedia<
266
- Omit<ViewStyle, 'display' | 'backfaceVisibility' | 'elevation'> &
267
- TransformStyleProps &
268
- WebOnlyStyleProps
269
- >
266
+ export type StackStylePropsBase = Omit<ViewStyle, 'display' | 'backfaceVisibility' | 'elevation'> &
267
+ TransformStyleProps &
268
+ WebOnlyStyleProps
269
+
270
+ export type StackStyleProps = WithThemeShorthandsPseudosAndMedia<StackStylePropsBase>
270
271
 
271
272
  export type StackProps = Omit<RNWInternalProps, 'children'> &
272
273
  Omit<ViewProps, 'display' | 'children'> &
@@ -319,7 +320,7 @@ export type StaticComponent<
319
320
  * If you create a styled frame component this is a HoC to extract
320
321
  * styles from all parents.
321
322
  */
322
- extractable: <X>(a: X) => X
323
+ extractable: <X>(a: X, opts?: StaticConfig) => X
323
324
  }
324
325
 
325
326
  export type TamaguiProviderProps = Partial<Omit<ThemeProviderProps, 'children'>> & {
@@ -1,6 +1,7 @@
1
+ import { stylePropsTextOnly, validStyles } from '@tamagui/helpers'
2
+
1
3
  import { isWeb } from '../constants/platform'
2
4
  import { createComponent } from '../createComponent'
3
- import { stylePropsTextOnly, validStyles } from '../static'
4
5
  import { TextProps } from '../types'
5
6
 
6
7
  const ellipseStyle = {
@@ -3,13 +3,13 @@ import React, { useContext, useState } from 'react'
3
3
  import { isWeb, useIsomorphicLayoutEffect } from '../constants/platform'
4
4
  import { getThemeParentClassName } from '../createTamagui'
5
5
  import { useConstant } from '../hooks/useConstant'
6
- import { ThemeName, Themes } from '../types'
6
+ import { ThemeName } from '../types'
7
7
  import { ThemeContext } from './ThemeContext'
8
8
  import { ThemeManager, ThemeManagerContext } from './ThemeManagerContext'
9
9
 
10
10
  export type ThemeProps = {
11
11
  disableThemeClass?: boolean
12
- name: ThemeName | null
12
+ name: Exclude<ThemeName, number> | null
13
13
  children?: any
14
14
  }
15
15
 
@@ -18,30 +18,49 @@ export const Theme = (props: ThemeProps) => {
18
18
  const themes = useContext(ThemeContext)
19
19
  const [parentName, setParentName] = useState(parent.name || 'light')
20
20
  if (!themes) {
21
- console.warn('no themes???', props)
21
+ console.warn('Error, no themes in context', props)
22
22
  return props.children
23
23
  }
24
- const name = props.name as string
25
- const theme = themes[name] || themes[`${name}-${parentName}`]
26
- const themeManager = useConstant<ThemeManager>(() => {
24
+
25
+ const nextNameParent = `${props.name}-${parentName}`
26
+ const nextNameParentParent = `${props.name}-${parent.parentName}`
27
+ const name = !props.name
28
+ ? null
29
+ : props.name in themes
30
+ ? props.name
31
+ : nextNameParent in themes
32
+ ? nextNameParent
33
+ : nextNameParentParent in themes
34
+ ? nextNameParentParent
35
+ : null
36
+ const theme = name ? themes[name] : null
37
+ const themeManager = useConstant<ThemeManager | null>(() => {
38
+ if (!theme) {
39
+ return null
40
+ }
27
41
  const manager = new ThemeManager()
28
42
  if (name) {
29
- manager.setActiveTheme(name, themes[name])
43
+ manager.setActiveTheme({ name, theme: themes[name], parentName })
30
44
  }
31
45
  return manager
32
46
  })
33
47
 
34
48
  useIsomorphicLayoutEffect(() => {
35
- themeManager.setActiveTheme(name, theme)
49
+ if (!themeManager) {
50
+ return
51
+ }
52
+ if (name) {
53
+ themeManager.setActiveTheme({ name, theme, parentName })
54
+ }
36
55
  return parent.onChangeTheme((next) => {
37
56
  if (next) {
38
- themeManager.setActiveTheme(next, themes[next])
57
+ themeManager.setActiveTheme({ name: next, theme: themes[next], parentName })
39
58
  setParentName(next)
40
59
  }
41
60
  })
42
- }, [themes, name])
61
+ }, [themes, name, parentName])
43
62
 
44
- if (!name) {
63
+ if (!name || !theme) {
45
64
  return props.children
46
65
  }
47
66
 
@@ -57,16 +76,18 @@ export const Theme = (props: ThemeProps) => {
57
76
  if (props.disableThemeClass) {
58
77
  return contents
59
78
  }
60
- const color = themes[name]?.['color']?.['variable']
61
- return (
62
- <div
63
- className={getThemeParentClassName(name)}
64
- // in order to provide currentColor, set color by default
65
- style={{ display: 'contents', color }}
66
- >
67
- {contents}
68
- </div>
69
- )
79
+ if (name) {
80
+ const color = themes[name]?.['color']?.['variable']
81
+ return (
82
+ <div
83
+ className={getThemeParentClassName(props.name)}
84
+ // in order to provide currentColor, set color by default
85
+ style={{ display: 'contents', color }}
86
+ >
87
+ {contents}
88
+ </div>
89
+ )
90
+ }
70
91
  }
71
92
 
72
93
  return contents
@@ -18,6 +18,5 @@ export const ThemeInverse = (props: { children: any }) => {
18
18
  const themeName = useThemeName()
19
19
  const defaultTheme = useDefaultThemeName()
20
20
  const name = inversions[themeName] || inversions[defaultTheme] || null
21
- console.log('todo fixme invert', { themeName, defaultTheme, next: name })
22
21
  return <Theme name={name}>{props.children}</Theme>
23
22
  }
@@ -1,16 +1,28 @@
1
1
  import { createContext } from 'react'
2
2
 
3
+ type ThemeListener = (name: string | null, themeManager: ThemeManager) => void
4
+
3
5
  export class ThemeManager {
4
6
  name: string | null = 'light'
7
+ parentName: string | null = null
5
8
  keys = new Map<any, Set<string>>()
6
9
  listeners = new Map<any, Function>()
7
- callbacks = new Set<Function>()
10
+ themeListeners = new Set<ThemeListener>()
8
11
  theme = null
9
12
 
10
- setActiveTheme(name: string | null, theme?: any) {
13
+ setActiveTheme({
14
+ name,
15
+ theme,
16
+ parentName,
17
+ }: {
18
+ parentName?: string | null
19
+ name: string | null
20
+ theme?: any
21
+ }) {
11
22
  if (name === this.name) return
12
23
  this.name = name
13
24
  this.theme = theme
25
+ this.parentName = parentName || null
14
26
  this.update()
15
27
  }
16
28
 
@@ -28,13 +40,13 @@ export class ThemeManager {
28
40
  this.listeners.get(uuid)?.()
29
41
  }
30
42
  }
31
- this.callbacks.forEach((cb) => cb(this.name))
43
+ this.themeListeners.forEach((cb) => cb(this.name, this))
32
44
  }
33
45
 
34
- onChangeTheme(cb: (name: string | null) => void) {
35
- this.callbacks.add(cb)
46
+ onChangeTheme(cb: ThemeListener) {
47
+ this.themeListeners.add(cb)
36
48
  return () => {
37
- this.callbacks.delete(cb)
49
+ this.themeListeners.delete(cb)
38
50
  }
39
51
  }
40
52
 
@@ -0,0 +1,8 @@
1
+ export declare const stackDefaultStyles: {
2
+ display?: string | undefined;
3
+ flexBasis?: string | undefined;
4
+ boxSizing?: string | undefined;
5
+ alignItems: string;
6
+ flexShrink: number;
7
+ };
8
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB;;;;;;CAS9B,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { useEffect } from 'react';
2
+ export declare const isWeb: boolean;
3
+ export declare const isSSR: boolean;
4
+ export declare const useIsomorphicLayoutEffect: typeof useEffect;
5
+ export declare const isChrome: boolean;
6
+ export declare const supportsTouchWeb: boolean;
7
+ export declare const isTouchDevice: boolean;
8
+ export declare const isWebIOS: boolean;
9
+ //# sourceMappingURL=platform.d.ts.map
@@ -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,SAAuE,CAAA;AACzF,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,15 @@
1
+ export declare const pseudos: {
2
+ focusStyle: {
3
+ name: string;
4
+ priority: number;
5
+ };
6
+ pressStyle: {
7
+ name: string;
8
+ priority: number;
9
+ };
10
+ hoverStyle: {
11
+ name: string;
12
+ priority: number;
13
+ };
14
+ };
15
+ //# sourceMappingURL=pseudos.d.ts.map
@@ -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,2 @@
1
+ export declare const rnw: Record<string, any>;
2
+ //# sourceMappingURL=rnw.d.ts.map
@@ -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,17 @@
1
+ import { ViewStyle } from 'react-native';
2
+ import { StaticComponent, StaticConfig, StaticConfigParsed } from './types';
3
+ export declare const mouseUps: Set<Function>;
4
+ declare type DefaultProps = {};
5
+ export declare function createComponent<A extends Object = DefaultProps>(configIn: Partial<StaticConfig> | StaticConfigParsed): StaticComponent<A, void, StaticConfigParsed, any>;
6
+ export declare const Spacer: StaticComponent<{
7
+ size?: number | `$${string}` | `$${number}` | undefined;
8
+ flex?: number | boolean | undefined;
9
+ }, void, StaticConfigParsed, any>;
10
+ export declare function spacedChildren({ isZStack, children, space, flexDirection, }: {
11
+ isZStack?: boolean;
12
+ children: any;
13
+ space?: any;
14
+ flexDirection?: ViewStyle['flexDirection'];
15
+ }): any;
16
+ export {};
17
+ //# sourceMappingURL=createComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":"AAaA,OAAO,EAA0B,SAAS,EAAE,MAAM,cAAc,CAAA;AAWhE,OAAO,EAEL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAEnB,MAAM,SAAS,CAAA;AAIhB,eAAO,MAAM,QAAQ,eAAsB,CAAA;AAS3C,aAAK,YAAY,GAAG,EAAE,CAAA;AAEtB,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,YAAY,EAC7D,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,kBAAkB,qDAudrD;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,OAwCA"}
@@ -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,2 @@
1
+ export declare function createShorthands<A extends Record<string, string>>(shorthands: A): A;
2
+ //# sourceMappingURL=createShorthands.d.ts.map
@@ -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,38 @@
1
+ import { Variable } from './createVariable';
2
+ import { CreateTamaguiConfig, GenericTamaguiConfig, MediaQueryKey, TamaguiInternalConfig, TamaguiProviderProps } from './types';
3
+ export declare type CreateTamaguiProps = TamaguiProviderProps & Omit<GenericTamaguiConfig, 'themes'> & {
4
+ themes: {
5
+ [key: string]: {
6
+ [key: string]: string | number | Variable;
7
+ };
8
+ };
9
+ mediaQueryDefaultActive?: MediaQueryKey[];
10
+ };
11
+ export declare const getHasConfigured: () => boolean;
12
+ export declare const getTamagui: () => TamaguiInternalConfig<import("./types").CreateTokens<string | number | Variable>, {
13
+ [key: string]: {
14
+ bg: string | Variable;
15
+ bg2: string | Variable;
16
+ bg3: string | Variable;
17
+ bg4: string | Variable;
18
+ color: string | Variable;
19
+ color2: string | Variable;
20
+ color3: string | Variable;
21
+ color4: string | Variable;
22
+ borderColor: string | Variable;
23
+ borderColor2: string | Variable;
24
+ shadowColor: string | Variable;
25
+ shadowColor2: string | Variable;
26
+ };
27
+ }, {}, {
28
+ [x: string]: {
29
+ [key: string]: string | number;
30
+ };
31
+ }>;
32
+ export declare const getTokens: () => import("./types").CreateTokens<Variable>;
33
+ declare type ConfigListener = (conf: TamaguiInternalConfig) => void;
34
+ export declare const onConfiguredOnce: (cb: ConfigListener) => void;
35
+ 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;
36
+ export declare function getThemeParentClassName(themeName?: string | null): string;
37
+ export {};
38
+ //# sourceMappingURL=createTamagui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTamagui.d.ts","sourceRoot":"","sources":["../src/createTamagui.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAA8B,MAAM,kBAAkB,CAAA;AAIvE,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAEhB,oBAAY,kBAAkB,GAAG,oBAAoB,GAGnD,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,GAAG;IACrC,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,eAAO,MAAM,gBAAgB,eAAe,CAAA;AAE5C,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;EAAc,CAAA;AACrC,eAAO,MAAM,SAAS,gDAA2B,CAAA;AAEjD,aAAK,cAAc,GAAG,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAA;AAE3D,eAAO,MAAM,gBAAgB,OAAQ,cAAc,SAMlD,CAAA;AAID,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,CAoIV;AAED,wBAAgB,uBAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,UAEhE"}
@@ -0,0 +1,5 @@
1
+ import { Variable } from './createVariable';
2
+ export declare const createTheme: <Theme extends {
3
+ [key: string]: string | Variable;
4
+ }>(theme: Theme) => { [key in keyof Theme]: Variable; };
5
+ //# 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,EAAkB,MAAM,kBAAkB,CAAA;AAE3D,eAAO,MAAM,WAAW;;uDAgBvB,CAAA"}
@@ -0,0 +1,55 @@
1
+ import { Variable } from './createVariable';
2
+ import { CreateTokens } from './types';
3
+ export declare function createTokens<T extends CreateTokens>(tokens: T): MakeTokens<T>;
4
+ export declare const mapTokensToVariables: (tokens: CreateTokens, parentPath?: string) => CreateTokens<Variable>;
5
+ declare type MakeTokens<T> = T extends {
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
+ };
15
+ color: infer E;
16
+ space: infer F;
17
+ size: infer G;
18
+ radius: infer H;
19
+ zIndex: infer J;
20
+ } ? {
21
+ font: {
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
+ };
37
+ };
38
+ color: {
39
+ [key in keyof E]: Variable;
40
+ };
41
+ space: {
42
+ [key in keyof F]: Variable;
43
+ };
44
+ size: {
45
+ [key in keyof G]: Variable;
46
+ };
47
+ radius: {
48
+ [key in keyof H]: Variable;
49
+ };
50
+ zIndex: {
51
+ [key in keyof J]: Variable;
52
+ };
53
+ } : never;
54
+ export {};
55
+ //# sourceMappingURL=createTokens.d.ts.map
@@ -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"}