@tamagui/core 1.0.0-alpha.4 → 1.0.0-alpha.40

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 (539) 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 +2 -2
  11. package/dist/cjs/createComponent.js +535 -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 +2 -2
  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/getThemeParentClassName.js +34 -0
  26. package/dist/cjs/getThemeParentClassName.js.map +7 -0
  27. package/dist/cjs/helpers/addStylesUsingClassname.js +80 -0
  28. package/dist/cjs/helpers/addStylesUsingClassname.js.map +7 -0
  29. package/dist/cjs/helpers/createMediaStyle.js +57 -0
  30. package/dist/{helpers → cjs/helpers}/createMediaStyle.js.map +2 -2
  31. package/dist/cjs/helpers/createPropMapper.js +198 -0
  32. package/dist/cjs/helpers/createPropMapper.js.map +7 -0
  33. package/dist/cjs/helpers/createTamaguiProvider.js +80 -0
  34. package/dist/cjs/helpers/createTamaguiProvider.js.map +7 -0
  35. package/dist/cjs/helpers/extendStaticConfig.js +83 -0
  36. package/dist/{helpers → cjs/helpers}/extendStaticConfig.js.map +2 -2
  37. package/dist/cjs/helpers/fixNativeShadow.js +31 -0
  38. package/dist/cjs/helpers/fixNativeShadow.js.map +7 -0
  39. package/dist/cjs/helpers/fixNativeShadow.native.js +57 -0
  40. package/dist/cjs/helpers/fixNativeShadow.native.js.map +7 -0
  41. package/dist/cjs/helpers/getSplitStyles.js +181 -0
  42. package/dist/cjs/helpers/getSplitStyles.js.map +7 -0
  43. package/dist/cjs/helpers/getStylesAtomic.js +118 -0
  44. package/dist/cjs/helpers/getStylesAtomic.js.map +7 -0
  45. package/dist/cjs/helpers/getStylesAtomic.native.js +33 -0
  46. package/dist/cjs/helpers/getStylesAtomic.native.js.map +7 -0
  47. package/dist/cjs/helpers/getThemeParentClassName.js +34 -0
  48. package/dist/cjs/helpers/getThemeParentClassName.js.map +7 -0
  49. package/dist/cjs/helpers/insertStyleRule.js +47 -0
  50. package/dist/{helpers → cjs/helpers}/insertStyleRule.js.map +2 -2
  51. package/dist/cjs/helpers/isObj.js +30 -0
  52. package/dist/cjs/helpers/isObj.js.map +7 -0
  53. package/dist/cjs/helpers/isTamaguiElement.js +34 -0
  54. package/dist/cjs/helpers/isTamaguiElement.js.map +7 -0
  55. package/dist/cjs/helpers/matchMedia.js +41 -0
  56. package/dist/cjs/helpers/matchMedia.js.map +7 -0
  57. package/dist/cjs/helpers/matchMedia.native.js +37 -0
  58. package/dist/cjs/helpers/matchMedia.native.js.map +7 -0
  59. package/dist/cjs/helpers/themeable.js +84 -0
  60. package/dist/{helpers → cjs/helpers}/themeable.js.map +2 -2
  61. package/dist/cjs/helpers/validate.js +88 -0
  62. package/dist/cjs/helpers/validate.js.map +7 -0
  63. package/dist/cjs/hooks/useConstant.js +38 -0
  64. package/dist/{hooks → cjs/hooks}/useConstant.js.map +2 -2
  65. package/dist/cjs/hooks/useFeatures.js +106 -0
  66. package/dist/cjs/hooks/useFeatures.js.map +7 -0
  67. package/dist/cjs/hooks/useMedia.js +208 -0
  68. package/dist/cjs/hooks/useMedia.js.map +7 -0
  69. package/dist/cjs/hooks/usePressable.js +51 -0
  70. package/dist/{hooks → cjs/hooks}/usePressable.js.map +2 -2
  71. package/dist/cjs/hooks/useTheme.js +119 -0
  72. package/dist/cjs/hooks/useTheme.js.map +7 -0
  73. package/dist/cjs/index.js +63 -0
  74. package/dist/cjs/index.js.map +7 -0
  75. package/dist/cjs/static/postProcessStyles.js +41 -0
  76. package/dist/{static → cjs/static}/postProcessStyles.js.map +2 -2
  77. package/dist/cjs/static.js +35 -0
  78. package/dist/cjs/static.js.map +7 -0
  79. package/dist/cjs/styled.js +73 -0
  80. package/dist/cjs/styled.js.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/Animated.js +135 -0
  84. package/dist/{views → cjs/views}/Animated.js.map +2 -2
  85. package/dist/cjs/views/Stack.js +52 -0
  86. package/dist/{views → cjs/views}/Stack.js.map +2 -2
  87. package/dist/cjs/views/Text.js +94 -0
  88. package/dist/cjs/views/Text.js.map +7 -0
  89. package/dist/cjs/views/TextAncestorContext.js +46 -0
  90. package/dist/cjs/views/TextAncestorContext.js.map +7 -0
  91. package/dist/cjs/views/Theme.js +97 -0
  92. package/dist/cjs/views/Theme.js.map +7 -0
  93. package/dist/cjs/views/ThemeContext.js +30 -0
  94. package/dist/{views → cjs/views}/ThemeContext.js.map +2 -2
  95. package/dist/cjs/views/ThemeInverse.js +54 -0
  96. package/dist/{views → cjs/views}/ThemeInverse.js.map +3 -3
  97. package/dist/cjs/views/ThemeManagerContext.js +85 -0
  98. package/dist/cjs/views/ThemeManagerContext.js.map +7 -0
  99. package/dist/cjs/views/ThemeProvider.js +73 -0
  100. package/dist/cjs/views/ThemeProvider.js.map +7 -0
  101. package/dist/esm/conf.js +29 -0
  102. package/dist/esm/conf.js.map +7 -0
  103. package/{_ → dist/esm}/constants/constants.js +4 -0
  104. package/dist/esm/constants/constants.js.map +7 -0
  105. package/{_ → dist/esm}/constants/platform.js +1 -1
  106. package/dist/{constants → esm/constants}/platform.js.map +2 -2
  107. package/{_ → dist/esm}/constants/pseudos.js +0 -0
  108. package/{_ → dist/esm}/constants/pseudos.js.map +1 -1
  109. package/{_ → dist/esm}/constants/rnw.js +0 -0
  110. package/dist/{constants → esm/constants}/rnw.js.map +1 -1
  111. package/dist/{createComponent.js → esm/createComponent.js} +81 -61
  112. package/dist/esm/createComponent.js.map +7 -0
  113. package/dist/{createFont.js → esm/createFont.js} +4 -0
  114. package/dist/esm/createFont.js.map +7 -0
  115. package/{_ → dist/esm}/createShorthands.js +0 -0
  116. package/dist/{createShorthands.js.map → esm/createShorthands.js.map} +1 -1
  117. package/dist/esm/createTamagui.js +166 -0
  118. package/dist/esm/createTamagui.js.map +7 -0
  119. package/dist/esm/createTheme.js +7 -0
  120. package/dist/esm/createTheme.js.map +7 -0
  121. package/dist/{createTokens.js → esm/createTokens.js} +4 -0
  122. package/dist/esm/createTokens.js.map +7 -0
  123. package/dist/{createVariable.js → esm/createVariable.js} +3 -0
  124. package/dist/{createVariable.js.map → esm/createVariable.js.map} +3 -3
  125. package/dist/esm/getThemeParentClassName.js +11 -0
  126. package/dist/esm/getThemeParentClassName.js.map +7 -0
  127. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js +1 -1
  128. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js.map +2 -2
  129. package/{_ → dist/esm}/helpers/createMediaStyle.js +0 -0
  130. package/{_ → dist/esm}/helpers/createMediaStyle.js.map +1 -1
  131. package/dist/{helpers → esm/helpers}/createPropMapper.js +25 -16
  132. package/dist/esm/helpers/createPropMapper.js.map +7 -0
  133. package/dist/{helpers → esm/helpers}/createTamaguiProvider.js +0 -0
  134. package/dist/{helpers → esm/helpers}/createTamaguiProvider.js.map +1 -1
  135. package/dist/{helpers → esm/helpers}/extendStaticConfig.js +3 -2
  136. package/dist/esm/helpers/extendStaticConfig.js.map +7 -0
  137. package/{_ → dist/esm}/helpers/fixNativeShadow.js +0 -0
  138. package/dist/{helpers → esm/helpers}/fixNativeShadow.js.map +1 -1
  139. package/dist/esm/helpers/fixNativeShadow.native.js +34 -0
  140. package/dist/esm/helpers/fixNativeShadow.native.js.map +7 -0
  141. package/dist/{helpers → esm/helpers}/getSplitStyles.js +13 -23
  142. package/dist/esm/helpers/getSplitStyles.js.map +7 -0
  143. package/{_ → dist/esm}/helpers/getStylesAtomic.js +0 -0
  144. package/dist/esm/helpers/getStylesAtomic.js.map +7 -0
  145. package/{_ → dist/esm}/helpers/getStylesAtomic.native.js +0 -0
  146. package/{_ → dist/esm}/helpers/getStylesAtomic.native.js.map +1 -1
  147. package/dist/esm/helpers/getThemeParentClassName.js +11 -0
  148. package/dist/esm/helpers/getThemeParentClassName.js.map +7 -0
  149. package/{_ → dist/esm}/helpers/insertStyleRule.js +0 -0
  150. package/{_ → dist/esm}/helpers/insertStyleRule.js.map +1 -1
  151. package/dist/{helpers → esm/helpers}/isObj.js +0 -0
  152. package/dist/{helpers → esm/helpers}/isObj.js.map +1 -1
  153. package/dist/esm/helpers/isTamaguiElement.js +11 -0
  154. package/dist/esm/helpers/isTamaguiElement.js.map +7 -0
  155. package/{_ → dist/esm}/helpers/matchMedia.js +3 -0
  156. package/dist/esm/helpers/matchMedia.js.map +7 -0
  157. package/dist/{helpers → esm/helpers}/matchMedia.native.js +1 -0
  158. package/{_ → dist/esm}/helpers/matchMedia.native.js.map +3 -3
  159. package/{_ → dist/esm}/helpers/themeable.js +0 -0
  160. package/{_ → dist/esm}/helpers/themeable.js.map +1 -1
  161. package/dist/esm/helpers/validate.js +60 -0
  162. package/dist/esm/helpers/validate.js.map +7 -0
  163. package/{_ → dist/esm}/hooks/useConstant.js +0 -0
  164. package/{_ → dist/esm}/hooks/useConstant.js.map +1 -1
  165. package/{_ → dist/esm}/hooks/useFeatures.js +39 -51
  166. package/dist/esm/hooks/useFeatures.js.map +7 -0
  167. package/{_ → dist/esm}/hooks/useMedia.js +8 -6
  168. package/dist/esm/hooks/useMedia.js.map +7 -0
  169. package/{_ → dist/esm}/hooks/usePressable.js +0 -0
  170. package/{_ → dist/esm}/hooks/usePressable.js.map +1 -1
  171. package/{_ → dist/esm}/hooks/useTheme.js +16 -13
  172. package/dist/esm/hooks/useTheme.js.map +7 -0
  173. package/dist/{index.js → esm/index.js} +9 -2
  174. package/dist/esm/index.js.map +7 -0
  175. package/{_ → dist/esm}/static/postProcessStyles.js +0 -0
  176. package/{_ → dist/esm}/static/postProcessStyles.js.map +1 -1
  177. package/dist/{static.js → esm/static.js} +0 -0
  178. package/dist/{static.js.map → esm/static.js.map} +1 -1
  179. package/dist/{styled.js → esm/styled.js} +0 -0
  180. package/dist/esm/styled.js.map +7 -0
  181. package/{_ → dist/esm}/types.js +0 -0
  182. package/{_ → dist/esm}/types.js.map +0 -0
  183. package/{_ → dist/esm}/views/Animated.js +0 -0
  184. package/{_ → dist/esm}/views/Animated.js.map +1 -1
  185. package/{_ → dist/esm}/views/Stack.js +0 -0
  186. package/{_ → dist/esm}/views/Stack.js.map +1 -1
  187. package/dist/{views → esm/views}/Text.js +1 -1
  188. package/dist/esm/views/Text.js.map +7 -0
  189. package/dist/esm/views/TextAncestorContext.js +18 -0
  190. package/dist/esm/views/TextAncestorContext.js.map +7 -0
  191. package/{_ → dist/esm}/views/Theme.js +26 -14
  192. package/dist/esm/views/Theme.js.map +7 -0
  193. package/{_ → dist/esm}/views/ThemeContext.js +0 -0
  194. package/{_ → dist/esm}/views/ThemeContext.js.map +1 -1
  195. package/{_ → dist/esm}/views/ThemeInverse.js +0 -1
  196. package/{_ → dist/esm}/views/ThemeInverse.js.map +3 -3
  197. package/{_ → dist/esm}/views/ThemeManagerContext.js +13 -7
  198. package/dist/esm/views/ThemeManagerContext.js.map +7 -0
  199. package/dist/{views → esm/views}/ThemeProvider.js +3 -3
  200. package/dist/esm/views/ThemeProvider.js.map +7 -0
  201. package/dist/jsx/conf.js +28 -0
  202. package/dist/{constants → jsx/constants}/constants.js +4 -1
  203. package/dist/{constants → jsx/constants}/platform.js +2 -2
  204. package/dist/{constants → jsx/constants}/pseudos.js +0 -1
  205. package/dist/{constants → jsx/constants}/rnw.js +0 -1
  206. package/{_ → dist/jsx}/createComponent.js +105 -73
  207. package/dist/jsx/createFont.js +27 -0
  208. package/dist/{createShorthands.js → jsx/createShorthands.js} +0 -1
  209. package/dist/jsx/createTamagui.js +165 -0
  210. package/dist/jsx/createTheme.js +6 -0
  211. package/{_ → dist/jsx}/createTokens.js +4 -1
  212. package/{_ → dist/jsx}/createVariable.js +3 -1
  213. package/dist/jsx/getThemeParentClassName.js +10 -0
  214. package/dist/jsx/helpers/addStylesUsingClassname.js +56 -0
  215. package/dist/{helpers → jsx/helpers}/createMediaStyle.js +0 -1
  216. package/dist/jsx/helpers/createPropMapper.js +161 -0
  217. package/dist/jsx/helpers/createTamaguiProvider.js +19 -0
  218. package/dist/jsx/helpers/extendStaticConfig.js +59 -0
  219. package/dist/{helpers → jsx/helpers}/fixNativeShadow.js +0 -1
  220. package/dist/jsx/helpers/fixNativeShadow.native.js +33 -0
  221. package/{_ → dist/jsx}/helpers/getSplitStyles.js +18 -29
  222. package/dist/{helpers → jsx/helpers}/getStylesAtomic.js +2 -2
  223. package/dist/{helpers → jsx/helpers}/getStylesAtomic.native.js +0 -1
  224. package/dist/jsx/helpers/getThemeParentClassName.js +10 -0
  225. package/dist/{helpers → jsx/helpers}/insertStyleRule.js +0 -1
  226. package/dist/jsx/helpers/isObj.js +6 -0
  227. package/dist/jsx/helpers/isTamaguiElement.js +10 -0
  228. package/dist/{helpers → jsx/helpers}/matchMedia.js +3 -1
  229. package/{_ → dist/jsx}/helpers/matchMedia.native.js +1 -1
  230. package/dist/{helpers → jsx/helpers}/themeable.js +3 -6
  231. package/dist/jsx/helpers/validate.js +59 -0
  232. package/dist/{hooks → jsx/hooks}/useConstant.js +0 -1
  233. package/dist/jsx/hooks/useFeatures.js +57 -0
  234. package/dist/{hooks → jsx/hooks}/useMedia.js +10 -7
  235. package/dist/{hooks → jsx/hooks}/usePressable.js +2 -2
  236. package/dist/{hooks → jsx/hooks}/useTheme.js +17 -14
  237. package/{_ → dist/jsx}/index.js +11 -3
  238. package/dist/{static → jsx/static}/postProcessStyles.js +0 -1
  239. package/{_ → dist/jsx}/static.js +3 -1
  240. package/{_ → dist/jsx}/styled.js +2 -3
  241. package/dist/jsx/types.js +0 -0
  242. package/dist/{views → jsx/views}/Animated.js +2 -7
  243. package/dist/{views → jsx/views}/Stack.js +0 -1
  244. package/{_ → dist/jsx}/views/Text.js +1 -2
  245. package/dist/jsx/views/TextAncestorContext.js +15 -0
  246. package/dist/jsx/views/Theme.js +63 -0
  247. package/dist/{views → jsx/views}/ThemeContext.js +0 -1
  248. package/dist/{views → jsx/views}/ThemeInverse.js +1 -6
  249. package/dist/{views → jsx/views}/ThemeManagerContext.js +15 -9
  250. package/{_ → dist/jsx}/views/ThemeProvider.js +5 -11
  251. package/package.json +18 -16
  252. package/types/conf.d.ts +46 -0
  253. package/types/conf.d.ts.map +1 -0
  254. package/{dist/packages/core/src → types}/constants/constants.d.ts +2 -0
  255. package/types/constants/constants.d.ts.map +1 -0
  256. package/{dist/packages/core/src → types}/constants/platform.d.ts +0 -0
  257. package/types/constants/platform.d.ts.map +1 -0
  258. package/{dist/packages/core/src → types}/constants/pseudos.d.ts +0 -0
  259. package/types/constants/pseudos.d.ts.map +1 -0
  260. package/{dist/packages/core/src → types}/constants/rnw.d.ts +0 -0
  261. package/types/constants/rnw.d.ts.map +1 -0
  262. package/{dist/packages/core/src → types}/createComponent.d.ts +3 -2
  263. package/types/createComponent.d.ts.map +1 -0
  264. package/types/createFont.d.ts +3 -0
  265. package/types/createFont.d.ts.map +1 -0
  266. package/{dist/packages/core/src → types}/createShorthands.d.ts +0 -0
  267. package/types/createShorthands.d.ts.map +1 -0
  268. package/types/createTamagui.d.ts +13 -0
  269. package/types/createTamagui.d.ts.map +1 -0
  270. package/types/createTheme.d.ts +7 -0
  271. package/types/createTheme.d.ts.map +1 -0
  272. package/{dist/packages/core/src → types}/createTokens.d.ts +24 -14
  273. package/types/createTokens.d.ts.map +1 -0
  274. package/{dist/packages/core/src → types}/createVariable.d.ts +1 -0
  275. package/types/createVariable.d.ts.map +1 -0
  276. package/types/helpers/addStylesUsingClassname.d.ts +3 -0
  277. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -0
  278. package/{dist/packages/core/src → types}/helpers/createMediaStyle.d.ts +0 -0
  279. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  280. package/types/helpers/createPropMapper.d.ts +3 -0
  281. package/types/helpers/createPropMapper.d.ts.map +1 -0
  282. package/{dist/packages/core/src → types}/helpers/createTamaguiProvider.d.ts +0 -0
  283. package/types/helpers/createTamaguiProvider.d.ts.map +1 -0
  284. package/{dist/packages/core/src → types}/helpers/extendStaticConfig.d.ts +1 -1
  285. package/types/helpers/extendStaticConfig.d.ts.map +1 -0
  286. package/{dist/packages/core/src → types}/helpers/fixNativeShadow.d.ts +0 -0
  287. package/types/helpers/fixNativeShadow.d.ts.map +1 -0
  288. package/types/helpers/fixNativeShadow.native.d.ts +2 -0
  289. package/types/helpers/fixNativeShadow.native.d.ts.map +1 -0
  290. package/{dist/packages/core/src → types}/helpers/getSplitStyles.d.ts +0 -0
  291. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  292. package/types/helpers/getStylesAtomic.d.ts +3 -0
  293. package/types/helpers/getStylesAtomic.d.ts.map +1 -0
  294. package/{dist/packages/core/src → types}/helpers/getStylesAtomic.native.d.ts +0 -0
  295. package/types/helpers/getStylesAtomic.native.d.ts.map +1 -0
  296. package/types/helpers/getThemeParentClassName.d.ts +2 -0
  297. package/types/helpers/getThemeParentClassName.d.ts.map +1 -0
  298. package/{dist/packages/core/src → types}/helpers/insertStyleRule.d.ts +0 -0
  299. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  300. package/types/helpers/isObj.d.ts +2 -0
  301. package/types/helpers/isObj.d.ts.map +1 -0
  302. package/types/helpers/isTamaguiElement.d.ts +3 -0
  303. package/types/helpers/isTamaguiElement.d.ts.map +1 -0
  304. package/{dist/packages/core/src → types}/helpers/matchMedia.d.ts +0 -0
  305. package/types/helpers/matchMedia.d.ts.map +1 -0
  306. package/{dist/packages/core/src → types}/helpers/matchMedia.native.d.ts +0 -0
  307. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  308. package/{dist/packages/core/src → types}/helpers/themeable.d.ts +0 -0
  309. package/types/helpers/themeable.d.ts.map +1 -0
  310. package/types/helpers/validate.d.ts +4 -0
  311. package/types/helpers/validate.d.ts.map +1 -0
  312. package/{dist/packages/core/src → types}/hooks/useConstant.d.ts +0 -0
  313. package/types/hooks/useConstant.d.ts.map +1 -0
  314. package/{dist/packages/core/src → types}/hooks/useFeatures.d.ts +0 -0
  315. package/types/hooks/useFeatures.d.ts.map +1 -0
  316. package/{dist/packages/core/src → types}/hooks/useMedia.d.ts +0 -0
  317. package/types/hooks/useMedia.d.ts.map +1 -0
  318. package/{dist/packages/core/src → types}/hooks/usePressable.d.ts +0 -0
  319. package/types/hooks/usePressable.d.ts.map +1 -0
  320. package/types/hooks/useTheme.d.ts +7 -0
  321. package/types/hooks/useTheme.d.ts.map +1 -0
  322. package/{dist/packages/core/src → types}/index.d.ts +5 -1
  323. package/types/index.d.ts.map +1 -0
  324. package/{dist/packages/core/src → types}/static/postProcessStyles.d.ts +0 -0
  325. package/types/static/postProcessStyles.d.ts.map +1 -0
  326. package/{dist/packages/core/src → types}/static.d.ts +3 -0
  327. package/types/static.d.ts.map +1 -0
  328. package/types/styled.d.ts +21 -0
  329. package/types/styled.d.ts.map +1 -0
  330. package/{dist/packages/core/src → types}/types.d.ts +79 -70
  331. package/types/types.d.ts.map +1 -0
  332. package/{dist/packages/core/src → types}/views/Animated.d.ts +0 -0
  333. package/types/views/Animated.d.ts.map +1 -0
  334. package/{dist/packages/core/src → types}/views/Stack.d.ts +0 -0
  335. package/types/views/Stack.d.ts.map +1 -0
  336. package/types/views/Text.d.ts +3 -0
  337. package/types/views/Text.d.ts.map +1 -0
  338. package/types/views/TextAncestorContext.d.ts +5 -0
  339. package/types/views/TextAncestorContext.d.ts.map +1 -0
  340. package/{dist/packages/core/src → types}/views/Theme.d.ts +1 -1
  341. package/types/views/Theme.d.ts.map +1 -0
  342. package/{dist/packages/core/src → types}/views/ThemeContext.d.ts +0 -0
  343. package/types/views/ThemeContext.d.ts.map +1 -0
  344. package/{dist/packages/core/src → types}/views/ThemeInverse.d.ts +0 -0
  345. package/types/views/ThemeInverse.d.ts.map +1 -0
  346. package/types/views/ThemeManagerContext.d.ts +22 -0
  347. package/types/views/ThemeManagerContext.d.ts.map +1 -0
  348. package/{dist/packages/core/src → types}/views/ThemeProvider.d.ts +0 -1
  349. package/types/views/ThemeProvider.d.ts.map +1 -0
  350. package/.ultra.cache.json +0 -1
  351. package/_/constants/constants.js.map +0 -7
  352. package/_/constants/platform.js.map +0 -7
  353. package/_/createComponent.js.map +0 -7
  354. package/_/createTamagui.js +0 -122
  355. package/_/createTamagui.js.map +0 -7
  356. package/_/createTheme.js +0 -20
  357. package/_/createTheme.js.map +0 -7
  358. package/_/createTokens.js.map +0 -7
  359. package/_/createVariable.js.map +0 -7
  360. package/_/helpers/addStylesUsingClassname.js +0 -32
  361. package/_/helpers/addStylesUsingClassname.js.map +0 -7
  362. package/_/helpers/createTamaguiProvider.js +0 -42
  363. package/_/helpers/createTamaguiProvider.js.map +0 -7
  364. package/_/helpers/extendStaticConfig.js +0 -176
  365. package/_/helpers/extendStaticConfig.js.map +0 -7
  366. package/_/helpers/fixNativeShadow.js.map +0 -7
  367. package/_/helpers/fixNativeShadow.native.js +0 -30
  368. package/_/helpers/fixNativeShadow.native.js.map +0 -7
  369. package/_/helpers/getSplitStyles.js.map +0 -7
  370. package/_/helpers/getStylesAtomic.js.map +0 -7
  371. package/_/helpers/matchMedia.js.map +0 -7
  372. package/_/hooks/useFeatures.js.map +0 -7
  373. package/_/hooks/useForceUpdate.js +0 -28
  374. package/_/hooks/useForceUpdate.js.map +0 -7
  375. package/_/hooks/useMedia.js.map +0 -7
  376. package/_/hooks/useTheme.js.map +0 -7
  377. package/_/index.js.map +0 -7
  378. package/_/static.js.map +0 -7
  379. package/_/styled.js.map +0 -7
  380. package/_/views/Text.js.map +0 -7
  381. package/_/views/TextAncestorContext.js +0 -19
  382. package/_/views/TextAncestorContext.js.map +0 -7
  383. package/_/views/Theme.js.map +0 -7
  384. package/_/views/ThemeManagerContext.js.map +0 -7
  385. package/_/views/ThemeProvider.js.map +0 -7
  386. package/dist/constants/constants.js.map +0 -7
  387. package/dist/constants/pseudos.js.map +0 -7
  388. package/dist/constants/styleConstants.js +0 -46
  389. package/dist/constants/styleConstants.js.map +0 -7
  390. package/dist/createComponent.js.map +0 -7
  391. package/dist/createFont.js.map +0 -7
  392. package/dist/createTamagui.js +0 -159
  393. package/dist/createTamagui.js.map +0 -7
  394. package/dist/createTheme.js +0 -20
  395. package/dist/createTheme.js.map +0 -7
  396. package/dist/createTokens.js.map +0 -7
  397. package/dist/helpers/createPropMapper.js.map +0 -7
  398. package/dist/helpers/fixNativeShadow.native.js +0 -30
  399. package/dist/helpers/fixNativeShadow.native.js.map +0 -7
  400. package/dist/helpers/getSplitStyles.js.map +0 -7
  401. package/dist/helpers/getStylesAtomic.js.map +0 -7
  402. package/dist/helpers/getStylesAtomic.native.js.map +0 -7
  403. package/dist/helpers/matchMedia.js.map +0 -7
  404. package/dist/helpers/matchMedia.native.js.map +0 -7
  405. package/dist/helpers/pseudos.js +0 -1
  406. package/dist/helpers/pseudos.js.map +0 -7
  407. package/dist/hooks/useFeatures.js +0 -75
  408. package/dist/hooks/useFeatures.js.map +0 -7
  409. package/dist/hooks/useForceUpdate.js +0 -28
  410. package/dist/hooks/useForceUpdate.js.map +0 -7
  411. package/dist/hooks/useMedia.js.map +0 -7
  412. package/dist/hooks/useTheme.js.map +0 -7
  413. package/dist/index.cjs +0 -2103
  414. package/dist/index.cjs.map +0 -7
  415. package/dist/index.js.map +0 -7
  416. package/dist/packages/core/src/constants/constants.d.ts.map +0 -1
  417. package/dist/packages/core/src/constants/platform.d.ts.map +0 -1
  418. package/dist/packages/core/src/constants/pseudos.d.ts.map +0 -1
  419. package/dist/packages/core/src/constants/rnw.d.ts.map +0 -1
  420. package/dist/packages/core/src/createComponent.d.ts.map +0 -1
  421. package/dist/packages/core/src/createShorthands.d.ts.map +0 -1
  422. package/dist/packages/core/src/createTamagui.d.ts +0 -37
  423. package/dist/packages/core/src/createTamagui.d.ts.map +0 -1
  424. package/dist/packages/core/src/createTheme.d.ts +0 -5
  425. package/dist/packages/core/src/createTheme.d.ts.map +0 -1
  426. package/dist/packages/core/src/createTokens.d.ts.map +0 -1
  427. package/dist/packages/core/src/createVariable.d.ts.map +0 -1
  428. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts +0 -2
  429. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts.map +0 -1
  430. package/dist/packages/core/src/helpers/createMediaStyle.d.ts.map +0 -1
  431. package/dist/packages/core/src/helpers/createTamaguiProvider.d.ts.map +0 -1
  432. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts.map +0 -1
  433. package/dist/packages/core/src/helpers/fixNativeShadow.d.ts.map +0 -1
  434. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts +0 -2
  435. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts.map +0 -1
  436. package/dist/packages/core/src/helpers/getSplitStyles.d.ts.map +0 -1
  437. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts +0 -3
  438. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts.map +0 -1
  439. package/dist/packages/core/src/helpers/getStylesAtomic.native.d.ts.map +0 -1
  440. package/dist/packages/core/src/helpers/insertStyleRule.d.ts.map +0 -1
  441. package/dist/packages/core/src/helpers/matchMedia.d.ts.map +0 -1
  442. package/dist/packages/core/src/helpers/matchMedia.native.d.ts.map +0 -1
  443. package/dist/packages/core/src/helpers/themeable.d.ts.map +0 -1
  444. package/dist/packages/core/src/hooks/useConstant.d.ts.map +0 -1
  445. package/dist/packages/core/src/hooks/useFeatures.d.ts.map +0 -1
  446. package/dist/packages/core/src/hooks/useForceUpdate.d.ts +0 -2
  447. package/dist/packages/core/src/hooks/useForceUpdate.d.ts.map +0 -1
  448. package/dist/packages/core/src/hooks/useMedia.d.ts.map +0 -1
  449. package/dist/packages/core/src/hooks/usePressable.d.ts.map +0 -1
  450. package/dist/packages/core/src/hooks/useTheme.d.ts +0 -18
  451. package/dist/packages/core/src/hooks/useTheme.d.ts.map +0 -1
  452. package/dist/packages/core/src/index.d.ts.map +0 -1
  453. package/dist/packages/core/src/static/postProcessStyles.d.ts.map +0 -1
  454. package/dist/packages/core/src/static.d.ts.map +0 -1
  455. package/dist/packages/core/src/styled.d.ts +0 -16
  456. package/dist/packages/core/src/styled.d.ts.map +0 -1
  457. package/dist/packages/core/src/types.d.ts.map +0 -1
  458. package/dist/packages/core/src/views/Animated.d.ts.map +0 -1
  459. package/dist/packages/core/src/views/Stack.d.ts.map +0 -1
  460. package/dist/packages/core/src/views/Text.d.ts +0 -3
  461. package/dist/packages/core/src/views/Text.d.ts.map +0 -1
  462. package/dist/packages/core/src/views/TextAncestorContext.d.ts +0 -3
  463. package/dist/packages/core/src/views/TextAncestorContext.d.ts.map +0 -1
  464. package/dist/packages/core/src/views/Theme.d.ts.map +0 -1
  465. package/dist/packages/core/src/views/ThemeContext.d.ts.map +0 -1
  466. package/dist/packages/core/src/views/ThemeInverse.d.ts.map +0 -1
  467. package/dist/packages/core/src/views/ThemeManagerContext.d.ts +0 -15
  468. package/dist/packages/core/src/views/ThemeManagerContext.d.ts.map +0 -1
  469. package/dist/packages/core/src/views/ThemeProvider.d.ts.map +0 -1
  470. package/dist/packages/helpers/src/AllRules.d.ts +0 -3
  471. package/dist/packages/helpers/src/AllRules.d.ts.map +0 -1
  472. package/dist/packages/helpers/src/concatClassName.d.ts +0 -2
  473. package/dist/packages/helpers/src/concatClassName.d.ts.map +0 -1
  474. package/dist/packages/helpers/src/index.d.ts +0 -5
  475. package/dist/packages/helpers/src/index.d.ts.map +0 -1
  476. package/dist/packages/helpers/src/types.d.ts +0 -8
  477. package/dist/packages/helpers/src/types.d.ts.map +0 -1
  478. package/dist/packages/helpers/src/validStyleProps.d.ts +0 -475
  479. package/dist/packages/helpers/src/validStyleProps.d.ts.map +0 -1
  480. package/dist/styled.js.map +0 -7
  481. package/dist/types.js +0 -1
  482. package/dist/types.js.map +0 -7
  483. package/dist/views/SafeAreaProvider.js +0 -30
  484. package/dist/views/SafeAreaProvider.js.map +0 -7
  485. package/dist/views/Text.js.map +0 -7
  486. package/dist/views/TextAncestorContext.js +0 -18
  487. package/dist/views/TextAncestorContext.js.map +0 -7
  488. package/dist/views/Theme.js +0 -56
  489. package/dist/views/Theme.js.map +0 -7
  490. package/dist/views/ThemeManagerContext.js.map +0 -7
  491. package/dist/views/ThemeProvider.js.map +0 -7
  492. package/src/constants/constants.ts +0 -12
  493. package/src/constants/platform.ts +0 -15
  494. package/src/constants/pseudos.ts +0 -14
  495. package/src/constants/rnw.tsx +0 -20
  496. package/src/createComponent.tsx +0 -597
  497. package/src/createFont.ts +0 -26
  498. package/src/createShorthands.ts +0 -5
  499. package/src/createTamagui.ts +0 -207
  500. package/src/createTheme.ts +0 -19
  501. package/src/createTokens.ts +0 -83
  502. package/src/createVariable.ts +0 -22
  503. package/src/helpers/addStylesUsingClassname.tsx +0 -60
  504. package/src/helpers/createMediaStyle.ts +0 -46
  505. package/src/helpers/createPropMapper.ts +0 -184
  506. package/src/helpers/createTamaguiProvider.tsx +0 -22
  507. package/src/helpers/extendStaticConfig.ts +0 -68
  508. package/src/helpers/fixNativeShadow.native.tsx +0 -27
  509. package/src/helpers/fixNativeShadow.tsx +0 -2
  510. package/src/helpers/getSplitStyles.tsx +0 -210
  511. package/src/helpers/getStylesAtomic.native.ts +0 -3
  512. package/src/helpers/getStylesAtomic.ts +0 -103
  513. package/src/helpers/insertStyleRule.tsx +0 -18
  514. package/src/helpers/isObj.ts +0 -1
  515. package/src/helpers/matchMedia.native.ts +0 -3
  516. package/src/helpers/matchMedia.ts +0 -9
  517. package/src/helpers/themeable.tsx +0 -42
  518. package/src/hooks/useConstant.tsx +0 -10
  519. package/src/hooks/useFeatures.tsx +0 -78
  520. package/src/hooks/useMedia.tsx +0 -194
  521. package/src/hooks/usePressable.tsx +0 -9
  522. package/src/hooks/useTheme.tsx +0 -107
  523. package/src/index.ts +0 -32
  524. package/src/static/postProcessStyles.tsx +0 -20
  525. package/src/static.ts +0 -22
  526. package/src/styled.ts +0 -82
  527. package/src/types.tsx +0 -561
  528. package/src/views/Animated.tsx +0 -121
  529. package/src/views/SafeAreaProvider.tsx +0 -33
  530. package/src/views/Stack.tsx +0 -21
  531. package/src/views/Text.tsx +0 -66
  532. package/src/views/TextAncestorContext.tsx +0 -12
  533. package/src/views/Theme.tsx +0 -73
  534. package/src/views/ThemeContext.tsx +0 -5
  535. package/src/views/ThemeInverse.tsx +0 -23
  536. package/src/views/ThemeManagerContext.tsx +0 -50
  537. package/src/views/ThemeProvider.tsx +0 -52
  538. package/tsconfig.json +0 -8
  539. package/types.d.ts +0 -557
@@ -1,7 +1,8 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
  import { concatClassName, stylePropsView } from "@tamagui/helpers";
4
- import React, {
4
+ import { useForceUpdate } from "@tamagui/use-force-update";
5
+ import {
5
6
  Children,
6
7
  Fragment,
7
8
  createElement,
@@ -12,26 +13,43 @@ import React, {
12
13
  useRef,
13
14
  useState
14
15
  } from "react";
15
- import { Text, View } from "react-native";
16
+ import { StyleSheet, Text, View } from "react-native";
17
+ import { onConfiguredOnce } from "./conf";
16
18
  import { stackDefaultStyles } from "./constants/constants";
17
19
  import { isTouchDevice, isWeb } from "./constants/platform";
18
20
  import { rnw } from "./constants/rnw";
19
- import { onConfiguredOnce } from "./createTamagui";
20
- import { addStylesUsingClassname } from "./helpers/addStylesUsingClassname";
21
+ import { addStylesUsingClassname, useStylesAsClassname } from "./helpers/addStylesUsingClassname";
21
22
  import { extendStaticConfig, parseStaticConfig } from "./helpers/extendStaticConfig";
22
23
  import { getSplitStyles } from "./helpers/getSplitStyles";
23
24
  import { useFeatures } from "./hooks/useFeatures";
24
- import { useForceUpdate } from "./hooks/useForceUpdate";
25
25
  import { usePressable } from "./hooks/usePressable";
26
+ import { useTheme } from "./hooks/useTheme";
26
27
  import { TextAncestorContext } from "./views/TextAncestorContext";
27
- import { ThemeManagerContext } from "./views/ThemeManagerContext";
28
- const mouseUps = new Set();
28
+ const mouseUps = /* @__PURE__ */ new Set();
29
29
  if (typeof document !== "undefined") {
30
30
  document.addEventListener("mouseup", () => {
31
31
  mouseUps.forEach((x) => x());
32
32
  mouseUps.clear();
33
33
  });
34
34
  }
35
+ const defaultComponentState = {
36
+ hover: false,
37
+ press: false,
38
+ pressIn: false
39
+ };
40
+ function createShallowUpdate(setter) {
41
+ return (next) => {
42
+ setter((prev) => {
43
+ for (const key in next) {
44
+ if (prev[key] !== next[key]) {
45
+ return { ...prev, ...next };
46
+ }
47
+ }
48
+ return prev;
49
+ });
50
+ };
51
+ }
52
+ __name(createShallowUpdate, "createShallowUpdate");
35
53
  function createComponent(configIn) {
36
54
  let staticConfig;
37
55
  if ("parsed" in configIn) {
@@ -39,7 +57,7 @@ function createComponent(configIn) {
39
57
  } else {
40
58
  staticConfig = parseStaticConfig(configIn);
41
59
  }
42
- const { Component, validStyles, isText } = staticConfig;
60
+ const { Component, validStyles, isText, isZStack } = staticConfig;
43
61
  const validStyleProps = validStyles != null ? validStyles : stylePropsView;
44
62
  let defaultProps = null;
45
63
  let tamaguiConfig;
@@ -48,6 +66,26 @@ function createComponent(configIn) {
48
66
  let initialTheme;
49
67
  const component = forwardRef((props, forwardedRef) => {
50
68
  var _a;
69
+ const forceUpdate = useForceUpdate();
70
+ const features = useFeatures(props, { forceUpdate });
71
+ const theme = useTheme();
72
+ const [state, set_] = useState(defaultComponentState);
73
+ const set = createShallowUpdate(set_);
74
+ if (process.env.NODE_ENV === "development" && !isText && isWeb) {
75
+ Children.toArray(props.children).forEach((item) => {
76
+ if (typeof item === "string") {
77
+ console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <View>.`);
78
+ }
79
+ });
80
+ }
81
+ const hasTextAncestor = isWeb ? useContext(TextAncestorContext) : false;
82
+ const hostRef = useRef(null);
83
+ const {
84
+ viewProps: viewPropsIn,
85
+ pseudos,
86
+ style,
87
+ classNames
88
+ } = getSplitStyles(props, staticConfig, theme);
51
89
  const {
52
90
  tag,
53
91
  hitSlop,
@@ -81,34 +119,17 @@ function createComponent(configIn) {
81
119
  onStartShouldSetResponderCapture,
82
120
  onMouseDown,
83
121
  onClick,
84
- onLayout
85
- } = props;
86
- const forceUpdate = useForceUpdate();
87
- const features = useFeatures(props, { forceUpdate });
88
- const manager = useContext(ThemeManagerContext);
89
- const [state, set_] = useState(() => ({
90
- hover: false,
91
- press: false,
92
- pressIn: false,
93
- theme: manager.name
94
- }));
95
- const set = /* @__PURE__ */ __name((next) => set_((prev) => {
96
- for (const key in next) {
97
- if (prev[key] !== next[key]) {
98
- return { ...prev, ...next };
99
- }
100
- }
101
- return prev;
102
- }), "set");
103
- if (process.env.NODE_ENV === "development" && !isText && isWeb) {
104
- Children.toArray(props.children).forEach((item) => {
105
- if (typeof item === "string") {
106
- console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <View>.`);
107
- }
108
- });
122
+ accessible,
123
+ accessibilityRole,
124
+ onLayout,
125
+ ...viewProps
126
+ } = viewPropsIn;
127
+ if (!isWeb) {
128
+ if (accessible)
129
+ viewProps.accessible = accessible;
130
+ if (accessibilityRole)
131
+ viewProps.accessibilityRole = accessibilityRole;
109
132
  }
110
- const hasTextAncestor = isWeb ? useContext(TextAncestorContext) : false;
111
- const hostRef = useRef(null);
112
133
  if (isWeb) {
113
134
  rnw.useResponderEvents(hostRef, {
114
135
  onMoveShouldSetResponder,
@@ -129,8 +150,6 @@ function createComponent(configIn) {
129
150
  onStartShouldSetResponderCapture
130
151
  });
131
152
  }
132
- const isTracking = useRef(false);
133
- const { viewProps, pseudos, style, classNames } = getSplitStyles(props, staticConfig, manager.theme || initialTheme);
134
153
  const internal = useRef();
135
154
  if (!internal.current) {
136
155
  internal.current = {
@@ -139,18 +158,11 @@ function createComponent(configIn) {
139
158
  }
140
159
  useEffect(() => {
141
160
  internal.current.isMounted = true;
142
- const dispose = manager == null ? void 0 : manager.onChangeTheme((name) => {
143
- if (isTracking.current) {
144
- set({ theme: name });
145
- }
146
- });
147
161
  return () => {
148
- dispose();
149
162
  mouseUps.delete(unPress);
150
- isTracking.current = false;
151
163
  internal.current.isMounted = false;
152
164
  };
153
- }, [manager]);
165
+ }, []);
154
166
  const element = isWeb ? !Component || typeof Component === "string" ? tag || Component : Component : Component;
155
167
  const ReactView = !isWeb ? View : element || (hasTextAncestor ? "span" : "div");
156
168
  const ReactText = !isWeb ? Text : element || "span";
@@ -163,18 +175,17 @@ function createComponent(configIn) {
163
175
  isPressing ? pseudos.pressStyle || null : null
164
176
  ];
165
177
  if (isWeb) {
166
- const stylesClassNames = addStylesUsingClassname(styles);
167
- const classList = staticConfig.isText ? [
178
+ const stylesClassNames = useStylesAsClassname(styles);
179
+ const classList = isText ? [
168
180
  defaultsClassName,
169
181
  classNames,
170
182
  stylesClassNames,
171
183
  props.className
172
184
  ] : [defaultsClassName, props.className, classNames, stylesClassNames];
173
- const classListFlat = classList.flat(1).filter(Boolean).join(" ");
174
- const className = concatClassName(classListFlat);
185
+ const className = concatClassName(...classList);
175
186
  if (process.env.NODE_ENV === "development") {
176
187
  if (props["debug"]) {
177
- console.log("\u{1F95A} className", { style, styles, stylesClassNames, classListFlat: classListFlat.split(" "), className });
188
+ console.log("\u{1F95A} className", { style, styles, classList, stylesClassNames, className });
178
189
  }
179
190
  }
180
191
  viewProps.className = className;
@@ -287,10 +298,11 @@ function createComponent(configIn) {
287
298
  Object.assign(viewProps, events);
288
299
  }
289
300
  }
290
- const spacedChildrenEl = spacedChildren({
301
+ const childEls = spacedChildren({
291
302
  children,
292
303
  space,
293
- flexDirection: props.flexDirection || (defaultProps == null ? void 0 : defaultProps.flexDirection)
304
+ flexDirection: props.flexDirection || (defaultProps == null ? void 0 : defaultProps.flexDirection),
305
+ isZStack
294
306
  });
295
307
  let content;
296
308
  if (isWeb && rnw) {
@@ -298,11 +310,11 @@ function createComponent(configIn) {
298
310
  const className = domProps.className && domProps.className !== viewProps.className ? `${domProps.className} ${viewProps.className}` : viewProps.className;
299
311
  Object.assign(viewProps, domProps);
300
312
  viewProps.className = className;
301
- content = createElement(ViewComponent, viewProps, spacedChildrenEl);
313
+ content = createElement(ViewComponent, viewProps, childEls);
302
314
  } else {
303
- content = createElement(ViewComponent, viewProps, spacedChildrenEl);
315
+ content = createElement(ViewComponent, viewProps, childEls);
304
316
  }
305
- const shouldWrapTextAncestor = isWeb && staticConfig.isText && !hasTextAncestor;
317
+ const shouldWrapTextAncestor = isWeb && isText && !hasTextAncestor;
306
318
  if (shouldWrapTextAncestor) {
307
319
  content = createElement(TextAncestorContext.Provider, { value: true }, content);
308
320
  }
@@ -312,13 +324,16 @@ function createComponent(configIn) {
312
324
  console.log("\u{1F95A} props in:", props);
313
325
  console.log("\u{1F95A} props out:", viewProps);
314
326
  console.log((_a = props.onClick) == null ? void 0 : _a.toString());
315
- console.log("\u{1F95A} etc:", { shouldAttach, ViewComponent, viewProps, styles, pseudos, content, spacedChildrenEl });
327
+ console.log("\u{1F95A} etc:", { shouldAttach, ViewComponent, viewProps, styles, pseudos, content, childEls });
316
328
  if (isWeb) {
317
329
  console.log("\u{1F95A} component info", { staticConfig, tamaguiConfig });
318
330
  }
319
331
  }
320
332
  }
321
- return /* @__PURE__ */ React.createElement(React.Fragment, null, features, content);
333
+ return <>
334
+ {features}
335
+ {content}
336
+ </>;
322
337
  });
323
338
  onConfiguredOnce((conf) => {
324
339
  var _a;
@@ -331,7 +346,10 @@ function createComponent(configIn) {
331
346
  }
332
347
  defaultsClassName += addStylesUsingClassname([next.style, next.pseudos]);
333
348
  } else {
334
- console.log("we need to account for default styles for media queries", next);
349
+ if (!hasWarnedOnce) {
350
+ hasWarnedOnce = true;
351
+ console.log("\u26A0\uFE0F TODO account for default styles for media queries");
352
+ }
335
353
  }
336
354
  component.defaultProps = {
337
355
  ...next.viewProps,
@@ -348,22 +366,31 @@ function createComponent(configIn) {
348
366
  ...staticConfig
349
367
  };
350
368
  const res = component;
351
- res["extractable"] = (Component2) => {
369
+ res["extractable"] = (Component2, conf) => {
352
370
  Component2["staticConfig"] = extendStaticConfig(res, {
371
+ ...conf,
353
372
  neverFlatten: true,
354
- defaultProps: Component2.defaultProps
373
+ defaultProps: {
374
+ ...Component2.defaultProps,
375
+ ...conf == null ? void 0 : conf.defaultProps
376
+ }
355
377
  });
356
378
  return Component2;
357
379
  };
358
380
  return res;
359
381
  }
360
382
  __name(createComponent, "createComponent");
383
+ let hasWarnedOnce = false;
361
384
  const Spacer = createComponent({
362
- defaultProps: stackDefaultStyles,
385
+ defaultProps: {
386
+ ...stackDefaultStyles,
387
+ size: true
388
+ },
363
389
  variants: {
364
390
  size: {
365
391
  "...size": (size, { tokens }) => {
366
392
  var _a, _b;
393
+ size = size == true ? "$true" : size;
367
394
  return {
368
395
  width: (_a = tokens.size[size]) != null ? _a : size,
369
396
  height: (_b = tokens.size[size]) != null ? _b : size
@@ -381,12 +408,13 @@ const Spacer = createComponent({
381
408
  }
382
409
  });
383
410
  function spacedChildren({
411
+ isZStack,
384
412
  children,
385
413
  space,
386
414
  flexDirection
387
415
  }) {
388
416
  var _a, _b;
389
- if (!space) {
417
+ if (!space && !isZStack) {
390
418
  return children;
391
419
  }
392
420
  const childrenList = Children.toArray(children);
@@ -400,28 +428,32 @@ function spacedChildren({
400
428
  continue;
401
429
  }
402
430
  const key = `${(_a = child == null ? void 0 : child["key"]) != null ? _a : index}`;
403
- next.push(/* @__PURE__ */ React.createElement(Fragment, {
404
- key
405
- }, child));
431
+ next.push(<Fragment key={key}>{isZStack ? <Absolute>{child}</Absolute> : child}</Fragment>);
406
432
  if ((_b = child == null ? void 0 : child["type"]) == null ? void 0 : _b["isVisuallyHidden"]) {
407
433
  continue;
408
434
  }
409
- if (index === len - 1) {
410
- break;
435
+ if (index !== len - 1) {
436
+ if (space) {
437
+ next.push(<Spacer key={`${key}_spacer`} direction={flexDirection === "row" || flexDirection === "row-reverse" ? "horizontal" : "vertical"} size={space} />);
438
+ }
411
439
  }
412
- next.push(/* @__PURE__ */ React.createElement(Spacer, {
413
- key: `${key}_spacer`,
414
- direction: flexDirection === "row" || flexDirection === "row-reverse" ? "horizontal" : "vertical",
415
- size: space
416
- }));
417
440
  }
418
441
  return next;
419
442
  }
420
443
  __name(spacedChildren, "spacedChildren");
444
+ const Absolute = /* @__PURE__ */ __name(({ children }) => <View style={sheet.fullscreen}>{children}</View>, "Absolute");
445
+ const sheet = StyleSheet.create({
446
+ fullscreen: {
447
+ position: "absolute",
448
+ top: 0,
449
+ left: 0,
450
+ right: 0,
451
+ bottom: 0
452
+ }
453
+ });
421
454
  export {
422
455
  Spacer,
423
456
  createComponent,
424
457
  mouseUps,
425
458
  spacedChildren
426
459
  };
427
- //# sourceMappingURL=createComponent.js.map
@@ -0,0 +1,27 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { validateFont } from "./helpers/validate";
4
+ const createFont = /* @__PURE__ */ __name((font) => {
5
+ if (process.env.NODE_ENV === "development") {
6
+ validateFont(font);
7
+ }
8
+ const sizeKeys = Object.keys(font.size);
9
+ for (const key in font) {
10
+ if (key === "size" || key === "family")
11
+ continue;
12
+ const section = font[key];
13
+ const keys = Object.keys(section);
14
+ let fillVal = section[keys[0]];
15
+ for (const sKey of sizeKeys) {
16
+ if (!(sKey in section)) {
17
+ section[sKey] = fillVal;
18
+ } else {
19
+ fillVal = section[sKey];
20
+ }
21
+ }
22
+ }
23
+ return Object.freeze(font);
24
+ }, "createFont");
25
+ export {
26
+ createFont
27
+ };
@@ -7,4 +7,3 @@ __name(createShorthands, "createShorthands");
7
7
  export {
8
8
  createShorthands
9
9
  };
10
- //# sourceMappingURL=createShorthands.js.map
@@ -0,0 +1,165 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { getStyleRules } from "@tamagui/helpers";
4
+ import { configListeners, getHasConfigured, setConfig } from "./conf";
5
+ import { PREFIX } from "./constants/constants";
6
+ import { isWeb } from "./constants/platform";
7
+ import { Variable, createVariable } from "./createVariable";
8
+ import { createTamaguiProvider } from "./helpers/createTamaguiProvider";
9
+ import { configureMedia } from "./hooks/useMedia";
10
+ const createdConfigs = /* @__PURE__ */ new WeakMap();
11
+ function createTamagui(config) {
12
+ if (createdConfigs.has(config)) {
13
+ return config;
14
+ }
15
+ if (getHasConfigured()) {
16
+ console.warn("Called createTamagui twice! Should never do so");
17
+ }
18
+ configureMedia({
19
+ queries: config.media,
20
+ defaultActive: config.mediaQueryDefaultActive
21
+ });
22
+ const themeConfig = (() => {
23
+ var _a;
24
+ let cssRules = [];
25
+ const varsByValue = /* @__PURE__ */ new Map();
26
+ if (isWeb) {
27
+ let tokenRule = `:root {`;
28
+ const addVar = /* @__PURE__ */ __name((v) => {
29
+ varsByValue[v.val] = v;
30
+ const rule = `--${v.name}:${typeof v.val === "number" ? `${v.val}px` : v.val};`;
31
+ tokenRule += rule;
32
+ }, "addVar");
33
+ for (const key in config.tokens) {
34
+ for (const skey in config.tokens[key]) {
35
+ const val = config.tokens[key][skey];
36
+ if (key === "font") {
37
+ for (const fkey in val) {
38
+ if (fkey === "family") {
39
+ addVar(val[fkey]);
40
+ } else {
41
+ for (const fskey in val[fkey]) {
42
+ addVar(val[fkey][fskey]);
43
+ }
44
+ }
45
+ }
46
+ } else {
47
+ addVar(val);
48
+ }
49
+ }
50
+ }
51
+ cssRules.push(`${tokenRule}
52
+ }`);
53
+ }
54
+ for (const themeName in config.themes) {
55
+ const theme = { ...config.themes[themeName] };
56
+ config.themes[themeName] = theme;
57
+ let vars = "";
58
+ for (const themeKey in theme) {
59
+ if (isWeb) {
60
+ const val = theme[themeKey];
61
+ const varName = val instanceof Variable ? val.name : (_a = varsByValue[val]) == null ? void 0 : _a.name;
62
+ vars += `--${themeKey}:${varName ? `var(--${varName});` : `${val}`};`;
63
+ }
64
+ ensureThemeVariable(theme, themeKey);
65
+ }
66
+ if (isWeb) {
67
+ const [themeClassName, parentName] = themeName.includes("-") ? themeName.split("-") : [themeName, ""];
68
+ const oppositeName = parentName === "dark" ? "light" : "dark";
69
+ const cssParentSel = parentName ? `.${PREFIX}${parentName}` : "";
70
+ const cssChildSel = `.${PREFIX}${themeClassName}`;
71
+ const cssSel = `${cssParentSel} ${cssChildSel}`;
72
+ const cssRule = `${cssSel}, .${PREFIX}${oppositeName} ${cssSel} {
73
+ ${vars}
74
+ }`;
75
+ cssRules.push(cssRule);
76
+ }
77
+ }
78
+ varsByValue.clear();
79
+ Object.freeze(cssRules);
80
+ return {
81
+ cssRules,
82
+ css: cssRules.join("\n")
83
+ };
84
+ })();
85
+ const tokensParsed = parseTokens(config.tokens);
86
+ const themeParsed = {};
87
+ const firstKey = Object.keys(config.themes)[0];
88
+ for (const key in config.themes[firstKey]) {
89
+ const val = config.themes[firstKey][key].val;
90
+ themeParsed[`$${key}`] = new Variable({ val, name: key });
91
+ }
92
+ const next = {
93
+ shorthands: {},
94
+ media: {},
95
+ ...config,
96
+ Provider: createTamaguiProvider({
97
+ defaultTheme: "light",
98
+ ...config
99
+ }),
100
+ themeConfig,
101
+ themeParsed,
102
+ tokensParsed,
103
+ parsed: true,
104
+ getCSS() {
105
+ return `${themeConfig.css}
106
+ ${[...getStyleRules()].join("\n")}`;
107
+ }
108
+ };
109
+ setConfig(next);
110
+ if (configListeners.size) {
111
+ configListeners.forEach((cb) => cb(next));
112
+ configListeners.clear();
113
+ }
114
+ createdConfigs.set(next, true);
115
+ return next;
116
+ }
117
+ __name(createTamagui, "createTamagui");
118
+ const parseTokens = /* @__PURE__ */ __name((tokens) => {
119
+ const res = {};
120
+ for (const key in tokens) {
121
+ res[key] = {};
122
+ if (key === "font") {
123
+ for (const family in tokens.font) {
124
+ const obj = {};
125
+ res.font[`$${family}`] = obj;
126
+ for (const attrKey in tokens.font[family]) {
127
+ const attr = tokens.font[family][attrKey];
128
+ if (attrKey === "family") {
129
+ obj[attrKey] = attr;
130
+ continue;
131
+ }
132
+ obj[attrKey] = Object.keys(attr).reduce((acc, cur) => {
133
+ acc[`$${cur}`] = attr[cur];
134
+ return acc;
135
+ }, {});
136
+ }
137
+ }
138
+ continue;
139
+ }
140
+ for (const skey in tokens[key]) {
141
+ res[key][`$${skey}`] = tokens[key][skey];
142
+ }
143
+ }
144
+ return res;
145
+ }, "parseTokens");
146
+ function ensureThemeVariable(theme, key) {
147
+ const val = theme[key];
148
+ if (!(val instanceof Variable)) {
149
+ theme[key] = createVariable({
150
+ name: key,
151
+ val
152
+ });
153
+ } else {
154
+ if (val.name !== key) {
155
+ theme[key] = createVariable({
156
+ name: key,
157
+ val: val.val
158
+ });
159
+ }
160
+ }
161
+ }
162
+ __name(ensureThemeVariable, "ensureThemeVariable");
163
+ export {
164
+ createTamagui
165
+ };
@@ -0,0 +1,6 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const createTheme = /* @__PURE__ */ __name((theme) => theme, "createTheme");
4
+ export {
5
+ createTheme
6
+ };
@@ -1,7 +1,11 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
  import { createVariable } from "./createVariable";
4
+ import { validateTokens } from "./helpers/validate";
4
5
  function createTokens(tokens) {
6
+ if (process.env.NODE_ENV === "development") {
7
+ validateTokens(tokens);
8
+ }
5
9
  return setupTokens(tokens);
6
10
  }
7
11
  __name(createTokens, "createTokens");
@@ -26,4 +30,3 @@ export {
26
30
  createTokens,
27
31
  mapTokensToVariables
28
32
  };
29
- //# sourceMappingURL=createTokens.js.map
@@ -7,6 +7,9 @@ class Variable {
7
7
  this.name = name;
8
8
  this.variable = isWeb ? `var(--${name})` : this.val;
9
9
  }
10
+ toString() {
11
+ return `${isWeb ? this.variable : this.val}`;
12
+ }
10
13
  }
11
14
  __name(Variable, "Variable");
12
15
  const createVariable = /* @__PURE__ */ __name((props) => new Variable(props), "createVariable");
@@ -19,4 +22,3 @@ export {
19
22
  createVariable,
20
23
  isVariable
21
24
  };
22
- //# sourceMappingURL=createVariable.js.map
@@ -0,0 +1,10 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { PREFIX } from "./constants/constants";
4
+ function getThemeParentClassName(themeName) {
5
+ return `theme-parent ${themeName ? `${PREFIX}${themeName}` : ""}`;
6
+ }
7
+ __name(getThemeParentClassName, "getThemeParentClassName");
8
+ export {
9
+ getThemeParentClassName
10
+ };
@@ -0,0 +1,56 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { useInsertionEffect } from "react";
4
+ import { getStylesAtomic } from "./getStylesAtomic";
5
+ import { insertStyleRule } from "./insertStyleRule";
6
+ let added = /* @__PURE__ */ new Set();
7
+ function useStylesAsClassname(styles) {
8
+ if (!useInsertionEffect) {
9
+ return addStylesUsingClassname(styles);
10
+ } else {
11
+ const insertions = [];
12
+ const className = addStylesUsingClassname(styles, (_, rules) => {
13
+ for (const rule of rules) {
14
+ insertions.push(rule);
15
+ }
16
+ });
17
+ useInsertionEffect(() => {
18
+ for (const ruleset of insertions) {
19
+ insertStyleRule(ruleset);
20
+ }
21
+ });
22
+ return className;
23
+ }
24
+ }
25
+ __name(useStylesAsClassname, "useStylesAsClassname");
26
+ function addStylesUsingClassname(styles, onAdd) {
27
+ let className = "";
28
+ for (const style of styles) {
29
+ if (!style)
30
+ continue;
31
+ if (Array.isArray(style)) {
32
+ className += " " + addStylesUsingClassname(style);
33
+ continue;
34
+ }
35
+ for (const { identifier, rules } of getStylesAtomic(style)) {
36
+ className += ` ${identifier}`;
37
+ if (added.has(identifier)) {
38
+ continue;
39
+ }
40
+ added.add(identifier);
41
+ if (onAdd) {
42
+ onAdd(identifier, rules);
43
+ } else {
44
+ for (const rule of rules) {
45
+ insertStyleRule(rule);
46
+ }
47
+ }
48
+ }
49
+ }
50
+ return className;
51
+ }
52
+ __name(addStylesUsingClassname, "addStylesUsingClassname");
53
+ export {
54
+ addStylesUsingClassname,
55
+ useStylesAsClassname
56
+ };
@@ -31,4 +31,3 @@ export {
31
31
  MEDIA_SEP,
32
32
  createMediaStyle
33
33
  };
34
- //# sourceMappingURL=createMediaStyle.js.map