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

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 +539 -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 +201 -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 +64 -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} +88 -64
  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 +28 -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} +17 -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 +2 -2
  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 +110 -74
  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 +164 -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 +19 -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 +2 -3
  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 +45 -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,15 +57,35 @@ 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;
46
- let defaultsStyle;
64
+ let defaultNativeStyle = null;
47
65
  let defaultsClassName = "";
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";
@@ -158,23 +170,23 @@ function createComponent(configIn) {
158
170
  const isHovering = !isTouchDevice && !disabled && pseudos && state.hover;
159
171
  const isPressing = !disabled && pseudos && state.press;
160
172
  const styles = [
173
+ defaultNativeStyle ? defaultNativeStyle.base : null,
161
174
  style,
162
175
  isHovering ? pseudos.hoverStyle || null : null,
163
176
  isPressing ? pseudos.pressStyle || null : null
164
177
  ];
165
178
  if (isWeb) {
166
- const stylesClassNames = addStylesUsingClassname(styles);
167
- const classList = staticConfig.isText ? [
179
+ const stylesClassNames = useStylesAsClassname(styles);
180
+ const classList = isText ? [
168
181
  defaultsClassName,
169
182
  classNames,
170
183
  stylesClassNames,
171
184
  props.className
172
185
  ] : [defaultsClassName, props.className, classNames, stylesClassNames];
173
- const classListFlat = classList.flat(1).filter(Boolean).join(" ");
174
- const className = concatClassName(classListFlat);
186
+ const className = concatClassName(...classList);
175
187
  if (process.env.NODE_ENV === "development") {
176
188
  if (props["debug"]) {
177
- console.log("\u{1F95A} className", { style, styles, stylesClassNames, classListFlat: classListFlat.split(" "), className });
189
+ console.log("\u{1F95A} className", { style, styles, classList, stylesClassNames, className });
178
190
  }
179
191
  }
180
192
  viewProps.className = className;
@@ -287,10 +299,11 @@ function createComponent(configIn) {
287
299
  Object.assign(viewProps, events);
288
300
  }
289
301
  }
290
- const spacedChildrenEl = spacedChildren({
302
+ const childEls = spacedChildren({
291
303
  children,
292
304
  space,
293
- flexDirection: props.flexDirection || (defaultProps == null ? void 0 : defaultProps.flexDirection)
305
+ flexDirection: props.flexDirection || (defaultProps == null ? void 0 : defaultProps.flexDirection),
306
+ isZStack
294
307
  });
295
308
  let content;
296
309
  if (isWeb && rnw) {
@@ -298,11 +311,11 @@ function createComponent(configIn) {
298
311
  const className = domProps.className && domProps.className !== viewProps.className ? `${domProps.className} ${viewProps.className}` : viewProps.className;
299
312
  Object.assign(viewProps, domProps);
300
313
  viewProps.className = className;
301
- content = createElement(ViewComponent, viewProps, spacedChildrenEl);
314
+ content = createElement(ViewComponent, viewProps, childEls);
302
315
  } else {
303
- content = createElement(ViewComponent, viewProps, spacedChildrenEl);
316
+ content = createElement(ViewComponent, viewProps, childEls);
304
317
  }
305
- const shouldWrapTextAncestor = isWeb && staticConfig.isText && !hasTextAncestor;
318
+ const shouldWrapTextAncestor = isWeb && isText && !hasTextAncestor;
306
319
  if (shouldWrapTextAncestor) {
307
320
  content = createElement(TextAncestorContext.Provider, { value: true }, content);
308
321
  }
@@ -312,13 +325,16 @@ function createComponent(configIn) {
312
325
  console.log("\u{1F95A} props in:", props);
313
326
  console.log("\u{1F95A} props out:", viewProps);
314
327
  console.log((_a = props.onClick) == null ? void 0 : _a.toString());
315
- console.log("\u{1F95A} etc:", { shouldAttach, ViewComponent, viewProps, styles, pseudos, content, spacedChildrenEl });
328
+ console.log("\u{1F95A} etc:", { shouldAttach, ViewComponent, viewProps, styles, pseudos, content, childEls });
316
329
  if (isWeb) {
317
330
  console.log("\u{1F95A} component info", { staticConfig, tamaguiConfig });
318
331
  }
319
332
  }
320
333
  }
321
- return /* @__PURE__ */ React.createElement(React.Fragment, null, features, content);
334
+ return <>
335
+ {features}
336
+ {content}
337
+ </>;
322
338
  });
323
339
  onConfiguredOnce((conf) => {
324
340
  var _a;
@@ -331,7 +347,13 @@ function createComponent(configIn) {
331
347
  }
332
348
  defaultsClassName += addStylesUsingClassname([next.style, next.pseudos]);
333
349
  } else {
334
- console.log("we need to account for default styles for media queries", next);
350
+ const sheetStyles = {};
351
+ for (const style of next.style) {
352
+ Object.assign(sheetStyles, style);
353
+ }
354
+ defaultNativeStyle = StyleSheet.create({
355
+ base: sheetStyles
356
+ });
335
357
  }
336
358
  component.defaultProps = {
337
359
  ...next.viewProps,
@@ -348,22 +370,31 @@ function createComponent(configIn) {
348
370
  ...staticConfig
349
371
  };
350
372
  const res = component;
351
- res["extractable"] = (Component2) => {
373
+ res["extractable"] = (Component2, conf) => {
352
374
  Component2["staticConfig"] = extendStaticConfig(res, {
375
+ ...conf,
353
376
  neverFlatten: true,
354
- defaultProps: Component2.defaultProps
377
+ defaultProps: {
378
+ ...Component2.defaultProps,
379
+ ...conf == null ? void 0 : conf.defaultProps
380
+ }
355
381
  });
356
382
  return Component2;
357
383
  };
358
384
  return res;
359
385
  }
360
386
  __name(createComponent, "createComponent");
387
+ let hasWarnedOnce = false;
361
388
  const Spacer = createComponent({
362
- defaultProps: stackDefaultStyles,
389
+ defaultProps: {
390
+ ...stackDefaultStyles,
391
+ size: true
392
+ },
363
393
  variants: {
364
394
  size: {
365
395
  "...size": (size, { tokens }) => {
366
396
  var _a, _b;
397
+ size = size == true ? "$true" : size;
367
398
  return {
368
399
  width: (_a = tokens.size[size]) != null ? _a : size,
369
400
  height: (_b = tokens.size[size]) != null ? _b : size
@@ -381,12 +412,13 @@ const Spacer = createComponent({
381
412
  }
382
413
  });
383
414
  function spacedChildren({
415
+ isZStack,
384
416
  children,
385
417
  space,
386
418
  flexDirection
387
419
  }) {
388
420
  var _a, _b;
389
- if (!space) {
421
+ if (!space && !isZStack) {
390
422
  return children;
391
423
  }
392
424
  const childrenList = Children.toArray(children);
@@ -400,28 +432,32 @@ function spacedChildren({
400
432
  continue;
401
433
  }
402
434
  const key = `${(_a = child == null ? void 0 : child["key"]) != null ? _a : index}`;
403
- next.push(/* @__PURE__ */ React.createElement(Fragment, {
404
- key
405
- }, child));
435
+ next.push(<Fragment key={key}>{isZStack ? <Absolute>{child}</Absolute> : child}</Fragment>);
406
436
  if ((_b = child == null ? void 0 : child["type"]) == null ? void 0 : _b["isVisuallyHidden"]) {
407
437
  continue;
408
438
  }
409
- if (index === len - 1) {
410
- break;
439
+ if (index !== len - 1) {
440
+ if (space) {
441
+ next.push(<Spacer key={`${key}_spacer`} direction={flexDirection === "row" || flexDirection === "row-reverse" ? "horizontal" : "vertical"} size={space} />);
442
+ }
411
443
  }
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
444
  }
418
445
  return next;
419
446
  }
420
447
  __name(spacedChildren, "spacedChildren");
448
+ const Absolute = /* @__PURE__ */ __name(({ children }) => <View style={sheet.fullscreen}>{children}</View>, "Absolute");
449
+ const sheet = StyleSheet.create({
450
+ fullscreen: {
451
+ position: "absolute",
452
+ top: 0,
453
+ left: 0,
454
+ right: 0,
455
+ bottom: 0
456
+ }
457
+ });
421
458
  export {
422
459
  Spacer,
423
460
  createComponent,
424
461
  mouseUps,
425
462
  spacedChildren
426
463
  };
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