@tamagui/web 1.2.9 → 1.2.10

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 (159) hide show
  1. package/dist/esm/Tamagui.mjs +41 -0
  2. package/dist/esm/Tamagui.mjs.map +7 -0
  3. package/dist/esm/addTheme.mjs +54 -0
  4. package/dist/esm/addTheme.mjs.map +7 -0
  5. package/dist/esm/config.mjs +84 -0
  6. package/dist/esm/config.mjs.map +7 -0
  7. package/dist/esm/constants/constants.mjs +22 -0
  8. package/dist/esm/constants/constants.mjs.map +7 -0
  9. package/dist/esm/constants/isDevTools.mjs +13 -0
  10. package/dist/esm/constants/isDevTools.mjs.map +7 -0
  11. package/dist/esm/contexts/ButtonNestingContext.mjs +6 -0
  12. package/dist/esm/contexts/ButtonNestingContext.mjs.map +7 -0
  13. package/dist/esm/contexts/FontLanguageContext.mjs +6 -0
  14. package/dist/esm/contexts/FontLanguageContext.mjs.map +7 -0
  15. package/dist/esm/contexts/TextAncestorContext.mjs +6 -0
  16. package/dist/esm/contexts/TextAncestorContext.mjs.map +7 -0
  17. package/dist/esm/createComponent.mjs +853 -0
  18. package/dist/esm/createComponent.mjs.map +7 -0
  19. package/dist/esm/createFont.mjs +45 -0
  20. package/dist/esm/createFont.mjs.map +7 -0
  21. package/dist/esm/createShorthands.mjs +7 -0
  22. package/dist/esm/createShorthands.mjs.map +7 -0
  23. package/dist/esm/createTamagui.mjs +190 -0
  24. package/dist/esm/createTamagui.mjs.map +7 -0
  25. package/dist/esm/createTheme.mjs +7 -0
  26. package/dist/esm/createTheme.mjs.map +7 -0
  27. package/dist/esm/createTokens.mjs +15 -0
  28. package/dist/esm/createTokens.mjs.map +7 -0
  29. package/dist/esm/createVariable.mjs +78 -0
  30. package/dist/esm/createVariable.mjs.map +7 -0
  31. package/dist/esm/createVariables.mjs +35 -0
  32. package/dist/esm/createVariables.mjs.map +7 -0
  33. package/dist/esm/helpers/RNComponents.mjs +16 -0
  34. package/dist/esm/helpers/RNComponents.mjs.map +7 -0
  35. package/dist/esm/helpers/ThemeManager.mjs +209 -0
  36. package/dist/esm/helpers/ThemeManager.mjs.map +7 -0
  37. package/dist/esm/helpers/ThemeManagerContext.mjs +6 -0
  38. package/dist/esm/helpers/ThemeManagerContext.mjs.map +7 -0
  39. package/dist/esm/helpers/createMediaStyle.mjs +42 -0
  40. package/dist/esm/helpers/createMediaStyle.mjs.map +7 -0
  41. package/dist/esm/helpers/createPropMapper.mjs +396 -0
  42. package/dist/esm/helpers/createPropMapper.mjs.map +7 -0
  43. package/dist/esm/helpers/createProxy.mjs +19 -0
  44. package/dist/esm/helpers/createProxy.mjs.map +7 -0
  45. package/dist/esm/helpers/expandStyle.mjs +71 -0
  46. package/dist/esm/helpers/expandStyle.mjs.map +7 -0
  47. package/dist/esm/helpers/expandStyles.mjs +90 -0
  48. package/dist/esm/helpers/expandStyles.mjs.map +7 -0
  49. package/dist/esm/helpers/extendStaticConfig.mjs +66 -0
  50. package/dist/esm/helpers/extendStaticConfig.mjs.map +7 -0
  51. package/dist/esm/helpers/getAnimationDriver.mjs +8 -0
  52. package/dist/esm/helpers/getAnimationDriver.mjs.map +7 -0
  53. package/dist/esm/helpers/getExpandedShorthands.mjs +16 -0
  54. package/dist/esm/helpers/getExpandedShorthands.mjs.map +7 -0
  55. package/dist/esm/helpers/getFontLanguage.mjs +5 -0
  56. package/dist/esm/helpers/getFontLanguage.mjs.map +7 -0
  57. package/dist/esm/helpers/getSplitStyles.mjs +849 -0
  58. package/dist/esm/helpers/getSplitStyles.mjs.map +7 -0
  59. package/dist/esm/helpers/getStylesAtomic.mjs +200 -0
  60. package/dist/esm/helpers/getStylesAtomic.mjs.map +7 -0
  61. package/dist/esm/helpers/getStylesAtomic.native.mjs +12 -0
  62. package/dist/esm/helpers/getStylesAtomic.native.mjs.map +7 -0
  63. package/dist/esm/helpers/getThemeCSSRules.mjs +86 -0
  64. package/dist/esm/helpers/getThemeCSSRules.mjs.map +7 -0
  65. package/dist/esm/helpers/getThemeCSSRules.native.mjs +7 -0
  66. package/dist/esm/helpers/getThemeCSSRules.native.mjs.map +7 -0
  67. package/dist/esm/helpers/getVariantExtras.mjs +67 -0
  68. package/dist/esm/helpers/getVariantExtras.mjs.map +7 -0
  69. package/dist/esm/helpers/insertStyleRule.mjs +186 -0
  70. package/dist/esm/helpers/insertStyleRule.mjs.map +7 -0
  71. package/dist/esm/helpers/isObj.mjs +5 -0
  72. package/dist/esm/helpers/isObj.mjs.map +7 -0
  73. package/dist/esm/helpers/isTamaguiComponent.mjs +8 -0
  74. package/dist/esm/helpers/isTamaguiComponent.mjs.map +7 -0
  75. package/dist/esm/helpers/isTamaguiElement.mjs +9 -0
  76. package/dist/esm/helpers/isTamaguiElement.mjs.map +7 -0
  77. package/dist/esm/helpers/matchMedia.mjs +17 -0
  78. package/dist/esm/helpers/matchMedia.mjs.map +7 -0
  79. package/dist/esm/helpers/matchMedia.native.mjs +23 -0
  80. package/dist/esm/helpers/matchMedia.native.mjs.map +7 -0
  81. package/dist/esm/helpers/mergeProps.mjs +30 -0
  82. package/dist/esm/helpers/mergeProps.mjs.map +7 -0
  83. package/dist/esm/helpers/mergeTransform.mjs +21 -0
  84. package/dist/esm/helpers/mergeTransform.mjs.map +7 -0
  85. package/dist/esm/helpers/normalizeColor.mjs +36 -0
  86. package/dist/esm/helpers/normalizeColor.mjs.map +7 -0
  87. package/dist/esm/helpers/normalizeValueWithProperty.mjs +113 -0
  88. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +7 -0
  89. package/dist/esm/helpers/proxyThemeVariables.mjs +16 -0
  90. package/dist/esm/helpers/proxyThemeVariables.mjs.map +7 -0
  91. package/dist/esm/helpers/pseudoDescriptors.mjs +29 -0
  92. package/dist/esm/helpers/pseudoDescriptors.mjs.map +7 -0
  93. package/dist/esm/helpers/registerCSSVariable.mjs +14 -0
  94. package/dist/esm/helpers/registerCSSVariable.mjs.map +7 -0
  95. package/dist/esm/helpers/themeable.mjs +28 -0
  96. package/dist/esm/helpers/themeable.mjs.map +7 -0
  97. package/dist/esm/helpers/themes.mjs +53 -0
  98. package/dist/esm/helpers/themes.mjs.map +7 -0
  99. package/dist/esm/helpers/timer.mjs +11 -0
  100. package/dist/esm/helpers/timer.mjs.map +7 -0
  101. package/dist/esm/helpers/useShallowSetState.mjs +35 -0
  102. package/dist/esm/helpers/useShallowSetState.mjs.map +7 -0
  103. package/dist/esm/helpers/warnOnce.mjs +14 -0
  104. package/dist/esm/helpers/warnOnce.mjs.map +7 -0
  105. package/dist/esm/helpers/withStaticProperties.mjs +8 -0
  106. package/dist/esm/helpers/withStaticProperties.mjs.map +7 -0
  107. package/dist/esm/hooks/getThemeUnwrapped.mjs +9 -0
  108. package/dist/esm/hooks/getThemeUnwrapped.mjs.map +7 -0
  109. package/dist/esm/hooks/useId.mjs +5 -0
  110. package/dist/esm/hooks/useId.mjs.map +7 -0
  111. package/dist/esm/hooks/useIsTouchDevice.mjs +9 -0
  112. package/dist/esm/hooks/useIsTouchDevice.mjs.map +7 -0
  113. package/dist/esm/hooks/useMedia.mjs +225 -0
  114. package/dist/esm/hooks/useMedia.mjs.map +7 -0
  115. package/dist/esm/hooks/useSafeRef.mjs +35 -0
  116. package/dist/esm/hooks/useSafeRef.mjs.map +7 -0
  117. package/dist/esm/hooks/useServerHooks.mjs +11 -0
  118. package/dist/esm/hooks/useServerHooks.mjs.map +7 -0
  119. package/dist/esm/hooks/useStyle.mjs +37 -0
  120. package/dist/esm/hooks/useStyle.mjs.map +7 -0
  121. package/dist/esm/hooks/useTheme.mjs +205 -0
  122. package/dist/esm/hooks/useTheme.mjs.map +7 -0
  123. package/dist/esm/hooks/useThemeName.mjs +28 -0
  124. package/dist/esm/hooks/useThemeName.mjs.map +7 -0
  125. package/dist/esm/index.mjs +77 -0
  126. package/dist/esm/index.mjs.map +7 -0
  127. package/dist/esm/inject-styles.mjs +16 -0
  128. package/dist/esm/inject-styles.mjs.map +7 -0
  129. package/dist/esm/insertFont.mjs +67 -0
  130. package/dist/esm/insertFont.mjs.map +7 -0
  131. package/dist/esm/setupHooks.mjs +9 -0
  132. package/dist/esm/setupHooks.mjs.map +7 -0
  133. package/dist/esm/setupReactNative.mjs +25 -0
  134. package/dist/esm/setupReactNative.mjs.map +7 -0
  135. package/dist/esm/styled.mjs +71 -0
  136. package/dist/esm/styled.mjs.map +7 -0
  137. package/dist/esm/types.mjs +1 -0
  138. package/dist/esm/types.mjs.map +7 -0
  139. package/dist/esm/updateTheme.mjs +23 -0
  140. package/dist/esm/updateTheme.mjs.map +7 -0
  141. package/dist/esm/views/FontLanguage.mjs +17 -0
  142. package/dist/esm/views/FontLanguage.mjs.map +7 -0
  143. package/dist/esm/views/FontLanguage.native.mjs +11 -0
  144. package/dist/esm/views/FontLanguage.native.mjs.map +7 -0
  145. package/dist/esm/views/FontLanguage.types.mjs +1 -0
  146. package/dist/esm/views/FontLanguage.types.mjs.map +7 -0
  147. package/dist/esm/views/Slot.mjs +66 -0
  148. package/dist/esm/views/Slot.mjs.map +7 -0
  149. package/dist/esm/views/Stack.mjs +14 -0
  150. package/dist/esm/views/Stack.mjs.map +7 -0
  151. package/dist/esm/views/TamaguiProvider.mjs +56 -0
  152. package/dist/esm/views/TamaguiProvider.mjs.map +7 -0
  153. package/dist/esm/views/Text.mjs +70 -0
  154. package/dist/esm/views/Text.mjs.map +7 -0
  155. package/dist/esm/views/Theme.mjs +63 -0
  156. package/dist/esm/views/Theme.mjs.map +7 -0
  157. package/dist/esm/views/ThemeProvider.mjs +45 -0
  158. package/dist/esm/views/ThemeProvider.mjs.map +7 -0
  159. package/package.json +11 -11
@@ -0,0 +1,41 @@
1
+ import * as Helpers from "@tamagui/helpers";
2
+ import { getConfig } from "./config";
3
+ import { getAllRules, getAllSelectors, getAllTransforms } from "./helpers/insertStyleRule";
4
+ import { mediaState } from "./hooks/useMedia";
5
+ class TamaguiManager {
6
+ constructor() {
7
+ this.Helpers = Helpers;
8
+ }
9
+ get mediaState() {
10
+ return { ...mediaState };
11
+ }
12
+ get config() {
13
+ return getConfig();
14
+ }
15
+ get insertedRules() {
16
+ return getAllRules();
17
+ }
18
+ get allSelectors() {
19
+ return getAllSelectors();
20
+ }
21
+ get allTransforms() {
22
+ return getAllTransforms();
23
+ }
24
+ get identifierToValue() {
25
+ return identifierToValue;
26
+ }
27
+ }
28
+ const Tamagui = new TamaguiManager();
29
+ const identifierToValue = /* @__PURE__ */ new Map();
30
+ const getValueFromIdentifier = (identifier) => {
31
+ return identifierToValue.get(identifier);
32
+ };
33
+ const setIdentifierValue = (identifier, value) => {
34
+ identifierToValue.set(identifier, value);
35
+ };
36
+ export {
37
+ Tamagui,
38
+ getValueFromIdentifier,
39
+ setIdentifierValue
40
+ };
41
+ //# sourceMappingURL=Tamagui.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/Tamagui.ts"],
4
+ "sourcesContent": ["import * as Helpers from '@tamagui/helpers'\n\nimport { getConfig } from './config'\nimport { getAllRules, getAllSelectors, getAllTransforms } from './helpers/insertStyleRule'\nimport { mediaState } from './hooks/useMedia'\n\n// easy introspection\n// only included in dev mode\n\nclass TamaguiManager {\n Helpers = Helpers\n\n get mediaState() {\n return { ...mediaState }\n }\n\n get config() {\n return getConfig()\n }\n\n get insertedRules() {\n return getAllRules()\n }\n\n get allSelectors() {\n return getAllSelectors()\n }\n\n get allTransforms() {\n return getAllTransforms()\n }\n\n get identifierToValue() {\n return identifierToValue\n }\n}\n\nexport const Tamagui = new TamaguiManager()\n\nconst identifierToValue = new Map<string, any>()\n\nexport const getValueFromIdentifier = (identifier: string) => {\n return identifierToValue.get(identifier)\n}\n\nexport const setIdentifierValue = (identifier: string, value: any) => {\n identifierToValue.set(identifier, value)\n}\n"],
5
+ "mappings": "AAAA,YAAY,aAAa;AAEzB,SAAS,iBAAiB;AAC1B,SAAS,aAAa,iBAAiB,wBAAwB;AAC/D,SAAS,kBAAkB;AAK3B,MAAM,eAAe;AAAA,EAArB;AACE,mBAAU;AAAA;AAAA,EAEV,IAAI,aAAa;AACf,WAAO,EAAE,GAAG,WAAW;AAAA,EACzB;AAAA,EAEA,IAAI,SAAS;AACX,WAAO,UAAU;AAAA,EACnB;AAAA,EAEA,IAAI,gBAAgB;AAClB,WAAO,YAAY;AAAA,EACrB;AAAA,EAEA,IAAI,eAAe;AACjB,WAAO,gBAAgB;AAAA,EACzB;AAAA,EAEA,IAAI,gBAAgB;AAClB,WAAO,iBAAiB;AAAA,EAC1B;AAAA,EAEA,IAAI,oBAAoB;AACtB,WAAO;AAAA,EACT;AACF;AAEO,MAAM,UAAU,IAAI,eAAe;AAE1C,MAAM,oBAAoB,oBAAI,IAAiB;AAExC,MAAM,yBAAyB,CAAC,eAAuB;AAC5D,SAAO,kBAAkB,IAAI,UAAU;AACzC;AAEO,MAAM,qBAAqB,CAAC,YAAoB,UAAe;AACpE,oBAAkB,IAAI,YAAY,KAAK;AACzC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,54 @@
1
+ import { isWeb } from "@tamagui/constants";
2
+ import { getConfig, updateConfig } from "./config";
3
+ import { getThemeCSSRules } from "./helpers/getThemeCSSRules";
4
+ import { ensureThemeVariable, proxyThemeToParents } from "./helpers/themes";
5
+ function addTheme(props) {
6
+ var _a;
7
+ const config = getConfig();
8
+ if (process.env.NODE_ENV === "development") {
9
+ if (!config) {
10
+ throw new Error("No config");
11
+ }
12
+ const theme2 = config.themes[props.name];
13
+ if (!props.update && theme2) {
14
+ return { theme: theme2 };
15
+ }
16
+ }
17
+ const { name: themeName, theme: themeIn, insertCSS } = props;
18
+ const theme = { ...themeIn };
19
+ for (const key in theme) {
20
+ ensureThemeVariable(theme, key);
21
+ }
22
+ const themeProxied = proxyThemeToParents(themeName, theme, config.themes);
23
+ config.themes[themeName] = themeProxied;
24
+ let cssRules = [];
25
+ if (isWeb) {
26
+ if (insertCSS) {
27
+ cssRules = getThemeCSSRules({
28
+ // @ts-ignore this works but should be fixed types
29
+ config,
30
+ themeName,
31
+ names: [themeName],
32
+ theme
33
+ });
34
+ const id = `t_theme_style_${themeName}`;
35
+ const existing = document.querySelector(`#${id}`);
36
+ const style = document.createElement("style");
37
+ style.id = id;
38
+ style.appendChild(document.createTextNode(cssRules.join("\n")));
39
+ document.head.appendChild(style);
40
+ if (existing) {
41
+ (_a = existing.parentElement) == null ? void 0 : _a.removeChild(existing);
42
+ }
43
+ }
44
+ }
45
+ updateConfig("themes", { ...config.themes, [themeName]: themeProxied });
46
+ return {
47
+ theme: themeProxied,
48
+ cssRules
49
+ };
50
+ }
51
+ export {
52
+ addTheme
53
+ };
54
+ //# sourceMappingURL=addTheme.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/addTheme.ts"],
4
+ "sourcesContent": ["import { isWeb } from '@tamagui/constants'\n\nimport { getConfig, updateConfig } from './config'\nimport { getThemeCSSRules } from './helpers/getThemeCSSRules'\nimport { ensureThemeVariable, proxyThemeToParents } from './helpers/themes'\nimport { ThemeDefinition, ThemeParsed } from './types'\n\nexport function addTheme(props: {\n name: string\n theme: Partial<Record<keyof ThemeDefinition, any>>\n insertCSS?: boolean\n update?: boolean\n}) {\n const config = getConfig()\n\n if (process.env.NODE_ENV === 'development') {\n if (!config) {\n throw new Error('No config')\n }\n const theme = config.themes[props.name]\n if (!props.update && theme) {\n return { theme }\n }\n }\n\n const { name: themeName, theme: themeIn, insertCSS } = props\n const theme = { ...themeIn } as ThemeParsed\n for (const key in theme) {\n ensureThemeVariable(theme, key)\n }\n\n const themeProxied = proxyThemeToParents(themeName, theme, config.themes)\n config.themes[themeName] = themeProxied\n\n let cssRules: string[] = []\n\n if (isWeb) {\n if (insertCSS) {\n cssRules = getThemeCSSRules({\n // @ts-ignore this works but should be fixed types\n config,\n themeName,\n names: [themeName],\n theme,\n })\n const id = `t_theme_style_${themeName}`\n const existing = document.querySelector(`#${id}`)\n const style = document.createElement('style')\n style.id = id\n style.appendChild(document.createTextNode(cssRules.join('\\n')))\n document.head.appendChild(style)\n if (existing) {\n existing.parentElement?.removeChild(existing)\n }\n }\n }\n\n updateConfig('themes', { ...config.themes, [themeName]: themeProxied })\n\n // trigger updates in components\n return {\n theme: themeProxied,\n cssRules,\n }\n}\n"],
5
+ "mappings": "AAAA,SAAS,aAAa;AAEtB,SAAS,WAAW,oBAAoB;AACxC,SAAS,wBAAwB;AACjC,SAAS,qBAAqB,2BAA2B;AAGlD,SAAS,SAAS,OAKtB;AAZH;AAaE,QAAM,SAAS,UAAU;AAEzB,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI,MAAM,WAAW;AAAA,IAC7B;AACA,UAAMA,SAAQ,OAAO,OAAO,MAAM,IAAI;AACtC,QAAI,CAAC,MAAM,UAAUA,QAAO;AAC1B,aAAO,EAAE,OAAAA,OAAM;AAAA,IACjB;AAAA,EACF;AAEA,QAAM,EAAE,MAAM,WAAW,OAAO,SAAS,UAAU,IAAI;AACvD,QAAM,QAAQ,EAAE,GAAG,QAAQ;AAC3B,aAAW,OAAO,OAAO;AACvB,wBAAoB,OAAO,GAAG;AAAA,EAChC;AAEA,QAAM,eAAe,oBAAoB,WAAW,OAAO,OAAO,MAAM;AACxE,SAAO,OAAO,SAAS,IAAI;AAE3B,MAAI,WAAqB,CAAC;AAE1B,MAAI,OAAO;AACT,QAAI,WAAW;AACb,iBAAW,iBAAiB;AAAA;AAAA,QAE1B;AAAA,QACA;AAAA,QACA,OAAO,CAAC,SAAS;AAAA,QACjB;AAAA,MACF,CAAC;AACD,YAAM,KAAK,iBAAiB;AAC5B,YAAM,WAAW,SAAS,cAAc,IAAI,IAAI;AAChD,YAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,YAAM,KAAK;AACX,YAAM,YAAY,SAAS,eAAe,SAAS,KAAK,IAAI,CAAC,CAAC;AAC9D,eAAS,KAAK,YAAY,KAAK;AAC/B,UAAI,UAAU;AACZ,uBAAS,kBAAT,mBAAwB,YAAY;AAAA,MACtC;AAAA,IACF;AAAA,EACF;AAEA,eAAa,UAAU,EAAE,GAAG,OAAO,QAAQ,CAAC,SAAS,GAAG,aAAa,CAAC;AAGtE,SAAO;AAAA,IACL,OAAO;AAAA,IACP;AAAA,EACF;AACF;",
6
+ "names": ["theme"]
7
+ }
@@ -0,0 +1,84 @@
1
+ let conf;
2
+ const setConfig = (next) => {
3
+ conf = next;
4
+ configListeners.forEach((cb) => cb(next));
5
+ };
6
+ const setConfigFont = (name, font, fontParsed) => {
7
+ if (process.env.NODE_ENV === "development") {
8
+ if (!conf)
9
+ throw new Error(`Haven't called createTamagui yet`);
10
+ }
11
+ conf.fonts[name] = font;
12
+ conf.fontsParsed[`$${name}`] = fontParsed;
13
+ };
14
+ const getConfig = () => {
15
+ if (!conf) {
16
+ throw new Error(
17
+ process.env.NODE_ENV !== "production" ? `Missing tamagui config, you either have a duplicate config, or haven't set it up. Be sure createTamagui is called before rendering.` : "Err0"
18
+ );
19
+ }
20
+ return conf;
21
+ };
22
+ let cached;
23
+ const getTokens = ({
24
+ prefixed
25
+ } = {}) => {
26
+ return cached ??= {
27
+ size: {
28
+ ...conf.tokens["size"],
29
+ ...conf.tokensParsed["size"]
30
+ },
31
+ space: {
32
+ ...conf.tokens["space"],
33
+ ...conf.tokensParsed["space"]
34
+ },
35
+ radius: {
36
+ ...conf.tokens["radius"],
37
+ ...conf.tokensParsed["radius"]
38
+ },
39
+ zIndex: {
40
+ ...conf.tokens["zIndex"],
41
+ ...conf.tokensParsed["zIndex"]
42
+ },
43
+ color: {
44
+ ...conf.tokens["color"],
45
+ ...conf.tokensParsed["color"]
46
+ }
47
+ };
48
+ };
49
+ const useTokens = () => getTokens();
50
+ const getThemes = () => conf.themes;
51
+ const configListeners = /* @__PURE__ */ new Set();
52
+ const onConfiguredOnce = (cb) => {
53
+ if (conf) {
54
+ cb(conf);
55
+ } else {
56
+ configListeners.add(cb);
57
+ }
58
+ };
59
+ const updateConfig = (key, value) => {
60
+ Object.assign(key, value);
61
+ };
62
+ const getFont = (name) => {
63
+ var _a;
64
+ const conf2 = getConfig();
65
+ return conf2.fontsParsed[name] ?? ((_a = Object.entries(conf2.fontsParsed).find(
66
+ ([k]) => {
67
+ var _a2, _b;
68
+ return ((_b = (_a2 = conf2.fontsParsed[k]) == null ? void 0 : _a2.family) == null ? void 0 : _b["val"]) === name;
69
+ }
70
+ )) == null ? void 0 : _a[1]);
71
+ };
72
+ export {
73
+ configListeners,
74
+ getConfig,
75
+ getFont,
76
+ getThemes,
77
+ getTokens,
78
+ onConfiguredOnce,
79
+ setConfig,
80
+ setConfigFont,
81
+ updateConfig,
82
+ useTokens
83
+ };
84
+ //# sourceMappingURL=config.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/config.ts"],
4
+ "sourcesContent": ["import { ConfigListener, TamaguiInternalConfig, TokensMerged } from './types'\n\nlet conf: TamaguiInternalConfig | null\n\nexport const setConfig = (next: TamaguiInternalConfig) => {\n conf = next\n configListeners.forEach((cb) => cb(next))\n}\n\nexport const setConfigFont = (name: string, font: any, fontParsed: any) => {\n if (process.env.NODE_ENV === 'development') {\n if (!conf) throw new Error(`Haven't called createTamagui yet`)\n }\n conf!.fonts[name] = font\n conf!.fontsParsed[`$${name}`] = fontParsed\n}\n\nexport const getConfig = () => {\n if (!conf) {\n throw new Error(\n process.env.NODE_ENV !== 'production'\n ? `Missing tamagui config, you either have a duplicate config, or haven't set it up. Be sure createTamagui is called before rendering.`\n : 'Err0'\n )\n }\n return conf\n}\n\nlet cached: TokensMerged\nexport const getTokens = ({\n prefixed,\n}: {\n /**\n * @deprecated prefixed true and false are merged together, no longer need this property\n */\n prefixed?: boolean\n} = {}): TokensMerged => {\n return (cached ??= {\n size: {\n ...conf!.tokens['size'],\n ...conf!.tokensParsed['size'],\n },\n space: {\n ...conf!.tokens['space'],\n ...conf!.tokensParsed['space'],\n },\n radius: {\n ...conf!.tokens['radius'],\n ...conf!.tokensParsed['radius'],\n },\n zIndex: {\n ...conf!.tokens['zIndex'],\n ...conf!.tokensParsed['zIndex'],\n },\n color: {\n ...conf!.tokens['color'],\n ...conf!.tokensParsed['color'],\n },\n } as any)\n}\n\n/**\n * Note: this is the same as `getTokens`\n */\nexport const useTokens = () => getTokens()\n\nexport const getThemes = () => conf!.themes\n\nexport const configListeners = new Set<ConfigListener>()\n\nexport const onConfiguredOnce = (cb: ConfigListener) => {\n if (conf) {\n cb(conf)\n } else {\n configListeners.add(cb)\n }\n}\n\nexport const updateConfig = (key: string, value: any) => {\n Object.assign(key, value)\n}\n\n// searches by value name or token name\nexport const getFont = (name: string) => {\n const conf = getConfig()\n return (\n conf.fontsParsed[name] ??\n Object.entries(conf.fontsParsed).find(\n ([k]) => conf.fontsParsed[k]?.family?.['val'] === name\n )?.[1]\n )\n}\n"],
5
+ "mappings": "AAEA,IAAI;AAEG,MAAM,YAAY,CAAC,SAAgC;AACxD,SAAO;AACP,kBAAgB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;AAC1C;AAEO,MAAM,gBAAgB,CAAC,MAAc,MAAW,eAAoB;AACzE,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,CAAC;AAAM,YAAM,IAAI,MAAM,kCAAkC;AAAA,EAC/D;AACA,OAAM,MAAM,IAAI,IAAI;AACpB,OAAM,YAAY,IAAI,MAAM,IAAI;AAClC;AAEO,MAAM,YAAY,MAAM;AAC7B,MAAI,CAAC,MAAM;AACT,UAAM,IAAI;AAAA,MACR,QAAQ,IAAI,aAAa,eACrB,wIACA;AAAA,IACN;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAI;AACG,MAAM,YAAY,CAAC;AAAA,EACxB;AACF,IAKI,CAAC,MAAoB;AACvB,SAAQ,WAAW;AAAA,IACjB,MAAM;AAAA,MACJ,GAAG,KAAM,OAAO,MAAM;AAAA,MACtB,GAAG,KAAM,aAAa,MAAM;AAAA,IAC9B;AAAA,IACA,OAAO;AAAA,MACL,GAAG,KAAM,OAAO,OAAO;AAAA,MACvB,GAAG,KAAM,aAAa,OAAO;AAAA,IAC/B;AAAA,IACA,QAAQ;AAAA,MACN,GAAG,KAAM,OAAO,QAAQ;AAAA,MACxB,GAAG,KAAM,aAAa,QAAQ;AAAA,IAChC;AAAA,IACA,QAAQ;AAAA,MACN,GAAG,KAAM,OAAO,QAAQ;AAAA,MACxB,GAAG,KAAM,aAAa,QAAQ;AAAA,IAChC;AAAA,IACA,OAAO;AAAA,MACL,GAAG,KAAM,OAAO,OAAO;AAAA,MACvB,GAAG,KAAM,aAAa,OAAO;AAAA,IAC/B;AAAA,EACF;AACF;AAKO,MAAM,YAAY,MAAM,UAAU;AAElC,MAAM,YAAY,MAAM,KAAM;AAE9B,MAAM,kBAAkB,oBAAI,IAAoB;AAEhD,MAAM,mBAAmB,CAAC,OAAuB;AACtD,MAAI,MAAM;AACR,OAAG,IAAI;AAAA,EACT,OAAO;AACL,oBAAgB,IAAI,EAAE;AAAA,EACxB;AACF;AAEO,MAAM,eAAe,CAAC,KAAa,UAAe;AACvD,SAAO,OAAO,KAAK,KAAK;AAC1B;AAGO,MAAM,UAAU,CAAC,SAAiB;AAnFzC;AAoFE,QAAMA,QAAO,UAAU;AACvB,SACEA,MAAK,YAAY,IAAI,OACrB,YAAO,QAAQA,MAAK,WAAW,EAAE;AAAA,IAC/B,CAAC,CAAC,CAAC,MAAG;AAxFZ,UAAAC,KAAA;AAwFe,qBAAAA,MAAAD,MAAK,YAAY,CAAC,MAAlB,gBAAAC,IAAqB,WAArB,mBAA8B,YAAW;AAAA;AAAA,EACpD,MAFA,mBAEI;AAER;",
6
+ "names": ["conf", "_a"]
7
+ }
@@ -0,0 +1,22 @@
1
+ const THEME_NAME_SEPARATOR = "_";
2
+ const THEME_CLASSNAME_PREFIX = "t_";
3
+ const webOnlyDefaultStyles = {
4
+ display: "flex",
5
+ flexBasis: "auto",
6
+ boxSizing: "border-box",
7
+ position: "relative",
8
+ minHeight: 0,
9
+ minWidth: 0
10
+ };
11
+ const stackDefaultStyles = {
12
+ alignItems: "stretch",
13
+ flexShrink: 0,
14
+ ...webOnlyDefaultStyles
15
+ };
16
+ export {
17
+ THEME_CLASSNAME_PREFIX,
18
+ THEME_NAME_SEPARATOR,
19
+ stackDefaultStyles,
20
+ webOnlyDefaultStyles
21
+ };
22
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/constants/constants.ts"],
4
+ "sourcesContent": ["export const THEME_NAME_SEPARATOR = '_'\nexport const THEME_CLASSNAME_PREFIX = 't_'\n\nexport const webOnlyDefaultStyles = {\n display: 'flex',\n flexBasis: 'auto',\n boxSizing: 'border-box',\n position: 'relative',\n minHeight: 0,\n minWidth: 0,\n}\n\nexport const stackDefaultStyles = {\n alignItems: 'stretch',\n flexShrink: 0,\n ...webOnlyDefaultStyles,\n}\n"],
5
+ "mappings": "AAAO,MAAM,uBAAuB;AAC7B,MAAM,yBAAyB;AAE/B,MAAM,uBAAuB;AAAA,EAClC,SAAS;AAAA,EACT,WAAW;AAAA,EACX,WAAW;AAAA,EACX,UAAU;AAAA,EACV,WAAW;AAAA,EACX,UAAU;AACZ;AAEO,MAAM,qBAAqB;AAAA,EAChC,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,GAAG;AACL;",
6
+ "names": []
7
+ }
@@ -0,0 +1,13 @@
1
+ const isDevTools = (() => {
2
+ if (process.env.NODE_ENV === "development") {
3
+ try {
4
+ return new Function("try {return this===window;}catch(e){ return false;}")();
5
+ } catch {
6
+ }
7
+ }
8
+ return false;
9
+ })();
10
+ export {
11
+ isDevTools
12
+ };
13
+ //# sourceMappingURL=isDevTools.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/constants/isDevTools.ts"],
4
+ "sourcesContent": ["// for verbose logging outside node/cli\n\nexport const isDevTools = (() => {\n if (process.env.NODE_ENV === 'development') {\n try {\n return new Function('try {return this===window;}catch(e){ return false;}')()\n } catch {\n //\n }\n }\n return false\n})()\n"],
5
+ "mappings": "AAEO,MAAM,cAAc,MAAM;AAC/B,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI;AACF,aAAO,IAAI,SAAS,qDAAqD,EAAE;AAAA,IAC7E,QAAE;AAAA,IAEF;AAAA,EACF;AACA,SAAO;AACT,GAAG;",
6
+ "names": []
7
+ }
@@ -0,0 +1,6 @@
1
+ import { createContext } from "react";
2
+ const ButtonNestingContext = createContext(false);
3
+ export {
4
+ ButtonNestingContext
5
+ };
6
+ //# sourceMappingURL=ButtonNestingContext.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/contexts/ButtonNestingContext.tsx"],
4
+ "sourcesContent": ["import { createContext } from 'react'\n\nexport const ButtonNestingContext = createContext(false)\n"],
5
+ "mappings": "AAAA,SAAS,qBAAqB;AAEvB,MAAM,uBAAuB,cAAc,KAAK;",
6
+ "names": []
7
+ }
@@ -0,0 +1,6 @@
1
+ import { createContext } from "react";
2
+ const FontLanguageContext = createContext(null);
3
+ export {
4
+ FontLanguageContext
5
+ };
6
+ //# sourceMappingURL=FontLanguageContext.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/contexts/FontLanguageContext.tsx"],
4
+ "sourcesContent": ["import { createContext } from 'react'\n\nimport { LanguageContextType } from '../views/FontLanguage.types'\n\nexport const FontLanguageContext = createContext<LanguageContextType | null>(null)\n"],
5
+ "mappings": "AAAA,SAAS,qBAAqB;AAIvB,MAAM,sBAAsB,cAA0C,IAAI;",
6
+ "names": []
7
+ }
@@ -0,0 +1,6 @@
1
+ import { createContext } from "react";
2
+ const TextAncestorContext = createContext(false);
3
+ export {
4
+ TextAncestorContext
5
+ };
6
+ //# sourceMappingURL=TextAncestorContext.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/contexts/TextAncestorContext.tsx"],
4
+ "sourcesContent": ["import React, { createContext } from 'react'\n\nexport const TextAncestorContext = createContext(false)\n"],
5
+ "mappings": "AAAA,SAAgB,qBAAqB;AAE9B,MAAM,sBAAsB,cAAc,KAAK;",
6
+ "names": []
7
+ }