summaryrefslogtreecommitdiff
path: root/node_modules/@babel/helper-module-transforms/lib/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/@babel/helper-module-transforms/lib/index.js')
-rw-r--r--node_modules/@babel/helper-module-transforms/lib/index.js120
1 files changed, 69 insertions, 51 deletions
diff --git a/node_modules/@babel/helper-module-transforms/lib/index.js b/node_modules/@babel/helper-module-transforms/lib/index.js
index 35a44be5..ac884d25 100644
--- a/node_modules/@babel/helper-module-transforms/lib/index.js
+++ b/node_modules/@babel/helper-module-transforms/lib/index.js
@@ -52,21 +52,6 @@ var _normalizeAndLoadMetadata = require("./normalize-and-load-metadata.js");
var Lazy = require("./lazy-modules.js");
var _dynamicImport = require("./dynamic-import.js");
var _getModuleName = require("./get-module-name.js");
-const {
- booleanLiteral,
- callExpression,
- cloneNode,
- directive,
- directiveLiteral,
- expressionStatement,
- identifier,
- isIdentifier,
- memberExpression,
- stringLiteral,
- valueToNode,
- variableDeclaration,
- variableDeclarator
-} = _core.types;
{
exports.getDynamicImportSource = require("./dynamic-import").getDynamicImportSource;
}
@@ -105,7 +90,7 @@ function rewriteModuleStatementsAndPrepareHeader(path, {
return directive.value.value === "use strict";
});
if (!hasStrict) {
- path.unshiftContainer("directives", directive(directiveLiteral("use strict")));
+ path.unshiftContainer("directives", _core.types.directive(_core.types.directiveLiteral("use strict")));
}
}
const headers = [];
@@ -133,7 +118,7 @@ function wrapInterop(programPath, expr, type) {
return null;
}
if (type === "node-namespace") {
- return callExpression(programPath.hub.addHelper("interopRequireWildcard"), [expr, booleanLiteral(true)]);
+ return _core.types.callExpression(programPath.hub.addHelper("interopRequireWildcard"), [expr, _core.types.booleanLiteral(true)]);
} else if (type === "node-default") {
return null;
}
@@ -145,17 +130,17 @@ function wrapInterop(programPath, expr, type) {
} else {
throw new Error(`Unknown interop: ${type}`);
}
- return callExpression(programPath.hub.addHelper(helper), [expr]);
+ return _core.types.callExpression(programPath.hub.addHelper(helper), [expr]);
}
function buildNamespaceInitStatements(metadata, sourceMetadata, constantReexports = false, wrapReference = Lazy.wrapReference) {
var _wrapReference;
const statements = [];
- const srcNamespaceId = identifier(sourceMetadata.name);
+ const srcNamespaceId = _core.types.identifier(sourceMetadata.name);
for (const localName of sourceMetadata.importsNamespace) {
if (localName === sourceMetadata.name) continue;
statements.push(_core.template.statement`var NAME = SOURCE;`({
NAME: localName,
- SOURCE: cloneNode(srcNamespaceId)
+ SOURCE: _core.types.cloneNode(srcNamespaceId)
}));
}
const srcNamespace = (_wrapReference = wrapReference(srcNamespaceId, sourceMetadata.wrap)) != null ? _wrapReference : srcNamespaceId;
@@ -173,48 +158,64 @@ function buildNamespaceInitStatements(metadata, sourceMetadata, constantReexport
` : _core.template.statement`EXPORTS.NAME = NAMESPACE;`)({
EXPORTS: metadata.exportName,
NAME: exportName,
- NAMESPACE: cloneNode(srcNamespace)
+ NAMESPACE: _core.types.cloneNode(srcNamespace)
}));
}
if (sourceMetadata.reexportAll) {
- const statement = buildNamespaceReexport(metadata, cloneNode(srcNamespace), constantReexports);
+ const statement = buildNamespaceReexport(metadata, _core.types.cloneNode(srcNamespace), constantReexports);
statement.loc = sourceMetadata.reexportAll.loc;
statements.push(statement);
}
return statements;
}
const ReexportTemplate = {
- constant: _core.template.statement`EXPORTS.EXPORT_NAME = NAMESPACE_IMPORT;`,
- constantComputed: _core.template.statement`EXPORTS["EXPORT_NAME"] = NAMESPACE_IMPORT;`,
- spec: _core.template.statement`
- Object.defineProperty(EXPORTS, "EXPORT_NAME", {
- enumerable: true,
- get: function() {
- return NAMESPACE_IMPORT;
- },
- });
+ constant: ({
+ exports,
+ exportName,
+ namespaceImport
+ }) => _core.template.statement.ast`
+ ${exports}.${exportName} = ${namespaceImport};
+ `,
+ constantComputed: ({
+ exports,
+ exportName,
+ namespaceImport
+ }) => _core.template.statement.ast`
+ ${exports}["${exportName}"] = ${namespaceImport};
+ `,
+ spec: ({
+ exports,
+ exportName,
+ namespaceImport
+ }) => _core.template.statement.ast`
+ Object.defineProperty(${exports}, "${exportName}", {
+ enumerable: true,
+ get: function() {
+ return ${namespaceImport};
+ },
+ });
`
};
function buildReexportsFromMeta(meta, metadata, constantReexports, wrapReference) {
var _wrapReference2;
- let namespace = identifier(metadata.name);
+ let namespace = _core.types.identifier(metadata.name);
namespace = (_wrapReference2 = wrapReference(namespace, metadata.wrap)) != null ? _wrapReference2 : namespace;
const {
stringSpecifiers
} = meta;
return Array.from(metadata.reexports, ([exportName, importName]) => {
- let NAMESPACE_IMPORT = cloneNode(namespace);
+ let namespaceImport = _core.types.cloneNode(namespace);
if (importName === "default" && metadata.interop === "node-default") {} else if (stringSpecifiers.has(importName)) {
- NAMESPACE_IMPORT = memberExpression(NAMESPACE_IMPORT, stringLiteral(importName), true);
+ namespaceImport = _core.types.memberExpression(namespaceImport, _core.types.stringLiteral(importName), true);
} else {
- NAMESPACE_IMPORT = memberExpression(NAMESPACE_IMPORT, identifier(importName));
+ namespaceImport = _core.types.memberExpression(namespaceImport, _core.types.identifier(importName));
}
const astNodes = {
- EXPORTS: meta.exportName,
- EXPORT_NAME: exportName,
- NAMESPACE_IMPORT
+ exports: meta.exportName,
+ exportName,
+ namespaceImport
};
- if (constantReexports || isIdentifier(NAMESPACE_IMPORT)) {
+ if (constantReexports || _core.types.isIdentifier(namespaceImport)) {
if (stringSpecifiers.has(exportName)) {
return ReexportTemplate.constantComputed(astNodes);
} else {
@@ -290,14 +291,14 @@ function buildExportNameListDeclaration(programPath, metadata) {
delete exportedVars.default;
return {
name: name.name,
- statement: variableDeclaration("var", [variableDeclarator(name, valueToNode(exportedVars))])
+ statement: _core.types.variableDeclaration("var", [_core.types.variableDeclarator(name, _core.types.valueToNode(exportedVars))])
};
}
function buildExportInitializationStatements(programPath, metadata, wrapReference, constantReexports = false, noIncompleteNsImportDetection = false) {
const initStatements = [];
for (const [localName, data] of metadata.local) {
if (data.kind === "import") {} else if (data.kind === "hoisted") {
- initStatements.push([data.names[0], buildInitStatement(metadata, data.names, identifier(localName))]);
+ initStatements.push([data.names[0], buildInitStatement(metadata, data.names, _core.types.identifier(localName))]);
} else if (!noIncompleteNsImportDetection) {
for (const exportName of data.names) {
initStatements.push([exportName, null]);
@@ -352,25 +353,42 @@ function buildExportInitializationStatements(programPath, metadata, wrapReferenc
return results;
}
const InitTemplate = {
- computed: _core.template.expression`EXPORTS["NAME"] = VALUE`,
- default: _core.template.expression`EXPORTS.NAME = VALUE`,
- define: _core.template.expression`Object.defineProperty(EXPORTS, "NAME", { enumerable:true, value: void 0, writable: true })["NAME"] = VALUE`
+ computed: ({
+ exports,
+ name,
+ value
+ }) => _core.template.expression.ast`${exports}["${name}"] = ${value}`,
+ default: ({
+ exports,
+ name,
+ value
+ }) => _core.template.expression.ast`${exports}.${name} = ${value}`,
+ define: ({
+ exports,
+ name,
+ value
+ }) => _core.template.expression.ast`
+ Object.defineProperty(${exports}, "${name}", {
+ enumerable: true,
+ value: void 0,
+ writable: true
+ })["${name}"] = ${value}`
};
function buildInitStatement(metadata, exportNames, initExpr) {
const {
stringSpecifiers,
- exportName: EXPORTS
+ exportName: exports
} = metadata;
- return expressionStatement(exportNames.reduce((acc, exportName) => {
+ return _core.types.expressionStatement(exportNames.reduce((value, name) => {
const params = {
- EXPORTS,
- NAME: exportName,
- VALUE: acc
+ exports,
+ name,
+ value
};
- if (exportName === "__proto__") {
+ if (name === "__proto__") {
return InitTemplate.define(params);
}
- if (stringSpecifiers.has(exportName)) {
+ if (stringSpecifiers.has(name)) {
return InitTemplate.computed(params);
}
return InitTemplate.default(params);