@tamagui/core 1.0.0-alpha.6 → 1.0.0-alpha.66

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 (512) hide show
  1. package/dist/cjs/conf.js +52 -0
  2. package/dist/cjs/conf.js.map +7 -0
  3. package/dist/cjs/constants/constants.js +55 -0
  4. package/dist/cjs/constants/constants.js.map +7 -0
  5. package/dist/cjs/constants/platform.js +44 -0
  6. package/dist/cjs/constants/platform.js.map +7 -0
  7. package/dist/cjs/constants/pseudos.js +42 -0
  8. package/dist/cjs/constants/pseudos.js.map +7 -0
  9. package/dist/cjs/constants/rnw.js +45 -0
  10. package/dist/cjs/constants/rnw.js.map +7 -0
  11. package/dist/cjs/createComponent.js +544 -0
  12. package/dist/cjs/createComponent.js.map +7 -0
  13. package/dist/cjs/createFont.js +51 -0
  14. package/dist/cjs/createFont.js.map +7 -0
  15. package/dist/cjs/createShorthands.js +33 -0
  16. package/dist/cjs/createShorthands.js.map +7 -0
  17. package/dist/cjs/createTamagui.js +205 -0
  18. package/dist/cjs/createTamagui.js.map +7 -0
  19. package/dist/cjs/createTheme.js +30 -0
  20. package/dist/cjs/createTheme.js.map +7 -0
  21. package/dist/cjs/createTokens.js +56 -0
  22. package/dist/cjs/createTokens.js.map +7 -0
  23. package/dist/cjs/createVariable.js +53 -0
  24. package/dist/cjs/createVariable.js.map +7 -0
  25. package/dist/cjs/helpers/addStylesUsingClassname.js +80 -0
  26. package/dist/cjs/helpers/addStylesUsingClassname.js.map +7 -0
  27. package/dist/cjs/helpers/createMediaStyle.js +57 -0
  28. package/dist/cjs/helpers/createMediaStyle.js.map +7 -0
  29. package/dist/cjs/helpers/createPropMapper.js +199 -0
  30. package/dist/cjs/helpers/createPropMapper.js.map +7 -0
  31. package/dist/cjs/helpers/createTamaguiProvider.js +80 -0
  32. package/dist/cjs/helpers/createTamaguiProvider.js.map +7 -0
  33. package/dist/cjs/helpers/extendStaticConfig.js +83 -0
  34. package/dist/cjs/helpers/extendStaticConfig.js.map +7 -0
  35. package/dist/cjs/helpers/fixNativeShadow.js +31 -0
  36. package/dist/cjs/helpers/fixNativeShadow.js.map +7 -0
  37. package/dist/cjs/helpers/fixNativeShadow.native.js +57 -0
  38. package/dist/cjs/helpers/fixNativeShadow.native.js.map +7 -0
  39. package/dist/cjs/helpers/getSplitStyles.js +186 -0
  40. package/dist/cjs/helpers/getSplitStyles.js.map +7 -0
  41. package/dist/cjs/helpers/getStylesAtomic.js +118 -0
  42. package/dist/cjs/helpers/getStylesAtomic.js.map +7 -0
  43. package/dist/cjs/helpers/getStylesAtomic.native.js +33 -0
  44. package/dist/cjs/helpers/getStylesAtomic.native.js.map +7 -0
  45. package/dist/cjs/helpers/getThemeParentClassName.js +34 -0
  46. package/dist/cjs/helpers/getThemeParentClassName.js.map +7 -0
  47. package/dist/cjs/helpers/insertStyleRule.js +47 -0
  48. package/dist/cjs/helpers/insertStyleRule.js.map +7 -0
  49. package/dist/cjs/helpers/isObj.js +30 -0
  50. package/dist/cjs/helpers/isObj.js.map +7 -0
  51. package/dist/cjs/helpers/isTamaguiElement.js +34 -0
  52. package/dist/cjs/helpers/isTamaguiElement.js.map +7 -0
  53. package/dist/cjs/helpers/matchMedia.js +41 -0
  54. package/dist/cjs/helpers/matchMedia.js.map +7 -0
  55. package/dist/cjs/helpers/matchMedia.native.js +37 -0
  56. package/dist/cjs/helpers/matchMedia.native.js.map +7 -0
  57. package/dist/cjs/helpers/themeable.js +84 -0
  58. package/dist/cjs/helpers/themeable.js.map +7 -0
  59. package/dist/cjs/helpers/validate.js +88 -0
  60. package/dist/cjs/helpers/validate.js.map +7 -0
  61. package/dist/cjs/hooks/useConstant.js +38 -0
  62. package/dist/cjs/hooks/useConstant.js.map +7 -0
  63. package/dist/cjs/hooks/useFeatures.js +106 -0
  64. package/dist/cjs/hooks/useFeatures.js.map +7 -0
  65. package/dist/cjs/hooks/useMedia.js +211 -0
  66. package/dist/cjs/hooks/useMedia.js.map +7 -0
  67. package/dist/cjs/hooks/usePressable.js +51 -0
  68. package/dist/cjs/hooks/usePressable.js.map +7 -0
  69. package/dist/cjs/hooks/useTheme.js +121 -0
  70. package/dist/cjs/hooks/useTheme.js.map +7 -0
  71. package/dist/cjs/index.js +63 -0
  72. package/dist/cjs/index.js.map +7 -0
  73. package/dist/cjs/static/postProcessStyles.js +41 -0
  74. package/dist/cjs/static/postProcessStyles.js.map +7 -0
  75. package/dist/cjs/static.js +35 -0
  76. package/dist/cjs/static.js.map +7 -0
  77. package/dist/cjs/styled.js +73 -0
  78. package/dist/cjs/styled.js.map +7 -0
  79. package/dist/cjs/tamagui-base.css +11 -0
  80. package/dist/cjs/tamagui-base.css.map +7 -0
  81. package/dist/cjs/types.js +21 -0
  82. package/dist/cjs/types.js.map +7 -0
  83. package/dist/cjs/views/AbsoluteFullscreen.js +38 -0
  84. package/dist/cjs/views/AbsoluteFullscreen.js.map +7 -0
  85. package/dist/cjs/views/AbsoluteFullscreen.native.js +1 -0
  86. package/dist/{helpers/pseudos.js.map → cjs/views/AbsoluteFullscreen.native.js.map} +0 -0
  87. package/dist/cjs/views/Animated.js +135 -0
  88. package/dist/cjs/views/Animated.js.map +7 -0
  89. package/dist/cjs/views/Stack.js +52 -0
  90. package/dist/cjs/views/Stack.js.map +7 -0
  91. package/dist/cjs/views/Text.js +94 -0
  92. package/dist/cjs/views/Text.js.map +7 -0
  93. package/dist/cjs/views/TextAncestorContext.js +46 -0
  94. package/dist/cjs/views/TextAncestorContext.js.map +7 -0
  95. package/dist/cjs/views/Theme.js +97 -0
  96. package/dist/cjs/views/Theme.js.map +7 -0
  97. package/dist/cjs/views/ThemeContext.js +30 -0
  98. package/dist/cjs/views/ThemeContext.js.map +7 -0
  99. package/dist/cjs/views/ThemeInverse.js +54 -0
  100. package/dist/cjs/views/ThemeInverse.js.map +7 -0
  101. package/dist/cjs/views/ThemeManagerContext.js +85 -0
  102. package/dist/cjs/views/ThemeManagerContext.js.map +7 -0
  103. package/dist/cjs/views/ThemeProvider.js +73 -0
  104. package/dist/cjs/views/ThemeProvider.js.map +7 -0
  105. package/dist/esm/conf.js +29 -0
  106. package/dist/esm/conf.js.map +7 -0
  107. package/dist/{constants → esm/constants}/constants.js +4 -0
  108. package/dist/esm/constants/constants.js.map +7 -0
  109. package/dist/{constants → esm/constants}/platform.js +2 -1
  110. package/dist/esm/constants/platform.js.map +7 -0
  111. package/dist/{constants → esm/constants}/pseudos.js +0 -0
  112. package/dist/{constants → esm/constants}/pseudos.js.map +1 -1
  113. package/dist/{constants → esm/constants}/rnw.js +0 -0
  114. package/dist/{constants → esm/constants}/rnw.js.map +1 -1
  115. package/dist/{createComponent.js → esm/createComponent.js} +97 -82
  116. package/dist/esm/createComponent.js.map +7 -0
  117. package/dist/{createFont.js → esm/createFont.js} +4 -0
  118. package/dist/esm/createFont.js.map +7 -0
  119. package/dist/{createShorthands.js → esm/createShorthands.js} +0 -0
  120. package/dist/{createShorthands.js.map → esm/createShorthands.js.map} +1 -1
  121. package/dist/{createTamagui.js → esm/createTamagui.js} +71 -64
  122. package/dist/esm/createTamagui.js.map +7 -0
  123. package/dist/esm/createTheme.js +7 -0
  124. package/dist/esm/createTheme.js.map +7 -0
  125. package/dist/{createTokens.js → esm/createTokens.js} +4 -0
  126. package/dist/esm/createTokens.js.map +7 -0
  127. package/dist/{createVariable.js → esm/createVariable.js} +8 -3
  128. package/dist/esm/createVariable.js.map +7 -0
  129. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js +1 -1
  130. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js.map +3 -3
  131. package/dist/{helpers → esm/helpers}/createMediaStyle.js +0 -0
  132. package/dist/{helpers → esm/helpers}/createMediaStyle.js.map +1 -1
  133. package/dist/{helpers → esm/helpers}/createPropMapper.js +48 -24
  134. package/dist/esm/helpers/createPropMapper.js.map +7 -0
  135. package/dist/{helpers → esm/helpers}/createTamaguiProvider.js +0 -0
  136. package/dist/{helpers → esm/helpers}/createTamaguiProvider.js.map +1 -1
  137. package/dist/{helpers → esm/helpers}/extendStaticConfig.js +4 -2
  138. package/dist/esm/helpers/extendStaticConfig.js.map +7 -0
  139. package/dist/{helpers → esm/helpers}/fixNativeShadow.js +0 -0
  140. package/dist/{helpers → esm/helpers}/fixNativeShadow.js.map +1 -1
  141. package/dist/esm/helpers/fixNativeShadow.native.js +34 -0
  142. package/dist/esm/helpers/fixNativeShadow.native.js.map +7 -0
  143. package/dist/{helpers → esm/helpers}/getSplitStyles.js +20 -13
  144. package/dist/esm/helpers/getSplitStyles.js.map +7 -0
  145. package/dist/{helpers → esm/helpers}/getStylesAtomic.js +2 -1
  146. package/dist/esm/helpers/getStylesAtomic.js.map +7 -0
  147. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js +0 -0
  148. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js.map +1 -1
  149. package/dist/esm/helpers/getThemeParentClassName.js +11 -0
  150. package/dist/esm/helpers/getThemeParentClassName.js.map +7 -0
  151. package/dist/{helpers → esm/helpers}/insertStyleRule.js +0 -0
  152. package/dist/{helpers → esm/helpers}/insertStyleRule.js.map +1 -1
  153. package/dist/{helpers → esm/helpers}/isObj.js +0 -0
  154. package/dist/{helpers → esm/helpers}/isObj.js.map +1 -1
  155. package/dist/{helpers → esm/helpers}/isTamaguiElement.js +2 -1
  156. package/dist/{helpers → esm/helpers}/isTamaguiElement.js.map +2 -2
  157. package/dist/{helpers → esm/helpers}/matchMedia.js +3 -0
  158. package/dist/esm/helpers/matchMedia.js.map +7 -0
  159. package/dist/{helpers → esm/helpers}/matchMedia.native.js +1 -0
  160. package/dist/{helpers → esm/helpers}/matchMedia.native.js.map +3 -3
  161. package/dist/{helpers → esm/helpers}/themeable.js +1 -1
  162. package/dist/{helpers → esm/helpers}/themeable.js.map +2 -2
  163. package/dist/esm/helpers/validate.js +60 -0
  164. package/dist/esm/helpers/validate.js.map +7 -0
  165. package/dist/{hooks → esm/hooks}/useConstant.js +0 -0
  166. package/dist/{hooks → esm/hooks}/useConstant.js.map +1 -1
  167. package/dist/{hooks → esm/hooks}/useFeatures.js +39 -51
  168. package/dist/esm/hooks/useFeatures.js.map +7 -0
  169. package/dist/{hooks → esm/hooks}/useMedia.js +13 -6
  170. package/dist/esm/hooks/useMedia.js.map +7 -0
  171. package/dist/{hooks → esm/hooks}/usePressable.js +2 -1
  172. package/dist/{hooks → esm/hooks}/usePressable.js.map +2 -2
  173. package/dist/{hooks → esm/hooks}/useTheme.js +22 -16
  174. package/dist/esm/hooks/useTheme.js.map +7 -0
  175. package/dist/{index.js → esm/index.js} +8 -1
  176. package/dist/esm/index.js.map +7 -0
  177. package/dist/{static → esm/static}/postProcessStyles.js +0 -0
  178. package/dist/{static → esm/static}/postProcessStyles.js.map +1 -1
  179. package/dist/{static.js → esm/static.js} +0 -0
  180. package/dist/{static.js.map → esm/static.js.map} +1 -1
  181. package/dist/{styled.js → esm/styled.js} +0 -0
  182. package/dist/esm/styled.js.map +7 -0
  183. package/dist/esm/tamagui-base.css +11 -0
  184. package/dist/esm/tamagui-base.css.map +7 -0
  185. package/dist/{types.js → esm/types.js} +0 -0
  186. package/dist/{types.js.map → esm/types.js.map} +0 -0
  187. package/dist/esm/views/AbsoluteFullscreen.js +14 -0
  188. package/dist/esm/views/AbsoluteFullscreen.js.map +7 -0
  189. package/dist/esm/views/AbsoluteFullscreen.native.js +1 -0
  190. package/dist/esm/views/AbsoluteFullscreen.native.js.map +7 -0
  191. package/dist/{views → esm/views}/Animated.js +0 -0
  192. package/dist/{views → esm/views}/Animated.js.map +1 -1
  193. package/dist/{views → esm/views}/Stack.js +0 -0
  194. package/dist/{views → esm/views}/Stack.js.map +1 -1
  195. package/dist/{views → esm/views}/Text.js +2 -2
  196. package/dist/esm/views/Text.js.map +7 -0
  197. package/dist/esm/views/TextAncestorContext.js +18 -0
  198. package/dist/esm/views/TextAncestorContext.js.map +7 -0
  199. package/dist/{views → esm/views}/Theme.js +20 -14
  200. package/dist/esm/views/Theme.js.map +7 -0
  201. package/dist/{views → esm/views}/ThemeContext.js +0 -0
  202. package/dist/{views → esm/views}/ThemeContext.js.map +1 -1
  203. package/dist/{views → esm/views}/ThemeInverse.js +0 -0
  204. package/dist/{views → esm/views}/ThemeInverse.js.map +1 -1
  205. package/dist/{views → esm/views}/ThemeManagerContext.js +15 -8
  206. package/dist/esm/views/ThemeManagerContext.js.map +7 -0
  207. package/dist/{views → esm/views}/ThemeProvider.js +3 -3
  208. package/dist/esm/views/ThemeProvider.js.map +7 -0
  209. package/dist/jsx/conf.js +28 -0
  210. package/dist/jsx/constants/constants.js +17 -0
  211. package/dist/jsx/constants/platform.js +19 -0
  212. package/dist/jsx/constants/pseudos.js +17 -0
  213. package/dist/jsx/constants/rnw.js +21 -0
  214. package/dist/jsx/createComponent.js +466 -0
  215. package/dist/jsx/createFont.js +27 -0
  216. package/dist/jsx/createShorthands.js +9 -0
  217. package/dist/jsx/createTamagui.js +165 -0
  218. package/dist/jsx/createTheme.js +6 -0
  219. package/dist/jsx/createTokens.js +32 -0
  220. package/dist/jsx/createVariable.js +29 -0
  221. package/dist/jsx/helpers/addStylesUsingClassname.js +56 -0
  222. package/dist/jsx/helpers/createMediaStyle.js +33 -0
  223. package/dist/jsx/helpers/createPropMapper.js +176 -0
  224. package/dist/jsx/helpers/createTamaguiProvider.js +19 -0
  225. package/dist/jsx/helpers/extendStaticConfig.js +60 -0
  226. package/dist/jsx/helpers/fixNativeShadow.js +7 -0
  227. package/dist/jsx/helpers/fixNativeShadow.native.js +33 -0
  228. package/dist/jsx/helpers/getSplitStyles.js +154 -0
  229. package/dist/jsx/helpers/getStylesAtomic.js +83 -0
  230. package/dist/jsx/helpers/getStylesAtomic.native.js +9 -0
  231. package/dist/jsx/helpers/getThemeParentClassName.js +10 -0
  232. package/dist/jsx/helpers/insertStyleRule.js +23 -0
  233. package/dist/jsx/helpers/isObj.js +6 -0
  234. package/dist/jsx/helpers/isTamaguiElement.js +10 -0
  235. package/dist/jsx/helpers/matchMedia.js +17 -0
  236. package/dist/jsx/helpers/matchMedia.native.js +8 -0
  237. package/dist/jsx/helpers/themeable.js +23 -0
  238. package/dist/jsx/helpers/validate.js +59 -0
  239. package/dist/jsx/hooks/useConstant.js +14 -0
  240. package/dist/jsx/hooks/useFeatures.js +57 -0
  241. package/dist/jsx/hooks/useMedia.js +177 -0
  242. package/dist/jsx/hooks/usePressable.js +13 -0
  243. package/dist/jsx/hooks/useTheme.js +98 -0
  244. package/dist/jsx/index.js +38 -0
  245. package/dist/jsx/static/postProcessStyles.js +17 -0
  246. package/dist/jsx/static.js +14 -0
  247. package/dist/jsx/styled.js +20 -0
  248. package/dist/jsx/tamagui-base.css +10 -0
  249. package/dist/jsx/types.js +0 -0
  250. package/dist/jsx/views/AbsoluteFullscreen.js +13 -0
  251. package/dist/jsx/views/AbsoluteFullscreen.native.js +0 -0
  252. package/dist/jsx/views/Animated.js +74 -0
  253. package/dist/jsx/views/Stack.js +11 -0
  254. package/dist/jsx/views/Text.js +59 -0
  255. package/dist/jsx/views/TextAncestorContext.js +15 -0
  256. package/dist/jsx/views/Theme.js +63 -0
  257. package/dist/jsx/views/ThemeContext.js +5 -0
  258. package/dist/jsx/views/ThemeInverse.js +22 -0
  259. package/dist/jsx/views/ThemeManagerContext.js +61 -0
  260. package/dist/jsx/views/ThemeProvider.js +39 -0
  261. package/package.json +19 -17
  262. package/types/conf.d.ts +44 -0
  263. package/types/conf.d.ts.map +1 -0
  264. package/{dist/packages/core/src → types}/constants/constants.d.ts +2 -0
  265. package/types/constants/constants.d.ts.map +1 -0
  266. package/{dist/packages/core/src → types}/constants/platform.d.ts +0 -0
  267. package/types/constants/platform.d.ts.map +1 -0
  268. package/{dist/packages/core/src → types}/constants/pseudos.d.ts +0 -0
  269. package/types/constants/pseudos.d.ts.map +1 -0
  270. package/{dist/packages/core/src → types}/constants/rnw.d.ts +0 -0
  271. package/types/constants/rnw.d.ts.map +1 -0
  272. package/types/createComponent.d.ts +20 -0
  273. package/types/createComponent.d.ts.map +1 -0
  274. package/types/createFont.d.ts +3 -0
  275. package/types/createFont.d.ts.map +1 -0
  276. package/{dist/packages/core/src → types}/createShorthands.d.ts +0 -0
  277. package/types/createShorthands.d.ts.map +1 -0
  278. package/types/createTamagui.d.ts +13 -0
  279. package/types/createTamagui.d.ts.map +1 -0
  280. package/types/createTheme.d.ts +7 -0
  281. package/types/createTheme.d.ts.map +1 -0
  282. package/{dist/packages/core/src → types}/createTokens.d.ts +24 -14
  283. package/types/createTokens.d.ts.map +1 -0
  284. package/{dist/packages/core/src → types}/createVariable.d.ts +4 -1
  285. package/types/createVariable.d.ts.map +1 -0
  286. package/types/helpers/addStylesUsingClassname.d.ts +3 -0
  287. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -0
  288. package/{dist/packages/core/src → types}/helpers/createMediaStyle.d.ts +0 -0
  289. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  290. package/types/helpers/createPropMapper.d.ts +3 -0
  291. package/types/helpers/createPropMapper.d.ts.map +1 -0
  292. package/{dist/packages/core/src → types}/helpers/createTamaguiProvider.d.ts +0 -0
  293. package/types/helpers/createTamaguiProvider.d.ts.map +1 -0
  294. package/types/helpers/extendStaticConfig.d.ts +5 -0
  295. package/types/helpers/extendStaticConfig.d.ts.map +1 -0
  296. package/{dist/packages/core/src → types}/helpers/fixNativeShadow.d.ts +0 -0
  297. package/types/helpers/fixNativeShadow.d.ts.map +1 -0
  298. package/types/helpers/fixNativeShadow.native.d.ts +2 -0
  299. package/types/helpers/fixNativeShadow.native.d.ts.map +1 -0
  300. package/{dist/packages/core/src → types}/helpers/getSplitStyles.d.ts +1 -1
  301. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  302. package/types/helpers/getStylesAtomic.d.ts +3 -0
  303. package/types/helpers/getStylesAtomic.d.ts.map +1 -0
  304. package/{dist/packages/core/src → types}/helpers/getStylesAtomic.native.d.ts +0 -0
  305. package/types/helpers/getStylesAtomic.native.d.ts.map +1 -0
  306. package/types/helpers/getThemeParentClassName.d.ts +2 -0
  307. package/types/helpers/getThemeParentClassName.d.ts.map +1 -0
  308. package/{dist/packages/core/src → types}/helpers/insertStyleRule.d.ts +0 -0
  309. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  310. package/types/helpers/isObj.d.ts +2 -0
  311. package/types/helpers/isObj.d.ts.map +1 -0
  312. package/types/helpers/isTamaguiElement.d.ts +3 -0
  313. package/types/helpers/isTamaguiElement.d.ts.map +1 -0
  314. package/{dist/packages/core/src → types}/helpers/matchMedia.d.ts +0 -0
  315. package/types/helpers/matchMedia.d.ts.map +1 -0
  316. package/{dist/packages/core/src → types}/helpers/matchMedia.native.d.ts +0 -0
  317. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  318. package/{dist/packages/core/src → types}/helpers/themeable.d.ts +0 -0
  319. package/types/helpers/themeable.d.ts.map +1 -0
  320. package/types/helpers/validate.d.ts +4 -0
  321. package/types/helpers/validate.d.ts.map +1 -0
  322. package/{dist/packages/core/src → types}/hooks/useConstant.d.ts +0 -0
  323. package/types/hooks/useConstant.d.ts.map +1 -0
  324. package/{dist/packages/core/src → types}/hooks/useFeatures.d.ts +0 -0
  325. package/types/hooks/useFeatures.d.ts.map +1 -0
  326. package/{dist/packages/core/src → types}/hooks/useMedia.d.ts +0 -0
  327. package/types/hooks/useMedia.d.ts.map +1 -0
  328. package/{dist/packages/core/src → types}/hooks/usePressable.d.ts +0 -0
  329. package/types/hooks/usePressable.d.ts.map +1 -0
  330. package/types/hooks/useTheme.d.ts +7 -0
  331. package/types/hooks/useTheme.d.ts.map +1 -0
  332. package/{dist/packages/core/src → types}/index.d.ts +5 -1
  333. package/types/index.d.ts.map +1 -0
  334. package/{dist/packages/core/src → types}/static/postProcessStyles.d.ts +0 -0
  335. package/types/static/postProcessStyles.d.ts.map +1 -0
  336. package/{dist/packages/core/src → types}/static.d.ts +3 -0
  337. package/types/static.d.ts.map +1 -0
  338. package/types/styled.d.ts +21 -0
  339. package/types/styled.d.ts.map +1 -0
  340. package/{dist/packages/core/src → types}/types.d.ts +89 -70
  341. package/types/types.d.ts.map +1 -0
  342. package/{dist/packages/core/src → types}/views/Animated.d.ts +0 -0
  343. package/types/views/Animated.d.ts.map +1 -0
  344. package/{dist/packages/core/src → types}/views/Stack.d.ts +0 -0
  345. package/types/views/Stack.d.ts.map +1 -0
  346. package/types/views/Text.d.ts +3 -0
  347. package/types/views/Text.d.ts.map +1 -0
  348. package/types/views/TextAncestorContext.d.ts +5 -0
  349. package/types/views/TextAncestorContext.d.ts.map +1 -0
  350. package/{dist/packages/core/src → types}/views/Theme.d.ts +1 -1
  351. package/types/views/Theme.d.ts.map +1 -0
  352. package/{dist/packages/core/src → types}/views/ThemeContext.d.ts +0 -0
  353. package/types/views/ThemeContext.d.ts.map +1 -0
  354. package/{dist/packages/core/src → types}/views/ThemeInverse.d.ts +0 -0
  355. package/types/views/ThemeInverse.d.ts.map +1 -0
  356. package/types/views/ThemeManagerContext.d.ts +22 -0
  357. package/types/views/ThemeManagerContext.d.ts.map +1 -0
  358. package/{dist/packages/core/src → types}/views/ThemeProvider.d.ts +0 -1
  359. package/types/views/ThemeProvider.d.ts.map +1 -0
  360. package/dist/constants/constants.js.map +0 -7
  361. package/dist/constants/platform.js.map +0 -7
  362. package/dist/constants/styleConstants.js +0 -46
  363. package/dist/constants/styleConstants.js.map +0 -7
  364. package/dist/createComponent.js.map +0 -7
  365. package/dist/createFont.js.map +0 -7
  366. package/dist/createTamagui.js.map +0 -7
  367. package/dist/createTheme.js +0 -20
  368. package/dist/createTheme.js.map +0 -7
  369. package/dist/createTokens.js.map +0 -7
  370. package/dist/createVariable.js.map +0 -7
  371. package/dist/helpers/createPropMapper.js.map +0 -7
  372. package/dist/helpers/extendStaticConfig.js.map +0 -7
  373. package/dist/helpers/fixNativeShadow.native.js +0 -30
  374. package/dist/helpers/fixNativeShadow.native.js.map +0 -7
  375. package/dist/helpers/getSplitStyles.js.map +0 -7
  376. package/dist/helpers/getStylesAtomic.js.map +0 -7
  377. package/dist/helpers/isComponent.js +0 -10
  378. package/dist/helpers/isComponent.js.map +0 -7
  379. package/dist/helpers/isTamaguiComponent.js +0 -10
  380. package/dist/helpers/isTamaguiComponent.js.map +0 -7
  381. package/dist/helpers/matchMedia.js.map +0 -7
  382. package/dist/helpers/pseudos.js +0 -1
  383. package/dist/hooks/useFeatures.js.map +0 -7
  384. package/dist/hooks/useForceUpdate.js +0 -28
  385. package/dist/hooks/useForceUpdate.js.map +0 -7
  386. package/dist/hooks/useMedia.js.map +0 -7
  387. package/dist/hooks/useTheme.js.map +0 -7
  388. package/dist/index.cjs +0 -2137
  389. package/dist/index.cjs.map +0 -7
  390. package/dist/index.js.map +0 -7
  391. package/dist/packages/core/src/constants/constants.d.ts.map +0 -1
  392. package/dist/packages/core/src/constants/platform.d.ts.map +0 -1
  393. package/dist/packages/core/src/constants/pseudos.d.ts.map +0 -1
  394. package/dist/packages/core/src/constants/rnw.d.ts.map +0 -1
  395. package/dist/packages/core/src/createComponent.d.ts +0 -16
  396. package/dist/packages/core/src/createComponent.d.ts.map +0 -1
  397. package/dist/packages/core/src/createShorthands.d.ts.map +0 -1
  398. package/dist/packages/core/src/createTamagui.d.ts +0 -37
  399. package/dist/packages/core/src/createTamagui.d.ts.map +0 -1
  400. package/dist/packages/core/src/createTheme.d.ts +0 -5
  401. package/dist/packages/core/src/createTheme.d.ts.map +0 -1
  402. package/dist/packages/core/src/createTokens.d.ts.map +0 -1
  403. package/dist/packages/core/src/createVariable.d.ts.map +0 -1
  404. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts +0 -2
  405. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts.map +0 -1
  406. package/dist/packages/core/src/helpers/createMediaStyle.d.ts.map +0 -1
  407. package/dist/packages/core/src/helpers/createTamaguiProvider.d.ts.map +0 -1
  408. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts +0 -5
  409. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts.map +0 -1
  410. package/dist/packages/core/src/helpers/fixNativeShadow.d.ts.map +0 -1
  411. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts +0 -2
  412. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts.map +0 -1
  413. package/dist/packages/core/src/helpers/getSplitStyles.d.ts.map +0 -1
  414. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts +0 -3
  415. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts.map +0 -1
  416. package/dist/packages/core/src/helpers/getStylesAtomic.native.d.ts.map +0 -1
  417. package/dist/packages/core/src/helpers/insertStyleRule.d.ts.map +0 -1
  418. package/dist/packages/core/src/helpers/matchMedia.d.ts.map +0 -1
  419. package/dist/packages/core/src/helpers/matchMedia.native.d.ts.map +0 -1
  420. package/dist/packages/core/src/helpers/themeable.d.ts.map +0 -1
  421. package/dist/packages/core/src/hooks/useConstant.d.ts.map +0 -1
  422. package/dist/packages/core/src/hooks/useFeatures.d.ts.map +0 -1
  423. package/dist/packages/core/src/hooks/useForceUpdate.d.ts +0 -2
  424. package/dist/packages/core/src/hooks/useForceUpdate.d.ts.map +0 -1
  425. package/dist/packages/core/src/hooks/useMedia.d.ts.map +0 -1
  426. package/dist/packages/core/src/hooks/usePressable.d.ts.map +0 -1
  427. package/dist/packages/core/src/hooks/useTheme.d.ts +0 -18
  428. package/dist/packages/core/src/hooks/useTheme.d.ts.map +0 -1
  429. package/dist/packages/core/src/index.d.ts.map +0 -1
  430. package/dist/packages/core/src/static/postProcessStyles.d.ts.map +0 -1
  431. package/dist/packages/core/src/static.d.ts.map +0 -1
  432. package/dist/packages/core/src/styled.d.ts +0 -16
  433. package/dist/packages/core/src/styled.d.ts.map +0 -1
  434. package/dist/packages/core/src/types.d.ts.map +0 -1
  435. package/dist/packages/core/src/views/Animated.d.ts.map +0 -1
  436. package/dist/packages/core/src/views/Stack.d.ts.map +0 -1
  437. package/dist/packages/core/src/views/Text.d.ts +0 -3
  438. package/dist/packages/core/src/views/Text.d.ts.map +0 -1
  439. package/dist/packages/core/src/views/TextAncestorContext.d.ts +0 -3
  440. package/dist/packages/core/src/views/TextAncestorContext.d.ts.map +0 -1
  441. package/dist/packages/core/src/views/Theme.d.ts.map +0 -1
  442. package/dist/packages/core/src/views/ThemeContext.d.ts.map +0 -1
  443. package/dist/packages/core/src/views/ThemeInverse.d.ts.map +0 -1
  444. package/dist/packages/core/src/views/ThemeManagerContext.d.ts +0 -15
  445. package/dist/packages/core/src/views/ThemeManagerContext.d.ts.map +0 -1
  446. package/dist/packages/core/src/views/ThemeProvider.d.ts.map +0 -1
  447. package/dist/packages/helpers/src/AllRules.d.ts +0 -3
  448. package/dist/packages/helpers/src/AllRules.d.ts.map +0 -1
  449. package/dist/packages/helpers/src/concatClassName.d.ts +0 -2
  450. package/dist/packages/helpers/src/concatClassName.d.ts.map +0 -1
  451. package/dist/packages/helpers/src/index.d.ts +0 -5
  452. package/dist/packages/helpers/src/index.d.ts.map +0 -1
  453. package/dist/packages/helpers/src/types.d.ts +0 -8
  454. package/dist/packages/helpers/src/types.d.ts.map +0 -1
  455. package/dist/packages/helpers/src/validStyleProps.d.ts +0 -475
  456. package/dist/packages/helpers/src/validStyleProps.d.ts.map +0 -1
  457. package/dist/styled.js.map +0 -7
  458. package/dist/views/SafeAreaProvider.js +0 -30
  459. package/dist/views/SafeAreaProvider.js.map +0 -7
  460. package/dist/views/Text.js.map +0 -7
  461. package/dist/views/TextAncestorContext.js +0 -18
  462. package/dist/views/TextAncestorContext.js.map +0 -7
  463. package/dist/views/Theme.js.map +0 -7
  464. package/dist/views/ThemeManagerContext.js.map +0 -7
  465. package/dist/views/ThemeProvider.js.map +0 -7
  466. package/src/constants/constants.ts +0 -12
  467. package/src/constants/platform.ts +0 -15
  468. package/src/constants/pseudos.ts +0 -14
  469. package/src/constants/rnw.tsx +0 -20
  470. package/src/createComponent.tsx +0 -608
  471. package/src/createFont.ts +0 -26
  472. package/src/createShorthands.ts +0 -5
  473. package/src/createTamagui.ts +0 -207
  474. package/src/createTheme.ts +0 -19
  475. package/src/createTokens.ts +0 -83
  476. package/src/createVariable.ts +0 -26
  477. package/src/helpers/addStylesUsingClassname.tsx +0 -60
  478. package/src/helpers/createMediaStyle.ts +0 -46
  479. package/src/helpers/createPropMapper.ts +0 -184
  480. package/src/helpers/createTamaguiProvider.tsx +0 -22
  481. package/src/helpers/extendStaticConfig.ts +0 -68
  482. package/src/helpers/fixNativeShadow.native.tsx +0 -27
  483. package/src/helpers/fixNativeShadow.tsx +0 -2
  484. package/src/helpers/getSplitStyles.tsx +0 -197
  485. package/src/helpers/getStylesAtomic.native.ts +0 -3
  486. package/src/helpers/getStylesAtomic.ts +0 -103
  487. package/src/helpers/insertStyleRule.tsx +0 -18
  488. package/src/helpers/isObj.ts +0 -1
  489. package/src/helpers/isTamaguiElement.tsx +0 -5
  490. package/src/helpers/matchMedia.native.ts +0 -3
  491. package/src/helpers/matchMedia.ts +0 -9
  492. package/src/helpers/themeable.tsx +0 -42
  493. package/src/hooks/useConstant.tsx +0 -10
  494. package/src/hooks/useFeatures.tsx +0 -78
  495. package/src/hooks/useMedia.tsx +0 -194
  496. package/src/hooks/usePressable.tsx +0 -9
  497. package/src/hooks/useTheme.tsx +0 -107
  498. package/src/index.ts +0 -32
  499. package/src/static/postProcessStyles.tsx +0 -20
  500. package/src/static.ts +0 -22
  501. package/src/styled.ts +0 -82
  502. package/src/types.tsx +0 -561
  503. package/src/views/Animated.tsx +0 -121
  504. package/src/views/Stack.tsx +0 -21
  505. package/src/views/Text.tsx +0 -66
  506. package/src/views/TextAncestorContext.tsx +0 -12
  507. package/src/views/Theme.tsx +0 -80
  508. package/src/views/ThemeContext.tsx +0 -5
  509. package/src/views/ThemeInverse.tsx +0 -22
  510. package/src/views/ThemeManagerContext.tsx +0 -50
  511. package/src/views/ThemeProvider.tsx +0 -52
  512. package/types.d.ts +0 -555
@@ -0,0 +1,85 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __reExport = (target, module2, copyDefault, desc) => {
12
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
13
+ for (let key of __getOwnPropNames(module2))
14
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
15
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
16
+ }
17
+ return target;
18
+ };
19
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
20
+ return (module2, temp) => {
21
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
22
+ };
23
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
24
+ var ThemeManagerContext_exports = {};
25
+ __export(ThemeManagerContext_exports, {
26
+ ThemeManager: () => ThemeManager,
27
+ ThemeManagerContext: () => ThemeManagerContext
28
+ });
29
+ var import_react = require("react");
30
+ class ThemeManager {
31
+ constructor() {
32
+ this.name = "light";
33
+ this.parentName = null;
34
+ this.keys = /* @__PURE__ */ new Map();
35
+ this.listeners = /* @__PURE__ */ new Map();
36
+ this.themeListeners = /* @__PURE__ */ new Set();
37
+ this.theme = null;
38
+ }
39
+ setActiveTheme({
40
+ name,
41
+ theme,
42
+ parentName
43
+ }) {
44
+ if (name === this.name)
45
+ return;
46
+ this.name = name;
47
+ this.theme = theme;
48
+ this.parentName = parentName || null;
49
+ this.update();
50
+ }
51
+ track(uuid, keys) {
52
+ if (!this.name)
53
+ return;
54
+ this.keys.set(uuid, keys);
55
+ }
56
+ update() {
57
+ var _a;
58
+ if (!this.name) {
59
+ this.keys.clear();
60
+ }
61
+ for (const [uuid, keys] of this.keys.entries()) {
62
+ if (keys.size) {
63
+ (_a = this.listeners.get(uuid)) == null ? void 0 : _a();
64
+ }
65
+ }
66
+ this.themeListeners.forEach((cb) => cb(this.name, this));
67
+ }
68
+ onChangeTheme(cb) {
69
+ this.themeListeners.add(cb);
70
+ return () => {
71
+ this.themeListeners.delete(cb);
72
+ };
73
+ }
74
+ onUpdate(uuid, cb) {
75
+ this.listeners.set(uuid, cb);
76
+ return () => {
77
+ this.listeners.delete(uuid);
78
+ this.keys.delete(uuid);
79
+ };
80
+ }
81
+ }
82
+ __name(ThemeManager, "ThemeManager");
83
+ const ThemeManagerContext = (0, import_react.createContext)(new ThemeManager());
84
+ module.exports = __toCommonJS(ThemeManagerContext_exports);
85
+ //# sourceMappingURL=ThemeManagerContext.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/views/ThemeManagerContext.tsx"],
4
+ "sourcesContent": ["import { createContext } from 'react'\n\ntype ThemeListener = (name: string | null, themeManager: ThemeManager) => void\n\nexport class ThemeManager {\n name: string | null = 'light'\n parentName: string | null = null\n keys = new Map<any, Set<string>>()\n listeners = new Map<any, Function>()\n themeListeners = new Set<ThemeListener>()\n theme = null\n\n setActiveTheme({\n name,\n theme,\n parentName,\n }: {\n parentName?: string | null\n name: string | null\n theme?: any\n }) {\n if (name === this.name) return\n this.name = name\n this.theme = theme\n this.parentName = parentName || null\n this.update()\n }\n\n track(uuid: any, keys: Set<string>) {\n if (!this.name) return\n this.keys.set(uuid, keys)\n }\n\n update() {\n if (!this.name) {\n this.keys.clear()\n }\n for (const [uuid, keys] of this.keys.entries()) {\n if (keys.size) {\n this.listeners.get(uuid)?.()\n }\n }\n this.themeListeners.forEach((cb) => cb(this.name, this))\n }\n\n onChangeTheme(cb: ThemeListener) {\n this.themeListeners.add(cb)\n return () => {\n this.themeListeners.delete(cb)\n }\n }\n\n onUpdate(uuid: any, cb: Function) {\n this.listeners.set(uuid, cb)\n return () => {\n this.listeners.delete(uuid)\n this.keys.delete(uuid)\n }\n }\n}\n\nexport const ThemeManagerContext = createContext<ThemeManager>(new ThemeManager())\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8B;AAIvB,mBAAmB;AAAA,EAAnB,cAJP;AAKE,gBAAsB;AACtB,sBAA4B;AAC5B,gBAAO,oBAAI;AACX,qBAAY,oBAAI;AAChB,0BAAiB,oBAAI;AACrB,iBAAQ;AAAA;AAAA,EAER,eAAe;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,KAKC;AACD,QAAI,SAAS,KAAK;AAAM;AACxB,SAAK,OAAO;AACZ,SAAK,QAAQ;AACb,SAAK,aAAa,cAAc;AAChC,SAAK;AAAA;AAAA,EAGP,MAAM,MAAW,MAAmB;AAClC,QAAI,CAAC,KAAK;AAAM;AAChB,SAAK,KAAK,IAAI,MAAM;AAAA;AAAA,EAGtB,SAAS;AAjCX;AAkCI,QAAI,CAAC,KAAK,MAAM;AACd,WAAK,KAAK;AAAA;AAEZ,eAAW,CAAC,MAAM,SAAS,KAAK,KAAK,WAAW;AAC9C,UAAI,KAAK,MAAM;AACb,mBAAK,UAAU,IAAI,UAAnB;AAAA;AAAA;AAGJ,SAAK,eAAe,QAAQ,CAAC,OAAO,GAAG,KAAK,MAAM;AAAA;AAAA,EAGpD,cAAc,IAAmB;AAC/B,SAAK,eAAe,IAAI;AACxB,WAAO,MAAM;AACX,WAAK,eAAe,OAAO;AAAA;AAAA;AAAA,EAI/B,SAAS,MAAW,IAAc;AAChC,SAAK,UAAU,IAAI,MAAM;AACzB,WAAO,MAAM;AACX,WAAK,UAAU,OAAO;AACtB,WAAK,KAAK,OAAO;AAAA;AAAA;AAAA;AApDhB;AAyDA,MAAM,sBAAsB,gCAA4B,IAAI;",
6
+ "names": []
7
+ }
@@ -0,0 +1,73 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, copyDefault, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toESM = (module2, isNodeMode) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
25
+ return (module2, temp) => {
26
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
27
+ };
28
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
29
+ var ThemeProvider_exports = {};
30
+ __export(ThemeProvider_exports, {
31
+ ThemeProvider: () => ThemeProvider
32
+ });
33
+ var import_react = __toESM(require("react"));
34
+ var import_conf = require("../conf");
35
+ var import_constants = require("../constants/constants");
36
+ var import_platform = require("../constants/platform");
37
+ var import_getThemeParentClassName = require("../helpers/getThemeParentClassName");
38
+ var import_Theme = require("./Theme");
39
+ var import_ThemeContext = require("./ThemeContext");
40
+ const ThemeProvider = /* @__PURE__ */ __name((props) => {
41
+ if (!(0, import_conf.getHasConfigured)()) {
42
+ throw new Error(`Missing configureThemes() call, add to your root file`);
43
+ }
44
+ (0, import_platform.useIsomorphicLayoutEffect)(() => {
45
+ if (props.disableRootThemeClass) {
46
+ return;
47
+ }
48
+ if (typeof document !== "undefined") {
49
+ const cns = (0, import_getThemeParentClassName.getThemeParentClassName)(`${props.defaultTheme}`).split(" ");
50
+ cns.forEach((cn) => document.body.classList.add(cn));
51
+ return () => {
52
+ cns.forEach((cn) => document.body.classList.remove(cn));
53
+ };
54
+ }
55
+ }, []);
56
+ const themeContext = (0, import_react.useMemo)(() => {
57
+ return new Proxy(props.themes, {
58
+ get(target, key) {
59
+ if (key === import_constants.GET_DEFAULT_THEME)
60
+ return props.defaultTheme;
61
+ return Reflect.get(target, key);
62
+ }
63
+ });
64
+ }, [props.themes]);
65
+ return /* @__PURE__ */ import_react.default.createElement(import_ThemeContext.ThemeContext.Provider, {
66
+ value: themeContext
67
+ }, /* @__PURE__ */ import_react.default.createElement(import_Theme.Theme, {
68
+ name: props.defaultTheme,
69
+ disableThemeClass: props.disableRootThemeClass
70
+ }, props.children));
71
+ }, "ThemeProvider");
72
+ module.exports = __toCommonJS(ThemeProvider_exports);
73
+ //# sourceMappingURL=ThemeProvider.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/views/ThemeProvider.tsx"],
4
+ "sourcesContent": ["import React, { useMemo } from 'react'\n\nimport { getHasConfigured } from '../conf'\nimport { GET_DEFAULT_THEME } from '../constants/constants'\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\nimport { getThemeParentClassName } from '../helpers/getThemeParentClassName'\nimport { Theme } from './Theme'\nimport { ThemeContext } from './ThemeContext'\n\nexport type ThemeProviderProps = {\n themes: any\n defaultTheme: string\n disableRootThemeClass?: boolean\n children?: any\n}\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n if (!getHasConfigured()) {\n throw new Error(`Missing configureThemes() call, add to your root file`)\n }\n\n // ensure theme is attached to root body node as well to work with modals by default\n useIsomorphicLayoutEffect(() => {\n if (props.disableRootThemeClass) {\n return\n }\n if (typeof document !== 'undefined') {\n const cns = getThemeParentClassName(`${props.defaultTheme}`).split(' ')\n cns.forEach((cn) => document.body.classList.add(cn))\n return () => {\n cns.forEach((cn) => document.body.classList.remove(cn))\n }\n }\n }, [])\n\n const themeContext = useMemo(() => {\n return new Proxy(props.themes, {\n get(target, key) {\n if (key === GET_DEFAULT_THEME) return props.defaultTheme\n return Reflect.get(target, key)\n },\n })\n }, [props.themes])\n\n return (\n <ThemeContext.Provider value={themeContext}>\n <Theme name={props.defaultTheme} disableThemeClass={props.disableRootThemeClass}>\n {props.children}\n </Theme>\n </ThemeContext.Provider>\n )\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+B;AAE/B,kBAAiC;AACjC,uBAAkC;AAClC,sBAA0C;AAC1C,qCAAwC;AACxC,mBAAsB;AACtB,0BAA6B;AAStB,MAAM,gBAAgB,wBAAC,UAA8B;AAC1D,MAAI,CAAC,qCAAoB;AACvB,UAAM,IAAI,MAAM;AAAA;AAIlB,iDAA0B,MAAM;AAC9B,QAAI,MAAM,uBAAuB;AAC/B;AAAA;AAEF,QAAI,OAAO,aAAa,aAAa;AACnC,YAAM,MAAM,4DAAwB,GAAG,MAAM,gBAAgB,MAAM;AACnE,UAAI,QAAQ,CAAC,OAAO,SAAS,KAAK,UAAU,IAAI;AAChD,aAAO,MAAM;AACX,YAAI,QAAQ,CAAC,OAAO,SAAS,KAAK,UAAU,OAAO;AAAA;AAAA;AAAA,KAGtD;AAEH,QAAM,eAAe,0BAAQ,MAAM;AACjC,WAAO,IAAI,MAAM,MAAM,QAAQ;AAAA,MAC7B,IAAI,QAAQ,KAAK;AACf,YAAI,QAAQ;AAAmB,iBAAO,MAAM;AAC5C,eAAO,QAAQ,IAAI,QAAQ;AAAA;AAAA;AAAA,KAG9B,CAAC,MAAM;AAEV,SACE,mDAAC,iCAAa,UAAd;AAAA,IAAuB,OAAO;AAAA,KAC5B,mDAAC,oBAAD;AAAA,IAAO,MAAM,MAAM;AAAA,IAAc,mBAAmB,MAAM;AAAA,KACvD,MAAM;AAAA,GA/Bc;",
6
+ "names": []
7
+ }
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ let conf;
4
+ const setConfig = /* @__PURE__ */ __name((next) => {
5
+ conf = next;
6
+ }, "setConfig");
7
+ const getHasConfigured = /* @__PURE__ */ __name(() => !!conf, "getHasConfigured");
8
+ const getTamagui = /* @__PURE__ */ __name(() => conf, "getTamagui");
9
+ const getTokens = /* @__PURE__ */ __name(() => conf.tokensParsed, "getTokens");
10
+ const getThemes = /* @__PURE__ */ __name(() => conf.themes, "getThemes");
11
+ const configListeners = /* @__PURE__ */ new Set();
12
+ const onConfiguredOnce = /* @__PURE__ */ __name((cb) => {
13
+ if (conf) {
14
+ cb(conf);
15
+ } else {
16
+ configListeners.add(cb);
17
+ }
18
+ }, "onConfiguredOnce");
19
+ export {
20
+ conf,
21
+ configListeners,
22
+ getHasConfigured,
23
+ getTamagui,
24
+ getThemes,
25
+ getTokens,
26
+ onConfiguredOnce,
27
+ setConfig
28
+ };
29
+ //# sourceMappingURL=conf.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/conf.ts"],
4
+ "sourcesContent": ["import { ConfigListener, TamaguiInternalConfig } from './types'\n\nexport let conf: TamaguiInternalConfig | null\n\nexport const setConfig = (next: TamaguiInternalConfig) => {\n conf = next\n}\n\nexport const getHasConfigured = () => !!conf\nexport const getTamagui = () => conf!\nexport const getTokens = () => conf!.tokensParsed\nexport const getThemes = () => conf!.themes\n\nexport const configListeners = new Set<ConfigListener>()\n\nexport const onConfiguredOnce = (cb: ConfigListener) => {\n if (conf) {\n cb(conf)\n } else {\n configListeners.add(cb)\n }\n}\n"],
5
+ "mappings": ";;AAEO,IAAI;AAEJ,MAAM,YAAY,wBAAC,SAAgC;AACxD,SAAO;AAAA,GADgB;AAIlB,MAAM,mBAAmB,6BAAM,CAAC,CAAC,MAAR;AACzB,MAAM,aAAa,6BAAM,MAAN;AACnB,MAAM,YAAY,6BAAM,KAAM,cAAZ;AAClB,MAAM,YAAY,6BAAM,KAAM,QAAZ;AAElB,MAAM,kBAAkB,oBAAI;AAE5B,MAAM,mBAAmB,wBAAC,OAAuB;AACtD,MAAI,MAAM;AACR,OAAG;AAAA,SACE;AACL,oBAAgB,IAAI;AAAA;AAAA,GAJQ;",
6
+ "names": []
7
+ }
@@ -1,4 +1,6 @@
1
1
  import { isWeb } from "./platform";
2
+ const GET_DEFAULT_THEME = "___TGUI";
3
+ const PREFIX = `theme--`;
2
4
  const stackDefaultStyles = {
3
5
  alignItems: "stretch",
4
6
  flexShrink: 0,
@@ -9,6 +11,8 @@ const stackDefaultStyles = {
9
11
  }
10
12
  };
11
13
  export {
14
+ GET_DEFAULT_THEME,
15
+ PREFIX,
12
16
  stackDefaultStyles
13
17
  };
14
18
  //# sourceMappingURL=constants.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/constants/constants.ts"],
4
+ "sourcesContent": ["import { isWeb } from './platform'\n\nexport const GET_DEFAULT_THEME = '___TGUI'\n\nexport const PREFIX = `theme--`\n\nexport const stackDefaultStyles = {\n alignItems: 'stretch',\n flexShrink: 0,\n // more accurately match react-native defaults on web\n ...(isWeb && {\n display: 'flex',\n flexBasis: 'auto',\n boxSizing: 'border-box',\n }),\n}\n"],
5
+ "mappings": "AAAA;AAEO,MAAM,oBAAoB;AAE1B,MAAM,SAAS;AAEf,MAAM,qBAAqB;AAAA,EAChC,YAAY;AAAA,EACZ,YAAY;AAAA,KAER,SAAS;AAAA,IACX,SAAS;AAAA,IACT,WAAW;AAAA,IACX,WAAW;AAAA;AAAA;",
6
+ "names": []
7
+ }
@@ -1,6 +1,7 @@
1
+ var _a;
1
2
  import { useEffect, useLayoutEffect } from "react";
2
3
  import { Platform } from "react-native";
3
- const isWeb = process.env.TAMAGUI_TARGET === "web" ? true : Platform?.OS === "web";
4
+ const isWeb = process.env.TAMAGUI_TARGET !== "native" && (process.env.TAMAGUI_TARGET === "web" || ((_a = Platform) == null ? void 0 : _a.OS) === "web");
4
5
  const isSSR = isWeb && typeof window === "undefined";
5
6
  const useIsomorphicLayoutEffect = isSSR ? useEffect : useLayoutEffect;
6
7
  const isChrome = typeof navigator !== "undefined" && /Chrome/.test(navigator.userAgent || "");
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/constants/platform.ts"],
4
+ "sourcesContent": ["import { useEffect, useLayoutEffect } from 'react'\nimport { Platform } from 'react-native'\n\nexport const isWeb =\n process.env.TAMAGUI_TARGET !== 'native' &&\n (process.env.TAMAGUI_TARGET === 'web' || Platform?.OS === 'web')\n\nexport const isSSR = isWeb && typeof window === 'undefined'\nexport const useIsomorphicLayoutEffect = isSSR ? useEffect : useLayoutEffect\nexport const isChrome = typeof navigator !== 'undefined' && /Chrome/.test(navigator.userAgent || '')\nexport const supportsTouchWeb = typeof window !== 'undefined' && 'ontouchstart' in window\nexport const isTouchDevice = !isWeb || supportsTouchWeb\nexport const isWebIOS =\n isWeb &&\n typeof navigator !== 'undefined' &&\n (/iPad|iPhone|iPod/.test(navigator.platform) ||\n (navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1)) &&\n !window['MSStream']\n"],
5
+ "mappings": "AAAA;AAAA;AACA;AAEO,MAAM,QACX,QAAQ,IAAI,mBAAmB,YAC9B,SAAQ,IAAI,mBAAmB,SAAS,uCAAU,QAAO;AAErD,MAAM,QAAQ,SAAS,OAAO,WAAW;AACzC,MAAM,4BAA4B,QAAQ,YAAY;AACtD,MAAM,WAAW,OAAO,cAAc,eAAe,SAAS,KAAK,UAAU,aAAa;AAC1F,MAAM,mBAAmB,OAAO,WAAW,eAAe,kBAAkB;AAC5E,MAAM,gBAAgB,CAAC,SAAS;AAChC,MAAM,WACX,SACA,OAAO,cAAc,eACpB,oBAAmB,KAAK,UAAU,aAChC,UAAU,aAAa,cAAc,UAAU,iBAAiB,MACnE,CAAC,OAAO;",
6
+ "names": []
7
+ }
File without changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/constants/pseudos.ts"],
3
+ "sources": ["../../../src/constants/pseudos.ts"],
4
4
  "sourcesContent": ["export const pseudos = {\n focusStyle: {\n name: 'focus',\n priority: 3,\n },\n pressStyle: {\n name: 'active',\n priority: 2,\n },\n hoverStyle: {\n name: 'hover',\n priority: 1,\n },\n}\n"],
5
5
  "mappings": "AAAO,MAAM,UAAU;AAAA,EACrB,YAAY;AAAA,IACV,MAAM;AAAA,IACN,UAAU;AAAA;AAAA,EAEZ,YAAY;AAAA,IACV,MAAM;AAAA,IACN,UAAU;AAAA;AAAA,EAEZ,YAAY;AAAA,IACV,MAAM;AAAA,IACN,UAAU;AAAA;AAAA;",
6
6
  "names": []
File without changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/constants/rnw.tsx"],
3
+ "sources": ["../../../src/constants/rnw.tsx"],
4
4
  "sourcesContent": ["const interopRequire = (src: any) => ('default' in src ? src.default : src)\n\nexport const rnw: Record<string, any> = {}\n\n// in static mode, require them directly since we can't import react-native-web at all (it has flow stuff in it)\nif (process.env.IS_STATIC === 'is_static') {\n const createCompileableStyle = require('react-native-web/dist/cjs/exports/StyleSheet/createCompileableStyle')\n const createReactDOMStyle = require('react-native-web/dist/cjs/exports/StyleSheet/createReactDOMStyle')\n const i18Style = require('react-native-web/dist/cjs/exports/StyleSheet/i18nStyle')\n const atomic = require('react-native-web/dist/cjs/exports/StyleSheet/compile').atomic\n Object.assign(rnw, {\n createCompileableStyle,\n createReactDOMStyle,\n i18Style,\n atomic,\n })\n} else if (process.env.TAMAGUI_TARGET === 'web') {\n // when targeting web (client) import it like so\n Object.assign(rnw, interopRequire(require('react-native-web').TamaguiExports))\n}\n"],
5
5
  "mappings": ";;AAAA,MAAM,iBAAiB,wBAAC,QAAc,aAAa,MAAM,IAAI,UAAU,KAAhD;AAEhB,MAAM,MAA2B;AAGxC,IAAI,QAAQ,IAAI,cAAc,aAAa;AACzC,QAAM,yBAAyB,QAAQ;AACvC,QAAM,sBAAsB,QAAQ;AACpC,QAAM,WAAW,QAAQ;AACzB,QAAM,SAAS,QAAQ,wDAAwD;AAC/E,SAAO,OAAO,KAAK;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,WAEO,QAAQ,IAAI,mBAAmB,OAAO;AAE/C,SAAO,OAAO,KAAK,eAAe,QAAQ,oBAAoB;AAAA;",
6
6
  "names": []
@@ -1,5 +1,6 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import "./tamagui-base.css";
3
4
  import { concatClassName, stylePropsView } from "@tamagui/helpers";
4
5
  import { useForceUpdate } from "@tamagui/use-force-update";
5
6
  import React, {
@@ -14,24 +15,42 @@ import React, {
14
15
  useState
15
16
  } from "react";
16
17
  import { StyleSheet, Text, View } from "react-native";
18
+ import { onConfiguredOnce } from "./conf";
17
19
  import { stackDefaultStyles } from "./constants/constants";
18
20
  import { isTouchDevice, isWeb } from "./constants/platform";
19
21
  import { rnw } from "./constants/rnw";
20
- import { onConfiguredOnce } from "./createTamagui";
21
22
  import { addStylesUsingClassname, useStylesAsClassname } from "./helpers/addStylesUsingClassname";
22
23
  import { extendStaticConfig, parseStaticConfig } from "./helpers/extendStaticConfig";
23
24
  import { getSplitStyles } from "./helpers/getSplitStyles";
24
25
  import { useFeatures } from "./hooks/useFeatures";
25
26
  import { usePressable } from "./hooks/usePressable";
27
+ import { useTheme } from "./hooks/useTheme";
26
28
  import { TextAncestorContext } from "./views/TextAncestorContext";
27
- import { ThemeManagerContext } from "./views/ThemeManagerContext";
28
- const mouseUps = new Set();
29
+ const mouseUps = /* @__PURE__ */ new Set();
29
30
  if (typeof document !== "undefined") {
30
31
  document.addEventListener("mouseup", () => {
31
32
  mouseUps.forEach((x) => x());
32
33
  mouseUps.clear();
33
34
  });
34
35
  }
36
+ const defaultComponentState = {
37
+ hover: false,
38
+ press: false,
39
+ pressIn: false
40
+ };
41
+ function createShallowUpdate(setter) {
42
+ return (next) => {
43
+ setter((prev) => {
44
+ for (const key in next) {
45
+ if (prev[key] !== next[key]) {
46
+ return { ...prev, ...next };
47
+ }
48
+ }
49
+ return prev;
50
+ });
51
+ };
52
+ }
53
+ __name(createShallowUpdate, "createShallowUpdate");
35
54
  function createComponent(configIn) {
36
55
  let staticConfig;
37
56
  if ("parsed" in configIn) {
@@ -40,30 +59,19 @@ function createComponent(configIn) {
40
59
  staticConfig = parseStaticConfig(configIn);
41
60
  }
42
61
  const { Component, validStyles, isText, isZStack } = staticConfig;
43
- const validStyleProps = validStyles ?? stylePropsView;
62
+ const validStyleProps = validStyles != null ? validStyles : stylePropsView;
44
63
  let defaultProps = null;
45
64
  let tamaguiConfig;
46
- let defaultsStyle;
65
+ let defaultNativeStyle = null;
47
66
  let defaultsClassName = "";
48
67
  let initialTheme;
49
68
  const component = forwardRef((props, forwardedRef) => {
69
+ var _a;
50
70
  const forceUpdate = useForceUpdate();
51
71
  const features = useFeatures(props, { forceUpdate });
52
- const manager = useContext(ThemeManagerContext);
53
- const [state, set_] = useState(() => ({
54
- hover: false,
55
- press: false,
56
- pressIn: false,
57
- theme: manager.name
58
- }));
59
- const set = /* @__PURE__ */ __name((next) => set_((prev) => {
60
- for (const key in next) {
61
- if (prev[key] !== next[key]) {
62
- return { ...prev, ...next };
63
- }
64
- }
65
- return prev;
66
- }), "set");
72
+ const theme = useTheme();
73
+ const [state, set_] = useState(defaultComponentState);
74
+ const set = createShallowUpdate(set_);
67
75
  if (process.env.NODE_ENV === "development" && !isText && isWeb) {
68
76
  Children.toArray(props.children).forEach((item) => {
69
77
  if (typeof item === "string") {
@@ -78,7 +86,7 @@ function createComponent(configIn) {
78
86
  pseudos,
79
87
  style,
80
88
  classNames
81
- } = getSplitStyles(props, staticConfig, manager.theme || initialTheme);
89
+ } = getSplitStyles(props, staticConfig, theme);
82
90
  const {
83
91
  tag,
84
92
  hitSlop,
@@ -143,7 +151,6 @@ function createComponent(configIn) {
143
151
  onStartShouldSetResponderCapture
144
152
  });
145
153
  }
146
- const isTracking = useRef(false);
147
154
  const internal = useRef();
148
155
  if (!internal.current) {
149
156
  internal.current = {
@@ -152,25 +159,20 @@ function createComponent(configIn) {
152
159
  }
153
160
  useEffect(() => {
154
161
  internal.current.isMounted = true;
155
- const dispose = manager?.onChangeTheme((name) => {
156
- if (isTracking.current) {
157
- set({ theme: name });
158
- }
159
- });
160
162
  return () => {
161
- dispose();
162
163
  mouseUps.delete(unPress);
163
- isTracking.current = false;
164
164
  internal.current.isMounted = false;
165
165
  };
166
- }, [manager]);
167
- const element = isWeb ? !Component || typeof Component === "string" ? tag || Component : Component : Component;
166
+ }, []);
167
+ const isInternalComponent = !Component || typeof Component === "string";
168
+ const element = isWeb ? isInternalComponent ? tag || Component : Component : Component;
168
169
  const ReactView = !isWeb ? View : element || (hasTextAncestor ? "span" : "div");
169
170
  const ReactText = !isWeb ? Text : element || "span";
170
171
  const ViewComponent = isText ? ReactText : ReactView;
171
172
  const isHovering = !isTouchDevice && !disabled && pseudos && state.hover;
172
173
  const isPressing = !disabled && pseudos && state.press;
173
174
  const styles = [
175
+ defaultNativeStyle ? defaultNativeStyle.base : null,
174
176
  style,
175
177
  isHovering ? pseudos.hoverStyle || null : null,
176
178
  isPressing ? pseudos.pressStyle || null : null
@@ -186,7 +188,7 @@ function createComponent(configIn) {
186
188
  const className = concatClassName(...classList);
187
189
  if (process.env.NODE_ENV === "development") {
188
190
  if (props["debug"]) {
189
- console.log("\u{1F95A} className", { style, styles, classList, stylesClassNames, className });
191
+ console.log("\xBB className", { style, styles, classList, stylesClassNames, className: className.trim().split(" ") });
190
192
  }
191
193
  }
192
194
  viewProps.className = className;
@@ -235,7 +237,7 @@ function createComponent(configIn) {
235
237
  ...!isWeb && {
236
238
  onPressOut: (e) => {
237
239
  unPress();
238
- onPressOut?.(e);
240
+ onPressOut == null ? void 0 : onPressOut(e);
239
241
  }
240
242
  },
241
243
  ...isWeb && !isTouchDevice && {
@@ -250,8 +252,8 @@ function createComponent(configIn) {
250
252
  if (Object.keys(next).length) {
251
253
  set(next);
252
254
  }
253
- onHoverIn?.(e);
254
- onMouseEnter?.(e);
255
+ onHoverIn == null ? void 0 : onHoverIn(e);
256
+ onMouseEnter == null ? void 0 : onMouseEnter(e);
255
257
  } : void 0,
256
258
  onMouseLeave: attachHover || attachPress ? (e) => {
257
259
  let next = {};
@@ -266,8 +268,8 @@ function createComponent(configIn) {
266
268
  if (Object.keys(next).length) {
267
269
  set(next);
268
270
  }
269
- onHoverOut?.(e);
270
- onMouseLeave?.(e);
271
+ onHoverOut == null ? void 0 : onHoverOut(e);
272
+ onMouseLeave == null ? void 0 : onMouseLeave(e);
271
273
  } : void 0
272
274
  },
273
275
  onMouseDown: attachPress ? (e) => {
@@ -275,14 +277,14 @@ function createComponent(configIn) {
275
277
  press: true,
276
278
  pressIn: true
277
279
  });
278
- onPressIn?.(e);
279
- onMouseDown?.(e);
280
+ onPressIn == null ? void 0 : onPressIn(e);
281
+ onMouseDown == null ? void 0 : onMouseDown(e);
280
282
  } : onPressIn,
281
283
  onClick: attachPress ? (e) => {
282
- onPress?.(e);
283
- onClick?.(e);
284
+ onPress == null ? void 0 : onPress(e);
285
+ onClick == null ? void 0 : onClick(e);
284
286
  unPress();
285
- onPressOut?.(e);
287
+ onPressOut == null ? void 0 : onPressOut(e);
286
288
  } : onPressOut
287
289
  } : null;
288
290
  if (events) {
@@ -302,7 +304,7 @@ function createComponent(configIn) {
302
304
  const childEls = spacedChildren({
303
305
  children,
304
306
  space,
305
- flexDirection: props.flexDirection || defaultProps?.flexDirection,
307
+ flexDirection: props.flexDirection || (defaultProps == null ? void 0 : defaultProps.flexDirection),
306
308
  isZStack
307
309
  });
308
310
  let content;
@@ -310,7 +312,12 @@ function createComponent(configIn) {
310
312
  const domProps = rnw.createDOMProps(viewProps);
311
313
  const className = domProps.className && domProps.className !== viewProps.className ? `${domProps.className} ${viewProps.className}` : viewProps.className;
312
314
  Object.assign(viewProps, domProps);
313
- viewProps.className = className;
315
+ if (staticConfig.isReactNativeWeb) {
316
+ viewProps.dataSet = viewProps.dataSet || {};
317
+ Object.assign(viewProps.dataSet, { __className: className });
318
+ } else {
319
+ viewProps.className = className;
320
+ }
314
321
  content = createElement(ViewComponent, viewProps, childEls);
315
322
  } else {
316
323
  content = createElement(ViewComponent, viewProps, childEls);
@@ -322,40 +329,48 @@ function createComponent(configIn) {
322
329
  if (process.env.NODE_ENV === "development") {
323
330
  if (props["debug"]) {
324
331
  viewProps["debug"] = true;
325
- console.log("\u{1F95A} props in:", props);
326
- console.log("\u{1F95A} props out:", viewProps);
327
- console.log(props.onClick?.toString());
328
- console.log("\u{1F95A} etc:", { shouldAttach, ViewComponent, viewProps, styles, pseudos, content, childEls });
329
- if (isWeb) {
330
- console.log("\u{1F95A} component info", { staticConfig, tamaguiConfig });
332
+ console.log("\xBB props in:", props);
333
+ console.log("\xBB props out:", viewProps, (_a = viewProps.className) == null ? void 0 : _a.split(" "));
334
+ console.log("\xBB etc:", { shouldAttach, ViewComponent, viewProps, styles, pseudos, content, childEls });
335
+ if (typeof window !== "undefined") {
336
+ console.log("\xBB component info", { staticConfig, tamaguiConfig });
331
337
  }
332
338
  }
333
339
  }
334
- return /* @__PURE__ */ React.createElement(React.Fragment, null, features, content);
340
+ if (features.length) {
341
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, features, content);
342
+ }
343
+ return content;
335
344
  });
336
345
  onConfiguredOnce((conf) => {
346
+ var _a;
347
+ const shouldDebug = (_a = staticConfig.defaultProps) == null ? void 0 : _a.debug;
337
348
  tamaguiConfig = conf;
338
349
  initialTheme = conf.themes[conf.defaultTheme || Object.keys(conf.themes)[0]];
339
- const next = getSplitStyles(staticConfig.defaultProps, staticConfig, initialTheme, true);
350
+ const { classNames, pseudos, style, viewProps } = getSplitStyles(staticConfig.defaultProps, staticConfig, initialTheme);
340
351
  if (isWeb) {
341
- if (next.classNames) {
342
- defaultsClassName += next.classNames + " ";
352
+ if (classNames) {
353
+ defaultsClassName += classNames + " ";
354
+ }
355
+ defaultsClassName += addStylesUsingClassname([style, pseudos]);
356
+ if (process.env.NODE_ENV === "development" && shouldDebug) {
357
+ console.log("tamagui \u{1F41B}:", { defaultsClassName: defaultsClassName.split(" ") });
343
358
  }
344
- defaultsClassName += addStylesUsingClassname([next.style, next.pseudos]);
345
359
  } else {
346
- if (!hasWarnedOnce) {
347
- hasWarnedOnce = true;
348
- console.log("\u26A0\uFE0F we need to account for default styles for media queries");
360
+ const sheetStyles = {};
361
+ for (const styleObj of style) {
362
+ Object.assign(sheetStyles, styleObj);
349
363
  }
364
+ defaultNativeStyle = StyleSheet.create({
365
+ base: sheetStyles
366
+ });
350
367
  }
351
368
  component.defaultProps = {
352
- ...next.viewProps,
369
+ ...viewProps,
353
370
  ...component.defaultProps
354
371
  };
355
- if (process.env.NODE_ENV === "development") {
356
- if (staticConfig.defaultProps?.debug) {
357
- console.log("tamagui debug component:", next, defaultsClassName, component.defaultProps);
358
- }
372
+ if (process.env.NODE_ENV === "development" && shouldDebug) {
373
+ console.log("tamagui \u{1F41B}:", { initialTheme, classNames, pseudos, style, viewProps, defaultsClassName, component });
359
374
  }
360
375
  });
361
376
  component["staticConfig"] = {
@@ -363,10 +378,14 @@ function createComponent(configIn) {
363
378
  ...staticConfig
364
379
  };
365
380
  const res = component;
366
- res["extractable"] = (Component2) => {
381
+ res["extractable"] = (Component2, conf) => {
367
382
  Component2["staticConfig"] = extendStaticConfig(res, {
383
+ ...conf,
368
384
  neverFlatten: true,
369
- defaultProps: Component2.defaultProps
385
+ defaultProps: {
386
+ ...Component2.defaultProps,
387
+ ...conf == null ? void 0 : conf.defaultProps
388
+ }
370
389
  });
371
390
  return Component2;
372
391
  };
@@ -382,10 +401,11 @@ const Spacer = createComponent({
382
401
  variants: {
383
402
  size: {
384
403
  "...size": (size, { tokens }) => {
404
+ var _a, _b;
385
405
  size = size == true ? "$true" : size;
386
406
  return {
387
- width: tokens.size[size] ?? size,
388
- height: tokens.size[size] ?? size
407
+ width: (_a = tokens.size[size]) != null ? _a : size,
408
+ height: (_b = tokens.size[size]) != null ? _b : size
389
409
  };
390
410
  }
391
411
  },
@@ -405,6 +425,7 @@ function spacedChildren({
405
425
  space,
406
426
  flexDirection
407
427
  }) {
428
+ var _a, _b;
408
429
  if (!space && !isZStack) {
409
430
  return children;
410
431
  }
@@ -418,11 +439,11 @@ function spacedChildren({
418
439
  if (child === null || child === void 0) {
419
440
  continue;
420
441
  }
421
- const key = `${child?.["key"] ?? index}`;
442
+ const key = `${(_a = child == null ? void 0 : child["key"]) != null ? _a : index}`;
422
443
  next.push(/* @__PURE__ */ React.createElement(Fragment, {
423
444
  key
424
- }, isZStack ? /* @__PURE__ */ React.createElement(Absolute, null, child) : child));
425
- if (child?.["type"]?.["isVisuallyHidden"]) {
445
+ }, isZStack ? /* @__PURE__ */ React.createElement(AbsoluteFill, null, child) : child));
446
+ if ((_b = child == null ? void 0 : child["type"]) == null ? void 0 : _b["isVisuallyHidden"]) {
426
447
  continue;
427
448
  }
428
449
  if (index !== len - 1) {
@@ -438,19 +459,13 @@ function spacedChildren({
438
459
  return next;
439
460
  }
440
461
  __name(spacedChildren, "spacedChildren");
441
- const Absolute = /* @__PURE__ */ __name(({ children }) => /* @__PURE__ */ React.createElement(View, {
442
- style: sheet.fullscreen
443
- }, children), "Absolute");
444
- const sheet = StyleSheet.create({
445
- fullscreen: {
446
- position: "absolute",
447
- top: 0,
448
- left: 0,
449
- right: 0,
450
- bottom: 0
451
- }
452
- });
462
+ const AbsoluteFill = /* @__PURE__ */ __name((props) => isWeb ? /* @__PURE__ */ React.createElement("div", {
463
+ className: "tamagui-absolute-fill"
464
+ }, props.children) : /* @__PURE__ */ React.createElement(View, {
465
+ style: StyleSheet.absoluteFill
466
+ }, props.child), "AbsoluteFill");
453
467
  export {
468
+ AbsoluteFill,
454
469
  Spacer,
455
470
  createComponent,
456
471
  mouseUps,