@tamagui/core 1.0.0-alpha.7 → 1.0.0-beta.147

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 (638) hide show
  1. package/dist/cjs/Tamagui.js +57 -0
  2. package/dist/cjs/Tamagui.js.map +7 -0
  3. package/dist/cjs/ThemeContext.js +25 -0
  4. package/dist/cjs/ThemeContext.js.map +7 -0
  5. package/dist/cjs/ThemeManager.js +195 -0
  6. package/dist/cjs/ThemeManager.js.map +7 -0
  7. package/dist/cjs/conf.js +55 -0
  8. package/dist/cjs/conf.js.map +7 -0
  9. package/dist/cjs/constants/constants.js +50 -0
  10. package/dist/cjs/constants/constants.js.map +7 -0
  11. package/dist/cjs/constants/platform.js +43 -0
  12. package/dist/cjs/constants/platform.js.map +7 -0
  13. package/dist/cjs/constants/pseudos.js +37 -0
  14. package/dist/cjs/constants/pseudos.js.map +7 -0
  15. package/dist/cjs/constants/rnw.js +42 -0
  16. package/dist/cjs/constants/rnw.js.map +7 -0
  17. package/dist/cjs/contexts/ButtonInsideButtonContext.js +25 -0
  18. package/dist/cjs/contexts/ButtonInsideButtonContext.js.map +7 -0
  19. package/dist/cjs/createComponent.js +651 -0
  20. package/dist/cjs/createComponent.js.map +7 -0
  21. package/dist/cjs/createFont.js +46 -0
  22. package/dist/cjs/createFont.js.map +7 -0
  23. package/dist/cjs/createShallowUpdate.js +1 -0
  24. package/dist/{helpers/pseudos.js.map → cjs/createShallowUpdate.js.map} +0 -0
  25. package/dist/cjs/createShorthands.js +28 -0
  26. package/dist/cjs/createShorthands.js.map +7 -0
  27. package/dist/cjs/createTamagui.js +219 -0
  28. package/dist/cjs/createTamagui.js.map +7 -0
  29. package/dist/cjs/createTheme.js +25 -0
  30. package/dist/cjs/createTheme.js.map +7 -0
  31. package/dist/cjs/createTokens.js +51 -0
  32. package/dist/cjs/createTokens.js.map +7 -0
  33. package/dist/cjs/createVariable.js +61 -0
  34. package/dist/cjs/createVariable.js.map +7 -0
  35. package/dist/cjs/defaultComponentState.js +1 -0
  36. package/dist/{types.js.map → cjs/defaultComponentState.js.map} +0 -0
  37. package/dist/cjs/devtools.js +32 -0
  38. package/dist/cjs/devtools.js.map +7 -0
  39. package/dist/cjs/helpers/RNComponents.js +34 -0
  40. package/dist/cjs/helpers/RNComponents.js.map +7 -0
  41. package/dist/cjs/helpers/addStylesUsingClassname.js +79 -0
  42. package/dist/cjs/helpers/addStylesUsingClassname.js.map +7 -0
  43. package/dist/cjs/helpers/areEqualSets.js +34 -0
  44. package/dist/cjs/helpers/areEqualSets.js.map +7 -0
  45. package/dist/cjs/helpers/createMediaStyle.js +51 -0
  46. package/dist/cjs/helpers/createMediaStyle.js.map +7 -0
  47. package/dist/cjs/helpers/createPropMapper.js +228 -0
  48. package/dist/cjs/helpers/createPropMapper.js.map +7 -0
  49. package/dist/cjs/helpers/createShallowUpdate.js +51 -0
  50. package/dist/cjs/helpers/createShallowUpdate.js.map +7 -0
  51. package/dist/cjs/helpers/createTamaguiProvider.js +89 -0
  52. package/dist/cjs/helpers/createTamaguiProvider.js.map +7 -0
  53. package/dist/cjs/helpers/extendStaticConfig.js +79 -0
  54. package/dist/cjs/helpers/extendStaticConfig.js.map +7 -0
  55. package/dist/cjs/helpers/fixNativeShadow.js +26 -0
  56. package/dist/cjs/helpers/fixNativeShadow.js.map +7 -0
  57. package/dist/cjs/helpers/fixNativeShadow.native.js +52 -0
  58. package/dist/cjs/helpers/fixNativeShadow.native.js.map +7 -0
  59. package/dist/cjs/helpers/getExpandedShorthands.js +37 -0
  60. package/dist/cjs/helpers/getExpandedShorthands.js.map +7 -0
  61. package/dist/cjs/helpers/getSplitStyles.js +267 -0
  62. package/dist/cjs/helpers/getSplitStyles.js.map +7 -0
  63. package/dist/cjs/helpers/getStylesAtomic.js +160 -0
  64. package/dist/cjs/helpers/getStylesAtomic.js.map +7 -0
  65. package/dist/cjs/helpers/getStylesAtomic.native.js +28 -0
  66. package/dist/cjs/helpers/getStylesAtomic.native.js.map +7 -0
  67. package/dist/cjs/helpers/insertStyleRule.js +108 -0
  68. package/dist/cjs/helpers/insertStyleRule.js.map +7 -0
  69. package/dist/cjs/helpers/isObj.js +25 -0
  70. package/dist/cjs/helpers/isObj.js.map +7 -0
  71. package/dist/cjs/helpers/isTamaguiElement.js +29 -0
  72. package/dist/cjs/helpers/isTamaguiElement.js.map +7 -0
  73. package/dist/cjs/helpers/matchMedia.js +36 -0
  74. package/dist/cjs/helpers/matchMedia.js.map +7 -0
  75. package/dist/cjs/helpers/matchMedia.native.js +30 -0
  76. package/dist/cjs/helpers/matchMedia.native.js.map +7 -0
  77. package/dist/cjs/helpers/themeable.js +78 -0
  78. package/dist/cjs/helpers/themeable.js.map +7 -0
  79. package/dist/cjs/helpers/validate.js +81 -0
  80. package/dist/cjs/helpers/validate.js.map +7 -0
  81. package/dist/cjs/helpers/withStaticProperties.js +28 -0
  82. package/dist/cjs/helpers/withStaticProperties.js.map +7 -0
  83. package/dist/cjs/helpers/wrapThemeManagerContext.js +35 -0
  84. package/dist/cjs/helpers/wrapThemeManagerContext.js.map +7 -0
  85. package/dist/cjs/hooks/useConstant.js +33 -0
  86. package/dist/cjs/hooks/useConstant.js.map +7 -0
  87. package/dist/cjs/hooks/useFeatures.js +224 -0
  88. package/dist/cjs/hooks/useFeatures.js.map +7 -0
  89. package/dist/cjs/hooks/useIsMounted.js +37 -0
  90. package/dist/cjs/hooks/useIsMounted.js.map +7 -0
  91. package/dist/cjs/hooks/useIsTouchDevice.js +35 -0
  92. package/dist/cjs/hooks/useIsTouchDevice.js.map +7 -0
  93. package/dist/cjs/hooks/useMedia.js +184 -0
  94. package/dist/cjs/hooks/useMedia.js.map +7 -0
  95. package/dist/cjs/hooks/usePressable.js +46 -0
  96. package/dist/cjs/hooks/usePressable.js.map +7 -0
  97. package/dist/cjs/hooks/useTheme.js +205 -0
  98. package/dist/cjs/hooks/useTheme.js.map +7 -0
  99. package/dist/cjs/hooks/useUnmountEffect.js +29 -0
  100. package/dist/cjs/hooks/useUnmountEffect.js.map +7 -0
  101. package/dist/cjs/index.js +68 -0
  102. package/dist/cjs/index.js.map +7 -0
  103. package/dist/cjs/spacedChildren.js +86 -0
  104. package/dist/cjs/spacedChildren.js.map +7 -0
  105. package/dist/cjs/static.js +30 -0
  106. package/dist/cjs/static.js.map +7 -0
  107. package/dist/cjs/styled.js +91 -0
  108. package/dist/cjs/styled.js.map +7 -0
  109. package/dist/cjs/tamagui-base.css +8 -0
  110. package/dist/cjs/tamagui-base.css.map +7 -0
  111. package/dist/cjs/types-rnw.js +16 -0
  112. package/dist/cjs/types-rnw.js.map +7 -0
  113. package/dist/cjs/types.js +16 -0
  114. package/dist/cjs/types.js.map +7 -0
  115. package/dist/cjs/views/Stack.js +48 -0
  116. package/dist/cjs/views/Stack.js.map +7 -0
  117. package/dist/cjs/views/Text.js +91 -0
  118. package/dist/cjs/views/Text.js.map +7 -0
  119. package/dist/cjs/views/TextAncestorContext.js +39 -0
  120. package/dist/cjs/views/TextAncestorContext.js.map +7 -0
  121. package/dist/cjs/views/Theme.js +56 -0
  122. package/dist/cjs/views/Theme.js.map +7 -0
  123. package/dist/cjs/views/ThemeInverse.js +47 -0
  124. package/dist/cjs/views/ThemeInverse.js.map +7 -0
  125. package/dist/cjs/views/ThemeProvider.js +62 -0
  126. package/dist/cjs/views/ThemeProvider.js.map +7 -0
  127. package/dist/cjs/views/ThemeReset.js +59 -0
  128. package/dist/cjs/views/ThemeReset.js.map +7 -0
  129. package/dist/esm/Tamagui.js +36 -0
  130. package/dist/esm/Tamagui.js.map +7 -0
  131. package/dist/{views → esm}/ThemeContext.js +0 -0
  132. package/dist/esm/ThemeContext.js.map +7 -0
  133. package/dist/esm/ThemeManager.js +177 -0
  134. package/dist/esm/ThemeManager.js.map +7 -0
  135. package/dist/esm/conf.js +37 -0
  136. package/dist/esm/conf.js.map +7 -0
  137. package/dist/{constants → esm/constants}/constants.js +4 -0
  138. package/dist/esm/constants/constants.js.map +7 -0
  139. package/dist/{constants → esm/constants}/platform.js +6 -1
  140. package/dist/esm/constants/platform.js.map +7 -0
  141. package/dist/{constants → esm/constants}/pseudos.js +0 -0
  142. package/dist/{constants → esm/constants}/pseudos.js.map +2 -2
  143. package/dist/{constants → esm/constants}/rnw.js +2 -0
  144. package/dist/esm/constants/rnw.js.map +7 -0
  145. package/dist/esm/contexts/ButtonInsideButtonContext.js +6 -0
  146. package/dist/esm/contexts/ButtonInsideButtonContext.js.map +7 -0
  147. package/dist/esm/createComponent.js +590 -0
  148. package/dist/esm/createComponent.js.map +7 -0
  149. package/dist/{createFont.js → esm/createFont.js} +0 -0
  150. package/dist/{createFont.js.map → esm/createFont.js.map} +2 -2
  151. package/dist/esm/createShallowUpdate.js +1 -0
  152. package/dist/esm/createShallowUpdate.js.map +7 -0
  153. package/dist/{createShorthands.js → esm/createShorthands.js} +0 -0
  154. package/dist/{createShorthands.js.map → esm/createShorthands.js.map} +2 -2
  155. package/dist/esm/createTamagui.js +185 -0
  156. package/dist/esm/createTamagui.js.map +7 -0
  157. package/dist/esm/createTheme.js +7 -0
  158. package/dist/esm/createTheme.js.map +7 -0
  159. package/dist/{createTokens.js → esm/createTokens.js} +0 -0
  160. package/dist/{createTokens.js.map → esm/createTokens.js.map} +2 -2
  161. package/dist/esm/createVariable.js +43 -0
  162. package/dist/esm/createVariable.js.map +7 -0
  163. package/dist/esm/defaultComponentState.js +1 -0
  164. package/dist/esm/defaultComponentState.js.map +7 -0
  165. package/dist/esm/devtools.js +14 -0
  166. package/dist/esm/devtools.js.map +7 -0
  167. package/dist/esm/helpers/RNComponents.js +12 -0
  168. package/dist/esm/helpers/RNComponents.js.map +7 -0
  169. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js +16 -12
  170. package/dist/esm/helpers/addStylesUsingClassname.js.map +7 -0
  171. package/dist/esm/helpers/areEqualSets.js +16 -0
  172. package/dist/esm/helpers/areEqualSets.js.map +7 -0
  173. package/dist/{helpers → esm/helpers}/createMediaStyle.js +5 -6
  174. package/dist/esm/helpers/createMediaStyle.js.map +7 -0
  175. package/dist/esm/helpers/createPropMapper.js +210 -0
  176. package/dist/esm/helpers/createPropMapper.js.map +7 -0
  177. package/dist/esm/helpers/createShallowUpdate.js +19 -0
  178. package/dist/esm/helpers/createShallowUpdate.js.map +7 -0
  179. package/dist/esm/helpers/createTamaguiProvider.js +40 -0
  180. package/dist/esm/helpers/createTamaguiProvider.js.map +7 -0
  181. package/dist/{helpers → esm/helpers}/extendStaticConfig.js +14 -14
  182. package/dist/esm/helpers/extendStaticConfig.js.map +7 -0
  183. package/dist/{helpers → esm/helpers}/fixNativeShadow.js +0 -0
  184. package/dist/{helpers → esm/helpers}/fixNativeShadow.js.map +2 -2
  185. package/dist/esm/helpers/fixNativeShadow.native.js +34 -0
  186. package/dist/esm/helpers/fixNativeShadow.native.js.map +7 -0
  187. package/dist/esm/helpers/getExpandedShorthands.js +19 -0
  188. package/dist/esm/helpers/getExpandedShorthands.js.map +7 -0
  189. package/dist/esm/helpers/getSplitStyles.js +244 -0
  190. package/dist/esm/helpers/getSplitStyles.js.map +7 -0
  191. package/dist/esm/helpers/getStylesAtomic.js +119 -0
  192. package/dist/esm/helpers/getStylesAtomic.js.map +7 -0
  193. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js +0 -0
  194. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js.map +2 -2
  195. package/dist/esm/helpers/insertStyleRule.js +90 -0
  196. package/dist/esm/helpers/insertStyleRule.js.map +7 -0
  197. package/dist/{helpers → esm/helpers}/isObj.js +0 -0
  198. package/dist/{helpers → esm/helpers}/isObj.js.map +2 -2
  199. package/dist/{helpers → esm/helpers}/isTamaguiElement.js +2 -1
  200. package/dist/{helpers → esm/helpers}/isTamaguiElement.js.map +2 -2
  201. package/dist/{helpers → esm/helpers}/matchMedia.js +3 -0
  202. package/dist/esm/helpers/matchMedia.js.map +7 -0
  203. package/dist/{helpers → esm/helpers}/matchMedia.native.js +1 -0
  204. package/dist/esm/helpers/matchMedia.native.js.map +7 -0
  205. package/dist/{helpers → esm/helpers}/themeable.js +11 -10
  206. package/dist/esm/helpers/themeable.js.map +7 -0
  207. package/dist/esm/helpers/validate.js +63 -0
  208. package/dist/esm/helpers/validate.js.map +7 -0
  209. package/dist/esm/helpers/withStaticProperties.js +10 -0
  210. package/dist/esm/helpers/withStaticProperties.js.map +7 -0
  211. package/dist/esm/helpers/wrapThemeManagerContext.js +14 -0
  212. package/dist/esm/helpers/wrapThemeManagerContext.js.map +7 -0
  213. package/dist/{hooks → esm/hooks}/useConstant.js +0 -0
  214. package/dist/{hooks → esm/hooks}/useConstant.js.map +2 -2
  215. package/dist/esm/hooks/useFeatures.js +173 -0
  216. package/dist/esm/hooks/useFeatures.js.map +7 -0
  217. package/dist/esm/hooks/useIsMounted.js +19 -0
  218. package/dist/esm/hooks/useIsMounted.js.map +7 -0
  219. package/dist/esm/hooks/useIsTouchDevice.js +17 -0
  220. package/dist/esm/hooks/useIsTouchDevice.js.map +7 -0
  221. package/dist/{hooks → esm/hooks}/useMedia.js +27 -42
  222. package/dist/esm/hooks/useMedia.js.map +7 -0
  223. package/dist/{hooks → esm/hooks}/usePressable.js +2 -1
  224. package/dist/{hooks → esm/hooks}/usePressable.js.map +2 -2
  225. package/dist/esm/hooks/useTheme.js +172 -0
  226. package/dist/esm/hooks/useTheme.js.map +7 -0
  227. package/dist/esm/hooks/useUnmountEffect.js +11 -0
  228. package/dist/esm/hooks/useUnmountEffect.js.map +7 -0
  229. package/dist/{index.js → esm/index.js} +21 -5
  230. package/dist/esm/index.js.map +7 -0
  231. package/dist/esm/spacedChildren.js +52 -0
  232. package/dist/esm/spacedChildren.js.map +7 -0
  233. package/dist/{static.js → esm/static.js} +1 -2
  234. package/dist/{static.js.map → esm/static.js.map} +3 -3
  235. package/dist/esm/styled.js +46 -0
  236. package/dist/esm/styled.js.map +7 -0
  237. package/dist/esm/tamagui-base.css +8 -0
  238. package/dist/esm/tamagui-base.css.map +7 -0
  239. package/dist/esm/types-rnw.js +1 -0
  240. package/dist/esm/types-rnw.js.map +7 -0
  241. package/dist/{types.js → esm/types.js} +0 -0
  242. package/dist/esm/types.js.map +7 -0
  243. package/dist/{views → esm/views}/Stack.js +1 -0
  244. package/dist/esm/views/Stack.js.map +7 -0
  245. package/dist/{views → esm/views}/Text.js +6 -4
  246. package/dist/esm/views/Text.js.map +7 -0
  247. package/dist/esm/views/TextAncestorContext.js +18 -0
  248. package/dist/esm/views/TextAncestorContext.js.map +7 -0
  249. package/dist/esm/views/Theme.js +35 -0
  250. package/dist/esm/views/Theme.js.map +7 -0
  251. package/dist/{views → esm/views}/ThemeInverse.js +1 -1
  252. package/dist/{views → esm/views}/ThemeInverse.js.map +3 -3
  253. package/dist/esm/views/ThemeProvider.js +41 -0
  254. package/dist/esm/views/ThemeProvider.js.map +7 -0
  255. package/dist/esm/views/ThemeReset.js +38 -0
  256. package/dist/esm/views/ThemeReset.js.map +7 -0
  257. package/dist/jsx/Tamagui.js +35 -0
  258. package/dist/jsx/ThemeContext.js +5 -0
  259. package/dist/jsx/ThemeManager.js +176 -0
  260. package/dist/jsx/conf.js +36 -0
  261. package/dist/jsx/constants/constants.js +17 -0
  262. package/dist/jsx/constants/platform.js +23 -0
  263. package/dist/jsx/constants/pseudos.js +17 -0
  264. package/dist/jsx/constants/rnw.js +23 -0
  265. package/dist/jsx/contexts/ButtonInsideButtonContext.js +5 -0
  266. package/dist/jsx/createComponent.js +576 -0
  267. package/dist/jsx/createFont.js +27 -0
  268. package/dist/jsx/createShallowUpdate.js +0 -0
  269. package/dist/jsx/createShorthands.js +9 -0
  270. package/dist/jsx/createTamagui.js +184 -0
  271. package/dist/jsx/createTheme.js +6 -0
  272. package/dist/jsx/createTokens.js +32 -0
  273. package/dist/jsx/createVariable.js +42 -0
  274. package/dist/jsx/defaultComponentState.js +0 -0
  275. package/dist/jsx/devtools.js +13 -0
  276. package/dist/jsx/helpers/RNComponents.js +11 -0
  277. package/dist/jsx/helpers/addStylesUsingClassname.js +60 -0
  278. package/dist/jsx/helpers/areEqualSets.js +15 -0
  279. package/dist/jsx/helpers/createMediaStyle.js +32 -0
  280. package/dist/jsx/helpers/createPropMapper.js +209 -0
  281. package/dist/jsx/helpers/createShallowUpdate.js +18 -0
  282. package/dist/jsx/helpers/createTamaguiProvider.js +34 -0
  283. package/dist/jsx/helpers/extendStaticConfig.js +58 -0
  284. package/dist/jsx/helpers/fixNativeShadow.js +7 -0
  285. package/dist/jsx/helpers/fixNativeShadow.native.js +33 -0
  286. package/dist/jsx/helpers/getExpandedShorthands.js +18 -0
  287. package/dist/jsx/helpers/getSplitStyles.js +243 -0
  288. package/dist/jsx/helpers/getStylesAtomic.js +118 -0
  289. package/dist/jsx/helpers/getStylesAtomic.native.js +9 -0
  290. package/dist/jsx/helpers/insertStyleRule.js +89 -0
  291. package/dist/jsx/helpers/isObj.js +6 -0
  292. package/dist/jsx/helpers/isTamaguiElement.js +10 -0
  293. package/dist/jsx/helpers/matchMedia.js +17 -0
  294. package/dist/jsx/helpers/matchMedia.native.js +8 -0
  295. package/dist/jsx/helpers/themeable.js +24 -0
  296. package/dist/jsx/helpers/validate.js +62 -0
  297. package/dist/jsx/helpers/withStaticProperties.js +9 -0
  298. package/dist/jsx/helpers/wrapThemeManagerContext.js +10 -0
  299. package/dist/jsx/hooks/useConstant.js +14 -0
  300. package/dist/jsx/hooks/useFeatures.js +167 -0
  301. package/dist/jsx/hooks/useIsMounted.js +18 -0
  302. package/dist/jsx/hooks/useIsTouchDevice.js +16 -0
  303. package/dist/jsx/hooks/useMedia.js +155 -0
  304. package/dist/jsx/hooks/usePressable.js +13 -0
  305. package/dist/jsx/hooks/useTheme.js +171 -0
  306. package/dist/jsx/hooks/useUnmountEffect.js +10 -0
  307. package/dist/jsx/index.js +47 -0
  308. package/dist/jsx/spacedChildren.js +44 -0
  309. package/dist/jsx/static.js +13 -0
  310. package/dist/jsx/styled.js +45 -0
  311. package/dist/jsx/tamagui-base.css +7 -0
  312. package/dist/jsx/types-rnw.js +0 -0
  313. package/dist/jsx/types.js +0 -0
  314. package/dist/jsx/views/Stack.js +12 -0
  315. package/dist/jsx/views/Text.js +61 -0
  316. package/dist/jsx/views/TextAncestorContext.js +15 -0
  317. package/dist/jsx/views/Theme.js +31 -0
  318. package/dist/jsx/views/ThemeInverse.js +22 -0
  319. package/dist/jsx/views/ThemeProvider.js +35 -0
  320. package/dist/jsx/views/ThemeReset.js +34 -0
  321. package/package.json +22 -19
  322. package/types/Tamagui.d.ts +15 -0
  323. package/types/Tamagui.d.ts.map +1 -0
  324. package/types/ThemeContext.d.ts +7 -0
  325. package/types/ThemeContext.d.ts.map +1 -0
  326. package/types/ThemeManager.d.ts +49 -0
  327. package/types/ThemeManager.d.ts.map +1 -0
  328. package/types/conf.d.ts +25 -0
  329. package/types/conf.d.ts.map +1 -0
  330. package/{dist/packages/core/src → types}/constants/constants.d.ts +2 -0
  331. package/types/constants/constants.d.ts.map +1 -0
  332. package/{dist/packages/core/src → types}/constants/platform.d.ts +2 -0
  333. package/types/constants/platform.d.ts.map +1 -0
  334. package/{dist/packages/core/src → types}/constants/rnw.d.ts +0 -0
  335. package/types/constants/rnw.d.ts.map +1 -0
  336. package/types/contexts/ButtonInsideButtonContext.d.ts +3 -0
  337. package/types/contexts/ButtonInsideButtonContext.d.ts.map +1 -0
  338. package/types/createComponent.d.ts +20 -0
  339. package/types/createComponent.d.ts.map +1 -0
  340. package/types/createFont.d.ts +3 -0
  341. package/types/createFont.d.ts.map +1 -0
  342. package/{dist/packages/core/src → types}/createShorthands.d.ts +0 -0
  343. package/types/createShorthands.d.ts.map +1 -0
  344. package/types/createTamagui.d.ts +16 -0
  345. package/types/createTamagui.d.ts.map +1 -0
  346. package/types/createTheme.d.ts +7 -0
  347. package/types/createTheme.d.ts.map +1 -0
  348. package/{dist/packages/core/src → types}/createTokens.d.ts +24 -14
  349. package/types/createTokens.d.ts.map +1 -0
  350. package/{dist/packages/core/src → types}/createVariable.d.ts +6 -1
  351. package/types/createVariable.d.ts.map +1 -0
  352. package/types/defaultComponentState.d.ts +1 -0
  353. package/types/defaultComponentState.d.ts.map +1 -0
  354. package/types/helpers/RNComponents.d.ts +2 -0
  355. package/types/helpers/RNComponents.d.ts.map +1 -0
  356. package/types/helpers/addStylesUsingClassname.d.ts +3 -0
  357. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -0
  358. package/types/helpers/areEqualSets.d.ts +2 -0
  359. package/types/helpers/areEqualSets.d.ts.map +1 -0
  360. package/{dist/packages/core/src → types}/helpers/createMediaStyle.d.ts +1 -1
  361. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  362. package/types/helpers/createPropMapper.d.ts +4 -0
  363. package/types/helpers/createPropMapper.d.ts.map +1 -0
  364. package/types/helpers/createShallowUpdate.d.ts +4 -0
  365. package/types/helpers/createShallowUpdate.d.ts.map +1 -0
  366. package/types/helpers/createTamaguiProvider.d.ts +7 -0
  367. package/types/helpers/createTamaguiProvider.d.ts.map +1 -0
  368. package/types/helpers/extendStaticConfig.d.ts +4 -0
  369. package/types/helpers/extendStaticConfig.d.ts.map +1 -0
  370. package/{dist/packages/core/src → types}/helpers/fixNativeShadow.d.ts +0 -0
  371. package/types/helpers/fixNativeShadow.d.ts.map +1 -0
  372. package/types/helpers/fixNativeShadow.native.d.ts +2 -0
  373. package/types/helpers/fixNativeShadow.native.d.ts.map +1 -0
  374. package/types/helpers/getExpandedShorthands.d.ts +3 -0
  375. package/types/helpers/getExpandedShorthands.d.ts.map +1 -0
  376. package/types/helpers/getSplitStyles.d.ts +16 -0
  377. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  378. package/types/helpers/getStylesAtomic.d.ts +27 -0
  379. package/types/helpers/getStylesAtomic.d.ts.map +1 -0
  380. package/{dist/packages/core/src → types}/helpers/getStylesAtomic.native.d.ts +0 -0
  381. package/types/helpers/getStylesAtomic.native.d.ts.map +1 -0
  382. package/types/helpers/insertStyleRule.d.ts +7 -0
  383. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  384. package/types/helpers/isObj.d.ts +2 -0
  385. package/types/helpers/isObj.d.ts.map +1 -0
  386. package/types/helpers/isTamaguiElement.d.ts +3 -0
  387. package/types/helpers/isTamaguiElement.d.ts.map +1 -0
  388. package/{dist/packages/core/src → types}/helpers/matchMedia.d.ts +0 -0
  389. package/types/helpers/matchMedia.d.ts.map +1 -0
  390. package/{dist/packages/core/src → types}/helpers/matchMedia.native.d.ts +0 -0
  391. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  392. package/types/helpers/themeable.d.ts +10 -0
  393. package/types/helpers/themeable.d.ts.map +1 -0
  394. package/types/helpers/validate.d.ts +4 -0
  395. package/types/helpers/validate.d.ts.map +1 -0
  396. package/types/helpers/withStaticProperties.d.ts +2 -0
  397. package/types/helpers/withStaticProperties.d.ts.map +1 -0
  398. package/types/helpers/wrapThemeManagerContext.d.ts +3 -0
  399. package/types/helpers/wrapThemeManagerContext.d.ts.map +1 -0
  400. package/{dist/packages/core/src → types}/hooks/useConstant.d.ts +0 -0
  401. package/types/hooks/useConstant.d.ts.map +1 -0
  402. package/types/hooks/useFeatures.d.ts +18 -0
  403. package/types/hooks/useFeatures.d.ts.map +1 -0
  404. package/types/hooks/useIsMounted.d.ts +3 -0
  405. package/types/hooks/useIsMounted.d.ts.map +1 -0
  406. package/types/hooks/useIsTouchDevice.d.ts +2 -0
  407. package/types/hooks/useIsTouchDevice.d.ts.map +1 -0
  408. package/{dist/packages/core/src → types}/hooks/useMedia.d.ts +0 -0
  409. package/types/hooks/useMedia.d.ts.map +1 -0
  410. package/{dist/packages/core/src → types}/hooks/usePressable.d.ts +0 -0
  411. package/types/hooks/usePressable.d.ts.map +1 -0
  412. package/types/hooks/useTheme.d.ts +36 -0
  413. package/types/hooks/useTheme.d.ts.map +1 -0
  414. package/types/hooks/useUnmountEffect.d.ts +2 -0
  415. package/types/hooks/useUnmountEffect.d.ts.map +1 -0
  416. package/{dist/packages/core/src → types}/index.d.ts +16 -3
  417. package/types/index.d.ts.map +1 -0
  418. package/types/spacedChildren.d.ts +9 -0
  419. package/types/spacedChildren.d.ts.map +1 -0
  420. package/{dist/packages/core/src → types}/static.d.ts +4 -2
  421. package/types/static.d.ts.map +1 -0
  422. package/types/styled.d.ts +7 -0
  423. package/types/styled.d.ts.map +1 -0
  424. package/types/types-rnw.d.ts +74 -0
  425. package/types/types-rnw.d.ts.map +1 -0
  426. package/types/types.d.ts +381 -0
  427. package/types/types.d.ts.map +1 -0
  428. package/types/views/Stack.d.ts +4 -0
  429. package/types/views/Stack.d.ts.map +1 -0
  430. package/types/views/Text.d.ts +4 -0
  431. package/types/views/Text.d.ts.map +1 -0
  432. package/types/views/TextAncestorContext.d.ts +5 -0
  433. package/types/views/TextAncestorContext.d.ts.map +1 -0
  434. package/types/views/Theme.d.ts +11 -0
  435. package/types/views/Theme.d.ts.map +1 -0
  436. package/{dist/packages/core/src → types}/views/ThemeInverse.d.ts +0 -0
  437. package/types/views/ThemeInverse.d.ts.map +1 -0
  438. package/{dist/packages/core/src → types}/views/ThemeProvider.d.ts +0 -1
  439. package/types/views/ThemeProvider.d.ts.map +1 -0
  440. package/types/views/ThemeReset.d.ts +4 -0
  441. package/types/views/ThemeReset.d.ts.map +1 -0
  442. package/dist/constants/constants.js.map +0 -7
  443. package/dist/constants/platform.js.map +0 -7
  444. package/dist/constants/rnw.js.map +0 -7
  445. package/dist/constants/styleConstants.js +0 -46
  446. package/dist/constants/styleConstants.js.map +0 -7
  447. package/dist/createComponent.js +0 -459
  448. package/dist/createComponent.js.map +0 -7
  449. package/dist/createTamagui.js +0 -166
  450. package/dist/createTamagui.js.map +0 -7
  451. package/dist/createTheme.js +0 -20
  452. package/dist/createTheme.js.map +0 -7
  453. package/dist/createVariable.js +0 -25
  454. package/dist/createVariable.js.map +0 -7
  455. package/dist/helpers/addStylesUsingClassname.js.map +0 -7
  456. package/dist/helpers/createMediaStyle.js.map +0 -7
  457. package/dist/helpers/createPropMapper.js +0 -153
  458. package/dist/helpers/createPropMapper.js.map +0 -7
  459. package/dist/helpers/createTamaguiProvider.js +0 -25
  460. package/dist/helpers/createTamaguiProvider.js.map +0 -7
  461. package/dist/helpers/extendStaticConfig.js.map +0 -7
  462. package/dist/helpers/fixNativeShadow.native.js +0 -30
  463. package/dist/helpers/fixNativeShadow.native.js.map +0 -7
  464. package/dist/helpers/getSplitStyles.js +0 -148
  465. package/dist/helpers/getSplitStyles.js.map +0 -7
  466. package/dist/helpers/getStylesAtomic.js +0 -83
  467. package/dist/helpers/getStylesAtomic.js.map +0 -7
  468. package/dist/helpers/insertStyleRule.js +0 -24
  469. package/dist/helpers/insertStyleRule.js.map +0 -7
  470. package/dist/helpers/isComponent.js +0 -10
  471. package/dist/helpers/isComponent.js.map +0 -7
  472. package/dist/helpers/isTamaguiComponent.js +0 -10
  473. package/dist/helpers/isTamaguiComponent.js.map +0 -7
  474. package/dist/helpers/matchMedia.js.map +0 -7
  475. package/dist/helpers/matchMedia.native.js.map +0 -7
  476. package/dist/helpers/pseudos.js +0 -1
  477. package/dist/helpers/themeable.js.map +0 -7
  478. package/dist/helpers/validate.js +0 -60
  479. package/dist/helpers/validate.js.map +0 -7
  480. package/dist/helpers/validateConfig.js +0 -46
  481. package/dist/helpers/validateConfig.js.map +0 -7
  482. package/dist/helpers/validateTokens.js +0 -29
  483. package/dist/helpers/validateTokens.js.map +0 -7
  484. package/dist/hooks/useFeatures.js +0 -75
  485. package/dist/hooks/useFeatures.js.map +0 -7
  486. package/dist/hooks/useForceUpdate.js +0 -28
  487. package/dist/hooks/useForceUpdate.js.map +0 -7
  488. package/dist/hooks/useMedia.js.map +0 -7
  489. package/dist/hooks/useTheme.js +0 -93
  490. package/dist/hooks/useTheme.js.map +0 -7
  491. package/dist/index.cjs +0 -2211
  492. package/dist/index.cjs.map +0 -7
  493. package/dist/index.js.map +0 -7
  494. package/dist/packages/core/src/constants/constants.d.ts.map +0 -1
  495. package/dist/packages/core/src/constants/platform.d.ts.map +0 -1
  496. package/dist/packages/core/src/constants/pseudos.d.ts +0 -15
  497. package/dist/packages/core/src/constants/pseudos.d.ts.map +0 -1
  498. package/dist/packages/core/src/constants/rnw.d.ts.map +0 -1
  499. package/dist/packages/core/src/createComponent.d.ts +0 -16
  500. package/dist/packages/core/src/createComponent.d.ts.map +0 -1
  501. package/dist/packages/core/src/createShorthands.d.ts.map +0 -1
  502. package/dist/packages/core/src/createTamagui.d.ts +0 -37
  503. package/dist/packages/core/src/createTamagui.d.ts.map +0 -1
  504. package/dist/packages/core/src/createTheme.d.ts +0 -5
  505. package/dist/packages/core/src/createTheme.d.ts.map +0 -1
  506. package/dist/packages/core/src/createTokens.d.ts.map +0 -1
  507. package/dist/packages/core/src/createVariable.d.ts.map +0 -1
  508. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts +0 -2
  509. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts.map +0 -1
  510. package/dist/packages/core/src/helpers/createMediaStyle.d.ts.map +0 -1
  511. package/dist/packages/core/src/helpers/createTamaguiProvider.d.ts +0 -5
  512. package/dist/packages/core/src/helpers/createTamaguiProvider.d.ts.map +0 -1
  513. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts +0 -5
  514. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts.map +0 -1
  515. package/dist/packages/core/src/helpers/fixNativeShadow.d.ts.map +0 -1
  516. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts +0 -2
  517. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts.map +0 -1
  518. package/dist/packages/core/src/helpers/getSplitStyles.d.ts +0 -15
  519. package/dist/packages/core/src/helpers/getSplitStyles.d.ts.map +0 -1
  520. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts +0 -3
  521. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts.map +0 -1
  522. package/dist/packages/core/src/helpers/getStylesAtomic.native.d.ts.map +0 -1
  523. package/dist/packages/core/src/helpers/insertStyleRule.d.ts +0 -2
  524. package/dist/packages/core/src/helpers/insertStyleRule.d.ts.map +0 -1
  525. package/dist/packages/core/src/helpers/matchMedia.d.ts.map +0 -1
  526. package/dist/packages/core/src/helpers/matchMedia.native.d.ts.map +0 -1
  527. package/dist/packages/core/src/helpers/themeable.d.ts +0 -10
  528. package/dist/packages/core/src/helpers/themeable.d.ts.map +0 -1
  529. package/dist/packages/core/src/hooks/useConstant.d.ts.map +0 -1
  530. package/dist/packages/core/src/hooks/useFeatures.d.ts +0 -5
  531. package/dist/packages/core/src/hooks/useFeatures.d.ts.map +0 -1
  532. package/dist/packages/core/src/hooks/useForceUpdate.d.ts +0 -2
  533. package/dist/packages/core/src/hooks/useForceUpdate.d.ts.map +0 -1
  534. package/dist/packages/core/src/hooks/useMedia.d.ts.map +0 -1
  535. package/dist/packages/core/src/hooks/usePressable.d.ts.map +0 -1
  536. package/dist/packages/core/src/hooks/useTheme.d.ts +0 -18
  537. package/dist/packages/core/src/hooks/useTheme.d.ts.map +0 -1
  538. package/dist/packages/core/src/index.d.ts.map +0 -1
  539. package/dist/packages/core/src/static/postProcessStyles.d.ts +0 -7
  540. package/dist/packages/core/src/static/postProcessStyles.d.ts.map +0 -1
  541. package/dist/packages/core/src/static.d.ts.map +0 -1
  542. package/dist/packages/core/src/styled.d.ts +0 -16
  543. package/dist/packages/core/src/styled.d.ts.map +0 -1
  544. package/dist/packages/core/src/types.d.ts +0 -305
  545. package/dist/packages/core/src/types.d.ts.map +0 -1
  546. package/dist/packages/core/src/views/Animated.d.ts +0 -15
  547. package/dist/packages/core/src/views/Animated.d.ts.map +0 -1
  548. package/dist/packages/core/src/views/Stack.d.ts +0 -3
  549. package/dist/packages/core/src/views/Stack.d.ts.map +0 -1
  550. package/dist/packages/core/src/views/Text.d.ts +0 -3
  551. package/dist/packages/core/src/views/Text.d.ts.map +0 -1
  552. package/dist/packages/core/src/views/TextAncestorContext.d.ts +0 -3
  553. package/dist/packages/core/src/views/TextAncestorContext.d.ts.map +0 -1
  554. package/dist/packages/core/src/views/Theme.d.ts +0 -8
  555. package/dist/packages/core/src/views/Theme.d.ts.map +0 -1
  556. package/dist/packages/core/src/views/ThemeContext.d.ts +0 -18
  557. package/dist/packages/core/src/views/ThemeContext.d.ts.map +0 -1
  558. package/dist/packages/core/src/views/ThemeInverse.d.ts.map +0 -1
  559. package/dist/packages/core/src/views/ThemeManagerContext.d.ts +0 -15
  560. package/dist/packages/core/src/views/ThemeManagerContext.d.ts.map +0 -1
  561. package/dist/packages/core/src/views/ThemeProvider.d.ts.map +0 -1
  562. package/dist/packages/helpers/src/AllRules.d.ts +0 -3
  563. package/dist/packages/helpers/src/AllRules.d.ts.map +0 -1
  564. package/dist/packages/helpers/src/concatClassName.d.ts +0 -2
  565. package/dist/packages/helpers/src/concatClassName.d.ts.map +0 -1
  566. package/dist/packages/helpers/src/index.d.ts +0 -5
  567. package/dist/packages/helpers/src/index.d.ts.map +0 -1
  568. package/dist/packages/helpers/src/types.d.ts +0 -8
  569. package/dist/packages/helpers/src/types.d.ts.map +0 -1
  570. package/dist/packages/helpers/src/validStyleProps.d.ts +0 -475
  571. package/dist/packages/helpers/src/validStyleProps.d.ts.map +0 -1
  572. package/dist/static/postProcessStyles.js +0 -18
  573. package/dist/static/postProcessStyles.js.map +0 -7
  574. package/dist/styled.js +0 -21
  575. package/dist/styled.js.map +0 -7
  576. package/dist/views/Animated.js +0 -79
  577. package/dist/views/Animated.js.map +0 -7
  578. package/dist/views/SafeAreaProvider.js +0 -30
  579. package/dist/views/SafeAreaProvider.js.map +0 -7
  580. package/dist/views/Stack.js.map +0 -7
  581. package/dist/views/Text.js.map +0 -7
  582. package/dist/views/TextAncestorContext.js +0 -18
  583. package/dist/views/TextAncestorContext.js.map +0 -7
  584. package/dist/views/Theme.js +0 -65
  585. package/dist/views/Theme.js.map +0 -7
  586. package/dist/views/ThemeContext.js.map +0 -7
  587. package/dist/views/ThemeManagerContext.js +0 -61
  588. package/dist/views/ThemeManagerContext.js.map +0 -7
  589. package/dist/views/ThemeProvider.js +0 -45
  590. package/dist/views/ThemeProvider.js.map +0 -7
  591. package/src/constants/constants.ts +0 -12
  592. package/src/constants/platform.ts +0 -15
  593. package/src/constants/pseudos.ts +0 -14
  594. package/src/constants/rnw.tsx +0 -20
  595. package/src/createComponent.tsx +0 -608
  596. package/src/createFont.ts +0 -31
  597. package/src/createShorthands.ts +0 -5
  598. package/src/createTamagui.ts +0 -215
  599. package/src/createTheme.ts +0 -19
  600. package/src/createTokens.ts +0 -88
  601. package/src/createVariable.ts +0 -26
  602. package/src/helpers/addStylesUsingClassname.tsx +0 -60
  603. package/src/helpers/createMediaStyle.ts +0 -46
  604. package/src/helpers/createPropMapper.ts +0 -184
  605. package/src/helpers/createTamaguiProvider.tsx +0 -22
  606. package/src/helpers/extendStaticConfig.ts +0 -68
  607. package/src/helpers/fixNativeShadow.native.tsx +0 -27
  608. package/src/helpers/fixNativeShadow.tsx +0 -2
  609. package/src/helpers/getSplitStyles.tsx +0 -197
  610. package/src/helpers/getStylesAtomic.native.ts +0 -3
  611. package/src/helpers/getStylesAtomic.ts +0 -103
  612. package/src/helpers/insertStyleRule.tsx +0 -18
  613. package/src/helpers/isObj.ts +0 -1
  614. package/src/helpers/isTamaguiElement.tsx +0 -5
  615. package/src/helpers/matchMedia.native.ts +0 -3
  616. package/src/helpers/matchMedia.ts +0 -9
  617. package/src/helpers/themeable.tsx +0 -42
  618. package/src/helpers/validate.ts +0 -59
  619. package/src/hooks/useConstant.tsx +0 -10
  620. package/src/hooks/useFeatures.tsx +0 -78
  621. package/src/hooks/useMedia.tsx +0 -194
  622. package/src/hooks/usePressable.tsx +0 -9
  623. package/src/hooks/useTheme.tsx +0 -107
  624. package/src/index.ts +0 -32
  625. package/src/static/postProcessStyles.tsx +0 -20
  626. package/src/static.ts +0 -22
  627. package/src/styled.ts +0 -82
  628. package/src/types.tsx +0 -562
  629. package/src/views/Animated.tsx +0 -121
  630. package/src/views/Stack.tsx +0 -21
  631. package/src/views/Text.tsx +0 -66
  632. package/src/views/TextAncestorContext.tsx +0 -12
  633. package/src/views/Theme.tsx +0 -90
  634. package/src/views/ThemeContext.tsx +0 -5
  635. package/src/views/ThemeInverse.tsx +0 -22
  636. package/src/views/ThemeManagerContext.tsx +0 -60
  637. package/src/views/ThemeProvider.tsx +0 -52
  638. package/types.d.ts +0 -556
@@ -0,0 +1,244 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import {
4
+ mergeTransform,
5
+ stylePropsText,
6
+ stylePropsTransform,
7
+ validPseudoKeys,
8
+ validStyles
9
+ } from "@tamagui/helpers";
10
+ import { isWeb } from "../constants/platform";
11
+ import { mediaQueryConfig, mediaState } from "../hooks/useMedia";
12
+ import { createMediaStyle } from "./createMediaStyle";
13
+ import { fixNativeShadow } from "./fixNativeShadow";
14
+ import { getStylesAtomic } from "./getStylesAtomic";
15
+ import { insertStyleRule, insertedTransforms, updateInserted } from "./insertStyleRule";
16
+ const skipKeys = {
17
+ animation: true,
18
+ animated: true,
19
+ children: true,
20
+ key: true,
21
+ ref: true
22
+ };
23
+ function normalizeStyleObject(style) {
24
+ var _a, _b;
25
+ if (typeof style.flex === "number") {
26
+ const val = style.flex;
27
+ delete style.flex;
28
+ style.flexGrow = (_a = style.flexGrow) != null ? _a : val;
29
+ style.flexShrink = (_b = style.flexShrink) != null ? _b : 1;
30
+ }
31
+ if (!isWeb) {
32
+ fixNativeShadow(style);
33
+ }
34
+ }
35
+ __name(normalizeStyleObject, "normalizeStyleObject");
36
+ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state, defaultClassNames) => {
37
+ const validStyleProps = staticConfig.isText ? stylePropsText : validStyles;
38
+ const viewProps = {};
39
+ const style = {};
40
+ const classNames = {
41
+ ...defaultClassNames
42
+ };
43
+ const pseudos = {};
44
+ const medias = {};
45
+ let cur = null;
46
+ let transforms = {};
47
+ function mergeClassName(key, val) {
48
+ if (!val)
49
+ return;
50
+ if (val.startsWith("_transform-")) {
51
+ const isMediaOrPseudo = key !== "transform";
52
+ const isMedia = isMediaOrPseudo && key[11] === "_";
53
+ const isPsuedo = isMediaOrPseudo && key[11] === "0";
54
+ const namespace = isMedia ? key.split("_")[2] : isPsuedo ? key.split("-")[1] : "transform";
55
+ let transform = insertedTransforms[val];
56
+ if (!transform) {
57
+ updateInserted();
58
+ }
59
+ transform = insertedTransforms[val];
60
+ if (!transform || transform === "undefined") {
61
+ console.log("NO TRANSFORM", { key, val, transform });
62
+ return;
63
+ }
64
+ transforms[namespace] = transforms[namespace] || ["", ""];
65
+ transforms[namespace][0] += val.replace("_transform", "");
66
+ transforms[namespace][1] += transform;
67
+ } else {
68
+ classNames[key] = val;
69
+ }
70
+ }
71
+ __name(mergeClassName, "mergeClassName");
72
+ function push() {
73
+ if (!cur)
74
+ return;
75
+ normalizeStyleObject(cur);
76
+ if (isWeb && !state.noClassNames) {
77
+ const atomic = getStylesAtomic(cur);
78
+ for (const atomicStyle of atomic) {
79
+ if (!state.noClassNames) {
80
+ mergeClassName(atomicStyle.property, atomicStyle.identifier);
81
+ insertStyleRule(atomicStyle.identifier, atomicStyle.rules[0]);
82
+ } else {
83
+ style[atomicStyle.property] = atomicStyle.value;
84
+ }
85
+ }
86
+ }
87
+ if (!isWeb || state.noClassNames || state.resolveVariablesAs === "value" || state.resolveVariablesAs === "both") {
88
+ for (const key in cur) {
89
+ if (key in stylePropsTransform) {
90
+ mergeTransform(style, key, cur[key]);
91
+ } else {
92
+ style[key] = cur[key];
93
+ }
94
+ }
95
+ }
96
+ cur = null;
97
+ }
98
+ __name(push, "push");
99
+ for (const keyInit in props) {
100
+ const valInit = props[keyInit];
101
+ if (skipKeys[keyInit]) {
102
+ viewProps[keyInit] = valInit;
103
+ continue;
104
+ }
105
+ if (keyInit === "className" || validStyleProps[keyInit] && valInit && valInit[0] === "_") {
106
+ push();
107
+ mergeClassName(keyInit, valInit);
108
+ if (cur) {
109
+ if (cur[keyInit])
110
+ console.warn("just want to see how used");
111
+ delete cur[keyInit];
112
+ }
113
+ continue;
114
+ }
115
+ let isMedia = keyInit[0] === "$";
116
+ let isPseudo = validPseudoKeys[keyInit];
117
+ const out = isMedia || isPseudo ? true : staticConfig.propMapper(keyInit, valInit, theme, state.fallbackProps || props, state.resolveVariablesAs);
118
+ const expanded = out === true || !out ? [[keyInit, valInit]] : Object.entries(out);
119
+ if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
120
+ console.log("split style", keyInit, expanded);
121
+ }
122
+ for (const [key, val] of expanded) {
123
+ if (val === void 0) {
124
+ continue;
125
+ }
126
+ if (key !== "target" && val && val[0] === "_") {
127
+ mergeClassName(key, val);
128
+ continue;
129
+ }
130
+ isMedia = key[0] === "$";
131
+ isPseudo = validPseudoKeys[key];
132
+ if (staticConfig.deoptProps && staticConfig.deoptProps.has(key) || staticConfig.inlineProps && staticConfig.inlineProps.has(key)) {
133
+ viewProps[key] = val;
134
+ }
135
+ if (isPseudo) {
136
+ if (!val)
137
+ continue;
138
+ if (key === "enterStyle" && state.mounted) {
139
+ continue;
140
+ }
141
+ pseudos[key] = pseudos[key] || {};
142
+ pseudos[key] = getSubStyle(val, staticConfig, theme, props, state, true);
143
+ if (isWeb && !state.noClassNames) {
144
+ const pseudoStyles = getStylesAtomic({ [key]: pseudos[key] });
145
+ for (const style2 of pseudoStyles) {
146
+ mergeClassName(`${style2.property}-${key}`, style2.identifier);
147
+ insertStyleRule(style2.identifier, style2.rules[0]);
148
+ }
149
+ }
150
+ continue;
151
+ }
152
+ if (isMedia) {
153
+ const mediaKey = key;
154
+ if (!mediaQueryConfig[mediaKey.slice(1)]) {
155
+ viewProps[key] = val;
156
+ continue;
157
+ }
158
+ const mediaStyle = getSubStyle(val, staticConfig, theme, props, state, true);
159
+ const shouldDoClasses = isWeb && !state.noClassNames;
160
+ if (shouldDoClasses) {
161
+ const mediaStyles = getStylesAtomic(mediaStyle);
162
+ for (const style2 of mediaStyles) {
163
+ const out2 = createMediaStyle(style2, mediaKey.slice(1), mediaQueryConfig);
164
+ mergeClassName(`${out2.identifier}-${mediaKey}`, out2.identifier);
165
+ insertStyleRule(out2.identifier, out2.styleRule);
166
+ }
167
+ } else {
168
+ if (mediaState[mediaKey]) {
169
+ push();
170
+ if (process.env.NODE_ENV === "development" && props["debug"]) {
171
+ console.log("apply media style", mediaKey, mediaState);
172
+ }
173
+ Object.assign(shouldDoClasses ? medias : style, mediaStyle);
174
+ }
175
+ }
176
+ continue;
177
+ }
178
+ if (key === "style" || key.startsWith("_style")) {
179
+ push();
180
+ Object.assign(style, val);
181
+ continue;
182
+ }
183
+ if (!isWeb && key === "pointerEvents") {
184
+ viewProps[key] = val;
185
+ continue;
186
+ }
187
+ if (validStyleProps[key]) {
188
+ cur = cur || {};
189
+ cur[key] = val;
190
+ continue;
191
+ }
192
+ if (!staticConfig.variants || !(key in staticConfig.variants)) {
193
+ if (key !== "animation" && key !== "debug") {
194
+ push();
195
+ viewProps[key] = val;
196
+ }
197
+ }
198
+ }
199
+ }
200
+ push();
201
+ if (transforms) {
202
+ for (const namespace in transforms) {
203
+ const [hash, val] = transforms[namespace];
204
+ const identifier = `_transform${hash}`;
205
+ if (!insertedTransforms[identifier]) {
206
+ const rule = `.${identifier} { transform: ${val}; }`;
207
+ insertStyleRule(identifier, rule);
208
+ }
209
+ classNames[namespace] = identifier;
210
+ }
211
+ }
212
+ if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
213
+ console.log("out", { style, pseudos, medias, classNames, viewProps });
214
+ }
215
+ return {
216
+ viewProps,
217
+ style,
218
+ medias,
219
+ pseudos,
220
+ classNames
221
+ };
222
+ }, "getSplitStyles");
223
+ const getSubStyle = /* @__PURE__ */ __name((styleIn, staticConfig, theme, props, state, avoidDefaultProps) => {
224
+ const styleOut = {};
225
+ for (const key in styleIn) {
226
+ const val = styleIn[key];
227
+ const out = staticConfig.propMapper(key, val, theme, state.fallbackProps || props, state.resolveVariablesAs, avoidDefaultProps);
228
+ const expanded = out === true || !out ? [[key, val]] : Object.entries(out);
229
+ for (const [skey, sval] of expanded) {
230
+ if (skey in stylePropsTransform) {
231
+ mergeTransform(styleOut, skey, sval);
232
+ } else {
233
+ styleOut[skey] = sval;
234
+ }
235
+ }
236
+ }
237
+ normalizeStyleObject(styleOut);
238
+ return styleOut;
239
+ }, "getSubStyle");
240
+ export {
241
+ getSplitStyles,
242
+ getSubStyle
243
+ };
244
+ //# sourceMappingURL=getSplitStyles.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getSplitStyles.tsx"],
4
+ "sourcesContent": ["import {\n mergeTransform,\n stylePropsText,\n stylePropsTransform,\n validPseudoKeys,\n validStyles,\n} from '@tamagui/helpers'\nimport { ViewStyle } from 'react-native'\n\nimport { isWeb } from '../constants/platform'\nimport { mediaQueryConfig, mediaState } from '../hooks/useMedia'\nimport {\n MediaKeys,\n MediaQueryKey,\n PseudoStyles,\n PsuedoPropKeys,\n SplitStyleState,\n StackProps,\n StaticConfigParsed,\n ThemeObject,\n} from '../types'\nimport { createMediaStyle } from './createMediaStyle'\nimport { ResolveVariableTypes } from './createPropMapper'\nimport { fixNativeShadow } from './fixNativeShadow'\nimport { ViewStyleWithPseudos, getStylesAtomic } from './getStylesAtomic'\nimport { insertStyleRule, insertedTransforms, updateInserted } from './insertStyleRule'\n\nexport type SplitStyles = ReturnType<typeof getSplitStyles>\n\nconst skipKeys = {\n // could put events in here\n animation: true,\n animated: true,\n children: true,\n key: true,\n ref: true,\n}\n\nexport type ClassNamesObject = Record<string, string>\n\nexport type SplitStyleResult = ReturnType<typeof getSplitStyles>\n\nfunction normalizeStyleObject(style: any) {\n // fix flex to match web\n // see spec for flex shorthand https://developer.mozilla.org/en-US/docs/Web/CSS/flex\n if (typeof style.flex === 'number') {\n const val = style.flex\n delete style.flex\n style.flexGrow = style.flexGrow ?? val\n style.flexShrink = style.flexShrink ?? 1\n }\n\n if (!isWeb) {\n fixNativeShadow(style)\n }\n}\n\ntype TransformNamespaceKey = 'transform' | PsuedoPropKeys | MediaQueryKey\n\n// TODO can make a few of these objects lazy if profiling seems slow\n\nexport const getSplitStyles = (\n props: { [key: string]: any },\n staticConfig: StaticConfigParsed,\n theme: ThemeObject,\n state: SplitStyleState,\n defaultClassNames?: ClassNamesObject | null\n) => {\n const validStyleProps = staticConfig.isText ? stylePropsText : validStyles\n const viewProps: StackProps = {}\n const style: ViewStyle = {}\n const classNames: ClassNamesObject = {\n ...defaultClassNames,\n }\n const pseudos: PseudoStyles = {}\n const medias: Record<MediaKeys, ViewStyle> = {}\n let cur: ViewStyleWithPseudos | null = null\n\n // we need to gather these specific to each media query / pseudo\n // value is [hash, val], so [\"-jnjad-asdnjk\", \"scaleX(1) rotate(10deg)\"]\n let transforms: Record<TransformNamespaceKey, [string, string]> = {}\n\n function mergeClassName(key: string, val: string) {\n if (!val) return\n if (val.startsWith('_transform-')) {\n const isMediaOrPseudo = key !== 'transform'\n const isMedia = isMediaOrPseudo && key[11] === '_'\n const isPsuedo = isMediaOrPseudo && key[11] === '0'\n const namespace: TransformNamespaceKey = isMedia\n ? key.split('_')[2]\n : isPsuedo\n ? key.split('-')[1]\n : 'transform'\n\n let transform = insertedTransforms[val]\n if (!transform) {\n // HMR or loaded a new chunk\n updateInserted()\n }\n transform = insertedTransforms[val]\n if (!transform || transform === 'undefined') {\n console.log('NO TRANSFORM', { key, val, transform })\n return\n }\n transforms[namespace] = transforms[namespace] || ['', '']\n transforms[namespace][0] += val.replace('_transform', '')\n transforms[namespace][1] += transform\n } else {\n classNames[key] = val\n }\n }\n\n function push() {\n if (!cur) return\n normalizeStyleObject(cur)\n\n if (isWeb && !state.noClassNames) {\n const atomic = getStylesAtomic(cur)\n for (const atomicStyle of atomic) {\n if (!state.noClassNames) {\n mergeClassName(atomicStyle.property, atomicStyle.identifier)\n insertStyleRule(atomicStyle.identifier, atomicStyle.rules[0])\n } else {\n style[atomicStyle.property] = atomicStyle.value\n }\n }\n }\n\n if (\n !isWeb ||\n state.noClassNames ||\n state.resolveVariablesAs === 'value' ||\n state.resolveVariablesAs === 'both'\n ) {\n for (const key in cur) {\n if (key in stylePropsTransform) {\n mergeTransform(style, key, cur[key])\n } else {\n style[key] = cur[key]\n }\n }\n }\n\n // reset it for next group of styles\n cur = null\n }\n\n for (const keyInit in props) {\n const valInit = props[keyInit]\n\n if (skipKeys[keyInit]) {\n viewProps[keyInit] = valInit\n continue\n }\n\n if (\n // isPropClassName\n keyInit === 'className' ||\n // isExtractedClassName\n (validStyleProps[keyInit] && valInit && valInit[0] === '_')\n ) {\n push()\n mergeClassName(keyInit, valInit)\n if (cur) {\n if (cur[keyInit]) console.warn('just want to see how used')\n delete cur[keyInit]\n }\n continue\n }\n\n let isMedia = keyInit[0] === '$'\n let isPseudo = validPseudoKeys[keyInit]\n\n const out =\n isMedia || isPseudo\n ? true\n : staticConfig.propMapper(\n keyInit,\n valInit,\n theme,\n state.fallbackProps || props,\n state.resolveVariablesAs\n )\n\n const expanded = out === true || !out ? [[keyInit, valInit]] : Object.entries(out)\n\n if (process.env.NODE_ENV === 'development' && props['debug'] === 'verbose') {\n console.log('split style', keyInit, expanded)\n }\n\n for (const [key, val] of expanded) {\n if (val === undefined) {\n continue\n }\n\n if (key !== 'target' && val && val[0] === '_') {\n mergeClassName(key, val)\n continue\n }\n\n isMedia = key[0] === '$'\n isPseudo = validPseudoKeys[key]\n\n if (\n (staticConfig.deoptProps && staticConfig.deoptProps.has(key)) ||\n (staticConfig.inlineProps && staticConfig.inlineProps.has(key))\n ) {\n viewProps[key] = val\n }\n\n // pseudo\n if (isPseudo) {\n if (!val) continue\n if (key === 'enterStyle' && state.mounted) {\n // once mounted we can ignore enterStyle\n continue\n }\n pseudos[key] = pseudos[key] || {}\n pseudos[key] = getSubStyle(val, staticConfig, theme, props, state, true)\n if (isWeb && !state.noClassNames) {\n const pseudoStyles = getStylesAtomic({ [key]: pseudos[key] })\n for (const style of pseudoStyles) {\n mergeClassName(`${style.property}-${key}`, style.identifier)\n insertStyleRule(style.identifier, style.rules[0])\n }\n }\n continue\n }\n\n // media\n if (isMedia) {\n const mediaKey = key\n\n if (!mediaQueryConfig[mediaKey.slice(1)]) {\n // this isn't a media key, pass through\n viewProps[key] = val\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 // THIS USED TO PROXY BACK TO REGULAR PROPS BUT THAT IS THE WRONG BEHAVIOR\n // we avoid passing in default props for media queries because that would confuse things like SizableText.size:\n const mediaStyle = getSubStyle(val, staticConfig, theme, props, state, true)\n\n const shouldDoClasses = isWeb && !state.noClassNames\n if (shouldDoClasses) {\n const mediaStyles = getStylesAtomic(mediaStyle)\n for (const style of mediaStyles) {\n const out = createMediaStyle(style, mediaKey.slice(1), mediaQueryConfig)\n mergeClassName(`${out.identifier}-${mediaKey}`, out.identifier)\n insertStyleRule(out.identifier, out.styleRule)\n }\n } else {\n if (mediaState[mediaKey]) {\n push()\n if (process.env.NODE_ENV === 'development' && props['debug']) {\n console.log('apply media style', mediaKey, mediaState)\n }\n Object.assign(shouldDoClasses ? medias : style, mediaStyle)\n }\n }\n continue\n }\n\n // TODO\n if (key === 'style' || key.startsWith('_style')) {\n push()\n Object.assign(style, val)\n continue\n }\n\n if (!isWeb && key === 'pointerEvents') {\n viewProps[key] = val\n continue\n }\n\n if (validStyleProps[key]) {\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 if (key !== 'animation' && key !== 'debug') {\n push()\n viewProps[key] = val\n }\n }\n }\n }\n\n push()\n\n if (transforms) {\n for (const namespace in transforms) {\n const [hash, val] = transforms[namespace]\n const identifier = `_transform${hash}`\n if (!insertedTransforms[identifier]) {\n const rule = `.${identifier} { transform: ${val}; }`\n insertStyleRule(identifier, rule)\n }\n classNames[namespace] = identifier\n }\n }\n\n if (process.env.NODE_ENV === 'development' && props['debug'] === 'verbose') {\n console.log('out', { style, pseudos, medias, classNames, viewProps })\n }\n\n return {\n viewProps,\n style,\n medias,\n pseudos,\n classNames,\n }\n}\n\nexport const getSubStyle = (\n styleIn: Object,\n staticConfig: StaticConfigParsed,\n theme: ThemeObject,\n props: any,\n state: SplitStyleState,\n avoidDefaultProps?: boolean\n): ViewStyle => {\n const styleOut: ViewStyle = {}\n for (const key in styleIn) {\n const val = styleIn[key]\n const out = staticConfig.propMapper(\n key,\n val,\n theme,\n state.fallbackProps || props,\n state.resolveVariablesAs,\n avoidDefaultProps\n )\n const expanded = out === true || !out ? [[key, val]] : Object.entries(out)\n for (const [skey, sval] of expanded) {\n if (skey in stylePropsTransform) {\n mergeTransform(styleOut, skey, sval)\n } else {\n styleOut[skey] = sval\n }\n }\n }\n normalizeStyleObject(styleOut)\n return styleOut\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,119 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import {
4
+ invertMapTransformKeys,
5
+ mergeTransform,
6
+ stylePropsTransform
7
+ } from "@tamagui/helpers";
8
+ import { rnw } from "../constants/rnw";
9
+ import { isVariable } from "../createVariable";
10
+ function getStylesAtomic(stylesIn, options = {}) {
11
+ const { hoverStyle, pressStyle, focusStyle, ...base } = stylesIn;
12
+ let res = [];
13
+ for (const [index, style] of [hoverStyle, pressStyle, focusStyle, base].entries()) {
14
+ if (!style || !Object.keys(style).length) {
15
+ continue;
16
+ }
17
+ const pseudo = pseudosOrdered[index];
18
+ for (const skey in style) {
19
+ const val = style[skey];
20
+ if (isVariable(val)) {
21
+ style[skey] = val.toString();
22
+ }
23
+ if (stylePropsTransform[skey]) {
24
+ delete style[skey];
25
+ mergeTransform(style, skey, val);
26
+ }
27
+ }
28
+ res = [...res, ...getAtomicStyle(style, pseudo, options)];
29
+ }
30
+ return res;
31
+ }
32
+ __name(getStylesAtomic, "getStylesAtomic");
33
+ const generateAtomicStyles = /* @__PURE__ */ __name((style) => {
34
+ return rnw.atomic(rnw.createCompileableStyle(rnw.createReactDOMStyle(style)));
35
+ }, "generateAtomicStyles");
36
+ function getAtomicStyle(style, pseudo, options) {
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
+ let atomicStyles = {};
47
+ if (options.splitTransforms && style.transform) {
48
+ let { transform, ...rest } = style;
49
+ Object.assign(atomicStyles, generateAtomicStyles(rest));
50
+ for (const t of transform) {
51
+ const tKey = Object.keys(t)[0];
52
+ const transformProperty = invertMapTransformKeys[tKey] || tKey;
53
+ const out = generateAtomicStyles({ transform: [t] });
54
+ const key = Object.keys(out)[0];
55
+ atomicStyles[key] = {
56
+ ...out[key],
57
+ transformProperty
58
+ };
59
+ console.log("got", JSON.stringify({ t, tKey, out, key, atomicStyles }, null, 2));
60
+ }
61
+ } else {
62
+ atomicStyles = generateAtomicStyles(style);
63
+ }
64
+ return Object.keys(atomicStyles).map((key) => {
65
+ const val = atomicStyles[key];
66
+ const [_, ogProperty, hash] = val.identifier.split("-");
67
+ const psuedoPrefix = pseudo ? `0${pseudo.name}-` : "";
68
+ const identifier = `_${ogProperty}-${psuedoPrefix}${hash}`;
69
+ const className = `.${identifier}`;
70
+ const rules = val.rules.map((rule) => {
71
+ if (pseudo) {
72
+ const psuedoPrefixSelect = [...Array(pseudo.priority)].map(() => ":root").join("") + " ";
73
+ let res = rule.replace(`.${val.identifier}`, `${psuedoPrefixSelect} ${className}`).replace("{", `:${pseudo.name}{`);
74
+ if (pseudo.name === "hover") {
75
+ res = `@media not all and (hover: none) { ${res} }`;
76
+ }
77
+ return res;
78
+ }
79
+ return rule.replace(`.${val.identifier}`, className).replace(importantRegex, "");
80
+ });
81
+ const result = {
82
+ property: val.transformProperty || val.property,
83
+ value: val.value,
84
+ identifier,
85
+ className,
86
+ rules
87
+ };
88
+ return result;
89
+ });
90
+ }
91
+ __name(getAtomicStyle, "getAtomicStyle");
92
+ const importantRegex = /\!important*/g;
93
+ const borderDefaults = {
94
+ borderWidth: "borderStyle",
95
+ borderBottomWidth: "borderBottomStyle",
96
+ borderTopWidth: "borderTopStyle",
97
+ borderLeftWidth: "borderLeftStyle",
98
+ borderRightWidth: "borderRightStyle"
99
+ };
100
+ const pseudos = {
101
+ hoverStyle: {
102
+ name: "hover",
103
+ priority: 1
104
+ },
105
+ pressStyle: {
106
+ name: "active",
107
+ priority: 2
108
+ },
109
+ focusStyle: {
110
+ name: "focus",
111
+ priority: 3
112
+ }
113
+ };
114
+ const pseudosOrdered = Object.values(pseudos);
115
+ export {
116
+ getStylesAtomic,
117
+ pseudos
118
+ };
119
+ //# sourceMappingURL=getStylesAtomic.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getStylesAtomic.ts"],
4
+ "sourcesContent": ["import {\n StyleObject,\n invertMapTransformKeys,\n mergeTransform,\n stylePropsTransform,\n} from '@tamagui/helpers'\nimport { ViewStyle } from 'react-native'\n\nimport { rnw } from '../constants/rnw'\nimport { isVariable } from '../createVariable'\n\n// NOTE: going to refactor and merge getSplitStyles + getAtomicStyles into one\n// before i can do that need to not rely on rnw for generateAtomicStyles\n// will change that to not be external at all and just logically do it in the\n// merged getSplitStyles/getAtomicStyles file in one loop.\n\nexport type ViewStyleWithPseudos = ViewStyle & {\n hoverStyle?: ViewStyle\n pressStyle?: ViewStyle\n focusStyle?: ViewStyle\n}\n\ntype AtomicStyleOptions = {\n splitTransforms?: boolean\n}\n\nexport function getStylesAtomic(stylesIn: ViewStyleWithPseudos, options: AtomicStyleOptions = {}) {\n const { hoverStyle, pressStyle, focusStyle, ...base } = stylesIn\n let res: StyleObject[] = []\n\n // *1 order matched to *0\n for (const [index, style] of [hoverStyle, pressStyle, focusStyle, base].entries()) {\n if (!style || !Object.keys(style).length) {\n continue\n }\n const pseudo = pseudosOrdered[index]\n for (const skey in style) {\n const val = style[skey]\n if (isVariable(val)) {\n style[skey] = val.toString()\n }\n if (stylePropsTransform[skey]) {\n delete style[skey]\n mergeTransform(style, skey, val)\n }\n }\n res = [...res, ...getAtomicStyle(style, pseudo, options)]\n }\n\n return res\n}\n\nconst generateAtomicStyles = (style: ViewStyle) => {\n return rnw.atomic(rnw.createCompileableStyle(rnw.createReactDOMStyle(style))) as {\n [key: string]: StyleObject\n }\n}\n\nfunction getAtomicStyle(\n style: ViewStyle,\n pseudo: { name: string; priority: number } | undefined,\n options: AtomicStyleOptions\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 let atomicStyles: { [key: string]: StyleObject & { transformProperty?: string } } = {}\n\n if (options.splitTransforms && style.transform) {\n let { transform, ...rest } = style\n Object.assign(atomicStyles, generateAtomicStyles(rest))\n for (const t of transform) {\n const tKey = Object.keys(t)[0]\n const transformProperty = invertMapTransformKeys[tKey] || tKey\n const out = generateAtomicStyles({ transform: [t] })\n const key = Object.keys(out)[0]\n atomicStyles[key] = {\n ...out[key],\n transformProperty,\n }\n console.log('got', JSON.stringify({ t, tKey, out, key, atomicStyles }, null, 2))\n }\n } else {\n // TODO we can do this all in one loop likely inside getSplitStyles in existing loop and avoid O(n^3)...\n atomicStyles = generateAtomicStyles(style)\n }\n\n // TODO ... and then also avoid this loop! n^4\n return Object.keys(atomicStyles).map((key) => {\n const val = atomicStyles[key]\n // r-transform-1ns13n\n const [_, ogProperty, hash] = val.identifier.split('-')\n // pseudos have a `--` to be easier to find with concatClassNames\n const psuedoPrefix = pseudo ? `0${pseudo.name}-` : ''\n const identifier = `_${ogProperty}-${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 const result: StyleObject = {\n property: val.transformProperty || val.property,\n value: val.value,\n identifier,\n className,\n rules,\n }\n\n return result\n })\n}\n\nconst importantRegex = /\\!important*/g\n\nconst borderDefaults = {\n borderWidth: 'borderStyle',\n borderBottomWidth: 'borderBottomStyle',\n borderTopWidth: 'borderTopStyle',\n borderLeftWidth: 'borderLeftStyle',\n borderRightWidth: 'borderRightStyle',\n}\n\n// *0 order matches to *1\nexport const pseudos = {\n hoverStyle: {\n name: 'hover',\n priority: 1,\n },\n pressStyle: {\n name: 'active',\n priority: 2,\n },\n focusStyle: {\n name: 'focus',\n priority: 3,\n },\n}\n\nconst pseudosOrdered = Object.values(pseudos)\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/helpers/getStylesAtomic.native.ts"],
3
+ "sources": ["../../../src/helpers/getStylesAtomic.native.ts"],
4
4
  "sourcesContent": ["export function getStylesAtomic() {\n console.warn('no-op native')\n}\n"],
5
- "mappings": ";;AAAO,2BAA2B;AAChC,UAAQ,KAAK;AAAA;AADC;",
5
+ "mappings": ";;AAAO,2BAA2B;AAChC,UAAQ,KAAK,cAAc;AAC7B;AAFgB;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,90 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const allSelectors = {};
4
+ const insertedSelectors = {};
5
+ const insertedTransforms = {};
6
+ const getAllSelectors = /* @__PURE__ */ __name(() => allSelectors, "getAllSelectors");
7
+ const getInsertedRules = /* @__PURE__ */ __name(() => Object.values(insertedSelectors), "getInsertedRules");
8
+ const getAllTransforms = /* @__PURE__ */ __name(() => insertedTransforms, "getAllTransforms");
9
+ function addTransform(identifier, rule) {
10
+ const s = rule.indexOf("transform:");
11
+ if (s === -1) {
12
+ console.error(`not a transform ${identifier} ${rule}`);
13
+ return;
14
+ }
15
+ const startI = s + "transform:".length;
16
+ const endI = rule.indexOf(";");
17
+ const value = rule.slice(startI, endI);
18
+ console.log("add", identifier, value);
19
+ insertedTransforms[identifier] = value;
20
+ }
21
+ __name(addTransform, "addTransform");
22
+ let hasInsertedSinceUpdate = true;
23
+ const isClient = typeof document !== "undefined";
24
+ function updateInserted() {
25
+ if (!isClient) {
26
+ return;
27
+ }
28
+ if (!hasInsertedSinceUpdate) {
29
+ console.warn("hasnt inserted since");
30
+ return;
31
+ }
32
+ const sheets = document.styleSheets;
33
+ if (!sheets)
34
+ return;
35
+ for (let i = 0; i < sheets.length; i++) {
36
+ const rules = sheets[i].cssRules;
37
+ const firstRule = rules[0];
38
+ if (!(firstRule instanceof CSSStyleRule))
39
+ continue;
40
+ const firstSelector = firstRule.selectorText;
41
+ if (!firstSelector)
42
+ continue;
43
+ if (firstSelector === ":root" || firstSelector.startsWith("._")) {
44
+ for (let i2 = 0; i2 < rules.length; i2++) {
45
+ const rule = rules.item(i2);
46
+ if (!(rule instanceof CSSStyleRule))
47
+ continue;
48
+ const identifier = rule.selectorText.slice(1);
49
+ allSelectors[identifier] = process.env.NODE_ENV === "development" ? rule.cssText : true;
50
+ if (identifier.startsWith("_transform")) {
51
+ addTransform(identifier, rule.cssText);
52
+ }
53
+ }
54
+ }
55
+ }
56
+ hasInsertedSinceUpdate = false;
57
+ }
58
+ __name(updateInserted, "updateInserted");
59
+ updateInserted();
60
+ const newRulesStyleTag = typeof document !== "undefined" ? document.head.appendChild(document.createElement("style")) : null;
61
+ function insertStyleRule(identifier, rule) {
62
+ if (allSelectors[identifier]) {
63
+ return;
64
+ }
65
+ hasInsertedSinceUpdate = true;
66
+ if (identifier === "_transform-1abwpjw") {
67
+ console.trace("inserting", identifier, rule);
68
+ }
69
+ insertedSelectors[identifier] = rule;
70
+ allSelectors[identifier] = process.env.NODE_ENV === "development" ? rule : true;
71
+ if (identifier.startsWith("_transform")) {
72
+ addTransform(identifier, rule);
73
+ }
74
+ if (!newRulesStyleTag) {
75
+ return;
76
+ }
77
+ const sheet = newRulesStyleTag.sheet;
78
+ sheet.insertRule(rule, sheet.cssRules.length);
79
+ return identifier;
80
+ }
81
+ __name(insertStyleRule, "insertStyleRule");
82
+ export {
83
+ getAllSelectors,
84
+ getAllTransforms,
85
+ getInsertedRules,
86
+ insertStyleRule,
87
+ insertedTransforms,
88
+ updateInserted
89
+ };
90
+ //# sourceMappingURL=insertStyleRule.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/insertStyleRule.tsx"],
4
+ "sourcesContent": ["// this needs to check if its inserted already? 99% of the time it is\n// this should avoid re-inserts, but need to test the perf trade-offs\n// i tested with the site itself and the initial insert was trivial\n\nconst allSelectors = {}\nconst insertedSelectors = {}\nexport const insertedTransforms = {}\n\nexport const getAllSelectors = () => allSelectors\nexport const getInsertedRules = () => Object.values(insertedSelectors)\nexport const getAllTransforms = () => insertedTransforms\n\n// keep transforms in map for merging later\nfunction addTransform(identifier: string, rule: string) {\n const s = rule.indexOf('transform:')\n if (s === -1) {\n console.error(`not a transform ${identifier} ${rule}`)\n return\n }\n const startI = s + 'transform:'.length\n const endI = rule.indexOf(';')\n const value = rule.slice(startI, endI)\n console.log('add', identifier, value)\n insertedTransforms[identifier] = value\n}\n\n// gets existing ones (client side)\n// takes ~0.1ms for a fairly large page\n// used now for three things:\n// 1. debugging at dev time\n// 2. avoid duplicate insert styles at runtime\n// 3. used now for merging transforms atomically\nlet hasInsertedSinceUpdate = true\nconst isClient = typeof document !== 'undefined'\nexport function updateInserted() {\n if (!isClient) {\n return\n }\n if (!hasInsertedSinceUpdate) {\n console.warn('hasnt inserted since')\n return\n }\n const sheets = document.styleSheets\n if (!sheets) return\n for (let i = 0; i < sheets.length; i++) {\n const rules = sheets[i].cssRules\n const firstRule = rules[0]\n if (!(firstRule instanceof CSSStyleRule)) continue\n const firstSelector = firstRule.selectorText\n if (!firstSelector) continue\n if (firstSelector === ':root' || firstSelector.startsWith('._')) {\n for (let i = 0; i < rules.length; i++) {\n const rule = rules.item(i)\n if (!(rule instanceof CSSStyleRule)) continue\n const identifier = rule.selectorText.slice(1)\n allSelectors[identifier] = process.env.NODE_ENV === 'development' ? rule.cssText : true\n if (identifier.startsWith('_transform')) {\n addTransform(identifier, rule.cssText)\n }\n }\n }\n }\n hasInsertedSinceUpdate = false\n}\n\nupdateInserted()\n\nconst newRulesStyleTag =\n typeof document !== 'undefined'\n ? document.head.appendChild(document.createElement('style'))\n : null\n\nexport function insertStyleRule(identifier: string, rule: string) {\n if (allSelectors[identifier]) {\n return\n }\n hasInsertedSinceUpdate = true\n if (identifier === '_transform-1abwpjw') {\n console.trace('inserting', identifier, rule)\n }\n insertedSelectors[identifier] = rule\n allSelectors[identifier] = process.env.NODE_ENV === 'development' ? rule : true\n if (identifier.startsWith('_transform')) {\n addTransform(identifier, rule)\n }\n if (!newRulesStyleTag) {\n return\n }\n const sheet = newRulesStyleTag.sheet!\n sheet.insertRule(rule, sheet.cssRules.length)\n return identifier\n}\n"],
5
+ "mappings": ";;AAIA,MAAM,eAAe,CAAC;AACtB,MAAM,oBAAoB,CAAC;AACpB,MAAM,qBAAqB,CAAC;AAE5B,MAAM,kBAAkB,6BAAM,cAAN;AACxB,MAAM,mBAAmB,6BAAM,OAAO,OAAO,iBAAiB,GAArC;AACzB,MAAM,mBAAmB,6BAAM,oBAAN;AAGhC,sBAAsB,YAAoB,MAAc;AACtD,QAAM,IAAI,KAAK,QAAQ,YAAY;AACnC,MAAI,MAAM,IAAI;AACZ,YAAQ,MAAM,mBAAmB,cAAc,MAAM;AACrD;AAAA,EACF;AACA,QAAM,SAAS,IAAI,aAAa;AAChC,QAAM,OAAO,KAAK,QAAQ,GAAG;AAC7B,QAAM,QAAQ,KAAK,MAAM,QAAQ,IAAI;AACrC,UAAQ,IAAI,OAAO,YAAY,KAAK;AACpC,qBAAmB,cAAc;AACnC;AAXS;AAmBT,IAAI,yBAAyB;AAC7B,MAAM,WAAW,OAAO,aAAa;AAC9B,0BAA0B;AAC/B,MAAI,CAAC,UAAU;AACb;AAAA,EACF;AACA,MAAI,CAAC,wBAAwB;AAC3B,YAAQ,KAAK,sBAAsB;AACnC;AAAA,EACF;AACA,QAAM,SAAS,SAAS;AACxB,MAAI,CAAC;AAAQ;AACb,WAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACtC,UAAM,QAAQ,OAAO,GAAG;AACxB,UAAM,YAAY,MAAM;AACxB,QAAI,CAAE,sBAAqB;AAAe;AAC1C,UAAM,gBAAgB,UAAU;AAChC,QAAI,CAAC;AAAe;AACpB,QAAI,kBAAkB,WAAW,cAAc,WAAW,IAAI,GAAG;AAC/D,eAAS,KAAI,GAAG,KAAI,MAAM,QAAQ,MAAK;AACrC,cAAM,OAAO,MAAM,KAAK,EAAC;AACzB,YAAI,CAAE,iBAAgB;AAAe;AACrC,cAAM,aAAa,KAAK,aAAa,MAAM,CAAC;AAC5C,qBAAa,cAAc,QAAQ,IAAI,aAAa,gBAAgB,KAAK,UAAU;AACnF,YAAI,WAAW,WAAW,YAAY,GAAG;AACvC,uBAAa,YAAY,KAAK,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,2BAAyB;AAC3B;AA7BgB;AA+BhB,eAAe;AAEf,MAAM,mBACJ,OAAO,aAAa,cAChB,SAAS,KAAK,YAAY,SAAS,cAAc,OAAO,CAAC,IACzD;AAEC,yBAAyB,YAAoB,MAAc;AAChE,MAAI,aAAa,aAAa;AAC5B;AAAA,EACF;AACA,2BAAyB;AACzB,MAAI,eAAe,sBAAsB;AACvC,YAAQ,MAAM,aAAa,YAAY,IAAI;AAAA,EAC7C;AACA,oBAAkB,cAAc;AAChC,eAAa,cAAc,QAAQ,IAAI,aAAa,gBAAgB,OAAO;AAC3E,MAAI,WAAW,WAAW,YAAY,GAAG;AACvC,iBAAa,YAAY,IAAI;AAAA,EAC/B;AACA,MAAI,CAAC,kBAAkB;AACrB;AAAA,EACF;AACA,QAAM,QAAQ,iBAAiB;AAC/B,QAAM,WAAW,MAAM,MAAM,SAAS,MAAM;AAC5C,SAAO;AACT;AAnBgB;",
6
+ "names": []
7
+ }
File without changes
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/helpers/isObj.ts"],
3
+ "sources": ["../../../src/helpers/isObj.ts"],
4
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;",
5
+ "mappings": ";;AAAO,MAAM,QAAQ,wBAAC,MAAW,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,OAAO,MAAM,UAAnD;",
6
6
  "names": []
7
7
  }
@@ -2,7 +2,8 @@ var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
  import { isValidElement } from "react";
4
4
  const isTamaguiElement = /* @__PURE__ */ __name((child) => {
5
- return isValidElement(child) && !!child.type["staticConfig"]?.parsed;
5
+ var _a;
6
+ return isValidElement(child) && !!((_a = child.type["staticConfig"]) == null ? void 0 : _a.parsed);
6
7
  }, "isTamaguiElement");
7
8
  export {
8
9
  isTamaguiElement
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/helpers/isTamaguiElement.tsx"],
3
+ "sources": ["../../../src/helpers/isTamaguiElement.tsx"],
4
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;AAC3E,SAAO,eAAe,UAAU,CAAC,CAAC,MAAM,KAAK,iBAAiB;AAAA,GADhC;",
5
+ "mappings": ";;AAAA;AAEO,MAAM,mBAAmB,wBAAC,UAA4C;AAF7E;AAGE,SAAO,eAAe,KAAK,KAAK,CAAC,CAAC,aAAM,KAAK,oBAAX,mBAA4B;AAChE,GAFgC;",
6
6
  "names": []
7
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,yEAAyE;AAAA,MACvF;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,IAAC;AAAA,IAClB,SAAS;AAAA,EACX;AACF,GAdC;",
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
  };
@@ -0,0 +1,7 @@
1
+ {
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\n// @ts-ignore\nglobalThis['matchMedia'] = matchMedia\n"],
5
+ "mappings": ";;AAAA;AAEO,MAAM,aAAa,wBAAC,UAAkB,IAAI,eAAe,KAAK,GAA3C;AAG1B,WAAW,gBAAgB;",
6
+ "names": []
7
+ }