@tamagui/web 1.5.7 → 1.5.8

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 (431) hide show
  1. package/dist/cjs/Tamagui.js +3 -3
  2. package/dist/cjs/Tamagui.js.map +2 -2
  3. package/dist/cjs/addTheme.js +3 -3
  4. package/dist/cjs/addTheme.js.map +1 -1
  5. package/dist/cjs/config.js.map +1 -1
  6. package/dist/cjs/contexts/FontLanguageContext.js.map +1 -1
  7. package/dist/cjs/contexts/TextAncestorContext.js.map +2 -2
  8. package/dist/cjs/createComponent.js +17 -17
  9. package/dist/cjs/createComponent.js.map +1 -1
  10. package/dist/cjs/createFont.js.map +1 -1
  11. package/dist/cjs/createShorthands.js.map +1 -1
  12. package/dist/cjs/createTamagui.js +9 -9
  13. package/dist/cjs/createTamagui.js.map +1 -1
  14. package/dist/cjs/createTheme.js.map +1 -1
  15. package/dist/cjs/createTokens.js +1 -1
  16. package/dist/cjs/createTokens.js.map +1 -1
  17. package/dist/cjs/createVariable.js +1 -1
  18. package/dist/cjs/createVariable.js.map +1 -1
  19. package/dist/cjs/createVariables.js +1 -1
  20. package/dist/cjs/createVariables.js.map +1 -1
  21. package/dist/cjs/helpers/ThemeManager.js +6 -4
  22. package/dist/cjs/helpers/ThemeManager.js.map +2 -2
  23. package/dist/cjs/helpers/ThemeManagerContext.js.map +1 -1
  24. package/dist/cjs/helpers/createMediaStyle.js +1 -1
  25. package/dist/cjs/helpers/createMediaStyle.js.map +1 -1
  26. package/dist/cjs/helpers/createPropMapper.js +8 -8
  27. package/dist/cjs/helpers/createPropMapper.js.map +2 -2
  28. package/dist/cjs/helpers/expandStyles.js +4 -4
  29. package/dist/cjs/helpers/expandStyles.js.map +1 -1
  30. package/dist/cjs/helpers/extendStaticConfig.js +2 -2
  31. package/dist/cjs/helpers/extendStaticConfig.js.map +1 -1
  32. package/dist/cjs/helpers/getAnimationDriver.js +1 -1
  33. package/dist/cjs/helpers/getAnimationDriver.js.map +1 -1
  34. package/dist/cjs/helpers/getExpandedShorthands.js +2 -3
  35. package/dist/cjs/helpers/getExpandedShorthands.js.map +2 -2
  36. package/dist/cjs/helpers/getSplitStyles.js +9 -9
  37. package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
  38. package/dist/cjs/helpers/getStylesAtomic.js +3 -3
  39. package/dist/cjs/helpers/getStylesAtomic.js.map +1 -1
  40. package/dist/cjs/helpers/getThemeCSSRules.js +3 -3
  41. package/dist/cjs/helpers/getThemeCSSRules.js.map +1 -1
  42. package/dist/cjs/helpers/getVariantExtras.js +2 -2
  43. package/dist/cjs/helpers/getVariantExtras.js.map +1 -1
  44. package/dist/cjs/helpers/insertStyleRule.js.map +1 -1
  45. package/dist/cjs/helpers/isTamaguiComponent.js.map +1 -1
  46. package/dist/cjs/helpers/isTamaguiElement.js +1 -1
  47. package/dist/cjs/helpers/isTamaguiElement.js.map +1 -1
  48. package/dist/cjs/helpers/matchMedia.js.map +1 -1
  49. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  50. package/dist/cjs/helpers/normalizeShadow.js +1 -1
  51. package/dist/cjs/helpers/normalizeShadow.js.map +1 -1
  52. package/dist/cjs/helpers/normalizeShadow.native.js +2 -2
  53. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
  54. package/dist/cjs/helpers/normalizeValueWithProperty.js +3 -3
  55. package/dist/cjs/helpers/normalizeValueWithProperty.js.map +1 -1
  56. package/dist/cjs/helpers/proxyThemeVariables.js +1 -1
  57. package/dist/cjs/helpers/proxyThemeVariables.js.map +1 -1
  58. package/dist/cjs/helpers/registerCSSVariable.js +1 -1
  59. package/dist/cjs/helpers/registerCSSVariable.js.map +1 -1
  60. package/dist/cjs/helpers/themeable.js +1 -1
  61. package/dist/cjs/helpers/themeable.js.map +1 -1
  62. package/dist/cjs/helpers/themes.js +2 -2
  63. package/dist/cjs/helpers/themes.js.map +1 -1
  64. package/dist/cjs/helpers/useShallowSetState.js.map +2 -2
  65. package/dist/cjs/hooks/useMedia.js +4 -4
  66. package/dist/cjs/hooks/useMedia.js.map +1 -1
  67. package/dist/cjs/hooks/useStyle.js +5 -5
  68. package/dist/cjs/hooks/useStyle.js.map +1 -1
  69. package/dist/cjs/hooks/useTheme.js +7 -7
  70. package/dist/cjs/hooks/useTheme.js.map +1 -1
  71. package/dist/cjs/hooks/useThemeName.js +2 -2
  72. package/dist/cjs/hooks/useThemeName.js.map +1 -1
  73. package/dist/cjs/index.js +49 -49
  74. package/dist/cjs/index.js.map +2 -2
  75. package/dist/cjs/insertFont.js +4 -4
  76. package/dist/cjs/insertFont.js.map +1 -1
  77. package/dist/cjs/setupReactNative.js.map +1 -1
  78. package/dist/cjs/styled.js +2 -2
  79. package/dist/cjs/styled.js.map +1 -1
  80. package/dist/cjs/types.js.map +1 -1
  81. package/dist/cjs/updateTheme.js +2 -2
  82. package/dist/cjs/updateTheme.js.map +1 -1
  83. package/dist/cjs/views/FontLanguage.js.map +1 -1
  84. package/dist/cjs/views/FontLanguage.native.js +1 -1
  85. package/dist/cjs/views/FontLanguage.native.js.map +2 -2
  86. package/dist/cjs/views/Stack.js +2 -2
  87. package/dist/cjs/views/Stack.js.map +1 -1
  88. package/dist/cjs/views/TamaguiProvider.js +4 -4
  89. package/dist/cjs/views/TamaguiProvider.js.map +1 -1
  90. package/dist/cjs/views/Text.js +1 -1
  91. package/dist/cjs/views/Text.js.map +1 -1
  92. package/dist/cjs/views/Theme.js +4 -4
  93. package/dist/cjs/views/Theme.js.map +1 -1
  94. package/dist/cjs/views/ThemeProvider.js +2 -2
  95. package/dist/cjs/views/ThemeProvider.js.map +1 -1
  96. package/dist/esm/Tamagui.js +7 -3
  97. package/dist/esm/Tamagui.js.map +2 -2
  98. package/dist/esm/Tamagui.mjs +7 -3
  99. package/dist/esm/Tamagui.mjs.map +2 -2
  100. package/dist/esm/addTheme.js +3 -3
  101. package/dist/esm/addTheme.js.map +1 -1
  102. package/dist/esm/addTheme.mjs +3 -3
  103. package/dist/esm/addTheme.mjs.map +1 -1
  104. package/dist/esm/config.js.map +1 -1
  105. package/dist/esm/config.mjs.map +1 -1
  106. package/dist/esm/contexts/FontLanguageContext.js.map +1 -1
  107. package/dist/esm/contexts/FontLanguageContext.mjs.map +1 -1
  108. package/dist/esm/contexts/TextAncestorContext.js.map +2 -2
  109. package/dist/esm/contexts/TextAncestorContext.mjs.map +2 -2
  110. package/dist/esm/createComponent.js +17 -17
  111. package/dist/esm/createComponent.js.map +1 -1
  112. package/dist/esm/createComponent.mjs +17 -17
  113. package/dist/esm/createComponent.mjs.map +1 -1
  114. package/dist/esm/createFont.js.map +1 -1
  115. package/dist/esm/createFont.mjs.map +1 -1
  116. package/dist/esm/createShorthands.js.map +1 -1
  117. package/dist/esm/createShorthands.mjs.map +1 -1
  118. package/dist/esm/createTamagui.js +9 -9
  119. package/dist/esm/createTamagui.js.map +1 -1
  120. package/dist/esm/createTamagui.mjs +9 -9
  121. package/dist/esm/createTamagui.mjs.map +1 -1
  122. package/dist/esm/createTheme.js.map +1 -1
  123. package/dist/esm/createTheme.mjs.map +1 -1
  124. package/dist/esm/createTokens.js +1 -1
  125. package/dist/esm/createTokens.js.map +1 -1
  126. package/dist/esm/createTokens.mjs +1 -1
  127. package/dist/esm/createTokens.mjs.map +1 -1
  128. package/dist/esm/createVariable.js +1 -1
  129. package/dist/esm/createVariable.js.map +1 -1
  130. package/dist/esm/createVariable.mjs +1 -1
  131. package/dist/esm/createVariable.mjs.map +1 -1
  132. package/dist/esm/createVariables.js +1 -1
  133. package/dist/esm/createVariables.js.map +1 -1
  134. package/dist/esm/createVariables.mjs +1 -1
  135. package/dist/esm/createVariables.mjs.map +1 -1
  136. package/dist/esm/helpers/ThemeManager.js +6 -4
  137. package/dist/esm/helpers/ThemeManager.js.map +2 -2
  138. package/dist/esm/helpers/ThemeManager.mjs +6 -4
  139. package/dist/esm/helpers/ThemeManager.mjs.map +2 -2
  140. package/dist/esm/helpers/ThemeManagerContext.js.map +1 -1
  141. package/dist/esm/helpers/ThemeManagerContext.mjs.map +1 -1
  142. package/dist/esm/helpers/createMediaStyle.js +1 -1
  143. package/dist/esm/helpers/createMediaStyle.js.map +1 -1
  144. package/dist/esm/helpers/createMediaStyle.mjs +1 -1
  145. package/dist/esm/helpers/createMediaStyle.mjs.map +1 -1
  146. package/dist/esm/helpers/createPropMapper.js +8 -8
  147. package/dist/esm/helpers/createPropMapper.js.map +2 -2
  148. package/dist/esm/helpers/createPropMapper.mjs +8 -8
  149. package/dist/esm/helpers/createPropMapper.mjs.map +2 -2
  150. package/dist/esm/helpers/expandStyles.js +4 -4
  151. package/dist/esm/helpers/expandStyles.js.map +1 -1
  152. package/dist/esm/helpers/expandStyles.mjs +4 -4
  153. package/dist/esm/helpers/expandStyles.mjs.map +1 -1
  154. package/dist/esm/helpers/extendStaticConfig.js +2 -2
  155. package/dist/esm/helpers/extendStaticConfig.js.map +1 -1
  156. package/dist/esm/helpers/extendStaticConfig.mjs +2 -2
  157. package/dist/esm/helpers/extendStaticConfig.mjs.map +1 -1
  158. package/dist/esm/helpers/getAnimationDriver.js +1 -1
  159. package/dist/esm/helpers/getAnimationDriver.js.map +1 -1
  160. package/dist/esm/helpers/getAnimationDriver.mjs +1 -1
  161. package/dist/esm/helpers/getAnimationDriver.mjs.map +1 -1
  162. package/dist/esm/helpers/getExpandedShorthands.js +2 -3
  163. package/dist/esm/helpers/getExpandedShorthands.js.map +2 -2
  164. package/dist/esm/helpers/getExpandedShorthands.mjs +2 -3
  165. package/dist/esm/helpers/getExpandedShorthands.mjs.map +2 -2
  166. package/dist/esm/helpers/getSplitStyles.js +9 -9
  167. package/dist/esm/helpers/getSplitStyles.js.map +2 -2
  168. package/dist/esm/helpers/getSplitStyles.mjs +9 -9
  169. package/dist/esm/helpers/getSplitStyles.mjs.map +2 -2
  170. package/dist/esm/helpers/getStylesAtomic.js +3 -3
  171. package/dist/esm/helpers/getStylesAtomic.js.map +1 -1
  172. package/dist/esm/helpers/getStylesAtomic.mjs +3 -3
  173. package/dist/esm/helpers/getStylesAtomic.mjs.map +1 -1
  174. package/dist/esm/helpers/getThemeCSSRules.js +3 -3
  175. package/dist/esm/helpers/getThemeCSSRules.js.map +1 -1
  176. package/dist/esm/helpers/getThemeCSSRules.mjs +3 -3
  177. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
  178. package/dist/esm/helpers/getVariantExtras.js +2 -2
  179. package/dist/esm/helpers/getVariantExtras.js.map +1 -1
  180. package/dist/esm/helpers/getVariantExtras.mjs +2 -2
  181. package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
  182. package/dist/esm/helpers/insertStyleRule.js.map +1 -1
  183. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
  184. package/dist/esm/helpers/isTamaguiComponent.js.map +1 -1
  185. package/dist/esm/helpers/isTamaguiComponent.mjs.map +1 -1
  186. package/dist/esm/helpers/isTamaguiElement.js +1 -1
  187. package/dist/esm/helpers/isTamaguiElement.js.map +1 -1
  188. package/dist/esm/helpers/isTamaguiElement.mjs +1 -1
  189. package/dist/esm/helpers/isTamaguiElement.mjs.map +1 -1
  190. package/dist/esm/helpers/matchMedia.js.map +1 -1
  191. package/dist/esm/helpers/matchMedia.mjs.map +1 -1
  192. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  193. package/dist/esm/helpers/matchMedia.native.mjs.map +1 -1
  194. package/dist/esm/helpers/normalizeShadow.js +1 -1
  195. package/dist/esm/helpers/normalizeShadow.js.map +1 -1
  196. package/dist/esm/helpers/normalizeShadow.mjs +1 -1
  197. package/dist/esm/helpers/normalizeShadow.mjs.map +1 -1
  198. package/dist/esm/helpers/normalizeShadow.native.js +2 -2
  199. package/dist/esm/helpers/normalizeShadow.native.js.map +1 -1
  200. package/dist/esm/helpers/normalizeShadow.native.mjs +2 -2
  201. package/dist/esm/helpers/normalizeShadow.native.mjs.map +1 -1
  202. package/dist/esm/helpers/normalizeValueWithProperty.js +3 -3
  203. package/dist/esm/helpers/normalizeValueWithProperty.js.map +1 -1
  204. package/dist/esm/helpers/normalizeValueWithProperty.mjs +3 -3
  205. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
  206. package/dist/esm/helpers/proxyThemeVariables.js +1 -1
  207. package/dist/esm/helpers/proxyThemeVariables.js.map +1 -1
  208. package/dist/esm/helpers/proxyThemeVariables.mjs +1 -1
  209. package/dist/esm/helpers/proxyThemeVariables.mjs.map +1 -1
  210. package/dist/esm/helpers/registerCSSVariable.js +1 -1
  211. package/dist/esm/helpers/registerCSSVariable.js.map +1 -1
  212. package/dist/esm/helpers/registerCSSVariable.mjs +1 -1
  213. package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
  214. package/dist/esm/helpers/themeable.js +1 -1
  215. package/dist/esm/helpers/themeable.js.map +1 -1
  216. package/dist/esm/helpers/themeable.mjs +1 -1
  217. package/dist/esm/helpers/themeable.mjs.map +1 -1
  218. package/dist/esm/helpers/themes.js +2 -2
  219. package/dist/esm/helpers/themes.js.map +1 -1
  220. package/dist/esm/helpers/themes.mjs +2 -2
  221. package/dist/esm/helpers/themes.mjs.map +1 -1
  222. package/dist/esm/helpers/useShallowSetState.js.map +2 -2
  223. package/dist/esm/helpers/useShallowSetState.mjs.map +2 -2
  224. package/dist/esm/hooks/useMedia.js +4 -4
  225. package/dist/esm/hooks/useMedia.js.map +1 -1
  226. package/dist/esm/hooks/useMedia.mjs +4 -4
  227. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  228. package/dist/esm/hooks/useStyle.js +5 -5
  229. package/dist/esm/hooks/useStyle.js.map +1 -1
  230. package/dist/esm/hooks/useStyle.mjs +5 -5
  231. package/dist/esm/hooks/useStyle.mjs.map +1 -1
  232. package/dist/esm/hooks/useTheme.js +7 -7
  233. package/dist/esm/hooks/useTheme.js.map +1 -1
  234. package/dist/esm/hooks/useTheme.mjs +7 -7
  235. package/dist/esm/hooks/useTheme.mjs.map +1 -1
  236. package/dist/esm/hooks/useThemeName.js +2 -2
  237. package/dist/esm/hooks/useThemeName.js.map +1 -1
  238. package/dist/esm/hooks/useThemeName.mjs +2 -2
  239. package/dist/esm/hooks/useThemeName.mjs.map +1 -1
  240. package/dist/esm/index.js +49 -49
  241. package/dist/esm/index.js.map +1 -1
  242. package/dist/esm/index.mjs +49 -49
  243. package/dist/esm/index.mjs.map +1 -1
  244. package/dist/esm/insertFont.js +4 -4
  245. package/dist/esm/insertFont.js.map +1 -1
  246. package/dist/esm/insertFont.mjs +4 -4
  247. package/dist/esm/insertFont.mjs.map +1 -1
  248. package/dist/esm/setupReactNative.js.map +1 -1
  249. package/dist/esm/setupReactNative.mjs.map +1 -1
  250. package/dist/esm/styled.js +2 -2
  251. package/dist/esm/styled.js.map +1 -1
  252. package/dist/esm/styled.mjs +2 -2
  253. package/dist/esm/styled.mjs.map +1 -1
  254. package/dist/esm/updateTheme.js +2 -2
  255. package/dist/esm/updateTheme.js.map +1 -1
  256. package/dist/esm/updateTheme.mjs +2 -2
  257. package/dist/esm/updateTheme.mjs.map +1 -1
  258. package/dist/esm/views/FontLanguage.js.map +1 -1
  259. package/dist/esm/views/FontLanguage.mjs.map +1 -1
  260. package/dist/esm/views/FontLanguage.native.js +1 -1
  261. package/dist/esm/views/FontLanguage.native.js.map +2 -2
  262. package/dist/esm/views/FontLanguage.native.mjs +1 -1
  263. package/dist/esm/views/FontLanguage.native.mjs.map +2 -2
  264. package/dist/esm/views/Stack.js +2 -2
  265. package/dist/esm/views/Stack.js.map +1 -1
  266. package/dist/esm/views/Stack.mjs +2 -2
  267. package/dist/esm/views/Stack.mjs.map +1 -1
  268. package/dist/esm/views/TamaguiProvider.js +4 -4
  269. package/dist/esm/views/TamaguiProvider.js.map +1 -1
  270. package/dist/esm/views/TamaguiProvider.mjs +4 -4
  271. package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
  272. package/dist/esm/views/Text.js +1 -1
  273. package/dist/esm/views/Text.js.map +1 -1
  274. package/dist/esm/views/Text.mjs +1 -1
  275. package/dist/esm/views/Text.mjs.map +1 -1
  276. package/dist/esm/views/Theme.js +4 -4
  277. package/dist/esm/views/Theme.js.map +1 -1
  278. package/dist/esm/views/Theme.mjs +4 -4
  279. package/dist/esm/views/Theme.mjs.map +1 -1
  280. package/dist/esm/views/ThemeProvider.js +2 -2
  281. package/dist/esm/views/ThemeProvider.js.map +1 -1
  282. package/dist/esm/views/ThemeProvider.mjs +2 -2
  283. package/dist/esm/views/ThemeProvider.mjs.map +1 -1
  284. package/package.json +9 -9
  285. package/src/Tamagui.ts +7 -3
  286. package/src/addTheme.ts +4 -4
  287. package/src/config.ts +1 -1
  288. package/src/contexts/FontLanguageContext.tsx +1 -1
  289. package/src/contexts/TextAncestorContext.tsx +1 -1
  290. package/src/createComponent.tsx +17 -17
  291. package/src/createFont.ts +1 -1
  292. package/src/createShorthands.ts +1 -1
  293. package/src/createTamagui.ts +10 -10
  294. package/src/createTheme.ts +1 -1
  295. package/src/createTokens.ts +3 -3
  296. package/src/createVariable.ts +1 -1
  297. package/src/createVariables.ts +1 -1
  298. package/src/helpers/ThemeManager.tsx +11 -5
  299. package/src/helpers/ThemeManagerContext.tsx +1 -1
  300. package/src/helpers/createMediaStyle.ts +2 -2
  301. package/src/helpers/createPropMapper.ts +13 -11
  302. package/src/helpers/expandStyles.ts +4 -4
  303. package/src/helpers/extendStaticConfig.ts +3 -3
  304. package/src/helpers/getAnimationDriver.tsx +1 -1
  305. package/src/helpers/getExpandedShorthands.ts +4 -6
  306. package/src/helpers/getSplitStyles.tsx +14 -11
  307. package/src/helpers/getStylesAtomic.ts +4 -4
  308. package/src/helpers/getThemeCSSRules.ts +4 -4
  309. package/src/helpers/getVariantExtras.tsx +4 -4
  310. package/src/helpers/insertStyleRule.tsx +1 -1
  311. package/src/helpers/isTamaguiComponent.tsx +1 -1
  312. package/src/helpers/isTamaguiElement.tsx +2 -2
  313. package/src/helpers/matchMedia.native.ts +1 -1
  314. package/src/helpers/matchMedia.ts +1 -1
  315. package/src/helpers/normalizeShadow.native.ts +2 -2
  316. package/src/helpers/normalizeShadow.ts +1 -1
  317. package/src/helpers/normalizeValueWithProperty.ts +3 -3
  318. package/src/helpers/proxyThemeVariables.tsx +1 -1
  319. package/src/helpers/registerCSSVariable.ts +1 -1
  320. package/src/helpers/themeable.tsx +2 -2
  321. package/src/helpers/themes.ts +3 -3
  322. package/src/helpers/useShallowSetState.tsx +1 -2
  323. package/src/hooks/useMedia.tsx +5 -5
  324. package/src/hooks/useStyle.tsx +5 -5
  325. package/src/hooks/useTheme.tsx +8 -8
  326. package/src/hooks/useThemeName.tsx +3 -3
  327. package/src/index.ts +49 -49
  328. package/src/insertFont.ts +6 -6
  329. package/src/setupReactNative.ts +1 -1
  330. package/src/styled.tsx +4 -4
  331. package/src/types.tsx +4 -4
  332. package/src/updateTheme.ts +3 -3
  333. package/src/views/FontLanguage.native.tsx +3 -3
  334. package/src/views/FontLanguage.tsx +1 -1
  335. package/src/views/Stack.tsx +3 -3
  336. package/src/views/TamaguiProvider.tsx +5 -5
  337. package/src/views/Text.tsx +2 -2
  338. package/src/views/Theme.tsx +5 -5
  339. package/src/views/ThemeProvider.tsx +2 -2
  340. package/types/Tamagui.d.ts +5 -5
  341. package/types/Tamagui.d.ts.map +1 -1
  342. package/types/addTheme.d.ts +18 -18
  343. package/types/addTheme.d.ts.map +1 -1
  344. package/types/config.d.ts +24 -24
  345. package/types/config.d.ts.map +1 -1
  346. package/types/contexts/FontLanguageContext.d.ts +1 -1
  347. package/types/contexts/TextAncestorContext.d.ts +2 -2
  348. package/types/contexts/TextAncestorContext.d.ts.map +1 -1
  349. package/types/createFont.d.ts +1 -1
  350. package/types/createFont.d.ts.map +1 -1
  351. package/types/createShorthands.d.ts +1 -1
  352. package/types/createShorthands.d.ts.map +1 -1
  353. package/types/createTamagui.d.ts +1 -1
  354. package/types/createTamagui.d.ts.map +1 -1
  355. package/types/createTheme.d.ts +1 -1
  356. package/types/createTheme.d.ts.map +1 -1
  357. package/types/createTokens.d.ts +2 -2
  358. package/types/createTokens.d.ts.map +1 -1
  359. package/types/createVariables.d.ts +1 -1
  360. package/types/createVariables.d.ts.map +1 -1
  361. package/types/helpers/ThemeManager.d.ts +2 -2
  362. package/types/helpers/ThemeManager.d.ts.map +1 -1
  363. package/types/helpers/ThemeManagerContext.d.ts +1 -1
  364. package/types/helpers/ThemeManagerContext.d.ts.map +1 -1
  365. package/types/helpers/createMediaStyle.d.ts +1 -1
  366. package/types/helpers/createMediaStyle.d.ts.map +1 -1
  367. package/types/helpers/createPropMapper.d.ts +1 -1
  368. package/types/helpers/createPropMapper.d.ts.map +1 -1
  369. package/types/helpers/expandStyles.d.ts +5 -5
  370. package/types/helpers/expandStyles.d.ts.map +1 -1
  371. package/types/helpers/extendStaticConfig.d.ts +1 -1
  372. package/types/helpers/extendStaticConfig.d.ts.map +1 -1
  373. package/types/helpers/getAnimationDriver.d.ts +1 -1
  374. package/types/helpers/getExpandedShorthands.d.ts +1 -1
  375. package/types/helpers/getExpandedShorthands.d.ts.map +1 -1
  376. package/types/helpers/getSplitStyles.d.ts +2 -2
  377. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  378. package/types/helpers/getStylesAtomic.d.ts +1 -1
  379. package/types/helpers/getStylesAtomic.d.ts.map +1 -1
  380. package/types/helpers/getThemeCSSRules.d.ts +1 -1
  381. package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
  382. package/types/helpers/getVariantExtras.d.ts +2 -2
  383. package/types/helpers/getVariantExtras.d.ts.map +1 -1
  384. package/types/helpers/insertStyleRule.d.ts +1 -1
  385. package/types/helpers/insertStyleRule.d.ts.map +1 -1
  386. package/types/helpers/isTamaguiComponent.d.ts +1 -1
  387. package/types/helpers/isTamaguiComponent.d.ts.map +1 -1
  388. package/types/helpers/isTamaguiElement.d.ts +1 -1
  389. package/types/helpers/isTamaguiElement.d.ts.map +1 -1
  390. package/types/helpers/matchMedia.d.ts +1 -1
  391. package/types/helpers/matchMedia.d.ts.map +1 -1
  392. package/types/helpers/matchMedia.native.d.ts +1 -1
  393. package/types/helpers/matchMedia.native.d.ts.map +1 -1
  394. package/types/helpers/registerCSSVariable.d.ts +1 -1
  395. package/types/helpers/registerCSSVariable.d.ts.map +1 -1
  396. package/types/helpers/themeable.d.ts +1 -1
  397. package/types/helpers/themeable.d.ts.map +1 -1
  398. package/types/helpers/themes.d.ts +1 -1
  399. package/types/helpers/themes.d.ts.map +1 -1
  400. package/types/helpers/useShallowSetState.d.ts +1 -2
  401. package/types/helpers/useShallowSetState.d.ts.map +1 -1
  402. package/types/hooks/useMedia.d.ts +1 -1
  403. package/types/hooks/useMedia.d.ts.map +1 -1
  404. package/types/hooks/useTheme.d.ts +2 -2
  405. package/types/hooks/useTheme.d.ts.map +1 -1
  406. package/types/hooks/useThemeName.d.ts +1 -1
  407. package/types/hooks/useThemeName.d.ts.map +1 -1
  408. package/types/index.d.ts +49 -49
  409. package/types/index.d.ts.map +1 -1
  410. package/types/insertFont.d.ts +2 -2
  411. package/types/insertFont.d.ts.map +1 -1
  412. package/types/setupReactNative.d.ts +1 -1
  413. package/types/setupReactNative.d.ts.map +1 -1
  414. package/types/styled.d.ts +1 -1
  415. package/types/styled.d.ts.map +1 -1
  416. package/types/types.d.ts +4 -4
  417. package/types/types.d.ts.map +1 -1
  418. package/types/updateTheme.d.ts +18 -18
  419. package/types/updateTheme.d.ts.map +1 -1
  420. package/types/views/FontLanguage.d.ts +1 -1
  421. package/types/views/FontLanguage.d.ts.map +1 -1
  422. package/types/views/FontLanguage.native.d.ts +1 -1
  423. package/types/views/FontLanguage.native.d.ts.map +1 -1
  424. package/types/views/Stack.d.ts +2 -2
  425. package/types/views/Stack.d.ts.map +1 -1
  426. package/types/views/TamaguiProvider.d.ts +1 -1
  427. package/types/views/TamaguiProvider.d.ts.map +1 -1
  428. package/types/views/Text.d.ts +2 -2
  429. package/types/views/Text.d.ts.map +1 -1
  430. package/types/views/Theme.d.ts +2 -2
  431. package/types/views/Theme.d.ts.map +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/insertStyleRule.tsx"],
4
- "sourcesContent": ["import type { StyleObject } from '@tamagui/helpers'\n\nimport { PartialStyleObject, RulesToInsert } from '../types'\n\nconst allSelectors: Record<string, string> = {}\nconst allRules: Record<string, string> = {}\nexport const insertedTransforms = {}\n\nexport const getAllSelectors = () => allSelectors\nexport const getAllRules = () => Object.values(allRules)\nexport const getAllTransforms = () => insertedTransforms\n\n// keep transforms in map for merging later\nfunction addTransform(identifier: string, css: string, rule?: CSSRule) {\n const s = css.indexOf('transform:')\n if (s === -1) {\n if (process.env.NODE_ENV === 'development') {\n console.error(`\u274C Invalid transform, likely used deg/% improperly ${identifier}`)\n }\n return false\n }\n const startI = s + 'transform:'.length\n const endI = css.indexOf(';')\n const value = css.slice(startI, endI)\n if (!insertedTransforms[identifier]) {\n insertedTransforms[identifier] = value\n return true\n }\n return false\n}\n\nconst isClient = typeof document !== 'undefined'\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\n\n// multiple sheets could have the same ids so we have to count\n\n// only cache tamagui styles\nconst scannedCache = new WeakMap<CSSStyleSheet, string>()\nconst totalSheetSelectors = new Map<string, number>()\n\nexport function listenForSheetChanges() {\n if (!isClient) return\n function handleNode(node: Node, remove = false) {\n if (node instanceof HTMLStyleElement && node.sheet) {\n updateSheetStyles(node.sheet, remove)\n }\n }\n const mo = new MutationObserver((entries) => {\n for (const entry of entries) {\n entry.addedNodes.forEach((node) => handleNode(node))\n entry.removedNodes.forEach((node) => handleNode(node, true))\n }\n })\n mo.observe(document.head, {\n childList: true,\n })\n}\n\nexport function scanAllSheets() {\n if (process.env.NODE_ENV === 'test') return\n if (!isClient) return\n const sheets = document.styleSheets\n if (!sheets) return\n for (let i = 0; i < sheets.length; i++) {\n const sheet = sheets[i]\n if (!sheet) continue\n updateSheetStyles(sheet)\n }\n}\n\nfunction track(id: string, remove = false) {\n const next = (totalSheetSelectors.get(id) || 0) + (remove ? -1 : 1)\n totalSheetSelectors.set(id, next)\n return next\n}\n\nfunction updateSheetStyles(sheet: CSSStyleSheet, remove = false) {\n // avoid errors on cross origin sheets\n // https://stackoverflow.com/questions/49993633/uncaught-domexception-failed-to-read-the-cssrules-property\n let rules: CSSRuleList\n try {\n rules = sheet.cssRules\n } catch {\n return\n }\n\n // not tamagui stylesheet\n const firstSelector = getTamaguiSelector(rules[0])?.[0]\n if (!firstSelector) {\n return\n }\n\n const lastSelector = getTamaguiSelector(rules[rules.length - 1])?.[0]\n\n const cacheKey = `${rules.length}${firstSelector}${lastSelector}`\n const lastScanned = scannedCache.get(sheet)\n if (!remove) {\n // avoid re-scanning\n if (lastScanned === cacheKey) {\n return\n }\n }\n\n const len = rules.length\n for (let i = 0; i < len; i++) {\n const rule = rules[i]\n const response = getTamaguiSelector(rule)\n if (!response) {\n return\n }\n\n const [identifier, cssRule] = response\n\n // track references\n const total = track(identifier, remove)\n\n if (remove) {\n if (total === 0) {\n delete allSelectors[identifier]\n }\n } else {\n if (!(identifier in allSelectors)) {\n const isTransform = identifier.startsWith('_transform')\n const shouldInsert = isTransform\n ? addTransform(identifier, cssRule.cssText, cssRule)\n : true\n if (shouldInsert) {\n allSelectors[identifier] = cssRule.cssText\n }\n }\n }\n }\n\n scannedCache.set(sheet, cacheKey)\n}\n\nfunction getTamaguiSelector(\n rule: CSSRule | null\n): readonly [string, CSSStyleRule] | null {\n if (rule instanceof CSSStyleRule) {\n const text = rule.selectorText\n if (text[0] === '.' && text[1] === '_') {\n return [text.slice(1), rule]\n }\n if (text.startsWith(':root') && text.includes('._')) {\n return [getIdentifierFromTamaguiSelector(text), rule]\n }\n } else if (rule instanceof CSSMediaRule) {\n // tamagui only ever inserts 1 rule per media\n if (rule.cssRules.length > 1) return null\n return getTamaguiSelector(rule.cssRules[0])\n }\n return null\n}\n\nconst getIdentifierFromTamaguiSelector = (selector: string) =>\n selector\n .replace(/(:root)+\\s+/, '')\n .replace(/:[a-z]+$/, '')\n .slice(1)\n\nconst sheet = isClient\n ? document.head.appendChild(document.createElement('style')).sheet\n : null\n\nexport function updateRules(identifier: string, rules: string[]) {\n if (allRules[identifier]) return false\n allRules[identifier] = rules.join(' ')\n if (identifier.startsWith('_transform')) {\n return addTransform(identifier, rules[0])\n }\n return true\n}\n\nexport function insertStyleRules(rulesToInsert: RulesToInsert) {\n if (!rulesToInsert.length) return\n if (isClient && !sheet) {\n if (process.env.NODE_ENV === 'development') throw 'impossible'\n return\n }\n for (const { identifier, rules } of rulesToInsert) {\n if (identifier in allSelectors) continue\n allSelectors[identifier] =\n process.env.NODE_ENV === 'development' ? rules.join('\\n') : ' '\n updateRules(identifier, rules)\n if (sheet) {\n for (const rule of rules) {\n try {\n sheet.insertRule(rule, sheet.cssRules.length)\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n console.groupCollapsed(\n `Error inserting rule into CSSStyleSheet: ${String(err)}`\n )\n console.log({ rule, rulesToInsert })\n console.trace()\n console.groupEnd()\n }\n }\n }\n }\n }\n}\n\nconst IS_STATIC = process.env.IS_STATIC === 'is_static'\n\nexport function shouldInsertStyleRules(styleObject: PartialStyleObject) {\n if (IS_STATIC) {\n return true\n }\n return !(styleObject.identifier in allSelectors)\n}\n"],
4
+ "sourcesContent": ["import type { StyleObject } from '@tamagui/helpers'\n\nimport { PartialStyleObject, RulesToInsert } from '../types.js'\n\nconst allSelectors: Record<string, string> = {}\nconst allRules: Record<string, string> = {}\nexport const insertedTransforms = {}\n\nexport const getAllSelectors = () => allSelectors\nexport const getAllRules = () => Object.values(allRules)\nexport const getAllTransforms = () => insertedTransforms\n\n// keep transforms in map for merging later\nfunction addTransform(identifier: string, css: string, rule?: CSSRule) {\n const s = css.indexOf('transform:')\n if (s === -1) {\n if (process.env.NODE_ENV === 'development') {\n console.error(`\u274C Invalid transform, likely used deg/% improperly ${identifier}`)\n }\n return false\n }\n const startI = s + 'transform:'.length\n const endI = css.indexOf(';')\n const value = css.slice(startI, endI)\n if (!insertedTransforms[identifier]) {\n insertedTransforms[identifier] = value\n return true\n }\n return false\n}\n\nconst isClient = typeof document !== 'undefined'\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\n\n// multiple sheets could have the same ids so we have to count\n\n// only cache tamagui styles\nconst scannedCache = new WeakMap<CSSStyleSheet, string>()\nconst totalSheetSelectors = new Map<string, number>()\n\nexport function listenForSheetChanges() {\n if (!isClient) return\n function handleNode(node: Node, remove = false) {\n if (node instanceof HTMLStyleElement && node.sheet) {\n updateSheetStyles(node.sheet, remove)\n }\n }\n const mo = new MutationObserver((entries) => {\n for (const entry of entries) {\n entry.addedNodes.forEach((node) => handleNode(node))\n entry.removedNodes.forEach((node) => handleNode(node, true))\n }\n })\n mo.observe(document.head, {\n childList: true,\n })\n}\n\nexport function scanAllSheets() {\n if (process.env.NODE_ENV === 'test') return\n if (!isClient) return\n const sheets = document.styleSheets\n if (!sheets) return\n for (let i = 0; i < sheets.length; i++) {\n const sheet = sheets[i]\n if (!sheet) continue\n updateSheetStyles(sheet)\n }\n}\n\nfunction track(id: string, remove = false) {\n const next = (totalSheetSelectors.get(id) || 0) + (remove ? -1 : 1)\n totalSheetSelectors.set(id, next)\n return next\n}\n\nfunction updateSheetStyles(sheet: CSSStyleSheet, remove = false) {\n // avoid errors on cross origin sheets\n // https://stackoverflow.com/questions/49993633/uncaught-domexception-failed-to-read-the-cssrules-property\n let rules: CSSRuleList\n try {\n rules = sheet.cssRules\n } catch {\n return\n }\n\n // not tamagui stylesheet\n const firstSelector = getTamaguiSelector(rules[0])?.[0]\n if (!firstSelector) {\n return\n }\n\n const lastSelector = getTamaguiSelector(rules[rules.length - 1])?.[0]\n\n const cacheKey = `${rules.length}${firstSelector}${lastSelector}`\n const lastScanned = scannedCache.get(sheet)\n if (!remove) {\n // avoid re-scanning\n if (lastScanned === cacheKey) {\n return\n }\n }\n\n const len = rules.length\n for (let i = 0; i < len; i++) {\n const rule = rules[i]\n const response = getTamaguiSelector(rule)\n if (!response) {\n return\n }\n\n const [identifier, cssRule] = response\n\n // track references\n const total = track(identifier, remove)\n\n if (remove) {\n if (total === 0) {\n delete allSelectors[identifier]\n }\n } else {\n if (!(identifier in allSelectors)) {\n const isTransform = identifier.startsWith('_transform')\n const shouldInsert = isTransform\n ? addTransform(identifier, cssRule.cssText, cssRule)\n : true\n if (shouldInsert) {\n allSelectors[identifier] = cssRule.cssText\n }\n }\n }\n }\n\n scannedCache.set(sheet, cacheKey)\n}\n\nfunction getTamaguiSelector(\n rule: CSSRule | null\n): readonly [string, CSSStyleRule] | null {\n if (rule instanceof CSSStyleRule) {\n const text = rule.selectorText\n if (text[0] === '.' && text[1] === '_') {\n return [text.slice(1), rule]\n }\n if (text.startsWith(':root') && text.includes('._')) {\n return [getIdentifierFromTamaguiSelector(text), rule]\n }\n } else if (rule instanceof CSSMediaRule) {\n // tamagui only ever inserts 1 rule per media\n if (rule.cssRules.length > 1) return null\n return getTamaguiSelector(rule.cssRules[0])\n }\n return null\n}\n\nconst getIdentifierFromTamaguiSelector = (selector: string) =>\n selector\n .replace(/(:root)+\\s+/, '')\n .replace(/:[a-z]+$/, '')\n .slice(1)\n\nconst sheet = isClient\n ? document.head.appendChild(document.createElement('style')).sheet\n : null\n\nexport function updateRules(identifier: string, rules: string[]) {\n if (allRules[identifier]) return false\n allRules[identifier] = rules.join(' ')\n if (identifier.startsWith('_transform')) {\n return addTransform(identifier, rules[0])\n }\n return true\n}\n\nexport function insertStyleRules(rulesToInsert: RulesToInsert) {\n if (!rulesToInsert.length) return\n if (isClient && !sheet) {\n if (process.env.NODE_ENV === 'development') throw 'impossible'\n return\n }\n for (const { identifier, rules } of rulesToInsert) {\n if (identifier in allSelectors) continue\n allSelectors[identifier] =\n process.env.NODE_ENV === 'development' ? rules.join('\\n') : ' '\n updateRules(identifier, rules)\n if (sheet) {\n for (const rule of rules) {\n try {\n sheet.insertRule(rule, sheet.cssRules.length)\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n console.groupCollapsed(\n `Error inserting rule into CSSStyleSheet: ${String(err)}`\n )\n console.log({ rule, rulesToInsert })\n console.trace()\n console.groupEnd()\n }\n }\n }\n }\n }\n}\n\nconst IS_STATIC = process.env.IS_STATIC === 'is_static'\n\nexport function shouldInsertStyleRules(styleObject: PartialStyleObject) {\n if (IS_STATIC) {\n return true\n }\n return !(styleObject.identifier in allSelectors)\n}\n"],
5
5
  "mappings": "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",
6
6
  "names": ["sheet"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/insertStyleRule.tsx"],
4
- "sourcesContent": ["import type { StyleObject } from '@tamagui/helpers'\n\nimport { PartialStyleObject, RulesToInsert } from '../types'\n\nconst allSelectors: Record<string, string> = {}\nconst allRules: Record<string, string> = {}\nexport const insertedTransforms = {}\n\nexport const getAllSelectors = () => allSelectors\nexport const getAllRules = () => Object.values(allRules)\nexport const getAllTransforms = () => insertedTransforms\n\n// keep transforms in map for merging later\nfunction addTransform(identifier: string, css: string, rule?: CSSRule) {\n const s = css.indexOf('transform:')\n if (s === -1) {\n if (process.env.NODE_ENV === 'development') {\n console.error(`\u274C Invalid transform, likely used deg/% improperly ${identifier}`)\n }\n return false\n }\n const startI = s + 'transform:'.length\n const endI = css.indexOf(';')\n const value = css.slice(startI, endI)\n if (!insertedTransforms[identifier]) {\n insertedTransforms[identifier] = value\n return true\n }\n return false\n}\n\nconst isClient = typeof document !== 'undefined'\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\n\n// multiple sheets could have the same ids so we have to count\n\n// only cache tamagui styles\nconst scannedCache = new WeakMap<CSSStyleSheet, string>()\nconst totalSheetSelectors = new Map<string, number>()\n\nexport function listenForSheetChanges() {\n if (!isClient) return\n function handleNode(node: Node, remove = false) {\n if (node instanceof HTMLStyleElement && node.sheet) {\n updateSheetStyles(node.sheet, remove)\n }\n }\n const mo = new MutationObserver((entries) => {\n for (const entry of entries) {\n entry.addedNodes.forEach((node) => handleNode(node))\n entry.removedNodes.forEach((node) => handleNode(node, true))\n }\n })\n mo.observe(document.head, {\n childList: true,\n })\n}\n\nexport function scanAllSheets() {\n if (process.env.NODE_ENV === 'test') return\n if (!isClient) return\n const sheets = document.styleSheets\n if (!sheets) return\n for (let i = 0; i < sheets.length; i++) {\n const sheet = sheets[i]\n if (!sheet) continue\n updateSheetStyles(sheet)\n }\n}\n\nfunction track(id: string, remove = false) {\n const next = (totalSheetSelectors.get(id) || 0) + (remove ? -1 : 1)\n totalSheetSelectors.set(id, next)\n return next\n}\n\nfunction updateSheetStyles(sheet: CSSStyleSheet, remove = false) {\n // avoid errors on cross origin sheets\n // https://stackoverflow.com/questions/49993633/uncaught-domexception-failed-to-read-the-cssrules-property\n let rules: CSSRuleList\n try {\n rules = sheet.cssRules\n } catch {\n return\n }\n\n // not tamagui stylesheet\n const firstSelector = getTamaguiSelector(rules[0])?.[0]\n if (!firstSelector) {\n return\n }\n\n const lastSelector = getTamaguiSelector(rules[rules.length - 1])?.[0]\n\n const cacheKey = `${rules.length}${firstSelector}${lastSelector}`\n const lastScanned = scannedCache.get(sheet)\n if (!remove) {\n // avoid re-scanning\n if (lastScanned === cacheKey) {\n return\n }\n }\n\n const len = rules.length\n for (let i = 0; i < len; i++) {\n const rule = rules[i]\n const response = getTamaguiSelector(rule)\n if (!response) {\n return\n }\n\n const [identifier, cssRule] = response\n\n // track references\n const total = track(identifier, remove)\n\n if (remove) {\n if (total === 0) {\n delete allSelectors[identifier]\n }\n } else {\n if (!(identifier in allSelectors)) {\n const isTransform = identifier.startsWith('_transform')\n const shouldInsert = isTransform\n ? addTransform(identifier, cssRule.cssText, cssRule)\n : true\n if (shouldInsert) {\n allSelectors[identifier] = cssRule.cssText\n }\n }\n }\n }\n\n scannedCache.set(sheet, cacheKey)\n}\n\nfunction getTamaguiSelector(\n rule: CSSRule | null\n): readonly [string, CSSStyleRule] | null {\n if (rule instanceof CSSStyleRule) {\n const text = rule.selectorText\n if (text[0] === '.' && text[1] === '_') {\n return [text.slice(1), rule]\n }\n if (text.startsWith(':root') && text.includes('._')) {\n return [getIdentifierFromTamaguiSelector(text), rule]\n }\n } else if (rule instanceof CSSMediaRule) {\n // tamagui only ever inserts 1 rule per media\n if (rule.cssRules.length > 1) return null\n return getTamaguiSelector(rule.cssRules[0])\n }\n return null\n}\n\nconst getIdentifierFromTamaguiSelector = (selector: string) =>\n selector\n .replace(/(:root)+\\s+/, '')\n .replace(/:[a-z]+$/, '')\n .slice(1)\n\nconst sheet = isClient\n ? document.head.appendChild(document.createElement('style')).sheet\n : null\n\nexport function updateRules(identifier: string, rules: string[]) {\n if (allRules[identifier]) return false\n allRules[identifier] = rules.join(' ')\n if (identifier.startsWith('_transform')) {\n return addTransform(identifier, rules[0])\n }\n return true\n}\n\nexport function insertStyleRules(rulesToInsert: RulesToInsert) {\n if (!rulesToInsert.length) return\n if (isClient && !sheet) {\n if (process.env.NODE_ENV === 'development') throw 'impossible'\n return\n }\n for (const { identifier, rules } of rulesToInsert) {\n if (identifier in allSelectors) continue\n allSelectors[identifier] =\n process.env.NODE_ENV === 'development' ? rules.join('\\n') : ' '\n updateRules(identifier, rules)\n if (sheet) {\n for (const rule of rules) {\n try {\n sheet.insertRule(rule, sheet.cssRules.length)\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n console.groupCollapsed(\n `Error inserting rule into CSSStyleSheet: ${String(err)}`\n )\n console.log({ rule, rulesToInsert })\n console.trace()\n console.groupEnd()\n }\n }\n }\n }\n }\n}\n\nconst IS_STATIC = process.env.IS_STATIC === 'is_static'\n\nexport function shouldInsertStyleRules(styleObject: PartialStyleObject) {\n if (IS_STATIC) {\n return true\n }\n return !(styleObject.identifier in allSelectors)\n}\n"],
4
+ "sourcesContent": ["import type { StyleObject } from '@tamagui/helpers'\n\nimport { PartialStyleObject, RulesToInsert } from '../types.js'\n\nconst allSelectors: Record<string, string> = {}\nconst allRules: Record<string, string> = {}\nexport const insertedTransforms = {}\n\nexport const getAllSelectors = () => allSelectors\nexport const getAllRules = () => Object.values(allRules)\nexport const getAllTransforms = () => insertedTransforms\n\n// keep transforms in map for merging later\nfunction addTransform(identifier: string, css: string, rule?: CSSRule) {\n const s = css.indexOf('transform:')\n if (s === -1) {\n if (process.env.NODE_ENV === 'development') {\n console.error(`\u274C Invalid transform, likely used deg/% improperly ${identifier}`)\n }\n return false\n }\n const startI = s + 'transform:'.length\n const endI = css.indexOf(';')\n const value = css.slice(startI, endI)\n if (!insertedTransforms[identifier]) {\n insertedTransforms[identifier] = value\n return true\n }\n return false\n}\n\nconst isClient = typeof document !== 'undefined'\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\n\n// multiple sheets could have the same ids so we have to count\n\n// only cache tamagui styles\nconst scannedCache = new WeakMap<CSSStyleSheet, string>()\nconst totalSheetSelectors = new Map<string, number>()\n\nexport function listenForSheetChanges() {\n if (!isClient) return\n function handleNode(node: Node, remove = false) {\n if (node instanceof HTMLStyleElement && node.sheet) {\n updateSheetStyles(node.sheet, remove)\n }\n }\n const mo = new MutationObserver((entries) => {\n for (const entry of entries) {\n entry.addedNodes.forEach((node) => handleNode(node))\n entry.removedNodes.forEach((node) => handleNode(node, true))\n }\n })\n mo.observe(document.head, {\n childList: true,\n })\n}\n\nexport function scanAllSheets() {\n if (process.env.NODE_ENV === 'test') return\n if (!isClient) return\n const sheets = document.styleSheets\n if (!sheets) return\n for (let i = 0; i < sheets.length; i++) {\n const sheet = sheets[i]\n if (!sheet) continue\n updateSheetStyles(sheet)\n }\n}\n\nfunction track(id: string, remove = false) {\n const next = (totalSheetSelectors.get(id) || 0) + (remove ? -1 : 1)\n totalSheetSelectors.set(id, next)\n return next\n}\n\nfunction updateSheetStyles(sheet: CSSStyleSheet, remove = false) {\n // avoid errors on cross origin sheets\n // https://stackoverflow.com/questions/49993633/uncaught-domexception-failed-to-read-the-cssrules-property\n let rules: CSSRuleList\n try {\n rules = sheet.cssRules\n } catch {\n return\n }\n\n // not tamagui stylesheet\n const firstSelector = getTamaguiSelector(rules[0])?.[0]\n if (!firstSelector) {\n return\n }\n\n const lastSelector = getTamaguiSelector(rules[rules.length - 1])?.[0]\n\n const cacheKey = `${rules.length}${firstSelector}${lastSelector}`\n const lastScanned = scannedCache.get(sheet)\n if (!remove) {\n // avoid re-scanning\n if (lastScanned === cacheKey) {\n return\n }\n }\n\n const len = rules.length\n for (let i = 0; i < len; i++) {\n const rule = rules[i]\n const response = getTamaguiSelector(rule)\n if (!response) {\n return\n }\n\n const [identifier, cssRule] = response\n\n // track references\n const total = track(identifier, remove)\n\n if (remove) {\n if (total === 0) {\n delete allSelectors[identifier]\n }\n } else {\n if (!(identifier in allSelectors)) {\n const isTransform = identifier.startsWith('_transform')\n const shouldInsert = isTransform\n ? addTransform(identifier, cssRule.cssText, cssRule)\n : true\n if (shouldInsert) {\n allSelectors[identifier] = cssRule.cssText\n }\n }\n }\n }\n\n scannedCache.set(sheet, cacheKey)\n}\n\nfunction getTamaguiSelector(\n rule: CSSRule | null\n): readonly [string, CSSStyleRule] | null {\n if (rule instanceof CSSStyleRule) {\n const text = rule.selectorText\n if (text[0] === '.' && text[1] === '_') {\n return [text.slice(1), rule]\n }\n if (text.startsWith(':root') && text.includes('._')) {\n return [getIdentifierFromTamaguiSelector(text), rule]\n }\n } else if (rule instanceof CSSMediaRule) {\n // tamagui only ever inserts 1 rule per media\n if (rule.cssRules.length > 1) return null\n return getTamaguiSelector(rule.cssRules[0])\n }\n return null\n}\n\nconst getIdentifierFromTamaguiSelector = (selector: string) =>\n selector\n .replace(/(:root)+\\s+/, '')\n .replace(/:[a-z]+$/, '')\n .slice(1)\n\nconst sheet = isClient\n ? document.head.appendChild(document.createElement('style')).sheet\n : null\n\nexport function updateRules(identifier: string, rules: string[]) {\n if (allRules[identifier]) return false\n allRules[identifier] = rules.join(' ')\n if (identifier.startsWith('_transform')) {\n return addTransform(identifier, rules[0])\n }\n return true\n}\n\nexport function insertStyleRules(rulesToInsert: RulesToInsert) {\n if (!rulesToInsert.length) return\n if (isClient && !sheet) {\n if (process.env.NODE_ENV === 'development') throw 'impossible'\n return\n }\n for (const { identifier, rules } of rulesToInsert) {\n if (identifier in allSelectors) continue\n allSelectors[identifier] =\n process.env.NODE_ENV === 'development' ? rules.join('\\n') : ' '\n updateRules(identifier, rules)\n if (sheet) {\n for (const rule of rules) {\n try {\n sheet.insertRule(rule, sheet.cssRules.length)\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n console.groupCollapsed(\n `Error inserting rule into CSSStyleSheet: ${String(err)}`\n )\n console.log({ rule, rulesToInsert })\n console.trace()\n console.groupEnd()\n }\n }\n }\n }\n }\n}\n\nconst IS_STATIC = process.env.IS_STATIC === 'is_static'\n\nexport function shouldInsertStyleRules(styleObject: PartialStyleObject) {\n if (IS_STATIC) {\n return true\n }\n return !(styleObject.identifier in allSelectors)\n}\n"],
5
5
  "mappings": "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",
6
6
  "names": ["sheet"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/isTamaguiComponent.tsx"],
4
- "sourcesContent": ["import { StaticConfig, StaticConfigParsed } from '../types'\n\nexport function isTamaguiComponent<A>(\n comp: A,\n name?: string\n): comp is A & {\n staticConfig: StaticConfig\n} {\n const config = comp?.['staticConfig'] as StaticConfigParsed | undefined\n return (config?.parsed && (name ? name === config.componentName : true)) || false\n}\n"],
4
+ "sourcesContent": ["import { StaticConfig, StaticConfigParsed } from '../types.js'\n\nexport function isTamaguiComponent<A>(\n comp: A,\n name?: string\n): comp is A & {\n staticConfig: StaticConfig\n} {\n const config = comp?.['staticConfig'] as StaticConfigParsed | undefined\n return (config?.parsed && (name ? name === config.componentName : true)) || false\n}\n"],
5
5
  "mappings": "AAEO,SAAS,mBACd,MACA,MAGA;AACA,QAAM,SAAS,6BAAO;AACtB,UAAQ,iCAAQ,YAAW,OAAO,SAAS,OAAO,gBAAgB,SAAU;AAC9E;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/isTamaguiComponent.tsx"],
4
- "sourcesContent": ["import { StaticConfig, StaticConfigParsed } from '../types'\n\nexport function isTamaguiComponent<A>(\n comp: A,\n name?: string\n): comp is A & {\n staticConfig: StaticConfig\n} {\n const config = comp?.['staticConfig'] as StaticConfigParsed | undefined\n return (config?.parsed && (name ? name === config.componentName : true)) || false\n}\n"],
4
+ "sourcesContent": ["import { StaticConfig, StaticConfigParsed } from '../types.js'\n\nexport function isTamaguiComponent<A>(\n comp: A,\n name?: string\n): comp is A & {\n staticConfig: StaticConfig\n} {\n const config = comp?.['staticConfig'] as StaticConfigParsed | undefined\n return (config?.parsed && (name ? name === config.componentName : true)) || false\n}\n"],
5
5
  "mappings": "AAEO,SAAS,mBACd,MACA,MAGA;AACA,QAAM,SAAS,6BAAO;AACtB,UAAQ,iCAAQ,YAAW,OAAO,SAAS,OAAO,gBAAgB,SAAU;AAC9E;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import { isValidElement } from "react";
2
- import { isTamaguiComponent } from "./isTamaguiComponent";
2
+ import { isTamaguiComponent } from "./isTamaguiComponent.js";
3
3
  const isTamaguiElement = (child, name) => {
4
4
  return isValidElement(child) && isTamaguiComponent(child.type, name);
5
5
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/isTamaguiElement.tsx"],
4
- "sourcesContent": ["import { isValidElement } from 'react'\n\nimport { TamaguiReactElement } from '../types'\nimport { isTamaguiComponent } from './isTamaguiComponent'\n\nexport const isTamaguiElement = (\n child: any,\n name?: string\n): child is TamaguiReactElement => {\n return isValidElement(child) && isTamaguiComponent(child.type, name)\n}\n"],
4
+ "sourcesContent": ["import { isValidElement } from 'react'\n\nimport { TamaguiReactElement } from '../types.js'\nimport { isTamaguiComponent } from './isTamaguiComponent.js'\n\nexport const isTamaguiElement = (\n child: any,\n name?: string\n): child is TamaguiReactElement => {\n return isValidElement(child) && isTamaguiComponent(child.type, name)\n}\n"],
5
5
  "mappings": "AAAA,SAAS,sBAAsB;AAG/B,SAAS,0BAA0B;AAE5B,MAAM,mBAAmB,CAC9B,OACA,SACiC;AACjC,SAAO,eAAe,KAAK,KAAK,mBAAmB,MAAM,MAAM,IAAI;AACrE;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import { isValidElement } from "react";
2
- import { isTamaguiComponent } from "./isTamaguiComponent";
2
+ import { isTamaguiComponent } from "./isTamaguiComponent.js";
3
3
  const isTamaguiElement = (child, name) => {
4
4
  return isValidElement(child) && isTamaguiComponent(child.type, name);
5
5
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/isTamaguiElement.tsx"],
4
- "sourcesContent": ["import { isValidElement } from 'react'\n\nimport { TamaguiReactElement } from '../types'\nimport { isTamaguiComponent } from './isTamaguiComponent'\n\nexport const isTamaguiElement = (\n child: any,\n name?: string\n): child is TamaguiReactElement => {\n return isValidElement(child) && isTamaguiComponent(child.type, name)\n}\n"],
4
+ "sourcesContent": ["import { isValidElement } from 'react'\n\nimport { TamaguiReactElement } from '../types.js'\nimport { isTamaguiComponent } from './isTamaguiComponent.js'\n\nexport const isTamaguiElement = (\n child: any,\n name?: string\n): child is TamaguiReactElement => {\n return isValidElement(child) && isTamaguiComponent(child.type, name)\n}\n"],
5
5
  "mappings": "AAAA,SAAS,sBAAsB;AAG/B,SAAS,0BAA0B;AAE5B,MAAM,mBAAmB,CAC9B,OACA,SACiC;AACjC,SAAO,eAAe,KAAK,KAAK,mBAAmB,MAAM,MAAM,IAAI;AACrE;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/matchMedia.ts"],
4
- "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types'\n\nexport const matchMedia =\n (typeof window !== 'undefined' && window.matchMedia) || matchMediaFallback\n\nfunction matchMediaFallback(_: string): MediaQueryList {\n return {\n addListener() {},\n removeListener() {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n // no-op web\n}\n"],
4
+ "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types.js'\n\nexport const matchMedia =\n (typeof window !== 'undefined' && window.matchMedia) || matchMediaFallback\n\nfunction matchMediaFallback(_: string): MediaQueryList {\n return {\n addListener() {},\n removeListener() {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n // no-op web\n}\n"],
5
5
  "mappings": "AAEO,MAAM,aACV,OAAO,WAAW,eAAe,OAAO,cAAe;AAE1D,SAAS,mBAAmB,GAA2B;AACrD,SAAO;AAAA,IACL,cAAc;AAAA,IAAC;AAAA,IACf,iBAAiB;AAAA,IAAC;AAAA,IAClB,SAAS;AAAA,EACX;AACF;AAEO,SAAS,gBAAgB,GAAe;AAE/C;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/matchMedia.ts"],
4
- "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types'\n\nexport const matchMedia =\n (typeof window !== 'undefined' && window.matchMedia) || matchMediaFallback\n\nfunction matchMediaFallback(_: string): MediaQueryList {\n return {\n addListener() {},\n removeListener() {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n // no-op web\n}\n"],
4
+ "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types.js'\n\nexport const matchMedia =\n (typeof window !== 'undefined' && window.matchMedia) || matchMediaFallback\n\nfunction matchMediaFallback(_: string): MediaQueryList {\n return {\n addListener() {},\n removeListener() {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n // no-op web\n}\n"],
5
5
  "mappings": "AAEO,MAAM,aACV,OAAO,WAAW,eAAe,OAAO,cAAe;AAE1D,SAAS,mBAAmB,GAA2B;AACrD,SAAO;AAAA,IACL,cAAc;AAAA,IAAC;AAAA,IACf,iBAAiB;AAAA,IAAC;AAAA,IAClB,SAAS;AAAA,EACX;AACF;AAEO,SAAS,gBAAgB,GAAe;AAE/C;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/matchMedia.native.ts"],
4
- "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types'\n\nlet matchMediaImpl: MatchMedia = matchMediaFallback\n\nexport const matchMedia: MatchMedia = (...args) => matchMediaImpl(...args)\n\nfunction matchMediaFallback(query: string): MediaQueryList {\n if (process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn('warning: matchMedia implementation is not provided.')\n }\n return {\n addListener: () => {},\n removeListener: () => {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n matchMediaImpl = _\n // @ts-ignore\n globalThis['matchMedia'] = _\n}\n"],
4
+ "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types.js'\n\nlet matchMediaImpl: MatchMedia = matchMediaFallback\n\nexport const matchMedia: MatchMedia = (...args) => matchMediaImpl(...args)\n\nfunction matchMediaFallback(query: string): MediaQueryList {\n if (process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn('warning: matchMedia implementation is not provided.')\n }\n return {\n addListener: () => {},\n removeListener: () => {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n matchMediaImpl = _\n // @ts-ignore\n globalThis['matchMedia'] = _\n}\n"],
5
5
  "mappings": "AAEA,IAAI,iBAA6B;AAE1B,MAAM,aAAyB,IAAI,SAAS,eAAe,GAAG,IAAI;AAEzE,SAAS,mBAAmB,OAA+B;AACzD,MAAI,QAAQ,IAAI,aAAa,eAAe;AAE1C,YAAQ,KAAK,qDAAqD;AAAA,EACpE;AACA,SAAO;AAAA,IACL,aAAa,MAAM;AAAA,IAAC;AAAA,IACpB,gBAAgB,MAAM;AAAA,IAAC;AAAA,IACvB,SAAS;AAAA,EACX;AACF;AAEO,SAAS,gBAAgB,GAAe;AAC7C,mBAAiB;AAEjB,aAAW,YAAY,IAAI;AAC7B;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/matchMedia.native.ts"],
4
- "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types'\n\nlet matchMediaImpl: MatchMedia = matchMediaFallback\n\nexport const matchMedia: MatchMedia = (...args) => matchMediaImpl(...args)\n\nfunction matchMediaFallback(query: string): MediaQueryList {\n if (process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn('warning: matchMedia implementation is not provided.')\n }\n return {\n addListener: () => {},\n removeListener: () => {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n matchMediaImpl = _\n // @ts-ignore\n globalThis['matchMedia'] = _\n}\n"],
4
+ "sourcesContent": ["import { MatchMedia, MediaQueryList } from '../types.js'\n\nlet matchMediaImpl: MatchMedia = matchMediaFallback\n\nexport const matchMedia: MatchMedia = (...args) => matchMediaImpl(...args)\n\nfunction matchMediaFallback(query: string): MediaQueryList {\n if (process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn('warning: matchMedia implementation is not provided.')\n }\n return {\n addListener: () => {},\n removeListener: () => {},\n matches: false,\n }\n}\n\nexport function setupMatchMedia(_: MatchMedia) {\n matchMediaImpl = _\n // @ts-ignore\n globalThis['matchMedia'] = _\n}\n"],
5
5
  "mappings": "AAEA,IAAI,iBAA6B;AAE1B,MAAM,aAAyB,IAAI,SAAS,eAAe,GAAG,IAAI;AAEzE,SAAS,mBAAmB,OAA+B;AACzD,MAAI,QAAQ,IAAI,aAAa,eAAe;AAE1C,YAAQ,KAAK,qDAAqD;AAAA,EACpE;AACA,SAAO;AAAA,IACL,aAAa,MAAM;AAAA,IAAC;AAAA,IACpB,gBAAgB,MAAM;AAAA,IAAC;AAAA,IACvB,SAAS;AAAA,EACX;AACF;AAEO,SAAS,gBAAgB,GAAe;AAC7C,mBAAiB;AAEjB,aAAW,YAAY,IAAI;AAC7B;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- import { defaultOffset } from "./expandStyles";
1
+ import { defaultOffset } from "./expandStyles.js";
2
2
  import { normalizeValueWithProperty } from "./normalizeValueWithProperty.js";
3
3
  function normalizeShadow({
4
4
  shadowColor,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/normalizeShadow.ts"],
4
- "sourcesContent": ["import { defaultOffset } from './expandStyles'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity = 1,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor,\n shadowOpacity,\n }\n}\n"],
4
+ "sourcesContent": ["import { defaultOffset } from './expandStyles.js'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity = 1,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor,\n shadowOpacity,\n }\n}\n"],
5
5
  "mappings": "AAAA,SAAS,qBAAqB;AAC9B,SAAS,kCAAkC;AAEpC,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA,gBAAgB;AAAA,EAChB;AACF,GAAwB;AACtB,QAAM,EAAE,QAAQ,MAAM,IAAI,gBAAgB;AAC1C,SAAO;AAAA,IACL,cAAc;AAAA,MACZ,OAAO,2BAA2B,SAAS,CAAC;AAAA,MAC5C,QAAQ,2BAA2B,UAAU,CAAC;AAAA,IAChD;AAAA,IACA,cAAc,2BAA2B,gBAAgB,CAAC;AAAA,IAC1D;AAAA,IACA;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- import { defaultOffset } from "./expandStyles";
1
+ import { defaultOffset } from "./expandStyles.js";
2
2
  import { normalizeValueWithProperty } from "./normalizeValueWithProperty.js";
3
3
  function normalizeShadow({
4
4
  shadowColor,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/normalizeShadow.ts"],
4
- "sourcesContent": ["import { defaultOffset } from './expandStyles'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity = 1,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor,\n shadowOpacity,\n }\n}\n"],
4
+ "sourcesContent": ["import { defaultOffset } from './expandStyles.js'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity = 1,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor,\n shadowOpacity,\n }\n}\n"],
5
5
  "mappings": "AAAA,SAAS,qBAAqB;AAC9B,SAAS,kCAAkC;AAEpC,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA,gBAAgB;AAAA,EAChB;AACF,GAAwB;AACtB,QAAM,EAAE,QAAQ,MAAM,IAAI,gBAAgB;AAC1C,SAAO;AAAA,IACL,cAAc;AAAA,MACZ,OAAO,2BAA2B,SAAS,CAAC;AAAA,MAC5C,QAAQ,2BAA2B,UAAU,CAAC;AAAA,IAChD;AAAA,IACA,cAAc,2BAA2B,gBAAgB,CAAC;AAAA,IAC1D;AAAA,IACA;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import { normalizeCSSColor } from "@tamagui/normalize-css-color";
2
- import { defaultOffset } from "./expandStyles";
3
- import { rgba } from "./normalizeColor";
2
+ import { defaultOffset } from "./expandStyles.js";
3
+ import { rgba } from "./normalizeColor.js";
4
4
  import { normalizeValueWithProperty } from "./normalizeValueWithProperty.js";
5
5
  function normalizeShadow({
6
6
  shadowColor,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/normalizeShadow.native.ts"],
4
- "sourcesContent": ["import { normalizeCSSColor } from '@tamagui/normalize-css-color'\n\nimport { defaultOffset } from './expandStyles'\nimport { rgba } from './normalizeColor'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n const colorStr = String(shadowColor || 'black')\n const val = normalizeCSSColor(colorStr)\n if (typeof val !== 'number') {\n throw new Error(`invalid shadow color ${colorStr}`)\n }\n const { r, g, b, a } = rgba(val)\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor: `rgb(${r},${g},${b})`,\n shadowOpacity: shadowOpacity ?? a,\n }\n}\n"],
4
+ "sourcesContent": ["import { normalizeCSSColor } from '@tamagui/normalize-css-color'\n\nimport { defaultOffset } from './expandStyles.js'\nimport { rgba } from './normalizeColor.js'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n const colorStr = String(shadowColor || 'black')\n const val = normalizeCSSColor(colorStr)\n if (typeof val !== 'number') {\n throw new Error(`invalid shadow color ${colorStr}`)\n }\n const { r, g, b, a } = rgba(val)\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor: `rgb(${r},${g},${b})`,\n shadowOpacity: shadowOpacity ?? a,\n }\n}\n"],
5
5
  "mappings": "AAAA,SAAS,yBAAyB;AAElC,SAAS,qBAAqB;AAC9B,SAAS,YAAY;AACrB,SAAS,kCAAkC;AAEpC,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAwB;AACtB,QAAM,EAAE,QAAQ,MAAM,IAAI,gBAAgB;AAC1C,QAAM,WAAW,OAAO,eAAe,OAAO;AAC9C,QAAM,MAAM,kBAAkB,QAAQ;AACtC,MAAI,OAAO,QAAQ,UAAU;AAC3B,UAAM,IAAI,MAAM,wBAAwB,UAAU;AAAA,EACpD;AACA,QAAM,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,KAAK,GAAG;AAC/B,SAAO;AAAA,IACL,cAAc;AAAA,MACZ,OAAO,2BAA2B,SAAS,CAAC;AAAA,MAC5C,QAAQ,2BAA2B,UAAU,CAAC;AAAA,IAChD;AAAA,IACA,cAAc,2BAA2B,gBAAgB,CAAC;AAAA,IAC1D,aAAa,OAAO,KAAK,KAAK;AAAA,IAC9B,eAAe,iBAAiB;AAAA,EAClC;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import { normalizeCSSColor } from "@tamagui/normalize-css-color";
2
- import { defaultOffset } from "./expandStyles";
3
- import { rgba } from "./normalizeColor";
2
+ import { defaultOffset } from "./expandStyles.js";
3
+ import { rgba } from "./normalizeColor.js";
4
4
  import { normalizeValueWithProperty } from "./normalizeValueWithProperty.js";
5
5
  function normalizeShadow({
6
6
  shadowColor,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/normalizeShadow.native.ts"],
4
- "sourcesContent": ["import { normalizeCSSColor } from '@tamagui/normalize-css-color'\n\nimport { defaultOffset } from './expandStyles'\nimport { rgba } from './normalizeColor'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n const colorStr = String(shadowColor || 'black')\n const val = normalizeCSSColor(colorStr)\n if (typeof val !== 'number') {\n throw new Error(`invalid shadow color ${colorStr}`)\n }\n const { r, g, b, a } = rgba(val)\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor: `rgb(${r},${g},${b})`,\n shadowOpacity: shadowOpacity ?? a,\n }\n}\n"],
4
+ "sourcesContent": ["import { normalizeCSSColor } from '@tamagui/normalize-css-color'\n\nimport { defaultOffset } from './expandStyles.js'\nimport { rgba } from './normalizeColor.js'\nimport { normalizeValueWithProperty } from './normalizeValueWithProperty.js'\n\nexport function normalizeShadow({\n shadowColor,\n shadowOffset,\n shadowOpacity,\n shadowRadius,\n}: Record<string, any>) {\n const { height, width } = shadowOffset || defaultOffset\n const colorStr = String(shadowColor || 'black')\n const val = normalizeCSSColor(colorStr)\n if (typeof val !== 'number') {\n throw new Error(`invalid shadow color ${colorStr}`)\n }\n const { r, g, b, a } = rgba(val)\n return {\n shadowOffset: {\n width: normalizeValueWithProperty(width || 0),\n height: normalizeValueWithProperty(height || 0),\n },\n shadowRadius: normalizeValueWithProperty(shadowRadius || 0),\n shadowColor: `rgb(${r},${g},${b})`,\n shadowOpacity: shadowOpacity ?? a,\n }\n}\n"],
5
5
  "mappings": "AAAA,SAAS,yBAAyB;AAElC,SAAS,qBAAqB;AAC9B,SAAS,YAAY;AACrB,SAAS,kCAAkC;AAEpC,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAwB;AACtB,QAAM,EAAE,QAAQ,MAAM,IAAI,gBAAgB;AAC1C,QAAM,WAAW,OAAO,eAAe,OAAO;AAC9C,QAAM,MAAM,kBAAkB,QAAQ;AACtC,MAAI,OAAO,QAAQ,UAAU;AAC3B,UAAM,IAAI,MAAM,wBAAwB,UAAU;AAAA,EACpD;AACA,QAAM,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,KAAK,GAAG;AAC/B,SAAO;AAAA,IACL,cAAc;AAAA,MACZ,OAAO,2BAA2B,SAAS,CAAC;AAAA,MAC5C,QAAQ,2BAA2B,UAAU,CAAC;AAAA,IAChD;AAAA,IACA,cAAc,2BAA2B,gBAAgB,CAAC;AAAA,IAC1D,aAAa,OAAO,KAAK,KAAK;AAAA,IAC9B,eAAe,iBAAiB;AAAA,EAClC;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import { isWeb } from "@tamagui/constants";
2
- import { getAllSelectors } from "./insertStyleRule";
3
- import { names, normalizeColor } from "./normalizeColor";
4
- import { normalizeStylePropKeys } from "./normalizeStylePropKeys";
2
+ import { getAllSelectors } from "./insertStyleRule.js";
3
+ import { names, normalizeColor } from "./normalizeColor.js";
4
+ import { normalizeStylePropKeys } from "./normalizeStylePropKeys.js";
5
5
  const colorCache = {};
6
6
  function normalizeValueWithProperty(value, property) {
7
7
  if (value in colorCache) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/normalizeValueWithProperty.ts"],
4
- "sourcesContent": ["/**\n * Some parts adapted from react-native-web\n * Copyright (c) Nicolas Gallagher licensed under the MIT license.\n */\n\nimport { isWeb } from '@tamagui/constants'\n\nimport { getAllSelectors } from './insertStyleRule'\nimport { names, normalizeColor } from './normalizeColor'\nimport { normalizeStylePropKeys } from './normalizeStylePropKeys'\n\nconst colorCache = {}\n\nexport function normalizeValueWithProperty(value: any, property?: string): any {\n if (value in colorCache) {\n return colorCache[value]\n }\n if (property && property in unitlessNumbers) {\n return value\n }\n let res = value\n if (property && (property in normalizeStylePropKeys || value in names)) {\n res = normalizeColor(value)\n colorCache[value] = res\n } else if (\n process.env.TAMAGUI_TARGET === 'web' &&\n typeof value === 'number' &&\n (property === undefined ||\n !(property in unitlessNumbers || property in stringNumbers))\n ) {\n res = `${value}px`\n } else if (isWeb && property !== undefined && property in stringNumbers) {\n res = `${res}`\n }\n return res\n}\n\nconst stringNumbers = {\n zIndex: true,\n}\n\nconst unitlessNumbers = {\n WebkitLineClamp: true,\n animationIterationCount: true,\n aspectRatio: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n columnCount: true,\n flex: true,\n flexGrow: true,\n flexBasis: true,\n flexOrder: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n fontWeight: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowGap: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnGap: true,\n gridColumnStart: true,\n lineClamp: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zoom: true,\n scale: true,\n scaleX: true,\n scaleY: true,\n scaleZ: true,\n shadowOpacity: true,\n}\n\n// getting real values for colors for animations (reverse mapped from CSS)\n// this isn't beautiful, but will do relatively fine performance for now\nconst rcache = {}\nexport function reverseMapClassNameToValue(key: string, className: string) {\n const selectors = getAllSelectors()\n const cssRule = selectors[className]\n if (rcache[cssRule]) return rcache[cssRule]\n if (!cssRule) {\n return\n }\n const cssVal = cssRule.replace(/.*:/, '').replace(/;.*/, '').trim()\n let res: any\n if (cssVal.startsWith('var(')) {\n res = cssVal\n } else if (unitlessNumbers[key]) {\n res = +cssVal\n } else if (cssVal.endsWith('px')) {\n res = +cssVal.replace('px', '')\n } else {\n res = cssVal\n }\n rcache[cssRule] = res\n if (process.env.NODE_ENV === 'development') {\n // ensure we are parsing properly\n if (typeof res === 'number' && isNaN(res)) {\n // eslint-disable-next-line no-console\n console.log('Tamagui invalid parsed value, NaN:', {\n res,\n cssVal,\n cssRule,\n key,\n className,\n })\n }\n }\n return res\n}\n"],
4
+ "sourcesContent": ["/**\n * Some parts adapted from react-native-web\n * Copyright (c) Nicolas Gallagher licensed under the MIT license.\n */\n\nimport { isWeb } from '@tamagui/constants'\n\nimport { getAllSelectors } from './insertStyleRule.js'\nimport { names, normalizeColor } from './normalizeColor.js'\nimport { normalizeStylePropKeys } from './normalizeStylePropKeys.js'\n\nconst colorCache = {}\n\nexport function normalizeValueWithProperty(value: any, property?: string): any {\n if (value in colorCache) {\n return colorCache[value]\n }\n if (property && property in unitlessNumbers) {\n return value\n }\n let res = value\n if (property && (property in normalizeStylePropKeys || value in names)) {\n res = normalizeColor(value)\n colorCache[value] = res\n } else if (\n process.env.TAMAGUI_TARGET === 'web' &&\n typeof value === 'number' &&\n (property === undefined ||\n !(property in unitlessNumbers || property in stringNumbers))\n ) {\n res = `${value}px`\n } else if (isWeb && property !== undefined && property in stringNumbers) {\n res = `${res}`\n }\n return res\n}\n\nconst stringNumbers = {\n zIndex: true,\n}\n\nconst unitlessNumbers = {\n WebkitLineClamp: true,\n animationIterationCount: true,\n aspectRatio: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n columnCount: true,\n flex: true,\n flexGrow: true,\n flexBasis: true,\n flexOrder: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n fontWeight: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowGap: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnGap: true,\n gridColumnStart: true,\n lineClamp: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zoom: true,\n scale: true,\n scaleX: true,\n scaleY: true,\n scaleZ: true,\n shadowOpacity: true,\n}\n\n// getting real values for colors for animations (reverse mapped from CSS)\n// this isn't beautiful, but will do relatively fine performance for now\nconst rcache = {}\nexport function reverseMapClassNameToValue(key: string, className: string) {\n const selectors = getAllSelectors()\n const cssRule = selectors[className]\n if (rcache[cssRule]) return rcache[cssRule]\n if (!cssRule) {\n return\n }\n const cssVal = cssRule.replace(/.*:/, '').replace(/;.*/, '').trim()\n let res: any\n if (cssVal.startsWith('var(')) {\n res = cssVal\n } else if (unitlessNumbers[key]) {\n res = +cssVal\n } else if (cssVal.endsWith('px')) {\n res = +cssVal.replace('px', '')\n } else {\n res = cssVal\n }\n rcache[cssRule] = res\n if (process.env.NODE_ENV === 'development') {\n // ensure we are parsing properly\n if (typeof res === 'number' && isNaN(res)) {\n // eslint-disable-next-line no-console\n console.log('Tamagui invalid parsed value, NaN:', {\n res,\n cssVal,\n cssRule,\n key,\n className,\n })\n }\n }\n return res\n}\n"],
5
5
  "mappings": "AAKA,SAAS,aAAa;AAEtB,SAAS,uBAAuB;AAChC,SAAS,OAAO,sBAAsB;AACtC,SAAS,8BAA8B;AAEvC,MAAM,aAAa,CAAC;AAEb,SAAS,2BAA2B,OAAY,UAAwB;AAC7E,MAAI,SAAS,YAAY;AACvB,WAAO,WAAW,KAAK;AAAA,EACzB;AACA,MAAI,YAAY,YAAY,iBAAiB;AAC3C,WAAO;AAAA,EACT;AACA,MAAI,MAAM;AACV,MAAI,aAAa,YAAY,0BAA0B,SAAS,QAAQ;AACtE,UAAM,eAAe,KAAK;AAC1B,eAAW,KAAK,IAAI;AAAA,EACtB,WACE,QAAQ,IAAI,mBAAmB,SAC/B,OAAO,UAAU,aAChB,aAAa,UACZ,EAAE,YAAY,mBAAmB,YAAY,iBAC/C;AACA,UAAM,GAAG;AAAA,EACX,WAAW,SAAS,aAAa,UAAa,YAAY,eAAe;AACvE,UAAM,GAAG;AAAA,EACX;AACA,SAAO;AACT;AAEA,MAAM,gBAAgB;AAAA,EACpB,QAAQ;AACV;AAEA,MAAM,kBAAkB;AAAA,EACtB,iBAAiB;AAAA,EACjB,yBAAyB;AAAA,EACzB,aAAa;AAAA,EACb,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,eAAe;AACjB;AAIA,MAAM,SAAS,CAAC;AACT,SAAS,2BAA2B,KAAa,WAAmB;AACzE,QAAM,YAAY,gBAAgB;AAClC,QAAM,UAAU,UAAU,SAAS;AACnC,MAAI,OAAO,OAAO;AAAG,WAAO,OAAO,OAAO;AAC1C,MAAI,CAAC,SAAS;AACZ;AAAA,EACF;AACA,QAAM,SAAS,QAAQ,QAAQ,OAAO,EAAE,EAAE,QAAQ,OAAO,EAAE,EAAE,KAAK;AAClE,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM,GAAG;AAC7B,UAAM;AAAA,EACR,WAAW,gBAAgB,GAAG,GAAG;AAC/B,UAAM,CAAC;AAAA,EACT,WAAW,OAAO,SAAS,IAAI,GAAG;AAChC,UAAM,CAAC,OAAO,QAAQ,MAAM,EAAE;AAAA,EAChC,OAAO;AACL,UAAM;AAAA,EACR;AACA,SAAO,OAAO,IAAI;AAClB,MAAI,QAAQ,IAAI,aAAa,eAAe;AAE1C,QAAI,OAAO,QAAQ,YAAY,MAAM,GAAG,GAAG;AAEzC,cAAQ,IAAI,sCAAsC;AAAA,QAChD;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AACA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import { isWeb } from "@tamagui/constants";
2
- import { getAllSelectors } from "./insertStyleRule";
3
- import { names, normalizeColor } from "./normalizeColor";
4
- import { normalizeStylePropKeys } from "./normalizeStylePropKeys";
2
+ import { getAllSelectors } from "./insertStyleRule.js";
3
+ import { names, normalizeColor } from "./normalizeColor.js";
4
+ import { normalizeStylePropKeys } from "./normalizeStylePropKeys.js";
5
5
  const colorCache = {};
6
6
  function normalizeValueWithProperty(value, property) {
7
7
  if (value in colorCache) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/normalizeValueWithProperty.ts"],
4
- "sourcesContent": ["/**\n * Some parts adapted from react-native-web\n * Copyright (c) Nicolas Gallagher licensed under the MIT license.\n */\n\nimport { isWeb } from '@tamagui/constants'\n\nimport { getAllSelectors } from './insertStyleRule'\nimport { names, normalizeColor } from './normalizeColor'\nimport { normalizeStylePropKeys } from './normalizeStylePropKeys'\n\nconst colorCache = {}\n\nexport function normalizeValueWithProperty(value: any, property?: string): any {\n if (value in colorCache) {\n return colorCache[value]\n }\n if (property && property in unitlessNumbers) {\n return value\n }\n let res = value\n if (property && (property in normalizeStylePropKeys || value in names)) {\n res = normalizeColor(value)\n colorCache[value] = res\n } else if (\n process.env.TAMAGUI_TARGET === 'web' &&\n typeof value === 'number' &&\n (property === undefined ||\n !(property in unitlessNumbers || property in stringNumbers))\n ) {\n res = `${value}px`\n } else if (isWeb && property !== undefined && property in stringNumbers) {\n res = `${res}`\n }\n return res\n}\n\nconst stringNumbers = {\n zIndex: true,\n}\n\nconst unitlessNumbers = {\n WebkitLineClamp: true,\n animationIterationCount: true,\n aspectRatio: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n columnCount: true,\n flex: true,\n flexGrow: true,\n flexBasis: true,\n flexOrder: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n fontWeight: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowGap: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnGap: true,\n gridColumnStart: true,\n lineClamp: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zoom: true,\n scale: true,\n scaleX: true,\n scaleY: true,\n scaleZ: true,\n shadowOpacity: true,\n}\n\n// getting real values for colors for animations (reverse mapped from CSS)\n// this isn't beautiful, but will do relatively fine performance for now\nconst rcache = {}\nexport function reverseMapClassNameToValue(key: string, className: string) {\n const selectors = getAllSelectors()\n const cssRule = selectors[className]\n if (rcache[cssRule]) return rcache[cssRule]\n if (!cssRule) {\n return\n }\n const cssVal = cssRule.replace(/.*:/, '').replace(/;.*/, '').trim()\n let res: any\n if (cssVal.startsWith('var(')) {\n res = cssVal\n } else if (unitlessNumbers[key]) {\n res = +cssVal\n } else if (cssVal.endsWith('px')) {\n res = +cssVal.replace('px', '')\n } else {\n res = cssVal\n }\n rcache[cssRule] = res\n if (process.env.NODE_ENV === 'development') {\n // ensure we are parsing properly\n if (typeof res === 'number' && isNaN(res)) {\n // eslint-disable-next-line no-console\n console.log('Tamagui invalid parsed value, NaN:', {\n res,\n cssVal,\n cssRule,\n key,\n className,\n })\n }\n }\n return res\n}\n"],
4
+ "sourcesContent": ["/**\n * Some parts adapted from react-native-web\n * Copyright (c) Nicolas Gallagher licensed under the MIT license.\n */\n\nimport { isWeb } from '@tamagui/constants'\n\nimport { getAllSelectors } from './insertStyleRule.js'\nimport { names, normalizeColor } from './normalizeColor.js'\nimport { normalizeStylePropKeys } from './normalizeStylePropKeys.js'\n\nconst colorCache = {}\n\nexport function normalizeValueWithProperty(value: any, property?: string): any {\n if (value in colorCache) {\n return colorCache[value]\n }\n if (property && property in unitlessNumbers) {\n return value\n }\n let res = value\n if (property && (property in normalizeStylePropKeys || value in names)) {\n res = normalizeColor(value)\n colorCache[value] = res\n } else if (\n process.env.TAMAGUI_TARGET === 'web' &&\n typeof value === 'number' &&\n (property === undefined ||\n !(property in unitlessNumbers || property in stringNumbers))\n ) {\n res = `${value}px`\n } else if (isWeb && property !== undefined && property in stringNumbers) {\n res = `${res}`\n }\n return res\n}\n\nconst stringNumbers = {\n zIndex: true,\n}\n\nconst unitlessNumbers = {\n WebkitLineClamp: true,\n animationIterationCount: true,\n aspectRatio: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n columnCount: true,\n flex: true,\n flexGrow: true,\n flexBasis: true,\n flexOrder: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n fontWeight: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowGap: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnGap: true,\n gridColumnStart: true,\n lineClamp: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zoom: true,\n scale: true,\n scaleX: true,\n scaleY: true,\n scaleZ: true,\n shadowOpacity: true,\n}\n\n// getting real values for colors for animations (reverse mapped from CSS)\n// this isn't beautiful, but will do relatively fine performance for now\nconst rcache = {}\nexport function reverseMapClassNameToValue(key: string, className: string) {\n const selectors = getAllSelectors()\n const cssRule = selectors[className]\n if (rcache[cssRule]) return rcache[cssRule]\n if (!cssRule) {\n return\n }\n const cssVal = cssRule.replace(/.*:/, '').replace(/;.*/, '').trim()\n let res: any\n if (cssVal.startsWith('var(')) {\n res = cssVal\n } else if (unitlessNumbers[key]) {\n res = +cssVal\n } else if (cssVal.endsWith('px')) {\n res = +cssVal.replace('px', '')\n } else {\n res = cssVal\n }\n rcache[cssRule] = res\n if (process.env.NODE_ENV === 'development') {\n // ensure we are parsing properly\n if (typeof res === 'number' && isNaN(res)) {\n // eslint-disable-next-line no-console\n console.log('Tamagui invalid parsed value, NaN:', {\n res,\n cssVal,\n cssRule,\n key,\n className,\n })\n }\n }\n return res\n}\n"],
5
5
  "mappings": "AAKA,SAAS,aAAa;AAEtB,SAAS,uBAAuB;AAChC,SAAS,OAAO,sBAAsB;AACtC,SAAS,8BAA8B;AAEvC,MAAM,aAAa,CAAC;AAEb,SAAS,2BAA2B,OAAY,UAAwB;AAC7E,MAAI,SAAS,YAAY;AACvB,WAAO,WAAW,KAAK;AAAA,EACzB;AACA,MAAI,YAAY,YAAY,iBAAiB;AAC3C,WAAO;AAAA,EACT;AACA,MAAI,MAAM;AACV,MAAI,aAAa,YAAY,0BAA0B,SAAS,QAAQ;AACtE,UAAM,eAAe,KAAK;AAC1B,eAAW,KAAK,IAAI;AAAA,EACtB,WACE,QAAQ,IAAI,mBAAmB,SAC/B,OAAO,UAAU,aAChB,aAAa,UACZ,EAAE,YAAY,mBAAmB,YAAY,iBAC/C;AACA,UAAM,GAAG;AAAA,EACX,WAAW,SAAS,aAAa,UAAa,YAAY,eAAe;AACvE,UAAM,GAAG;AAAA,EACX;AACA,SAAO;AACT;AAEA,MAAM,gBAAgB;AAAA,EACpB,QAAQ;AACV;AAEA,MAAM,kBAAkB;AAAA,EACtB,iBAAiB;AAAA,EACjB,yBAAyB;AAAA,EACzB,aAAa;AAAA,EACb,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,eAAe;AACjB;AAIA,MAAM,SAAS,CAAC;AACT,SAAS,2BAA2B,KAAa,WAAmB;AACzE,QAAM,YAAY,gBAAgB;AAClC,QAAM,UAAU,UAAU,SAAS;AACnC,MAAI,OAAO,OAAO;AAAG,WAAO,OAAO,OAAO;AAC1C,MAAI,CAAC,SAAS;AACZ;AAAA,EACF;AACA,QAAM,SAAS,QAAQ,QAAQ,OAAO,EAAE,EAAE,QAAQ,OAAO,EAAE,EAAE,KAAK;AAClE,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM,GAAG;AAC7B,UAAM;AAAA,EACR,WAAW,gBAAgB,GAAG,GAAG;AAC/B,UAAM,CAAC;AAAA,EACT,WAAW,OAAO,SAAS,IAAI,GAAG;AAChC,UAAM,CAAC,OAAO,QAAQ,MAAM,EAAE;AAAA,EAChC,OAAO;AACL,UAAM;AAAA,EACR;AACA,SAAO,OAAO,IAAI;AAClB,MAAI,QAAQ,IAAI,aAAa,eAAe;AAE1C,QAAI,OAAO,QAAQ,YAAY,MAAM,GAAG,GAAG;AAEzC,cAAQ,IAAI,sCAAsC;AAAA,QAChD;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AACA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- import { createProxy } from "./createProxy";
1
+ import { createProxy } from "./createProxy.js";
2
2
  function proxyThemeVariables(obj) {
3
3
  return createProxy(obj || {}, {
4
4
  has(target, key) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/proxyThemeVariables.tsx"],
4
- "sourcesContent": ["import { createProxy } from './createProxy'\n\nexport function proxyThemeVariables<A extends Object>(obj: A): A {\n return createProxy<A>(obj || {}, {\n has(target, key) {\n return Reflect.has(target, removeStarting$(key))\n },\n get(target, key) {\n return Reflect.get(target, removeStarting$(key))\n },\n })\n}\n\nconst removeStarting$ = (str: string | symbol) =>\n typeof str === 'string' && str[0] === '$' ? str.slice(1) : str\n"],
4
+ "sourcesContent": ["import { createProxy } from './createProxy.js'\n\nexport function proxyThemeVariables<A extends Object>(obj: A): A {\n return createProxy<A>(obj || {}, {\n has(target, key) {\n return Reflect.has(target, removeStarting$(key))\n },\n get(target, key) {\n return Reflect.get(target, removeStarting$(key))\n },\n })\n}\n\nconst removeStarting$ = (str: string | symbol) =>\n typeof str === 'string' && str[0] === '$' ? str.slice(1) : str\n"],
5
5
  "mappings": "AAAA,SAAS,mBAAmB;AAErB,SAAS,oBAAsC,KAAW;AAC/D,SAAO,YAAe,OAAO,CAAC,GAAG;AAAA,IAC/B,IAAI,QAAQ,KAAK;AACf,aAAO,QAAQ,IAAI,QAAQ,gBAAgB,GAAG,CAAC;AAAA,IACjD;AAAA,IACA,IAAI,QAAQ,KAAK;AACf,aAAO,QAAQ,IAAI,QAAQ,gBAAgB,GAAG,CAAC;AAAA,IACjD;AAAA,EACF,CAAC;AACH;AAEA,MAAM,kBAAkB,CAAC,QACvB,OAAO,QAAQ,YAAY,IAAI,CAAC,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- import { createProxy } from "./createProxy";
1
+ import { createProxy } from "./createProxy.js";
2
2
  function proxyThemeVariables(obj) {
3
3
  return createProxy(obj || {}, {
4
4
  has(target, key) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/proxyThemeVariables.tsx"],
4
- "sourcesContent": ["import { createProxy } from './createProxy'\n\nexport function proxyThemeVariables<A extends Object>(obj: A): A {\n return createProxy<A>(obj || {}, {\n has(target, key) {\n return Reflect.has(target, removeStarting$(key))\n },\n get(target, key) {\n return Reflect.get(target, removeStarting$(key))\n },\n })\n}\n\nconst removeStarting$ = (str: string | symbol) =>\n typeof str === 'string' && str[0] === '$' ? str.slice(1) : str\n"],
4
+ "sourcesContent": ["import { createProxy } from './createProxy.js'\n\nexport function proxyThemeVariables<A extends Object>(obj: A): A {\n return createProxy<A>(obj || {}, {\n has(target, key) {\n return Reflect.has(target, removeStarting$(key))\n },\n get(target, key) {\n return Reflect.get(target, removeStarting$(key))\n },\n })\n}\n\nconst removeStarting$ = (str: string | symbol) =>\n typeof str === 'string' && str[0] === '$' ? str.slice(1) : str\n"],
5
5
  "mappings": "AAAA,SAAS,mBAAmB;AAErB,SAAS,oBAAsC,KAAW;AAC/D,SAAO,YAAe,OAAO,CAAC,GAAG;AAAA,IAC/B,IAAI,QAAQ,KAAK;AACf,aAAO,QAAQ,IAAI,QAAQ,gBAAgB,GAAG,CAAC;AAAA,IACjD;AAAA,IACA,IAAI,QAAQ,KAAK;AACf,aAAO,QAAQ,IAAI,QAAQ,gBAAgB,GAAG,CAAC;AAAA,IACjD;AAAA,EACF,CAAC;AACH;AAEA,MAAM,kBAAkB,CAAC,QACvB,OAAO,QAAQ,YAAY,IAAI,CAAC,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- import { createCSSVariable } from "../createVariable";
1
+ import { createCSSVariable } from "../createVariable.js";
2
2
  const registerCSSVariable = (v) => {
3
3
  tokensValueToVariable.set(v.val, v);
4
4
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/registerCSSVariable.ts"],
4
- "sourcesContent": ["import { Variable, createCSSVariable } from '../createVariable'\n\nexport const registerCSSVariable = (v: Variable) => {\n tokensValueToVariable.set(v.val, v)\n}\n\nexport const variableToCSS = (v: Variable) => {\n return `--${createCSSVariable(v.name, false)}:${\n typeof v.val === 'number' ? `${v.val}px` : v.val\n }`\n}\n\nexport const tokensValueToVariable = new Map<any, any>()\n"],
4
+ "sourcesContent": ["import { Variable, createCSSVariable } from '../createVariable.js'\n\nexport const registerCSSVariable = (v: Variable) => {\n tokensValueToVariable.set(v.val, v)\n}\n\nexport const variableToCSS = (v: Variable) => {\n return `--${createCSSVariable(v.name, false)}:${\n typeof v.val === 'number' ? `${v.val}px` : v.val\n }`\n}\n\nexport const tokensValueToVariable = new Map<any, any>()\n"],
5
5
  "mappings": "AAAA,SAAmB,yBAAyB;AAErC,MAAM,sBAAsB,CAAC,MAAgB;AAClD,wBAAsB,IAAI,EAAE,KAAK,CAAC;AACpC;AAEO,MAAM,gBAAgB,CAAC,MAAgB;AAC5C,SAAO,KAAK,kBAAkB,EAAE,MAAM,KAAK,KACzC,OAAO,EAAE,QAAQ,WAAW,GAAG,EAAE,UAAU,EAAE;AAEjD;AAEO,MAAM,wBAAwB,oBAAI,IAAc;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- import { createCSSVariable } from "../createVariable";
1
+ import { createCSSVariable } from "../createVariable.js";
2
2
  const registerCSSVariable = (v) => {
3
3
  tokensValueToVariable.set(v.val, v);
4
4
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/registerCSSVariable.ts"],
4
- "sourcesContent": ["import { Variable, createCSSVariable } from '../createVariable'\n\nexport const registerCSSVariable = (v: Variable) => {\n tokensValueToVariable.set(v.val, v)\n}\n\nexport const variableToCSS = (v: Variable) => {\n return `--${createCSSVariable(v.name, false)}:${\n typeof v.val === 'number' ? `${v.val}px` : v.val\n }`\n}\n\nexport const tokensValueToVariable = new Map<any, any>()\n"],
4
+ "sourcesContent": ["import { Variable, createCSSVariable } from '../createVariable.js'\n\nexport const registerCSSVariable = (v: Variable) => {\n tokensValueToVariable.set(v.val, v)\n}\n\nexport const variableToCSS = (v: Variable) => {\n return `--${createCSSVariable(v.name, false)}:${\n typeof v.val === 'number' ? `${v.val}px` : v.val\n }`\n}\n\nexport const tokensValueToVariable = new Map<any, any>()\n"],
5
5
  "mappings": "AAAA,SAAmB,yBAAyB;AAErC,MAAM,sBAAsB,CAAC,MAAgB;AAClD,wBAAsB,IAAI,EAAE,KAAK,CAAC;AACpC;AAEO,MAAM,gBAAgB,CAAC,MAAgB;AAC5C,SAAO,KAAK,kBAAkB,EAAE,MAAM,KAAK,KACzC,OAAO,EAAE,QAAQ,WAAW,GAAG,EAAE,UAAU,EAAE;AAEjD;AAEO,MAAM,wBAAwB,oBAAI,IAAc;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import React, { forwardRef } from "react";
3
- import { Theme } from "../views/Theme";
3
+ import { Theme } from "../views/Theme.js";
4
4
  function themeable(component, opts) {
5
5
  const withThemeComponent = forwardRef(function WithTheme(props, ref) {
6
6
  const { themeInverse, theme, componentName, themeReset, ...rest } = props;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/themeable.tsx"],
4
- "sourcesContent": ["import React, { forwardRef, useId } from 'react'\n\nimport { DebugProp, ThemeName } from '../types'\nimport { Theme } from '../views/Theme'\n\nexport interface ThemeableProps {\n theme?: ThemeName | null\n themeInverse?: boolean\n themeReset?: boolean\n componentName?: string\n debug?: DebugProp\n}\n\nexport function themeable<Component extends (props: any) => any>(\n component: Component,\n opts?: { componentName?: string }\n) {\n const withThemeComponent = forwardRef(function WithTheme(props: ThemeableProps, ref) {\n const { themeInverse, theme, componentName, themeReset, ...rest } = props\n const element = React.createElement(component, { ...rest, ref } as any)\n\n return (\n <Theme\n inverse={themeInverse}\n componentName={componentName || opts?.componentName}\n name={(theme as any) || null}\n data-themeable\n debug={props.debug}\n reset={props.themeReset}\n >\n {element}\n </Theme>\n )\n })\n\n const withTheme: any = withThemeComponent\n withTheme.displayName = `Themed(${\n (component as any)?.displayName || (component as any)?.name || 'Anonymous'\n })`\n\n return withTheme as Component extends (props: infer P) => infer R\n ? (props: Omit<P, 'theme' | 'themeInverse'> & ThemeableProps) => R\n : unknown\n}\n"],
4
+ "sourcesContent": ["import React, { forwardRef, useId } from 'react'\n\nimport { DebugProp, ThemeName } from '../types.js'\nimport { Theme } from '../views/Theme.js'\n\nexport interface ThemeableProps {\n theme?: ThemeName | null\n themeInverse?: boolean\n themeReset?: boolean\n componentName?: string\n debug?: DebugProp\n}\n\nexport function themeable<Component extends (props: any) => any>(\n component: Component,\n opts?: { componentName?: string }\n) {\n const withThemeComponent = forwardRef(function WithTheme(props: ThemeableProps, ref) {\n const { themeInverse, theme, componentName, themeReset, ...rest } = props\n const element = React.createElement(component, { ...rest, ref } as any)\n\n return (\n <Theme\n inverse={themeInverse}\n componentName={componentName || opts?.componentName}\n name={(theme as any) || null}\n data-themeable\n debug={props.debug}\n reset={props.themeReset}\n >\n {element}\n </Theme>\n )\n })\n\n const withTheme: any = withThemeComponent\n withTheme.displayName = `Themed(${\n (component as any)?.displayName || (component as any)?.name || 'Anonymous'\n })`\n\n return withTheme as Component extends (props: infer P) => infer R\n ? (props: Omit<P, 'theme' | 'themeInverse'> & ThemeableProps) => R\n : unknown\n}\n"],
5
5
  "mappings": "AAsBM;AAtBN,OAAO,SAAS,kBAAyB;AAGzC,SAAS,aAAa;AAUf,SAAS,UACd,WACA,MACA;AACA,QAAM,qBAAqB,WAAW,SAAS,UAAU,OAAuB,KAAK;AACnF,UAAM,EAAE,cAAc,OAAO,eAAe,YAAY,GAAG,KAAK,IAAI;AACpE,UAAM,UAAU,MAAM,cAAc,WAAW,EAAE,GAAG,MAAM,IAAI,CAAQ;AAEtE,WACE;AAAA,MAAC;AAAA;AAAA,QACC,SAAS;AAAA,QACT,eAAe,kBAAiB,6BAAM;AAAA,QACtC,MAAO,SAAiB;AAAA,QACxB,kBAAc;AAAA,QACd,OAAO,MAAM;AAAA,QACb,OAAO,MAAM;AAAA,QAEZ;AAAA;AAAA,IACH;AAAA,EAEJ,CAAC;AAED,QAAM,YAAiB;AACvB,YAAU,cAAc,WACrB,uCAAmB,iBAAgB,uCAAmB,SAAQ;AAGjE,SAAO;AAGT;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import React, { forwardRef } from "react";
3
- import { Theme } from "../views/Theme";
3
+ import { Theme } from "../views/Theme.js";
4
4
  function themeable(component, opts) {
5
5
  const withThemeComponent = forwardRef(function WithTheme(props, ref) {
6
6
  const { themeInverse, theme, componentName, themeReset, ...rest } = props;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/themeable.tsx"],
4
- "sourcesContent": ["import React, { forwardRef, useId } from 'react'\n\nimport { DebugProp, ThemeName } from '../types'\nimport { Theme } from '../views/Theme'\n\nexport interface ThemeableProps {\n theme?: ThemeName | null\n themeInverse?: boolean\n themeReset?: boolean\n componentName?: string\n debug?: DebugProp\n}\n\nexport function themeable<Component extends (props: any) => any>(\n component: Component,\n opts?: { componentName?: string }\n) {\n const withThemeComponent = forwardRef(function WithTheme(props: ThemeableProps, ref) {\n const { themeInverse, theme, componentName, themeReset, ...rest } = props\n const element = React.createElement(component, { ...rest, ref } as any)\n\n return (\n <Theme\n inverse={themeInverse}\n componentName={componentName || opts?.componentName}\n name={(theme as any) || null}\n data-themeable\n debug={props.debug}\n reset={props.themeReset}\n >\n {element}\n </Theme>\n )\n })\n\n const withTheme: any = withThemeComponent\n withTheme.displayName = `Themed(${\n (component as any)?.displayName || (component as any)?.name || 'Anonymous'\n })`\n\n return withTheme as Component extends (props: infer P) => infer R\n ? (props: Omit<P, 'theme' | 'themeInverse'> & ThemeableProps) => R\n : unknown\n}\n"],
4
+ "sourcesContent": ["import React, { forwardRef, useId } from 'react'\n\nimport { DebugProp, ThemeName } from '../types.js'\nimport { Theme } from '../views/Theme.js'\n\nexport interface ThemeableProps {\n theme?: ThemeName | null\n themeInverse?: boolean\n themeReset?: boolean\n componentName?: string\n debug?: DebugProp\n}\n\nexport function themeable<Component extends (props: any) => any>(\n component: Component,\n opts?: { componentName?: string }\n) {\n const withThemeComponent = forwardRef(function WithTheme(props: ThemeableProps, ref) {\n const { themeInverse, theme, componentName, themeReset, ...rest } = props\n const element = React.createElement(component, { ...rest, ref } as any)\n\n return (\n <Theme\n inverse={themeInverse}\n componentName={componentName || opts?.componentName}\n name={(theme as any) || null}\n data-themeable\n debug={props.debug}\n reset={props.themeReset}\n >\n {element}\n </Theme>\n )\n })\n\n const withTheme: any = withThemeComponent\n withTheme.displayName = `Themed(${\n (component as any)?.displayName || (component as any)?.name || 'Anonymous'\n })`\n\n return withTheme as Component extends (props: infer P) => infer R\n ? (props: Omit<P, 'theme' | 'themeInverse'> & ThemeableProps) => R\n : unknown\n}\n"],
5
5
  "mappings": "AAsBM;AAtBN,OAAO,SAAS,kBAAyB;AAGzC,SAAS,aAAa;AAUf,SAAS,UACd,WACA,MACA;AACA,QAAM,qBAAqB,WAAW,SAAS,UAAU,OAAuB,KAAK;AACnF,UAAM,EAAE,cAAc,OAAO,eAAe,YAAY,GAAG,KAAK,IAAI;AACpE,UAAM,UAAU,MAAM,cAAc,WAAW,EAAE,GAAG,MAAM,IAAI,CAAQ;AAEtE,WACE;AAAA,MAAC;AAAA;AAAA,QACC,SAAS;AAAA,QACT,eAAe,kBAAiB,6BAAM;AAAA,QACtC,MAAO,SAAiB;AAAA,QACxB,kBAAc;AAAA,QACd,OAAO,MAAM;AAAA,QACb,OAAO,MAAM;AAAA,QAEZ;AAAA;AAAA,IACH;AAAA,EAEJ,CAAC;AAED,QAAM,YAAiB;AACvB,YAAU,cAAc,WACrB,uCAAmB,iBAAgB,uCAAmB,SAAQ;AAGjE,SAAO;AAGT;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
- import { createVariable, isVariable } from "../createVariable";
2
- import { GetThemeUnwrapped } from "../hooks/getThemeUnwrapped";
1
+ import { createVariable, isVariable } from "../createVariable.js";
2
+ import { GetThemeUnwrapped } from "../hooks/getThemeUnwrapped.js";
3
3
  function ensureThemeVariable(theme, key) {
4
4
  const val = theme[key];
5
5
  const themeKey = key;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/themes.ts"],
4
- "sourcesContent": ["import { createVariable, isVariable } from '../createVariable'\nimport { GetThemeUnwrapped } from '../hooks/getThemeUnwrapped'\nimport { CreateTamaguiProps } from '../types'\n\n// mutates, freeze after\n// shared by createTamagui so extracted here\nexport function ensureThemeVariable(theme: any, key: string) {\n const val = theme[key]\n const themeKey = key\n if (!isVariable(val)) {\n theme[key] = createVariable({\n key: themeKey,\n name: themeKey,\n val,\n })\n } else {\n if (val.name !== themeKey) {\n // rename to theme name\n theme[key] = createVariable({\n key: val.name,\n name: themeKey,\n val: val.val,\n })\n }\n }\n}\n\nexport function proxyThemeToParents(\n themeName: string,\n theme: any,\n themes: CreateTamaguiProps['themes']\n) {\n // we could test if this is better as just a straight object spread or fancier proxy\n const cur: string[] = []\n // if theme is dark_blue_alt1_Button\n // this will be the parent names in order: ['dark', 'dark_blue', 'dark_blue_alt1\"]\n const parents = themeName\n .split('_')\n .slice(0, -1)\n .map((part) => {\n cur.push(part)\n return cur.join('_')\n })\n\n const len = parents.length\n\n // proxy fallback values to parent theme values\n return new Proxy(theme, {\n get(target, key) {\n if (key === GetThemeUnwrapped) {\n return theme\n }\n if (!len || Reflect.has(target, key)) {\n return Reflect.get(target, key)\n }\n // check parents\n for (let i = len - 1; i >= 0; i--) {\n const parent = themes[parents[i]]\n if (!parent) continue\n if (Reflect.has(parent, key)) {\n return Reflect.get(parent, key)\n }\n }\n return Reflect.get(target, key)\n },\n })\n}\n"],
4
+ "sourcesContent": ["import { createVariable, isVariable } from '../createVariable.js'\nimport { GetThemeUnwrapped } from '../hooks/getThemeUnwrapped.js'\nimport { CreateTamaguiProps } from '../types.js'\n\n// mutates, freeze after\n// shared by createTamagui so extracted here\nexport function ensureThemeVariable(theme: any, key: string) {\n const val = theme[key]\n const themeKey = key\n if (!isVariable(val)) {\n theme[key] = createVariable({\n key: themeKey,\n name: themeKey,\n val,\n })\n } else {\n if (val.name !== themeKey) {\n // rename to theme name\n theme[key] = createVariable({\n key: val.name,\n name: themeKey,\n val: val.val,\n })\n }\n }\n}\n\nexport function proxyThemeToParents(\n themeName: string,\n theme: any,\n themes: CreateTamaguiProps['themes']\n) {\n // we could test if this is better as just a straight object spread or fancier proxy\n const cur: string[] = []\n // if theme is dark_blue_alt1_Button\n // this will be the parent names in order: ['dark', 'dark_blue', 'dark_blue_alt1\"]\n const parents = themeName\n .split('_')\n .slice(0, -1)\n .map((part) => {\n cur.push(part)\n return cur.join('_')\n })\n\n const len = parents.length\n\n // proxy fallback values to parent theme values\n return new Proxy(theme, {\n get(target, key) {\n if (key === GetThemeUnwrapped) {\n return theme\n }\n if (!len || Reflect.has(target, key)) {\n return Reflect.get(target, key)\n }\n // check parents\n for (let i = len - 1; i >= 0; i--) {\n const parent = themes[parents[i]]\n if (!parent) continue\n if (Reflect.has(parent, key)) {\n return Reflect.get(parent, key)\n }\n }\n return Reflect.get(target, key)\n },\n })\n}\n"],
5
5
  "mappings": "AAAA,SAAS,gBAAgB,kBAAkB;AAC3C,SAAS,yBAAyB;AAK3B,SAAS,oBAAoB,OAAY,KAAa;AAC3D,QAAM,MAAM,MAAM,GAAG;AACrB,QAAM,WAAW;AACjB,MAAI,CAAC,WAAW,GAAG,GAAG;AACpB,UAAM,GAAG,IAAI,eAAe;AAAA,MAC1B,KAAK;AAAA,MACL,MAAM;AAAA,MACN;AAAA,IACF,CAAC;AAAA,EACH,OAAO;AACL,QAAI,IAAI,SAAS,UAAU;AAEzB,YAAM,GAAG,IAAI,eAAe;AAAA,QAC1B,KAAK,IAAI;AAAA,QACT,MAAM;AAAA,QACN,KAAK,IAAI;AAAA,MACX,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEO,SAAS,oBACd,WACA,OACA,QACA;AAEA,QAAM,MAAgB,CAAC;AAGvB,QAAM,UAAU,UACb,MAAM,GAAG,EACT,MAAM,GAAG,EAAE,EACX,IAAI,CAAC,SAAS;AACb,QAAI,KAAK,IAAI;AACb,WAAO,IAAI,KAAK,GAAG;AAAA,EACrB,CAAC;AAEH,QAAM,MAAM,QAAQ;AAGpB,SAAO,IAAI,MAAM,OAAO;AAAA,IACtB,IAAI,QAAQ,KAAK;AACf,UAAI,QAAQ,mBAAmB;AAC7B,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,QAAQ,IAAI,QAAQ,GAAG,GAAG;AACpC,eAAO,QAAQ,IAAI,QAAQ,GAAG;AAAA,MAChC;AAEA,eAAS,IAAI,MAAM,GAAG,KAAK,GAAG,KAAK;AACjC,cAAM,SAAS,OAAO,QAAQ,CAAC,CAAC;AAChC,YAAI,CAAC;AAAQ;AACb,YAAI,QAAQ,IAAI,QAAQ,GAAG,GAAG;AAC5B,iBAAO,QAAQ,IAAI,QAAQ,GAAG;AAAA,QAChC;AAAA,MACF;AACA,aAAO,QAAQ,IAAI,QAAQ,GAAG;AAAA,IAChC;AAAA,EACF,CAAC;AACH;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
- import { createVariable, isVariable } from "../createVariable";
2
- import { GetThemeUnwrapped } from "../hooks/getThemeUnwrapped";
1
+ import { createVariable, isVariable } from "../createVariable.js";
2
+ import { GetThemeUnwrapped } from "../hooks/getThemeUnwrapped.js";
3
3
  function ensureThemeVariable(theme, key) {
4
4
  const val = theme[key];
5
5
  const themeKey = key;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/themes.ts"],
4
- "sourcesContent": ["import { createVariable, isVariable } from '../createVariable'\nimport { GetThemeUnwrapped } from '../hooks/getThemeUnwrapped'\nimport { CreateTamaguiProps } from '../types'\n\n// mutates, freeze after\n// shared by createTamagui so extracted here\nexport function ensureThemeVariable(theme: any, key: string) {\n const val = theme[key]\n const themeKey = key\n if (!isVariable(val)) {\n theme[key] = createVariable({\n key: themeKey,\n name: themeKey,\n val,\n })\n } else {\n if (val.name !== themeKey) {\n // rename to theme name\n theme[key] = createVariable({\n key: val.name,\n name: themeKey,\n val: val.val,\n })\n }\n }\n}\n\nexport function proxyThemeToParents(\n themeName: string,\n theme: any,\n themes: CreateTamaguiProps['themes']\n) {\n // we could test if this is better as just a straight object spread or fancier proxy\n const cur: string[] = []\n // if theme is dark_blue_alt1_Button\n // this will be the parent names in order: ['dark', 'dark_blue', 'dark_blue_alt1\"]\n const parents = themeName\n .split('_')\n .slice(0, -1)\n .map((part) => {\n cur.push(part)\n return cur.join('_')\n })\n\n const len = parents.length\n\n // proxy fallback values to parent theme values\n return new Proxy(theme, {\n get(target, key) {\n if (key === GetThemeUnwrapped) {\n return theme\n }\n if (!len || Reflect.has(target, key)) {\n return Reflect.get(target, key)\n }\n // check parents\n for (let i = len - 1; i >= 0; i--) {\n const parent = themes[parents[i]]\n if (!parent) continue\n if (Reflect.has(parent, key)) {\n return Reflect.get(parent, key)\n }\n }\n return Reflect.get(target, key)\n },\n })\n}\n"],
4
+ "sourcesContent": ["import { createVariable, isVariable } from '../createVariable.js'\nimport { GetThemeUnwrapped } from '../hooks/getThemeUnwrapped.js'\nimport { CreateTamaguiProps } from '../types.js'\n\n// mutates, freeze after\n// shared by createTamagui so extracted here\nexport function ensureThemeVariable(theme: any, key: string) {\n const val = theme[key]\n const themeKey = key\n if (!isVariable(val)) {\n theme[key] = createVariable({\n key: themeKey,\n name: themeKey,\n val,\n })\n } else {\n if (val.name !== themeKey) {\n // rename to theme name\n theme[key] = createVariable({\n key: val.name,\n name: themeKey,\n val: val.val,\n })\n }\n }\n}\n\nexport function proxyThemeToParents(\n themeName: string,\n theme: any,\n themes: CreateTamaguiProps['themes']\n) {\n // we could test if this is better as just a straight object spread or fancier proxy\n const cur: string[] = []\n // if theme is dark_blue_alt1_Button\n // this will be the parent names in order: ['dark', 'dark_blue', 'dark_blue_alt1\"]\n const parents = themeName\n .split('_')\n .slice(0, -1)\n .map((part) => {\n cur.push(part)\n return cur.join('_')\n })\n\n const len = parents.length\n\n // proxy fallback values to parent theme values\n return new Proxy(theme, {\n get(target, key) {\n if (key === GetThemeUnwrapped) {\n return theme\n }\n if (!len || Reflect.has(target, key)) {\n return Reflect.get(target, key)\n }\n // check parents\n for (let i = len - 1; i >= 0; i--) {\n const parent = themes[parents[i]]\n if (!parent) continue\n if (Reflect.has(parent, key)) {\n return Reflect.get(parent, key)\n }\n }\n return Reflect.get(target, key)\n },\n })\n}\n"],
5
5
  "mappings": "AAAA,SAAS,gBAAgB,kBAAkB;AAC3C,SAAS,yBAAyB;AAK3B,SAAS,oBAAoB,OAAY,KAAa;AAC3D,QAAM,MAAM,MAAM,GAAG;AACrB,QAAM,WAAW;AACjB,MAAI,CAAC,WAAW,GAAG,GAAG;AACpB,UAAM,GAAG,IAAI,eAAe;AAAA,MAC1B,KAAK;AAAA,MACL,MAAM;AAAA,MACN;AAAA,IACF,CAAC;AAAA,EACH,OAAO;AACL,QAAI,IAAI,SAAS,UAAU;AAEzB,YAAM,GAAG,IAAI,eAAe;AAAA,QAC1B,KAAK,IAAI;AAAA,QACT,MAAM;AAAA,QACN,KAAK,IAAI;AAAA,MACX,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEO,SAAS,oBACd,WACA,OACA,QACA;AAEA,QAAM,MAAgB,CAAC;AAGvB,QAAM,UAAU,UACb,MAAM,GAAG,EACT,MAAM,GAAG,EAAE,EACX,IAAI,CAAC,SAAS;AACb,QAAI,KAAK,IAAI;AACb,WAAO,IAAI,KAAK,GAAG;AAAA,EACrB,CAAC;AAEH,QAAM,MAAM,QAAQ;AAGpB,SAAO,IAAI,MAAM,OAAO;AAAA,IACtB,IAAI,QAAQ,KAAK;AACf,UAAI,QAAQ,mBAAmB;AAC7B,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,QAAQ,IAAI,QAAQ,GAAG,GAAG;AACpC,eAAO,QAAQ,IAAI,QAAQ,GAAG;AAAA,MAChC;AAEA,eAAS,IAAI,MAAM,GAAG,KAAK,GAAG,KAAK;AACjC,cAAM,SAAS,OAAO,QAAQ,CAAC,CAAC;AAChC,YAAI,CAAC;AAAQ;AACb,YAAI,QAAQ,IAAI,QAAQ,GAAG,GAAG;AAC5B,iBAAO,QAAQ,IAAI,QAAQ,GAAG;AAAA,QAChC;AAAA,MACF;AACA,aAAO,QAAQ,IAAI,QAAQ,GAAG;AAAA,IAChC;AAAA,EACF,CAAC;AACH;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/useShallowSetState.tsx"],
4
- "sourcesContent": ["import React, { startTransition, useCallback } from 'react'\n\nimport { DebugProp } from '../types'\nimport { TamaguiComponentState } from '..'\n\nexport function useShallowSetState<State extends TamaguiComponentState>(\n setter: React.Dispatch<React.SetStateAction<State>>,\n debug?: DebugProp,\n debugName?: string\n) {\n return useCallback(\n (next: Partial<State>) => {\n const shouldTransition = Object.keys(next).every((k) =>\n transitionKeys.has(k as any)\n )\n const run = shouldTransition ? startTransition : (_) => _()\n run(() => {\n setter((prev) => {\n for (const key in next) {\n if (prev[key] !== next[key]) {\n if (process.env.NODE_ENV === 'development' && debug === 'verbose') {\n // eslint-disable-next-line no-console\n console.log(` \u25B2 setState ${debugName}`, next)\n }\n return { ...prev, ...next }\n }\n }\n return prev\n })\n })\n },\n [setter]\n )\n}\n\nconst transitionKeys = new Set<keyof TamaguiComponentState>([\n 'press',\n 'pressIn',\n 'focus',\n 'unmounted',\n])\n"],
5
- "mappings": "AAAA,SAAgB,iBAAiB,mBAAmB;AAK7C,SAAS,mBACd,QACA,OACA,WACA;AACA,SAAO;AAAA,IACL,CAAC,SAAyB;AACxB,YAAM,mBAAmB,OAAO,KAAK,IAAI,EAAE;AAAA,QAAM,CAAC,MAChD,eAAe,IAAI,CAAQ;AAAA,MAC7B;AACA,YAAM,MAAM,mBAAmB,kBAAkB,CAAC,MAAM,EAAE;AAC1D,UAAI,MAAM;AACR,eAAO,CAAC,SAAS;AACf,qBAAW,OAAO,MAAM;AACtB,gBAAI,KAAK,GAAG,MAAM,KAAK,GAAG,GAAG;AAC3B,kBAAI,QAAQ,IAAI,aAAa,iBAAiB,UAAU,WAAW;AAEjE,wBAAQ,IAAI,oBAAe,aAAa,IAAI;AAAA,cAC9C;AACA,qBAAO,EAAE,GAAG,MAAM,GAAG,KAAK;AAAA,YAC5B;AAAA,UACF;AACA,iBAAO;AAAA,QACT,CAAC;AAAA,MACH,CAAC;AAAA,IACH;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACF;AAEA,MAAM,iBAAiB,oBAAI,IAAiC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;",
4
+ "sourcesContent": ["import React, { startTransition, useCallback } from 'react'\n\nimport { DebugProp, TamaguiComponentState } from '../types.js'\n\nexport function useShallowSetState<State extends TamaguiComponentState>(\n setter: React.Dispatch<React.SetStateAction<State>>,\n debug?: DebugProp,\n debugName?: string\n) {\n return useCallback(\n (next: Partial<State>) => {\n const shouldTransition = Object.keys(next).every((k) =>\n transitionKeys.has(k as any)\n )\n const run = shouldTransition ? startTransition : (_) => _()\n run(() => {\n setter((prev) => {\n for (const key in next) {\n if (prev[key] !== next[key]) {\n if (process.env.NODE_ENV === 'development' && debug === 'verbose') {\n // eslint-disable-next-line no-console\n console.log(` \u25B2 setState ${debugName}`, next)\n }\n return { ...prev, ...next }\n }\n }\n return prev\n })\n })\n },\n [setter]\n )\n}\n\nconst transitionKeys = new Set<keyof TamaguiComponentState>([\n 'press',\n 'pressIn',\n 'focus',\n 'unmounted',\n])\n"],
5
+ "mappings": "AAAA,SAAgB,iBAAiB,mBAAmB;AAI7C,SAAS,mBACd,QACA,OACA,WACA;AACA,SAAO;AAAA,IACL,CAAC,SAAyB;AACxB,YAAM,mBAAmB,OAAO,KAAK,IAAI,EAAE;AAAA,QAAM,CAAC,MAChD,eAAe,IAAI,CAAQ;AAAA,MAC7B;AACA,YAAM,MAAM,mBAAmB,kBAAkB,CAAC,MAAM,EAAE;AAC1D,UAAI,MAAM;AACR,eAAO,CAAC,SAAS;AACf,qBAAW,OAAO,MAAM;AACtB,gBAAI,KAAK,GAAG,MAAM,KAAK,GAAG,GAAG;AAC3B,kBAAI,QAAQ,IAAI,aAAa,iBAAiB,UAAU,WAAW;AAEjE,wBAAQ,IAAI,oBAAe,aAAa,IAAI;AAAA,cAC9C;AACA,qBAAO,EAAE,GAAG,MAAM,GAAG,KAAK;AAAA,YAC5B;AAAA,UACF;AACA,iBAAO;AAAA,QACT,CAAC;AAAA,MACH,CAAC;AAAA,IACH;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACF;AAEA,MAAM,iBAAiB,oBAAI,IAAiC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;",
6
6
  "names": []
7
7
  }