@tamagui/core 1.0.0-alpha.38 → 1.0.0-alpha.39

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 (331) hide show
  1. package/dist/cjs/constants/constants.js +50 -0
  2. package/dist/cjs/constants/constants.js.map +7 -0
  3. package/dist/cjs/constants/platform.js +43 -0
  4. package/dist/cjs/constants/platform.js.map +7 -0
  5. package/dist/cjs/constants/pseudos.js +25 -0
  6. package/dist/cjs/constants/pseudos.js.map +7 -0
  7. package/dist/cjs/constants/rnw.js +28 -0
  8. package/dist/cjs/constants/rnw.js.map +7 -0
  9. package/dist/cjs/createComponent.js +529 -0
  10. package/dist/cjs/createComponent.js.map +7 -0
  11. package/dist/cjs/createFont.js +50 -0
  12. package/dist/cjs/createFont.js.map +7 -0
  13. package/dist/cjs/createShorthands.js +16 -0
  14. package/dist/cjs/createShorthands.js.map +7 -0
  15. package/dist/cjs/createTamagui.js +223 -0
  16. package/dist/cjs/createTamagui.js.map +7 -0
  17. package/dist/cjs/createTheme.js +13 -0
  18. package/dist/cjs/createTheme.js.map +7 -0
  19. package/dist/cjs/createTokens.js +55 -0
  20. package/dist/cjs/createTokens.js.map +7 -0
  21. package/dist/cjs/createVariable.js +47 -0
  22. package/dist/cjs/createVariable.js.map +7 -0
  23. package/dist/cjs/helpers/addStylesUsingClassname.js +79 -0
  24. package/dist/cjs/helpers/addStylesUsingClassname.js.map +7 -0
  25. package/dist/cjs/helpers/createMediaStyle.js +56 -0
  26. package/dist/cjs/helpers/createMediaStyle.js.map +7 -0
  27. package/dist/cjs/helpers/createPropMapper.js +197 -0
  28. package/dist/cjs/helpers/createPropMapper.js.map +7 -0
  29. package/dist/cjs/helpers/createTamaguiProvider.js +74 -0
  30. package/dist/cjs/helpers/createTamaguiProvider.js.map +7 -0
  31. package/dist/cjs/helpers/extendStaticConfig.js +82 -0
  32. package/dist/cjs/helpers/extendStaticConfig.js.map +7 -0
  33. package/dist/cjs/helpers/fixNativeShadow.js +14 -0
  34. package/dist/cjs/helpers/fixNativeShadow.js.map +7 -0
  35. package/dist/cjs/helpers/fixNativeShadow.native.js +40 -0
  36. package/dist/cjs/helpers/fixNativeShadow.native.js.map +7 -0
  37. package/dist/cjs/helpers/getSplitStyles.js +180 -0
  38. package/dist/cjs/helpers/getSplitStyles.js.map +7 -0
  39. package/dist/cjs/helpers/getStylesAtomic.js +117 -0
  40. package/dist/cjs/helpers/getStylesAtomic.js.map +7 -0
  41. package/dist/cjs/helpers/getStylesAtomic.native.js +16 -0
  42. package/dist/cjs/helpers/getStylesAtomic.native.js.map +7 -0
  43. package/dist/cjs/helpers/insertStyleRule.js +46 -0
  44. package/dist/cjs/helpers/insertStyleRule.js.map +7 -0
  45. package/dist/cjs/helpers/isObj.js +13 -0
  46. package/dist/cjs/helpers/isObj.js.map +7 -0
  47. package/dist/cjs/helpers/isTamaguiElement.js +33 -0
  48. package/dist/cjs/helpers/isTamaguiElement.js.map +7 -0
  49. package/dist/cjs/helpers/matchMedia.js +24 -0
  50. package/dist/cjs/helpers/matchMedia.js.map +7 -0
  51. package/dist/cjs/helpers/matchMedia.native.js +31 -0
  52. package/dist/cjs/helpers/matchMedia.native.js.map +7 -0
  53. package/dist/cjs/helpers/themeable.js +78 -0
  54. package/dist/cjs/helpers/themeable.js.map +7 -0
  55. package/dist/cjs/helpers/validate.js +82 -0
  56. package/dist/cjs/helpers/validate.js.map +7 -0
  57. package/dist/cjs/hooks/useConstant.js +37 -0
  58. package/dist/cjs/hooks/useConstant.js.map +7 -0
  59. package/dist/cjs/hooks/useFeatures.js +100 -0
  60. package/dist/cjs/hooks/useFeatures.js.map +7 -0
  61. package/dist/cjs/hooks/useMedia.js +207 -0
  62. package/dist/cjs/hooks/useMedia.js.map +7 -0
  63. package/dist/cjs/hooks/usePressable.js +50 -0
  64. package/dist/cjs/hooks/usePressable.js.map +7 -0
  65. package/dist/cjs/hooks/useTheme.js +118 -0
  66. package/dist/cjs/hooks/useTheme.js.map +7 -0
  67. package/dist/cjs/index.js +55 -0
  68. package/dist/cjs/index.js.map +7 -0
  69. package/dist/cjs/static/postProcessStyles.js +40 -0
  70. package/dist/cjs/static/postProcessStyles.js.map +7 -0
  71. package/dist/cjs/static.js +34 -0
  72. package/dist/cjs/static.js.map +7 -0
  73. package/dist/cjs/styled.js +72 -0
  74. package/dist/cjs/styled.js.map +7 -0
  75. package/dist/cjs/types.js +4 -0
  76. package/dist/cjs/types.js.map +7 -0
  77. package/dist/cjs/views/Animated.js +129 -0
  78. package/dist/cjs/views/Animated.js.map +7 -0
  79. package/dist/cjs/views/Stack.js +51 -0
  80. package/dist/cjs/views/Stack.js.map +7 -0
  81. package/dist/cjs/views/Text.js +93 -0
  82. package/dist/cjs/views/Text.js.map +7 -0
  83. package/dist/cjs/views/TextAncestorContext.js +40 -0
  84. package/dist/cjs/views/TextAncestorContext.js.map +7 -0
  85. package/dist/cjs/views/Theme.js +91 -0
  86. package/dist/cjs/views/Theme.js.map +7 -0
  87. package/dist/cjs/views/ThemeContext.js +29 -0
  88. package/dist/cjs/views/ThemeContext.js.map +7 -0
  89. package/dist/cjs/views/ThemeInverse.js +48 -0
  90. package/dist/cjs/views/ThemeInverse.js.map +7 -0
  91. package/dist/cjs/views/ThemeManagerContext.js +84 -0
  92. package/dist/cjs/views/ThemeManagerContext.js.map +7 -0
  93. package/dist/cjs/views/ThemeProvider.js +67 -0
  94. package/dist/cjs/views/ThemeProvider.js.map +7 -0
  95. package/dist/esm/constants/constants.js +14 -0
  96. package/dist/esm/constants/constants.js.map +7 -0
  97. package/dist/{constants → esm/constants}/platform.js +3 -2
  98. package/dist/esm/constants/platform.js.map +7 -0
  99. package/dist/esm/constants/pseudos.js +18 -0
  100. package/dist/esm/constants/pseudos.js.map +7 -0
  101. package/dist/esm/constants/rnw.js +22 -0
  102. package/dist/esm/constants/rnw.js.map +7 -0
  103. package/dist/esm/createComponent.js +465 -0
  104. package/dist/esm/createComponent.js.map +7 -0
  105. package/dist/esm/createFont.js +28 -0
  106. package/dist/esm/createFont.js.map +7 -0
  107. package/dist/{createShorthands.js → esm/createShorthands.js} +0 -0
  108. package/dist/esm/createShorthands.js.map +7 -0
  109. package/dist/esm/createTamagui.js +185 -0
  110. package/dist/esm/createTamagui.js.map +7 -0
  111. package/dist/esm/createTheme.js +7 -0
  112. package/dist/esm/createTheme.js.map +7 -0
  113. package/dist/{createTokens.js → esm/createTokens.js} +4 -0
  114. package/dist/esm/createTokens.js.map +7 -0
  115. package/dist/{createVariable.js → esm/createVariable.js} +6 -2
  116. package/dist/esm/createVariable.js.map +7 -0
  117. package/dist/esm/helpers/addStylesUsingClassname.js +57 -0
  118. package/dist/esm/helpers/addStylesUsingClassname.js.map +7 -0
  119. package/dist/{helpers → esm/helpers}/createMediaStyle.js +0 -0
  120. package/dist/{helpers → esm/helpers}/createMediaStyle.js.map +1 -1
  121. package/dist/esm/helpers/createPropMapper.js +162 -0
  122. package/dist/esm/helpers/createPropMapper.js.map +7 -0
  123. package/dist/{helpers → esm/helpers}/createTamaguiProvider.js +2 -20
  124. package/dist/esm/helpers/createTamaguiProvider.js.map +7 -0
  125. package/dist/esm/helpers/extendStaticConfig.js +60 -0
  126. package/dist/esm/helpers/extendStaticConfig.js.map +7 -0
  127. package/dist/esm/helpers/fixNativeShadow.js +8 -0
  128. package/dist/esm/helpers/fixNativeShadow.js.map +7 -0
  129. package/dist/esm/helpers/fixNativeShadow.native.js +34 -0
  130. package/dist/esm/helpers/fixNativeShadow.native.js.map +7 -0
  131. package/dist/{helpers → esm/helpers}/getSplitStyles.js +43 -40
  132. package/dist/esm/helpers/getSplitStyles.js.map +7 -0
  133. package/dist/esm/helpers/getStylesAtomic.js +84 -0
  134. package/dist/esm/helpers/getStylesAtomic.js.map +7 -0
  135. package/dist/esm/helpers/getStylesAtomic.native.js +10 -0
  136. package/dist/esm/helpers/getStylesAtomic.native.js.map +7 -0
  137. package/dist/{helpers → esm/helpers}/insertStyleRule.js +7 -0
  138. package/dist/esm/helpers/insertStyleRule.js.map +7 -0
  139. package/dist/esm/helpers/isObj.js +7 -0
  140. package/dist/esm/helpers/isObj.js.map +7 -0
  141. package/dist/esm/helpers/isTamaguiElement.js +11 -0
  142. package/dist/esm/helpers/isTamaguiElement.js.map +7 -0
  143. package/dist/{helpers → esm/helpers}/matchMedia.js +3 -0
  144. package/dist/esm/helpers/matchMedia.js.map +7 -0
  145. package/dist/{helpers → esm/helpers}/matchMedia.native.js +1 -0
  146. package/dist/{helpers → esm/helpers}/matchMedia.native.js.map +3 -3
  147. package/dist/{helpers → esm/helpers}/themeable.js +1 -1
  148. package/dist/{helpers → esm/helpers}/themeable.js.map +3 -3
  149. package/dist/esm/helpers/validate.js +60 -0
  150. package/dist/esm/helpers/validate.js.map +7 -0
  151. package/dist/{hooks → esm/hooks}/useConstant.js +0 -0
  152. package/dist/{hooks → esm/hooks}/useConstant.js.map +1 -1
  153. package/dist/{hooks → esm/hooks}/useFeatures.js +39 -51
  154. package/dist/esm/hooks/useFeatures.js.map +7 -0
  155. package/dist/{hooks → esm/hooks}/useMedia.js +20 -18
  156. package/dist/esm/hooks/useMedia.js.map +7 -0
  157. package/dist/{hooks → esm/hooks}/usePressable.js +2 -1
  158. package/dist/{hooks → esm/hooks}/usePressable.js.map +2 -2
  159. package/dist/{hooks → esm/hooks}/useTheme.js +28 -25
  160. package/dist/esm/hooks/useTheme.js.map +7 -0
  161. package/dist/{index.js → esm/index.js} +6 -4
  162. package/dist/esm/index.js.map +7 -0
  163. package/dist/{static → esm/static}/postProcessStyles.js +3 -3
  164. package/dist/esm/static/postProcessStyles.js.map +7 -0
  165. package/dist/{static.js → esm/static.js} +6 -1
  166. package/dist/esm/static.js.map +7 -0
  167. package/dist/esm/styled.js +21 -0
  168. package/dist/esm/styled.js.map +7 -0
  169. package/dist/{types.js → esm/types.js} +0 -0
  170. package/dist/{types.js.map → esm/types.js.map} +0 -0
  171. package/dist/{views → esm/views}/Animated.js +0 -0
  172. package/dist/{views → esm/views}/Animated.js.map +3 -3
  173. package/dist/{views → esm/views}/Stack.js +1 -1
  174. package/dist/esm/views/Stack.js.map +7 -0
  175. package/dist/esm/views/Text.js +60 -0
  176. package/dist/esm/views/Text.js.map +7 -0
  177. package/dist/esm/views/TextAncestorContext.js +18 -0
  178. package/dist/esm/views/TextAncestorContext.js.map +7 -0
  179. package/dist/{views → esm/views}/Theme.js +29 -23
  180. package/dist/esm/views/Theme.js.map +7 -0
  181. package/dist/{views → esm/views}/ThemeContext.js +0 -0
  182. package/dist/{views → esm/views}/ThemeContext.js.map +1 -1
  183. package/dist/{views → esm/views}/ThemeInverse.js +0 -1
  184. package/dist/{views → esm/views}/ThemeInverse.js.map +3 -3
  185. package/dist/{views → esm/views}/ThemeManagerContext.js +13 -6
  186. package/dist/esm/views/ThemeManagerContext.js.map +7 -0
  187. package/dist/{views → esm/views}/ThemeProvider.js +10 -10
  188. package/dist/esm/views/ThemeProvider.js.map +7 -0
  189. package/dist/jsx/constants/constants.js +13 -0
  190. package/dist/jsx/constants/platform.js +19 -0
  191. package/dist/jsx/constants/pseudos.js +17 -0
  192. package/dist/jsx/constants/rnw.js +21 -0
  193. package/dist/jsx/createComponent.js +459 -0
  194. package/dist/jsx/createFont.js +27 -0
  195. package/dist/jsx/createShorthands.js +9 -0
  196. package/dist/jsx/createTamagui.js +184 -0
  197. package/dist/jsx/createTheme.js +6 -0
  198. package/dist/jsx/createTokens.js +32 -0
  199. package/dist/jsx/createVariable.js +24 -0
  200. package/dist/jsx/helpers/addStylesUsingClassname.js +56 -0
  201. package/dist/jsx/helpers/createMediaStyle.js +33 -0
  202. package/dist/jsx/helpers/createPropMapper.js +161 -0
  203. package/dist/jsx/helpers/createTamaguiProvider.js +19 -0
  204. package/dist/jsx/helpers/extendStaticConfig.js +59 -0
  205. package/dist/jsx/helpers/fixNativeShadow.js +7 -0
  206. package/dist/jsx/helpers/fixNativeShadow.native.js +33 -0
  207. package/dist/jsx/helpers/getSplitStyles.js +149 -0
  208. package/dist/jsx/helpers/getStylesAtomic.js +83 -0
  209. package/dist/jsx/helpers/getStylesAtomic.native.js +9 -0
  210. package/dist/jsx/helpers/insertStyleRule.js +23 -0
  211. package/dist/jsx/helpers/isObj.js +6 -0
  212. package/dist/jsx/helpers/isTamaguiElement.js +10 -0
  213. package/dist/jsx/helpers/matchMedia.js +17 -0
  214. package/dist/jsx/helpers/matchMedia.native.js +8 -0
  215. package/dist/jsx/helpers/themeable.js +23 -0
  216. package/dist/jsx/helpers/validate.js +59 -0
  217. package/dist/jsx/hooks/useConstant.js +14 -0
  218. package/dist/jsx/hooks/useFeatures.js +57 -0
  219. package/dist/jsx/hooks/useMedia.js +174 -0
  220. package/dist/jsx/hooks/usePressable.js +13 -0
  221. package/dist/jsx/hooks/useTheme.js +96 -0
  222. package/dist/jsx/index.js +31 -0
  223. package/dist/jsx/static/postProcessStyles.js +17 -0
  224. package/dist/jsx/static.js +14 -0
  225. package/dist/jsx/styled.js +20 -0
  226. package/dist/jsx/types.js +0 -0
  227. package/dist/jsx/views/Animated.js +74 -0
  228. package/dist/jsx/views/Stack.js +11 -0
  229. package/dist/jsx/views/Text.js +59 -0
  230. package/dist/jsx/views/TextAncestorContext.js +15 -0
  231. package/dist/jsx/views/Theme.js +63 -0
  232. package/dist/jsx/views/ThemeContext.js +5 -0
  233. package/dist/jsx/views/ThemeInverse.js +22 -0
  234. package/dist/jsx/views/ThemeManagerContext.js +61 -0
  235. package/dist/jsx/views/ThemeProvider.js +39 -0
  236. package/package.json +6 -6
  237. package/types/constants/constants.d.ts.map +1 -0
  238. package/types/constants/platform.d.ts.map +1 -0
  239. package/types/constants/pseudos.d.ts.map +1 -0
  240. package/types/constants/rnw.d.ts.map +1 -0
  241. package/types/createComponent.d.ts.map +1 -0
  242. package/types/createFont.d.ts.map +1 -0
  243. package/types/createShorthands.d.ts.map +1 -0
  244. package/types/createTamagui.d.ts.map +1 -0
  245. package/types/createTheme.d.ts.map +1 -0
  246. package/types/createTokens.d.ts.map +1 -0
  247. package/types/createVariable.d.ts.map +1 -0
  248. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -0
  249. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  250. package/types/helpers/createPropMapper.d.ts.map +1 -0
  251. package/types/helpers/createTamaguiProvider.d.ts.map +1 -0
  252. package/types/helpers/extendStaticConfig.d.ts.map +1 -0
  253. package/types/helpers/fixNativeShadow.d.ts.map +1 -0
  254. package/types/helpers/fixNativeShadow.native.d.ts.map +1 -0
  255. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  256. package/types/helpers/getStylesAtomic.d.ts.map +1 -0
  257. package/types/helpers/getStylesAtomic.native.d.ts.map +1 -0
  258. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  259. package/types/helpers/isObj.d.ts.map +1 -0
  260. package/types/helpers/isTamaguiElement.d.ts.map +1 -0
  261. package/types/helpers/matchMedia.d.ts.map +1 -0
  262. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  263. package/types/helpers/themeable.d.ts.map +1 -0
  264. package/types/helpers/validate.d.ts.map +1 -0
  265. package/types/hooks/useConstant.d.ts.map +1 -0
  266. package/types/hooks/useFeatures.d.ts.map +1 -0
  267. package/types/hooks/useMedia.d.ts.map +1 -0
  268. package/types/hooks/usePressable.d.ts.map +1 -0
  269. package/types/hooks/useTheme.d.ts.map +1 -0
  270. package/types/index.d.ts.map +1 -0
  271. package/types/static/postProcessStyles.d.ts.map +1 -0
  272. package/types/static.d.ts.map +1 -0
  273. package/types/styled.d.ts.map +1 -0
  274. package/types/types.d.ts.map +1 -0
  275. package/types/views/Animated.d.ts.map +1 -0
  276. package/types/views/Stack.d.ts.map +1 -0
  277. package/types/views/Text.d.ts.map +1 -0
  278. package/types/views/TextAncestorContext.d.ts.map +1 -0
  279. package/types/views/Theme.d.ts.map +1 -0
  280. package/types/views/ThemeContext.d.ts.map +1 -0
  281. package/types/views/ThemeInverse.d.ts.map +1 -0
  282. package/types/views/ThemeManagerContext.d.ts.map +1 -0
  283. package/types/views/ThemeProvider.d.ts.map +1 -0
  284. package/dist/constants/constants.js +0 -32
  285. package/dist/constants/constants.js.map +0 -7
  286. package/dist/constants/platform.js.map +0 -7
  287. package/dist/constants/rnw.js +0 -10
  288. package/dist/constants/rnw.js.map +0 -7
  289. package/dist/constants/styleConstants.js +0 -59
  290. package/dist/constants/styleConstants.js.map +0 -7
  291. package/dist/createComponent.js +0 -395
  292. package/dist/createComponent.js.map +0 -7
  293. package/dist/createShorthands.js.map +0 -7
  294. package/dist/createTamagui.js +0 -107
  295. package/dist/createTamagui.js.map +0 -7
  296. package/dist/createTokens.js.map +0 -7
  297. package/dist/createVariable.js.map +0 -7
  298. package/dist/helpers/addStylesUsingClassname.js +0 -28
  299. package/dist/helpers/addStylesUsingClassname.js.map +0 -7
  300. package/dist/helpers/createTamaguiProvider.js.map +0 -7
  301. package/dist/helpers/extendStaticConfig.js +0 -158
  302. package/dist/helpers/extendStaticConfig.js.map +0 -7
  303. package/dist/helpers/fixNativeShadow.js +0 -38
  304. package/dist/helpers/fixNativeShadow.js.map +0 -7
  305. package/dist/helpers/getSplitStyles.js.map +0 -7
  306. package/dist/helpers/insertStyleRule.js.map +0 -7
  307. package/dist/helpers/matchMedia.js.map +0 -7
  308. package/dist/helpers/setIfChanged.js +0 -17
  309. package/dist/helpers/setIfChanged.js.map +0 -7
  310. package/dist/hooks/useFeatures.js.map +0 -7
  311. package/dist/hooks/useForceUpdate.js +0 -28
  312. package/dist/hooks/useForceUpdate.js.map +0 -7
  313. package/dist/hooks/useMedia.js.map +0 -7
  314. package/dist/hooks/useTheme.js.map +0 -7
  315. package/dist/index.cjs +0 -1837
  316. package/dist/index.cjs.map +0 -7
  317. package/dist/index.js.map +0 -7
  318. package/dist/static/postProcessStyles.js.map +0 -7
  319. package/dist/static.js.map +0 -7
  320. package/dist/styled.js +0 -28
  321. package/dist/styled.js.map +0 -7
  322. package/dist/testtypes.js +0 -1
  323. package/dist/testtypes.js.map +0 -7
  324. package/dist/views/Stack.js.map +0 -7
  325. package/dist/views/Text.js +0 -36
  326. package/dist/views/Text.js.map +0 -7
  327. package/dist/views/TextAncestorContext.js +0 -18
  328. package/dist/views/TextAncestorContext.js.map +0 -7
  329. package/dist/views/Theme.js.map +0 -7
  330. package/dist/views/ThemeManagerContext.js.map +0 -7
  331. package/dist/views/ThemeProvider.js.map +0 -7
@@ -0,0 +1,60 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { createPropMapper } from "./createPropMapper";
4
+ function extendStaticConfig(Component, config = {}) {
5
+ var _a, _b;
6
+ const parent = Component || {};
7
+ if (!parent.staticConfig) {
8
+ parent.staticConfig = {
9
+ Component
10
+ };
11
+ }
12
+ const variants = {
13
+ ...parent.staticConfig.variants
14
+ };
15
+ if (config.variants) {
16
+ for (const key in config.variants) {
17
+ if (variants[key]) {
18
+ variants[key] = {
19
+ ...variants[key],
20
+ ...config.variants[key]
21
+ };
22
+ } else {
23
+ variants[key] = config.variants[key];
24
+ }
25
+ }
26
+ }
27
+ return parseStaticConfig({
28
+ ...parent.staticConfig,
29
+ isZStack: config.isZStack || parent.staticConfig.isZStack,
30
+ variants,
31
+ isText: config.isText || parent.staticConfig.isText || false,
32
+ neverFlatten: (_a = config.neverFlatten) != null ? _a : parent.staticConfig.neverFlatten,
33
+ ensureOverriddenProp: (_b = config.ensureOverriddenProp) != null ? _b : parent.staticConfig.ensureOverriddenProp,
34
+ validStyles: config.validStyles ? {
35
+ ...parent.staticConfig.validStyles,
36
+ ...config.validStyles
37
+ } : parent.staticConfig.validStyles,
38
+ validPropsExtra: {
39
+ ...parent.staticConfig.validPropsExtra,
40
+ ...config.validPropsExtra
41
+ },
42
+ defaultProps: {
43
+ ...parent.staticConfig.defaultProps,
44
+ ...config.defaultProps
45
+ }
46
+ });
47
+ }
48
+ __name(extendStaticConfig, "extendStaticConfig");
49
+ const parseStaticConfig = /* @__PURE__ */ __name((config) => {
50
+ return {
51
+ ...config,
52
+ parsed: true,
53
+ propMapper: createPropMapper(config)
54
+ };
55
+ }, "parseStaticConfig");
56
+ export {
57
+ extendStaticConfig,
58
+ parseStaticConfig
59
+ };
60
+ //# sourceMappingURL=extendStaticConfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/extendStaticConfig.ts"],
4
+ "sourcesContent": ["import React from 'react'\n\nimport { StaticComponent, StaticConfig, StaticConfigParsed } from '../types'\nimport { createPropMapper } from './createPropMapper'\n\nexport function extendStaticConfig(\n // can be undefined when loading with @tamagui/fake-react-native\n // could be fixed a bit cleaner\n Component?: StaticComponent | React.Component<any>,\n config: StaticConfig = {}\n): StaticConfigParsed | null {\n const parent = (Component || {}) as any\n if (!parent.staticConfig) {\n // if no static config, we are extending an external component\n parent.staticConfig = {\n Component,\n }\n }\n\n const variants = {\n ...parent.staticConfig.variants,\n }\n\n // merge variants without clobbering previous... can we tho (typed??\n if (config.variants) {\n for (const key in config.variants) {\n if (variants[key]) {\n variants[key] = {\n ...variants[key],\n ...config.variants[key],\n }\n } else {\n variants[key] = config.variants[key]\n }\n }\n }\n\n return parseStaticConfig({\n ...parent.staticConfig,\n isZStack: config.isZStack || parent.staticConfig.isZStack,\n variants,\n isText: config.isText || parent.staticConfig.isText || false,\n neverFlatten: config.neverFlatten ?? parent.staticConfig.neverFlatten,\n ensureOverriddenProp: config.ensureOverriddenProp ?? parent.staticConfig.ensureOverriddenProp,\n validStyles: config.validStyles\n ? {\n ...parent.staticConfig.validStyles,\n ...config.validStyles,\n }\n : parent.staticConfig.validStyles,\n validPropsExtra: {\n ...parent.staticConfig.validPropsExtra,\n ...config.validPropsExtra,\n },\n defaultProps: {\n ...parent.staticConfig.defaultProps,\n ...config.defaultProps,\n },\n })\n}\n\nexport const parseStaticConfig = (config: StaticConfig): StaticConfigParsed => {\n return {\n ...config,\n parsed: true,\n propMapper: createPropMapper(config),\n }\n}\n"],
5
+ "mappings": ";;AAGA;AAEO,4BAGL,WACA,SAAuB,IACI;AAV7B;AAWE,QAAM,SAAU,aAAa;AAC7B,MAAI,CAAC,OAAO,cAAc;AAExB,WAAO,eAAe;AAAA,MACpB;AAAA;AAAA;AAIJ,QAAM,WAAW;AAAA,OACZ,OAAO,aAAa;AAAA;AAIzB,MAAI,OAAO,UAAU;AACnB,eAAW,OAAO,OAAO,UAAU;AACjC,UAAI,SAAS,MAAM;AACjB,iBAAS,OAAO;AAAA,aACX,SAAS;AAAA,aACT,OAAO,SAAS;AAAA;AAAA,aAEhB;AACL,iBAAS,OAAO,OAAO,SAAS;AAAA;AAAA;AAAA;AAKtC,SAAO,kBAAkB;AAAA,OACpB,OAAO;AAAA,IACV,UAAU,OAAO,YAAY,OAAO,aAAa;AAAA,IACjD;AAAA,IACA,QAAQ,OAAO,UAAU,OAAO,aAAa,UAAU;AAAA,IACvD,cAAc,aAAO,iBAAP,YAAuB,OAAO,aAAa;AAAA,IACzD,sBAAsB,aAAO,yBAAP,YAA+B,OAAO,aAAa;AAAA,IACzE,aAAa,OAAO,cAChB;AAAA,SACK,OAAO,aAAa;AAAA,SACpB,OAAO;AAAA,QAEZ,OAAO,aAAa;AAAA,IACxB,iBAAiB;AAAA,SACZ,OAAO,aAAa;AAAA,SACpB,OAAO;AAAA;AAAA,IAEZ,cAAc;AAAA,SACT,OAAO,aAAa;AAAA,SACpB,OAAO;AAAA;AAAA;AAAA;AAnDA;AAwDT,MAAM,oBAAoB,wBAAC,WAA6C;AAC7E,SAAO;AAAA,OACF;AAAA,IACH,QAAQ;AAAA,IACR,YAAY,iBAAiB;AAAA;AAAA,GAJA;",
6
+ "names": []
7
+ }
@@ -0,0 +1,8 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const fixNativeShadow = /* @__PURE__ */ __name((a) => {
4
+ }, "fixNativeShadow");
5
+ export {
6
+ fixNativeShadow
7
+ };
8
+ //# sourceMappingURL=fixNativeShadow.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/fixNativeShadow.tsx"],
4
+ "sourcesContent": ["// only native of course\nexport const fixNativeShadow = (a: any) => {}\n"],
5
+ "mappings": ";;AACO,MAAM,kBAAkB,wBAAC,MAAW;AAAA,GAAZ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,34 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const matchRgbaHsla = /(rgba|hsla)\(\s*([\d\.]{1,}%?)\s*,\s*([\d\.]{1,}%?)\s*,\s*([\d\.]{1,}%?)\s*,\s*([\d\.]{1,})\s*\)$/;
4
+ function fixNativeShadow(props) {
5
+ if (!props.shadowColor) {
6
+ return;
7
+ }
8
+ if (!props.shadowOffset) {
9
+ props.shadowOffset = {
10
+ width: 0,
11
+ height: 0
12
+ };
13
+ }
14
+ if ("shadowOpacity" in props) {
15
+ return;
16
+ }
17
+ const c = `${props.shadowColor}`;
18
+ if ((c[0] === "r" || c[0] === "h") && c[3] === "a") {
19
+ const [_, type, _1, _2, _3, a] = c.match(matchRgbaHsla) || [];
20
+ if (typeof a !== "string") {
21
+ console.warn("invalid", c, type);
22
+ return;
23
+ }
24
+ props.shadowColor = `${type.replace("a", "")}(${_1},${_2},${_3})`;
25
+ props.shadowOpacity = +a;
26
+ } else {
27
+ props.shadowOpacity = 1;
28
+ }
29
+ }
30
+ __name(fixNativeShadow, "fixNativeShadow");
31
+ export {
32
+ fixNativeShadow
33
+ };
34
+ //# sourceMappingURL=fixNativeShadow.native.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/fixNativeShadow.native.tsx"],
4
+ "sourcesContent": ["const matchRgbaHsla =\n /(rgba|hsla)\\(\\s*([\\d\\.]{1,}%?)\\s*,\\s*([\\d\\.]{1,}%?)\\s*,\\s*([\\d\\.]{1,}%?)\\s*,\\s*([\\d\\.]{1,})\\s*\\)$/\n\nexport function fixNativeShadow(props: any) {\n if (!props.shadowColor) {\n return\n }\n if (!props.shadowOffset) {\n // fixes some broken shadows\n props.shadowOffset = {\n width: 0,\n height: 0,\n }\n }\n if ('shadowOpacity' in props) {\n return\n }\n const c = `${props.shadowColor}`\n // react native has issues sometimes with rgba()\n // supports rgba + hsla\n if ((c[0] === 'r' || c[0] === 'h') && c[3] === 'a') {\n const [_, type, _1, _2, _3, a] = c.match(matchRgbaHsla) || []\n if (typeof a !== 'string') {\n console.warn('invalid', c, type)\n return\n }\n props.shadowColor = `${type.replace('a', '')}(${_1},${_2},${_3})`\n props.shadowOpacity = +a\n } else {\n props.shadowOpacity = 1\n }\n}\n"],
5
+ "mappings": ";;AAAA,MAAM,gBACJ;AAEK,yBAAyB,OAAY;AAC1C,MAAI,CAAC,MAAM,aAAa;AACtB;AAAA;AAEF,MAAI,CAAC,MAAM,cAAc;AAEvB,UAAM,eAAe;AAAA,MACnB,OAAO;AAAA,MACP,QAAQ;AAAA;AAAA;AAGZ,MAAI,mBAAmB,OAAO;AAC5B;AAAA;AAEF,QAAM,IAAI,GAAG,MAAM;AAGnB,MAAK,GAAE,OAAO,OAAO,EAAE,OAAO,QAAQ,EAAE,OAAO,KAAK;AAClD,UAAM,CAAC,GAAG,MAAM,IAAI,IAAI,IAAI,KAAK,EAAE,MAAM,kBAAkB;AAC3D,QAAI,OAAO,MAAM,UAAU;AACzB,cAAQ,KAAK,WAAW,GAAG;AAC3B;AAAA;AAEF,UAAM,cAAc,GAAG,KAAK,QAAQ,KAAK,OAAO,MAAM,MAAM;AAC5D,UAAM,gBAAgB,CAAC;AAAA,SAClB;AACL,UAAM,gBAAgB;AAAA;AAAA;AA1BV;",
6
+ "names": []
7
+ }
@@ -1,16 +1,23 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- import { getStylesAtomic, stylePropsText, stylePropsTransform, validStyles } from "@tamagui/helpers";
3
+ import {
4
+ AllRules,
5
+ stylePropsText,
6
+ stylePropsTransform,
7
+ validStyles,
8
+ validStylesPseudo
9
+ } from "@tamagui/helpers";
4
10
  import { isWeb } from "../constants/platform";
5
- import { getMedia, mediaQueryConfig } from "../hooks/useMedia";
11
+ import { mediaQueryConfig, mediaState } from "../hooks/useMedia";
6
12
  import { createMediaStyle } from "./createMediaStyle";
7
13
  import { fixNativeShadow } from "./fixNativeShadow";
14
+ import { getStylesAtomic } from "./getStylesAtomic";
8
15
  import { insertStyleRule } from "./insertStyleRule";
9
- const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, internalConfig) => {
16
+ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, isSplittingDefaultProps) => {
10
17
  const validStyleProps = staticConfig.isText ? stylePropsText : validStyles;
11
18
  const viewProps = {};
12
19
  const style = [];
13
- let psuedos = null;
20
+ let pseudos = null;
14
21
  let cur = null;
15
22
  let classNames = null;
16
23
  for (const keyInit in props) {
@@ -22,39 +29,49 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, internalConf
22
29
  continue;
23
30
  }
24
31
  const mediaProps = { ...props, ...valInit };
25
- const mediaStyle = getSubStyle(valInit, mediaProps, staticConfig, internalConfig);
26
- const mediaStyles = getStylesAtomic(mediaStyle);
27
- for (const style2 of mediaStyles) {
28
- const out2 = createMediaStyle(style2, mediaKey, mediaQueryConfig);
29
- classNames = classNames || [];
30
- classNames.push(out2.identifier);
31
- insertStyleRule(out2.styleRule);
32
+ const mediaStyle = getSubStyle(valInit, staticConfig, theme, props);
33
+ if (isWeb) {
34
+ const mediaStyles = getStylesAtomic(mediaStyle);
32
35
  if (process.env.NODE_ENV === "development") {
33
- if (props["debug"])
36
+ if (props["debug"]) {
37
+ console.log("mediaStyles", keyInit, { mediaProps, mediaStyle, mediaStyles });
38
+ }
39
+ }
40
+ for (const style2 of mediaStyles) {
41
+ const out2 = createMediaStyle(style2, mediaKey, mediaQueryConfig);
42
+ classNames = classNames || [];
43
+ classNames.push(out2.identifier);
44
+ AllRules.add(out2.styleRule);
45
+ insertStyleRule(out2.styleRule);
46
+ if (process.env.NODE_ENV === "development" && props["debug"]) {
34
47
  console.log("mediaProp", style2.identifier, out2, mediaProps, mediaStyle, mediaStyles);
48
+ }
49
+ }
50
+ } else {
51
+ if (mediaState[mediaKey]) {
52
+ style.push(mediaStyle);
35
53
  }
36
54
  }
37
55
  continue;
38
56
  }
39
- const isPseudo = keyInit === "hoverStyle" || keyInit === "pressStyle" || keyInit === "focusStyle";
40
- if (isPseudo) {
57
+ if (validStylesPseudo[keyInit]) {
41
58
  if (!valInit)
42
59
  continue;
43
- psuedos = psuedos || {};
44
- psuedos[keyInit] = getSubStyle(valInit, props, staticConfig, internalConfig);
60
+ pseudos = pseudos || {};
61
+ pseudos[keyInit] = getSubStyle(valInit, staticConfig, theme, props);
45
62
  continue;
46
63
  }
47
- const out = staticConfig.propMapper(keyInit, valInit, props);
64
+ const out = staticConfig.propMapper(keyInit, valInit, theme, props);
48
65
  const expanded = out === true || !out ? [[keyInit, valInit]] : Object.entries(out);
49
66
  for (const [key, val] of expanded) {
50
67
  const keyFirstChar = key[0];
51
68
  if (key === "style" || keyFirstChar === "_" && key.startsWith("_style")) {
52
69
  if (cur) {
53
- fixNativeShadow(cur, true);
70
+ fixNativeShadow(cur);
54
71
  style.push(cur);
55
72
  cur = null;
56
73
  }
57
- fixNativeShadow(val, true);
74
+ fixNativeShadow(val);
58
75
  style.push(val);
59
76
  continue;
60
77
  }
@@ -80,32 +97,32 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, internalConf
80
97
  cur[key] = val;
81
98
  continue;
82
99
  }
83
- if (!blacklistProps[key]) {
100
+ if (!staticConfig.variants || !(key in staticConfig.variants)) {
84
101
  viewProps[key] = val;
85
102
  }
86
103
  }
87
104
  }
88
105
  if (cur) {
89
- fixNativeShadow(cur, true);
106
+ fixNativeShadow(cur);
90
107
  style.push(cur);
91
108
  }
92
109
  if (process.env.NODE_ENV === "development") {
93
110
  if (props["debug"]) {
94
- console.log(" style debug:", { props, viewProps, style }, getMedia());
111
+ console.log(" \u{1F95A} splitProps:", { props, viewProps, style });
95
112
  }
96
113
  }
97
114
  return {
98
115
  viewProps,
99
116
  style,
100
- psuedos,
117
+ pseudos,
101
118
  classNames
102
119
  };
103
120
  }, "getSplitStyles");
104
- const getSubStyle = /* @__PURE__ */ __name((styleIn, props, staticConfig, internalConfig) => {
121
+ const getSubStyle = /* @__PURE__ */ __name((styleIn, staticConfig, theme, props) => {
105
122
  const styleOut = {};
106
123
  for (const key in styleIn) {
107
124
  const val = styleIn[key];
108
- const out = staticConfig.propMapper(key, val, props);
125
+ const out = staticConfig.propMapper(key, val, theme, props);
109
126
  const expanded = out === true || !out ? [[key, val]] : Object.entries(out);
110
127
  for (const [skey, sval] of expanded) {
111
128
  if (skey in stylePropsTransform) {
@@ -115,17 +132,9 @@ const getSubStyle = /* @__PURE__ */ __name((styleIn, props, staticConfig, intern
115
132
  }
116
133
  }
117
134
  }
118
- fixNativeShadow(styleOut, true);
135
+ fixNativeShadow(styleOut);
119
136
  return styleOut;
120
137
  }, "getSubStyle");
121
- const blacklistProps = {
122
- debug: true,
123
- onPress: true,
124
- spacing: true,
125
- hitSlop: true,
126
- ...validStyles,
127
- ...stylePropsText
128
- };
129
138
  const mapTransformKeys = {
130
139
  x: "translateX",
131
140
  y: "translateY"
@@ -135,12 +144,6 @@ const mergeTransform = /* @__PURE__ */ __name((obj, key, val) => {
135
144
  transform.push({ [mapTransformKeys[key] || key]: val });
136
145
  obj.transform = transform;
137
146
  }, "mergeTransform");
138
- const fullscreenStyle = {
139
- top: 0,
140
- left: 0,
141
- right: 0,
142
- bottom: 0
143
- };
144
147
  export {
145
148
  getSplitStyles
146
149
  };
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getSplitStyles.tsx"],
4
+ "sourcesContent": ["import {\n AllRules,\n stylePropsText,\n stylePropsTransform,\n validStyles,\n validStylesPseudo,\n} from '@tamagui/helpers'\nimport { ViewStyle } from 'react-native'\n\nimport { isWeb } from '../constants/platform'\nimport { mediaQueryConfig, mediaState } from '../hooks/useMedia'\nimport { StaticConfigParsed, ThemeObject } from '../types'\nimport { createMediaStyle } from './createMediaStyle'\nimport { fixNativeShadow } from './fixNativeShadow'\nimport { getStylesAtomic } from './getStylesAtomic'\nimport { insertStyleRule } from './insertStyleRule'\n\nexport type SplitStyles = ReturnType<typeof getSplitStyles>\n\n// TODO run over this, should be able to cut it down quite a bit\n\nexport const getSplitStyles = (\n props: { [key: string]: any },\n staticConfig: StaticConfigParsed,\n theme: ThemeObject,\n isSplittingDefaultProps?: boolean\n) => {\n const validStyleProps = staticConfig.isText ? stylePropsText : validStyles\n const viewProps: Record<string, any> = {}\n const style: any[] = []\n\n let pseudos: { hoverStyle?: ViewStyle; pressStyle?: ViewStyle } | null = null\n let cur: ViewStyle | null = null\n let classNames: string[] | null = null\n\n for (const keyInit in props) {\n // be sure to sync next few lines below to getSubStyle (*1)\n const valInit = props[keyInit]\n\n // media\n if (keyInit[0] === '$') {\n const mediaKey = keyInit.slice(1)\n\n if (!mediaQueryConfig[mediaKey]) {\n // this isn't a media key, pass through\n viewProps[keyInit] = valInit\n continue\n }\n\n // dont check if media is active, we just apply *all* media styles\n // we combine the media props on top regular props, could proxy this\n // TODO test proxy here instead of merge\n const mediaProps = { ...props, ...valInit }\n // TODO media + hover\n const mediaStyle = getSubStyle(valInit, staticConfig, theme, props)\n\n if (isWeb) {\n const mediaStyles = getStylesAtomic(mediaStyle)\n if (process.env.NODE_ENV === 'development') {\n if (props['debug']) {\n console.log('mediaStyles', keyInit, { mediaProps, mediaStyle, mediaStyles })\n }\n }\n for (const style of mediaStyles) {\n const out = createMediaStyle(style, mediaKey, mediaQueryConfig)\n classNames = classNames || []\n classNames.push(out.identifier)\n AllRules.add(out.styleRule)\n insertStyleRule(out.styleRule)\n if (process.env.NODE_ENV === 'development' && props['debug']) {\n console.log('mediaProp', style.identifier, out, mediaProps, mediaStyle, mediaStyles)\n }\n }\n } else {\n if (mediaState[mediaKey]) {\n style.push(mediaStyle)\n }\n }\n continue\n }\n\n // pseudo\n if (validStylesPseudo[keyInit]) {\n if (!valInit) continue\n pseudos = pseudos || {}\n pseudos[keyInit] = getSubStyle(valInit, staticConfig, theme, props)\n continue\n }\n\n const out = staticConfig.propMapper(keyInit, valInit, theme, props)\n\n const expanded = out === true || !out ? [[keyInit, valInit]] : Object.entries(out)\n\n for (const [key, val] of expanded) {\n // const val = valueMap(valInit) ?? valInit\n const keyFirstChar = key[0]\n if (key === 'style' || (keyFirstChar === '_' && key.startsWith('_style'))) {\n if (cur) {\n // process last\n fixNativeShadow(cur)\n style.push(cur)\n cur = null\n }\n fixNativeShadow(val)\n style.push(val)\n continue\n }\n // expand flex so it merged with flexShrink etc properly\n // TODO this shouldn't be here...\n if (key === 'flex') {\n cur = cur || {}\n // see spec for flex shorthand https://developer.mozilla.org/en-US/docs/Web/CSS/flex\n // TODO this fixed a behavior but need to find / document / test\n Object.assign(cur, {\n flexGrow: val,\n flexShrink: 1,\n })\n continue\n }\n if (!isWeb && key === 'pointerEvents') {\n viewProps[key] = val\n continue\n }\n if (validStyleProps[key]) {\n // transforms\n if (key in stylePropsTransform) {\n cur = cur || {}\n mergeTransform(cur, key, val)\n continue\n }\n cur = cur || {}\n cur[key] = val\n continue\n }\n\n // pass to view props\n if (!staticConfig.variants || !(key in staticConfig.variants)) {\n viewProps[key] = val\n }\n }\n }\n // push last style\n if (cur) {\n fixNativeShadow(cur)\n style.push(cur)\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (props['debug']) {\n console.log(' \uD83E\uDD5A splitProps:', { props, viewProps, style })\n }\n }\n\n return {\n viewProps,\n style,\n pseudos,\n classNames,\n }\n}\n\nconst getSubStyle = (\n styleIn: Object,\n staticConfig: StaticConfigParsed,\n theme: ThemeObject,\n props: any\n): ViewStyle => {\n const styleOut: ViewStyle = {}\n for (const key in styleIn) {\n // be sure to sync next few lines below to loop above (*1)\n const val = styleIn[key]\n const out = staticConfig.propMapper(key, val, theme, props)\n const expanded = out === true || !out ? [[key, val]] : Object.entries(out)\n for (const [skey, sval] of expanded) {\n // const sval = valueMap(valInit)\n if (skey in stylePropsTransform) {\n mergeTransform(styleOut, skey, sval)\n } else {\n styleOut[skey] = sval\n }\n }\n }\n fixNativeShadow(styleOut)\n return styleOut\n}\n\nconst mapTransformKeys = {\n x: 'translateX',\n y: 'translateY',\n}\n\nconst mergeTransform = (obj: ViewStyle, key: string, val: any) => {\n const transform: any[] = obj.transform\n ? Array.isArray(obj.transform)\n ? obj.transform\n : [obj.transform]\n : []\n transform.push({ [mapTransformKeys[key] || key]: val })\n obj.transform = transform\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,84 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { AllRules } from "@tamagui/helpers";
4
+ import { pseudos } from "../constants/pseudos";
5
+ import { rnw } from "../constants/rnw";
6
+ const generateStyle = /* @__PURE__ */ __name((style) => {
7
+ const { atomic, createCompileableStyle, createReactDOMStyle, i18Style } = rnw;
8
+ return {
9
+ ...atomic(createCompileableStyle(createReactDOMStyle(i18Style(style))))
10
+ };
11
+ }, "generateStyle");
12
+ const borderDefaults = {
13
+ borderWidth: "borderStyle",
14
+ borderBottomWidth: "borderBottomStyle",
15
+ borderTopWidth: "borderTopStyle",
16
+ borderLeftWidth: "borderLeftStyle",
17
+ borderRightWidth: "borderRightStyle"
18
+ };
19
+ function getStylesAtomic(style, avoidCollection = false) {
20
+ const styles = {
21
+ base: {}
22
+ };
23
+ for (const key in style) {
24
+ if (!!pseudos[key]) {
25
+ styles[key] = style[key];
26
+ } else {
27
+ styles.base[key] = style[key];
28
+ }
29
+ }
30
+ return Object.keys(styles).map((key) => {
31
+ return getAtomicStyle(styles[key], pseudos[key], avoidCollection);
32
+ }).flat();
33
+ }
34
+ __name(getStylesAtomic, "getStylesAtomic");
35
+ const importantRegex = /\!important*/g;
36
+ function getAtomicStyle(style, pseudo, avoidCollection) {
37
+ var _a;
38
+ if (style == null || typeof style !== "object") {
39
+ throw new Error(`Wrong style type: "${typeof style}": ${style}`);
40
+ }
41
+ for (const key in borderDefaults) {
42
+ if (key in style) {
43
+ style[borderDefaults[key]] = (_a = style[borderDefaults[key]]) != null ? _a : "solid";
44
+ }
45
+ }
46
+ const all = generateStyle(style);
47
+ return Object.keys(all).map((key) => {
48
+ const val = all[key];
49
+ const hash = val.identifier.slice(`${val.identifier}`.lastIndexOf("-") + 1);
50
+ const psuedoPrefix = pseudo ? `-${pseudo.name}-` : "";
51
+ const identifier = `_${val.property}-${psuedoPrefix}${hash}`;
52
+ const className = `.${identifier}`;
53
+ const rules = val.rules.map((rule) => {
54
+ if (pseudo) {
55
+ const psuedoPrefixSelect = [...Array(pseudo.priority)].map(() => ":root").join("") + " ";
56
+ let res = rule.replace(`.${val.identifier}`, `${psuedoPrefixSelect} ${className}`).replace("{", `:${pseudo.name}{`);
57
+ if (pseudo.name === "hover") {
58
+ res = `@media not all and (hover: none) { ${res} }`;
59
+ }
60
+ return res;
61
+ }
62
+ return rule.replace(`.${val.identifier}`, className).replace(importantRegex, "");
63
+ });
64
+ if (!avoidCollection) {
65
+ if (rules.length > 1) {
66
+ console.warn("have never seen more than one, verifying");
67
+ }
68
+ AllRules.add(rules[0]);
69
+ }
70
+ const result = {
71
+ property: val.property,
72
+ value: val.value,
73
+ identifier,
74
+ className,
75
+ rules
76
+ };
77
+ return result;
78
+ });
79
+ }
80
+ __name(getAtomicStyle, "getAtomicStyle");
81
+ export {
82
+ getStylesAtomic
83
+ };
84
+ //# sourceMappingURL=getStylesAtomic.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getStylesAtomic.ts"],
4
+ "sourcesContent": ["import { AllRules } from '@tamagui/helpers'\nimport type { StyleObject } from '@tamagui/helpers'\nimport { ViewStyle } from 'react-native'\n\nimport { pseudos } from '../constants/pseudos'\nimport { rnw } from '../constants/rnw'\n\nconst generateStyle = (style: any) => {\n const { atomic, createCompileableStyle, createReactDOMStyle, i18Style } = rnw\n return {\n ...atomic(createCompileableStyle(createReactDOMStyle(i18Style(style)))),\n }\n}\n\nconst borderDefaults = {\n borderWidth: 'borderStyle',\n borderBottomWidth: 'borderBottomStyle',\n borderTopWidth: 'borderTopStyle',\n borderLeftWidth: 'borderLeftStyle',\n borderRightWidth: 'borderRightStyle',\n}\n\nexport function getStylesAtomic(style: any, avoidCollection = false) {\n const styles: { [key: string]: ViewStyle } = {\n base: {},\n }\n // split pseudos\n for (const key in style) {\n if (!!pseudos[key]) {\n styles[key] = style[key]\n } else {\n styles.base[key] = style[key]\n }\n }\n return Object.keys(styles)\n .map((key) => {\n return getAtomicStyle(styles[key], pseudos[key], avoidCollection)\n })\n .flat()\n}\n\nconst importantRegex = /\\!important*/g\n\nfunction getAtomicStyle(\n style: ViewStyle,\n pseudo?: { name: string; priority: number },\n avoidCollection?: boolean\n): StyleObject[] {\n if (style == null || typeof style !== 'object') {\n throw new Error(`Wrong style type: \"${typeof style}\": ${style}`)\n }\n\n // why is this diff from react-native-web!? need to figure out\n for (const key in borderDefaults) {\n if (key in style) {\n style[borderDefaults[key]] = style[borderDefaults[key]] ?? 'solid'\n }\n }\n\n const all = generateStyle(style)\n return Object.keys(all).map((key) => {\n const val = all[key]\n const hash = val.identifier.slice(`${val.identifier}`.lastIndexOf('-') + 1)\n // pseudos have a `--` to be easier to find with concatClassNames\n const psuedoPrefix = pseudo ? `-${pseudo.name}-` : ''\n const identifier = `_${val.property}-${psuedoPrefix}${hash}`\n const className = `.${identifier}`\n const rules = val.rules.map((rule) => {\n if (pseudo) {\n const psuedoPrefixSelect = [...Array(pseudo.priority)].map(() => ':root').join('') + ' '\n let res = rule\n .replace(`.${val.identifier}`, `${psuedoPrefixSelect} ${className}`)\n .replace('{', `:${pseudo.name}{`)\n\n if (pseudo.name === 'hover') {\n // hover styles need to be conditional\n // perhaps this can be generalized but for now lets just shortcut\n // and hardcode for hover styles, if we need to later we can\n // WEIRD SYNTAX, SEE:\n // https://stackoverflow.com/questions/40532204/media-query-for-devices-supporting-hover\n res = `@media not all and (hover: none) { ${res} }`\n }\n return res\n }\n return rule.replace(`.${val.identifier}`, className).replace(importantRegex, '')\n })\n\n if (!avoidCollection) {\n if (rules.length > 1) {\n console.warn('have never seen more than one, verifying')\n }\n AllRules.add(rules[0])\n }\n\n const result: StyleObject = {\n property: val.property,\n value: val.value,\n identifier,\n className,\n rules,\n }\n return result\n })\n}\n"],
5
+ "mappings": ";;AAAA;AAIA;AACA;AAEA,MAAM,gBAAgB,wBAAC,UAAe;AACpC,QAAM,EAAE,QAAQ,wBAAwB,qBAAqB,aAAa;AAC1E,SAAO;AAAA,OACF,OAAO,uBAAuB,oBAAoB,SAAS;AAAA;AAAA,GAH5C;AAOtB,MAAM,iBAAiB;AAAA,EACrB,aAAa;AAAA,EACb,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,iBAAiB;AAAA,EACjB,kBAAkB;AAAA;AAGb,yBAAyB,OAAY,kBAAkB,OAAO;AACnE,QAAM,SAAuC;AAAA,IAC3C,MAAM;AAAA;AAGR,aAAW,OAAO,OAAO;AACvB,QAAI,CAAC,CAAC,QAAQ,MAAM;AAClB,aAAO,OAAO,MAAM;AAAA,WACf;AACL,aAAO,KAAK,OAAO,MAAM;AAAA;AAAA;AAG7B,SAAO,OAAO,KAAK,QAChB,IAAI,CAAC,QAAQ;AACZ,WAAO,eAAe,OAAO,MAAM,QAAQ,MAAM;AAAA,KAElD;AAAA;AAhBW;AAmBhB,MAAM,iBAAiB;AAEvB,wBACE,OACA,QACA,iBACe;AA/CjB;AAgDE,MAAI,SAAS,QAAQ,OAAO,UAAU,UAAU;AAC9C,UAAM,IAAI,MAAM,sBAAsB,OAAO,WAAW;AAAA;AAI1D,aAAW,OAAO,gBAAgB;AAChC,QAAI,OAAO,OAAO;AAChB,YAAM,eAAe,QAAQ,YAAM,eAAe,UAArB,YAA8B;AAAA;AAAA;AAI/D,QAAM,MAAM,cAAc;AAC1B,SAAO,OAAO,KAAK,KAAK,IAAI,CAAC,QAAQ;AACnC,UAAM,MAAM,IAAI;AAChB,UAAM,OAAO,IAAI,WAAW,MAAM,GAAG,IAAI,aAAa,YAAY,OAAO;AAEzE,UAAM,eAAe,SAAS,IAAI,OAAO,UAAU;AACnD,UAAM,aAAa,IAAI,IAAI,YAAY,eAAe;AACtD,UAAM,YAAY,IAAI;AACtB,UAAM,QAAQ,IAAI,MAAM,IAAI,CAAC,SAAS;AACpC,UAAI,QAAQ;AACV,cAAM,qBAAqB,CAAC,GAAG,MAAM,OAAO,WAAW,IAAI,MAAM,SAAS,KAAK,MAAM;AACrF,YAAI,MAAM,KACP,QAAQ,IAAI,IAAI,cAAc,GAAG,sBAAsB,aACvD,QAAQ,KAAK,IAAI,OAAO;AAE3B,YAAI,OAAO,SAAS,SAAS;AAM3B,gBAAM,sCAAsC;AAAA;AAE9C,eAAO;AAAA;AAET,aAAO,KAAK,QAAQ,IAAI,IAAI,cAAc,WAAW,QAAQ,gBAAgB;AAAA;AAG/E,QAAI,CAAC,iBAAiB;AACpB,UAAI,MAAM,SAAS,GAAG;AACpB,gBAAQ,KAAK;AAAA;AAEf,eAAS,IAAI,MAAM;AAAA;AAGrB,UAAM,SAAsB;AAAA,MAC1B,UAAU,IAAI;AAAA,MACd,OAAO,IAAI;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA;AAEF,WAAO;AAAA;AAAA;AA1DF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,10 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ function getStylesAtomic() {
4
+ console.warn("no-op native");
5
+ }
6
+ __name(getStylesAtomic, "getStylesAtomic");
7
+ export {
8
+ getStylesAtomic
9
+ };
10
+ //# sourceMappingURL=getStylesAtomic.native.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getStylesAtomic.native.ts"],
4
+ "sourcesContent": ["export function getStylesAtomic() {\n console.warn('no-op native')\n}\n"],
5
+ "mappings": ";;AAAO,2BAA2B;AAChC,UAAQ,KAAK;AAAA;AADC;",
6
+ "names": []
7
+ }
@@ -1,9 +1,16 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { isWeb } from "../constants/platform";
3
4
  function insertStyleRule(rule) {
4
5
  if (typeof window === "undefined") {
5
6
  return;
6
7
  }
8
+ if (process.env.NODE_ENV === "development") {
9
+ if (!isWeb) {
10
+ console.warn("non web platform, dont use this");
11
+ return;
12
+ }
13
+ }
7
14
  const sheet = window.document.styleSheets[0];
8
15
  if (!sheet) {
9
16
  return;
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/insertStyleRule.tsx"],
4
+ "sourcesContent": ["import { isWeb } from '../constants/platform'\n\nexport function insertStyleRule(rule: string) {\n if (typeof window === 'undefined') {\n return\n }\n if (process.env.NODE_ENV === 'development') {\n if (!isWeb) {\n console.warn('non web platform, dont use this')\n return\n }\n }\n const sheet = window.document.styleSheets[0]\n if (!sheet) {\n return\n }\n sheet.insertRule(rule, sheet.cssRules.length)\n}\n"],
5
+ "mappings": ";;AAAA;AAEO,yBAAyB,MAAc;AAC5C,MAAI,OAAO,WAAW,aAAa;AACjC;AAAA;AAEF,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,CAAC,OAAO;AACV,cAAQ,KAAK;AACb;AAAA;AAAA;AAGJ,QAAM,QAAQ,OAAO,SAAS,YAAY;AAC1C,MAAI,CAAC,OAAO;AACV;AAAA;AAEF,QAAM,WAAW,MAAM,MAAM,SAAS;AAAA;AAdxB;",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const isObj = /* @__PURE__ */ __name((x) => x && !Array.isArray(x) && typeof x === "object", "isObj");
4
+ export {
5
+ isObj
6
+ };
7
+ //# sourceMappingURL=isObj.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/isObj.ts"],
4
+ "sourcesContent": ["export const isObj = (x: any) => x && !Array.isArray(x) && typeof x === 'object'\n"],
5
+ "mappings": ";;AAAO,MAAM,QAAQ,wBAAC,MAAW,KAAK,CAAC,MAAM,QAAQ,MAAM,OAAO,MAAM,UAAnD;",
6
+ "names": []
7
+ }
@@ -0,0 +1,11 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { isValidElement } from "react";
4
+ const isTamaguiElement = /* @__PURE__ */ __name((child) => {
5
+ var _a;
6
+ return isValidElement(child) && !!((_a = child.type["staticConfig"]) == null ? void 0 : _a.parsed);
7
+ }, "isTamaguiElement");
8
+ export {
9
+ isTamaguiElement
10
+ };
11
+ //# sourceMappingURL=isTamaguiElement.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/isTamaguiElement.tsx"],
4
+ "sourcesContent": ["import React, { isValidElement } from 'react'\n\nexport const isTamaguiElement = (child: any): child is React.ReactElement => {\n return isValidElement(child) && !!child.type['staticConfig']?.parsed\n}\n"],
5
+ "mappings": ";;AAAA;AAEO,MAAM,mBAAmB,wBAAC,UAA4C;AAF7E;AAGE,SAAO,eAAe,UAAU,CAAC,CAAC,aAAM,KAAK,oBAAX,mBAA4B;AAAA,GADhC;",
6
+ "names": []
7
+ }
@@ -3,6 +3,9 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
3
3
  const matchMedia = typeof window !== "undefined" && window.matchMedia || /* @__PURE__ */ __name(function matchMediaFallback(query) {
4
4
  return {
5
5
  addListener() {
6
+ if (process.env.NODE_ENV === "development" && !process.env.IS_STATIC && process.env.TAMAGUI_TARGET !== "web") {
7
+ console.log("warning: matchMedia not loading! Is native picking up .native.js files?");
8
+ }
6
9
  },
7
10
  removeListener() {
8
11
  },
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/matchMedia.ts"],
4
+ "sourcesContent": ["export const matchMedia =\n (typeof window !== 'undefined' && window.matchMedia) ||\n (function matchMediaFallback(query: string) {\n return {\n addListener() {\n if (\n process.env.NODE_ENV === 'development' &&\n !process.env.IS_STATIC &&\n process.env.TAMAGUI_TARGET !== 'web'\n ) {\n console.log('warning: matchMedia not loading! Is native picking up .native.js files?')\n }\n },\n removeListener() {},\n matches: false,\n }\n } as any)\n"],
5
+ "mappings": ";;AAAO,MAAM,aACV,OAAO,WAAW,eAAe,OAAO,cACxC,mDAA4B,OAAe;AAC1C,SAAO;AAAA,IACL,cAAc;AACZ,UACE,QAAQ,IAAI,aAAa,iBACzB,CAAC,QAAQ,IAAI,aACb,QAAQ,IAAI,mBAAmB,OAC/B;AACA,gBAAQ,IAAI;AAAA;AAAA;AAAA,IAGhB,iBAAiB;AAAA;AAAA,IACjB,SAAS;AAAA;AAAA,GAZZ;",
6
+ "names": []
7
+ }
@@ -2,6 +2,7 @@ var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
  import MediaQueryList from "@expo/match-media/build/MediaQueryList.js";
4
4
  const matchMedia = /* @__PURE__ */ __name((media) => new MediaQueryList(media), "matchMedia");
5
+ globalThis["matchMedia"] = matchMedia;
5
6
  export {
6
7
  matchMedia
7
8
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/helpers/matchMedia.native.ts"],
4
- "sourcesContent": ["import MediaQueryList from '@expo/match-media/build/MediaQueryList.js'\n\nexport const matchMedia = (media: string) => new MediaQueryList(media)\n"],
5
- "mappings": ";;AAAA;AAEO,MAAM,aAAa,wBAAC,UAAkB,IAAI,eAAe,QAAtC;",
3
+ "sources": ["../../../src/helpers/matchMedia.native.ts"],
4
+ "sourcesContent": ["import MediaQueryList from '@expo/match-media/build/MediaQueryList.js'\n\nexport const matchMedia = (media: string) => new MediaQueryList(media)\n\n// @ts-ignore\nglobalThis['matchMedia'] = matchMedia\n"],
5
+ "mappings": ";;AAAA;AAEO,MAAM,aAAa,wBAAC,UAAkB,IAAI,eAAe,QAAtC;AAG1B,WAAW,gBAAgB;",
6
6
  "names": []
7
7
  }
@@ -17,7 +17,7 @@ const themeable = /* @__PURE__ */ __name(function graphql(component) {
17
17
  return el;
18
18
  }, "WithTheme"));
19
19
  const withTheme = withThemeComponent;
20
- withTheme.displayName = `Themed(${component?.displayName || component?.name || "Anonymous"})`;
20
+ withTheme.displayName = `Themed(${(component == null ? void 0 : component.displayName) || (component == null ? void 0 : component.name) || "Anonymous"})`;
21
21
  return withTheme;
22
22
  }, "graphql");
23
23
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/helpers/themeable.tsx"],
4
- "sourcesContent": ["import React, { ReactElement, forwardRef } from 'react'\n\nimport { Theme } from '../views/Theme'\nimport { ThemeInverse } from '../views/ThemeInverse'\n\nexport type ThemeableProps = {\n theme?: string | null\n themeInverse?: boolean\n}\n\nexport const themeable: ThemeableHOC = function graphql<\n R extends ReactElement<any, any> | null,\n P extends ThemeableProps = {}\n>(component: (props: P) => R) {\n const withThemeComponent = forwardRef(function WithTheme({ themeInverse, ...rest }: P, ref) {\n const el = React.createElement(component, { ...rest, ref } as any) as R\n if (themeInverse) {\n return (<ThemeInverse>{el}</ThemeInverse>) as R\n }\n if (rest.theme) {\n // @ts-ignore\n return (<Theme name={rest.theme || null}>{el}</Theme>) as R\n }\n return el\n })\n\n const withTheme: {\n (props: P): R\n displayName: string\n } = withThemeComponent as any\n\n withTheme.displayName = `Themed(${(component as any)?.displayName || (component as any)?.name || 'Anonymous'})`\n\n return withTheme\n}\n\nexport interface ThemeableHOC {\n <R extends ReactElement<any, any> | null, P extends ThemeableProps = {}>(component: (props: P) => R): (\n props: P\n ) => R\n}\n"],
5
- "mappings": ";;AAAA;AAEA;AACA;AAOO,MAAM,YAA0B,wCAGrC,WAA4B;AAC5B,QAAM,qBAAqB,WAAW,0CAAmB,EAAE,iBAAiB,QAAW,KAAK;AAC1F,UAAM,KAAK,MAAM,cAAc,WAAW,KAAK,MAAM;AACrD,QAAI,cAAc;AAChB,aAAQ,oCAAC,cAAD,MAAe;AAAA;AAEzB,QAAI,KAAK,OAAO;AAEd,aAAQ,oCAAC,OAAD;AAAA,QAAO,MAAM,KAAK,SAAS;AAAA,SAAO;AAAA;AAE5C,WAAO;AAAA,KAT6B;AAYtC,QAAM,YAGF;AAEJ,YAAU,cAAc,UAAW,WAAmB,eAAgB,WAAmB,QAAQ;AAEjG,SAAO;AAAA,GAvB8B;",
3
+ "sources": ["../../../src/helpers/themeable.tsx"],
4
+ "sourcesContent": ["import React, { ReactElement, forwardRef } from 'react'\n\nimport { Theme } from '../views/Theme'\nimport { ThemeInverse } from '../views/ThemeInverse'\n\nexport type ThemeableProps = {\n theme?: string | null\n themeInverse?: boolean\n}\n\nexport const themeable: ThemeableHOC = function graphql<\n R extends ReactElement<any, any> | null,\n P extends ThemeableProps = {}\n>(component: (props: P) => R) {\n const withThemeComponent = forwardRef(function WithTheme({ themeInverse, ...rest }: P, ref) {\n const el = React.createElement(component, { ...rest, ref } as any) as R\n if (themeInverse) {\n return (<ThemeInverse>{el}</ThemeInverse>) as R\n }\n if (rest.theme) {\n return (<Theme name={rest.theme || null}>{el}</Theme>) as R\n }\n return el\n })\n\n const withTheme: {\n (props: P): R\n displayName: string\n } = withThemeComponent as any\n\n withTheme.displayName = `Themed(${\n (component as any)?.displayName || (component as any)?.name || 'Anonymous'\n })`\n\n return withTheme\n}\n\nexport interface ThemeableHOC {\n <R extends ReactElement<any, any> | null, P extends ThemeableProps = {}>(\n component: (props: P) => R\n ): (props: P) => R\n}\n"],
5
+ "mappings": ";;AAAA;AAEA;AACA;AAOO,MAAM,YAA0B,wCAGrC,WAA4B;AAC5B,QAAM,qBAAqB,WAAW,0CAAmB,EAAE,iBAAiB,QAAW,KAAK;AAC1F,UAAM,KAAK,MAAM,cAAc,WAAW,KAAK,MAAM;AACrD,QAAI,cAAc;AAChB,aAAQ,oCAAC,cAAD,MAAe;AAAA;AAEzB,QAAI,KAAK,OAAO;AACd,aAAQ,oCAAC,OAAD;AAAA,QAAO,MAAM,KAAK,SAAS;AAAA,SAAO;AAAA;AAE5C,WAAO;AAAA,KAR6B;AAWtC,QAAM,YAGF;AAEJ,YAAU,cAAc,UACrB,wCAAmB,gBAAgB,wCAAmB,SAAQ;AAGjE,SAAO;AAAA,GAxB8B;",
6
6
  "names": []
7
7
  }