diff options
Diffstat (limited to 'node_modules/webpack/lib/dependencies/HarmonyModulesPlugin.js')
| -rw-r--r-- | node_modules/webpack/lib/dependencies/HarmonyModulesPlugin.js | 149 |
1 files changed, 0 insertions, 149 deletions
diff --git a/node_modules/webpack/lib/dependencies/HarmonyModulesPlugin.js b/node_modules/webpack/lib/dependencies/HarmonyModulesPlugin.js deleted file mode 100644 index a3bbd98d..00000000 --- a/node_modules/webpack/lib/dependencies/HarmonyModulesPlugin.js +++ /dev/null @@ -1,149 +0,0 @@ -/* - MIT License http://www.opensource.org/licenses/mit-license.php - Author Tobias Koppers @sokra -*/ - -"use strict"; - -const HarmonyAcceptDependency = require("./HarmonyAcceptDependency"); -const HarmonyAcceptImportDependency = require("./HarmonyAcceptImportDependency"); -const HarmonyCompatibilityDependency = require("./HarmonyCompatibilityDependency"); -const HarmonyEvaluatedImportSpecifierDependency = require("./HarmonyEvaluatedImportSpecifierDependency"); -const HarmonyExportExpressionDependency = require("./HarmonyExportExpressionDependency"); -const HarmonyExportHeaderDependency = require("./HarmonyExportHeaderDependency"); -const HarmonyExportImportedSpecifierDependency = require("./HarmonyExportImportedSpecifierDependency"); -const HarmonyExportSpecifierDependency = require("./HarmonyExportSpecifierDependency"); -const HarmonyImportSideEffectDependency = require("./HarmonyImportSideEffectDependency"); -const HarmonyImportSpecifierDependency = require("./HarmonyImportSpecifierDependency"); - -const { - JAVASCRIPT_MODULE_TYPE_AUTO, - JAVASCRIPT_MODULE_TYPE_ESM -} = require("../ModuleTypeConstants"); -const HarmonyDetectionParserPlugin = require("./HarmonyDetectionParserPlugin"); -const HarmonyExportDependencyParserPlugin = require("./HarmonyExportDependencyParserPlugin"); -const HarmonyImportDependencyParserPlugin = require("./HarmonyImportDependencyParserPlugin"); -const HarmonyTopLevelThisParserPlugin = require("./HarmonyTopLevelThisParserPlugin"); - -/** @typedef {import("../../declarations/WebpackOptions").JavascriptParserOptions} JavascriptParserOptions */ -/** @typedef {import("../Compiler")} Compiler */ -/** @typedef {import("../javascript/JavascriptParser")} Parser */ - -const PLUGIN_NAME = "HarmonyModulesPlugin"; - -/** @typedef {{ topLevelAwait?: boolean }} HarmonyModulesPluginOptions */ - -class HarmonyModulesPlugin { - /** - * @param {HarmonyModulesPluginOptions} options options - */ - constructor(options) { - this.options = options; - } - - /** - * Apply the plugin - * @param {Compiler} compiler the compiler instance - * @returns {void} - */ - apply(compiler) { - compiler.hooks.compilation.tap( - PLUGIN_NAME, - (compilation, { normalModuleFactory }) => { - compilation.dependencyTemplates.set( - HarmonyCompatibilityDependency, - new HarmonyCompatibilityDependency.Template() - ); - - compilation.dependencyFactories.set( - HarmonyImportSideEffectDependency, - normalModuleFactory - ); - compilation.dependencyTemplates.set( - HarmonyImportSideEffectDependency, - new HarmonyImportSideEffectDependency.Template() - ); - - compilation.dependencyFactories.set( - HarmonyImportSpecifierDependency, - normalModuleFactory - ); - compilation.dependencyTemplates.set( - HarmonyImportSpecifierDependency, - new HarmonyImportSpecifierDependency.Template() - ); - - compilation.dependencyFactories.set( - HarmonyEvaluatedImportSpecifierDependency, - normalModuleFactory - ); - compilation.dependencyTemplates.set( - HarmonyEvaluatedImportSpecifierDependency, - new HarmonyEvaluatedImportSpecifierDependency.Template() - ); - - compilation.dependencyTemplates.set( - HarmonyExportHeaderDependency, - new HarmonyExportHeaderDependency.Template() - ); - - compilation.dependencyTemplates.set( - HarmonyExportExpressionDependency, - new HarmonyExportExpressionDependency.Template() - ); - - compilation.dependencyTemplates.set( - HarmonyExportSpecifierDependency, - new HarmonyExportSpecifierDependency.Template() - ); - - compilation.dependencyFactories.set( - HarmonyExportImportedSpecifierDependency, - normalModuleFactory - ); - compilation.dependencyTemplates.set( - HarmonyExportImportedSpecifierDependency, - new HarmonyExportImportedSpecifierDependency.Template() - ); - - compilation.dependencyTemplates.set( - HarmonyAcceptDependency, - new HarmonyAcceptDependency.Template() - ); - - compilation.dependencyFactories.set( - HarmonyAcceptImportDependency, - normalModuleFactory - ); - compilation.dependencyTemplates.set( - HarmonyAcceptImportDependency, - new HarmonyAcceptImportDependency.Template() - ); - - /** - * @param {Parser} parser parser parser - * @param {JavascriptParserOptions} parserOptions parserOptions - * @returns {void} - */ - const handler = (parser, parserOptions) => { - // TODO webpack 6: rename harmony to esm or module - if (parserOptions.harmony !== undefined && !parserOptions.harmony) - return; - - new HarmonyDetectionParserPlugin(this.options).apply(parser); - new HarmonyImportDependencyParserPlugin(parserOptions).apply(parser); - new HarmonyExportDependencyParserPlugin(parserOptions).apply(parser); - new HarmonyTopLevelThisParserPlugin().apply(parser); - }; - - normalModuleFactory.hooks.parser - .for(JAVASCRIPT_MODULE_TYPE_AUTO) - .tap(PLUGIN_NAME, handler); - normalModuleFactory.hooks.parser - .for(JAVASCRIPT_MODULE_TYPE_ESM) - .tap(PLUGIN_NAME, handler); - } - ); - } -} -module.exports = HarmonyModulesPlugin; |
