@tamagui/static 1.74.3 → 1.74.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. package/dist/cjs/require.js +89 -0
  2. package/dist/cjs/require.js.map +6 -0
  3. package/dist/cjs/require.native.js +90 -0
  4. package/dist/cjs/require.native.js.map +6 -0
  5. package/dist/esm/constants.native.js +10 -0
  6. package/dist/esm/constants.native.js.map +6 -0
  7. package/dist/esm/extractor/accessSafe.native.js +23 -0
  8. package/dist/esm/extractor/accessSafe.native.js.map +6 -0
  9. package/dist/esm/extractor/babelParse.native.js +35 -0
  10. package/dist/esm/extractor/babelParse.native.js.map +6 -0
  11. package/dist/esm/extractor/buildClassName.native.js +48 -0
  12. package/dist/esm/extractor/buildClassName.native.js.map +6 -0
  13. package/dist/esm/extractor/bundle.native.js +93 -0
  14. package/dist/esm/extractor/bundle.native.js.map +6 -0
  15. package/dist/esm/extractor/bundleConfig.native.js +301 -0
  16. package/dist/esm/extractor/bundleConfig.native.js.map +6 -0
  17. package/dist/esm/extractor/createEvaluator.native.js +35 -0
  18. package/dist/esm/extractor/createEvaluator.native.js.map +6 -0
  19. package/dist/esm/extractor/createExtractor.native.js +1095 -0
  20. package/dist/esm/extractor/createExtractor.native.js.map +6 -0
  21. package/dist/esm/extractor/ensureImportingConcat.native.js +26 -0
  22. package/dist/esm/extractor/ensureImportingConcat.native.js.map +6 -0
  23. package/dist/esm/extractor/esbuildAliasPlugin.native.js +20 -0
  24. package/dist/esm/extractor/esbuildAliasPlugin.native.js.map +6 -0
  25. package/dist/esm/extractor/evaluateAstNode.native.js +75 -0
  26. package/dist/esm/extractor/evaluateAstNode.native.js.map +6 -0
  27. package/dist/esm/extractor/extractHelpers.native.js +93 -0
  28. package/dist/esm/extractor/extractHelpers.native.js.map +6 -0
  29. package/dist/esm/extractor/extractMediaStyle.native.js +100 -0
  30. package/dist/esm/extractor/extractMediaStyle.native.js.map +6 -0
  31. package/dist/esm/extractor/extractToClassNames.native.js +290 -0
  32. package/dist/esm/extractor/extractToClassNames.native.js.map +6 -0
  33. package/dist/esm/extractor/findTopmostFunction.native.js +16 -0
  34. package/dist/esm/extractor/findTopmostFunction.native.js.map +6 -0
  35. package/dist/esm/extractor/generateTamaguiStudioConfig.native.js +93 -0
  36. package/dist/esm/extractor/generateTamaguiStudioConfig.native.js.map +6 -0
  37. package/dist/esm/extractor/generatedUid.native.js +18 -0
  38. package/dist/esm/extractor/generatedUid.native.js.map +6 -0
  39. package/dist/esm/extractor/getPrefixLogs.native.js +7 -0
  40. package/dist/esm/extractor/getPrefixLogs.native.js.map +6 -0
  41. package/dist/esm/extractor/getPropValueFromAttributes.native.js +43 -0
  42. package/dist/esm/extractor/getPropValueFromAttributes.native.js.map +6 -0
  43. package/dist/esm/extractor/getSourceModule.native.js +42 -0
  44. package/dist/esm/extractor/getSourceModule.native.js.map +6 -0
  45. package/dist/esm/extractor/getStaticBindingsForScope.native.js +127 -0
  46. package/dist/esm/extractor/getStaticBindingsForScope.native.js.map +6 -0
  47. package/dist/esm/extractor/getTamaguiConfigPathFromOptionsConfig.native.js +8 -0
  48. package/dist/esm/extractor/getTamaguiConfigPathFromOptionsConfig.native.js.map +6 -0
  49. package/dist/esm/extractor/hoistClassNames.native.js +37 -0
  50. package/dist/esm/extractor/hoistClassNames.native.js.map +6 -0
  51. package/dist/esm/extractor/literalToAst.native.js +66 -0
  52. package/dist/esm/extractor/literalToAst.native.js.map +6 -0
  53. package/dist/esm/extractor/loadFile.native.js +14 -0
  54. package/dist/esm/extractor/loadFile.native.js.map +6 -0
  55. package/dist/esm/extractor/loadTamagui.native.js +248 -0
  56. package/dist/esm/extractor/loadTamagui.native.js.map +6 -0
  57. package/dist/esm/extractor/logLines.native.js +14 -0
  58. package/dist/esm/extractor/logLines.native.js.map +6 -0
  59. package/dist/esm/extractor/normalizeTernaries.native.js +37 -0
  60. package/dist/esm/extractor/normalizeTernaries.native.js.map +6 -0
  61. package/dist/esm/extractor/propsToFontFamilyCache.native.js +18 -0
  62. package/dist/esm/extractor/propsToFontFamilyCache.native.js.map +6 -0
  63. package/dist/esm/extractor/removeUnusedHooks.native.js +51 -0
  64. package/dist/esm/extractor/removeUnusedHooks.native.js.map +6 -0
  65. package/dist/esm/extractor/timer.native.js +22 -0
  66. package/dist/esm/extractor/timer.native.js.map +6 -0
  67. package/dist/esm/extractor/validHTMLAttributes.native.js +52 -0
  68. package/dist/esm/extractor/validHTMLAttributes.native.js.map +6 -0
  69. package/dist/esm/getPragmaOptions.native.js +22 -0
  70. package/dist/esm/getPragmaOptions.native.js.map +6 -0
  71. package/dist/esm/helpers/memoize.native.js +17 -0
  72. package/dist/esm/helpers/memoize.native.js.map +6 -0
  73. package/dist/esm/helpers/requireTamaguiCore.native.js +9 -0
  74. package/dist/esm/helpers/requireTamaguiCore.native.js.map +6 -0
  75. package/dist/esm/index.native.js +3 -0
  76. package/dist/esm/index.native.js.map +6 -0
  77. package/dist/esm/registerRequire.native.js +83 -0
  78. package/dist/esm/registerRequire.native.js.map +6 -0
  79. package/dist/esm/require.js +66 -0
  80. package/dist/esm/require.js.map +6 -0
  81. package/dist/esm/setup.native.js +2 -0
  82. package/dist/esm/setup.native.js.map +6 -0
  83. package/dist/esm/static.native.js +15 -0
  84. package/dist/esm/static.native.js.map +6 -0
  85. package/dist/esm/types.native.js +1 -0
  86. package/dist/esm/types.native.js.map +6 -0
  87. package/dist/esm/webpackPlugin.native.js +11 -0
  88. package/dist/esm/webpackPlugin.native.js.map +6 -0
  89. package/package.json +16 -16
@@ -0,0 +1,127 @@
1
+ import { fork } from "child_process";
2
+ import { dirname, extname, join, resolve } from "path";
3
+ import * as t from "@babel/types";
4
+ import { evaluateAstNode } from "./evaluateAstNode";
5
+ import { getSourceModule } from "./getSourceModule";
6
+ const isLocalImport = (path) => path.startsWith(".") || path.startsWith("/");
7
+ function resolveImportPath(sourcePath, path) {
8
+ const sourceDir = dirname(sourcePath);
9
+ return isLocalImport(path) ? (extname(path) === "" && (path += ".js"), resolve(sourceDir, path)) : path;
10
+ }
11
+ const cache = /* @__PURE__ */ new Map(), pending = /* @__PURE__ */ new Map(), loadCmd = `${join(__dirname, "loadFile.js")}`;
12
+ let exited = !1, child = null;
13
+ function forkChild() {
14
+ child = fork(loadCmd, [], {
15
+ execArgv: ["-r", "esbuild-register"],
16
+ detached: !1,
17
+ stdio: "ignore"
18
+ });
19
+ }
20
+ function cleanupBeforeExit() {
21
+ exited || child && (child.removeAllListeners(), child.unref(), child.disconnect(), child.kill(), exited = !0);
22
+ }
23
+ process.once("SIGTERM", cleanupBeforeExit);
24
+ process.once("SIGINT", cleanupBeforeExit);
25
+ process.once("beforeExit", cleanupBeforeExit);
26
+ function importModule(path) {
27
+ if (child || forkChild(), pending.has(path))
28
+ return pending.get(path);
29
+ const promise = new Promise((res, rej) => {
30
+ if (!child)
31
+ return;
32
+ if (cache.size > 2e3 && cache.clear(), cache.has(path))
33
+ return cache.get(path);
34
+ const listener = (msg) => {
35
+ if (!child || !msg || typeof msg != "string")
36
+ return;
37
+ if (msg[0] === "-") {
38
+ rej(new Error(msg.slice(1)));
39
+ return;
40
+ }
41
+ child.removeListener("message", listener);
42
+ const val = JSON.parse(msg);
43
+ cache.set(path, val), res(val);
44
+ };
45
+ child.once("message", listener), child.send(`${path.replace(".js", "")}`);
46
+ });
47
+ return pending.set(path, promise), promise;
48
+ }
49
+ async function getStaticBindingsForScope(scope, whitelist = [], sourcePath, bindingCache, shouldPrintDebug) {
50
+ const bindings = scope.getAllBindings(), ret = {}, program = scope.getProgramParent().block;
51
+ for (const node of program.body)
52
+ if (t.isImportDeclaration(node)) {
53
+ const importPath = node.source.value;
54
+ if (!node.specifiers.length || !isLocalImport(importPath))
55
+ continue;
56
+ const moduleName = resolveImportPath(sourcePath, importPath);
57
+ if (!whitelist.some((test) => moduleName.endsWith(test)))
58
+ continue;
59
+ try {
60
+ const src = await importModule(moduleName);
61
+ if (!src)
62
+ continue;
63
+ for (const specifier of node.specifiers)
64
+ if (t.isImportSpecifier(specifier) && t.isIdentifier(specifier.imported) && typeof src[specifier.imported.name] < "u") {
65
+ const val = src[specifier.local.name];
66
+ ret[specifier.local.name] = val;
67
+ }
68
+ } catch (err) {
69
+ shouldPrintDebug ? console.warn(
70
+ ` | Skipping partial evaluation of constant file: ${moduleName} (DEBUG=tamagui for more)`
71
+ ) : process.env.DEBUG?.startsWith("tamagui") && console.log("Error in partial evaluation", err.message, err.stack);
72
+ }
73
+ }
74
+ if (!bindingCache)
75
+ throw new Error("BindingCache is a required param");
76
+ for (const k in bindings) {
77
+ const binding = bindings[k], sourceModule = getSourceModule(k, binding);
78
+ if (sourceModule) {
79
+ if (!sourceModule.sourceModule)
80
+ continue;
81
+ const moduleName = resolveImportPath(sourcePath, sourceModule.sourceModule);
82
+ if (whitelist.some((test) => moduleName.endsWith(test))) {
83
+ const src = importModule(moduleName);
84
+ if (!src)
85
+ return console.log(
86
+ ` | \u26A0\uFE0F Missing file ${moduleName} via ${sourcePath} import ${sourceModule.sourceModule}?`
87
+ ), {};
88
+ sourceModule.destructured ? sourceModule.imported && (ret[k] = src[sourceModule.imported]) : ret[k] = src;
89
+ }
90
+ continue;
91
+ }
92
+ const { parent } = binding.path;
93
+ if (!t.isVariableDeclaration(parent) || parent.kind !== "const")
94
+ continue;
95
+ const dec = parent.declarations.find((d) => t.isIdentifier(d.id) && d.id.name === k);
96
+ if (!dec || !dec.init)
97
+ continue;
98
+ if (typeof dec.id.start != "number" || typeof dec.id.end != "number") {
99
+ console.error("dec.id.start/end is not a number");
100
+ continue;
101
+ }
102
+ if (!t.isIdentifier(dec.id)) {
103
+ console.error("dec is not an identifier");
104
+ continue;
105
+ }
106
+ const cacheKey = `${dec.id.name}_${dec.id.start}-${dec.id.end}`;
107
+ if (Object.hasOwnProperty.call(bindingCache, cacheKey)) {
108
+ ret[k] = bindingCache[cacheKey];
109
+ continue;
110
+ }
111
+ if (Object.hasOwnProperty.call(bindingCache, cacheKey)) {
112
+ ret[k] = bindingCache[cacheKey];
113
+ continue;
114
+ }
115
+ try {
116
+ ret[k] = evaluateAstNode(dec.init, void 0, shouldPrintDebug), bindingCache[cacheKey] = ret[k];
117
+ continue;
118
+ } catch {
119
+ }
120
+ }
121
+ return ret;
122
+ }
123
+ export {
124
+ cleanupBeforeExit,
125
+ getStaticBindingsForScope
126
+ };
127
+ //# sourceMappingURL=getStaticBindingsForScope.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/getStaticBindingsForScope.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,8 @@
1
+ import { isAbsolute, join } from "path";
2
+ function getTamaguiConfigPathFromOptionsConfig(config) {
3
+ return isAbsolute(config) ? config : join(process.cwd(), config);
4
+ }
5
+ export {
6
+ getTamaguiConfigPathFromOptionsConfig
7
+ };
8
+ //# sourceMappingURL=getTamaguiConfigPathFromOptionsConfig.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/getTamaguiConfigPathFromOptionsConfig.ts"],
4
+ "mappings": "AAAA,SAAS,YAAY,YAAY;AAI1B,SAAS,sCACd,QACA;AACA,SAAI,WAAW,MAAM,IACZ,SAGF,KAAK,QAAQ,IAAI,GAAG,MAAM;AACnC;",
5
+ "names": []
6
+ }
@@ -0,0 +1,37 @@
1
+ import * as t from "@babel/types";
2
+ function hoistClassNames(path, existing, expr) {
3
+ const hoist = hoistClassNames.bind(null, path, existing);
4
+ if (t.isStringLiteral(expr)) {
5
+ if (expr.value.trim() === "")
6
+ return expr;
7
+ if (existing[expr.value])
8
+ return existing[expr.value];
9
+ const identifier = replaceStringWithVariable(expr);
10
+ return existing[expr.value] = identifier, identifier;
11
+ }
12
+ if (t.isBinaryExpression(expr))
13
+ return t.binaryExpression(expr.operator, hoist(expr.left), hoist(expr.right));
14
+ if (t.isLogicalExpression(expr))
15
+ return t.logicalExpression(expr.operator, hoist(expr.left), hoist(expr.right));
16
+ if (t.isConditionalExpression(expr))
17
+ return t.conditionalExpression(
18
+ expr.test,
19
+ hoist(expr.consequent),
20
+ hoist(expr.alternate)
21
+ );
22
+ return expr;
23
+ function replaceStringWithVariable(str) {
24
+ const uid = path.scope.generateUidIdentifier("cn"), parent = path.findParent((path2) => path2.isProgram());
25
+ if (!parent)
26
+ throw new Error("no program?");
27
+ const variable = t.variableDeclaration("const", [
28
+ // adding a space for extra safety
29
+ t.variableDeclarator(uid, t.stringLiteral(` ${str.value}`))
30
+ ]);
31
+ return parent.unshiftContainer("body", variable), uid;
32
+ }
33
+ }
34
+ export {
35
+ hoistClassNames
36
+ };
37
+ //# sourceMappingURL=hoistClassNames.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/hoistClassNames.ts"],
4
+ "mappings": "AACA,YAAY,OAAO;AAEZ,SAAS,gBACd,MACA,UACA,MACA;AACA,QAAM,QAAQ,gBAAgB,KAAK,MAAM,MAAM,QAAQ;AACvD,MAAI,EAAE,gBAAgB,IAAI,GAAG;AAC3B,QAAI,KAAK,MAAM,KAAK,MAAM;AACxB,aAAO;AAET,QAAI,SAAS,KAAK,KAAK;AACrB,aAAO,SAAS,KAAK,KAAK;AAE5B,UAAM,aAAa,0BAA0B,IAAI;AACjD,oBAAS,KAAK,KAAK,IAAI,YAChB;AAAA,EACT;AACA,MAAI,EAAE,mBAAmB,IAAI;AAC3B,WAAO,EAAE,iBAAiB,KAAK,UAAU,MAAM,KAAK,IAAI,GAAG,MAAM,KAAK,KAAK,CAAC;AAE9E,MAAI,EAAE,oBAAoB,IAAI;AAC5B,WAAO,EAAE,kBAAkB,KAAK,UAAU,MAAM,KAAK,IAAI,GAAG,MAAM,KAAK,KAAK,CAAC;AAE/E,MAAI,EAAE,wBAAwB,IAAI;AAChC,WAAO,EAAE;AAAA,MACP,KAAK;AAAA,MACL,MAAM,KAAK,UAAU;AAAA,MACrB,MAAM,KAAK,SAAS;AAAA,IACtB;AAEF,SAAO;AAEP,WAAS,0BAA0B,KAAoC;AAErE,UAAM,MAAM,KAAK,MAAM,sBAAsB,IAAI,GAC3C,SAAS,KAAK,WAAW,CAACA,UAASA,MAAK,UAAU,CAAC;AACzD,QAAI,CAAC;AAAQ,YAAM,IAAI,MAAM,aAAa;AAC1C,UAAM,WAAW,EAAE,oBAAoB,SAAS;AAAA;AAAA,MAE9C,EAAE,mBAAmB,KAAK,EAAE,cAAc,IAAI,IAAI,KAAK,EAAE,CAAC;AAAA,IAC5D,CAAC;AAED,kBAAO,iBAAiB,QAAQ,QAAQ,GACjC;AAAA,EACT;AACF;",
5
+ "names": ["path"]
6
+ }
@@ -0,0 +1,66 @@
1
+ import * as t from "@babel/types";
2
+ function literalToAst(literal) {
3
+ if (literal === null)
4
+ return t.nullLiteral();
5
+ switch (typeof literal) {
6
+ case "function":
7
+ throw new Error("Unsupported");
8
+ case "number":
9
+ return t.numericLiteral(literal);
10
+ case "string":
11
+ return t.stringLiteral(literal);
12
+ case "boolean":
13
+ return t.booleanLiteral(literal);
14
+ case "undefined":
15
+ return t.unaryExpression("void", t.numericLiteral(0), !0);
16
+ default:
17
+ return Array.isArray(literal) ? t.arrayExpression(literal.map(literalToAst)) : t.objectExpression(
18
+ Object.keys(literal).filter((k) => typeof literal[k] < "u").map((k) => t.objectProperty(t.stringLiteral(k), literalToAst(literal[k])))
19
+ );
20
+ }
21
+ }
22
+ const easyPeasies = ["BooleanLiteral", "StringLiteral", "NumericLiteral"];
23
+ function astToLiteral(node) {
24
+ if (node) {
25
+ if (easyPeasies.includes(node.type))
26
+ return node.value;
27
+ if (!(node.name === "undefined" && !node.value)) {
28
+ if (t.isNullLiteral(node))
29
+ return null;
30
+ if (t.isObjectExpression(node))
31
+ return computeProps(node.properties);
32
+ if (t.isArrayExpression(node))
33
+ return node.elements.reduce(
34
+ // @ts-ignore
35
+ (acc, element) => [
36
+ ...acc,
37
+ ...element?.type === "SpreadElement" ? astToLiteral(element.argument) : [astToLiteral(element)]
38
+ ],
39
+ []
40
+ );
41
+ }
42
+ }
43
+ }
44
+ function computeProps(props) {
45
+ return props.reduce((acc, prop) => {
46
+ if (prop.type === "SpreadElement")
47
+ return {
48
+ ...acc,
49
+ ...astToLiteral(prop.argument)
50
+ };
51
+ if (prop.type !== "ObjectMethod") {
52
+ const val = astToLiteral(prop.value);
53
+ if (val !== void 0)
54
+ return {
55
+ ...acc,
56
+ [prop.key.name]: val
57
+ };
58
+ }
59
+ return acc;
60
+ }, {});
61
+ }
62
+ export {
63
+ astToLiteral,
64
+ literalToAst
65
+ };
66
+ //# sourceMappingURL=literalToAst.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/literalToAst.ts"],
4
+ "mappings": "AAAA,YAAY,OAAO;AAEZ,SAAS,aAAa,SAA4B;AACvD,MAAI,YAAY;AACd,WAAO,EAAE,YAAY;AAEvB,UAAQ,OAAO,SAAS;AAAA,IACtB,KAAK;AACH,YAAM,IAAI,MAAM,aAAa;AAAA,IAC/B,KAAK;AACH,aAAO,EAAE,eAAe,OAAO;AAAA,IACjC,KAAK;AACH,aAAO,EAAE,cAAc,OAAO;AAAA,IAChC,KAAK;AACH,aAAO,EAAE,eAAe,OAAO;AAAA,IACjC,KAAK;AACH,aAAO,EAAE,gBAAgB,QAAQ,EAAE,eAAe,CAAC,GAAG,EAAI;AAAA,IAC5D;AACE,aAAI,MAAM,QAAQ,OAAO,IAChB,EAAE,gBAAgB,QAAQ,IAAI,YAAY,CAAC,IAE7C,EAAE;AAAA,QACP,OAAO,KAAK,OAAO,EAChB,OAAO,CAAC,MACA,OAAO,QAAQ,CAAC,IAAM,GAC9B,EACA,IAAI,CAAC,MACG,EAAE,eAAe,EAAE,cAAc,CAAC,GAAG,aAAa,QAAQ,CAAC,CAAC,CAAC,CACrE;AAAA,MACL;AAAA,EACJ;AACF;AAEA,MAAM,cAAc,CAAC,kBAAkB,iBAAiB,gBAAgB;AAEjE,SAAS,aAAa,MAAW;AACtC,MAAK,MAGL;AAAA,QAAI,YAAY,SAAS,KAAK,IAAI;AAChC,aAAO,KAAK;AAEd,QAAI,OAAK,SAAS,eAAe,CAAC,KAAK,QAGvC;AAAA,UAAI,EAAE,cAAc,IAAI;AACtB,eAAO;AAET,UAAI,EAAE,mBAAmB,IAAI;AAC3B,eAAO,aAAa,KAAK,UAAU;AAErC,UAAI,EAAE,kBAAkB,IAAI;AAC1B,eAAO,KAAK,SAAS;AAAA;AAAA,UAEnB,CAAC,KAAK,YAAY;AAAA,YAChB,GAAG;AAAA,YACH,GAAI,SAAS,SAAS,kBAClB,aAAa,QAAQ,QAAQ,IAC7B,CAAC,aAAa,OAAO,CAAC;AAAA,UAC5B;AAAA,UACA,CAAC;AAAA,QACH;AAAA;AAAA;AAEJ;AAEA,SAAS,aAAa,OAAO;AAC3B,SAAO,MAAM,OAAO,CAAC,KAAK,SAAS;AACjC,QAAI,KAAK,SAAS;AAChB,aAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG,aAAa,KAAK,QAAQ;AAAA,MAC/B;AACK,QAAI,KAAK,SAAS,gBAAgB;AACvC,YAAM,MAAM,aAAa,KAAK,KAAK;AACnC,UAAI,QAAQ;AACV,eAAO;AAAA,UACL,GAAG;AAAA,UACH,CAAC,KAAK,IAAI,IAAI,GAAG;AAAA,QACnB;AAAA,IAEJ;AACA,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AACP;",
5
+ "names": []
6
+ }
@@ -0,0 +1,14 @@
1
+ process.on("message", (path) => {
2
+ if (typeof path != "string")
3
+ throw new Error(`Not a string: ${path}`);
4
+ try {
5
+ const out = require(path);
6
+ process.send?.(JSON.stringify(out));
7
+ } catch (err) {
8
+ err instanceof Error ? process.send?.(`-${err.message}
9
+ ${err.stack}`) : process.send?.(`-${err}`);
10
+ }
11
+ });
12
+ setInterval(() => {
13
+ }, 1e3);
14
+ //# sourceMappingURL=loadFile.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/loadFile.ts"],
4
+ "mappings": "AAAA,QAAQ,GAAG,WAAW,CAAC,SAAS;AAC9B,MAAI,OAAO,QAAS;AAClB,UAAM,IAAI,MAAM,iBAAiB,IAAI,EAAE;AAEzC,MAAI;AACF,UAAM,MAAM,QAAQ,IAAI;AACxB,YAAQ,OAAO,KAAK,UAAU,GAAG,CAAC;AAAA,EACpC,SAAS,KAAK;AACZ,IAAI,eAAe,QACjB,QAAQ,OAAO,IAAI,IAAI,OAAO;AAAA,EAAK,IAAI,KAAK,EAAE,IAE9C,QAAQ,OAAO,IAAI,GAAG,EAAE;AAAA,EAE5B;AACF,CAAC;AAED,YAAY,MAAM;AAAC,GAAG,GAAI;",
5
+ "names": []
6
+ }
@@ -0,0 +1,248 @@
1
+ import { basename, dirname, extname, join, relative, resolve } from "path";
2
+ import { Color, colorLog } from "@tamagui/cli-color";
3
+ import { getDefaultTamaguiConfig } from "@tamagui/config-default";
4
+ import esbuild from "esbuild";
5
+ import { existsSync, pathExists, readJSON, writeFile } from "fs-extra";
6
+ import { SHOULD_DEBUG } from "../constants";
7
+ import { requireTamaguiCore } from "../helpers/requireTamaguiCore";
8
+ import { getNameToPaths, registerRequire } from "../registerRequire";
9
+ import {
10
+ TamaguiProjectInfo,
11
+ getBundledConfig,
12
+ hasBundledConfigChanged,
13
+ loadComponents
14
+ } from "./bundleConfig";
15
+ import {
16
+ generateTamaguiStudioConfig,
17
+ generateTamaguiStudioConfigSync,
18
+ generateTamaguiThemes
19
+ } from "./generateTamaguiStudioConfig";
20
+ import { getTamaguiConfigPathFromOptionsConfig } from "./getTamaguiConfigPathFromOptionsConfig";
21
+ const getFilledOptions = (propsIn) => ({
22
+ // defaults
23
+ platform: "native",
24
+ config: "tamagui.config.ts",
25
+ components: ["tamagui"],
26
+ ...propsIn
27
+ });
28
+ async function loadTamagui(propsIn) {
29
+ const props = getFilledOptions(propsIn);
30
+ await generateThemesAndLog(props);
31
+ const bundleInfo = await getBundledConfig(props);
32
+ if (!bundleInfo)
33
+ return console.warn(
34
+ "No bundled config generated, maybe an error in bundling. Set DEBUG=tamagui and re-run to get logs."
35
+ ), null;
36
+ if (!hasBundledConfigChanged())
37
+ return bundleInfo;
38
+ if (bundleInfo) {
39
+ const { createTamagui } = requireTamaguiCore(props.platform), config = createTamagui(bundleInfo.tamaguiConfig);
40
+ if (props.outputCSS) {
41
+ colorLog(Color.FgYellow, ` \u27A1 [tamagui] outputCSS: ${props.outputCSS}
42
+ `);
43
+ const css = config.getCSS();
44
+ await writeFile(props.outputCSS, css);
45
+ }
46
+ }
47
+ return process.env.NODE_ENV === "development" && await generateTamaguiStudioConfig(props, bundleInfo), bundleInfo;
48
+ }
49
+ let waiting = !1, hasLoggedOnce = !1;
50
+ const generateThemesAndLog = async (options) => {
51
+ if (!waiting && options.themeBuilder)
52
+ try {
53
+ waiting = !0, await new Promise((res) => setTimeout(res, 30));
54
+ const didGenerate = await generateTamaguiThemes(options);
55
+ if (!hasLoggedOnce || didGenerate) {
56
+ hasLoggedOnce = !0;
57
+ const whitespaceBefore = " ";
58
+ colorLog(Color.FgYellow, `${whitespaceBefore}\u27A1 [tamagui] Generated themes:`), colorLog(
59
+ Color.Dim,
60
+ `
61
+ ${whitespaceBefore}${relative(process.cwd(), options.themeBuilder.output)}`
62
+ );
63
+ }
64
+ } finally {
65
+ waiting = !1;
66
+ }
67
+ }, last = {}, lastVersion = {};
68
+ function loadTamaguiSync({
69
+ forceExports,
70
+ cacheKey,
71
+ ...propsIn
72
+ }) {
73
+ const key = JSON.stringify(propsIn);
74
+ if (last[key] && !hasBundledConfigChanged() && (!lastVersion[key] || lastVersion[key] === cacheKey))
75
+ return last[key];
76
+ lastVersion[key] = cacheKey || "";
77
+ const props = getFilledOptions(propsIn);
78
+ process.env.IS_STATIC = "is_static", process.env.TAMAGUI_IS_SERVER = "true";
79
+ const { unregister } = registerRequire(props.platform, {
80
+ proxyWormImports: !!forceExports
81
+ });
82
+ try {
83
+ const devValueOG = globalThis.__DEV__;
84
+ globalThis.__DEV__ = process.env.NODE_ENV === "development";
85
+ try {
86
+ let tamaguiConfig = null;
87
+ if (propsIn.config) {
88
+ const configPath = getTamaguiConfigPathFromOptionsConfig(propsIn.config), exp = require(configPath);
89
+ if (tamaguiConfig = exp.default || exp, !tamaguiConfig || !tamaguiConfig.parsed) {
90
+ const confPath = require.resolve(configPath);
91
+ throw new Error(`Can't find valid config in ${confPath}:
92
+
93
+ Be sure you "export default" the config.`);
94
+ }
95
+ if (tamaguiConfig) {
96
+ const { createTamagui } = requireTamaguiCore(props.platform);
97
+ createTamagui(tamaguiConfig);
98
+ }
99
+ }
100
+ const components = loadComponents(props, forceExports);
101
+ if (!components)
102
+ throw new Error("No components loaded");
103
+ process.env.DEBUG === "tamagui" && console.log("components", components), process.env.IS_STATIC = void 0, globalThis.__DEV__ = devValueOG;
104
+ const info = {
105
+ components,
106
+ tamaguiConfig,
107
+ nameToPaths: getNameToPaths()
108
+ };
109
+ return propsIn.config && generateTamaguiStudioConfigSync(props, info), last[key] = {
110
+ ...info,
111
+ cached: !0
112
+ }, info;
113
+ } catch (err) {
114
+ err instanceof Error ? !SHOULD_DEBUG && !forceExports ? (console.warn(
115
+ "Error loading tamagui.config.ts (set DEBUG=tamagui to see full stack), running tamagui without custom config"
116
+ ), console.log(`
117
+
118
+ ${err.message}
119
+
120
+ `)) : SHOULD_DEBUG && console.error(err) : console.error("Error loading tamagui.config.ts", err);
121
+ const { createTamagui } = requireTamaguiCore(props.platform);
122
+ return {
123
+ components: [],
124
+ tamaguiConfig: createTamagui(getDefaultTamaguiConfig()),
125
+ nameToPaths: {}
126
+ };
127
+ }
128
+ } finally {
129
+ unregister();
130
+ }
131
+ }
132
+ async function getOptions({
133
+ root = process.cwd(),
134
+ tsconfigPath = "tsconfig.json",
135
+ tamaguiOptions,
136
+ host,
137
+ debug
138
+ } = {}) {
139
+ const dotDir = join(root, ".tamagui");
140
+ let pkgJson = {};
141
+ try {
142
+ pkgJson = await readJSON(join(root, "package.json"));
143
+ } catch {
144
+ }
145
+ return {
146
+ mode: process.env.NODE_ENV === "production" ? "production" : "development",
147
+ root,
148
+ host: host || "127.0.0.1",
149
+ pkgJson,
150
+ debug,
151
+ tsconfigPath,
152
+ tamaguiOptions: {
153
+ platform: "native",
154
+ components: ["tamagui"],
155
+ ...tamaguiOptions,
156
+ config: await getDefaultTamaguiConfigPath(root, tamaguiOptions?.config)
157
+ },
158
+ paths: {
159
+ dotDir,
160
+ conf: join(dotDir, "tamagui.config.json"),
161
+ types: join(dotDir, "types.json")
162
+ }
163
+ };
164
+ }
165
+ function resolveWebOrNativeSpecificEntry(entry) {
166
+ const workspaceRoot = resolve(), resolved = require.resolve(entry, { paths: [workspaceRoot] }), ext = extname(resolved), fileName = basename(resolved).replace(ext, ""), specificExt = "native", specificFile = join(dirname(resolved), fileName + "." + specificExt + ext);
167
+ return existsSync(specificFile) ? specificFile : entry;
168
+ }
169
+ const defaultPaths = ["tamagui.config.ts", join("src", "tamagui.config.ts")];
170
+ let hasWarnedOnce = !1;
171
+ async function getDefaultTamaguiConfigPath(root, configPath) {
172
+ const searchPaths = [
173
+ ...new Set(
174
+ [configPath, ...defaultPaths].filter(Boolean).map((p) => join(root, p))
175
+ )
176
+ ];
177
+ for (const path of searchPaths)
178
+ if (await pathExists(path))
179
+ return path;
180
+ hasWarnedOnce || (hasWarnedOnce = !0, console.warn(`Warning: couldn't find tamagui.config.ts in the following paths given configuration "${configPath}":
181
+ ${searchPaths.join(`
182
+ `)}
183
+ `));
184
+ }
185
+ async function watchTamaguiConfig(tamaguiOptions) {
186
+ const options = await getOptions({ tamaguiOptions });
187
+ if (!options.tamaguiOptions.config)
188
+ throw new Error("No config");
189
+ if (process.env.NODE_ENV === "production")
190
+ return {
191
+ dispose() {
192
+ }
193
+ };
194
+ const disposeConfigWatcher = await esbuildWatchFiles(
195
+ options.tamaguiOptions.config,
196
+ () => {
197
+ generateTamaguiStudioConfig(options.tamaguiOptions, null, !0);
198
+ }
199
+ ), themeBuilderInput = options.tamaguiOptions.themeBuilder?.input;
200
+ let disposeThemesWatcher;
201
+ if (themeBuilderInput) {
202
+ let inputPath = themeBuilderInput;
203
+ try {
204
+ inputPath = require.resolve(themeBuilderInput);
205
+ } catch {
206
+ }
207
+ disposeThemesWatcher = await esbuildWatchFiles(inputPath, () => {
208
+ generateThemesAndLog(options.tamaguiOptions);
209
+ });
210
+ }
211
+ return {
212
+ dispose() {
213
+ disposeConfigWatcher(), disposeThemesWatcher?.();
214
+ }
215
+ };
216
+ }
217
+ async function esbuildWatchFiles(entry, onChanged) {
218
+ let hasRunOnce = !1;
219
+ const context = await esbuild.context({
220
+ bundle: !0,
221
+ entryPoints: [entry],
222
+ resolveExtensions: [".ts", ".tsx", ".js", ".jsx", ".mjs"],
223
+ logLevel: "silent",
224
+ write: !1,
225
+ plugins: [
226
+ {
227
+ name: "on-rebuild",
228
+ setup({ onEnd }) {
229
+ onEnd(() => {
230
+ hasRunOnce ? onChanged() : hasRunOnce = !0;
231
+ });
232
+ }
233
+ }
234
+ ]
235
+ });
236
+ return context.watch(), () => {
237
+ context.dispose();
238
+ };
239
+ }
240
+ export {
241
+ TamaguiProjectInfo,
242
+ getOptions,
243
+ loadTamagui,
244
+ loadTamaguiSync,
245
+ resolveWebOrNativeSpecificEntry,
246
+ watchTamaguiConfig
247
+ };
248
+ //# sourceMappingURL=loadTamagui.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/loadTamagui.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,14 @@
1
+ const prefix = " ", logLines = (str, singleLine = !1) => {
2
+ if (singleLine)
3
+ return prefix + str.split(" ").join(`
4
+ ${prefix}`);
5
+ const lines = [""], items = str.split(" ");
6
+ for (const item of items)
7
+ item.length + lines[lines.length - 1].length > 85 && lines.push(""), lines[lines.length - 1] += item + " ";
8
+ return lines.map((line, i) => prefix + (i == 0 ? "" : " ") + line.trim()).join(`
9
+ `);
10
+ };
11
+ export {
12
+ logLines
13
+ };
14
+ //# sourceMappingURL=logLines.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/logLines.ts"],
4
+ "mappings": "AAAA,MAAM,SAAS,eAEF,WAAW,CAAC,KAAa,aAAa,OAAU;AAC3D,MAAI;AACF,WAAO,SAAS,IAAI,MAAM,GAAG,EAAE,KAAK;AAAA,EAAK,MAAM,EAAE;AAEnD,QAAM,QAAkB,CAAC,EAAE,GACrB,QAAQ,IAAI,MAAM,GAAG;AAC3B,aAAW,QAAQ;AACjB,IAAI,KAAK,SAAS,MAAM,MAAM,SAAS,CAAC,EAAE,SAAS,MACjD,MAAM,KAAK,EAAE,GAEf,MAAM,MAAM,SAAS,CAAC,KAAK,OAAO;AAEpC,SAAO,MAAM,IAAI,CAAC,MAAM,MAAM,UAAU,KAAK,IAAI,KAAK,OAAO,KAAK,KAAK,CAAC,EAAE,KAAK;AAAA,CAAI;AACrF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,37 @@
1
+ import generate from "@babel/generator";
2
+ import * as t from "@babel/types";
3
+ import invariant from "invariant";
4
+ function normalizeTernaries(ternaries) {
5
+ if (invariant(
6
+ Array.isArray(ternaries),
7
+ "extractStaticTernaries expects param 1 to be an array of ternaries"
8
+ ), ternaries.length === 0)
9
+ return [];
10
+ const ternariesByKey = {};
11
+ for (let idx = -1, len = ternaries.length; ++idx < len; ) {
12
+ const { test, consequent, alternate, remove, ...rest } = ternaries[idx];
13
+ let ternaryTest = test;
14
+ t.isExpressionStatement(test) && (ternaryTest = test.expression);
15
+ let shouldSwap = !1;
16
+ t.isUnaryExpression(test) && test.operator === "!" ? (ternaryTest = test.argument, shouldSwap = !0) : t.isBinaryExpression(test) && (test.operator === "!==" || test.operator === "!=") && (ternaryTest = t.binaryExpression(
17
+ test.operator.replace("!", "="),
18
+ test.left,
19
+ test.right
20
+ ), shouldSwap = !0);
21
+ const key = generate(ternaryTest).code;
22
+ ternariesByKey[key] || (ternariesByKey[key] = {
23
+ ...rest,
24
+ alternate: {},
25
+ consequent: {},
26
+ test: ternaryTest,
27
+ remove
28
+ });
29
+ const altStyle = (shouldSwap ? consequent : alternate) ?? {}, consStyle = (shouldSwap ? alternate : consequent) ?? {};
30
+ Object.assign(ternariesByKey[key].alternate, altStyle), Object.assign(ternariesByKey[key].consequent, consStyle);
31
+ }
32
+ return Object.keys(ternariesByKey).map((key) => ternariesByKey[key]);
33
+ }
34
+ export {
35
+ normalizeTernaries
36
+ };
37
+ //# sourceMappingURL=normalizeTernaries.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/normalizeTernaries.ts"],
4
+ "mappings": "AAAA,OAAO,cAAc;AACrB,YAAY,OAAO;AACnB,OAAO,eAAe;AAIf,SAAS,mBAAmB,WAAsB;AAMvD,MALA;AAAA,IACE,MAAM,QAAQ,SAAS;AAAA,IACvB;AAAA,EACF,GAEI,UAAU,WAAW;AACvB,WAAO,CAAC;AAGV,QAAM,iBAA6C,CAAC;AAEpD,WAAS,MAAM,IAAI,MAAM,UAAU,QAAQ,EAAE,MAAM,OAAO;AACxD,UAAM,EAAE,MAAM,YAAY,WAAW,QAAQ,GAAG,KAAK,IAAI,UAAU,GAAG;AAEtE,QAAI,cAAc;AAGlB,IAAI,EAAE,sBAAsB,IAAI,MAC9B,cAAe,KAAa;AAI9B,QAAI,aAAa;AACjB,IAAI,EAAE,kBAAkB,IAAI,KAAK,KAAK,aAAa,OACjD,cAAc,KAAK,UACnB,aAAa,MACJ,EAAE,mBAAmB,IAAI,MAC9B,KAAK,aAAa,SAAS,KAAK,aAAa,UAC/C,cAAc,EAAE;AAAA,MACd,KAAK,SAAS,QAAQ,KAAK,GAAG;AAAA,MAC9B,KAAK;AAAA,MACL,KAAK;AAAA,IACP,GACA,aAAa;AAKjB,UAAM,MAAM,SAAS,WAAkB,EAAE;AAEzC,IAAK,eAAe,GAAG,MACrB,eAAe,GAAG,IAAI;AAAA,MACpB,GAAG;AAAA,MACH,WAAW,CAAC;AAAA,MACZ,YAAY,CAAC;AAAA,MACb,MAAM;AAAA,MACN;AAAA,IACF;AAEF,UAAM,YAAY,aAAa,aAAa,cAAc,CAAC,GACrD,aAAa,aAAa,YAAY,eAAe,CAAC;AAC5D,WAAO,OAAO,eAAe,GAAG,EAAE,WAAY,QAAQ,GACtD,OAAO,OAAO,eAAe,GAAG,EAAE,YAAa,SAAS;AAAA,EAC1D;AAMA,SAJ0B,OAAO,KAAK,cAAc,EAAE,IAAI,CAAC,QAClD,eAAe,GAAG,CAC1B;AAGH;",
5
+ "names": []
6
+ }
@@ -0,0 +1,18 @@
1
+ const cache = /* @__PURE__ */ new WeakMap();
2
+ function setPropsToFontFamily(props, ff) {
3
+ cache.set(props, ff);
4
+ }
5
+ function getPropsToFontFamily(props) {
6
+ return cache.get(props);
7
+ }
8
+ function getFontFamilyClassNameFromProps(props) {
9
+ const ff = getPropsToFontFamily(props);
10
+ if (ff)
11
+ return ` font_${ff.replace("$", "")}`;
12
+ }
13
+ export {
14
+ getFontFamilyClassNameFromProps,
15
+ getPropsToFontFamily,
16
+ setPropsToFontFamily
17
+ };
18
+ //# sourceMappingURL=propsToFontFamilyCache.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extractor/propsToFontFamilyCache.ts"],
4
+ "mappings": "AAEA,MAAM,QAAQ,oBAAI,QAAqB;AAEhC,SAAS,qBAAqB,OAAY,IAAY;AAC3D,QAAM,IAAI,OAAO,EAAE;AACrB;AAEO,SAAS,qBAAqB,OAAY;AAC/C,SAAO,MAAM,IAAI,KAAK;AACxB;AAEO,SAAS,gCAAgC,OAAY;AAC1D,QAAM,KAAK,qBAAqB,KAAK;AACrC,MAAI;AACF,WAAO,SAAS,GAAG,QAAQ,KAAK,EAAE,CAAC;AAEvC;",
5
+ "names": []
6
+ }