Updating NPM dependencies

This commit is contained in:
Drew Heavner
2020-11-11 13:30:52 +00:00
committed by GitHub
parent 7a6fb66c63
commit bd487ef324
9068 changed files with 1400893 additions and 587661 deletions

View File

@@ -32,6 +32,8 @@ function makePath(path) {
return parts.reverse().join(".");
}
let fileClass = undefined;
function getHelperMetadata(file) {
const globals = new Set();
const localBindingNames = new Set();
@@ -41,7 +43,7 @@ function getHelperMetadata(file) {
const exportBindingAssignments = [];
const importPaths = [];
const importBindingsReferences = [];
(0, _traverse.default)(file, {
const dependencyVisitor = {
ImportDeclaration(child) {
const name = child.node.source.value;
@@ -85,8 +87,8 @@ function getHelperMetadata(file) {
child.skip();
}
});
(0, _traverse.default)(file, {
};
const referenceVisitor = {
Program(path) {
const bindings = path.scope.getAllBindings();
Object.keys(bindings).forEach(name => {
@@ -117,12 +119,14 @@ function getHelperMetadata(file) {
const binding = child.scope.getBinding(exportName);
if (binding && binding.scope.path.isProgram()) {
if (binding == null ? void 0 : binding.scope.path.isProgram()) {
exportBindingAssignments.push(makePath(child));
}
}
});
};
(0, _traverse.default)(file.ast, dependencyVisitor, file.scope);
(0, _traverse.default)(file.ast, referenceVisitor, file.scope);
if (!exportPath) throw new Error("Helpers must default-export something.");
exportBindingAssignments.reverse();
return {
@@ -170,7 +174,7 @@ function permuteHelperAST(file, metadata, id, localBindings, getDependency) {
toRename[exportName] = id.name;
}
(0, _traverse.default)(file, {
const visitor = {
Program(path) {
const exp = path.get(exportPath);
const imps = importPaths.map(p => path.get(p));
@@ -212,7 +216,8 @@ function permuteHelperAST(file, metadata, id, localBindings, getDependency) {
path.stop();
}
});
};
(0, _traverse.default)(file.ast, visitor, file.scope);
}
const helperData = Object.create(null);
@@ -229,7 +234,17 @@ function loadHelper(name) {
}
const fn = () => {
return t.file(helper.ast());
const file = {
ast: t.file(helper.ast())
};
if (fileClass) {
return new fileClass({
filename: `babel-helper://${name}`
}, file);
}
return file;
};
const metadata = getHelperMetadata(fn());
@@ -238,7 +253,7 @@ function loadHelper(name) {
const file = fn();
permuteHelperAST(file, metadata, id, localBindings, getDependency);
return {
nodes: file.program.body,
nodes: file.ast.program.body,
globals: metadata.globals
};
},
@@ -266,7 +281,11 @@ function getDependencies(name) {
return Array.from(loadHelper(name).dependencies.values());
}
function ensure(name) {
function ensure(name, newFileClass) {
if (!fileClass) {
fileClass = newFileClass;
}
loadHelper(name);
}