diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2023-11-01 20:49:36 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2023-11-01 20:49:36 +0800 |
| commit | e99f950f5018cfe737c0d1150e50d97c6e6a4823 (patch) | |
| tree | 16f329a1b22128ed67f3fcae15a9b0a030f2ccbf /node_modules/webpack/lib/dependencies/SystemPlugin.js | |
| parent | c5d8a744dd584749e0b920119b42e731e37e5f62 (diff) | |
update
Diffstat (limited to 'node_modules/webpack/lib/dependencies/SystemPlugin.js')
| -rw-r--r-- | node_modules/webpack/lib/dependencies/SystemPlugin.js | 167 |
1 files changed, 0 insertions, 167 deletions
diff --git a/node_modules/webpack/lib/dependencies/SystemPlugin.js b/node_modules/webpack/lib/dependencies/SystemPlugin.js deleted file mode 100644 index 80993379..00000000 --- a/node_modules/webpack/lib/dependencies/SystemPlugin.js +++ /dev/null @@ -1,167 +0,0 @@ -/* - MIT License http://www.opensource.org/licenses/mit-license.php - Author Tobias Koppers @sokra -*/ - -"use strict"; - -const { - JAVASCRIPT_MODULE_TYPE_AUTO, - JAVASCRIPT_MODULE_TYPE_DYNAMIC -} = require("../ModuleTypeConstants"); -const RuntimeGlobals = require("../RuntimeGlobals"); -const WebpackError = require("../WebpackError"); -const { - evaluateToString, - expressionIsUnsupported, - toConstantDependency -} = require("../javascript/JavascriptParserHelpers"); -const makeSerializable = require("../util/makeSerializable"); -const ConstDependency = require("./ConstDependency"); -const SystemRuntimeModule = require("./SystemRuntimeModule"); - -/** @typedef {import("../../declarations/WebpackOptions").JavascriptParserOptions} JavascriptParserOptions */ -/** @typedef {import("../Compiler")} Compiler */ -/** @typedef {import("../Dependency").DependencyLocation} DependencyLocation */ -/** @typedef {import("../javascript/JavascriptParser")} Parser */ -/** @typedef {import("../javascript/JavascriptParser").Range} Range */ - -const PLUGIN_NAME = "SystemPlugin"; - -class SystemPlugin { - /** - * Apply the plugin - * @param {Compiler} compiler the compiler instance - * @returns {void} - */ - apply(compiler) { - compiler.hooks.compilation.tap( - PLUGIN_NAME, - (compilation, { normalModuleFactory }) => { - compilation.hooks.runtimeRequirementInModule - .for(RuntimeGlobals.system) - .tap(PLUGIN_NAME, (module, set) => { - set.add(RuntimeGlobals.requireScope); - }); - - compilation.hooks.runtimeRequirementInTree - .for(RuntimeGlobals.system) - .tap(PLUGIN_NAME, (chunk, set) => { - compilation.addRuntimeModule(chunk, new SystemRuntimeModule()); - }); - - /** - * @param {Parser} parser parser parser - * @param {JavascriptParserOptions} parserOptions parserOptions - * @returns {void} - */ - const handler = (parser, parserOptions) => { - if (parserOptions.system === undefined || !parserOptions.system) { - return; - } - - /** - * @param {string} name name - */ - const setNotSupported = name => { - parser.hooks.evaluateTypeof - .for(name) - .tap(PLUGIN_NAME, evaluateToString("undefined")); - parser.hooks.expression - .for(name) - .tap( - PLUGIN_NAME, - expressionIsUnsupported( - parser, - name + " is not supported by webpack." - ) - ); - }; - - parser.hooks.typeof - .for("System.import") - .tap( - PLUGIN_NAME, - toConstantDependency(parser, JSON.stringify("function")) - ); - parser.hooks.evaluateTypeof - .for("System.import") - .tap(PLUGIN_NAME, evaluateToString("function")); - parser.hooks.typeof - .for("System") - .tap( - PLUGIN_NAME, - toConstantDependency(parser, JSON.stringify("object")) - ); - parser.hooks.evaluateTypeof - .for("System") - .tap(PLUGIN_NAME, evaluateToString("object")); - - setNotSupported("System.set"); - setNotSupported("System.get"); - setNotSupported("System.register"); - - parser.hooks.expression.for("System").tap(PLUGIN_NAME, expr => { - const dep = new ConstDependency( - RuntimeGlobals.system, - /** @type {Range} */ (expr.range), - [RuntimeGlobals.system] - ); - dep.loc = /** @type {DependencyLocation} */ (expr.loc); - parser.state.module.addPresentationalDependency(dep); - return true; - }); - - parser.hooks.call.for("System.import").tap(PLUGIN_NAME, expr => { - parser.state.module.addWarning( - new SystemImportDeprecationWarning( - /** @type {DependencyLocation} */ (expr.loc) - ) - ); - - return parser.hooks.importCall.call({ - type: "ImportExpression", - source: - /** @type {import("estree").Literal} */ - (expr.arguments[0]), - loc: expr.loc, - range: expr.range - }); - }); - }; - - normalModuleFactory.hooks.parser - .for(JAVASCRIPT_MODULE_TYPE_AUTO) - .tap(PLUGIN_NAME, handler); - normalModuleFactory.hooks.parser - .for(JAVASCRIPT_MODULE_TYPE_DYNAMIC) - .tap(PLUGIN_NAME, handler); - } - ); - } -} - -class SystemImportDeprecationWarning extends WebpackError { - /** - * @param {DependencyLocation} loc location - */ - constructor(loc) { - super( - "System.import() is deprecated and will be removed soon. Use import() instead.\n" + - "For more info visit https://webpack.js.org/guides/code-splitting/" - ); - - this.name = "SystemImportDeprecationWarning"; - - this.loc = loc; - } -} - -makeSerializable( - SystemImportDeprecationWarning, - "webpack/lib/dependencies/SystemPlugin", - "SystemImportDeprecationWarning" -); - -module.exports = SystemPlugin; -module.exports.SystemImportDeprecationWarning = SystemImportDeprecationWarning; |
