@tamagui/core 1.0.0-beta.200 → 1.0.0-beta.204

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 (267) hide show
  1. package/dist/cjs/Tamagui.js +18 -1
  2. package/dist/cjs/Tamagui.js.map +2 -2
  3. package/dist/cjs/ThemeContext.js +4 -0
  4. package/dist/cjs/ThemeManager.js +30 -14
  5. package/dist/cjs/ThemeManager.js.map +2 -2
  6. package/dist/cjs/conf.js +10 -1
  7. package/dist/cjs/conf.js.map +2 -2
  8. package/dist/cjs/constants/constants.js +6 -0
  9. package/dist/cjs/constants/platform.js +15 -0
  10. package/dist/cjs/constants/platform.js.map +2 -2
  11. package/dist/cjs/constants/rnw.js +4 -0
  12. package/dist/cjs/contexts/ButtonInsideButtonContext.js +4 -0
  13. package/dist/cjs/createComponent.js +117 -112
  14. package/dist/cjs/createComponent.js.map +2 -2
  15. package/dist/cjs/createFont.js +4 -0
  16. package/dist/cjs/createShorthands.js +4 -0
  17. package/dist/cjs/createTamagui.js +55 -27
  18. package/dist/cjs/createTamagui.js.map +2 -2
  19. package/dist/cjs/createTheme.js +4 -0
  20. package/dist/cjs/createTokens.js +7 -6
  21. package/dist/cjs/createTokens.js.map +2 -2
  22. package/dist/cjs/createVariable.js +18 -2
  23. package/dist/cjs/createVariable.js.map +2 -2
  24. package/dist/cjs/defaultComponentState.js +0 -30
  25. package/dist/cjs/defaultComponentState.js.map +3 -3
  26. package/dist/cjs/helpers/RNComponents.js +4 -0
  27. package/dist/cjs/helpers/RNComponents.js.map +0 -0
  28. package/dist/cjs/helpers/addStylesUsingClassname.js +8 -0
  29. package/dist/cjs/helpers/addStylesUsingClassname.js.map +2 -2
  30. package/dist/cjs/helpers/areEqualSets.js +4 -0
  31. package/dist/cjs/helpers/createMediaStyle.js +5 -0
  32. package/dist/cjs/helpers/createPropMapper.js +63 -61
  33. package/dist/cjs/helpers/createPropMapper.js.map +2 -2
  34. package/dist/cjs/helpers/createShallowUpdate.js +4 -0
  35. package/dist/cjs/helpers/createShallowUpdate.js.map +0 -0
  36. package/dist/cjs/helpers/createTamaguiProvider.js +4 -0
  37. package/dist/cjs/helpers/extendStaticConfig.js +9 -6
  38. package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
  39. package/dist/cjs/helpers/fixNativeShadow.js +4 -0
  40. package/dist/cjs/helpers/fixNativeShadow.native.js +6 -2
  41. package/dist/cjs/helpers/fixNativeShadow.native.js.map +2 -2
  42. package/dist/cjs/helpers/getExpandedShorthands.js +4 -0
  43. package/dist/cjs/{constants/pseudos.js → helpers/getSize.js} +17 -19
  44. package/dist/cjs/helpers/getSize.js.map +7 -0
  45. package/dist/cjs/helpers/getSplitStyles.js +114 -59
  46. package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
  47. package/dist/cjs/helpers/getStylesAtomic.js +20 -2
  48. package/dist/cjs/helpers/getStylesAtomic.js.map +2 -2
  49. package/dist/cjs/helpers/getStylesAtomic.native.js +4 -0
  50. package/dist/cjs/helpers/insertStyleRule.js +46 -26
  51. package/dist/cjs/helpers/insertStyleRule.js.map +2 -2
  52. package/dist/cjs/helpers/isObj.js +4 -0
  53. package/dist/cjs/helpers/isTamaguiElement.js +4 -0
  54. package/dist/cjs/helpers/matchMedia.js +4 -0
  55. package/dist/cjs/helpers/matchMedia.native.js +4 -0
  56. package/dist/cjs/helpers/proxyThemeVariables.js +40 -0
  57. package/dist/cjs/helpers/proxyThemeVariables.js.map +7 -0
  58. package/dist/cjs/helpers/themeable.js +7 -2
  59. package/dist/cjs/helpers/themeable.js.map +2 -2
  60. package/dist/cjs/helpers/validate.js +53 -11
  61. package/dist/cjs/helpers/validate.js.map +2 -2
  62. package/dist/cjs/helpers/withStaticProperties.js +4 -0
  63. package/dist/cjs/helpers/wrapThemeManagerContext.js +4 -0
  64. package/dist/cjs/hooks/useConstant.js +4 -0
  65. package/dist/cjs/hooks/useFeatures.js +101 -13
  66. package/dist/cjs/hooks/useFeatures.js.map +2 -2
  67. package/dist/cjs/hooks/useIsMounted.js +4 -0
  68. package/dist/cjs/hooks/useIsTouchDevice.js +4 -0
  69. package/dist/cjs/hooks/useMedia.js +31 -12
  70. package/dist/cjs/hooks/useMedia.js.map +2 -2
  71. package/dist/cjs/hooks/usePressable.js +4 -0
  72. package/dist/cjs/hooks/useTheme.js +36 -23
  73. package/dist/cjs/hooks/useTheme.js.map +2 -2
  74. package/dist/cjs/hooks/useUnmountEffect.js +4 -0
  75. package/dist/cjs/index.js +15 -0
  76. package/dist/cjs/index.js.map +2 -2
  77. package/dist/cjs/static.js +3 -0
  78. package/dist/cjs/static.js.map +2 -2
  79. package/dist/cjs/styled.js +7 -4
  80. package/dist/cjs/styled.js.map +2 -2
  81. package/dist/cjs/types.js.map +1 -1
  82. package/dist/cjs/views/Stack.js +5 -0
  83. package/dist/cjs/views/Stack.js.map +2 -2
  84. package/dist/cjs/views/Text.js +5 -0
  85. package/dist/cjs/views/Text.js.map +2 -2
  86. package/dist/cjs/views/TextAncestorContext.js +6 -0
  87. package/dist/cjs/views/Theme.js +11 -4
  88. package/dist/cjs/views/Theme.js.map +2 -2
  89. package/dist/cjs/views/ThemeInverse.js +5 -0
  90. package/dist/cjs/views/ThemeProvider.js +6 -1
  91. package/dist/cjs/views/ThemeProvider.js.map +2 -2
  92. package/dist/cjs/views/ThemeReset.js +4 -0
  93. package/dist/esm/Tamagui.js +10 -2
  94. package/dist/esm/Tamagui.js.map +2 -2
  95. package/dist/esm/ThemeManager.js +21 -11
  96. package/dist/esm/ThemeManager.js.map +2 -2
  97. package/dist/esm/conf.js +0 -1
  98. package/dist/esm/conf.js.map +2 -2
  99. package/dist/esm/constants/platform.js +2 -0
  100. package/dist/esm/constants/platform.js.map +2 -2
  101. package/dist/esm/createComponent.js +107 -115
  102. package/dist/esm/createComponent.js.map +2 -2
  103. package/dist/esm/createTamagui.js +51 -27
  104. package/dist/esm/createTamagui.js.map +2 -2
  105. package/dist/esm/createTokens.js +2 -6
  106. package/dist/esm/createTokens.js.map +2 -2
  107. package/dist/esm/createVariable.js +8 -2
  108. package/dist/esm/createVariable.js.map +2 -2
  109. package/dist/esm/defaultComponentState.js +0 -11
  110. package/dist/esm/defaultComponentState.js.map +3 -3
  111. package/dist/esm/helpers/RNComponents.js +0 -0
  112. package/dist/esm/helpers/RNComponents.js.map +0 -0
  113. package/dist/esm/helpers/addStylesUsingClassname.js +4 -1
  114. package/dist/esm/helpers/addStylesUsingClassname.js.map +2 -2
  115. package/dist/esm/helpers/createPropMapper.js +59 -61
  116. package/dist/esm/helpers/createPropMapper.js.map +2 -2
  117. package/dist/esm/helpers/createShallowUpdate.js +0 -0
  118. package/dist/esm/helpers/createShallowUpdate.js.map +0 -0
  119. package/dist/esm/helpers/extendStaticConfig.js +9 -6
  120. package/dist/esm/helpers/extendStaticConfig.js.map +2 -2
  121. package/dist/esm/helpers/fixNativeShadow.native.js +2 -2
  122. package/dist/esm/helpers/fixNativeShadow.native.js.map +2 -2
  123. package/dist/esm/helpers/getSize.js +13 -0
  124. package/dist/esm/helpers/getSize.js.map +7 -0
  125. package/dist/esm/helpers/getSplitStyles.js +110 -61
  126. package/dist/esm/helpers/getSplitStyles.js.map +2 -2
  127. package/dist/esm/helpers/getStylesAtomic.js +15 -2
  128. package/dist/esm/helpers/getStylesAtomic.js.map +2 -2
  129. package/dist/esm/helpers/insertStyleRule.js +36 -26
  130. package/dist/esm/helpers/insertStyleRule.js.map +2 -2
  131. package/dist/esm/helpers/proxyThemeVariables.js +18 -0
  132. package/dist/esm/helpers/proxyThemeVariables.js.map +7 -0
  133. package/dist/esm/helpers/themeable.js +3 -2
  134. package/dist/esm/helpers/themeable.js.map +2 -2
  135. package/dist/esm/helpers/validate.js +24 -11
  136. package/dist/esm/helpers/validate.js.map +2 -2
  137. package/dist/esm/hooks/useFeatures.js +96 -18
  138. package/dist/esm/hooks/useFeatures.js.map +2 -2
  139. package/dist/esm/hooks/useMedia.js +20 -12
  140. package/dist/esm/hooks/useMedia.js.map +2 -2
  141. package/dist/esm/hooks/useTheme.js +28 -23
  142. package/dist/esm/hooks/useTheme.js.map +2 -2
  143. package/dist/esm/index.js +4 -0
  144. package/dist/esm/index.js.map +2 -2
  145. package/dist/esm/static.js +3 -0
  146. package/dist/esm/static.js.map +2 -2
  147. package/dist/esm/styled.js +3 -4
  148. package/dist/esm/styled.js.map +2 -2
  149. package/dist/esm/views/Stack.js +1 -0
  150. package/dist/esm/views/Stack.js.map +2 -2
  151. package/dist/esm/views/Text.js +1 -0
  152. package/dist/esm/views/Text.js.map +2 -2
  153. package/dist/esm/views/Theme.js +7 -4
  154. package/dist/esm/views/Theme.js.map +2 -2
  155. package/dist/esm/views/ThemeProvider.js +2 -1
  156. package/dist/esm/views/ThemeProvider.js.map +2 -2
  157. package/dist/jsx/Tamagui.js +10 -2
  158. package/dist/jsx/ThemeManager.js +21 -11
  159. package/dist/jsx/conf.js +0 -1
  160. package/dist/jsx/constants/platform.js +2 -0
  161. package/dist/jsx/createComponent.js +105 -114
  162. package/dist/jsx/createTamagui.js +51 -27
  163. package/dist/jsx/createTokens.js +2 -6
  164. package/dist/jsx/createVariable.js +8 -2
  165. package/dist/jsx/defaultComponentState.js +0 -11
  166. package/dist/jsx/helpers/RNComponents.js +0 -0
  167. package/dist/jsx/helpers/addStylesUsingClassname.js +4 -1
  168. package/dist/jsx/helpers/createPropMapper.js +59 -61
  169. package/dist/jsx/helpers/createShallowUpdate.js +0 -0
  170. package/dist/jsx/helpers/extendStaticConfig.js +9 -6
  171. package/dist/jsx/helpers/fixNativeShadow.native.js +2 -2
  172. package/dist/jsx/helpers/getSize.js +12 -0
  173. package/dist/jsx/helpers/getSplitStyles.js +110 -61
  174. package/dist/jsx/helpers/getStylesAtomic.js +15 -2
  175. package/dist/jsx/helpers/insertStyleRule.js +36 -26
  176. package/dist/jsx/helpers/proxyThemeVariables.js +17 -0
  177. package/dist/jsx/helpers/themeable.js +3 -3
  178. package/dist/jsx/helpers/validate.js +24 -11
  179. package/dist/jsx/hooks/useFeatures.js +96 -18
  180. package/dist/jsx/hooks/useMedia.js +20 -12
  181. package/dist/jsx/hooks/useTheme.js +28 -23
  182. package/dist/jsx/index.js +4 -0
  183. package/dist/jsx/static.js +3 -0
  184. package/dist/jsx/styled.js +3 -4
  185. package/dist/jsx/views/Stack.js +1 -0
  186. package/dist/jsx/views/Text.js +1 -0
  187. package/dist/jsx/views/Theme.js +7 -4
  188. package/dist/jsx/views/ThemeProvider.js +2 -2
  189. package/package.json +6 -6
  190. package/types/Tamagui.d.ts +18 -1
  191. package/types/Tamagui.d.ts.map +1 -1
  192. package/types/ThemeManager.d.ts +3 -3
  193. package/types/ThemeManager.d.ts.map +1 -1
  194. package/types/conf.d.ts +2 -0
  195. package/types/conf.d.ts.map +1 -1
  196. package/types/constants/platform.d.ts +1 -0
  197. package/types/constants/platform.d.ts.map +1 -1
  198. package/types/createComponent.d.ts +3 -4
  199. package/types/createComponent.d.ts.map +1 -1
  200. package/types/createFont.d.ts +1 -1
  201. package/types/createFont.d.ts.map +1 -1
  202. package/types/createTamagui.d.ts +2 -1
  203. package/types/createTamagui.d.ts.map +1 -1
  204. package/types/createTokens.d.ts +0 -26
  205. package/types/createTokens.d.ts.map +1 -1
  206. package/types/createVariable.d.ts +1 -0
  207. package/types/createVariable.d.ts.map +1 -1
  208. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -1
  209. package/types/helpers/createMediaStyle.d.ts.map +1 -1
  210. package/types/helpers/createPropMapper.d.ts +1 -1
  211. package/types/helpers/createPropMapper.d.ts.map +1 -1
  212. package/types/helpers/extendStaticConfig.d.ts +2 -2
  213. package/types/helpers/extendStaticConfig.d.ts.map +1 -1
  214. package/types/helpers/getSize.d.ts +3 -0
  215. package/types/helpers/getSize.d.ts.map +1 -0
  216. package/types/helpers/getSplitStyles.d.ts +4 -1
  217. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  218. package/types/helpers/getStylesAtomic.d.ts.map +1 -1
  219. package/types/helpers/insertStyleRule.d.ts +2 -1
  220. package/types/helpers/insertStyleRule.d.ts.map +1 -1
  221. package/types/helpers/proxyThemeVariables.d.ts +2 -0
  222. package/types/helpers/proxyThemeVariables.d.ts.map +1 -0
  223. package/types/helpers/themeable.d.ts +3 -1
  224. package/types/helpers/themeable.d.ts.map +1 -1
  225. package/types/helpers/validate.d.ts.map +1 -1
  226. package/types/hooks/useMedia.d.ts +3 -3
  227. package/types/hooks/useMedia.d.ts.map +1 -1
  228. package/types/hooks/useTheme.d.ts +1 -1
  229. package/types/hooks/useTheme.d.ts.map +1 -1
  230. package/types/index.d.ts +2 -0
  231. package/types/index.d.ts.map +1 -1
  232. package/types/static.d.ts +3 -0
  233. package/types/static.d.ts.map +1 -1
  234. package/types/styled.d.ts +12 -3
  235. package/types/styled.d.ts.map +1 -1
  236. package/types/types.d.ts +73 -45
  237. package/types/types.d.ts.map +1 -1
  238. package/types/views/Theme.d.ts +1 -0
  239. package/types/views/Theme.d.ts.map +1 -1
  240. package/types/views/ThemeProvider.d.ts +1 -0
  241. package/types/views/ThemeProvider.d.ts.map +1 -1
  242. package/dist/cjs/constants/pseudos.js.map +0 -7
  243. package/dist/cjs/createShallowUpdate.js +0 -1
  244. package/dist/cjs/createShallowUpdate.js.map +0 -7
  245. package/dist/cjs/devtools.js +0 -32
  246. package/dist/cjs/devtools.js.map +0 -7
  247. package/dist/cjs/spacedChildren.js +0 -86
  248. package/dist/cjs/spacedChildren.js.map +0 -7
  249. package/dist/cjs/tamagui-base.css +0 -8
  250. package/dist/cjs/tamagui-base.css.map +0 -7
  251. package/dist/esm/constants/pseudos.js +0 -18
  252. package/dist/esm/constants/pseudos.js.map +0 -7
  253. package/dist/esm/createShallowUpdate.js +0 -1
  254. package/dist/esm/createShallowUpdate.js.map +0 -7
  255. package/dist/esm/devtools.js +0 -14
  256. package/dist/esm/devtools.js.map +0 -7
  257. package/dist/esm/spacedChildren.js +0 -52
  258. package/dist/esm/spacedChildren.js.map +0 -7
  259. package/dist/esm/tamagui-base.css +0 -8
  260. package/dist/esm/tamagui-base.css.map +0 -7
  261. package/dist/jsx/constants/pseudos.js +0 -17
  262. package/dist/jsx/createShallowUpdate.js +0 -0
  263. package/dist/jsx/devtools.js +0 -13
  264. package/dist/jsx/spacedChildren.js +0 -44
  265. package/dist/jsx/tamagui-base.css +0 -7
  266. package/types/spacedChildren.d.ts +0 -9
  267. package/types/spacedChildren.d.ts.map +0 -1
@@ -0,0 +1,17 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ function proxyThemeVariables(obj) {
4
+ return new Proxy(obj, {
5
+ has(target, key) {
6
+ return Reflect.has(target, removeStarting$(key));
7
+ },
8
+ get(target, key) {
9
+ return Reflect.get(target, removeStarting$(key));
10
+ }
11
+ });
12
+ }
13
+ __name(proxyThemeVariables, "proxyThemeVariables");
14
+ const removeStarting$ = /* @__PURE__ */ __name((str) => typeof str === "string" && str[0] === "$" ? str.slice(1) : str, "removeStarting$");
15
+ export {
16
+ proxyThemeVariables
17
+ };
@@ -3,14 +3,14 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
3
3
  import React, { forwardRef } from "react";
4
4
  import { Theme } from "../views/Theme";
5
5
  import { ThemeInverse } from "../views/ThemeInverse";
6
- function themeable(component) {
6
+ function themeable(component, opts) {
7
7
  const withThemeComponent = forwardRef(/* @__PURE__ */ __name(function WithTheme({ themeInverse, theme, ...rest }, ref) {
8
8
  const element = React.createElement(component, { ...rest, ref });
9
9
  if (themeInverse) {
10
10
  return <ThemeInverse>{element}</ThemeInverse>;
11
11
  }
12
- if (theme) {
13
- return <Theme name={theme || null}>{element}</Theme>;
12
+ if (theme || opts) {
13
+ return <Theme componentName={opts == null ? void 0 : opts.componentName} name={theme || null}>{element}</Theme>;
14
14
  }
15
15
  return element;
16
16
  }, "WithTheme"));
@@ -3,7 +3,8 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
3
3
  const { default: ow } = require("@tamagui/ow/dev-only");
4
4
  let Config;
5
5
  let Tokens;
6
- let Font;
6
+ let FontRequired;
7
+ let FontOptional;
7
8
  const validateConfig = /* @__PURE__ */ __name((conf) => {
8
9
  if (!conf) {
9
10
  console.warn("no conf?");
@@ -24,12 +25,26 @@ const validateTokens = /* @__PURE__ */ __name((tokens) => {
24
25
  }, "validateTokens");
25
26
  const validateFont = /* @__PURE__ */ __name((font) => {
26
27
  try {
27
- ow(font, Font);
28
+ const { style, transform, color, ...required } = font;
29
+ ow(required, FontRequired);
30
+ ow({ style, transform, color }, FontOptional);
28
31
  } catch (err) {
29
32
  console.warn("Given font:\n", JSON.stringify(font, null, 2), err);
30
33
  }
31
34
  }, "validateFont");
32
35
  if (process.env.NODE_ENV === "development") {
36
+ const fontReq = {
37
+ family: ow.string,
38
+ size: ow.object.nonEmpty.valuesOfType(ow.number),
39
+ lineHeight: ow.object.nonEmpty.valuesOfType(ow.number),
40
+ weight: ow.object.nonEmpty.valuesOfType(ow.string),
41
+ letterSpacing: ow.object.nonEmpty.valuesOfType(ow.number)
42
+ };
43
+ const fontOpt = {
44
+ style: ow.optional.object.valuesOfType(ow.string),
45
+ transform: ow.optional.object.valuesOfType(ow.string),
46
+ color: ow.optional.object.valuesOfType(ow.string)
47
+ };
33
48
  Config = ow.object.exactShape({
34
49
  defaultTheme: ow.optional.string,
35
50
  disableRootThemeClass: ow.optional.boolean,
@@ -37,17 +52,15 @@ if (process.env.NODE_ENV === "development") {
37
52
  themes: ow.object.valuesOfType(ow.object),
38
53
  tokens: ow.object.valuesOfType(ow.object),
39
54
  media: ow.object.valuesOfType(ow.object),
40
- animations: ow.object.valuesOfType(ow.object)
41
- });
42
- Font = ow.object.exactShape({
43
- family: ow.string,
44
- size: ow.object.nonEmpty.valuesOfType(ow.number),
45
- lineHeight: ow.object.nonEmpty.valuesOfType(ow.number),
46
- weight: ow.object.nonEmpty.valuesOfType(ow.string),
47
- letterSpacing: ow.object.nonEmpty.valuesOfType(ow.number)
55
+ animations: ow.object.valuesOfType(ow.object),
56
+ fonts: ow.object.valuesOfType(ow.object.partialShape({
57
+ ...fontReq,
58
+ ...fontOpt
59
+ }))
48
60
  });
61
+ FontRequired = ow.object.exactShape(fontReq);
62
+ FontOptional = ow.object.partialShape(fontOpt);
49
63
  Tokens = ow.object.exactShape({
50
- font: ow.object.valuesOfType(Font),
51
64
  size: ow.object.nonEmpty.valuesOfType(ow.number),
52
65
  space: ow.object.nonEmpty.valuesOfType(ow.number),
53
66
  zIndex: ow.object.nonEmpty.valuesOfType(ow.number),
@@ -1,6 +1,7 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- import { isWeb, useIsomorphicLayoutEffect } from "../constants/platform";
3
+ import { useIsomorphicLayoutEffect } from "../constants/platform";
4
+ import { getSubStyle } from "../helpers/getSplitStyles";
4
5
  import { addMediaQueryListener, mediaState, removeMediaQueryListener } from "./useMedia";
5
6
  const createDefinition = /* @__PURE__ */ __name(({
6
7
  Component,
@@ -26,48 +27,125 @@ const useFeatures = /* @__PURE__ */ __name((props, utils) => {
26
27
  function loadFeatures() {
27
28
  return {
28
29
  animation: loadAnimationFeature(),
29
- ...!isWeb && {
30
- mediaQuery: loadMediaQueryFeature()
31
- }
30
+ mediaQuery: loadMediaQueryFeature()
32
31
  };
33
32
  }
34
33
  __name(loadFeatures, "loadFeatures");
35
34
  function loadAnimationFeature() {
36
35
  return createDefinition({
37
36
  Component: ({ _utils, ...props }) => {
38
- const { state, useAnimations, pseudos, style, setStateShallow } = _utils;
37
+ const {
38
+ state,
39
+ useAnimations,
40
+ pseudos,
41
+ style: inStyle,
42
+ setStateShallow,
43
+ staticConfig,
44
+ theme,
45
+ onDidAnimate
46
+ } = _utils;
39
47
  if (!useAnimations) {
40
48
  console.error("no useAnimations hook provided");
41
49
  return null;
42
50
  }
43
- const animatedStyleIn = {
44
- ...style,
45
- ...state.hover && pseudos.hoverStyle,
46
- ...state.focus && pseudos.focusStyle,
47
- ...state.press && pseudos.pressStyle
48
- };
49
- const res = useAnimations(props, {
50
- isMounted: state.mounted,
51
- style: animatedStyleIn,
52
- exitStyle: pseudos == null ? void 0 : pseudos.exitStyle
51
+ const propsWithAnimation = props;
52
+ const res = useAnimations(propsWithAnimation, {
53
+ state,
54
+ pseudos,
55
+ onDidAnimate,
56
+ staticConfig,
57
+ getStyle({ isEntering, exitVariant, enterVariant } = {}) {
58
+ var _a, _b, _c, _d;
59
+ const style = inStyle || {};
60
+ const enterStyle = isEntering === true || state.mounted === false ? enterVariant && ((_a = staticConfig.variants) == null ? void 0 : _a[enterVariant]["true"]) ? getSubStyle((_b = staticConfig.variants) == null ? void 0 : _b[enterVariant]["true"], staticConfig, theme, props, state) || pseudos.enterStyle : pseudos.enterStyle : null;
61
+ const exitStyle = isEntering === false ? exitVariant && ((_c = staticConfig.variants) == null ? void 0 : _c[exitVariant]["true"]) ? getSubStyle((_d = staticConfig.variants) == null ? void 0 : _d[exitVariant]["true"], staticConfig, theme, props, state) || pseudos.exitStyle : pseudos.exitStyle : null;
62
+ ensureBaseHasDefaults(style, enterStyle, pseudos.hoverStyle, pseudos.focusStyle, pseudos.pressStyle, pseudos.pressStyle);
63
+ enterStyle && merge(style, enterStyle);
64
+ state.hover && pseudos.hoverStyle && merge(style, pseudos.hoverStyle);
65
+ state.focus && pseudos.focusStyle && merge(style, pseudos.focusStyle);
66
+ state.press && pseudos.pressStyle && merge(style, pseudos.pressStyle);
67
+ exitStyle && merge(style, exitStyle);
68
+ return style;
69
+ }
53
70
  });
54
71
  useIsomorphicLayoutEffect(() => {
55
- console.log("setting", res, JSON.stringify(style));
56
72
  setStateShallow({
57
73
  animation: res
58
74
  });
59
- }, [JSON.stringify(style)]);
75
+ }, [res]);
60
76
  return null;
61
77
  },
62
78
  propNames: ["animation"]
63
79
  });
64
80
  }
65
81
  __name(loadAnimationFeature, "loadAnimationFeature");
82
+ const defaults = {
83
+ left: 0,
84
+ right: 0,
85
+ top: 0,
86
+ bottom: 0,
87
+ opacity: 1,
88
+ translateX: 0,
89
+ translateY: 0,
90
+ skew: 0,
91
+ skewX: 0,
92
+ skewY: 0,
93
+ scale: 1,
94
+ rotate: "0deg",
95
+ rotateY: "0deg",
96
+ rotateX: "0deg"
97
+ };
98
+ function ensureBaseHasDefaults(base, ...pseudos) {
99
+ for (const pseudo of pseudos) {
100
+ if (!pseudo)
101
+ continue;
102
+ for (const key in pseudo) {
103
+ const val = pseudo[key];
104
+ if (key === "transform") {
105
+ for (const t of val) {
106
+ const tkey = Object.keys(t)[0];
107
+ const defaultVal = defaults[tkey];
108
+ const tDefaultVal = { [tkey]: defaultVal };
109
+ if (!base.transform) {
110
+ base.transform = [tDefaultVal];
111
+ } else {
112
+ if (!base.transform.find((x) => x[tkey])) {
113
+ base.transform.push(tDefaultVal);
114
+ }
115
+ }
116
+ }
117
+ } else {
118
+ if (!(key in base)) {
119
+ base[key] = defaults[key];
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
125
+ __name(ensureBaseHasDefaults, "ensureBaseHasDefaults");
126
+ function merge(base, next) {
127
+ if (!next.transform || !base.transform) {
128
+ Object.assign(base, next);
129
+ return;
130
+ }
131
+ const { transform, ...rest } = next;
132
+ Object.assign(base, rest);
133
+ for (const t of transform) {
134
+ const key = Object.keys(t)[0];
135
+ const existing = base.transform.find((x) => key in x);
136
+ if (existing) {
137
+ existing[key] = t[key];
138
+ } else {
139
+ base.transform.push(t);
140
+ }
141
+ }
142
+ }
143
+ __name(merge, "merge");
66
144
  function loadMediaQueryFeature() {
67
145
  const mediaPropNames = Object.keys(mediaState);
68
146
  return createDefinition({
69
147
  Component: (props) => {
70
- const keys = mediaPropNames.flatMap((x) => x in props ? x.slice(1) : []);
148
+ const keys = mediaPropNames.filter((x) => x in props);
71
149
  useIsomorphicLayoutEffect(() => {
72
150
  for (const key of keys) {
73
151
  addMediaQueryListener(key, props._utils.forceUpdate);
@@ -34,29 +34,33 @@ const configureMedia = /* @__PURE__ */ __name(({
34
34
  }
35
35
  for (const key in queries) {
36
36
  const str = mediaObjectToString(queries[key]);
37
+ const propKey = `$${key}`;
37
38
  try {
38
- const getMatch = /* @__PURE__ */ __name(() => matchMedia(str), "getMatch");
39
- const match = getMatch();
40
- if (!match || typeof match.addListener !== "function") {
41
- throw new Error("\u26A0\uFE0F No match (seeing this in RN sometimes)");
42
- }
43
- mediaState[key] = !!match.matches;
44
- match.addListener(() => {
39
+ let update = function() {
45
40
  const next = !!getMatch().matches;
46
- if (next === mediaState[key])
41
+ if (next === mediaState[propKey])
47
42
  return;
48
- mediaState[key] = next;
49
- const listeners = mediaQueryListeners[key];
43
+ mediaState[propKey] = next;
44
+ const listeners = mediaQueryListeners[propKey];
50
45
  if (listeners == null ? void 0 : listeners.size) {
51
46
  for (const cb of [...listeners]) {
52
47
  cb();
53
48
  }
54
49
  }
55
- });
50
+ };
51
+ __name(update, "update");
52
+ const getMatch = /* @__PURE__ */ __name(() => matchMedia(str), "getMatch");
53
+ const match = getMatch();
54
+ if (!match || typeof match.addListener !== "function") {
55
+ throw new Error("\u26A0\uFE0F No match (seeing this in RN sometimes)");
56
+ }
57
+ mediaState[propKey] = !!match.matches;
58
+ match.addListener(update);
59
+ update();
56
60
  } catch (err) {
57
61
  console.error("Error running media query", str, err.message, err.stack);
58
62
  const isDefaultActive = (_a = defaultActive == null ? void 0 : defaultActive.includes(key)) != null ? _a : true;
59
- mediaState[key] = isDefaultActive;
63
+ mediaState[propKey] = isDefaultActive;
60
64
  }
61
65
  }
62
66
  }, "configureMedia");
@@ -82,6 +86,7 @@ const useMedia = /* @__PURE__ */ __name(() => {
82
86
  }
83
87
  for (const key in st.nextSelections) {
84
88
  if (!(key in st.selections)) {
89
+ console.log("lsiten", key);
85
90
  addMediaQueryListener(key, forceUpdate);
86
91
  }
87
92
  }
@@ -103,6 +108,9 @@ const useMedia = /* @__PURE__ */ __name(() => {
103
108
  const st = state.current;
104
109
  return new Proxy(mediaState, {
105
110
  get(target, key) {
111
+ if (key[0] !== "$") {
112
+ key = `$${key}`;
113
+ }
106
114
  if (!(key in mediaState)) {
107
115
  return Reflect.get(target, key);
108
116
  }
@@ -49,14 +49,22 @@ const useTheme = /* @__PURE__ */ __name((themeName, componentName, props, forceU
49
49
  return Reflect.has(theme, key);
50
50
  },
51
51
  get(_, key) {
52
- if (!name || key === "__proto__") {
52
+ if (!name || key === "__proto__" || typeof key === "symbol") {
53
+ if (key === GetThemeManager) {
54
+ if (process.env.NODE_ENV === "development") {
55
+ if (props["debug"]) {
56
+ console.log("did change", { themeName, didChangeTheme, name, componentName }, themeManager == null ? void 0 : themeManager.parentName);
57
+ }
58
+ }
59
+ if (!didChangeTheme) {
60
+ return null;
61
+ }
62
+ return themeManager;
63
+ }
53
64
  return Reflect.get(_, key);
54
65
  }
55
- if (key === GetThemeManager) {
56
- if (!didChangeTheme) {
57
- return null;
58
- }
59
- return themeManager;
66
+ if (typeof key !== "string" || key === "$typeof") {
67
+ return Reflect.get(_, key);
60
68
  }
61
69
  if (process.env.NODE_ENV === "development") {
62
70
  if (key === "__state") {
@@ -73,26 +81,23 @@ const useTheme = /* @__PURE__ */ __name((themeName, componentName, props, forceU
73
81
  console.error("No themeManager");
74
82
  return;
75
83
  }
76
- if (process.env.NODE_ENV === "development") {
77
- if ((props == null ? void 0 : props["debug"]) === "verbose") {
78
- console.log(" \xBB accessing theme val", key, { ...state.current });
79
- }
84
+ if (key[0] === "$") {
85
+ key = key.slice(1);
80
86
  }
81
- if (typeof key === "string") {
82
- if (key[0] === "$") {
83
- key = key.slice(1);
84
- }
85
- const val = themeManager.getValue(key);
86
- if (val) {
87
- if (state.current.isRendering) {
88
- state.current.keys.add(key);
87
+ const val = themeManager.getValue(key);
88
+ if (val) {
89
+ if (state.current.isRendering) {
90
+ state.current.keys.add(key);
91
+ if (process.env.NODE_ENV === "development") {
92
+ if ((props == null ? void 0 : props["debug"]) === "verbose") {
93
+ console.log(" \xBB tracking theme key", key);
94
+ }
89
95
  }
90
- return val;
91
- }
92
- if (process.env.NODE_ENV === "development") {
93
- console.warn(`No theme value "${String(key)}" in ${name}`);
94
- return null;
95
96
  }
97
+ return val;
98
+ }
99
+ if (process.env.NODE_ENV === "development") {
100
+ console.log(`No theme value "${String(key)}" in ${name}`);
96
101
  }
97
102
  return Reflect.get(_, key);
98
103
  }
package/dist/jsx/index.js CHANGED
@@ -8,11 +8,13 @@ import { createTokens } from "./createTokens";
8
8
  export * from "./createVariable";
9
9
  export * from "./styled";
10
10
  export * from "./types";
11
+ import { RNWTextProps, RNWViewProps } from "./types-rnw";
11
12
  import { getHasConfigured, getConfig, getThemes, getTokens, onConfiguredOnce } from "./conf";
12
13
  export * from "./constants/constants";
13
14
  export * from "./constants/platform";
14
15
  export * from "./constants/rnw";
15
16
  export * from "./helpers/getExpandedShorthands";
17
+ export * from "./helpers/getSize";
16
18
  export * from "./helpers/getSplitStyles";
17
19
  export * from "./helpers/getStylesAtomic";
18
20
  export * from "./helpers/isObj";
@@ -38,6 +40,8 @@ export * from "./views/ThemeProvider";
38
40
  export * from "./views/TextAncestorContext";
39
41
  export * from "@tamagui/helpers";
40
42
  export {
43
+ RNWTextProps,
44
+ RNWViewProps,
41
45
  createTokens,
42
46
  getConfig,
43
47
  getHasConfigured,
@@ -3,11 +3,14 @@ export * from "./createComponent";
3
3
  export * from "./createFont";
4
4
  export * from "./createTokens";
5
5
  export * from "./createTamagui";
6
+ export * from "./createVariable";
6
7
  export * from "./constants/constants";
7
8
  export * from "./hooks/useMedia";
8
9
  export * from "./hooks/useTheme";
9
10
  export * from "./helpers/isObj";
10
11
  export * from "./helpers/getStylesAtomic";
12
+ export * from "./helpers/proxyThemeVariables";
11
13
  export * from "./helpers/getSplitStyles";
12
14
  export * from "@tamagui/helpers";
13
15
  export * from "./constants/rnw";
16
+ export * from "./types";
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
  import { Image, Text, TextInput } from "react-native";
4
4
  import { createComponent } from "./createComponent";
5
- import { extendStaticConfig } from "./helpers/extendStaticConfig";
6
5
  import { RNComponents } from "./helpers/RNComponents";
7
6
  function styled(Component, options, staticExtractionOptions) {
8
7
  const staticConfigProps = (() => {
@@ -11,7 +10,7 @@ function styled(Component, options, staticExtractionOptions) {
11
10
  if (defaultVariants) {
12
11
  Object.assign(defaultProps, defaultVariants);
13
12
  }
14
- const isReactNativeWeb = RNComponents.has(Component);
13
+ const isReactNativeWeb = "staticConfig" in Component ? Component.staticConfig.isReactNativeWeb : RNComponents.has(Component);
15
14
  const isTamagui = !isReactNativeWeb && "staticConfig" in Component;
16
15
  const Comp = Component;
17
16
  const isImage = !!(defaultProps.isImage || (!isTamagui ? Comp === Image : false));
@@ -25,6 +24,7 @@ function styled(Component, options, staticExtractionOptions) {
25
24
  isTamagui,
26
25
  variants,
27
26
  defaultProps,
27
+ defaultVariants,
28
28
  componentName: name,
29
29
  isReactNativeWeb,
30
30
  isInput,
@@ -35,8 +35,7 @@ function styled(Component, options, staticExtractionOptions) {
35
35
  }
36
36
  return {};
37
37
  })();
38
- const config = extendStaticConfig(Component, staticConfigProps);
39
- const component = createComponent(config);
38
+ const component = createComponent(staticConfigProps, Component);
40
39
  return component;
41
40
  }
42
41
  __name(styled, "styled");
@@ -1,6 +1,7 @@
1
1
  import { stackDefaultStyles } from "../constants/constants";
2
2
  import { createComponent } from "../createComponent";
3
3
  const Stack = createComponent({
4
+ componentName: "Stack",
4
5
  defaultProps: {
5
6
  ...stackDefaultStyles,
6
7
  flexDirection: "column"
@@ -8,6 +8,7 @@ const ellipseStyle = {
8
8
  whiteSpace: "nowrap"
9
9
  };
10
10
  const Text = createComponent({
11
+ componentName: "Text",
11
12
  isText: true,
12
13
  defaultProps: {
13
14
  display: isWeb ? "inline" : "flex",
@@ -3,11 +3,11 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
3
3
  import React, { memo, useMemo } from "react";
4
4
  import { isWeb } from "../constants/platform";
5
5
  import { wrapThemeManagerContext } from "../helpers/wrapThemeManagerContext";
6
- import { useChangeThemeEffect } from "../static";
6
+ import { useChangeThemeEffect } from "../hooks/useTheme";
7
7
  React["createElement"];
8
8
  const Theme = memo(/* @__PURE__ */ __name(function Theme2(props) {
9
9
  var _a, _b;
10
- const { name, theme, themeManager, themes, className } = useChangeThemeEffect(props.name, void 0, props);
10
+ const { name, theme, themeManager, themes, className } = useChangeThemeEffect(props.name, props.componentName, props);
11
11
  if (!themes || !name || !theme) {
12
12
  if (name && !theme && process.env.NODE_ENV === "development") {
13
13
  console.warn(`No theme found by name ${name}`);
@@ -16,10 +16,13 @@ const Theme = memo(/* @__PURE__ */ __name(function Theme2(props) {
16
16
  }
17
17
  const contents = useMemo(() => wrapThemeManagerContext(props.children, themeManager), [props.children, themeManager]);
18
18
  if (isWeb) {
19
- return <div className={props.disableThemeClass ? "" : props.className ? `${className || ""} ${props.className || ""}` : className || ""} style={{
19
+ return <span className={[
20
+ `tui_Theme`,
21
+ ...!props.disableThemeClass ? [props.className, className].filter(Boolean) : []
22
+ ].join(" ")} style={{
20
23
  display: "contents",
21
24
  color: (_b = (_a = themes[name]) == null ? void 0 : _a.color) == null ? void 0 : _b.toString()
22
- }}>{contents}</div>;
25
+ }}>{contents}</span>;
23
26
  }
24
27
  return contents;
25
28
  }, "Theme"));
@@ -20,7 +20,7 @@ const ThemeProvider = /* @__PURE__ */ __name((props) => {
20
20
  return () => {
21
21
  document.body.classList.remove(cn);
22
22
  };
23
- }, []);
23
+ }, [props.disableRootThemeClass]);
24
24
  }
25
25
  const themeContext = useMemo(() => {
26
26
  return {
@@ -28,7 +28,7 @@ const ThemeProvider = /* @__PURE__ */ __name((props) => {
28
28
  defaultTheme: props.defaultTheme
29
29
  };
30
30
  }, [props.themes]);
31
- return <ThemeContext.Provider value={themeContext}><Theme name={props.defaultTheme} disableThemeClass={props.disableRootThemeClass}>{props.children}</Theme></ThemeContext.Provider>;
31
+ return <ThemeContext.Provider value={themeContext}><Theme className={props.className} name={props.defaultTheme} disableThemeClass={props.disableRootThemeClass}>{props.children}</Theme></ThemeContext.Provider>;
32
32
  }, "ThemeProvider");
33
33
  export {
34
34
  ThemeProvider
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/core",
3
- "version": "1.0.0-beta.200+9591831d",
3
+ "version": "1.0.0-beta.204+322b9fd1",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/cjs",
6
6
  "module": "dist/esm",
@@ -19,10 +19,10 @@
19
19
  "dist"
20
20
  ],
21
21
  "dependencies": {
22
- "@tamagui/helpers": "^1.0.0-beta.200+9591831d",
22
+ "@tamagui/helpers": "^1.0.0-beta.204+322b9fd1",
23
23
  "@tamagui/ow": "^0.28.1",
24
- "@tamagui/use-debounce": "^1.0.0-beta.200+9591831d",
25
- "@tamagui/use-force-update": "^1.0.0-beta.200+9591831d",
24
+ "@tamagui/use-debounce": "^1.0.0-beta.204+322b9fd1",
25
+ "@tamagui/use-force-update": "^1.0.0-beta.204+322b9fd1",
26
26
  "react": "*",
27
27
  "react-dom": "*"
28
28
  },
@@ -30,7 +30,7 @@
30
30
  "react-native-web": "*"
31
31
  },
32
32
  "devDependencies": {
33
- "@tamagui/build": "^1.0.0-beta.200+9591831d",
33
+ "@tamagui/build": "^1.0.0-beta.204+322b9fd1",
34
34
  "@types/react": "^17.0.35",
35
35
  "csstype": "^3.0.10",
36
36
  "esbuild": "^0.14.36",
@@ -40,5 +40,5 @@
40
40
  "publishConfig": {
41
41
  "access": "public"
42
42
  },
43
- "gitHead": "9591831d7d4a58cc4e01846e68a0d3324570b5c8"
43
+ "gitHead": "322b9fd15b9cfbe9b671390a3b4e2562addd57fd"
44
44
  }
@@ -1,7 +1,24 @@
1
+ import * as Helpers from '@tamagui/helpers';
1
2
  import { TamaguiInternalConfig } from './types';
2
3
  declare class TamaguiManager {
3
- config: TamaguiInternalConfig | null;
4
4
  rnw: Record<string, any>;
5
+ Helpers: typeof Helpers;
6
+ get config(): TamaguiInternalConfig<import("./types").CreateTokens<import("./types").VariableVal>, {
7
+ [key: string]: Partial<import("./types").TamaguiBaseTheme> & {
8
+ [key: string]: import("./types").VariableVal;
9
+ };
10
+ }, {}, {
11
+ [x: string]: {
12
+ [key: string]: string | number;
13
+ };
14
+ }, {
15
+ [key: string]: string | {
16
+ [key: string]: any;
17
+ };
18
+ }, {
19
+ [key: string]: import("./types").GenericFont<string | number>;
20
+ }>;
21
+ get insertedRules(): unknown[];
5
22
  get allSelectors(): {};
6
23
  get allTransforms(): {};
7
24
  get identifierToValue(): Map<string, any>;
@@ -1 +1 @@
1
- {"version":3,"file":"Tamagui.d.ts","sourceRoot":"","sources":["../src/Tamagui.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAI/C,cAAM,cAAc;IAClB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAO;IAC3C,GAAG,sBAAM;IAET,IAAI,YAAY,OAEf;IAED,IAAI,aAAa,OAEhB;IAED,IAAI,iBAAiB,qBAEpB;CACF;AAED,eAAO,MAAM,OAAO,gBAAuB,CAAA;AAI3C,eAAO,MAAM,sBAAsB,eAAgB,MAAM,QAExD,CAAA;AAED,eAAO,MAAM,kBAAkB,eAAgB,MAAM,SAAS,GAAG,SAEhE,CAAA"}
1
+ {"version":3,"file":"Tamagui.d.ts","sourceRoot":"","sources":["../src/Tamagui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAK3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAI/C,cAAM,cAAc;IAClB,GAAG,sBAAM;IACT,OAAO,iBAAU;IAEjB,IAAI,MAAM;;;;;;;;;;;;;;OAET;IAED,IAAI,aAAa,cAEhB;IAED,IAAI,YAAY,OAEf;IAED,IAAI,aAAa,OAEhB;IAED,IAAI,iBAAiB,qBAEpB;CACF;AAED,eAAO,MAAM,OAAO,gBAAuB,CAAA;AAI3C,eAAO,MAAM,sBAAsB,eAAgB,MAAM,QAExD,CAAA;AAED,eAAO,MAAM,kBAAkB,eAAgB,MAAM,SAAS,GAAG,SAEhE,CAAA"}
@@ -9,14 +9,14 @@ export declare type SetActiveThemeProps = {
9
9
  };
10
10
  export declare class ThemeManager {
11
11
  #private;
12
- name: string | null;
12
+ name: string;
13
13
  theme: ThemeObject | null;
14
14
  parentManager: ThemeManager | null;
15
15
  keys: Map<any, Set<string>>;
16
16
  listeners: Map<any, Function>;
17
17
  themeListeners: Set<ThemeListener>;
18
18
  className: string | null;
19
- constructor(name?: string | null, theme?: ThemeObject | null, parentManager?: ThemeManager | null);
19
+ constructor(name?: string, theme?: ThemeObject | null, parentManager?: ThemeManager | null);
20
20
  get parentName(): string | null;
21
21
  get fullName(): string;
22
22
  getValue(key: string): import("./types").VariableVal | undefined;
@@ -32,7 +32,7 @@ export declare class ThemeManager {
32
32
  };
33
33
  className: string;
34
34
  } | {
35
- name: string | null;
35
+ name: string;
36
36
  theme: (Partial<import("./types").TamaguiBaseTheme> & {
37
37
  [key: string]: import("./types").VariableVal;
38
38
  }) | null;
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeManager.d.ts","sourceRoot":"","sources":["../src/ThemeManager.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE7C,aAAK,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,EAAE,YAAY,KAAK,IAAI,CAAA;AAE9E,oBAAY,mBAAmB,GAAG;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;IACnC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,GAAG,CAAA;CACZ,CAAA;AAED,qBAAa,YAAY;;IAOd,IAAI,EAAE,MAAM,GAAG,IAAI;IACnB,KAAK,EAAE,WAAW,GAAG,IAAI;IACzB,aAAa,EAAE,YAAY,GAAG,IAAI;IAR3C,IAAI,wBAA8B;IAClC,SAAS,qBAA2B;IACpC,cAAc,qBAA2B;IACzC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAO;gBAGtB,IAAI,GAAE,MAAM,GAAG,IAAW,EAC1B,KAAK,GAAE,WAAW,GAAG,IAAW,EAChC,aAAa,GAAE,YAAY,GAAG,IAAW;IAqBlD,IAAI,UAAU,kBAEb;IAED,IAAI,QAAQ,IAAI,MAAM,CAMrB;IAGD,QAAQ,CAAC,GAAG,EAAE,MAAM;IAmBpB,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAE,mBAAwB;IAgB3D,YAAY,CACV,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAO,EACnF,KAAK,CAAC,EAAE,GAAG;;;;;;;;;;;;;IAiEb,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;IAKlC,eAAe;IAYf,aAAa,CAAC,EAAE,EAAE,aAAa;IAO/B,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ;CAOjC;AAED,eAAO,MAAM,mBAAmB,8CAA2C,CAAA;AAC3E,eAAO,MAAM,YAAY,cAAqB,CAAA"}
1
+ {"version":3,"file":"ThemeManager.d.ts","sourceRoot":"","sources":["../src/ThemeManager.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE7C,aAAK,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,EAAE,YAAY,KAAK,IAAI,CAAA;AAE9E,oBAAY,mBAAmB,GAAG;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;IACnC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,GAAG,CAAA;CACZ,CAAA;AAED,qBAAa,YAAY;;IAOd,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,WAAW,GAAG,IAAI;IACzB,aAAa,EAAE,YAAY,GAAG,IAAI;IAR3C,IAAI,wBAA8B;IAClC,SAAS,qBAA2B;IACpC,cAAc,qBAA2B;IACzC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAO;gBAGtB,IAAI,GAAE,MAAW,EACjB,KAAK,GAAE,WAAW,GAAG,IAAW,EAChC,aAAa,GAAE,YAAY,GAAG,IAAW;IAqBlD,IAAI,UAAU,kBAEb;IAED,IAAI,QAAQ,IAAI,MAAM,CAMrB;IAGD,QAAQ,CAAC,GAAG,EAAE,MAAM;IAmBpB,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAE,mBAAwB;IAgB3D,YAAY,CACV,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAO,EACnF,KAAK,CAAC,EAAE,GAAG;;;;;;;;;;;;;IA4Eb,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;IAKlC,eAAe;IAYf,aAAa,CAAC,EAAE,EAAE,aAAa;IAO/B,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ;CAOjC;AAED,eAAO,MAAM,mBAAmB,8CAA2C,CAAA;AAC3E,eAAO,MAAM,YAAY,cAAqB,CAAA"}
package/types/conf.d.ts CHANGED
@@ -13,6 +13,8 @@ export declare const getConfig: () => TamaguiInternalConfig<import("./types").Cr
13
13
  [key: string]: string | {
14
14
  [key: string]: any;
15
15
  };
16
+ }, {
17
+ [key: string]: import("./types").GenericFont<string | number>;
16
18
  }>;
17
19
  export declare const getTokens: () => import("./types").CreateTokens<import("./createVariable").Variable>;
18
20
  export declare const getThemes: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"conf.d.ts","sourceRoot":"","sources":["../src/conf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAI/D,eAAO,MAAM,SAAS,SAAU,qBAAqB,SAMpD,CAAA;AAED,eAAO,MAAM,gBAAgB,eAAe,CAAA;AAC5C,eAAO,MAAM,SAAS;;;;;;;;;;;;EAAc,CAAA;AACpC,eAAO,MAAM,SAAS,2EAA2B,CAAA;AACjD,eAAO,MAAM,SAAS;;;;CAAqB,CAAA;AAE3C,eAAO,MAAM,eAAe,qBAA4B,CAAA;AAExD,eAAO,MAAM,gBAAgB,OAAQ,cAAc,SAWlD,CAAA"}
1
+ {"version":3,"file":"conf.d.ts","sourceRoot":"","sources":["../src/conf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAI/D,eAAO,MAAM,SAAS,SAAU,qBAAqB,SAMpD,CAAA;AAED,eAAO,MAAM,gBAAgB,eAAe,CAAA;AAC5C,eAAO,MAAM,SAAS;;;;;;;;;;;;;;EAAc,CAAA;AACpC,eAAO,MAAM,SAAS,2EAA2B,CAAA;AACjD,eAAO,MAAM,SAAS;;;;CAAqB,CAAA;AAE3C,eAAO,MAAM,eAAe,qBAA4B,CAAA;AAExD,eAAO,MAAM,gBAAgB,OAAQ,cAAc,SAUlD,CAAA"}
@@ -3,6 +3,7 @@ export declare const isAndroid: boolean;
3
3
  export declare const isIOS: boolean;
4
4
  export declare const isWeb: boolean;
5
5
  export declare const isSSR: boolean;
6
+ export declare const isClient: boolean;
6
7
  export declare const useIsomorphicLayoutEffect: typeof useEffect;
7
8
  export declare const isChrome: boolean;
8
9
  export declare const supportsTouchWeb: boolean;