initial commit

This commit is contained in:
Zoe
2023-01-03 09:29:04 -06:00
commit 7851137d88
12889 changed files with 2557443 additions and 0 deletions

218
node_modules/@rollup/plugin-inject/dist/cjs/index.js generated vendored Normal file
View File

@@ -0,0 +1,218 @@
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var path = require('path');
var pluginutils = require('@rollup/pluginutils');
var estreeWalker = require('estree-walker');
var MagicString = require('magic-string');
var escape = function (str) { return str.replace(/[-[\]/{}()*+?.\\^$|]/g, '\\$&'); };
var isReference = function (node, parent) {
if (node.type === 'MemberExpression') {
return !node.computed && isReference(node.object, node);
}
if (node.type === 'Identifier') {
// TODO is this right?
if (parent.type === 'MemberExpression') { return parent.computed || node === parent.object; }
// disregard the `bar` in { bar: foo }
if (parent.type === 'Property' && node !== parent.value) { return false; }
// disregard the `bar` in `class Foo { bar () {...} }`
if (parent.type === 'MethodDefinition') { return false; }
// disregard the `bar` in `export { foo as bar }`
if (parent.type === 'ExportSpecifier' && node !== parent.local) { return false; }
// disregard the `bar` in `import { bar as foo }`
if (parent.type === 'ImportSpecifier' && node === parent.imported) {
return false;
}
return true;
}
return false;
};
var flatten = function (startNode) {
var parts = [];
var node = startNode;
while (node.type === 'MemberExpression') {
parts.unshift(node.property.name);
node = node.object;
}
var name = node.name;
parts.unshift(name);
return { name: name, keypath: parts.join('.') };
};
function inject(options) {
if (!options) { throw new Error('Missing options'); }
var filter = pluginutils.createFilter(options.include, options.exclude);
var modules = options.modules;
if (!modules) {
modules = Object.assign({}, options);
delete modules.include;
delete modules.exclude;
delete modules.sourceMap;
delete modules.sourcemap;
}
var modulesMap = new Map(Object.entries(modules));
// Fix paths on Windows
if (path.sep !== '/') {
modulesMap.forEach(function (mod, key) {
modulesMap.set(
key,
Array.isArray(mod) ? [mod[0].split(path.sep).join('/'), mod[1]] : mod.split(path.sep).join('/')
);
});
}
var firstpass = new RegExp(("(?:" + (Array.from(modulesMap.keys()).map(escape).join('|')) + ")"), 'g');
var sourceMap = options.sourceMap !== false && options.sourcemap !== false;
return {
name: 'inject',
transform: function transform(code, id) {
if (!filter(id)) { return null; }
if (code.search(firstpass) === -1) { return null; }
if (path.sep !== '/') { id = id.split(path.sep).join('/'); } // eslint-disable-line no-param-reassign
var ast = null;
try {
ast = this.parse(code);
} catch (err) {
this.warn({
code: 'PARSE_ERROR',
message: ("rollup-plugin-inject: failed to parse " + id + ". Consider restricting the plugin to particular files via options.include")
});
}
if (!ast) {
return null;
}
var imports = new Set();
ast.body.forEach(function (node) {
if (node.type === 'ImportDeclaration') {
node.specifiers.forEach(function (specifier) {
imports.add(specifier.local.name);
});
}
});
// analyse scopes
var scope = pluginutils.attachScopes(ast, 'scope');
var magicString = new MagicString(code);
var newImports = new Map();
function handleReference(node, name, keypath) {
var mod = modulesMap.get(keypath);
if (mod && !imports.has(name) && !scope.contains(name)) {
if (typeof mod === 'string') { mod = [mod, 'default']; }
// prevent module from importing itself
if (mod[0] === id) { return false; }
var hash = keypath + ":" + (mod[0]) + ":" + (mod[1]);
var importLocalName =
name === keypath ? name : pluginutils.makeLegalIdentifier(("$inject_" + keypath));
if (!newImports.has(hash)) {
// escape apostrophes and backslashes for use in single-quoted string literal
var modName = mod[0].replace(/[''\\]/g, '\\$&');
if (mod[1] === '*') {
newImports.set(hash, ("import * as " + importLocalName + " from '" + modName + "';"));
} else {
newImports.set(hash, ("import { " + (mod[1]) + " as " + importLocalName + " } from '" + modName + "';"));
}
}
if (name !== keypath) {
magicString.overwrite(node.start, node.end, importLocalName, {
storeName: true
});
}
return true;
}
return false;
}
estreeWalker.walk(ast, {
enter: function enter(node, parent) {
if (sourceMap) {
magicString.addSourcemapLocation(node.start);
magicString.addSourcemapLocation(node.end);
}
if (node.scope) {
scope = node.scope; // eslint-disable-line prefer-destructuring
}
// special case shorthand properties. because node.key === node.value,
// we can't differentiate once we've descended into the node
if (node.type === 'Property' && node.shorthand && node.value.type === 'Identifier') {
var ref = node.key;
var name = ref.name;
handleReference(node, name, name);
this.skip();
return;
}
if (isReference(node, parent)) {
var ref$1 = flatten(node);
var name$1 = ref$1.name;
var keypath = ref$1.keypath;
var handled = handleReference(node, name$1, keypath);
if (handled) {
this.skip();
}
}
},
leave: function leave(node) {
if (node.scope) {
scope = scope.parent;
}
}
});
if (newImports.size === 0) {
return {
code: code,
ast: ast,
map: sourceMap ? magicString.generateMap({ hires: true }) : null
};
}
var importBlock = Array.from(newImports.values()).join('\n\n');
magicString.prepend((importBlock + "\n\n"));
return {
code: magicString.toString(),
map: sourceMap ? magicString.generateMap({ hires: true }) : null
};
}
};
}
exports.default = inject;
module.exports = Object.assign(exports.default, exports);
//# sourceMappingURL=index.js.map