@tamagui/web 1.5.6 → 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/views/Text.tsx"],
4
- "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent'\nimport { TextProps, TextPropsBase } from '../types'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
4
+ "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent.js'\nimport { TextProps, TextPropsBase } from '../types.js'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
5
5
  "mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,oBAAoB,mBAAmB;AAGhD,SAAS,uBAAuB;AAGhC,MAAM,eAAe;AAAA,EACnB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,cAAc;AAAA,EACd,YAAY;AACd;AAEO,MAAM,OAAO,gBAAoD;AAAA,EACtE,eAAe;AAAA,EACf,kBAAkB;AAAA,EAClB,QAAQ;AAAA,EAER,cAAc;AAAA;AAAA,IAEZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,GAAI,QACA;AAAA,MACE,SAAS;AAAA,MACT,WAAW;AAAA,MACX,UAAU;AAAA,MACV,QAAQ;AAAA,IACV,IACA;AAAA,MACE,sBAAsB;AAAA,IACxB;AAAA,EACN;AAAA,EAEA,uBAAuB,oBAAI,IAAI,CAAC,YAAY,CAAC;AAAA,EAE7C,UAAU;AAAA,IACR,GAAI,SAAS;AAAA,MACX,eAAe;AAAA,QACb,GAAG;AAAA,QAEH,WAAW,CAAC,kBACV,iBAAiB,IACb;AAAA,UACE,iBAAiB;AAAA,UACjB,iBAAiB;AAAA,UACjB,SAAS;AAAA,UACT,UAAU;AAAA,QACZ,IACA;AAAA,MACR;AAAA,IACF;AAAA;AAAA,IAGA,eAAe;AAAA,MACb,OAAO,MAAM;AAAA,IACf;AAAA,IAEA,YAAY;AAAA,MACV,MAAM;AAAA,QACJ,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,MACA,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,IACF;AAAA,IAEA,SAAS;AAAA,MACP,MAAM,QACF,eACA;AAAA,QACE,eAAe;AAAA,QACf,eAAe;AAAA,MACjB;AAAA,IACN;AAAA,EACF;AAAA,EAEA,YAAY,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AAAA,EAE5C,aAAa;AAAA,IACX,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,CAAC;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import { isWeb } from "@tamagui/constants";
2
2
  import { stylePropsTextOnly, validStyles } from "@tamagui/helpers";
3
- import { createComponent } from "../createComponent";
3
+ import { createComponent } from "../createComponent.js";
4
4
  const ellipseStyle = {
5
5
  maxWidth: "100%",
6
6
  overflow: "hidden",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/Text.tsx"],
4
- "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent'\nimport { TextProps, TextPropsBase } from '../types'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
4
+ "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent.js'\nimport { TextProps, TextPropsBase } from '../types.js'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
5
5
  "mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,oBAAoB,mBAAmB;AAGhD,SAAS,uBAAuB;AAGhC,MAAM,eAAe;AAAA,EACnB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,cAAc;AAAA,EACd,YAAY;AACd;AAEO,MAAM,OAAO,gBAAoD;AAAA,EACtE,eAAe;AAAA,EACf,kBAAkB;AAAA,EAClB,QAAQ;AAAA,EAER,cAAc;AAAA;AAAA,IAEZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,GAAI,QACA;AAAA,MACE,SAAS;AAAA,MACT,WAAW;AAAA,MACX,UAAU;AAAA,MACV,QAAQ;AAAA,IACV,IACA;AAAA,MACE,sBAAsB;AAAA,IACxB;AAAA,EACN;AAAA,EAEA,uBAAuB,oBAAI,IAAI,CAAC,YAAY,CAAC;AAAA,EAE7C,UAAU;AAAA,IACR,GAAI,SAAS;AAAA,MACX,eAAe;AAAA,QACb,GAAG;AAAA,QAEH,WAAW,CAAC,kBACV,iBAAiB,IACb;AAAA,UACE,iBAAiB;AAAA,UACjB,iBAAiB;AAAA,UACjB,SAAS;AAAA,UACT,UAAU;AAAA,QACZ,IACA;AAAA,MACR;AAAA,IACF;AAAA;AAAA,IAGA,eAAe;AAAA,MACb,OAAO,MAAM;AAAA,IACf;AAAA,IAEA,YAAY;AAAA,MACV,MAAM;AAAA,QACJ,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,MACA,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,IACF;AAAA,IAEA,SAAS;AAAA,MACP,MAAM,QACF,eACA;AAAA,QACE,eAAe;AAAA,QACf,eAAe;AAAA,MACjB;AAAA,IACN;AAAA,EACF;AAAA,EAEA,YAAY,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AAAA,EAE5C,aAAa;AAAA,IACX,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,CAAC;",
6
6
  "names": []
7
7
  }
@@ -1,10 +1,10 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { isWeb } from "@tamagui/constants";
3
3
  import { Children, cloneElement } from "react";
4
- import { variableToString } from "../createVariable";
5
- import { ThemeManagerContext } from "../helpers/ThemeManagerContext";
6
- import { useServerRef } from "../hooks/useServerHooks";
7
- import { useChangeThemeEffect } from "../hooks/useTheme";
4
+ import { variableToString } from "../createVariable.js";
5
+ import { ThemeManagerContext } from "../helpers/ThemeManagerContext.js";
6
+ import { useServerRef } from "../hooks/useServerHooks.js";
7
+ import { useChangeThemeEffect } from "../hooks/useTheme.js";
8
8
  function Theme(props) {
9
9
  if (props.disable)
10
10
  return props.children;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/Theme.tsx"],
4
- "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext'\nimport { useServerRef } from '../hooks/useServerHooks'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme'\nimport { ThemeProps } from '../types'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
4
+ "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable.js'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext.js'\nimport { useServerRef } from '../hooks/useServerHooks.js'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme.js'\nimport type { ThemeProps } from '../types.js'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
5
5
  "mappings": "AAkDQ;AAlDR,SAAS,aAAa;AACtB,SAAS,UAAU,oBAAoB;AAEvC,SAAS,wBAAwB;AACjC,SAAS,2BAA2B;AACpC,SAAS,oBAAoB;AAC7B,SAA+B,4BAA4B;AAGpD,SAAS,MAAM,OAAmB;AAEvC,MAAI,MAAM;AAAS,WAAO,MAAM;AAChC,QAAM,SAAS,CAAC,CAAC,MAAM,SAAS;AAChC,QAAM,aAAa,qBAAqB,OAAO,MAAM;AACrD,QAAM,WAAW,MAAM,gBAAgB,IACnC,SAAS;AAAA,IAAI,MAAM;AAAA,IAAU,CAAC,UAC5B,aAAa,OAAO,EAAE,CAAC,gBAAgB,GAAG,KAAK,CAAC;AAAA,EAClD,IACA,MAAM;AAEV,SAAO,kBAAkB,YAAY,UAAU,KAAK;AACtD;AAEO,SAAS,kBACd,YACA,UACA,SACA;AACA,QAAM,EAAE,cAAc,YAAY,WAAW,MAAM,IAAI;AACvD,QAAM,EAAE,SAAS,eAAe,IAAI;AAEpC,QAAM,gBAAgB,aAAa,KAAK;AACxC,MAAI,YAAY;AACd,kBAAc,UAAU;AAAA,EAC1B;AAIA,MAAI,CAAC,cAAc,CAAC,cAAc,WAAW,CAAC,kBAAkB,CAAC,SAAS;AACxE,WAAO;AAAA,EACT;AAGA,MAAI,OAAO;AAEX,MAAI,WAAW,cAAc;AAC3B,WAAO,SAAS,IAAI,MAAM,CAAC,UAAU;AACnC,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA,oBAAC,SAAM,MAAM,aAAa,MAAM,YAAa,gBAAM,MAAM,UAAS;AAAA,MACpE;AAAA,IACF,CAAC;AAAA,EACH;AAEA,SACE,oBAAC,oBAAoB,UAApB,EAA6B,OAAO,cAClC,gBACH;AAGF,MAAI,OAAO;AACT,UAAM,kBAAkB,mBAAmB,mBAAmB,SAAS;AACvE,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACT,GAAI,SACH,mBAAmB;AAAA,UACjB,WAAW,GAAG;AAAA,UACd,OAAO;AAAA;AAAA,YAEL,OAAO,iBAAiB,MAAM,KAAK;AAAA,UACrC;AAAA,QACF;AAAA,QAED;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -1,10 +1,10 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { isWeb } from "@tamagui/constants";
3
3
  import { Children, cloneElement } from "react";
4
- import { variableToString } from "../createVariable";
5
- import { ThemeManagerContext } from "../helpers/ThemeManagerContext";
6
- import { useServerRef } from "../hooks/useServerHooks";
7
- import { useChangeThemeEffect } from "../hooks/useTheme";
4
+ import { variableToString } from "../createVariable.js";
5
+ import { ThemeManagerContext } from "../helpers/ThemeManagerContext.js";
6
+ import { useServerRef } from "../hooks/useServerHooks.js";
7
+ import { useChangeThemeEffect } from "../hooks/useTheme.js";
8
8
  function Theme(props) {
9
9
  if (props.disable)
10
10
  return props.children;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/Theme.tsx"],
4
- "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext'\nimport { useServerRef } from '../hooks/useServerHooks'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme'\nimport { ThemeProps } from '../types'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
4
+ "sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable.js'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext.js'\nimport { useServerRef } from '../hooks/useServerHooks.js'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme.js'\nimport type { ThemeProps } from '../types.js'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
5
5
  "mappings": "AAkDQ;AAlDR,SAAS,aAAa;AACtB,SAAS,UAAU,oBAAoB;AAEvC,SAAS,wBAAwB;AACjC,SAAS,2BAA2B;AACpC,SAAS,oBAAoB;AAC7B,SAA+B,4BAA4B;AAGpD,SAAS,MAAM,OAAmB;AAEvC,MAAI,MAAM;AAAS,WAAO,MAAM;AAChC,QAAM,SAAS,CAAC,CAAC,MAAM,SAAS;AAChC,QAAM,aAAa,qBAAqB,OAAO,MAAM;AACrD,QAAM,WAAW,MAAM,gBAAgB,IACnC,SAAS;AAAA,IAAI,MAAM;AAAA,IAAU,CAAC,UAC5B,aAAa,OAAO,EAAE,CAAC,gBAAgB,GAAG,KAAK,CAAC;AAAA,EAClD,IACA,MAAM;AAEV,SAAO,kBAAkB,YAAY,UAAU,KAAK;AACtD;AAEO,SAAS,kBACd,YACA,UACA,SACA;AACA,QAAM,EAAE,cAAc,YAAY,WAAW,MAAM,IAAI;AACvD,QAAM,EAAE,SAAS,eAAe,IAAI;AAEpC,QAAM,gBAAgB,aAAa,KAAK;AACxC,MAAI,YAAY;AACd,kBAAc,UAAU;AAAA,EAC1B;AAIA,MAAI,CAAC,cAAc,CAAC,cAAc,WAAW,CAAC,kBAAkB,CAAC,SAAS;AACxE,WAAO;AAAA,EACT;AAGA,MAAI,OAAO;AAEX,MAAI,WAAW,cAAc;AAC3B,WAAO,SAAS,IAAI,MAAM,CAAC,UAAU;AACnC,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA,oBAAC,SAAM,MAAM,aAAa,MAAM,YAAa,gBAAM,MAAM,UAAS;AAAA,MACpE;AAAA,IACF,CAAC;AAAA,EACH;AAEA,SACE,oBAAC,oBAAoB,UAApB,EAA6B,OAAO,cAClC,gBACH;AAGF,MAAI,OAAO;AACT,UAAM,kBAAkB,mBAAmB,mBAAmB,SAAS;AACvE,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACT,GAAI,SACH,mBAAmB;AAAA,UACjB,WAAW,GAAG;AAAA,UACd,OAAO;AAAA;AAAA,YAEL,OAAO,iBAAiB,MAAM,KAAK;AAAA,UACrC;AAAA,QACF;AAAA,QAED;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -1,8 +1,8 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { isClient } from "@tamagui/constants";
3
3
  import { createContext, useLayoutEffect, useMemo } from "react";
4
- import { THEME_CLASSNAME_PREFIX } from "../constants/constants";
5
- import { Theme } from "./Theme";
4
+ import { THEME_CLASSNAME_PREFIX } from "../constants/constants.js";
5
+ import { Theme } from "./Theme.js";
6
6
  const ThemeProviderRootContext = createContext(null);
7
7
  const ThemeProvider = (props) => {
8
8
  if (isClient) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/ThemeProvider.tsx"],
4
- "sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants'\nimport { Theme } from './Theme'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
4
+ "sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants.js'\nimport { Theme } from './Theme.js'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
5
5
  "mappings": "AA2CM;AA3CN,SAAS,gBAAgB;AACzB,SAAS,eAAe,iBAAiB,eAAe;AAExD,SAAS,8BAA8B;AACvC,SAAS,aAAa;AAWf,MAAM,2BAA2B,cAG9B,IAAI;AAEP,MAAM,gBAAgB,CAAC,UAA8B;AAE1D,MAAI,UAAU;AACZ,oBAAgB,MAAM;AACpB,UAAI,MAAM;AAAuB;AACjC,YAAM,KAAK,GAAG,yBAAyB,MAAM;AAC7C,YAAM,SAAS,MAAM,uBAAuB,SAAS,kBAAkB,SAAS;AAChF,aAAO,UAAU,IAAI,EAAE;AACvB,aAAO,MAAM;AACX,eAAO,UAAU,OAAO,EAAE;AAAA,MAC5B;AAAA,IACF,GAAG,CAAC,MAAM,cAAc,MAAM,uBAAuB,MAAM,oBAAoB,CAAC;AAAA,EAClF;AAEA,SACE;AAAA,IAAC,yBAAyB;AAAA,IAAzB;AAAA,MACC,OAAO,QAAQ,MAAM;AACnB,eAAO;AAAA,UACL,cAAc,MAAM;AAAA,QACtB;AAAA,MAEF,GAAG,CAAC,CAAC;AAAA,MAEL;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,MAAM;AAAA,UACjB,MAAM,MAAM;AAAA,UACZ,gBAAgB,MAAM,wBAAwB,QAAQ;AAAA,UAEtD,SAAO;AAAA,UAEN,gBAAM;AAAA;AAAA,MACT;AAAA;AAAA,EACF;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -1,8 +1,8 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { isClient } from "@tamagui/constants";
3
3
  import { createContext, useLayoutEffect, useMemo } from "react";
4
- import { THEME_CLASSNAME_PREFIX } from "../constants/constants";
5
- import { Theme } from "./Theme";
4
+ import { THEME_CLASSNAME_PREFIX } from "../constants/constants.js";
5
+ import { Theme } from "./Theme.js";
6
6
  const ThemeProviderRootContext = createContext(null);
7
7
  const ThemeProvider = (props) => {
8
8
  if (isClient) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/ThemeProvider.tsx"],
4
- "sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants'\nimport { Theme } from './Theme'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
4
+ "sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants.js'\nimport { Theme } from './Theme.js'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
5
5
  "mappings": "AA2CM;AA3CN,SAAS,gBAAgB;AACzB,SAAS,eAAe,iBAAiB,eAAe;AAExD,SAAS,8BAA8B;AACvC,SAAS,aAAa;AAWf,MAAM,2BAA2B,cAG9B,IAAI;AAEP,MAAM,gBAAgB,CAAC,UAA8B;AAE1D,MAAI,UAAU;AACZ,oBAAgB,MAAM;AACpB,UAAI,MAAM;AAAuB;AACjC,YAAM,KAAK,GAAG,yBAAyB,MAAM;AAC7C,YAAM,SAAS,MAAM,uBAAuB,SAAS,kBAAkB,SAAS;AAChF,aAAO,UAAU,IAAI,EAAE;AACvB,aAAO,MAAM;AACX,eAAO,UAAU,OAAO,EAAE;AAAA,MAC5B;AAAA,IACF,GAAG,CAAC,MAAM,cAAc,MAAM,uBAAuB,MAAM,oBAAoB,CAAC;AAAA,EAClF;AAEA,SACE;AAAA,IAAC,yBAAyB;AAAA,IAAzB;AAAA,MACC,OAAO,QAAQ,MAAM;AACnB,eAAO;AAAA,UACL,cAAc,MAAM;AAAA,QACtB;AAAA,MAEF,GAAG,CAAC,CAAC;AAAA,MAEL;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,MAAM;AAAA,UACjB,MAAM,MAAM;AAAA,UACZ,gBAAgB,MAAM,wBAAwB,QAAQ;AAAA,UAEtD,SAAO;AAAA,UAEN,gBAAM;AAAA;AAAA,MACT;AAAA;AAAA,EACF;AAEJ;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/web",
3
- "version": "1.5.6",
3
+ "version": "1.5.8",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/cjs",
6
6
  "module": "dist/esm",
@@ -27,20 +27,20 @@
27
27
  "reset.css"
28
28
  ],
29
29
  "dependencies": {
30
- "@tamagui/compose-refs": "^1.5.6",
31
- "@tamagui/constants": "^1.5.6",
32
- "@tamagui/helpers": "^1.5.6",
33
- "@tamagui/normalize-css-color": "^1.5.6",
34
- "@tamagui/use-did-finish-ssr": "^1.5.6",
35
- "@tamagui/use-event": "^1.5.6",
36
- "@tamagui/use-force-update": "^1.5.6"
30
+ "@tamagui/compose-refs": "^1.5.8",
31
+ "@tamagui/constants": "^1.5.8",
32
+ "@tamagui/helpers": "^1.5.8",
33
+ "@tamagui/normalize-css-color": "^1.5.8",
34
+ "@tamagui/use-did-finish-ssr": "^1.5.8",
35
+ "@tamagui/use-event": "^1.5.8",
36
+ "@tamagui/use-force-update": "^1.5.8"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "react": "*",
40
40
  "react-dom": "*"
41
41
  },
42
42
  "devDependencies": {
43
- "@tamagui/build": "^1.5.6",
43
+ "@tamagui/build": "^1.5.8",
44
44
  "@testing-library/react": "^13.4.0",
45
45
  "csstype": "^3.0.10",
46
46
  "react": "^18.2.0",
package/src/Tamagui.ts CHANGED
@@ -1,8 +1,12 @@
1
1
  import * as Helpers from '@tamagui/helpers'
2
2
 
3
- import { getConfig } from './config'
4
- import { getAllRules, getAllSelectors, getAllTransforms } from './helpers/insertStyleRule'
5
- import { mediaState } from './hooks/useMedia'
3
+ import { getConfig } from './config.js'
4
+ import {
5
+ getAllRules,
6
+ getAllSelectors,
7
+ getAllTransforms,
8
+ } from './helpers/insertStyleRule.js'
9
+ import { mediaState } from './hooks/useMedia.js'
6
10
 
7
11
  // easy introspection
8
12
  // only included in dev mode
package/src/addTheme.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import { isWeb } from '@tamagui/constants'
2
2
 
3
- import { getConfig, updateConfig } from './config'
4
- import { getThemeCSSRules } from './helpers/getThemeCSSRules'
5
- import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes'
6
- import { ThemeDefinition, ThemeParsed } from './types'
3
+ import { getConfig, updateConfig } from './config.js'
4
+ import { getThemeCSSRules } from './helpers/getThemeCSSRules.js'
5
+ import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'
6
+ import { ThemeDefinition, ThemeParsed } from './types.js'
7
7
 
8
8
  export function addTheme(props: {
9
9
  name: string
package/src/config.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ConfigListener, TamaguiInternalConfig, TokensMerged } from './types'
1
+ import { ConfigListener, TamaguiInternalConfig, TokensMerged } from './types.js'
2
2
 
3
3
  let conf: TamaguiInternalConfig | null
4
4
 
@@ -1,5 +1,5 @@
1
1
  import { createContext } from 'react'
2
2
 
3
- import { LanguageContextType } from '../views/FontLanguage.types'
3
+ import type { LanguageContextType } from '../views/FontLanguage.types.js'
4
4
 
5
5
  export const FontLanguageContext = createContext<LanguageContextType | null>(null)
@@ -1,3 +1,3 @@
1
- import React, { createContext } from 'react'
1
+ import { createContext } from 'react'
2
2
 
3
3
  export const TextAncestorContext = createContext(false)
@@ -13,21 +13,21 @@ import React, {
13
13
  useRef,
14
14
  } from 'react'
15
15
 
16
- import { onConfiguredOnce } from './config'
17
- import { stackDefaultStyles } from './constants/constants'
18
- import { FontLanguageContext } from './contexts/FontLanguageContext'
19
- import { TextAncestorContext } from './contexts/TextAncestorContext'
20
- import { didGetVariableValue, setDidGetVariableValue } from './createVariable'
21
- import { extendStaticConfig, parseStaticConfig } from './helpers/extendStaticConfig'
22
- import { useSplitStyles } from './helpers/getSplitStyles'
23
- import { getAllSelectors } from './helpers/insertStyleRule'
24
- import { mergeProps } from './helpers/mergeProps'
25
- import { proxyThemeVariables } from './helpers/proxyThemeVariables'
26
- import { useShallowSetState } from './helpers/useShallowSetState'
27
- import { setMediaShouldUpdate, useMedia } from './hooks/useMedia'
28
- import { useServerRef, useServerState } from './hooks/useServerHooks'
29
- import { useThemeWithState } from './hooks/useTheme'
30
- import { hooks } from './setupHooks'
16
+ import { onConfiguredOnce } from './config.js'
17
+ import { stackDefaultStyles } from './constants/constants.js'
18
+ import { FontLanguageContext } from './contexts/FontLanguageContext.js'
19
+ import { TextAncestorContext } from './contexts/TextAncestorContext.js'
20
+ import { didGetVariableValue, setDidGetVariableValue } from './createVariable.js'
21
+ import { extendStaticConfig, parseStaticConfig } from './helpers/extendStaticConfig.js'
22
+ import { useSplitStyles } from './helpers/getSplitStyles.js'
23
+ import { getAllSelectors } from './helpers/insertStyleRule.js'
24
+ import { mergeProps } from './helpers/mergeProps.js'
25
+ import { proxyThemeVariables } from './helpers/proxyThemeVariables.js'
26
+ import { useShallowSetState } from './helpers/useShallowSetState.js'
27
+ import { setMediaShouldUpdate, useMedia } from './hooks/useMedia.js'
28
+ import { useServerRef, useServerState } from './hooks/useServerHooks.js'
29
+ import { useThemeWithState } from './hooks/useTheme.js'
30
+ import { hooks } from './setupHooks.js'
31
31
  import {
32
32
  DebugProp,
33
33
  SpaceDirection,
@@ -45,8 +45,8 @@ import {
45
45
  UseAnimationHook,
46
46
  UseAnimationProps,
47
47
  } from './types'
48
- import { Slot } from './views/Slot'
49
- import { useThemedChildren } from './views/Theme'
48
+ import { Slot } from './views/Slot.js'
49
+ import { useThemedChildren } from './views/Theme.js'
50
50
 
51
51
  // let t
52
52
  // import { timer } from '@tamagui/timer'
package/src/createFont.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { FontWeightSteps, GenericFont } from './types'
1
+ import { FontWeightSteps, GenericFont } from './types.js'
2
2
 
3
3
  const fontWeights: FontWeightSteps[] = [
4
4
  '100',
@@ -1,4 +1,4 @@
1
- import { CreateShorthands } from './types'
1
+ import { CreateShorthands } from './types.js'
2
2
 
3
3
  // just a type helper util
4
4
 
@@ -1,28 +1,28 @@
1
1
  import { isRSC, isWeb } from '@tamagui/constants'
2
2
 
3
- import { configListeners, setConfig } from './config'
4
- import { createVariables, tokensKeysOrdered } from './createVariables'
5
- import { getThemeCSSRules } from './helpers/getThemeCSSRules'
3
+ import { configListeners, setConfig } from './config.js'
4
+ import { createVariables, tokensKeysOrdered } from './createVariables.js'
5
+ import { getThemeCSSRules } from './helpers/getThemeCSSRules.js'
6
6
  import {
7
7
  getAllRules,
8
8
  listenForSheetChanges,
9
9
  scanAllSheets,
10
- } from './helpers/insertStyleRule'
10
+ } from './helpers/insertStyleRule.js'
11
11
  import {
12
12
  registerCSSVariable,
13
13
  tokensValueToVariable,
14
14
  variableToCSS,
15
- } from './helpers/registerCSSVariable'
16
- import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes'
17
- import { configureMedia } from './hooks/useMedia'
18
- import { parseFont, registerFontVariables } from './insertFont'
19
- import { Tamagui } from './Tamagui'
15
+ } from './helpers/registerCSSVariable.js'
16
+ import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'
17
+ import { configureMedia } from './hooks/useMedia.js'
18
+ import { parseFont, registerFontVariables } from './insertFont.js'
19
+ import { Tamagui } from './Tamagui.js'
20
20
  import {
21
21
  CreateTamaguiProps,
22
22
  InferTamaguiConfig,
23
23
  TamaguiInternalConfig,
24
24
  ThemeParsed,
25
- } from './types'
25
+ } from './types.js'
26
26
 
27
27
  // config is re-run by the @tamagui/static, dont double validate
28
28
  const createdConfigs = new WeakMap<any, boolean>()
@@ -1,4 +1,4 @@
1
- import type { Variable } from './createVariable'
1
+ import type { Variable } from './createVariable.js'
2
2
 
3
3
  type GenericTheme = { [key: string]: string | Variable }
4
4
 
@@ -1,6 +1,6 @@
1
- import { Variable } from './createVariable'
2
- import { createVariables } from './createVariables'
3
- import { CreateTokens } from './types'
1
+ import { Variable } from './createVariable.js'
2
+ import { createVariables } from './createVariables.js'
3
+ import { CreateTokens } from './types.js'
4
4
 
5
5
  // tokens.color.dark.red ===> { var: `color-dark-red`, val: '' }
6
6
  export function createTokens<T extends CreateTokens>(tokens: T): MakeTokens<T> {
@@ -1,7 +1,7 @@
1
1
  import { isWeb } from '@tamagui/constants'
2
2
  import { simpleHash } from '@tamagui/helpers'
3
3
 
4
- import { getConfig } from './config'
4
+ import { getConfig } from './config.js'
5
5
 
6
6
  /**
7
7
  * Should rename this to Token
@@ -1,6 +1,6 @@
1
1
  import { simpleHash } from '@tamagui/helpers'
2
2
 
3
- import { Variable, createVariable, isVariable } from './createVariable'
3
+ import { Variable, createVariable, isVariable } from './createVariable.js'
4
4
 
5
5
  type DeepTokenObject<Val extends string | number = any> = {
6
6
  [key: string]: Val | DeepTokenObject<Val>
@@ -1,7 +1,7 @@
1
- import { getThemes, getTokens } from '../config'
2
- import { THEME_CLASSNAME_PREFIX, THEME_NAME_SEPARATOR } from '../constants/constants'
3
- import { getThemeUnwrapped } from '../hooks/getThemeUnwrapped'
4
- import { ThemeParsed, ThemeProps } from '../types'
1
+ import { getThemes, getTokens } from '../config.js'
2
+ import { THEME_CLASSNAME_PREFIX, THEME_NAME_SEPARATOR } from '../constants/constants.js'
3
+ import { getThemeUnwrapped } from '../hooks/getThemeUnwrapped.js'
4
+ import { ThemeParsed, ThemeProps } from '../types.js'
5
5
 
6
6
  type ThemeListener = (name: string | null, themeManager: ThemeManager) => void
7
7
 
@@ -162,7 +162,13 @@ export class ThemeManager {
162
162
  function getNextThemeClassName(name: string, isInverting = false) {
163
163
  const next = `${THEME_CLASSNAME_PREFIX}${name}`
164
164
  if (isInverting) {
165
- return next
165
+ return (
166
+ next +
167
+ // ensure you invert to base dark as well as specific dark
168
+ // ... logic should likely be elsewhere
169
+ (next.includes('dark_') ? ` t_dark` : '') +
170
+ (next.includes('light_') ? ` t_light` : '')
171
+ )
166
172
  }
167
173
  return next.replace('light_', '').replace('dark_', '')
168
174
  }
@@ -1,5 +1,5 @@
1
1
  import { createContext } from 'react'
2
2
 
3
- import { ThemeManager } from './ThemeManager'
3
+ import { ThemeManager } from './ThemeManager.js'
4
4
 
5
5
  export const ThemeManagerContext = createContext<ThemeManager | null>(null)
@@ -1,7 +1,7 @@
1
1
  import { StyleObject } from '@tamagui/helpers'
2
2
 
3
- import { mediaObjectToString } from '../hooks/useMedia'
4
- import { MediaQueries, PartialStyleObject } from '../types'
3
+ import { mediaObjectToString } from '../hooks/useMedia.js'
4
+ import type { MediaQueries, PartialStyleObject } from '../types.js'
5
5
 
6
6
  // TODO have this be used by extractMediaStyle in tamagui static
7
7
  // not synced to static/constants for now
@@ -1,9 +1,9 @@
1
1
  import { isWeb } from '@tamagui/constants'
2
2
 
3
- import { getConfig } from '../config'
4
- import { isDevTools } from '../constants/isDevTools'
5
- import { Variable, getVariableValue, isVariable } from '../createVariable'
6
- import {
3
+ import { getConfig } from '../config.js'
4
+ import { isDevTools } from '../constants/isDevTools.js'
5
+ import { Variable, getVariableValue, isVariable } from '../createVariable.js'
6
+ import type {
7
7
  DebugProp,
8
8
  GenericVariantDefinitions,
9
9
  PropMapper,
@@ -11,13 +11,13 @@ import {
11
11
  StaticConfigParsed,
12
12
  TamaguiInternalConfig,
13
13
  VariantSpreadFunction,
14
- } from '../types'
15
- import { LanguageContextType } from '../views/FontLanguage.types'
16
- import { expandStyle } from './expandStyle'
17
- import { expandStyles } from './expandStyles'
18
- import { getFontsForLanguage, getVariantExtras } from './getVariantExtras'
19
- import { isObj } from './isObj'
20
- import { mergeProps } from './mergeProps'
14
+ } from '../types.js'
15
+ import type { LanguageContextType } from '../views/FontLanguage.types.js'
16
+ import { expandStyle } from './expandStyle.js'
17
+ import { expandStyles } from './expandStyles.js'
18
+ import { getFontsForLanguage, getVariantExtras } from './getVariantExtras.js'
19
+ import { isObj } from './isObj.js'
20
+ import { mergeProps } from './mergeProps.js'
21
21
 
22
22
  export type ResolveVariableTypes =
23
23
  | 'auto'
@@ -533,6 +533,8 @@ function resolveVariableValue(
533
533
  return valOrVar
534
534
  }
535
535
 
536
+ // TODO move to validStyleProps to merge
537
+
536
538
  // just specificy the least costly, all else go to `space` (most keys - we can exclude)
537
539
  const tokenCategories = {
538
540
  radius: {
@@ -1,8 +1,8 @@
1
- import { getConfig } from '../config'
2
- import { expandStyle } from './expandStyle'
3
- import { normalizeShadow } from './normalizeShadow'
1
+ import { getConfig } from '../config.js'
2
+ import { expandStyle } from './expandStyle.js'
3
+ import { normalizeShadow } from './normalizeShadow.js'
4
4
  import { normalizeValueWithProperty } from './normalizeValueWithProperty.js'
5
- import { pseudoDescriptors } from './pseudoDescriptors'
5
+ import { pseudoDescriptors } from './pseudoDescriptors.js'
6
6
 
7
7
  let shorthands: Record<string, string> | null = null
8
8
  export const defaultOffset = { height: 0, width: 0 }
@@ -1,8 +1,8 @@
1
1
  import { stylePropsView } from '@tamagui/helpers'
2
2
 
3
- import { StaticConfig, StaticConfigParsed, StylableComponent } from '../types'
4
- import { createPropMapper } from './createPropMapper'
5
- import { mergeProps } from './mergeProps'
3
+ import type { StaticConfig, StaticConfigParsed, StylableComponent } from '../types.js'
4
+ import { createPropMapper } from './createPropMapper.js'
5
+ import { mergeProps } from './mergeProps.js'
6
6
 
7
7
  export function extendStaticConfig(
8
8
  config: Partial<StaticConfig>,
@@ -1,4 +1,4 @@
1
- import { getConfig } from '../config'
1
+ import { getConfig } from '../config.js'
2
2
 
3
3
  export function getAnimationDriver() {
4
4
  return getConfig().animations
@@ -1,14 +1,12 @@
1
- import { getConfig } from '../config'
2
- import { Shorthands } from '../types'
1
+ import { getConfig } from '../config.js'
2
+ import { Shorthands } from '../types.js'
3
3
 
4
4
  export function getExpandedShorthands<A extends Object>(
5
5
  props: A
6
6
  ): Omit<A, keyof Shorthands> {
7
7
  const shorthands = getConfig().shorthands
8
- if (!shorthands) {
9
- return props
10
- }
11
- const res: A = {} as any
8
+ if (!shorthands) return props
9
+ const res = {} as A
12
10
  for (const key in props) {
13
11
  // @ts-ignore
14
12
  res[shorthands[key] || key] = props[key]