@tamagui/static 1.115.1 → 1.115.3

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 (123) hide show
  1. package/dist/check-dep-versions.js +389 -0
  2. package/dist/checkDeps.js +26 -0
  3. package/dist/{constants.cjs → constants.js} +14 -29
  4. package/dist/exports.js +33 -0
  5. package/dist/extractor/accessSafe.js +47 -0
  6. package/dist/extractor/babelParse.js +59 -0
  7. package/dist/extractor/buildClassName.js +72 -0
  8. package/dist/extractor/bundle.js +133 -0
  9. package/dist/extractor/bundleConfig.js +350 -0
  10. package/dist/extractor/{createEvaluator.cjs → createEvaluator.js} +21 -37
  11. package/dist/extractor/createExtractor.js +1217 -0
  12. package/dist/extractor/createLogger.js +32 -0
  13. package/dist/extractor/ensureImportingConcat.js +50 -0
  14. package/dist/extractor/esbuildAliasPlugin.js +36 -0
  15. package/dist/extractor/evaluateAstNode.js +99 -0
  16. package/dist/extractor/extractHelpers.js +109 -0
  17. package/dist/extractor/extractMediaStyle.js +123 -0
  18. package/dist/extractor/extractToClassNames.js +291 -0
  19. package/dist/extractor/extractToNative.js +319 -0
  20. package/dist/extractor/findTopmostFunction.js +32 -0
  21. package/dist/extractor/generatedUid.js +42 -0
  22. package/dist/extractor/getPrefixLogs.js +23 -0
  23. package/dist/extractor/getPropValueFromAttributes.js +65 -0
  24. package/dist/extractor/getSourceModule.js +66 -0
  25. package/dist/extractor/{getStaticBindingsForScope.cjs → getStaticBindingsForScope.js} +61 -66
  26. package/dist/extractor/{getTamaguiConfigPathFromOptionsConfig.cjs → getTamaguiConfigPathFromOptionsConfig.js} +11 -16
  27. package/dist/extractor/{hoistClassNames.cjs → hoistClassNames.js} +32 -31
  28. package/dist/extractor/{literalToAst.cjs → literalToAst.js} +44 -38
  29. package/dist/extractor/{loadFile.cjs → loadFile.js} +6 -3
  30. package/dist/extractor/{loadTamagui.cjs → loadTamagui.js} +78 -99
  31. package/dist/extractor/logLines.js +30 -0
  32. package/dist/extractor/{normalizeTernaries.cjs → normalizeTernaries.js} +29 -38
  33. package/dist/extractor/{propsToFontFamilyCache.cjs → propsToFontFamilyCache.js} +14 -18
  34. package/dist/extractor/regenerateConfig.js +111 -0
  35. package/dist/extractor/{removeUnusedHooks.cjs → removeUnusedHooks.js} +27 -31
  36. package/dist/extractor/{timer.cjs → timer.js} +11 -16
  37. package/dist/extractor/{validHTMLAttributes.cjs → validHTMLAttributes.js} +11 -16
  38. package/dist/extractor/{watchTamaguiConfig.cjs → watchTamaguiConfig.js} +29 -30
  39. package/dist/{getPragmaOptions.cjs → getPragmaOptions.js} +17 -22
  40. package/dist/helpers/memoize.js +33 -0
  41. package/dist/helpers/requireTamaguiCore.js +30 -0
  42. package/dist/index.js +30 -0
  43. package/dist/registerRequire.js +96 -0
  44. package/dist/{server.cjs → server.js} +21 -38
  45. package/dist/setup.js +1 -0
  46. package/dist/types.js +14 -0
  47. package/package.json +16 -16
  48. package/dist/check-dep-versions.cjs +0 -267
  49. package/dist/checkDeps.cjs +0 -32
  50. package/dist/exports.cjs +0 -40
  51. package/dist/extractor/accessSafe.cjs +0 -46
  52. package/dist/extractor/babelParse.cjs +0 -54
  53. package/dist/extractor/buildClassName.cjs +0 -62
  54. package/dist/extractor/bundle.cjs +0 -146
  55. package/dist/extractor/bundleConfig.cjs +0 -322
  56. package/dist/extractor/createExtractor.cjs +0 -1008
  57. package/dist/extractor/createLogger.cjs +0 -45
  58. package/dist/extractor/ensureImportingConcat.cjs +0 -48
  59. package/dist/extractor/esbuildAliasPlugin.cjs +0 -44
  60. package/dist/extractor/evaluateAstNode.cjs +0 -83
  61. package/dist/extractor/extractHelpers.cjs +0 -120
  62. package/dist/extractor/extractMediaStyle.cjs +0 -129
  63. package/dist/extractor/extractToClassNames.cjs +0 -254
  64. package/dist/extractor/extractToNative.cjs +0 -274
  65. package/dist/extractor/findTopmostFunction.cjs +0 -34
  66. package/dist/extractor/generatedUid.cjs +0 -47
  67. package/dist/extractor/getPrefixLogs.cjs +0 -28
  68. package/dist/extractor/getPropValueFromAttributes.cjs +0 -67
  69. package/dist/extractor/getSourceModule.cjs +0 -68
  70. package/dist/extractor/logLines.cjs +0 -35
  71. package/dist/extractor/regenerateConfig.cjs +0 -144
  72. package/dist/helpers/memoize.cjs +0 -37
  73. package/dist/helpers/requireTamaguiCore.cjs +0 -33
  74. package/dist/index.cjs +0 -40
  75. package/dist/registerRequire.cjs +0 -102
  76. package/dist/setup.cjs +0 -0
  77. package/dist/types.cjs +0 -16
  78. /package/dist/{check-dep-versions.cjs.map → check-dep-versions.js.map} +0 -0
  79. /package/dist/{checkDeps.cjs.map → checkDeps.js.map} +0 -0
  80. /package/dist/{constants.cjs.map → constants.js.map} +0 -0
  81. /package/dist/{exports.cjs.map → exports.js.map} +0 -0
  82. /package/dist/extractor/{accessSafe.cjs.map → accessSafe.js.map} +0 -0
  83. /package/dist/extractor/{babelParse.cjs.map → babelParse.js.map} +0 -0
  84. /package/dist/extractor/{buildClassName.cjs.map → buildClassName.js.map} +0 -0
  85. /package/dist/extractor/{bundle.cjs.map → bundle.js.map} +0 -0
  86. /package/dist/extractor/{bundleConfig.cjs.map → bundleConfig.js.map} +0 -0
  87. /package/dist/extractor/{createEvaluator.cjs.map → createEvaluator.js.map} +0 -0
  88. /package/dist/extractor/{createExtractor.cjs.map → createExtractor.js.map} +0 -0
  89. /package/dist/extractor/{createLogger.cjs.map → createLogger.js.map} +0 -0
  90. /package/dist/extractor/{ensureImportingConcat.cjs.map → ensureImportingConcat.js.map} +0 -0
  91. /package/dist/extractor/{esbuildAliasPlugin.cjs.map → esbuildAliasPlugin.js.map} +0 -0
  92. /package/dist/extractor/{evaluateAstNode.cjs.map → evaluateAstNode.js.map} +0 -0
  93. /package/dist/extractor/{extractHelpers.cjs.map → extractHelpers.js.map} +0 -0
  94. /package/dist/extractor/{extractMediaStyle.cjs.map → extractMediaStyle.js.map} +0 -0
  95. /package/dist/extractor/{extractToClassNames.cjs.map → extractToClassNames.js.map} +0 -0
  96. /package/dist/extractor/{extractToNative.cjs.map → extractToNative.js.map} +0 -0
  97. /package/dist/extractor/{findTopmostFunction.cjs.map → findTopmostFunction.js.map} +0 -0
  98. /package/dist/extractor/{generatedUid.cjs.map → generatedUid.js.map} +0 -0
  99. /package/dist/extractor/{getPrefixLogs.cjs.map → getPrefixLogs.js.map} +0 -0
  100. /package/dist/extractor/{getPropValueFromAttributes.cjs.map → getPropValueFromAttributes.js.map} +0 -0
  101. /package/dist/extractor/{getSourceModule.cjs.map → getSourceModule.js.map} +0 -0
  102. /package/dist/extractor/{getStaticBindingsForScope.cjs.map → getStaticBindingsForScope.js.map} +0 -0
  103. /package/dist/extractor/{getTamaguiConfigPathFromOptionsConfig.cjs.map → getTamaguiConfigPathFromOptionsConfig.js.map} +0 -0
  104. /package/dist/extractor/{hoistClassNames.cjs.map → hoistClassNames.js.map} +0 -0
  105. /package/dist/extractor/{literalToAst.cjs.map → literalToAst.js.map} +0 -0
  106. /package/dist/extractor/{loadFile.cjs.map → loadFile.js.map} +0 -0
  107. /package/dist/extractor/{loadTamagui.cjs.map → loadTamagui.js.map} +0 -0
  108. /package/dist/extractor/{logLines.cjs.map → logLines.js.map} +0 -0
  109. /package/dist/extractor/{normalizeTernaries.cjs.map → normalizeTernaries.js.map} +0 -0
  110. /package/dist/extractor/{propsToFontFamilyCache.cjs.map → propsToFontFamilyCache.js.map} +0 -0
  111. /package/dist/extractor/{regenerateConfig.cjs.map → regenerateConfig.js.map} +0 -0
  112. /package/dist/extractor/{removeUnusedHooks.cjs.map → removeUnusedHooks.js.map} +0 -0
  113. /package/dist/extractor/{timer.cjs.map → timer.js.map} +0 -0
  114. /package/dist/extractor/{validHTMLAttributes.cjs.map → validHTMLAttributes.js.map} +0 -0
  115. /package/dist/extractor/{watchTamaguiConfig.cjs.map → watchTamaguiConfig.js.map} +0 -0
  116. /package/dist/{getPragmaOptions.cjs.map → getPragmaOptions.js.map} +0 -0
  117. /package/dist/helpers/{memoize.cjs.map → memoize.js.map} +0 -0
  118. /package/dist/helpers/{requireTamaguiCore.cjs.map → requireTamaguiCore.js.map} +0 -0
  119. /package/dist/{index.cjs.map → index.js.map} +0 -0
  120. /package/dist/{registerRequire.cjs.map → registerRequire.js.map} +0 -0
  121. /package/dist/{server.cjs.map → server.js.map} +0 -0
  122. /package/dist/{setup.cjs.map → setup.js.map} +0 -0
  123. /package/dist/{types.cjs.map → types.js.map} +0 -0
@@ -1,45 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
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, {
13
- get: () => from[key],
14
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
- });
16
- return to;
17
- };
18
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
20
- }), mod);
21
- var createLogger_exports = {};
22
- __export(createLogger_exports, {
23
- createLogger: () => createLogger
24
- });
25
- module.exports = __toCommonJS(createLogger_exports);
26
- var import_node_path = require("node:path"),
27
- import_getPrefixLogs = require("./getPrefixLogs.cjs");
28
- function createLogger(sourcePath, options) {
29
- const shouldLogTiming = options.logTimings ?? !0,
30
- start = Date.now(),
31
- mem = process.env.TAMAGUI_SHOW_MEMORY_USAGE && shouldLogTiming ? process.memoryUsage() : null;
32
- return res => {
33
- if (!shouldLogTiming) return;
34
- const memUsed = mem ? Math.round((process.memoryUsage().heapUsed - mem.heapUsed) / 1024 / 1204 * 10) / 10 : 0,
35
- path = (0, import_node_path.basename)(sourcePath || "").replace(/\.[jt]sx?$/, "").slice(0, 22).trim().padStart(24),
36
- numOptimized = `${res.optimized + res.styled}`.padStart(3),
37
- numFound = `${res.found + res.styled}`.padStart(3),
38
- numFlattened = `${res.flattened}`.padStart(3),
39
- memory = memUsed ? ` ${memUsed}MB` : "",
40
- timingStr = `${Date.now() - start}ms`.padStart(6),
41
- pre = (0, import_getPrefixLogs.getPrefixLogs)(options),
42
- memStr = memory ? `(${memory})` : "";
43
- console.info(`${pre} ${path} \xB7 ${numFound} found \xB7 ${numOptimized} opt \xB7 ${numFlattened} flat ${timingStr} ${memStr}`);
44
- };
45
- }
@@ -1,48 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
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, {
15
- get: () => from[key],
16
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
- });
18
- return to;
19
- };
20
- 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);
32
- var ensureImportingConcat_exports = {};
33
- __export(ensureImportingConcat_exports, {
34
- ensureImportingConcat: () => ensureImportingConcat
35
- });
36
- module.exports = __toCommonJS(ensureImportingConcat_exports);
37
- var t = __toESM(require("@babel/types"));
38
- const importConcatPkg = "@tamagui/helpers";
39
- function ensureImportingConcat(path) {
40
- const imported = path.get("body").find(x => x.isImportDeclaration() && x.node.source.value === importConcatPkg),
41
- importSpecifier = t.importSpecifier(t.identifier("concatClassName"), t.identifier("concatClassName"));
42
- if (!imported) {
43
- path.node.body.push(t.importDeclaration([importSpecifier], t.stringLiteral(importConcatPkg)));
44
- return;
45
- }
46
- const specifiers = imported.node.specifiers;
47
- specifiers.some(x => t.isImportSpecifier(x) && t.isIdentifier(x.imported) && x.imported.name === "concatClassName") || specifiers.push(t.importSpecifier(t.identifier("concatClassName"), t.identifier("concatClassName")));
48
- }
@@ -1,44 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
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, {
13
- get: () => from[key],
14
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
- });
16
- return to;
17
- };
18
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
20
- }), mod);
21
- var esbuildAliasPlugin_exports = {};
22
- __export(esbuildAliasPlugin_exports, {
23
- esbuildAliasPlugin: () => esbuildAliasPlugin
24
- });
25
- module.exports = __toCommonJS(esbuildAliasPlugin_exports);
26
- const esbuildAliasPlugin = config => {
27
- const alias = config && Object.keys(config);
28
- return {
29
- name: "path-alias",
30
- setup(build) {
31
- if (!alias || !alias.length) return;
32
- const main = (k, args) => ({
33
- path: config[k].replace(/\/$/, "")
34
- });
35
- alias.forEach(k => {
36
- build.onResolve({
37
- filter: new RegExp(`^.*${k}$`)
38
- }, args => main(k, args)), build.onResolve({
39
- filter: new RegExp(`^.*\\/${k}\\/.*$`)
40
- }, args => main(k, args));
41
- });
42
- }
43
- };
44
- };
@@ -1,83 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
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, {
15
- get: () => from[key],
16
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
- });
18
- return to;
19
- };
20
- 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);
32
- var evaluateAstNode_exports = {};
33
- __export(evaluateAstNode_exports, {
34
- evaluateAstNode: () => evaluateAstNode
35
- });
36
- module.exports = __toCommonJS(evaluateAstNode_exports);
37
- var t = __toESM(require("@babel/types"));
38
- function evaluateAstNode(exprNode, evalFn, shouldPrintDebug) {
39
- if (exprNode !== void 0) {
40
- if (exprNode === null) return !0;
41
- if (t.isJSXExpressionContainer(exprNode)) return evaluateAstNode(exprNode.expression);
42
- if (t.isObjectExpression(exprNode)) {
43
- const ret = {};
44
- for (let idx = -1, len = exprNode.properties.length; ++idx < len;) {
45
- const value = exprNode.properties[idx];
46
- if (!t.isObjectProperty(value)) throw new Error("evaluateAstNode can only evaluate object properties");
47
- let key;
48
- if (value.computed) {
49
- if (typeof evalFn != "function") throw new Error("evaluateAstNode does not support computed keys unless an eval function is provided");
50
- key = evaluateAstNode(value.key, evalFn);
51
- } else if (t.isIdentifier(value.key)) key = value.key.name;else if (t.isStringLiteral(value.key) || t.isNumericLiteral(value.key)) key = value.key.value;else throw new Error("Unsupported key type: " + value.key.type);
52
- if (typeof key != "string" && typeof key != "number") throw new Error("key must be either a string or a number");
53
- ret[key] = evaluateAstNode(value.value, evalFn);
54
- }
55
- return ret;
56
- }
57
- if (t.isArrayExpression(exprNode)) return exprNode.elements.map(x => evaluateAstNode(x, evalFn));
58
- if (t.isUnaryExpression(exprNode) && exprNode.operator === "-") {
59
- const ret = evaluateAstNode(exprNode.argument, evalFn);
60
- return ret == null ? null : -ret;
61
- }
62
- if (t.isTemplateLiteral(exprNode)) {
63
- if (typeof evalFn != "function") throw new Error("evaluateAstNode does not support template literals unless an eval function is provided");
64
- let ret = "";
65
- for (let idx = -1, len = exprNode.quasis.length; ++idx < len;) {
66
- const quasi = exprNode.quasis[idx],
67
- expr = exprNode.expressions[idx];
68
- ret += quasi.value.raw, expr && (ret += evaluateAstNode(expr, evalFn));
69
- }
70
- return ret;
71
- }
72
- if (t.isNullLiteral(exprNode)) return null;
73
- if (t.isNumericLiteral(exprNode) || t.isStringLiteral(exprNode) || t.isBooleanLiteral(exprNode)) return exprNode.value;
74
- if (t.isBinaryExpression(exprNode)) {
75
- if (exprNode.operator === "+") return evaluateAstNode(exprNode.left, evalFn) + evaluateAstNode(exprNode.right, evalFn);
76
- if (exprNode.operator === "-") return evaluateAstNode(exprNode.left, evalFn) - evaluateAstNode(exprNode.right, evalFn);
77
- if (exprNode.operator === "*") return evaluateAstNode(exprNode.left, evalFn) * evaluateAstNode(exprNode.right, evalFn);
78
- if (exprNode.operator === "/") return evaluateAstNode(exprNode.left, evalFn) / evaluateAstNode(exprNode.right, evalFn);
79
- }
80
- if (typeof evalFn != "function") throw new Error("evaluateAstNode does not support non-literal values unless an eval function is provided");
81
- return evalFn(exprNode);
82
- }
83
- }
@@ -1,120 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
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, {
15
- get: () => from[key],
16
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
- });
18
- return to;
19
- };
20
- 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);
32
- var extractHelpers_exports = {};
33
- __export(extractHelpers_exports, {
34
- attrStr: () => attrStr,
35
- findComponentName: () => findComponentName,
36
- getValidComponent: () => getValidComponent,
37
- getValidComponentsPaths: () => getValidComponentsPaths,
38
- getValidImport: () => getValidImport,
39
- isComponentPackage: () => isComponentPackage,
40
- isInsideComponentPackage: () => isInsideComponentPackage,
41
- isPresent: () => isPresent,
42
- isSimpleSpread: () => isSimpleSpread,
43
- isValidImport: () => isValidImport,
44
- isValidModule: () => isValidModule,
45
- isValidThemeHook: () => isValidThemeHook,
46
- objToStr: () => objToStr,
47
- ternaryStr: () => ternaryStr
48
- });
49
- module.exports = __toCommonJS(extractHelpers_exports);
50
- var import_node_path = require("node:path"),
51
- import_generator = __toESM(require("@babel/generator")),
52
- t = __toESM(require("@babel/types")),
53
- import_find_root = __toESM(require("find-root")),
54
- import_memoize = require("../helpers/memoize.cjs");
55
- function isPresent(input) {
56
- return input != null;
57
- }
58
- function isSimpleSpread(node) {
59
- return t.isIdentifier(node.argument) || t.isMemberExpression(node.argument);
60
- }
61
- const attrStr = attr => attr ? attr.type === "attr" ? getNameAttr(attr.value) : attr.type === "ternary" ? `...${ternaryStr(attr.value)}` : `${attr.type}(${objToStr(attr.value)})` : "",
62
- objToStr = (obj, spacer = ", ") => obj ? `{${Object.entries(obj).map(([k, v]) => `${k}:${Array.isArray(v) ? "[...]" : v && typeof v == "object" ? `${objToStr(v, ",")}` : JSON.stringify(v)}`).join(spacer)}}` : `${obj}`,
63
- getNameAttr = attr => t.isJSXSpreadAttribute(attr) ? `...${attr.argument.name}` : "name" in attr ? attr.name.name : `unknown-${attr.type}`,
64
- ternaryStr = x => ["ternary(", t.isIdentifier(x.test) ? x.test.name : t.isMemberExpression(x.test) ? [x.test.object.name, x.test.property.name] :
65
- // @ts-ignore
66
- (0, import_generator.default)(x.test).code, isFilledObj(x.consequent) ? ` ? ${objToStr(x.consequent)}` : " ? \u{1F6AB}", isFilledObj(x.alternate) ? ` : ${objToStr(x.alternate)}` : " : \u{1F6AB}", ")"].flat().join(""),
67
- isFilledObj = obj => obj && Object.keys(obj).length;
68
- function findComponentName(scope) {
69
- const componentName = "";
70
- let cur = scope.path;
71
- for (; cur.parentPath && !t.isProgram(cur.parentPath.parent);) cur = cur.parentPath;
72
- let node = cur.parent;
73
- if (t.isExportNamedDeclaration(node) && (node = node.declaration), t.isVariableDeclaration(node)) {
74
- const [dec] = node.declarations;
75
- if (t.isVariableDeclarator(dec) && t.isIdentifier(dec.id)) return dec.id.name;
76
- }
77
- return t.isFunctionDeclaration(node) ? node.id?.name : componentName;
78
- }
79
- function isValidThemeHook(props, jsxPath, n, sourcePath) {
80
- if (!t.isIdentifier(n.object) || !t.isIdentifier(n.property)) return !1;
81
- const binding = jsxPath.scope.getAllBindings()[n.object.name];
82
- if (!binding?.path || !binding.path.isVariableDeclarator()) return !1;
83
- const init = binding.path.node.init;
84
- if (!init || !t.isCallExpression(init) || !t.isIdentifier(init.callee) || init.callee.name !== "useTheme") return !1;
85
- const importNode = binding.scope.getBinding("useTheme")?.path.parent;
86
- return !(!t.isImportDeclaration(importNode) || sourcePath && !isValidImport(props, sourcePath));
87
- }
88
- const isInsideComponentPackage = (props, moduleName) => getValidComponentsPaths(props).some(path => moduleName.startsWith(path)),
89
- isComponentPackage = (props, srcName) => getValidComponentsPaths(props).some(path => srcName.startsWith(path));
90
- function getValidComponent(props, moduleName, componentName) {
91
- if (componentName[0].toUpperCase() !== componentName[0]) return !1;
92
- for (const loaded of props.allLoadedComponents) {
93
- if (!loaded) continue;
94
- const isInModule = moduleName === "*" || moduleName.startsWith(loaded.moduleName),
95
- foundComponent = loaded.nameToInfo[componentName];
96
- if (isInModule && foundComponent) return foundComponent;
97
- }
98
- return null;
99
- }
100
- const isValidModule = (props, moduleName) => {
101
- if (typeof moduleName != "string") throw new Error("No module name");
102
- const isLocal = moduleName.startsWith(".");
103
- return {
104
- isLocal,
105
- isValid: isLocal ? isInsideComponentPackage(props, moduleName) : isComponentPackage(props, moduleName)
106
- };
107
- },
108
- getValidImport = (props, moduleName, componentName) => {
109
- const {
110
- isValid,
111
- isLocal
112
- } = isValidModule(props, moduleName);
113
- return !isValid || !componentName ? null : getValidComponent(props, isLocal ? "*" : moduleName, componentName) || null;
114
- },
115
- isValidImport = (props, moduleName, componentName) => componentName ? !!getValidImport(props, moduleName, componentName) : isValidModule(props, moduleName).isValid,
116
- getValidComponentPackages = (0, import_memoize.memoize)(props => [... /* @__PURE__ */new Set(["@tamagui/core", "tamagui", ...(props.components || [])])]),
117
- getValidComponentsPaths = (0, import_memoize.memoize)(props => getValidComponentPackages(props).flatMap(pkg => {
118
- const root = (0, import_find_root.default)(pkg);
119
- return [(0, import_node_path.basename)(root), pkg].filter(Boolean);
120
- }));
@@ -1,129 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
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, {
15
- get: () => from[key],
16
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
- });
18
- return to;
19
- };
20
- 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);
32
- var extractMediaStyle_exports = {};
33
- __export(extractMediaStyle_exports, {
34
- extractMediaStyle: () => extractMediaStyle,
35
- isValidMediaCall: () => isValidMediaCall
36
- });
37
- module.exports = __toCommonJS(extractMediaStyle_exports);
38
- var t = __toESM(require("@babel/types")),
39
- core = __toESM(require("@tamagui/core")),
40
- import_requireTamaguiCore = require("../helpers/requireTamaguiCore.cjs"),
41
- import_extractHelpers = require("./extractHelpers.cjs");
42
- function extractMediaStyle(props, ternary, jsxPath, tamaguiConfig, sourcePath, importance = 0, shouldPrintDebug = !1) {
43
- const {
44
- getStylesAtomic,
45
- mediaObjectToString
46
- } = (0, import_requireTamaguiCore.requireTamaguiCore)("web"),
47
- mt = getMediaQueryTernary(props, ternary, jsxPath, sourcePath);
48
- if (!mt) return null;
49
- const {
50
- key
51
- } = mt;
52
- if (!tamaguiConfig.media[key]) return console.error(`Media query "${key}" not found: ${Object.keys(tamaguiConfig.media)}`), null;
53
- const getStyleObj = (styleObj, negate = !1) => styleObj ? {
54
- styleObj,
55
- negate
56
- } : null,
57
- styleOpts = [getStyleObj(ternary.consequent, !1), getStyleObj(ternary.alternate, !0)].filter(import_extractHelpers.isPresent);
58
- if (shouldPrintDebug && !styleOpts.length) return console.info(" media query, no styles?"), null;
59
- const mediaKeyPrecendence = Object.keys(tamaguiConfig.media).reduce((acc, cur, i) => (acc[cur] = new Array(importance + 1).fill(":root").join(""), acc), {});
60
- let mediaStyles = [];
61
- for (const {
62
- styleObj,
63
- negate
64
- } of styleOpts) {
65
- const singleMediaStyles = getStylesAtomic(styleObj).map(style => {
66
- const mediaStyle = core.createMediaStyle(style, key, tamaguiConfig.media, !0, negate),
67
- className = `.${mediaStyle[core.StyleObjectIdentifier]}`;
68
- return {
69
- ...mediaStyle,
70
- className
71
- };
72
- });
73
- shouldPrintDebug === "verbose" && console.info(" media styles:", importance, styleObj, singleMediaStyles.map(x => x[core.StyleObjectIdentifier]).join(", ")), mediaStyles = [...mediaStyles, ...singleMediaStyles];
74
- }
75
- return ternary.remove(), {
76
- mediaStyles,
77
- ternaryWithoutMedia: mt.ternaryWithoutMedia
78
- };
79
- }
80
- function getMediaQueryTernary(props, ternary, jsxPath, sourcePath) {
81
- if (t.isLogicalExpression(ternary.test) && ternary.test.operator === "&&") {
82
- const mediaLeft = getMediaInfoFromExpression(props, ternary.test.left, jsxPath, sourcePath, ternary.inlineMediaQuery);
83
- if (mediaLeft) return {
84
- ...mediaLeft,
85
- ternaryWithoutMedia: {
86
- ...ternary,
87
- test: ternary.test.right
88
- }
89
- };
90
- }
91
- const result = getMediaInfoFromExpression(props, ternary.test, jsxPath, sourcePath, ternary.inlineMediaQuery);
92
- return result ? {
93
- ...result,
94
- ternaryWithoutMedia: null
95
- } : null;
96
- }
97
- function getMediaInfoFromExpression(props, test, jsxPath, sourcePath, inlineMediaQuery) {
98
- if (inlineMediaQuery) return {
99
- key: inlineMediaQuery,
100
- bindingName: inlineMediaQuery
101
- };
102
- if (t.isMemberExpression(test) && t.isIdentifier(test.object) && t.isIdentifier(test.property)) {
103
- const name = test.object.name,
104
- key = test.property.name,
105
- binding = jsxPath.scope.getAllBindings()[name];
106
- if (!binding) return !1;
107
- const bindingNode = binding.path?.node;
108
- return !t.isVariableDeclarator(bindingNode) || !bindingNode.init || !isValidMediaCall(props, jsxPath, bindingNode.init, sourcePath) ? !1 : {
109
- key,
110
- bindingName: name
111
- };
112
- }
113
- if (t.isIdentifier(test)) {
114
- const key = test.name,
115
- node = jsxPath.scope.getBinding(test.name)?.path?.node;
116
- return !t.isVariableDeclarator(node) || !node.init || !isValidMediaCall(props, jsxPath, node.init, sourcePath) ? !1 : {
117
- key,
118
- bindingName: key
119
- };
120
- }
121
- return null;
122
- }
123
- function isValidMediaCall(props, jsxPath, init, sourcePath) {
124
- if (!init || !t.isCallExpression(init) || !t.isIdentifier(init.callee) || init.callee.name !== "useMedia") return !1;
125
- const mediaBinding = jsxPath.scope.getAllBindings().useMedia;
126
- if (!mediaBinding) return !1;
127
- const useMediaImport = mediaBinding.path.parent;
128
- return !(!t.isImportDeclaration(useMediaImport) || !(0, import_extractHelpers.isValidImport)(props, sourcePath));
129
- }