webpack 5.106.2 → 5.107.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/lib/APIPlugin.js +1 -1
- package/lib/Cache.js +3 -6
- package/lib/CompatibilityPlugin.js +8 -7
- package/lib/Compilation.js +34 -26
- package/lib/Compiler.js +4 -13
- package/lib/ContextModule.js +2 -2
- package/lib/DefinePlugin.js +2 -2
- package/lib/Dependency.js +22 -1
- package/lib/DependencyTemplate.js +2 -1
- package/lib/EnvironmentPlugin.js +1 -1
- package/lib/EvalSourceMapDevToolPlugin.js +8 -9
- package/lib/ExternalModule.js +76 -15
- package/lib/ExternalModuleFactoryPlugin.js +5 -0
- package/lib/FileSystemInfo.js +187 -72
- package/lib/Generator.js +3 -3
- package/lib/HotModuleReplacementPlugin.js +26 -8
- package/lib/IgnorePlugin.js +2 -1
- package/lib/Module.js +19 -18
- package/lib/ModuleFactory.js +1 -1
- package/lib/ModuleSourceTypeConstants.js +31 -1
- package/lib/ModuleTypeConstants.js +12 -3
- package/lib/MultiCompiler.js +2 -2
- package/lib/NodeStuffPlugin.js +1 -1
- package/lib/NormalModule.js +13 -31
- package/lib/NormalModuleFactory.js +10 -2
- package/lib/Parser.js +1 -1
- package/lib/ProgressPlugin.js +129 -56
- package/lib/RuntimeGlobals.js +5 -5
- package/lib/RuntimeModule.js +9 -7
- package/lib/RuntimePlugin.js +11 -0
- package/lib/WarnCaseSensitiveModulesPlugin.js +70 -2
- package/lib/WarnDeprecatedOptionPlugin.js +1 -1
- package/lib/WarnNoModeSetPlugin.js +16 -1
- package/lib/Watching.js +2 -3
- package/lib/WebpackError.js +3 -77
- package/lib/WebpackIsIncludedPlugin.js +1 -1
- package/lib/WebpackOptionsApply.js +13 -1
- package/lib/asset/AssetBytesGenerator.js +6 -2
- package/lib/asset/AssetGenerator.js +22 -8
- package/lib/asset/AssetModulesPlugin.js +3 -1
- package/lib/asset/AssetSourceGenerator.js +6 -2
- package/lib/buildChunkGraph.js +4 -6
- package/lib/cache/PackFileCacheStrategy.js +4 -4
- package/lib/cli.js +3 -1
- package/lib/config/defaults.js +197 -10
- package/lib/config/normalization.js +3 -1
- package/lib/css/CssGenerator.js +320 -105
- package/lib/css/CssInjectStyleRuntimeModule.js +44 -42
- package/lib/css/CssLoadingRuntimeModule.js +22 -4
- package/lib/{CssModule.js → css/CssModule.js} +15 -15
- package/lib/css/CssModulesPlugin.js +166 -86
- package/lib/css/CssParser.js +566 -269
- package/lib/css/walkCssTokens.js +148 -2
- package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +1 -1
- package/lib/dependencies/CommonJsDependencyHelpers.js +63 -0
- package/lib/dependencies/CommonJsExportRequireDependency.js +54 -10
- package/lib/dependencies/CommonJsExportsParserPlugin.js +1 -1
- package/lib/dependencies/CommonJsFullRequireDependency.js +32 -9
- package/lib/dependencies/CommonJsImportsParserPlugin.js +4 -3
- package/lib/dependencies/CommonJsRequireDependency.js +67 -4
- package/lib/dependencies/ContextDependency.js +1 -1
- package/lib/dependencies/ContextDependencyHelpers.js +1 -1
- package/lib/dependencies/CreateRequireParserPlugin.js +1 -1
- package/lib/dependencies/CriticalDependencyWarning.js +1 -1
- package/lib/dependencies/CssIcssExportDependency.js +332 -67
- package/lib/dependencies/CssIcssImportDependency.js +49 -7
- package/lib/dependencies/CssIcssSymbolDependency.js +11 -3
- package/lib/dependencies/CssImportDependency.js +8 -0
- package/lib/dependencies/CssUrlDependency.js +25 -0
- package/lib/dependencies/HarmonyDetectionParserPlugin.js +1 -1
- package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +8 -7
- package/lib/dependencies/HarmonyExportExpressionDependency.js +22 -14
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +110 -3
- package/lib/dependencies/HarmonyImportDependency.js +10 -2
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +22 -1
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +1 -1
- package/lib/{HarmonyLinkingError.js → dependencies/HarmonyLinkingError.js} +5 -3
- package/lib/dependencies/HtmlInlineScriptDependency.js +133 -0
- package/lib/dependencies/HtmlInlineStyleDependency.js +101 -0
- package/lib/dependencies/HtmlScriptSrcDependency.js +318 -0
- package/lib/dependencies/HtmlSourceDependency.js +127 -0
- package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +1 -1
- package/lib/dependencies/ImportParserPlugin.js +2 -2
- package/lib/dependencies/ImportPhase.js +1 -1
- package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +1 -1
- package/lib/{RequireJsStuffPlugin.js → dependencies/RequireJsStuffPlugin.js} +7 -7
- package/lib/dependencies/SystemPlugin.js +1 -1
- package/lib/dependencies/WebAssemblyImportDependency.js +1 -1
- package/lib/dependencies/WorkerPlugin.js +2 -2
- package/lib/{DelegatedModule.js → dll/DelegatedModule.js} +31 -31
- package/lib/{DelegatedModuleFactoryPlugin.js → dll/DelegatedModuleFactoryPlugin.js} +4 -4
- package/lib/{DelegatedPlugin.js → dll/DelegatedPlugin.js} +2 -2
- package/lib/{DllEntryPlugin.js → dll/DllEntryPlugin.js} +4 -4
- package/lib/{DllModule.js → dll/DllModule.js} +24 -24
- package/lib/{DllModuleFactory.js → dll/DllModuleFactory.js} +4 -4
- package/lib/{DllPlugin.js → dll/DllPlugin.js} +6 -5
- package/lib/{DllReferencePlugin.js → dll/DllReferencePlugin.js} +14 -14
- package/lib/{LibManifestPlugin.js → dll/LibManifestPlugin.js} +9 -9
- package/lib/{AsyncDependencyToInitialChunkError.js → errors/AsyncDependencyToInitialChunkError.js} +2 -2
- package/lib/errors/BuildCycleError.js +1 -1
- package/lib/{ChunkRenderError.js → errors/ChunkRenderError.js} +1 -1
- package/lib/{CodeGenerationError.js → errors/CodeGenerationError.js} +1 -1
- package/lib/{CommentCompilationWarning.js → errors/CommentCompilationWarning.js} +3 -3
- package/lib/{ConcurrentCompilationError.js → errors/ConcurrentCompilationError.js} +4 -2
- package/lib/{EnvironmentNotSupportAsyncWarning.js → errors/EnvironmentNotSupportAsyncWarning.js} +4 -4
- package/lib/{HookWebpackError.js → errors/HookWebpackError.js} +5 -5
- package/lib/{IgnoreErrorModuleFactory.js → errors/IgnoreErrorModuleFactory.js} +4 -4
- package/lib/{InvalidDependenciesModuleWarning.js → errors/InvalidDependenciesModuleWarning.js} +3 -3
- package/lib/errors/JSONParseError.js +114 -0
- package/lib/{ModuleBuildError.js → errors/ModuleBuildError.js} +5 -5
- package/lib/{ModuleDependencyError.js → errors/ModuleDependencyError.js} +2 -2
- package/lib/{ModuleDependencyWarning.js → errors/ModuleDependencyWarning.js} +4 -4
- package/lib/{ModuleError.js → errors/ModuleError.js} +5 -5
- package/lib/{ModuleHashingError.js → errors/ModuleHashingError.js} +1 -1
- package/lib/{ModuleNotFoundError.js → errors/ModuleNotFoundError.js} +2 -2
- package/lib/{ModuleParseError.js → errors/ModuleParseError.js} +8 -6
- package/lib/{ModuleRestoreError.js → errors/ModuleRestoreError.js} +1 -1
- package/lib/{ModuleStoreError.js → errors/ModuleStoreError.js} +1 -1
- package/lib/{ModuleWarning.js → errors/ModuleWarning.js} +5 -5
- package/lib/{NodeStuffInWebError.js → errors/NodeStuffInWebError.js} +4 -4
- package/lib/errors/NonErrorEmittedError.js +28 -0
- package/lib/{UnhandledSchemeError.js → errors/UnhandledSchemeError.js} +2 -2
- package/lib/{UnsupportedFeatureWarning.js → errors/UnsupportedFeatureWarning.js} +3 -3
- package/lib/errors/WebpackError.js +84 -0
- package/lib/html/HtmlGenerator.js +379 -0
- package/lib/html/HtmlModulesPlugin.js +433 -0
- package/lib/html/HtmlParser.js +1489 -0
- package/lib/html/walkHtmlTokens.js +2733 -0
- package/lib/ids/IdHelpers.js +2 -1
- package/lib/index.js +34 -15
- package/lib/javascript/JavascriptModulesPlugin.js +89 -8
- package/lib/javascript/JavascriptParser.js +197 -16
- package/lib/javascript/JavascriptParserHelpers.js +1 -1
- package/lib/json/JsonParser.js +7 -16
- package/lib/library/AbstractLibraryPlugin.js +1 -1
- package/lib/library/EnableLibraryPlugin.js +1 -1
- package/lib/{FalseIIFEUmdWarning.js → library/FalseIIFEUmdWarning.js} +1 -1
- package/lib/library/ModuleLibraryPlugin.js +74 -0
- package/lib/node/NodeEnvironmentPlugin.js +4 -2
- package/lib/node/nodeConsole.js +113 -64
- package/lib/optimize/ConcatenatedModule.js +51 -6
- package/lib/optimize/InnerGraph.js +1 -1
- package/lib/optimize/InnerGraphPlugin.js +11 -1
- package/lib/optimize/MinMaxSizeWarning.js +4 -4
- package/lib/optimize/ModuleConcatenationPlugin.js +15 -7
- package/lib/optimize/RealContentHashPlugin.js +89 -26
- package/lib/optimize/SideEffectsFlagPlugin.js +111 -3
- package/lib/optimize/SplitChunksPlugin.js +1 -1
- package/lib/performance/AssetsOverSizeLimitWarning.js +2 -2
- package/lib/performance/EntrypointsOverSizeLimitWarning.js +2 -2
- package/lib/performance/NoAsyncChunksWarning.js +5 -3
- package/lib/performance/SizeLimitsPlugin.js +1 -1
- package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +4 -1
- package/lib/rules/UseEffectRulePlugin.js +4 -3
- package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +119 -13
- package/lib/runtime/SetAnonymousDefaultNameRuntimeModule.js +35 -0
- package/lib/schemes/DataUriPlugin.js +13 -1
- package/lib/schemes/VirtualUrlPlugin.js +1 -1
- package/lib/serialization/SerializerMiddleware.js +2 -2
- package/lib/sharing/ConsumeSharedPlugin.js +2 -2
- package/lib/sharing/ConsumeSharedRuntimeModule.js +8 -4
- package/lib/sharing/ProvideSharedModule.js +1 -1
- package/lib/sharing/ProvideSharedPlugin.js +1 -1
- package/lib/sharing/resolveMatchedConfigs.js +1 -1
- package/lib/stats/DefaultStatsFactoryPlugin.js +2 -2
- package/lib/stats/DefaultStatsPresetPlugin.js +1 -1
- package/lib/stats/DefaultStatsPrinterPlugin.js +1 -1
- package/lib/stats/StatsFactory.js +1 -1
- package/lib/typescript/TypeScriptPlugin.js +210 -0
- package/lib/url/URLParserPlugin.js +2 -2
- package/lib/util/AsyncQueue.js +2 -2
- package/lib/util/Hash.js +2 -2
- package/lib/util/LocConverter.js +53 -0
- package/lib/util/SortableSet.js +1 -1
- package/lib/util/cleverMerge.js +2 -2
- package/lib/util/comparators.js +3 -3
- package/lib/util/concatenate.js +3 -3
- package/lib/util/conventions.js +42 -1
- package/lib/util/createMappings.js +118 -0
- package/lib/{formatLocation.js → util/formatLocation.js} +2 -2
- package/lib/{SizeFormatHelpers.js → util/formatSize.js} +3 -1
- package/lib/util/fs.js +8 -8
- package/lib/util/hash/md4.js +1 -1
- package/lib/util/hash/xxhash64.js +1 -1
- package/lib/util/identifier.js +48 -0
- package/lib/util/internalSerializables.js +35 -19
- package/lib/util/magicComment.js +10 -7
- package/lib/util/parseJson.js +2 -73
- package/lib/util/source.js +21 -0
- package/lib/util/topologicalSort.js +69 -0
- package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +2 -2
- package/lib/wasm-async/AsyncWebAssemblyParser.js +1 -1
- package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +5 -3
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +1 -1
- package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +5 -3
- package/lib/webpack.js +3 -1
- package/package.json +22 -20
- package/schemas/WebpackOptions.check.js +1 -1
- package/schemas/WebpackOptions.json +118 -3
- package/schemas/plugins/{DllPlugin.check.d.ts → HtmlGeneratorOptions.check.d.ts} +1 -1
- package/schemas/plugins/HtmlGeneratorOptions.check.js +6 -0
- package/schemas/plugins/HtmlGeneratorOptions.json +3 -0
- package/schemas/plugins/ProgressPlugin.check.js +1 -1
- package/schemas/plugins/ProgressPlugin.json +22 -0
- package/schemas/plugins/{DllReferencePlugin.check.d.ts → css/CssAutoOrModuleParserOptions.check.d.ts} +1 -1
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +6 -0
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.json +3 -0
- package/schemas/plugins/dll/DllPlugin.check.d.ts +7 -0
- package/schemas/plugins/dll/DllReferencePlugin.check.d.ts +7 -0
- package/types.d.ts +810 -101
- package/lib/CaseSensitiveModulesWarning.js +0 -80
- package/lib/GraphHelpers.js +0 -49
- package/lib/NoModeWarning.js +0 -23
- package/lib/css/CssMergeStyleSheetsRuntimeModule.js +0 -57
- /package/lib/{AbstractMethodError.js → errors/AbstractMethodError.js} +0 -0
- /package/schemas/plugins/{DllPlugin.check.js → dll/DllPlugin.check.js} +0 -0
- /package/schemas/plugins/{DllPlugin.json → dll/DllPlugin.json} +0 -0
- /package/schemas/plugins/{DllReferencePlugin.check.js → dll/DllReferencePlugin.check.js} +0 -0
- /package/schemas/plugins/{DllReferencePlugin.json → dll/DllReferencePlugin.json} +0 -0
package/lib/Module.js
CHANGED
|
@@ -51,7 +51,7 @@ const makeSerializable = require("./util/makeSerializable");
|
|
|
51
51
|
* @template T
|
|
52
52
|
* @typedef {import("./InitFragment")<T>} InitFragment
|
|
53
53
|
*/
|
|
54
|
-
/** @typedef {import("./WebpackError")} WebpackError */
|
|
54
|
+
/** @typedef {import("./errors/WebpackError")} WebpackError */
|
|
55
55
|
/** @typedef {import("./json/JsonData")} JsonData */
|
|
56
56
|
/** @typedef {import("./serialization/ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */
|
|
57
57
|
/** @typedef {import("./serialization/ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */
|
|
@@ -129,7 +129,7 @@ const makeSerializable = require("./util/makeSerializable");
|
|
|
129
129
|
/**
|
|
130
130
|
* Defines the code gen value type used by this module.
|
|
131
131
|
* @template {string} K
|
|
132
|
-
* @typedef {K extends keyof AllCodeGenerationSchemas ? AllCodeGenerationSchemas[K] : EXPECTED_ANY} CodeGenValue
|
|
132
|
+
* @typedef {K extends (keyof AllCodeGenerationSchemas) ? AllCodeGenerationSchemas[K] : EXPECTED_ANY} CodeGenValue
|
|
133
133
|
*/
|
|
134
134
|
|
|
135
135
|
/**
|
|
@@ -173,7 +173,8 @@ const makeSerializable = require("./util/makeSerializable");
|
|
|
173
173
|
* @property {boolean=} treatAsCommonJs
|
|
174
174
|
* @property {boolean=} async
|
|
175
175
|
* @property {boolean=} sideEffectFree
|
|
176
|
-
* @property {boolean=}
|
|
176
|
+
* @property {boolean=} isCssModule
|
|
177
|
+
* @property {boolean=} needIdInConcatenation
|
|
177
178
|
* @property {Record<string, string>=} jsIncompatibleExports
|
|
178
179
|
* @property {Map<string, Record<string, string>>=} exportsFinalNameByRuntime
|
|
179
180
|
* @property {Map<string, string>=} exportsSourceByRuntime
|
|
@@ -303,9 +304,9 @@ class Module extends DependenciesBlock {
|
|
|
303
304
|
/** @type {boolean} */
|
|
304
305
|
this.hot = false;
|
|
305
306
|
// Info from Build
|
|
306
|
-
/** @type {
|
|
307
|
+
/** @type {Error[] | undefined} */
|
|
307
308
|
this._warnings = undefined;
|
|
308
|
-
/** @type {
|
|
309
|
+
/** @type {Error[] | undefined} */
|
|
309
310
|
this._errors = undefined;
|
|
310
311
|
/** @type {BuildMeta | undefined} */
|
|
311
312
|
this.buildMeta = undefined;
|
|
@@ -782,7 +783,7 @@ class Module extends DependenciesBlock {
|
|
|
782
783
|
|
|
783
784
|
/**
|
|
784
785
|
* Adds the provided warning to the module.
|
|
785
|
-
* @param {
|
|
786
|
+
* @param {Error} warning the warning
|
|
786
787
|
* @returns {void}
|
|
787
788
|
*/
|
|
788
789
|
addWarning(warning) {
|
|
@@ -794,7 +795,7 @@ class Module extends DependenciesBlock {
|
|
|
794
795
|
|
|
795
796
|
/**
|
|
796
797
|
* Returns list of warnings if any.
|
|
797
|
-
* @returns {
|
|
798
|
+
* @returns {Error[] | undefined} list of warnings if any
|
|
798
799
|
*/
|
|
799
800
|
getWarnings() {
|
|
800
801
|
return this._warnings;
|
|
@@ -810,7 +811,7 @@ class Module extends DependenciesBlock {
|
|
|
810
811
|
|
|
811
812
|
/**
|
|
812
813
|
* Adds the provided error to the module.
|
|
813
|
-
* @param {
|
|
814
|
+
* @param {Error} error the error
|
|
814
815
|
* @returns {void}
|
|
815
816
|
*/
|
|
816
817
|
addError(error) {
|
|
@@ -822,7 +823,7 @@ class Module extends DependenciesBlock {
|
|
|
822
823
|
|
|
823
824
|
/**
|
|
824
825
|
* Returns list of errors if any.
|
|
825
|
-
* @returns {
|
|
826
|
+
* @returns {Error[] | undefined} list of errors if any
|
|
826
827
|
*/
|
|
827
828
|
getErrors() {
|
|
828
829
|
return this._errors;
|
|
@@ -1027,7 +1028,7 @@ class Module extends DependenciesBlock {
|
|
|
1027
1028
|
* @returns {string} a unique identifier of the module
|
|
1028
1029
|
*/
|
|
1029
1030
|
identifier() {
|
|
1030
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
1031
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
1031
1032
|
|
|
1032
1033
|
throw new AbstractMethodError();
|
|
1033
1034
|
}
|
|
@@ -1040,7 +1041,7 @@ class Module extends DependenciesBlock {
|
|
|
1040
1041
|
* @returns {string} a user readable identifier of the module
|
|
1041
1042
|
*/
|
|
1042
1043
|
readableIdentifier(requestShortener) {
|
|
1043
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
1044
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
1044
1045
|
|
|
1045
1046
|
throw new AbstractMethodError();
|
|
1046
1047
|
}
|
|
@@ -1057,7 +1058,7 @@ class Module extends DependenciesBlock {
|
|
|
1057
1058
|
* @returns {void}
|
|
1058
1059
|
*/
|
|
1059
1060
|
build(options, compilation, resolver, fs, callback) {
|
|
1060
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
1061
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
1061
1062
|
|
|
1062
1063
|
throw new AbstractMethodError();
|
|
1063
1064
|
}
|
|
@@ -1099,7 +1100,7 @@ class Module extends DependenciesBlock {
|
|
|
1099
1100
|
*/
|
|
1100
1101
|
source(dependencyTemplates, runtimeTemplate, type = JAVASCRIPT_TYPE) {
|
|
1101
1102
|
if (this.codeGeneration === Module.prototype.codeGeneration) {
|
|
1102
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
1103
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
1103
1104
|
|
|
1104
1105
|
throw new AbstractMethodError();
|
|
1105
1106
|
}
|
|
@@ -1135,7 +1136,7 @@ class Module extends DependenciesBlock {
|
|
|
1135
1136
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
1136
1137
|
*/
|
|
1137
1138
|
size(type) {
|
|
1138
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
1139
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
1139
1140
|
|
|
1140
1141
|
throw new AbstractMethodError();
|
|
1141
1142
|
}
|
|
@@ -1393,13 +1394,13 @@ Object.defineProperty(Module.prototype, "errors", {
|
|
|
1393
1394
|
/**
|
|
1394
1395
|
* Returns errors.
|
|
1395
1396
|
* @deprecated
|
|
1396
|
-
* @returns {
|
|
1397
|
+
* @returns {Error[]} errors
|
|
1397
1398
|
*/
|
|
1398
1399
|
get: util.deprecate(
|
|
1399
1400
|
/**
|
|
1400
1401
|
* Returns errors.
|
|
1401
1402
|
* @this {Module}
|
|
1402
|
-
* @returns {
|
|
1403
|
+
* @returns {Error[]} errors
|
|
1403
1404
|
*/
|
|
1404
1405
|
function errors() {
|
|
1405
1406
|
if (this._errors === undefined) {
|
|
@@ -1417,13 +1418,13 @@ Object.defineProperty(Module.prototype, "warnings", {
|
|
|
1417
1418
|
/**
|
|
1418
1419
|
* Returns warnings.
|
|
1419
1420
|
* @deprecated
|
|
1420
|
-
* @returns {
|
|
1421
|
+
* @returns {Error[]} warnings
|
|
1421
1422
|
*/
|
|
1422
1423
|
get: util.deprecate(
|
|
1423
1424
|
/**
|
|
1424
1425
|
* Returns warnings.
|
|
1425
1426
|
* @this {Module}
|
|
1426
|
-
* @returns {
|
|
1427
|
+
* @returns {Error[]} warnings
|
|
1427
1428
|
*/
|
|
1428
1429
|
function warnings() {
|
|
1429
1430
|
if (this._warnings === undefined) {
|
package/lib/ModuleFactory.js
CHANGED
|
@@ -40,6 +40,16 @@ const CSS_IMPORT_TYPE = "css-import";
|
|
|
40
40
|
*/
|
|
41
41
|
const CSS_URL_TYPE = "css-url";
|
|
42
42
|
|
|
43
|
+
/**
|
|
44
|
+
* @type {Readonly<"css-text">}
|
|
45
|
+
*/
|
|
46
|
+
const CSS_TEXT_TYPE = "css-text";
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* @type {Readonly<"html">}
|
|
50
|
+
*/
|
|
51
|
+
const HTML_TYPE = "html";
|
|
52
|
+
|
|
43
53
|
/**
|
|
44
54
|
* @type {Readonly<"share-init">}
|
|
45
55
|
*/
|
|
@@ -62,7 +72,7 @@ const UNKNOWN_TYPE = "unknown";
|
|
|
62
72
|
|
|
63
73
|
/**
|
|
64
74
|
* Defines the all types type used by this module.
|
|
65
|
-
* @typedef {JAVASCRIPT_TYPE | RUNTIME_TYPE | WEBASSEMBLY_TYPE | ASSET_TYPE | CSS_TYPE | CSS_IMPORT_TYPE | CSS_URL_TYPE | SHARED_INIT_TYPE | REMOTE_GENERATOR_TYPE | CONSUME_SHARED_GENERATOR_TYPE | UNKNOWN_TYPE} AllTypes
|
|
75
|
+
* @typedef {JAVASCRIPT_TYPE | RUNTIME_TYPE | WEBASSEMBLY_TYPE | ASSET_TYPE | CSS_TYPE | CSS_IMPORT_TYPE | CSS_URL_TYPE | CSS_TEXT_TYPE | HTML_TYPE | SHARED_INIT_TYPE | REMOTE_GENERATOR_TYPE | CONSUME_SHARED_GENERATOR_TYPE | UNKNOWN_TYPE} AllTypes
|
|
66
76
|
*/
|
|
67
77
|
|
|
68
78
|
/**
|
|
@@ -118,11 +128,26 @@ const CSS_TYPES = new Set([CSS_TYPE]);
|
|
|
118
128
|
* @type {ReadonlySet<"css-url">}
|
|
119
129
|
*/
|
|
120
130
|
const CSS_URL_TYPES = new Set([CSS_URL_TYPE]);
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* @type {ReadonlySet<"css-text">}
|
|
134
|
+
*/
|
|
135
|
+
const CSS_TEXT_TYPES = new Set([CSS_TEXT_TYPE]);
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* @type {ReadonlySet<"javascript" | "css-text">}
|
|
139
|
+
*/
|
|
140
|
+
const JAVASCRIPT_AND_CSS_TEXT_TYPES = new Set([JAVASCRIPT_TYPE, CSS_TEXT_TYPE]);
|
|
121
141
|
/**
|
|
122
142
|
* @type {ReadonlySet<"css-import">}
|
|
123
143
|
*/
|
|
124
144
|
const CSS_IMPORT_TYPES = new Set([CSS_IMPORT_TYPE]);
|
|
125
145
|
|
|
146
|
+
/**
|
|
147
|
+
* @type {ReadonlySet<"html">}
|
|
148
|
+
*/
|
|
149
|
+
const HTML_TYPES = new Set([HTML_TYPE]);
|
|
150
|
+
|
|
126
151
|
/**
|
|
127
152
|
* @type {ReadonlySet<"webassembly">}
|
|
128
153
|
*/
|
|
@@ -160,11 +185,16 @@ module.exports.ASSET_TYPES = ASSET_TYPES;
|
|
|
160
185
|
module.exports.CONSUME_SHARED_TYPES = CONSUME_SHARED_TYPES;
|
|
161
186
|
module.exports.CSS_IMPORT_TYPE = CSS_IMPORT_TYPE;
|
|
162
187
|
module.exports.CSS_IMPORT_TYPES = CSS_IMPORT_TYPES;
|
|
188
|
+
module.exports.CSS_TEXT_TYPE = CSS_TEXT_TYPE;
|
|
189
|
+
module.exports.CSS_TEXT_TYPES = CSS_TEXT_TYPES;
|
|
163
190
|
module.exports.CSS_TYPE = CSS_TYPE;
|
|
164
191
|
module.exports.CSS_TYPE = CSS_TYPE;
|
|
165
192
|
module.exports.CSS_TYPES = CSS_TYPES;
|
|
166
193
|
module.exports.CSS_URL_TYPE = CSS_URL_TYPE;
|
|
167
194
|
module.exports.CSS_URL_TYPES = CSS_URL_TYPES;
|
|
195
|
+
module.exports.HTML_TYPE = HTML_TYPE;
|
|
196
|
+
module.exports.HTML_TYPES = HTML_TYPES;
|
|
197
|
+
module.exports.JAVASCRIPT_AND_CSS_TEXT_TYPES = JAVASCRIPT_AND_CSS_TEXT_TYPES;
|
|
168
198
|
module.exports.JAVASCRIPT_AND_CSS_TYPES = JAVASCRIPT_AND_CSS_TYPES;
|
|
169
199
|
module.exports.JAVASCRIPT_AND_CSS_URL_TYPES = JAVASCRIPT_AND_CSS_URL_TYPES;
|
|
170
200
|
module.exports.JAVASCRIPT_TYPE = JAVASCRIPT_TYPE;
|
|
@@ -65,6 +65,13 @@ const CSS_MODULE_TYPE_MODULE = "css/module";
|
|
|
65
65
|
*/
|
|
66
66
|
const CSS_MODULE_TYPE_AUTO = "css/auto";
|
|
67
67
|
|
|
68
|
+
/**
|
|
69
|
+
* @type {Readonly<"html">}
|
|
70
|
+
* This is the module type used for HTML files when `experiments.html` is enabled.
|
|
71
|
+
* HTML modules are emitted as HTML assets and can be used as entry points.
|
|
72
|
+
*/
|
|
73
|
+
const HTML_MODULE_TYPE = "html";
|
|
74
|
+
|
|
68
75
|
/**
|
|
69
76
|
* @type {Readonly<"asset">}
|
|
70
77
|
* This is the module type used for automatically choosing between `asset/inline`, `asset/resource` based on asset size limit (8096).
|
|
@@ -140,11 +147,12 @@ const WEBPACK_MODULE_TYPE_LAZY_COMPILATION_PROXY = "lazy-compilation-proxy";
|
|
|
140
147
|
/** @typedef {"javascript/auto" | "javascript/dynamic" | "javascript/esm"} JavaScriptModuleTypes */
|
|
141
148
|
/** @typedef {"json"} JSONModuleType */
|
|
142
149
|
/** @typedef {"webassembly/async" | "webassembly/sync"} WebAssemblyModuleTypes */
|
|
143
|
-
/** @typedef {"css" | "css/global" | "css/module" | "css/auto"}
|
|
150
|
+
/** @typedef {"css" | "css/global" | "css/module" | "css/auto"} CssModuleTypes */
|
|
151
|
+
/** @typedef {"html"} HTMLModuleType */
|
|
144
152
|
/** @typedef {"asset" | "asset/inline" | "asset/resource" | "asset/source" | "asset/raw-data-url"} AssetModuleTypes */
|
|
145
153
|
/** @typedef {"runtime" | "fallback-module" | "remote-module" | "provide-module" | "consume-shared-module" | "lazy-compilation-proxy"} WebpackModuleTypes */
|
|
146
154
|
/** @typedef {string} UnknownModuleTypes */
|
|
147
|
-
/** @typedef {JavaScriptModuleTypes | JSONModuleType | WebAssemblyModuleTypes |
|
|
155
|
+
/** @typedef {JavaScriptModuleTypes | JSONModuleType | WebAssemblyModuleTypes | CssModuleTypes | HTMLModuleType | AssetModuleTypes | WebpackModuleTypes | UnknownModuleTypes} ModuleTypes */
|
|
148
156
|
|
|
149
157
|
module.exports.ASSET_MODULE_TYPE = ASSET_MODULE_TYPE;
|
|
150
158
|
module.exports.ASSET_MODULE_TYPE_BYTES = ASSET_MODULE_TYPE_BYTES;
|
|
@@ -152,7 +160,7 @@ module.exports.ASSET_MODULE_TYPE_INLINE = ASSET_MODULE_TYPE_INLINE;
|
|
|
152
160
|
module.exports.ASSET_MODULE_TYPE_RAW_DATA_URL = ASSET_MODULE_TYPE_RAW_DATA_URL;
|
|
153
161
|
module.exports.ASSET_MODULE_TYPE_RESOURCE = ASSET_MODULE_TYPE_RESOURCE;
|
|
154
162
|
module.exports.ASSET_MODULE_TYPE_SOURCE = ASSET_MODULE_TYPE_SOURCE;
|
|
155
|
-
/** @type {
|
|
163
|
+
/** @type {CssModuleTypes[]} */
|
|
156
164
|
module.exports.CSS_MODULES = [
|
|
157
165
|
CSS_MODULE_TYPE,
|
|
158
166
|
CSS_MODULE_TYPE_GLOBAL,
|
|
@@ -163,6 +171,7 @@ module.exports.CSS_MODULE_TYPE = CSS_MODULE_TYPE;
|
|
|
163
171
|
module.exports.CSS_MODULE_TYPE_AUTO = CSS_MODULE_TYPE_AUTO;
|
|
164
172
|
module.exports.CSS_MODULE_TYPE_GLOBAL = CSS_MODULE_TYPE_GLOBAL;
|
|
165
173
|
module.exports.CSS_MODULE_TYPE_MODULE = CSS_MODULE_TYPE_MODULE;
|
|
174
|
+
module.exports.HTML_MODULE_TYPE = HTML_MODULE_TYPE;
|
|
166
175
|
/** @type {JavaScriptModuleTypes[]} */
|
|
167
176
|
module.exports.JAVASCRIPT_MODULES = [
|
|
168
177
|
JAVASCRIPT_MODULE_TYPE_AUTO,
|
package/lib/MultiCompiler.js
CHANGED
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
const asyncLib = require("neo-async");
|
|
9
9
|
const { MultiHook, SyncHook } = require("tapable");
|
|
10
10
|
|
|
11
|
-
const ConcurrentCompilationError = require("./ConcurrentCompilationError");
|
|
12
11
|
const MultiStats = require("./MultiStats");
|
|
13
12
|
const MultiWatching = require("./MultiWatching");
|
|
14
|
-
const
|
|
13
|
+
const ConcurrentCompilationError = require("./errors/ConcurrentCompilationError");
|
|
14
|
+
const WebpackError = require("./errors/WebpackError");
|
|
15
15
|
const ArrayQueue = require("./util/ArrayQueue");
|
|
16
16
|
|
|
17
17
|
/**
|
package/lib/NodeStuffPlugin.js
CHANGED
|
@@ -10,13 +10,13 @@ const {
|
|
|
10
10
|
JAVASCRIPT_MODULE_TYPE_DYNAMIC,
|
|
11
11
|
JAVASCRIPT_MODULE_TYPE_ESM
|
|
12
12
|
} = require("./ModuleTypeConstants");
|
|
13
|
-
const NodeStuffInWebError = require("./NodeStuffInWebError");
|
|
14
13
|
const RuntimeGlobals = require("./RuntimeGlobals");
|
|
15
14
|
const CachedConstDependency = require("./dependencies/CachedConstDependency");
|
|
16
15
|
const ConstDependency = require("./dependencies/ConstDependency");
|
|
17
16
|
const ExternalModuleDependency = require("./dependencies/ExternalModuleDependency");
|
|
18
17
|
const ExternalModuleInitFragmentDependency = require("./dependencies/ExternalModuleInitFragmentDependency");
|
|
19
18
|
const ImportMetaPlugin = require("./dependencies/ImportMetaPlugin");
|
|
19
|
+
const NodeStuffInWebError = require("./errors/NodeStuffInWebError");
|
|
20
20
|
const { evaluateToString } = require("./javascript/JavascriptParserHelpers");
|
|
21
21
|
const { relative } = require("./util/fs");
|
|
22
22
|
const { parseResource } = require("./util/identifier");
|
package/lib/NormalModule.js
CHANGED
|
@@ -20,18 +20,17 @@ const {
|
|
|
20
20
|
SourceMapSource
|
|
21
21
|
} = require("webpack-sources");
|
|
22
22
|
const Compilation = require("./Compilation");
|
|
23
|
-
const HookWebpackError = require("./HookWebpackError");
|
|
24
23
|
const Module = require("./Module");
|
|
25
|
-
const ModuleBuildError = require("./ModuleBuildError");
|
|
26
|
-
const ModuleError = require("./ModuleError");
|
|
27
24
|
const ModuleGraphConnection = require("./ModuleGraphConnection");
|
|
28
|
-
const ModuleParseError = require("./ModuleParseError");
|
|
29
25
|
const { JAVASCRIPT_MODULE_TYPE_AUTO } = require("./ModuleTypeConstants");
|
|
30
|
-
const ModuleWarning = require("./ModuleWarning");
|
|
31
26
|
const RuntimeGlobals = require("./RuntimeGlobals");
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
27
|
+
const HookWebpackError = require("./errors/HookWebpackError");
|
|
28
|
+
const ModuleBuildError = require("./errors/ModuleBuildError");
|
|
29
|
+
const ModuleError = require("./errors/ModuleError");
|
|
30
|
+
const ModuleParseError = require("./errors/ModuleParseError");
|
|
31
|
+
const ModuleWarning = require("./errors/ModuleWarning");
|
|
32
|
+
const NonErrorEmittedError = require("./errors/NonErrorEmittedError");
|
|
33
|
+
const UnhandledSchemeError = require("./errors/UnhandledSchemeError");
|
|
35
34
|
const LazySet = require("./util/LazySet");
|
|
36
35
|
const { isSubset } = require("./util/SetHelpers");
|
|
37
36
|
const { getScheme } = require("./util/URLAbsoluteSpecifier");
|
|
@@ -44,6 +43,7 @@ const {
|
|
|
44
43
|
} = require("./util/comparators");
|
|
45
44
|
const createHash = require("./util/createHash");
|
|
46
45
|
const { createFakeHook } = require("./util/deprecation");
|
|
46
|
+
const formatLocation = require("./util/formatLocation");
|
|
47
47
|
const { join } = require("./util/fs");
|
|
48
48
|
const {
|
|
49
49
|
absolutify,
|
|
@@ -119,7 +119,7 @@ const parseJson = require("./util/parseJson");
|
|
|
119
119
|
/** @typedef {(content: string) => boolean} NoParseFn */
|
|
120
120
|
|
|
121
121
|
const getInvalidDependenciesModuleWarning = memoize(() =>
|
|
122
|
-
require("./InvalidDependenciesModuleWarning")
|
|
122
|
+
require("./errors/InvalidDependenciesModuleWarning")
|
|
123
123
|
);
|
|
124
124
|
|
|
125
125
|
const getExtractSourceMap = memoize(() => require("./util/extractSourceMap"));
|
|
@@ -207,24 +207,6 @@ const asBuffer = (input) => {
|
|
|
207
207
|
return input;
|
|
208
208
|
};
|
|
209
209
|
|
|
210
|
-
class NonErrorEmittedError extends WebpackError {
|
|
211
|
-
/**
|
|
212
|
-
* @param {EXPECTED_ANY} error value which is not an instance of Error
|
|
213
|
-
*/
|
|
214
|
-
constructor(error) {
|
|
215
|
-
super();
|
|
216
|
-
|
|
217
|
-
this.name = "NonErrorEmittedError";
|
|
218
|
-
this.message = `(Emitted value instead of an instance of Error) ${error}`;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
makeSerializable(
|
|
223
|
-
NonErrorEmittedError,
|
|
224
|
-
"webpack/lib/NormalModule",
|
|
225
|
-
"NonErrorEmittedError"
|
|
226
|
-
);
|
|
227
|
-
|
|
228
210
|
/** @typedef {[string | Buffer, string | RawSourceMap | undefined, PreparsedAst | undefined]} Result */
|
|
229
211
|
|
|
230
212
|
/** @typedef {LoaderContext<EXPECTED_ANY>} AnyLoaderContext */
|
|
@@ -394,7 +376,7 @@ class NormalModule extends Module {
|
|
|
394
376
|
this.extractSourceMap = extractSourceMap;
|
|
395
377
|
|
|
396
378
|
// Info from Build
|
|
397
|
-
/** @type {
|
|
379
|
+
/** @type {Error | null} */
|
|
398
380
|
this.error = null;
|
|
399
381
|
/**
|
|
400
382
|
* @private
|
|
@@ -1176,7 +1158,7 @@ class NormalModule extends Module {
|
|
|
1176
1158
|
}
|
|
1177
1159
|
|
|
1178
1160
|
/**
|
|
1179
|
-
* @param {
|
|
1161
|
+
* @param {Error} error the error
|
|
1180
1162
|
* @returns {void}
|
|
1181
1163
|
*/
|
|
1182
1164
|
markModuleAsErrored(error) {
|
|
@@ -1328,7 +1310,7 @@ class NormalModule extends Module {
|
|
|
1328
1310
|
try {
|
|
1329
1311
|
hooks.beforeSnapshot.call(this);
|
|
1330
1312
|
} catch (err) {
|
|
1331
|
-
this.markModuleAsErrored(/** @type {
|
|
1313
|
+
this.markModuleAsErrored(/** @type {Error} */ (err));
|
|
1332
1314
|
return callback();
|
|
1333
1315
|
}
|
|
1334
1316
|
|
|
@@ -1420,7 +1402,7 @@ class NormalModule extends Module {
|
|
|
1420
1402
|
try {
|
|
1421
1403
|
hooks.beforeParse.call(this);
|
|
1422
1404
|
} catch (err) {
|
|
1423
|
-
this.markModuleAsErrored(/** @type {
|
|
1405
|
+
this.markModuleAsErrored(/** @type {Error} */ (err));
|
|
1424
1406
|
this._initBuildHash(compilation);
|
|
1425
1407
|
return callback();
|
|
1426
1408
|
}
|
|
@@ -31,6 +31,7 @@ const { getScheme } = require("./util/URLAbsoluteSpecifier");
|
|
|
31
31
|
const { cachedCleverMerge, cachedSetProperty } = require("./util/cleverMerge");
|
|
32
32
|
const { join } = require("./util/fs");
|
|
33
33
|
const {
|
|
34
|
+
escapeHashInPathRequest,
|
|
34
35
|
parseResource,
|
|
35
36
|
parseResourceWithoutFragment
|
|
36
37
|
} = require("./util/identifier");
|
|
@@ -132,8 +133,9 @@ const {
|
|
|
132
133
|
/** @typedef {import("./ModuleTypeConstants").CSS_MODULE_TYPE_GLOBAL} CSS_MODULE_TYPE_GLOBAL */
|
|
133
134
|
/** @typedef {import("./ModuleTypeConstants").CSS_MODULE_TYPE_MODULE} CSS_MODULE_TYPE_MODULE */
|
|
134
135
|
/** @typedef {import("./ModuleTypeConstants").CSS_MODULE_TYPE_AUTO} CSS_MODULE_TYPE_AUTO */
|
|
136
|
+
/** @typedef {import("./ModuleTypeConstants").HTML_MODULE_TYPE} HTML_MODULE_TYPE */
|
|
135
137
|
|
|
136
|
-
/** @typedef {JAVASCRIPT_MODULE_TYPE_AUTO | JAVASCRIPT_MODULE_TYPE_DYNAMIC | JAVASCRIPT_MODULE_TYPE_ESM | JSON_MODULE_TYPE | ASSET_MODULE_TYPE | ASSET_MODULE_TYPE_INLINE | ASSET_MODULE_TYPE_RESOURCE | ASSET_MODULE_TYPE_SOURCE | WEBASSEMBLY_MODULE_TYPE_ASYNC | WEBASSEMBLY_MODULE_TYPE_SYNC | CSS_MODULE_TYPE | CSS_MODULE_TYPE_GLOBAL | CSS_MODULE_TYPE_MODULE | CSS_MODULE_TYPE_AUTO} KnownNormalModuleTypes */
|
|
138
|
+
/** @typedef {JAVASCRIPT_MODULE_TYPE_AUTO | JAVASCRIPT_MODULE_TYPE_DYNAMIC | JAVASCRIPT_MODULE_TYPE_ESM | JSON_MODULE_TYPE | ASSET_MODULE_TYPE | ASSET_MODULE_TYPE_INLINE | ASSET_MODULE_TYPE_RESOURCE | ASSET_MODULE_TYPE_SOURCE | WEBASSEMBLY_MODULE_TYPE_ASYNC | WEBASSEMBLY_MODULE_TYPE_SYNC | CSS_MODULE_TYPE | CSS_MODULE_TYPE_GLOBAL | CSS_MODULE_TYPE_MODULE | CSS_MODULE_TYPE_AUTO | HTML_MODULE_TYPE} KnownNormalModuleTypes */
|
|
137
139
|
/** @typedef {KnownNormalModuleTypes | string} NormalModuleTypes */
|
|
138
140
|
|
|
139
141
|
const EMPTY_RESOLVE_OPTIONS = {};
|
|
@@ -319,6 +321,11 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
319
321
|
/** @typedef {import("../declarations/WebpackOptions").CssGeneratorOptions} CssGeneratorOptions */
|
|
320
322
|
/** @typedef {import("../declarations/WebpackOptions").CssModuleGeneratorOptions} CssModuleGeneratorOptions */
|
|
321
323
|
|
|
324
|
+
/** @typedef {import("./html/HtmlParser")} HtmlParser */
|
|
325
|
+
/** @typedef {import("../declarations/WebpackOptions").EmptyParserOptions} HtmlParserOptions */
|
|
326
|
+
/** @typedef {import("./html/HtmlGenerator")} HtmlGenerator */
|
|
327
|
+
/** @typedef {import("../declarations/WebpackOptions").EmptyGeneratorOptions} HtmlGeneratorOptions */
|
|
328
|
+
|
|
322
329
|
/* eslint-disable jsdoc/type-formatting */
|
|
323
330
|
/**
|
|
324
331
|
* Defines the shared type used by this module.
|
|
@@ -338,6 +345,7 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
338
345
|
* [CSS_MODULE_TYPE_AUTO, CssParser, CssModuleParserOptions, CssGenerator, CssModuleGeneratorOptions],
|
|
339
346
|
* [CSS_MODULE_TYPE_MODULE, CssParser, CssModuleParserOptions, CssGenerator, CssModuleGeneratorOptions],
|
|
340
347
|
* [CSS_MODULE_TYPE_GLOBAL, CssParser, CssModuleParserOptions, CssGenerator, CssModuleGeneratorOptions],
|
|
348
|
+
* [HTML_MODULE_TYPE, HtmlParser, HtmlParserOptions, HtmlGenerator, HtmlGeneratorOptions],
|
|
341
349
|
* [string, Parser, ParserOptions, Generator, GeneratorOptions],
|
|
342
350
|
* ]} ParsersAndGeneratorsByTypes
|
|
343
351
|
*/
|
|
@@ -910,7 +918,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
910
918
|
this.resolveResource(
|
|
911
919
|
contextInfo,
|
|
912
920
|
context,
|
|
913
|
-
unresolvedResource,
|
|
921
|
+
escapeHashInPathRequest(unresolvedResource),
|
|
914
922
|
normalResolver,
|
|
915
923
|
resolveContext,
|
|
916
924
|
(err, _resolvedResource, resolvedResourceResolveData) => {
|
package/lib/Parser.js
CHANGED
|
@@ -33,7 +33,7 @@ class Parser {
|
|
|
33
33
|
* @returns {ParserState} the parser state
|
|
34
34
|
*/
|
|
35
35
|
parse(source, state) {
|
|
36
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
36
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
37
37
|
|
|
38
38
|
throw new AbstractMethodError();
|
|
39
39
|
}
|