@tamagui/static 1.61.3 → 1.62.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/constants.js +8 -19
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/constants.native.js +43 -0
- package/dist/cjs/constants.native.js.map +6 -0
- package/dist/cjs/extractor/accessSafe.js +8 -14
- package/dist/cjs/extractor/accessSafe.js.map +1 -1
- package/dist/cjs/extractor/accessSafe.native.js +52 -0
- package/dist/cjs/extractor/accessSafe.native.js.map +6 -0
- package/dist/cjs/extractor/babelParse.js +9 -17
- package/dist/cjs/extractor/babelParse.js.map +1 -1
- package/dist/cjs/extractor/babelParse.native.js +65 -0
- package/dist/cjs/extractor/babelParse.native.js.map +6 -0
- package/dist/cjs/extractor/buildClassName.js +44 -67
- package/dist/cjs/extractor/buildClassName.js.map +1 -1
- package/dist/cjs/extractor/buildClassName.native.js +78 -0
- package/dist/cjs/extractor/buildClassName.native.js.map +6 -0
- package/dist/cjs/extractor/bundle.js +44 -79
- package/dist/cjs/extractor/bundle.js.map +1 -1
- package/dist/cjs/extractor/bundle.native.js +118 -0
- package/dist/cjs/extractor/bundle.native.js.map +6 -0
- package/dist/cjs/extractor/bundleConfig.js +107 -204
- package/dist/cjs/extractor/bundleConfig.js.map +1 -1
- package/dist/cjs/extractor/bundleConfig.native.js +316 -0
- package/dist/cjs/extractor/bundleConfig.native.js.map +6 -0
- package/dist/cjs/extractor/createEvaluator.js +13 -41
- package/dist/cjs/extractor/createEvaluator.js.map +1 -1
- package/dist/cjs/extractor/createEvaluator.native.js +60 -0
- package/dist/cjs/extractor/createEvaluator.native.js.map +6 -0
- package/dist/cjs/extractor/createExtractor.js +497 -1128
- package/dist/cjs/extractor/createExtractor.js.map +2 -2
- package/dist/cjs/extractor/createExtractor.native.js +1067 -0
- package/dist/cjs/extractor/createExtractor.native.js.map +6 -0
- package/dist/cjs/extractor/ensureImportingConcat.js +12 -23
- package/dist/cjs/extractor/ensureImportingConcat.js.map +1 -1
- package/dist/cjs/extractor/ensureImportingConcat.native.js +55 -0
- package/dist/cjs/extractor/ensureImportingConcat.native.js.map +6 -0
- package/dist/cjs/extractor/esbuildAliasPlugin.js +40 -0
- package/dist/cjs/extractor/esbuildAliasPlugin.js.map +6 -0
- package/dist/cjs/extractor/esbuildAliasPlugin.native.js +41 -0
- package/dist/cjs/extractor/esbuildAliasPlugin.native.js.map +6 -0
- package/dist/cjs/extractor/evaluateAstNode.js +67 -95
- package/dist/cjs/extractor/evaluateAstNode.js.map +1 -1
- package/dist/cjs/extractor/evaluateAstNode.native.js +104 -0
- package/dist/cjs/extractor/evaluateAstNode.native.js.map +6 -0
- package/dist/cjs/extractor/extractHelpers.js +43 -123
- package/dist/cjs/extractor/extractHelpers.js.map +1 -1
- package/dist/cjs/extractor/extractHelpers.native.js +131 -0
- package/dist/cjs/extractor/extractHelpers.native.js.map +6 -0
- package/dist/cjs/extractor/extractMediaStyle.js +42 -110
- package/dist/cjs/extractor/extractMediaStyle.js.map +1 -1
- package/dist/cjs/extractor/extractMediaStyle.native.js +127 -0
- package/dist/cjs/extractor/extractMediaStyle.native.js.map +6 -0
- package/dist/cjs/extractor/extractToClassNames.js +134 -254
- package/dist/cjs/extractor/extractToClassNames.js.map +1 -1
- package/dist/cjs/extractor/extractToClassNames.native.js +304 -0
- package/dist/cjs/extractor/extractToClassNames.native.js.map +6 -0
- package/dist/cjs/extractor/findTopmostFunction.js +9 -17
- package/dist/cjs/extractor/findTopmostFunction.js.map +1 -1
- package/dist/cjs/extractor/findTopmostFunction.native.js +37 -0
- package/dist/cjs/extractor/findTopmostFunction.native.js.map +6 -0
- package/dist/cjs/extractor/generateTamaguiStudioConfig.js +34 -78
- package/dist/cjs/extractor/generateTamaguiStudioConfig.js.map +1 -1
- package/dist/cjs/extractor/generateTamaguiStudioConfig.native.js +120 -0
- package/dist/cjs/extractor/generateTamaguiStudioConfig.native.js.map +6 -0
- package/dist/cjs/extractor/generatedUid.js +14 -28
- package/dist/cjs/extractor/generatedUid.js.map +1 -1
- package/dist/cjs/extractor/generatedUid.native.js +47 -0
- package/dist/cjs/extractor/generatedUid.native.js.map +6 -0
- package/dist/cjs/extractor/getPrefixLogs.js +6 -10
- package/dist/cjs/extractor/getPrefixLogs.js.map +1 -1
- package/dist/cjs/extractor/getPrefixLogs.native.js +29 -0
- package/dist/cjs/extractor/getPrefixLogs.native.js.map +6 -0
- package/dist/cjs/extractor/getPropValueFromAttributes.js +21 -42
- package/dist/cjs/extractor/getPropValueFromAttributes.js.map +1 -1
- package/dist/cjs/extractor/getPropValueFromAttributes.native.js +70 -0
- package/dist/cjs/extractor/getPropValueFromAttributes.native.js.map +6 -0
- package/dist/cjs/extractor/getSourceModule.js +23 -57
- package/dist/cjs/extractor/getSourceModule.js.map +1 -1
- package/dist/cjs/extractor/getSourceModule.native.js +71 -0
- package/dist/cjs/extractor/getSourceModule.native.js.map +6 -0
- package/dist/cjs/extractor/getStaticBindingsForScope.js +42 -116
- package/dist/cjs/extractor/getStaticBindingsForScope.js.map +1 -1
- package/dist/cjs/extractor/getStaticBindingsForScope.native.js +153 -0
- package/dist/cjs/extractor/getStaticBindingsForScope.native.js.map +6 -0
- package/dist/cjs/extractor/getTamaguiConfigPathFromOptionsConfig.js +6 -13
- package/dist/cjs/extractor/getTamaguiConfigPathFromOptionsConfig.js.map +1 -1
- package/dist/cjs/extractor/getTamaguiConfigPathFromOptionsConfig.native.js +29 -0
- package/dist/cjs/extractor/getTamaguiConfigPathFromOptionsConfig.native.js.map +6 -0
- package/dist/cjs/extractor/hoistClassNames.js +16 -30
- package/dist/cjs/extractor/hoistClassNames.js.map +1 -1
- package/dist/cjs/extractor/hoistClassNames.native.js +66 -0
- package/dist/cjs/extractor/hoistClassNames.native.js.map +6 -0
- package/dist/cjs/extractor/literalToAst.js +32 -53
- package/dist/cjs/extractor/literalToAst.js.map +1 -1
- package/dist/cjs/extractor/literalToAst.native.js +96 -0
- package/dist/cjs/extractor/literalToAst.native.js.map +6 -0
- package/dist/cjs/extractor/loadFile.js +4 -11
- package/dist/cjs/extractor/loadFile.js.map +1 -1
- package/dist/cjs/extractor/loadFile.native.js +15 -0
- package/dist/cjs/extractor/loadFile.native.js.map +6 -0
- package/dist/cjs/extractor/loadTamagui.js +76 -147
- package/dist/cjs/extractor/loadTamagui.js.map +1 -1
- package/dist/cjs/extractor/loadTamagui.native.js +240 -0
- package/dist/cjs/extractor/loadTamagui.native.js.map +6 -0
- package/dist/cjs/extractor/logLines.js +12 -22
- package/dist/cjs/extractor/logLines.js.map +1 -1
- package/dist/cjs/extractor/logLines.native.js +35 -0
- package/dist/cjs/extractor/logLines.native.js.map +6 -0
- package/dist/cjs/extractor/normalizeTernaries.js +27 -54
- package/dist/cjs/extractor/normalizeTernaries.js.map +1 -1
- package/dist/cjs/extractor/normalizeTernaries.native.js +64 -0
- package/dist/cjs/extractor/normalizeTernaries.native.js.map +6 -0
- package/dist/cjs/extractor/propsToFontFamilyCache.js +6 -11
- package/dist/cjs/extractor/propsToFontFamilyCache.js.map +1 -1
- package/dist/cjs/extractor/propsToFontFamilyCache.native.js +41 -0
- package/dist/cjs/extractor/propsToFontFamilyCache.native.js.map +6 -0
- package/dist/cjs/extractor/removeUnusedHooks.js +25 -56
- package/dist/cjs/extractor/removeUnusedHooks.js.map +1 -1
- package/dist/cjs/extractor/removeUnusedHooks.native.js +80 -0
- package/dist/cjs/extractor/removeUnusedHooks.native.js.map +6 -0
- package/dist/cjs/extractor/timer.js +9 -20
- package/dist/cjs/extractor/timer.js.map +1 -1
- package/dist/cjs/extractor/timer.native.js +43 -0
- package/dist/cjs/extractor/timer.native.js.map +6 -0
- package/dist/cjs/extractor/validHTMLAttributes.js +51 -55
- package/dist/cjs/extractor/validHTMLAttributes.js.map +1 -1
- package/dist/cjs/extractor/validHTMLAttributes.native.js +73 -0
- package/dist/cjs/extractor/validHTMLAttributes.native.js.map +6 -0
- package/dist/cjs/getPragmaOptions.js +12 -38
- package/dist/cjs/getPragmaOptions.js.map +1 -1
- package/dist/cjs/getPragmaOptions.native.js +43 -0
- package/dist/cjs/getPragmaOptions.native.js.map +6 -0
- package/dist/cjs/helpers/memoize.js +10 -19
- package/dist/cjs/helpers/memoize.js.map +1 -1
- package/dist/cjs/helpers/memoize.native.js +38 -0
- package/dist/cjs/helpers/memoize.native.js.map +6 -0
- package/dist/cjs/helpers/requireTamaguiCore.js +29 -0
- package/dist/cjs/helpers/requireTamaguiCore.js.map +6 -0
- package/dist/cjs/helpers/requireTamaguiCore.native.js +30 -0
- package/dist/cjs/helpers/requireTamaguiCore.native.js.map +6 -0
- package/dist/cjs/index.js +7 -35
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +21 -0
- package/dist/cjs/index.native.js.map +6 -0
- package/dist/cjs/registerRequire.js +93 -0
- package/dist/cjs/registerRequire.js.map +6 -0
- package/dist/cjs/registerRequire.native.js +94 -0
- package/dist/cjs/registerRequire.native.js.map +6 -0
- package/dist/cjs/setup.js +2 -0
- package/dist/cjs/setup.js.map +6 -0
- package/dist/cjs/setup.native.js +3 -0
- package/dist/cjs/setup.native.js.map +6 -0
- package/dist/cjs/static.js +41 -0
- package/dist/cjs/static.js.map +6 -0
- package/dist/cjs/static.native.js +42 -0
- package/dist/cjs/static.native.js.map +6 -0
- package/dist/cjs/types.js +3 -6
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/types.native.js +15 -0
- package/dist/cjs/types.native.js.map +6 -0
- package/dist/cjs/webpackPlugin.js +5 -9
- package/dist/cjs/webpackPlugin.js.map +1 -1
- package/dist/cjs/webpackPlugin.native.js +32 -0
- package/dist/cjs/webpackPlugin.native.js.map +6 -0
- package/dist/esm/constants.js +1 -6
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/extractor/accessSafe.js +1 -1
- package/dist/esm/extractor/accessSafe.js.map +1 -1
- package/dist/esm/extractor/babelParse.js +2 -4
- package/dist/esm/extractor/babelParse.js.map +1 -1
- package/dist/esm/extractor/buildClassName.js +37 -54
- package/dist/esm/extractor/buildClassName.js.map +1 -1
- package/dist/esm/extractor/bundle.js +36 -60
- package/dist/esm/extractor/bundle.js.map +1 -1
- package/dist/esm/extractor/bundleConfig.js +100 -180
- package/dist/esm/extractor/bundleConfig.js.map +1 -1
- package/dist/esm/extractor/createEvaluator.js +5 -22
- package/dist/esm/extractor/createEvaluator.js.map +1 -1
- package/dist/esm/extractor/createExtractor.js +484 -1098
- package/dist/esm/extractor/createExtractor.js.map +2 -2
- package/dist/esm/extractor/ensureImportingConcat.js +5 -10
- package/dist/esm/extractor/ensureImportingConcat.js.map +1 -1
- package/dist/esm/extractor/esbuildAliasPlugin.js +20 -0
- package/dist/esm/extractor/esbuildAliasPlugin.js.map +6 -0
- package/dist/esm/extractor/evaluateAstNode.js +60 -82
- package/dist/esm/extractor/evaluateAstNode.js.map +1 -1
- package/dist/esm/extractor/extractHelpers.js +35 -105
- package/dist/esm/extractor/extractHelpers.js.map +1 -1
- package/dist/esm/extractor/extractMediaStyle.js +35 -97
- package/dist/esm/extractor/extractMediaStyle.js.map +1 -1
- package/dist/esm/extractor/extractToClassNames.js +126 -224
- package/dist/esm/extractor/extractToClassNames.js.map +1 -1
- package/dist/esm/extractor/findTopmostFunction.js +4 -8
- package/dist/esm/extractor/findTopmostFunction.js.map +1 -1
- package/dist/esm/extractor/generateTamaguiStudioConfig.js +25 -59
- package/dist/esm/extractor/generateTamaguiStudioConfig.js.map +1 -1
- package/dist/esm/extractor/generatedUid.js +7 -15
- package/dist/esm/extractor/generatedUid.js.map +1 -1
- package/dist/esm/extractor/getPrefixLogs.js +1 -1
- package/dist/esm/extractor/getPrefixLogs.js.map +1 -1
- package/dist/esm/extractor/getPropValueFromAttributes.js +13 -26
- package/dist/esm/extractor/getPropValueFromAttributes.js.map +1 -1
- package/dist/esm/extractor/getSourceModule.js +16 -44
- package/dist/esm/extractor/getSourceModule.js.map +1 -1
- package/dist/esm/extractor/getStaticBindingsForScope.js +34 -98
- package/dist/esm/extractor/getStaticBindingsForScope.js.map +1 -1
- package/dist/esm/extractor/getTamaguiConfigPathFromOptionsConfig.js +1 -4
- package/dist/esm/extractor/getTamaguiConfigPathFromOptionsConfig.js.map +1 -1
- package/dist/esm/extractor/hoistClassNames.js +9 -17
- package/dist/esm/extractor/hoistClassNames.js.map +1 -1
- package/dist/esm/extractor/literalToAst.js +25 -40
- package/dist/esm/extractor/literalToAst.js.map +1 -1
- package/dist/esm/extractor/loadFile.js +4 -10
- package/dist/esm/extractor/loadFile.js.map +1 -1
- package/dist/esm/extractor/loadTamagui.js +69 -124
- package/dist/esm/extractor/loadTamagui.js.map +1 -1
- package/dist/esm/extractor/logLines.js +7 -13
- package/dist/esm/extractor/logLines.js.map +1 -1
- package/dist/esm/extractor/normalizeTernaries.js +19 -38
- package/dist/esm/extractor/normalizeTernaries.js.map +1 -1
- package/dist/esm/extractor/propsToFontFamilyCache.js +1 -2
- package/dist/esm/extractor/propsToFontFamilyCache.js.map +1 -1
- package/dist/esm/extractor/removeUnusedHooks.js +18 -43
- package/dist/esm/extractor/removeUnusedHooks.js.map +1 -1
- package/dist/esm/extractor/timer.js +4 -11
- package/dist/esm/extractor/timer.js.map +1 -1
- package/dist/esm/extractor/validHTMLAttributes.js +46 -46
- package/dist/esm/getPragmaOptions.js +7 -29
- package/dist/esm/getPragmaOptions.js.map +1 -1
- package/dist/esm/helpers/memoize.js +5 -10
- package/dist/esm/helpers/memoize.js.map +1 -1
- package/dist/esm/helpers/requireTamaguiCore.js +9 -0
- package/dist/esm/helpers/requireTamaguiCore.js.map +6 -0
- package/dist/esm/index.js +2 -14
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/registerRequire.js +73 -0
- package/dist/esm/registerRequire.js.map +6 -0
- package/dist/esm/setup.js +2 -0
- package/dist/esm/setup.js.map +6 -0
- package/dist/esm/static.js +15 -0
- package/dist/esm/static.js.map +6 -0
- package/package.json +15 -15
- package/src/extractor/bundle.ts +12 -10
- package/src/extractor/bundleConfig.ts +25 -20
- package/src/extractor/createEvaluator.ts +0 -16
- package/src/extractor/createExtractor.ts +12 -9
- package/src/extractor/esbuildAliasPlugin.ts +40 -0
- package/src/extractor/extractMediaStyle.ts +3 -5
- package/src/extractor/extractToClassNames.ts +2 -1
- package/src/extractor/generateTamaguiStudioConfig.ts +3 -1
- package/src/extractor/loadTamagui.ts +26 -22
- package/src/helpers/requireTamaguiCore.ts +13 -0
- package/src/index.ts +2 -9
- package/src/registerRequire.ts +156 -0
- package/src/setup.ts +1 -0
- package/src/static.ts +9 -0
- package/src/types.ts +3 -1
- package/types/extractor/bundle.d.ts +2 -2
- package/types/extractor/bundle.d.ts.map +1 -1
- package/types/extractor/bundleConfig.d.ts.map +1 -1
- package/types/extractor/createEvaluator.d.ts.map +1 -1
- package/types/extractor/createExtractor.d.ts +1 -1
- package/types/extractor/createExtractor.d.ts.map +1 -1
- package/types/extractor/esbuildAliasPlugin.d.ts +18 -0
- package/types/extractor/esbuildAliasPlugin.d.ts.map +1 -0
- package/types/extractor/extractMediaStyle.d.ts +1 -1
- package/types/extractor/extractMediaStyle.d.ts.map +1 -1
- package/types/extractor/extractToClassNames.d.ts.map +1 -1
- package/types/extractor/generateTamaguiStudioConfig.d.ts.map +1 -1
- package/types/extractor/loadTamagui.d.ts +2 -2
- package/types/extractor/loadTamagui.d.ts.map +1 -1
- package/types/helpers/requireTamaguiCore.d.ts +3 -0
- package/types/helpers/requireTamaguiCore.d.ts.map +1 -0
- package/types/index.d.ts +2 -9
- package/types/index.d.ts.map +1 -1
- package/types/registerRequire.d.ts +7 -0
- package/types/registerRequire.d.ts.map +1 -0
- package/types/setup.d.ts +2 -0
- package/types/setup.d.ts.map +1 -0
- package/types/static.d.ts +10 -0
- package/types/static.d.ts.map +1 -0
- package/types/types.d.ts +2 -1
- package/types/types.d.ts.map +1 -1
- package/dist/cjs/require.js +0 -125
- package/dist/cjs/require.js.map +0 -6
- package/dist/esm/require.js +0 -100
- package/dist/esm/require.js.map +0 -6
- package/src/require.ts +0 -150
- package/types/require.d.ts +0 -3
- package/types/require.d.ts.map +0 -1
@@ -0,0 +1,104 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __create = Object.create;
|
3
|
+
var __defProp = Object.defineProperty;
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
6
|
+
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
7
|
+
var __export = (target, all) => {
|
8
|
+
for (var name in all)
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
10
|
+
}, __copyProps = (to, from, except, desc) => {
|
11
|
+
if (from && typeof from == "object" || typeof from == "function")
|
12
|
+
for (let key of __getOwnPropNames(from))
|
13
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
14
|
+
return to;
|
15
|
+
};
|
16
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
17
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
18
|
+
// file that has been converted to a CommonJS file using a Babel-
|
19
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
20
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
21
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
22
|
+
mod
|
23
|
+
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
24
|
+
var evaluateAstNode_exports = {};
|
25
|
+
__export(evaluateAstNode_exports, {
|
26
|
+
evaluateAstNode: () => evaluateAstNode
|
27
|
+
});
|
28
|
+
module.exports = __toCommonJS(evaluateAstNode_exports);
|
29
|
+
var t = __toESM(require("@babel/types"));
|
30
|
+
function evaluateAstNode(exprNode, evalFn, shouldPrintDebug) {
|
31
|
+
if (exprNode !== void 0) {
|
32
|
+
if (exprNode === null)
|
33
|
+
return !0;
|
34
|
+
if (t.isJSXExpressionContainer(exprNode))
|
35
|
+
return evaluateAstNode(exprNode.expression);
|
36
|
+
if (t.isObjectExpression(exprNode)) {
|
37
|
+
const ret = {};
|
38
|
+
for (let idx = -1, len = exprNode.properties.length; ++idx < len; ) {
|
39
|
+
const value = exprNode.properties[idx];
|
40
|
+
if (!t.isObjectProperty(value))
|
41
|
+
throw new Error("evaluateAstNode can only evaluate object properties");
|
42
|
+
let key;
|
43
|
+
if (value.computed) {
|
44
|
+
if (typeof evalFn != "function")
|
45
|
+
throw new Error(
|
46
|
+
"evaluateAstNode does not support computed keys unless an eval function is provided"
|
47
|
+
);
|
48
|
+
key = evaluateAstNode(value.key, evalFn);
|
49
|
+
} else if (t.isIdentifier(value.key))
|
50
|
+
key = value.key.name;
|
51
|
+
else if (t.isStringLiteral(value.key) || t.isNumericLiteral(value.key))
|
52
|
+
key = value.key.value;
|
53
|
+
else
|
54
|
+
throw new Error("Unsupported key type: " + value.key.type);
|
55
|
+
if (typeof key != "string" && typeof key != "number")
|
56
|
+
throw new Error("key must be either a string or a number");
|
57
|
+
ret[key] = evaluateAstNode(value.value, evalFn);
|
58
|
+
}
|
59
|
+
return ret;
|
60
|
+
}
|
61
|
+
if (t.isArrayExpression(exprNode))
|
62
|
+
return exprNode.elements.map((x) => evaluateAstNode(x, evalFn));
|
63
|
+
if (t.isUnaryExpression(exprNode) && exprNode.operator === "-") {
|
64
|
+
const ret = evaluateAstNode(exprNode.argument, evalFn);
|
65
|
+
return ret == null ? null : -ret;
|
66
|
+
}
|
67
|
+
if (t.isTemplateLiteral(exprNode)) {
|
68
|
+
if (typeof evalFn != "function")
|
69
|
+
throw new Error(
|
70
|
+
"evaluateAstNode does not support template literals unless an eval function is provided"
|
71
|
+
);
|
72
|
+
let ret = "";
|
73
|
+
for (let idx = -1, len = exprNode.quasis.length; ++idx < len; ) {
|
74
|
+
const quasi = exprNode.quasis[idx], expr = exprNode.expressions[idx];
|
75
|
+
ret += quasi.value.raw, expr && (ret += evaluateAstNode(expr, evalFn));
|
76
|
+
}
|
77
|
+
return ret;
|
78
|
+
}
|
79
|
+
if (t.isNullLiteral(exprNode))
|
80
|
+
return null;
|
81
|
+
if (t.isNumericLiteral(exprNode) || t.isStringLiteral(exprNode) || t.isBooleanLiteral(exprNode))
|
82
|
+
return exprNode.value;
|
83
|
+
if (t.isBinaryExpression(exprNode)) {
|
84
|
+
if (exprNode.operator === "+")
|
85
|
+
return evaluateAstNode(exprNode.left, evalFn) + evaluateAstNode(exprNode.right, evalFn);
|
86
|
+
if (exprNode.operator === "-")
|
87
|
+
return evaluateAstNode(exprNode.left, evalFn) - evaluateAstNode(exprNode.right, evalFn);
|
88
|
+
if (exprNode.operator === "*")
|
89
|
+
return evaluateAstNode(exprNode.left, evalFn) * evaluateAstNode(exprNode.right, evalFn);
|
90
|
+
if (exprNode.operator === "/")
|
91
|
+
return evaluateAstNode(exprNode.left, evalFn) / evaluateAstNode(exprNode.right, evalFn);
|
92
|
+
}
|
93
|
+
if (typeof evalFn != "function")
|
94
|
+
throw new Error(
|
95
|
+
"evaluateAstNode does not support non-literal values unless an eval function is provided"
|
96
|
+
);
|
97
|
+
return evalFn(exprNode);
|
98
|
+
}
|
99
|
+
}
|
100
|
+
// Annotate the CommonJS export names for ESM import in node:
|
101
|
+
0 && (module.exports = {
|
102
|
+
evaluateAstNode
|
103
|
+
});
|
104
|
+
//# sourceMappingURL=evaluateAstNode.js.map
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../src/extractor/evaluateAstNode.ts"],
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAmB;AAEZ,SAAS,gBACd,UACA,QACA,kBACK;AACL,MAAI,aAAa,QAKjB;AAAA,QAAI,aAAa;AACf,aAAO;AAGT,QAAI,EAAE,yBAAyB,QAAQ;AACrC,aAAO,gBAAgB,SAAS,UAAU;AAI5C,QAAI,EAAE,mBAAmB,QAAQ,GAAG;AAClC,YAAM,MAA2B,CAAC;AAClC,eAAS,MAAM,IAAI,MAAM,SAAS,WAAW,QAAQ,EAAE,MAAM,OAAO;AAClE,cAAM,QAAQ,SAAS,WAAW,GAAG;AAErC,YAAI,CAAC,EAAE,iBAAiB,KAAK;AAC3B,gBAAM,IAAI,MAAM,qDAAqD;AAGvE,YAAI;AACJ,YAAI,MAAM,UAAU;AAClB,cAAI,OAAO,UAAW;AACpB,kBAAM,IAAI;AAAA,cACR;AAAA,YACF;AAEF,gBAAM,gBAAgB,MAAM,KAAK,MAAM;AAAA,QACzC,WAAW,EAAE,aAAa,MAAM,GAAG;AACjC,gBAAM,MAAM,IAAI;AAAA,iBACP,EAAE,gBAAgB,MAAM,GAAG,KAAK,EAAE,iBAAiB,MAAM,GAAG;AACrE,gBAAM,MAAM,IAAI;AAAA;AAEhB,gBAAM,IAAI,MAAM,2BAA2B,MAAM,IAAI,IAAI;AAG3D,YAAI,OAAO,OAAQ,YAAY,OAAO,OAAQ;AAC5C,gBAAM,IAAI,MAAM,yCAAyC;AAG3D,YAAI,GAAG,IAAI,gBAAgB,MAAM,OAAO,MAAM;AAAA,MAChD;AACA,aAAO;AAAA,IACT;AAEA,QAAI,EAAE,kBAAkB,QAAQ;AAC9B,aAAO,SAAS,SAAS,IAAI,CAAC,MACrB,gBAAgB,GAAU,MAAM,CACxC;AAGH,QAAI,EAAE,kBAAkB,QAAQ,KAAK,SAAS,aAAa,KAAK;AAC9D,YAAM,MAAM,gBAAgB,SAAS,UAAU,MAAM;AACrD,aAAI,OAAO,OACF,OAEF,CAAC;AAAA,IACV;AAEA,QAAI,EAAE,kBAAkB,QAAQ,GAAG;AACjC,UAAI,OAAO,UAAW;AACpB,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAGF,UAAI,MAAM;AACV,eAAS,MAAM,IAAI,MAAM,SAAS,OAAO,QAAQ,EAAE,MAAM,OAAO;AAC9D,cAAM,QAAQ,SAAS,OAAO,GAAG,GAC3B,OAAO,SAAS,YAAY,GAAG;AACrC,eAAO,MAAM,MAAM,KACf,SACF,OAAO,gBAAgB,MAAM,MAAM;AAAA,MAEvC;AACA,aAAO;AAAA,IACT;AAIA,QAAI,EAAE,cAAc,QAAQ;AAC1B,aAAO;AAGT,QACE,EAAE,iBAAiB,QAAQ,KAC3B,EAAE,gBAAgB,QAAQ,KAC1B,EAAE,iBAAiB,QAAQ;AAI3B,aAAO,SAAS;AAGlB,QAAI,EAAE,mBAAmB,QAAQ,GAAG;AAClC,UAAI,SAAS,aAAa;AACxB,eACE,gBAAgB,SAAS,MAAM,MAAM,IAAI,gBAAgB,SAAS,OAAO,MAAM;AAE5E,UAAI,SAAS,aAAa;AAC/B,eACE,gBAAgB,SAAS,MAAM,MAAM,IAAI,gBAAgB,SAAS,OAAO,MAAM;AAE5E,UAAI,SAAS,aAAa;AAC/B,eACE,gBAAgB,SAAS,MAAM,MAAM,IAAI,gBAAgB,SAAS,OAAO,MAAM;AAE5E,UAAI,SAAS,aAAa;AAC/B,eACE,gBAAgB,SAAS,MAAM,MAAM,IAAI,gBAAgB,SAAS,OAAO,MAAM;AAAA,IAGrF;AAGA,QAAI,OAAO,UAAW;AACpB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAGF,WAAO,OAAO,QAAQ;AAAA;AACxB;",
|
5
|
+
"names": []
|
6
|
+
}
|
@@ -1,20 +1,15 @@
|
|
1
|
-
"use strict";
|
2
1
|
var __create = Object.create;
|
3
2
|
var __defProp = Object.defineProperty;
|
4
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
5
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
8
6
|
var __export = (target, all) => {
|
9
7
|
for (var name in all)
|
10
|
-
__defProp(target, name, { get: all[name], enumerable:
|
11
|
-
}
|
12
|
-
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
9
|
+
}, __copyProps = (to, from, except, desc) => {
|
10
|
+
if (from && typeof from == "object" || typeof from == "function")
|
14
11
|
for (let key of __getOwnPropNames(from))
|
15
|
-
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
17
|
-
}
|
12
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
18
13
|
return to;
|
19
14
|
};
|
20
15
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
@@ -22,10 +17,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
22
17
|
// file that has been converted to a CommonJS file using a Babel-
|
23
18
|
// compatible transform (i.e. "__esModule" has not been set), then set
|
24
19
|
// "default" to the CommonJS "module.exports" for node compatibility.
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable:
|
20
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
26
21
|
mod
|
27
|
-
));
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
22
|
+
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
29
23
|
var extractHelpers_exports = {};
|
30
24
|
__export(extractHelpers_exports, {
|
31
25
|
attrStr: () => attrStr,
|
@@ -44,152 +38,78 @@ __export(extractHelpers_exports, {
|
|
44
38
|
ternaryStr: () => ternaryStr
|
45
39
|
});
|
46
40
|
module.exports = __toCommonJS(extractHelpers_exports);
|
47
|
-
var import_path = require("path");
|
48
|
-
var import_generator = __toESM(require("@babel/generator"));
|
49
|
-
var t = __toESM(require("@babel/types"));
|
50
|
-
var import_find_root = __toESM(require("find-root"));
|
51
|
-
var import_memoize = require("../helpers/memoize");
|
41
|
+
var import_path = require("path"), import_generator = __toESM(require("@babel/generator")), t = __toESM(require("@babel/types")), import_find_root = __toESM(require("find-root")), import_memoize = require("../helpers/memoize");
|
52
42
|
function isPresent(input) {
|
53
43
|
return input != null;
|
54
44
|
}
|
55
45
|
function isSimpleSpread(node) {
|
56
46
|
return t.isIdentifier(node.argument) || t.isMemberExpression(node.argument);
|
57
47
|
}
|
58
|
-
const attrStr = (attr) => {
|
59
|
-
|
60
|
-
}
|
61
|
-
|
62
|
-
|
63
|
-
return `${obj}`;
|
64
|
-
}
|
65
|
-
return `{${Object.entries(obj).map(
|
66
|
-
([k, v]) => `${k}:${Array.isArray(v) ? `[...]` : v && typeof v === "object" ? `${objToStr(v, ",")}` : JSON.stringify(v)}`
|
67
|
-
).join(spacer)}}`;
|
68
|
-
};
|
69
|
-
const getNameAttr = (attr) => {
|
70
|
-
if (t.isJSXSpreadAttribute(attr)) {
|
71
|
-
return `...${attr.argument["name"]}`;
|
72
|
-
}
|
73
|
-
return "name" in attr ? attr.name.name : `unknown-${attr["type"]}`;
|
74
|
-
};
|
75
|
-
const ternaryStr = (x) => {
|
76
|
-
const conditional = t.isIdentifier(x.test) ? x.test.name : t.isMemberExpression(x.test) ? [x.test.object["name"], x.test.property["name"]] : (
|
48
|
+
const attrStr = (attr) => attr ? attr.type === "attr" ? getNameAttr(attr.value) : attr.type === "ternary" ? `...${ternaryStr(attr.value)}` : `${attr.type}(${objToStr(attr.value)})` : "", objToStr = (obj, spacer = ", ") => obj ? `{${Object.entries(obj).map(
|
49
|
+
([k, v]) => `${k}:${Array.isArray(v) ? "[...]" : v && typeof v == "object" ? `${objToStr(v, ",")}` : JSON.stringify(v)}`
|
50
|
+
).join(spacer)}}` : `${obj}`, getNameAttr = (attr) => t.isJSXSpreadAttribute(attr) ? `...${attr.argument.name}` : "name" in attr ? attr.name.name : `unknown-${attr.type}`, ternaryStr = (x) => [
|
51
|
+
"ternary(",
|
52
|
+
t.isIdentifier(x.test) ? x.test.name : t.isMemberExpression(x.test) ? [x.test.object.name, x.test.property.name] : (
|
77
53
|
// @ts-ignore
|
78
54
|
(0, import_generator.default)(x.test).code
|
79
|
-
)
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
isFilledObj(x.alternate) ? ` : ${objToStr(x.alternate)}` : " : \u{1F6AB}",
|
85
|
-
")"
|
86
|
-
].flat().join("");
|
87
|
-
};
|
88
|
-
const isFilledObj = (obj) => obj && Object.keys(obj).length;
|
55
|
+
),
|
56
|
+
isFilledObj(x.consequent) ? ` ? ${objToStr(x.consequent)}` : " ? \u{1F6AB}",
|
57
|
+
isFilledObj(x.alternate) ? ` : ${objToStr(x.alternate)}` : " : \u{1F6AB}",
|
58
|
+
")"
|
59
|
+
].flat().join(""), isFilledObj = (obj) => obj && Object.keys(obj).length;
|
89
60
|
function findComponentName(scope) {
|
90
|
-
var _a;
|
91
61
|
const componentName = "";
|
92
62
|
let cur = scope.path;
|
93
|
-
|
63
|
+
for (; cur.parentPath && !t.isProgram(cur.parentPath.parent); )
|
94
64
|
cur = cur.parentPath;
|
95
|
-
}
|
96
65
|
let node = cur.parent;
|
97
|
-
if (t.isExportNamedDeclaration(node)) {
|
98
|
-
node = node.declaration;
|
99
|
-
}
|
100
|
-
if (t.isVariableDeclaration(node)) {
|
66
|
+
if (t.isExportNamedDeclaration(node) && (node = node.declaration), t.isVariableDeclaration(node)) {
|
101
67
|
const [dec] = node.declarations;
|
102
|
-
if (t.isVariableDeclarator(dec) && t.isIdentifier(dec.id))
|
68
|
+
if (t.isVariableDeclarator(dec) && t.isIdentifier(dec.id))
|
103
69
|
return dec.id.name;
|
104
|
-
}
|
105
|
-
}
|
106
|
-
if (t.isFunctionDeclaration(node)) {
|
107
|
-
return (_a = node.id) == null ? void 0 : _a.name;
|
108
70
|
}
|
109
|
-
return componentName;
|
71
|
+
return t.isFunctionDeclaration(node) ? node.id?.name : componentName;
|
110
72
|
}
|
111
73
|
function isValidThemeHook(props, jsxPath, n, sourcePath) {
|
112
|
-
var _a;
|
113
74
|
if (!t.isIdentifier(n.object) || !t.isIdentifier(n.property))
|
114
|
-
return
|
115
|
-
const
|
116
|
-
|
117
|
-
|
118
|
-
return false;
|
119
|
-
if (!binding.path.isVariableDeclarator())
|
120
|
-
return false;
|
75
|
+
return !1;
|
76
|
+
const binding = jsxPath.scope.getAllBindings()[n.object.name];
|
77
|
+
if (!binding?.path || !binding.path.isVariableDeclarator())
|
78
|
+
return !1;
|
121
79
|
const init = binding.path.node.init;
|
122
|
-
if (!init || !t.isCallExpression(init))
|
123
|
-
return
|
124
|
-
|
125
|
-
|
126
|
-
if (init.callee.name !== "useTheme")
|
127
|
-
return false;
|
128
|
-
const importNode = (_a = binding.scope.getBinding("useTheme")) == null ? void 0 : _a.path.parent;
|
129
|
-
if (!t.isImportDeclaration(importNode))
|
130
|
-
return false;
|
131
|
-
if (sourcePath && !isValidImport(props, sourcePath)) {
|
132
|
-
return false;
|
133
|
-
}
|
134
|
-
return true;
|
80
|
+
if (!init || !t.isCallExpression(init) || !t.isIdentifier(init.callee) || init.callee.name !== "useTheme")
|
81
|
+
return !1;
|
82
|
+
const importNode = binding.scope.getBinding("useTheme")?.path.parent;
|
83
|
+
return !(!t.isImportDeclaration(importNode) || sourcePath && !isValidImport(props, sourcePath));
|
135
84
|
}
|
136
|
-
const isInsideComponentPackage = (props, moduleName) =>
|
137
|
-
return getValidComponentsPaths(props).some((path) => {
|
138
|
-
return moduleName.startsWith(path);
|
139
|
-
});
|
140
|
-
};
|
141
|
-
const isComponentPackage = (props, srcName) => {
|
142
|
-
return getValidComponentsPaths(props).some((path) => {
|
143
|
-
return srcName.startsWith(path);
|
144
|
-
});
|
145
|
-
};
|
85
|
+
const isInsideComponentPackage = (props, moduleName) => getValidComponentsPaths(props).some((path) => moduleName.startsWith(path)), isComponentPackage = (props, srcName) => getValidComponentsPaths(props).some((path) => srcName.startsWith(path));
|
146
86
|
function getValidComponent(props, moduleName, componentName) {
|
147
|
-
if (componentName[0].toUpperCase() !== componentName[0])
|
148
|
-
return
|
149
|
-
}
|
87
|
+
if (componentName[0].toUpperCase() !== componentName[0])
|
88
|
+
return !1;
|
150
89
|
for (const loaded of props.allLoadedComponents) {
|
151
90
|
if (!loaded)
|
152
91
|
continue;
|
153
|
-
const isInModule = moduleName === "*" || moduleName.startsWith(loaded.moduleName);
|
154
|
-
|
155
|
-
if (isInModule && foundComponent) {
|
92
|
+
const isInModule = moduleName === "*" || moduleName.startsWith(loaded.moduleName), foundComponent = loaded.nameToInfo[componentName];
|
93
|
+
if (isInModule && foundComponent)
|
156
94
|
return foundComponent;
|
157
|
-
}
|
158
95
|
}
|
159
96
|
return null;
|
160
97
|
}
|
161
98
|
const isValidModule = (props, moduleName) => {
|
162
|
-
if (typeof moduleName
|
163
|
-
throw new Error(
|
164
|
-
}
|
99
|
+
if (typeof moduleName != "string")
|
100
|
+
throw new Error("No module name");
|
165
101
|
const isLocal = moduleName.startsWith(".");
|
166
102
|
return {
|
167
103
|
isLocal,
|
168
104
|
isValid: isLocal ? isInsideComponentPackage(props, moduleName) : isComponentPackage(props, moduleName)
|
169
105
|
};
|
170
|
-
}
|
171
|
-
const getValidImport = (props, moduleName, componentName) => {
|
106
|
+
}, getValidImport = (props, moduleName, componentName) => {
|
172
107
|
const { isValid, isLocal } = isValidModule(props, moduleName);
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
return
|
177
|
-
};
|
178
|
-
const isValidImport = (props, moduleName, componentName) => {
|
179
|
-
if (!componentName) {
|
180
|
-
return isValidModule(props, moduleName).isValid;
|
181
|
-
}
|
182
|
-
return Boolean(getValidImport(props, moduleName, componentName));
|
183
|
-
};
|
184
|
-
const getValidComponentPackages = (0, import_memoize.memoize)((props) => {
|
185
|
-
return [.../* @__PURE__ */ new Set(["@tamagui/core", "tamagui", ...props.components])];
|
186
|
-
});
|
187
|
-
const getValidComponentsPaths = (0, import_memoize.memoize)((props) => {
|
188
|
-
return getValidComponentPackages(props).map((pkg) => {
|
189
|
-
const root = (0, import_find_root.default)(pkg);
|
190
|
-
return (0, import_path.basename)(root);
|
191
|
-
});
|
192
|
-
});
|
108
|
+
return !isValid || !componentName ? null : getValidComponent(props, isLocal ? "*" : moduleName, componentName) || null;
|
109
|
+
}, isValidImport = (props, moduleName, componentName) => componentName ? !!getValidImport(props, moduleName, componentName) : isValidModule(props, moduleName).isValid, getValidComponentPackages = (0, import_memoize.memoize)((props) => [.../* @__PURE__ */ new Set(["@tamagui/core", "tamagui", ...props.components])]), getValidComponentsPaths = (0, import_memoize.memoize)((props) => getValidComponentPackages(props).map((pkg) => {
|
110
|
+
const root = (0, import_find_root.default)(pkg);
|
111
|
+
return (0, import_path.basename)(root);
|
112
|
+
}));
|
193
113
|
// Annotate the CommonJS export names for ESM import in node:
|
194
114
|
0 && (module.exports = {
|
195
115
|
attrStr,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../src/extractor/extractHelpers.ts"],
|
4
|
-
"mappings": "
|
4
|
+
"mappings": "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",
|
5
5
|
"names": ["generate", "findRoot"]
|
6
6
|
}
|
@@ -0,0 +1,131 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __create = Object.create;
|
3
|
+
var __defProp = Object.defineProperty;
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
6
|
+
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
7
|
+
var __export = (target, all) => {
|
8
|
+
for (var name in all)
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
10
|
+
}, __copyProps = (to, from, except, desc) => {
|
11
|
+
if (from && typeof from == "object" || typeof from == "function")
|
12
|
+
for (let key of __getOwnPropNames(from))
|
13
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
14
|
+
return to;
|
15
|
+
};
|
16
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
17
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
18
|
+
// file that has been converted to a CommonJS file using a Babel-
|
19
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
20
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
21
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
22
|
+
mod
|
23
|
+
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
24
|
+
var extractHelpers_exports = {};
|
25
|
+
__export(extractHelpers_exports, {
|
26
|
+
attrStr: () => attrStr,
|
27
|
+
findComponentName: () => findComponentName,
|
28
|
+
getValidComponent: () => getValidComponent,
|
29
|
+
getValidComponentsPaths: () => getValidComponentsPaths,
|
30
|
+
getValidImport: () => getValidImport,
|
31
|
+
isComponentPackage: () => isComponentPackage,
|
32
|
+
isInsideComponentPackage: () => isInsideComponentPackage,
|
33
|
+
isPresent: () => isPresent,
|
34
|
+
isSimpleSpread: () => isSimpleSpread,
|
35
|
+
isValidImport: () => isValidImport,
|
36
|
+
isValidModule: () => isValidModule,
|
37
|
+
isValidThemeHook: () => isValidThemeHook,
|
38
|
+
objToStr: () => objToStr,
|
39
|
+
ternaryStr: () => ternaryStr
|
40
|
+
});
|
41
|
+
module.exports = __toCommonJS(extractHelpers_exports);
|
42
|
+
var import_path = require("path"), import_generator = __toESM(require("@babel/generator")), t = __toESM(require("@babel/types")), import_find_root = __toESM(require("find-root")), import_memoize = require("../helpers/memoize");
|
43
|
+
function isPresent(input) {
|
44
|
+
return input != null;
|
45
|
+
}
|
46
|
+
function isSimpleSpread(node) {
|
47
|
+
return t.isIdentifier(node.argument) || t.isMemberExpression(node.argument);
|
48
|
+
}
|
49
|
+
const attrStr = (attr) => attr ? attr.type === "attr" ? getNameAttr(attr.value) : attr.type === "ternary" ? `...${ternaryStr(attr.value)}` : `${attr.type}(${objToStr(attr.value)})` : "", objToStr = (obj, spacer = ", ") => obj ? `{${Object.entries(obj).map(
|
50
|
+
([k, v]) => `${k}:${Array.isArray(v) ? "[...]" : v && typeof v == "object" ? `${objToStr(v, ",")}` : JSON.stringify(v)}`
|
51
|
+
).join(spacer)}}` : `${obj}`, getNameAttr = (attr) => t.isJSXSpreadAttribute(attr) ? `...${attr.argument.name}` : "name" in attr ? attr.name.name : `unknown-${attr.type}`, ternaryStr = (x) => [
|
52
|
+
"ternary(",
|
53
|
+
t.isIdentifier(x.test) ? x.test.name : t.isMemberExpression(x.test) ? [x.test.object.name, x.test.property.name] : (
|
54
|
+
// @ts-ignore
|
55
|
+
(0, import_generator.default)(x.test).code
|
56
|
+
),
|
57
|
+
isFilledObj(x.consequent) ? ` ? ${objToStr(x.consequent)}` : " ? \u{1F6AB}",
|
58
|
+
isFilledObj(x.alternate) ? ` : ${objToStr(x.alternate)}` : " : \u{1F6AB}",
|
59
|
+
")"
|
60
|
+
].flat().join(""), isFilledObj = (obj) => obj && Object.keys(obj).length;
|
61
|
+
function findComponentName(scope) {
|
62
|
+
const componentName = "";
|
63
|
+
let cur = scope.path;
|
64
|
+
for (; cur.parentPath && !t.isProgram(cur.parentPath.parent); )
|
65
|
+
cur = cur.parentPath;
|
66
|
+
let node = cur.parent;
|
67
|
+
if (t.isExportNamedDeclaration(node) && (node = node.declaration), t.isVariableDeclaration(node)) {
|
68
|
+
const [dec] = node.declarations;
|
69
|
+
if (t.isVariableDeclarator(dec) && t.isIdentifier(dec.id))
|
70
|
+
return dec.id.name;
|
71
|
+
}
|
72
|
+
return t.isFunctionDeclaration(node) ? node.id?.name : componentName;
|
73
|
+
}
|
74
|
+
function isValidThemeHook(props, jsxPath, n, sourcePath) {
|
75
|
+
if (!t.isIdentifier(n.object) || !t.isIdentifier(n.property))
|
76
|
+
return !1;
|
77
|
+
const binding = jsxPath.scope.getAllBindings()[n.object.name];
|
78
|
+
if (!binding?.path || !binding.path.isVariableDeclarator())
|
79
|
+
return !1;
|
80
|
+
const init = binding.path.node.init;
|
81
|
+
if (!init || !t.isCallExpression(init) || !t.isIdentifier(init.callee) || init.callee.name !== "useTheme")
|
82
|
+
return !1;
|
83
|
+
const importNode = binding.scope.getBinding("useTheme")?.path.parent;
|
84
|
+
return !(!t.isImportDeclaration(importNode) || sourcePath && !isValidImport(props, sourcePath));
|
85
|
+
}
|
86
|
+
const isInsideComponentPackage = (props, moduleName) => getValidComponentsPaths(props).some((path) => moduleName.startsWith(path)), isComponentPackage = (props, srcName) => getValidComponentsPaths(props).some((path) => srcName.startsWith(path));
|
87
|
+
function getValidComponent(props, moduleName, componentName) {
|
88
|
+
if (componentName[0].toUpperCase() !== componentName[0])
|
89
|
+
return !1;
|
90
|
+
for (const loaded of props.allLoadedComponents) {
|
91
|
+
if (!loaded)
|
92
|
+
continue;
|
93
|
+
const isInModule = moduleName === "*" || moduleName.startsWith(loaded.moduleName), foundComponent = loaded.nameToInfo[componentName];
|
94
|
+
if (isInModule && foundComponent)
|
95
|
+
return foundComponent;
|
96
|
+
}
|
97
|
+
return null;
|
98
|
+
}
|
99
|
+
const isValidModule = (props, moduleName) => {
|
100
|
+
if (typeof moduleName != "string")
|
101
|
+
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
|
+
}, getValidImport = (props, moduleName, componentName) => {
|
108
|
+
const { isValid, isLocal } = isValidModule(props, moduleName);
|
109
|
+
return !isValid || !componentName ? null : getValidComponent(props, isLocal ? "*" : moduleName, componentName) || null;
|
110
|
+
}, isValidImport = (props, moduleName, componentName) => componentName ? !!getValidImport(props, moduleName, componentName) : isValidModule(props, moduleName).isValid, getValidComponentPackages = (0, import_memoize.memoize)((props) => [.../* @__PURE__ */ new Set(["@tamagui/core", "tamagui", ...props.components])]), getValidComponentsPaths = (0, import_memoize.memoize)((props) => getValidComponentPackages(props).map((pkg) => {
|
111
|
+
const root = (0, import_find_root.default)(pkg);
|
112
|
+
return (0, import_path.basename)(root);
|
113
|
+
}));
|
114
|
+
// Annotate the CommonJS export names for ESM import in node:
|
115
|
+
0 && (module.exports = {
|
116
|
+
attrStr,
|
117
|
+
findComponentName,
|
118
|
+
getValidComponent,
|
119
|
+
getValidComponentsPaths,
|
120
|
+
getValidImport,
|
121
|
+
isComponentPackage,
|
122
|
+
isInsideComponentPackage,
|
123
|
+
isPresent,
|
124
|
+
isSimpleSpread,
|
125
|
+
isValidImport,
|
126
|
+
isValidModule,
|
127
|
+
isValidThemeHook,
|
128
|
+
objToStr,
|
129
|
+
ternaryStr
|
130
|
+
});
|
131
|
+
//# sourceMappingURL=extractHelpers.js.map
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../src/extractor/extractHelpers.ts"],
|
4
|
+
"mappings": "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",
|
5
|
+
"names": ["generate", "findRoot"]
|
6
|
+
}
|