/var/www/flurhymez/node_modules/webpack/lib/dependencies
NameSizeModeActions
AMDDefineDependency.js75530644editdlrm
AMDDefineDependencyParserPlugin.js101590644editdlrm
AMDPlugin.js63060644editdlrm
AMDRequireArrayDependency.js24090644editdlrm
AMDRequireContextDependency.js10270644editdlrm
AMDRequireDependenciesBlock.js5330644editdlrm
AMDRequireDependenciesBlockParserPlugin.js77770644editdlrm
AMDRequireDependency.js50860644editdlrm
AMDRequireItemDependency.js7640644editdlrm
AMDRuntimeModules.js10670644editdlrm
CachedConstDependency.js28470644editdlrm
CommonJsDependencyHelpers.js13300644editdlrm
CommonJsExportRequireDependency.js104820644editdlrm
CommonJsExportsDependency.js40060644editdlrm
CommonJsExportsParserPlugin.js104790644editdlrm
CommonJsFullRequireDependency.js37570644editdlrm
CommonJsImportsParserPlugin.js119450644editdlrm
CommonJsPlugin.js83380644editdlrm
CommonJsRequireContextDependency.js12670644editdlrm
CommonJsRequireDependency.js7520644editdlrm
CommonJsSelfReferenceDependency.js38610644editdlrm
ConstDependency.js32200644editdlrm
ContextDependency.js37970644editdlrm
ContextDependencyHelpers.js68080644editdlrm
ContextDependencyTemplateAsId.js17910644editdlrm
ContextDependencyTemplateAsRequireCall.js18340644editdlrm
ContextElementDependency.js17950644editdlrm
CreateScriptUrlDependency.js15680644editdlrm
CriticalDependencyWarning.js5680644editdlrm
DelegatedSourceDependency.js5750644editdlrm
DllEntryDependency.js8190644editdlrm
DynamicExports.js18380644editdlrm
EntryDependency.js5810644editdlrm
ExportsInfoDependency.js37430644editdlrm
getFunctionExpression.js13770644editdlrm
HarmonyAcceptDependency.js37590644editdlrm
HarmonyAcceptImportDependency.js9610644editdlrm
HarmonyCompatibilityDependency.js26630644editdlrm
HarmonyDetectionParserPlugin.js27130644editdlrm
HarmonyExportDependencyParserPlugin.js58030644editdlrm
HarmonyExportExpressionDependency.js54740644editdlrm
HarmonyExportHeaderDependency.js18190644editdlrm
HarmonyExportImportedSpecifierDependency.js348800644editdlrm
HarmonyExportInitFragment.js44310644editdlrm
HarmonyExports.js11960644editdlrm
HarmonyExportSpecifierDependency.js30210644editdlrm
HarmonyImportDependency.js110650644editdlrm
HarmonyImportDependencyParserPlugin.js85810644editdlrm
HarmonyImportSideEffectDependency.js28210644editdlrm
HarmonyImportSpecifierDependency.js93950644editdlrm
HarmonyModulesPlugin.js40710644editdlrm
HarmonyTopLevelThisParserPlugin.js7150644editdlrm
ImportContextDependency.js11120644editdlrm
ImportDependency.js29890644editdlrm
ImportEagerDependency.js20200644editdlrm
ImportMetaHotAcceptDependency.js8050644editdlrm
ImportMetaHotDeclineDependency.js8120644editdlrm
ImportMetaPlugin.js57500644editdlrm
ImportParserPlugin.js78500644editdlrm
ImportPlugin.js21720644editdlrm
ImportWeakDependency.js20040644editdlrm
JsonExportsDependency.js23380644editdlrm
LoaderDependency.js4370644editdlrm
LoaderImportDependency.js4820644editdlrm
LoaderPlugin.js78770644editdlrm
LocalModule.js7430644editdlrm
LocalModuleDependency.js18560644editdlrm
LocalModulesHelpers.js10930644editdlrm
ModuleDecoratorDependency.js38610644editdlrm
ModuleDependency.js20370644editdlrm
ModuleDependencyTemplateAsId.js11710644editdlrm
ModuleDependencyTemplateAsRequireId.js12430644editdlrm
ModuleHotAcceptDependency.js7780644editdlrm
ModuleHotDeclineDependency.js7850644editdlrm
NullDependency.js12820644editdlrm
PrefetchDependency.js3870644editdlrm
processExportInfo.js17770644editdlrm
ProvidedDependency.js32050644editdlrm
PureExpressionDependency.js36640644editdlrm
RequireContextDependency.js9500644editdlrm
RequireContextDependencyParserPlugin.js15640644editdlrm
RequireContextPlugin.js41770644editdlrm
RequireEnsureDependenciesBlock.js5490644editdlrm
RequireEnsureDependenciesBlockParserPlugin.js37080644editdlrm
RequireEnsureDependency.js27340644editdlrm
RequireEnsureItemDependency.js7080644editdlrm
RequireEnsurePlugin.js18070644editdlrm
RequireHeaderDependency.js17210644editdlrm
RequireIncludeDependency.js22370644editdlrm
RequireIncludeDependencyParserPlugin.js20460644editdlrm
RequireIncludePlugin.js11910644editdlrm
RequireResolveContextDependency.js10690644editdlrm
RequireResolveDependency.js13690644editdlrm
RequireResolveHeaderDependency.js17920644editdlrm
RuntimeRequirementsDependency.js23110644editdlrm
StaticExportsDependency.js16200644editdlrm
SystemPlugin.js38210644editdlrm
SystemRuntimeModule.js6980644editdlrm
UnsupportedDependency.js16420644editdlrm
URLDependency.js46400644editdlrm
URLPlugin.js31880644editdlrm
WebAssemblyExportImportedDependency.js20730644editdlrm
WebAssemblyImportDependency.js26760644editdlrm
WebpackIsIncludedDependency.js25200644editdlrm
WorkerDependency.js29940644editdlrm
WorkerPlugin.js135010644editdlrm
Edit: /var/www/flurhymez/node_modules/webpack/lib/dependencies/HarmonyImportDependencyParserPlugin.js (8581B)
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const HotModuleReplacementPlugin = require("../HotModuleReplacementPlugin"); const InnerGraph = require("../optimize/InnerGraph"); const ConstDependency = require("./ConstDependency"); const HarmonyAcceptDependency = require("./HarmonyAcceptDependency"); const HarmonyAcceptImportDependency = require("./HarmonyAcceptImportDependency"); const HarmonyExports = require("./HarmonyExports"); const { ExportPresenceModes } = require("./HarmonyImportDependency"); const HarmonyImportSideEffectDependency = require("./HarmonyImportSideEffectDependency"); const HarmonyImportSpecifierDependency = require("./HarmonyImportSpecifierDependency"); /** @typedef {import("estree").ExportAllDeclaration} ExportAllDeclaration */ /** @typedef {import("estree").ExportNamedDeclaration} ExportNamedDeclaration */ /** @typedef {import("estree").Identifier} Identifier */ /** @typedef {import("estree").ImportDeclaration} ImportDeclaration */ /** @typedef {import("estree").ImportExpression} ImportExpression */ /** @typedef {import("../../declarations/WebpackOptions").JavascriptParserOptions} JavascriptParserOptions */ /** @typedef {import("../javascript/JavascriptParser")} JavascriptParser */ /** @typedef {import("../optimize/InnerGraph").InnerGraph} InnerGraph */ /** @typedef {import("../optimize/InnerGraph").TopLevelSymbol} TopLevelSymbol */ /** @typedef {import("./HarmonyImportDependency")} HarmonyImportDependency */ const harmonySpecifierTag = Symbol("harmony import"); /** * @typedef {Object} HarmonySettings * @property {string[]} ids * @property {string} source * @property {number} sourceOrder * @property {string} name * @property {boolean} await * @property {Record | undefined} assertions */ /** * @param {ImportDeclaration | ExportNamedDeclaration | ExportAllDeclaration | ImportExpression} node node with assertions * @returns {Record | undefined} assertions */ function getAssertions(node) { // TODO remove cast when @types/estree has been updated to import assertions const assertions = /** @type {{ assertions?: ImportAttributeNode[] }} */ ( node ).assertions; if (assertions === undefined) { return undefined; } const result = {}; for (const assertion of assertions) { const key = assertion.key.type === "Identifier" ? assertion.key.name : assertion.key.value; result[key] = assertion.value.value; } return result; } module.exports = class HarmonyImportDependencyParserPlugin { /** * @param {JavascriptParserOptions} options options */ constructor(options) { this.exportPresenceMode = options.importExportPresence !== undefined ? ExportPresenceModes.fromUserOption(options.importExportPresence) : options.exportPresence !== undefined ? ExportPresenceModes.fromUserOption(options.exportPresence) : options.strictExportPresence ? ExportPresenceModes.ERROR : ExportPresenceModes.AUTO; this.strictThisContextOnImports = options.strictThisContextOnImports; } /** * @param {JavascriptParser} parser the parser * @returns {void} */ apply(parser) { const { exportPresenceMode } = this; parser.hooks.isPure .for("Identifier") .tap("HarmonyImportDependencyParserPlugin", expression => { const expr = /** @type {Identifier} */ (expression); if ( parser.isVariableDefined(expr.name) || parser.getTagData(expr.name, harmonySpecifierTag) ) { return true; } }); parser.hooks.import.tap( "HarmonyImportDependencyParserPlugin", (statement, source) => { parser.state.lastHarmonyImportOrder = (parser.state.lastHarmonyImportOrder || 0) + 1; const clearDep = new ConstDependency( parser.isAsiPosition(statement.range[0]) ? ";" : "", statement.range ); clearDep.loc = statement.loc; parser.state.module.addPresentationalDependency(clearDep); parser.unsetAsiPosition(statement.range[1]); const assertions = getAssertions(statement); const sideEffectDep = new HarmonyImportSideEffectDependency( source, parser.state.lastHarmonyImportOrder, assertions ); sideEffectDep.loc = statement.loc; parser.state.module.addDependency(sideEffectDep); return true; } ); parser.hooks.importSpecifier.tap( "HarmonyImportDependencyParserPlugin", (statement, source, id, name) => { const ids = id === null ? [] : [id]; parser.tagVariable(name, harmonySpecifierTag, { name, source, ids, sourceOrder: parser.state.lastHarmonyImportOrder, assertions: getAssertions(statement) }); return true; } ); parser.hooks.expression .for(harmonySpecifierTag) .tap("HarmonyImportDependencyParserPlugin", expr => { const settings = /** @type {HarmonySettings} */ (parser.currentTagData); const dep = new HarmonyImportSpecifierDependency( settings.source, settings.sourceOrder, settings.ids, settings.name, expr.range, exportPresenceMode, settings.assertions ); dep.shorthand = parser.scope.inShorthand; dep.directImport = true; dep.asiSafe = !parser.isAsiPosition(expr.range[0]); dep.loc = expr.loc; parser.state.module.addDependency(dep); InnerGraph.onUsage(parser.state, e => (dep.usedByExports = e)); return true; }); parser.hooks.expressionMemberChain .for(harmonySpecifierTag) .tap("HarmonyImportDependencyParserPlugin", (expr, members) => { const settings = /** @type {HarmonySettings} */ (parser.currentTagData); const ids = settings.ids.concat(members); const dep = new HarmonyImportSpecifierDependency( settings.source, settings.sourceOrder, ids, settings.name, expr.range, exportPresenceMode, settings.assertions ); dep.asiSafe = !parser.isAsiPosition(expr.range[0]); dep.loc = expr.loc; parser.state.module.addDependency(dep); InnerGraph.onUsage(parser.state, e => (dep.usedByExports = e)); return true; }); parser.hooks.callMemberChain .for(harmonySpecifierTag) .tap("HarmonyImportDependencyParserPlugin", (expr, members) => { const { arguments: args, callee } = expr; const settings = /** @type {HarmonySettings} */ (parser.currentTagData); const ids = settings.ids.concat(members); const dep = new HarmonyImportSpecifierDependency( settings.source, settings.sourceOrder, ids, settings.name, callee.range, exportPresenceMode, settings.assertions ); dep.directImport = members.length === 0; dep.call = true; dep.asiSafe = !parser.isAsiPosition(callee.range[0]); // only in case when we strictly follow the spec we need a special case here dep.namespaceObjectAsContext = members.length > 0 && this.strictThisContextOnImports; dep.loc = callee.loc; parser.state.module.addDependency(dep); if (args) parser.walkExpressions(args); InnerGraph.onUsage(parser.state, e => (dep.usedByExports = e)); return true; }); const { hotAcceptCallback, hotAcceptWithoutCallback } = HotModuleReplacementPlugin.getParserHooks(parser); hotAcceptCallback.tap( "HarmonyImportDependencyParserPlugin", (expr, requests) => { if (!HarmonyExports.isEnabled(parser.state)) { // This is not a harmony module, skip it return; } const dependencies = requests.map(request => { const dep = new HarmonyAcceptImportDependency(request); dep.loc = expr.loc; parser.state.module.addDependency(dep); return dep; }); if (dependencies.length > 0) { const dep = new HarmonyAcceptDependency( expr.range, dependencies, true ); dep.loc = expr.loc; parser.state.module.addDependency(dep); } } ); hotAcceptWithoutCallback.tap( "HarmonyImportDependencyParserPlugin", (expr, requests) => { if (!HarmonyExports.isEnabled(parser.state)) { // This is not a harmony module, skip it return; } const dependencies = requests.map(request => { const dep = new HarmonyAcceptImportDependency(request); dep.loc = expr.loc; parser.state.module.addDependency(dep); return dep; }); if (dependencies.length > 0) { const dep = new HarmonyAcceptDependency( expr.range, dependencies, false ); dep.loc = expr.loc; parser.state.module.addDependency(dep); } } ); } }; module.exports.harmonySpecifierTag = harmonySpecifierTag; module.exports.getAssertions = getAssertions;