@tamagui/static 2.0.0-rc.4 → 2.0.0-rc.40

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 (185) hide show
  1. package/dist/check-dep-versions.cjs +201 -96
  2. package/dist/checkDeps.cjs +250 -46
  3. package/dist/constants.cjs +32 -30
  4. package/dist/exports.cjs +18 -13
  5. package/dist/extractor/accessSafe.cjs +25 -23
  6. package/dist/extractor/babelParse.cjs +30 -28
  7. package/dist/extractor/buildClassName.cjs +59 -35
  8. package/dist/extractor/bundle.cjs +177 -101
  9. package/dist/extractor/bundleConfig.cjs +554 -167
  10. package/dist/extractor/concatClassName.cjs +41 -29
  11. package/dist/extractor/createEvaluator.cjs +54 -41
  12. package/dist/extractor/createExtractor.cjs +1400 -581
  13. package/dist/extractor/createLogger.cjs +30 -25
  14. package/dist/extractor/detectModuleFormat.cjs +55 -0
  15. package/dist/extractor/ensureImportingConcat.cjs +31 -25
  16. package/dist/extractor/errors.cjs +12 -10
  17. package/dist/extractor/esbuildAliasPlugin.cjs +28 -16
  18. package/dist/extractor/esbuildTsconfigPaths.cjs +60 -36
  19. package/dist/extractor/evaluateAstNode.cjs +104 -59
  20. package/dist/extractor/extractHelpers.cjs +130 -67
  21. package/dist/extractor/extractMediaStyle.cjs +110 -69
  22. package/dist/extractor/extractToClassNames.cjs +337 -229
  23. package/dist/extractor/extractToNative.cjs +248 -154
  24. package/dist/extractor/findTopmostFunction.cjs +22 -13
  25. package/dist/extractor/generatedUid.cjs +39 -28
  26. package/dist/extractor/getPrefixLogs.cjs +12 -10
  27. package/dist/extractor/getPropValueFromAttributes.cjs +52 -34
  28. package/dist/extractor/getSourceModule.cjs +73 -37
  29. package/dist/extractor/getStaticBindingsForScope.cjs +131 -68
  30. package/dist/extractor/getTamaguiConfigPathFromOptionsConfig.cjs +20 -14
  31. package/dist/extractor/hasTopLevelAwait.cjs +62 -0
  32. package/dist/extractor/hoistClassNames.cjs +46 -32
  33. package/dist/extractor/literalToAst.cjs +67 -42
  34. package/dist/extractor/loadFile.cjs +9 -3
  35. package/dist/extractor/loadTamagui.cjs +149 -104
  36. package/dist/extractor/logLines.cjs +27 -19
  37. package/dist/extractor/normalizeTernaries.cjs +66 -44
  38. package/dist/extractor/propsToFontFamilyCache.cjs +15 -11
  39. package/dist/extractor/regenerateConfig.cjs +109 -81
  40. package/dist/extractor/removeUnusedHooks.cjs +73 -41
  41. package/dist/extractor/timer.cjs +23 -14
  42. package/dist/extractor/validHTMLAttributes.cjs +61 -59
  43. package/dist/extractor/watchTamaguiConfig.cjs +35 -23
  44. package/dist/getPragmaOptions.cjs +38 -19
  45. package/dist/helpers/memoize.cjs +24 -16
  46. package/dist/helpers/requireTamaguiCore.cjs +22 -15
  47. package/dist/index.cjs +26 -24
  48. package/dist/registerRequire.cjs +167 -65
  49. package/dist/server.cjs +35 -28
  50. package/dist/types.cjs +7 -5
  51. package/dist/worker.cjs +62 -40
  52. package/package.json +26 -22
  53. package/src/checkDeps.ts +305 -68
  54. package/src/exports.ts +1 -0
  55. package/src/extractor/babelParse.ts +1 -0
  56. package/src/extractor/bundle.ts +140 -37
  57. package/src/extractor/bundleConfig.ts +435 -61
  58. package/src/extractor/createExtractor.ts +283 -48
  59. package/src/extractor/detectModuleFormat.ts +42 -0
  60. package/src/extractor/esbuildTsconfigPaths.ts +6 -1
  61. package/src/extractor/extractToClassNames.ts +15 -9
  62. package/src/extractor/extractToNative.ts +66 -33
  63. package/src/extractor/hasTopLevelAwait.ts +28 -0
  64. package/src/extractor/loadTamagui.ts +2 -2
  65. package/src/getPragmaOptions.ts +6 -1
  66. package/src/registerRequire.ts +88 -8
  67. package/types/checkDeps.d.ts.map +1 -1
  68. package/types/exports.d.ts +1 -0
  69. package/types/exports.d.ts.map +1 -1
  70. package/types/extractor/babelParse.d.ts.map +1 -1
  71. package/types/extractor/bundle.d.ts +83 -1
  72. package/types/extractor/bundle.d.ts.map +1 -1
  73. package/types/extractor/bundleConfig.d.ts +15 -2
  74. package/types/extractor/bundleConfig.d.ts.map +1 -1
  75. package/types/extractor/createExtractor.d.ts.map +1 -1
  76. package/types/extractor/detectModuleFormat.d.ts +5 -0
  77. package/types/extractor/detectModuleFormat.d.ts.map +1 -0
  78. package/types/extractor/esbuildTsconfigPaths.d.ts +8 -0
  79. package/types/extractor/esbuildTsconfigPaths.d.ts.map +1 -1
  80. package/types/extractor/extractToClassNames.d.ts.map +1 -1
  81. package/types/extractor/extractToNative.d.ts.map +1 -1
  82. package/types/extractor/hasTopLevelAwait.d.ts +2 -0
  83. package/types/extractor/hasTopLevelAwait.d.ts.map +1 -0
  84. package/types/getPragmaOptions.d.ts.map +1 -1
  85. package/types/registerRequire.d.ts.map +1 -1
  86. package/dist/check-dep-versions.js +0 -389
  87. package/dist/check-dep-versions.js.map +0 -6
  88. package/dist/checkDeps.js +0 -60
  89. package/dist/checkDeps.js.map +0 -6
  90. package/dist/constants.js +0 -34
  91. package/dist/constants.js.map +0 -6
  92. package/dist/exports.js +0 -34
  93. package/dist/exports.js.map +0 -6
  94. package/dist/extractor/accessSafe.js +0 -47
  95. package/dist/extractor/accessSafe.js.map +0 -6
  96. package/dist/extractor/babelParse.js +0 -59
  97. package/dist/extractor/babelParse.js.map +0 -6
  98. package/dist/extractor/buildClassName.js +0 -72
  99. package/dist/extractor/buildClassName.js.map +0 -6
  100. package/dist/extractor/bundle.js +0 -135
  101. package/dist/extractor/bundle.js.map +0 -6
  102. package/dist/extractor/bundleConfig.js +0 -352
  103. package/dist/extractor/bundleConfig.js.map +0 -6
  104. package/dist/extractor/concatClassName.js +0 -69
  105. package/dist/extractor/concatClassName.js.map +0 -6
  106. package/dist/extractor/createEvaluator.js +0 -66
  107. package/dist/extractor/createEvaluator.js.map +0 -6
  108. package/dist/extractor/createExtractor.js +0 -1215
  109. package/dist/extractor/createExtractor.js.map +0 -6
  110. package/dist/extractor/createLogger.js +0 -32
  111. package/dist/extractor/createLogger.js.map +0 -6
  112. package/dist/extractor/ensureImportingConcat.js +0 -50
  113. package/dist/extractor/ensureImportingConcat.js.map +0 -6
  114. package/dist/extractor/errors.js +0 -22
  115. package/dist/extractor/errors.js.map +0 -6
  116. package/dist/extractor/esbuildAliasPlugin.js +0 -36
  117. package/dist/extractor/esbuildAliasPlugin.js.map +0 -6
  118. package/dist/extractor/esbuildTsconfigPaths.js +0 -79
  119. package/dist/extractor/esbuildTsconfigPaths.js.map +0 -6
  120. package/dist/extractor/evaluateAstNode.js +0 -99
  121. package/dist/extractor/evaluateAstNode.js.map +0 -6
  122. package/dist/extractor/extractHelpers.js +0 -108
  123. package/dist/extractor/extractHelpers.js.map +0 -6
  124. package/dist/extractor/extractMediaStyle.js +0 -123
  125. package/dist/extractor/extractMediaStyle.js.map +0 -6
  126. package/dist/extractor/extractToClassNames.js +0 -351
  127. package/dist/extractor/extractToClassNames.js.map +0 -6
  128. package/dist/extractor/extractToNative.js +0 -286
  129. package/dist/extractor/extractToNative.js.map +0 -6
  130. package/dist/extractor/findTopmostFunction.js +0 -32
  131. package/dist/extractor/findTopmostFunction.js.map +0 -6
  132. package/dist/extractor/generatedUid.js +0 -42
  133. package/dist/extractor/generatedUid.js.map +0 -6
  134. package/dist/extractor/getPrefixLogs.js +0 -24
  135. package/dist/extractor/getPrefixLogs.js.map +0 -6
  136. package/dist/extractor/getPropValueFromAttributes.js +0 -65
  137. package/dist/extractor/getPropValueFromAttributes.js.map +0 -6
  138. package/dist/extractor/getSourceModule.js +0 -62
  139. package/dist/extractor/getSourceModule.js.map +0 -6
  140. package/dist/extractor/getStaticBindingsForScope.js +0 -145
  141. package/dist/extractor/getStaticBindingsForScope.js.map +0 -6
  142. package/dist/extractor/getTamaguiConfigPathFromOptionsConfig.js +0 -32
  143. package/dist/extractor/getTamaguiConfigPathFromOptionsConfig.js.map +0 -6
  144. package/dist/extractor/hoistClassNames.js +0 -63
  145. package/dist/extractor/hoistClassNames.js.map +0 -6
  146. package/dist/extractor/literalToAst.js +0 -90
  147. package/dist/extractor/literalToAst.js.map +0 -6
  148. package/dist/extractor/loadFile.js +0 -14
  149. package/dist/extractor/loadFile.js.map +0 -6
  150. package/dist/extractor/loadTamagui.js +0 -306
  151. package/dist/extractor/loadTamagui.js.map +0 -6
  152. package/dist/extractor/logLines.js +0 -30
  153. package/dist/extractor/logLines.js.map +0 -6
  154. package/dist/extractor/normalizeTernaries.js +0 -61
  155. package/dist/extractor/normalizeTernaries.js.map +0 -6
  156. package/dist/extractor/propsToFontFamilyCache.js +0 -33
  157. package/dist/extractor/propsToFontFamilyCache.js.map +0 -6
  158. package/dist/extractor/regenerateConfig.js +0 -123
  159. package/dist/extractor/regenerateConfig.js.map +0 -6
  160. package/dist/extractor/removeUnusedHooks.js +0 -72
  161. package/dist/extractor/removeUnusedHooks.js.map +0 -6
  162. package/dist/extractor/timer.js +0 -38
  163. package/dist/extractor/timer.js.map +0 -6
  164. package/dist/extractor/validHTMLAttributes.js +0 -72
  165. package/dist/extractor/validHTMLAttributes.js.map +0 -6
  166. package/dist/extractor/watchTamaguiConfig.js +0 -57
  167. package/dist/extractor/watchTamaguiConfig.js.map +0 -6
  168. package/dist/getPragmaOptions.js +0 -46
  169. package/dist/getPragmaOptions.js.map +0 -6
  170. package/dist/helpers/memoize.js +0 -33
  171. package/dist/helpers/memoize.js.map +0 -6
  172. package/dist/helpers/requireTamaguiCore.js +0 -30
  173. package/dist/helpers/requireTamaguiCore.js.map +0 -6
  174. package/dist/index.js +0 -30
  175. package/dist/index.js.map +0 -6
  176. package/dist/registerRequire.js +0 -100
  177. package/dist/registerRequire.js.map +0 -6
  178. package/dist/server.js +0 -58
  179. package/dist/server.js.map +0 -6
  180. package/dist/setup.js +0 -1
  181. package/dist/setup.js.map +0 -6
  182. package/dist/types.js +0 -14
  183. package/dist/types.js.map +0 -6
  184. package/dist/worker.js +0 -72
  185. package/dist/worker.js.map +0 -6
@@ -2,33 +2,35 @@ var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
7
  var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: !0
11
- });
12
- },
13
- __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
15
16
  get: () => from[key],
16
17
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
18
  });
18
- return to;
19
- };
19
+ }
20
+ return to;
21
+ };
20
22
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: !0
28
- }) : target, mod)),
29
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
- value: !0
31
- }), mod);
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
+ value: mod,
29
+ enumerable: true
30
+ }) : target, mod));
31
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: true
33
+ }), mod);
32
34
  var loadTamagui_exports = {};
33
35
  __export(loadTamagui_exports, {
34
36
  esbuildWatchFiles: () => esbuildWatchFiles,
@@ -41,19 +43,18 @@ __export(loadTamagui_exports, {
41
43
  resolveWebOrNativeSpecificEntry: () => resolveWebOrNativeSpecificEntry
42
44
  });
43
45
  module.exports = __toCommonJS(loadTamagui_exports);
44
- var import_node_path = require("node:path"),
45
- import_cli_color = require("@tamagui/cli-color"),
46
- import_esbuild = __toESM(require("esbuild")),
47
- esbuildWasm = __toESM(require("esbuild-wasm")),
48
- fsExtra = __toESM(require("fs-extra")),
49
- import_constants = require("../constants.cjs"),
50
- import_requireTamaguiCore = require("../helpers/requireTamaguiCore.cjs"),
51
- import_registerRequire = require("../registerRequire.cjs"),
52
- import_bundleConfig = require("./bundleConfig.cjs"),
53
- import_getTamaguiConfigPathFromOptionsConfig = require("./getTamaguiConfigPathFromOptionsConfig.cjs"),
54
- import_regenerateConfig = require("./regenerateConfig.cjs");
46
+ var import_node_path = require("node:path");
47
+ var import_cli_color = require("@tamagui/cli-color");
48
+ var import_esbuild = __toESM(require("esbuild"));
49
+ var esbuildWasm = __toESM(require("esbuild-wasm"));
50
+ var fsExtra = __toESM(require("fs-extra"));
51
+ var import_constants = require("../constants.cjs");
52
+ var import_requireTamaguiCore = require("../helpers/requireTamaguiCore.cjs");
53
+ var import_registerRequire = require("../registerRequire.cjs");
54
+ var import_bundleConfig = require("./bundleConfig.cjs");
55
+ var import_getTamaguiConfigPathFromOptionsConfig = require("./getTamaguiConfigPathFromOptionsConfig.cjs");
56
+ var import_regenerateConfig = require("./regenerateConfig.cjs");
55
57
  const getFilledOptions = propsIn => ({
56
- // defaults
57
58
  platform: "web",
58
59
  config: "tamagui.config.ts",
59
60
  components: ["tamagui"],
@@ -62,14 +63,20 @@ const getFilledOptions = propsIn => ({
62
63
  let isLoadingPromise;
63
64
  async function loadTamagui(propsIn) {
64
65
  if (isLoadingPromise) return await isLoadingPromise;
65
- let resolvePromise, rejectPromise;
66
+ let resolvePromise;
67
+ let rejectPromise;
66
68
  isLoadingPromise = new Promise((res, rej) => {
67
- resolvePromise = res, rejectPromise = rej;
69
+ resolvePromise = res;
70
+ rejectPromise = rej;
68
71
  });
69
72
  try {
70
- const props = getFilledOptions(propsIn),
71
- bundleInfo = await (0, import_bundleConfig.getBundledConfig)(props);
72
- if (!bundleInfo) return console.warn("No bundled config generated, maybe an error in bundling. Set DEBUG=tamagui and re-run to get logs."), resolvePromise(null), null;
73
+ const props = getFilledOptions(propsIn);
74
+ const bundleInfo = await (0, import_bundleConfig.getBundledConfig)(props);
75
+ if (!bundleInfo) {
76
+ console.warn(`No bundled config generated, maybe an error in bundling. Set DEBUG=tamagui and re-run to get logs.`);
77
+ resolvePromise(null);
78
+ return null;
79
+ }
73
80
  await generateThemesAndLog(props);
74
81
  const maybeTamaguiConfig = bundleInfo.tamaguiConfig;
75
82
  if (maybeTamaguiConfig && !maybeTamaguiConfig.parsed) {
@@ -78,53 +85,71 @@ async function loadTamagui(propsIn) {
78
85
  } = (0, import_requireTamaguiCore.requireTamaguiCore)(props.platform || "web");
79
86
  bundleInfo.tamaguiConfig = createTamagui(bundleInfo.tamaguiConfig);
80
87
  }
81
- return (0, import_bundleConfig.hasBundledConfigChanged)() ? (await (0, import_regenerateConfig.regenerateConfig)(props, bundleInfo), resolvePromise(bundleInfo), bundleInfo) : (resolvePromise(bundleInfo), bundleInfo);
88
+ if (!(0, import_bundleConfig.hasBundledConfigChanged)()) {
89
+ resolvePromise(bundleInfo);
90
+ return bundleInfo;
91
+ }
92
+ await (0, import_regenerateConfig.regenerateConfig)(props, bundleInfo);
93
+ resolvePromise(bundleInfo);
94
+ return bundleInfo;
82
95
  } catch (err) {
83
- throw rejectPromise(), err;
96
+ rejectPromise();
97
+ throw err;
84
98
  } finally {
85
99
  isLoadingPromise = null;
86
100
  }
87
101
  }
88
- let waiting = !1;
89
- const generateThemesAndLog = async (options, force = !1) => {
90
- if (!waiting && options.themeBuilder) try {
91
- if (waiting = !0, await new Promise(res => setTimeout(res, 30)), (await (0, import_regenerateConfig.generateTamaguiThemes)(options, force)) && ((0, import_cli_color.colorLog)(import_cli_color.Color.FgYellow, ` \u27A1 [tamagui] generated themes: ${(0, import_node_path.relative)(process.cwd(), options.themeBuilder.output)}`), options.outputCSS)) {
102
+ let waiting = false;
103
+ const generateThemesAndLog = async (options, force = false) => {
104
+ if (waiting) return;
105
+ if (!options.themeBuilder) return;
106
+ try {
107
+ waiting = true;
108
+ await new Promise(res => setTimeout(res, 30));
109
+ if (await (0, import_regenerateConfig.generateTamaguiThemes)(options, force)) {
110
+ (0, import_cli_color.colorLog)(import_cli_color.Color.FgYellow, ` \u27A1 [tamagui] generated themes: ${(0, import_node_path.relative)(process.cwd(), options.themeBuilder.output)}`);
111
+ if (options.outputCSS) {
92
112
  const loadedConfig = (0, import_bundleConfig.getLoadedConfig)();
93
- loadedConfig && (await (0, import_bundleConfig.writeTamaguiCSS)(options.outputCSS, loadedConfig));
113
+ if (loadedConfig) await (0, import_bundleConfig.writeTamaguiCSS)(options.outputCSS, loadedConfig);
94
114
  }
95
- } finally {
96
- waiting = !1;
97
115
  }
98
- },
99
- last = {},
100
- lastVersion = {};
101
- let esbuildWasmInitialized = !1;
116
+ } finally {
117
+ waiting = false;
118
+ }
119
+ };
120
+ const last = {};
121
+ const lastVersion = {};
122
+ let esbuildWasmInitialized = false;
102
123
  async function loadTamaguiBuildConfigAsync(tamaguiOptions) {
103
- const buildFilePath = tamaguiOptions?.buildFile ?? "./tamagui.build.ts",
104
- absolutePath = buildFilePath[0] === "." ? (0, import_node_path.join)(process.cwd(), buildFilePath) : buildFilePath;
124
+ const buildFilePath = tamaguiOptions?.buildFile ?? "./tamagui.build.ts";
125
+ const absolutePath = buildFilePath[0] === "." ? (0, import_node_path.join)(process.cwd(), buildFilePath) : buildFilePath;
105
126
  if (fsExtra.existsSync(absolutePath)) try {
106
127
  const source = await fsExtra.readFile(absolutePath, "utf-8");
107
- esbuildWasmInitialized || (await esbuildWasm.initialize({}), esbuildWasmInitialized = !0);
128
+ if (!esbuildWasmInitialized) {
129
+ await esbuildWasm.initialize({});
130
+ esbuildWasmInitialized = true;
131
+ }
108
132
  const result = await esbuildWasm.transform(source, {
109
- loader: "ts",
110
- format: "cjs",
111
- target: "node18",
112
- sourcefile: absolutePath
113
- }),
114
- module2 = {
115
- exports: {}
116
- };
133
+ loader: "ts",
134
+ format: "cjs",
135
+ target: "node18",
136
+ sourcefile: absolutePath
137
+ });
138
+ const module2 = {
139
+ exports: {}
140
+ };
117
141
  new Function("module", "exports", "require", "process", result.code)(module2, module2.exports, require, process);
118
142
  const out = module2.exports.default || module2.exports;
119
- if (!out || typeof out != "object") throw new Error(`No default export found in ${buildFilePath}: ${out}`);
143
+ if (!out || typeof out !== "object") throw new Error(`No default export found in ${buildFilePath}: ${out}`);
120
144
  tamaguiOptions = {
121
145
  ...tamaguiOptions,
122
146
  ...out
123
147
  };
124
148
  } catch (err) {
125
- throw console.error(`[tamagui] Error loading ${buildFilePath}:`, err), err;
149
+ console.error(`[tamagui] Error loading ${buildFilePath}:`, err);
150
+ throw err;
126
151
  }
127
- if (!tamaguiOptions) throw new Error("No tamagui build options found either via input props or at tamagui.build.ts");
152
+ if (!tamaguiOptions) throw new Error(`No tamagui build options found either via input props or at tamagui.build.ts`);
128
153
  return {
129
154
  config: "tamagui.config.ts",
130
155
  components: ["tamagui", "@tamagui/core"],
@@ -146,7 +171,7 @@ function loadTamaguiBuildConfigSync(tamaguiOptions) {
146
171
  registered.unregister();
147
172
  }
148
173
  }
149
- if (!tamaguiOptions) throw new Error("No tamagui build options found either via input props or at tamagui.build.ts");
174
+ if (!tamaguiOptions) throw new Error(`No tamagui build options found either via input props or at tamagui.build.ts`);
150
175
  return {
151
176
  config: "tamagui.config.ts",
152
177
  components: ["tamagui", "@tamagui/core"],
@@ -159,25 +184,29 @@ function loadTamaguiSync({
159
184
  ...propsIn
160
185
  }) {
161
186
  const key = JSON.stringify(propsIn);
162
- if (last[key] && !(0, import_bundleConfig.hasBundledConfigChanged)() && (!lastVersion[key] || lastVersion[key] === cacheKey)) return last[key];
187
+ if (last[key] && !(0, import_bundleConfig.hasBundledConfigChanged)()) {
188
+ if (!lastVersion[key] || lastVersion[key] === cacheKey) return last[key];
189
+ }
163
190
  lastVersion[key] = cacheKey || "";
164
191
  const props = getFilledOptions(propsIn);
165
- process.env.IS_STATIC = "is_static", process.env.TAMAGUI_IS_SERVER = "true";
192
+ process.env.IS_STATIC = "is_static";
193
+ process.env.TAMAGUI_IS_SERVER = "true";
166
194
  const {
167
195
  unregister
168
196
  } = (0, import_registerRequire.registerRequire)(props.platform || "web", {
169
197
  proxyWormImports: !!forceExports
170
198
  });
171
199
  try {
172
- const devValueOG = globalThis.__DEV__;
173
- globalThis.__DEV__ = process.env.NODE_ENV === "development";
200
+ const devValueOG = globalThis["__DEV__"];
201
+ globalThis["__DEV__"] = process.env.NODE_ENV === "development";
174
202
  try {
175
203
  let tamaguiConfig = null;
176
204
  if (propsIn.config) {
177
- const configPath = (0, import_getTamaguiConfigPathFromOptionsConfig.getTamaguiConfigPathFromOptionsConfig)(propsIn.config),
178
- exp = require(configPath);
179
- if (!exp || exp._isProxyWorm) throw new Error("Got a empty / proxied config!");
180
- if (tamaguiConfig = exp.default || exp.config || exp, !tamaguiConfig || !tamaguiConfig.parsed) {
205
+ const configPath = (0, import_getTamaguiConfigPathFromOptionsConfig.getTamaguiConfigPathFromOptionsConfig)(propsIn.config);
206
+ const exp = require(configPath);
207
+ if (!exp || exp._isProxyWorm) throw new Error(`Got a empty / proxied config!`);
208
+ tamaguiConfig = exp["default"] || exp["config"] || exp;
209
+ if (!tamaguiConfig || !tamaguiConfig.parsed) {
181
210
  const confPath = require.resolve(configPath);
182
211
  throw new Error(`Can't find valid config in ${confPath}:
183
212
 
@@ -190,9 +219,11 @@ function loadTamaguiSync({
190
219
  createTamagui(tamaguiConfig);
191
220
  }
192
221
  }
193
- const components = (0, import_bundleConfig.loadComponents)(props, forceExports);
194
- if (!components) throw new Error("No components loaded");
195
- process.env.DEBUG === "tamagui" && console.info("components", components), process.env.IS_STATIC = void 0, globalThis.__DEV__ = devValueOG;
222
+ const components = (0, import_bundleConfig.loadComponentsSync)(props, forceExports);
223
+ if (!components) throw new Error(`No components loaded`);
224
+ if (process.env.DEBUG === "tamagui") console.info(`components`, components);
225
+ process.env.IS_STATIC = void 0;
226
+ globalThis["__DEV__"] = devValueOG;
196
227
  const info = {
197
228
  components,
198
229
  tamaguiConfig,
@@ -202,18 +233,26 @@ function loadTamaguiSync({
202
233
  const {
203
234
  outputCSS
204
235
  } = props;
205
- outputCSS && (0, import_bundleConfig.writeTamaguiCSS)(outputCSS, tamaguiConfig), (0, import_regenerateConfig.regenerateConfigSync)(props, info);
236
+ if (outputCSS) (0, import_bundleConfig.writeTamaguiCSS)(outputCSS, tamaguiConfig);
237
+ (0, import_regenerateConfig.regenerateConfigSync)(props, info);
206
238
  }
207
- return last[key] = {
239
+ last[key] = {
208
240
  ...info,
209
- cached: !0
210
- }, info;
241
+ cached: true
242
+ };
243
+ return info;
211
244
  } catch (err) {
212
- return err instanceof Error ? !import_constants.SHOULD_DEBUG && !forceExports ? (console.warn("Error loading tamagui.config.ts (set DEBUG=tamagui to see full stack), running tamagui without custom config"), console.info(`
245
+ if (err instanceof Error) {
246
+ if (!import_constants.SHOULD_DEBUG && !forceExports) {
247
+ console.warn(`Error loading tamagui.config.ts (set DEBUG=tamagui to see full stack), running tamagui without custom config`);
248
+ console.info(`
213
249
 
214
250
  ${err.message}
215
251
 
216
- `)) : import_constants.SHOULD_DEBUG && console.error(err) : console.error("Error loading tamagui.config.ts", err), {
252
+ `);
253
+ } else if (import_constants.SHOULD_DEBUG) console.error(err);
254
+ } else console.error(`Error loading tamagui.config.ts`, err);
255
+ return {
217
256
  components: [],
218
257
  tamaguiConfig: null,
219
258
  nameToPaths: {}
@@ -234,7 +273,7 @@ async function getOptions({
234
273
  let pkgJson = {};
235
274
  try {
236
275
  pkgJson = await fsExtra.readJSON((0, import_node_path.join)(root, "package.json"));
237
- } catch {}
276
+ } catch (err) {}
238
277
  return {
239
278
  mode: process.env.NODE_ENV === "production" ? "production" : "development",
240
279
  root,
@@ -257,33 +296,37 @@ async function getOptions({
257
296
  };
258
297
  }
259
298
  function resolveWebOrNativeSpecificEntry(entry) {
260
- const workspaceRoot = (0, import_node_path.resolve)(),
261
- resolved = require.resolve(entry, {
262
- paths: [workspaceRoot]
263
- }),
264
- ext = (0, import_node_path.extname)(resolved),
265
- fileName = (0, import_node_path.basename)(resolved).replace(ext, ""),
266
- specificFile = (0, import_node_path.join)((0, import_node_path.dirname)(resolved), fileName + "." + "web" + ext);
267
- return fsExtra.existsSync(specificFile) ? specificFile : entry;
299
+ const workspaceRoot = (0, import_node_path.resolve)();
300
+ const resolved = require.resolve(entry, {
301
+ paths: [workspaceRoot]
302
+ });
303
+ const ext = (0, import_node_path.extname)(resolved);
304
+ const fileName = (0, import_node_path.basename)(resolved).replace(ext, "");
305
+ const specificFile = (0, import_node_path.join)((0, import_node_path.dirname)(resolved), fileName + ".web" + ext);
306
+ if (fsExtra.existsSync(specificFile)) return specificFile;
307
+ return entry;
268
308
  }
269
309
  const defaultPaths = ["tamagui.config.ts", (0, import_node_path.join)("src", "tamagui.config.ts")];
270
- let hasWarnedOnce = !1;
310
+ let hasWarnedOnce = false;
271
311
  async function getDefaultTamaguiConfigPath(root, configPath) {
272
312
  const searchPaths = [...new Set([configPath, ...defaultPaths].filter(Boolean).map(p => (0, import_node_path.join)(root, p)))];
273
313
  for (const path of searchPaths) if (await fsExtra.pathExists(path)) return path;
274
- hasWarnedOnce || (hasWarnedOnce = !0, console.warn(`Warning: couldn't find tamagui.config.ts in the following paths given configuration "${configPath}":
314
+ if (!hasWarnedOnce) {
315
+ hasWarnedOnce = true;
316
+ console.warn(`Warning: couldn't find tamagui.config.ts in the following paths given configuration "${configPath}":
275
317
  ${searchPaths.join(`
276
318
  `)}
277
- `));
319
+ `);
320
+ }
278
321
  }
279
322
  async function esbuildWatchFiles(entry, onChanged) {
280
- let hasRunOnce = !1;
323
+ let hasRunOnce = false;
281
324
  const context = await import_esbuild.default.context({
282
- bundle: !0,
325
+ bundle: true,
283
326
  entryPoints: [entry],
284
327
  resolveExtensions: [".ts", ".tsx", ".js", ".mjs"],
285
328
  logLevel: "silent",
286
- write: !1,
329
+ write: false,
287
330
  alias: {
288
331
  "@react-native/normalize-color": "@tamagui/proxy-worm",
289
332
  "react-native-web": "@tamagui/react-native-web-lite",
@@ -300,7 +343,7 @@ async function esbuildWatchFiles(entry, onChanged) {
300
343
  // },
301
344
  // },
302
345
  {
303
- name: "on-rebuild",
346
+ name: `on-rebuild`,
304
347
  setup({
305
348
  onEnd,
306
349
  onResolve
@@ -309,14 +352,16 @@ async function esbuildWatchFiles(entry, onChanged) {
309
352
  filter: /^[^./]|^\.[^./]|^\.\.[^/]/
310
353
  }, args => ({
311
354
  path: args.path,
312
- external: !0
313
- })), onEnd(() => {
314
- hasRunOnce ? onChanged() : hasRunOnce = !0;
355
+ external: true
356
+ }));
357
+ onEnd(() => {
358
+ if (!hasRunOnce) hasRunOnce = true;else onChanged();
315
359
  });
316
360
  }
317
361
  }]
318
362
  });
319
- return context.watch(), () => {
363
+ context.watch();
364
+ return () => {
320
365
  context.dispose();
321
366
  };
322
367
  }
@@ -3,33 +3,41 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
5
  var __export = (target, all) => {
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: !0
9
- });
10
- },
11
- __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
14
  get: () => from[key],
14
15
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
16
  });
16
- return to;
17
- };
17
+ }
18
+ return to;
19
+ };
18
20
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
21
+ value: true
20
22
  }), mod);
21
23
  var logLines_exports = {};
22
24
  __export(logLines_exports, {
23
25
  logLines: () => logLines
24
26
  });
25
27
  module.exports = __toCommonJS(logLines_exports);
26
- const prefix = " ",
27
- logLines = (str, singleLine = !1) => {
28
- if (singleLine) return prefix + str.split(" ").join(`
28
+ const prefix = " ";
29
+ const logLines = (str, singleLine = false) => {
30
+ if (singleLine) {
31
+ return prefix + str.split(" ").join(`
29
32
  ${prefix}`);
30
- const lines = [""],
31
- items = str.split(" ");
32
- for (const item of items) item.length + lines[lines.length - 1].length > 85 && lines.push(""), lines[lines.length - 1] += item + " ";
33
- return lines.map((line, i) => prefix + (i == 0 ? "" : " ") + line.trim()).join(`
34
- `);
35
- };
33
+ }
34
+ const lines = [""];
35
+ const items = str.split(" ");
36
+ for (const item of items) {
37
+ if (item.length + lines[lines.length - 1].length > 85) {
38
+ lines.push("");
39
+ }
40
+ lines[lines.length - 1] += item + " ";
41
+ }
42
+ return lines.map((line, i) => prefix + (i == 0 ? "" : " ") + line.trim()).join("\n");
43
+ };
@@ -2,45 +2,50 @@ var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
7
  var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: !0
11
- });
12
- },
13
- __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
15
16
  get: () => from[key],
16
17
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
18
  });
18
- return to;
19
- };
19
+ }
20
+ return to;
21
+ };
20
22
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: !0
28
- }) : target, mod)),
29
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
- value: !0
31
- }), mod);
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
+ value: mod,
29
+ enumerable: true
30
+ }) : target, mod));
31
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: true
33
+ }), mod);
32
34
  var normalizeTernaries_exports = {};
33
35
  __export(normalizeTernaries_exports, {
34
36
  normalizeTernaries: () => normalizeTernaries
35
37
  });
36
38
  module.exports = __toCommonJS(normalizeTernaries_exports);
37
- var import_generator = __toESM(require("@babel/generator")),
38
- t = __toESM(require("@babel/types")),
39
- import_web = require("@tamagui/web"),
40
- import_invariant = __toESM(require("invariant")),
41
- import_propsToFontFamilyCache = require("./propsToFontFamilyCache.cjs");
39
+ var import_generator = __toESM(require("@babel/generator"));
40
+ var t = __toESM(require("@babel/types"));
41
+ var import_web = require("@tamagui/web");
42
+ var import_invariant = __toESM(require("invariant"));
43
+ var import_propsToFontFamilyCache = require("./propsToFontFamilyCache.cjs");
42
44
  function normalizeTernaries(ternaries) {
43
- if ((0, import_invariant.default)(Array.isArray(ternaries), "extractStaticTernaries expects param 1 to be an array of ternaries"), ternaries.length === 0) return [];
45
+ (0, import_invariant.default)(Array.isArray(ternaries), "extractStaticTernaries expects param 1 to be an array of ternaries");
46
+ if (ternaries.length === 0) {
47
+ return [];
48
+ }
44
49
  const ternariesByKey = {};
45
50
  for (let idx = -1, len = ternaries.length; ++idx < len;) {
46
51
  const {
@@ -51,23 +56,40 @@ function normalizeTernaries(ternaries) {
51
56
  ...rest
52
57
  } = ternaries[idx];
53
58
  let ternaryTest = test;
54
- t.isExpressionStatement(test) && (ternaryTest = test.expression);
55
- let shouldSwap = !1;
56
- t.isUnaryExpression(test) && test.operator === "!" ? (ternaryTest = test.argument, shouldSwap = !0) : t.isBinaryExpression(test) && (test.operator === "!==" || test.operator === "!=") && (ternaryTest = t.binaryExpression(test.operator.replace("!", "="), test.left, test.right), shouldSwap = !0);
59
+ if (t.isExpressionStatement(test)) {
60
+ ternaryTest = test.expression;
61
+ }
62
+ let shouldSwap = false;
63
+ if (t.isUnaryExpression(test) && test.operator === "!") {
64
+ ternaryTest = test.argument;
65
+ shouldSwap = true;
66
+ } else if (t.isBinaryExpression(test)) {
67
+ if (test.operator === "!==" || test.operator === "!=") {
68
+ ternaryTest = t.binaryExpression(test.operator.replace("!", "="), test.left, test.right);
69
+ shouldSwap = true;
70
+ }
71
+ }
57
72
  const key = (0, import_generator.default)(ternaryTest).code;
58
- ternariesByKey[key] || (ternariesByKey[key] = {
59
- ...rest,
60
- alternate: {},
61
- consequent: {},
62
- test: ternaryTest,
63
- remove
64
- });
65
- const altStyle = (shouldSwap ? consequent : alternate) ?? {},
66
- consStyle = (shouldSwap ? alternate : consequent) ?? {},
67
- nextAlt = ternariesByKey[key].alternate;
68
- ternariesByKey[key].alternate = (0, import_web.mergeProps)(altStyle, nextAlt), (0, import_propsToFontFamilyCache.forwardFontFamilyName)(altStyle, ternariesByKey[key].alternate);
73
+ if (!ternariesByKey[key]) {
74
+ ternariesByKey[key] = {
75
+ ...rest,
76
+ alternate: {},
77
+ consequent: {},
78
+ test: ternaryTest,
79
+ remove
80
+ };
81
+ }
82
+ const altStyle = (shouldSwap ? consequent : alternate) ?? {};
83
+ const consStyle = (shouldSwap ? alternate : consequent) ?? {};
84
+ const nextAlt = ternariesByKey[key].alternate;
85
+ ternariesByKey[key].alternate = (0, import_web.mergeProps)(altStyle, nextAlt);
86
+ (0, import_propsToFontFamilyCache.forwardFontFamilyName)(altStyle, ternariesByKey[key].alternate);
69
87
  const nextCons = ternariesByKey[key].consequent;
70
- ternariesByKey[key].consequent = (0, import_web.mergeProps)(consStyle, nextCons), (0, import_propsToFontFamilyCache.forwardFontFamilyName)(consStyle, ternariesByKey[key].consequent);
88
+ ternariesByKey[key].consequent = (0, import_web.mergeProps)(consStyle, nextCons);
89
+ (0, import_propsToFontFamilyCache.forwardFontFamilyName)(consStyle, ternariesByKey[key].consequent);
71
90
  }
72
- return Object.keys(ternariesByKey).map(key => ternariesByKey[key]);
91
+ const ternaryExpression = Object.keys(ternariesByKey).map(key => {
92
+ return ternariesByKey[key];
93
+ });
94
+ return ternaryExpression;
73
95
  }
@@ -3,20 +3,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
5
  var __export = (target, all) => {
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: !0
9
- });
10
- },
11
- __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
14
  get: () => from[key],
14
15
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
16
  });
16
- return to;
17
- };
17
+ }
18
+ return to;
19
+ };
18
20
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
21
+ value: true
20
22
  }), mod);
21
23
  var propsToFontFamilyCache_exports = {};
22
24
  __export(propsToFontFamilyCache_exports, {
@@ -34,5 +36,7 @@ function getFontFamilyNameFromProps(props) {
34
36
  }
35
37
  function forwardFontFamilyName(prev, next, fallback) {
36
38
  const ff = getFontFamilyNameFromProps(prev) || fallback;
37
- ff && setPropsToFontFamily(next, ff);
39
+ if (ff) {
40
+ setPropsToFontFamily(next, ff);
41
+ }
38
42
  }