webpack 5.100.2 → 5.101.1
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 +12 -10
- package/bin/webpack.js +7 -7
- package/lib/APIPlugin.js +12 -14
- package/lib/AutomaticPrefetchPlugin.js +2 -2
- package/lib/BannerPlugin.js +4 -4
- package/lib/Cache.js +1 -1
- package/lib/CacheFacade.js +7 -7
- package/lib/CaseSensitiveModulesWarning.js +2 -2
- package/lib/Chunk.js +3 -3
- package/lib/ChunkGraph.js +63 -18
- package/lib/ChunkGroup.js +4 -4
- package/lib/CleanPlugin.js +19 -53
- package/lib/CodeGenerationResults.js +3 -3
- package/lib/CompatibilityPlugin.js +6 -6
- package/lib/Compilation.js +168 -116
- package/lib/Compiler.js +37 -37
- package/lib/ConcatenationScope.js +39 -1
- package/lib/ConstPlugin.js +11 -11
- package/lib/ContextExclusionPlugin.js +3 -3
- package/lib/ContextModule.js +12 -11
- package/lib/ContextModuleFactory.js +11 -11
- package/lib/ContextReplacementPlugin.js +5 -5
- package/lib/DefinePlugin.js +24 -22
- package/lib/DelegatedModuleFactoryPlugin.js +1 -1
- package/lib/Dependency.js +2 -1
- package/lib/DllEntryPlugin.js +1 -1
- package/lib/DllReferencePlugin.js +1 -1
- package/lib/DynamicEntryPlugin.js +3 -3
- package/lib/EntryPlugin.js +1 -1
- package/lib/EnvironmentPlugin.js +1 -1
- package/lib/ErrorHelpers.js +2 -2
- package/lib/EvalDevToolModulePlugin.js +2 -2
- package/lib/EvalSourceMapDevToolPlugin.js +5 -5
- package/lib/ExportsInfo.js +9 -9
- package/lib/ExportsInfoApiPlugin.js +2 -2
- package/lib/ExternalModule.js +163 -48
- package/lib/ExternalModuleFactoryPlugin.js +2 -2
- package/lib/ExternalsPlugin.js +45 -0
- package/lib/FileSystemInfo.js +64 -61
- package/lib/FlagAllModulesAsUsedPlugin.js +2 -2
- package/lib/FlagDependencyExportsPlugin.js +7 -7
- package/lib/FlagDependencyUsagePlugin.js +4 -4
- package/lib/FlagEntryExportAsUsedPlugin.js +1 -1
- package/lib/HotModuleReplacementPlugin.js +27 -27
- package/lib/IgnorePlugin.js +3 -3
- package/lib/IgnoreWarningsPlugin.js +4 -4
- package/lib/InitFragment.js +6 -0
- package/lib/InvalidDependenciesModuleWarning.js +1 -1
- package/lib/JavascriptMetaInfoPlugin.js +1 -1
- package/lib/LibManifestPlugin.js +2 -2
- package/lib/LoaderOptionsPlugin.js +1 -1
- package/lib/LoaderTargetPlugin.js +2 -2
- package/lib/MainTemplate.js +1 -1
- package/lib/Module.js +3 -2
- package/lib/ModuleFilenameHelpers.js +3 -3
- package/lib/ModuleGraph.js +23 -38
- package/lib/ModuleInfoHeaderPlugin.js +3 -3
- package/lib/ModuleParseError.js +5 -3
- package/lib/ModuleTemplate.js +3 -2
- package/lib/MultiCompiler.js +29 -24
- package/lib/MultiStats.js +18 -13
- package/lib/MultiWatching.js +1 -1
- package/lib/NoEmitOnErrorsPlugin.js +2 -2
- package/lib/NodeStuffPlugin.js +27 -15
- package/lib/NormalModule.js +23 -23
- package/lib/NormalModuleFactory.js +23 -21
- package/lib/NormalModuleReplacementPlugin.js +3 -3
- package/lib/PrefetchPlugin.js +1 -1
- package/lib/ProgressPlugin.js +11 -11
- package/lib/ProvidePlugin.js +2 -2
- package/lib/RecordIdsPlugin.js +3 -3
- package/lib/ResolverFactory.js +3 -3
- package/lib/RuntimeGlobals.js +20 -0
- package/lib/RuntimePlugin.js +16 -16
- package/lib/RuntimeTemplate.js +35 -26
- package/lib/SizeFormatHelpers.js +1 -1
- package/lib/SourceMapDevToolModuleOptionsPlugin.js +4 -4
- package/lib/SourceMapDevToolPlugin.js +9 -9
- package/lib/Stats.js +2 -2
- package/lib/Template.js +1 -1
- package/lib/TemplatedPathPlugin.js +2 -2
- package/lib/UseStrictPlugin.js +1 -1
- package/lib/WarnCaseSensitiveModulesPlugin.js +1 -1
- package/lib/WarnDeprecatedOptionPlugin.js +1 -1
- package/lib/WarnNoModeSetPlugin.js +1 -1
- package/lib/WatchIgnorePlugin.js +2 -2
- package/lib/Watching.js +12 -14
- package/lib/WebpackIsIncludedPlugin.js +2 -2
- package/lib/WebpackOptionsApply.js +3 -3
- package/lib/asset/AssetGenerator.js +1 -1
- package/lib/asset/AssetModulesPlugin.js +6 -6
- package/lib/async-modules/AsyncModuleHelpers.js +1 -1
- package/lib/async-modules/AwaitDependenciesInitFragment.js +36 -24
- package/lib/async-modules/InferAsyncModulesPlugin.js +3 -3
- package/lib/buildChunkGraph.js +5 -5
- package/lib/cache/AddBuildDependenciesPlugin.js +1 -1
- package/lib/cache/IdleFileCachePlugin.js +5 -5
- package/lib/cache/PackFileCacheStrategy.js +20 -20
- package/lib/cache/ResolverCachePlugin.js +4 -4
- package/lib/cli.js +196 -14
- package/lib/config/browserslistTargetHandler.js +6 -6
- package/lib/config/defaults.js +23 -14
- package/lib/config/normalization.js +41 -38
- package/lib/config/target.js +4 -4
- package/lib/container/ContainerEntryModule.js +3 -3
- package/lib/container/ContainerPlugin.js +3 -3
- package/lib/container/ContainerReferencePlugin.js +3 -3
- package/lib/container/FallbackModule.js +1 -1
- package/lib/container/HoistContainerReferencesPlugin.js +7 -7
- package/lib/container/options.js +4 -4
- package/lib/css/CssGenerator.js +5 -3
- package/lib/css/CssLoadingRuntimeModule.js +1 -1
- package/lib/css/CssModulesPlugin.js +25 -22
- package/lib/css/CssParser.js +5 -5
- package/lib/css/walkCssTokens.js +9 -9
- package/lib/debug/ProfilingPlugin.js +5 -5
- package/lib/dependencies/AMDDefineDependencyParserPlugin.js +4 -4
- package/lib/dependencies/AMDPlugin.js +3 -3
- package/lib/dependencies/AMDRequireArrayDependency.js +1 -1
- package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +3 -3
- package/lib/dependencies/CommonJsExportRequireDependency.js +2 -2
- package/lib/dependencies/CommonJsExportsParserPlugin.js +12 -10
- package/lib/dependencies/CommonJsImportsParserPlugin.js +21 -19
- package/lib/dependencies/CommonJsPlugin.js +2 -2
- package/lib/dependencies/ContextDependency.js +1 -1
- package/lib/dependencies/ContextDependencyHelpers.js +3 -3
- package/lib/dependencies/CssIcssExportDependency.js +2 -2
- package/lib/dependencies/CssLocalIdentifierDependency.js +2 -2
- package/lib/dependencies/CssUrlDependency.js +4 -4
- package/lib/dependencies/DynamicExports.js +5 -5
- package/lib/dependencies/HarmonyAcceptDependency.js +91 -5
- package/lib/dependencies/HarmonyDetectionParserPlugin.js +2 -2
- package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +17 -13
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +7 -8
- package/lib/dependencies/HarmonyExportInitFragment.js +1 -1
- package/lib/dependencies/HarmonyExports.js +1 -1
- package/lib/dependencies/HarmonyImportDependency.js +28 -9
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +56 -48
- package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -5
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +3 -4
- package/lib/dependencies/HarmonyModulesPlugin.js +2 -8
- package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -1
- package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +4 -4
- package/lib/dependencies/ImportMetaPlugin.js +7 -7
- package/lib/dependencies/ImportParserPlugin.js +4 -4
- package/lib/dependencies/JsonExportsDependency.js +7 -2
- package/lib/dependencies/LoaderPlugin.js +4 -4
- package/lib/dependencies/ModuleDependency.js +2 -1
- package/lib/dependencies/ProvidedDependency.js +2 -2
- package/lib/dependencies/PureExpressionDependency.js +1 -1
- package/lib/dependencies/RequireContextDependencyParserPlugin.js +1 -1
- package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +1 -1
- package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +3 -3
- package/lib/dependencies/SystemPlugin.js +3 -3
- package/lib/dependencies/WorkerPlugin.js +5 -5
- package/lib/dependencies/getFunctionExpression.js +1 -1
- package/lib/esm/ExportWebpackRequireRuntimeModule.js +8 -1
- package/lib/esm/ModuleChunkFormatPlugin.js +35 -69
- package/lib/esm/ModuleChunkLoadingPlugin.js +3 -6
- package/lib/esm/ModuleChunkLoadingRuntimeModule.js +15 -11
- package/lib/formatLocation.js +2 -2
- package/lib/hmr/HotModuleReplacement.runtime.js +39 -27
- package/lib/hmr/JavascriptHotModuleReplacement.runtime.js +43 -32
- package/lib/hmr/JavascriptHotModuleReplacementHelper.js +1 -1
- package/lib/hmr/LazyCompilationPlugin.js +6 -6
- package/lib/hmr/lazyCompilationBackend.js +6 -6
- package/lib/ids/ChunkModuleIdRangePlugin.js +4 -4
- package/lib/ids/DeterministicChunkIdsPlugin.js +5 -4
- package/lib/ids/DeterministicModuleIdsPlugin.js +2 -2
- package/lib/ids/HashedModuleIdsPlugin.js +1 -1
- package/lib/ids/IdHelpers.js +9 -9
- package/lib/ids/NamedChunkIdsPlugin.js +5 -5
- package/lib/ids/NamedModuleIdsPlugin.js +2 -2
- package/lib/ids/NaturalChunkIdsPlugin.js +2 -2
- package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
- package/lib/ids/OccurrenceChunkIdsPlugin.js +2 -2
- package/lib/ids/OccurrenceModuleIdsPlugin.js +4 -4
- package/lib/ids/SyncModuleIdsPlugin.js +4 -4
- package/lib/index.js +18 -6
- package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +1 -1
- package/lib/javascript/BasicEvaluatedExpression.js +3 -3
- package/lib/javascript/ChunkFormatHelpers.js +70 -0
- package/lib/javascript/CommonJsChunkFormatPlugin.js +10 -21
- package/lib/javascript/EnableChunkLoadingPlugin.js +1 -1
- package/lib/javascript/JavascriptGenerator.js +1 -1
- package/lib/javascript/JavascriptModulesPlugin.js +108 -54
- package/lib/javascript/JavascriptParser.js +80 -78
- package/lib/javascript/JavascriptParserHelpers.js +3 -3
- package/lib/javascript/StartupHelpers.js +2 -2
- package/lib/json/JsonGenerator.js +2 -2
- package/lib/json/JsonModulesPlugin.js +2 -2
- package/lib/library/AbstractLibraryPlugin.js +30 -3
- package/lib/library/AmdLibraryPlugin.js +3 -3
- package/lib/library/AssignLibraryPlugin.js +2 -2
- package/lib/library/EnableLibraryPlugin.js +2 -2
- package/lib/library/ModuleLibraryPlugin.js +49 -31
- package/lib/library/SystemLibraryPlugin.js +6 -4
- package/lib/library/UmdLibraryPlugin.js +14 -14
- package/lib/logging/createConsoleLogger.js +4 -4
- package/lib/logging/runtime.js +3 -3
- package/lib/logging/truncateArgs.js +4 -4
- package/lib/node/CommonJsChunkLoadingPlugin.js +2 -2
- package/lib/node/NodeEnvironmentPlugin.js +1 -1
- package/lib/node/ReadFileChunkLoadingRuntimeModule.js +16 -14
- package/lib/node/ReadFileCompileAsyncWasmPlugin.js +7 -7
- package/lib/node/ReadFileCompileWasmPlugin.js +7 -7
- package/lib/node/RequireChunkLoadingRuntimeModule.js +13 -6
- package/lib/node/nodeConsole.js +2 -2
- package/lib/optimize/AggressiveMergingPlugin.js +2 -2
- package/lib/optimize/AggressiveSplittingPlugin.js +10 -10
- package/lib/optimize/ConcatenatedModule.js +186 -77
- package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -2
- package/lib/optimize/FlagIncludedChunksPlugin.js +2 -2
- package/lib/optimize/InnerGraph.js +5 -5
- package/lib/optimize/InnerGraphPlugin.js +14 -12
- package/lib/optimize/LimitChunkCountPlugin.js +5 -5
- package/lib/optimize/MangleExportsPlugin.js +5 -5
- package/lib/optimize/MergeDuplicateChunksPlugin.js +2 -2
- package/lib/optimize/MinChunkSizePlugin.js +3 -3
- package/lib/optimize/ModuleConcatenationPlugin.js +45 -38
- package/lib/optimize/RealContentHashPlugin.js +23 -23
- package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -2
- package/lib/optimize/RemoveParentModulesPlugin.js +3 -3
- package/lib/optimize/RuntimeChunkPlugin.js +2 -2
- package/lib/optimize/SideEffectsFlagPlugin.js +5 -5
- package/lib/optimize/SplitChunksPlugin.js +20 -20
- package/lib/performance/AssetsOverSizeLimitWarning.js +1 -1
- package/lib/performance/EntrypointsOverSizeLimitWarning.js +2 -2
- package/lib/performance/SizeLimitsPlugin.js +4 -4
- package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +1 -1
- package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +3 -3
- package/lib/rules/BasicMatcherRulePlugin.js +1 -1
- package/lib/rules/RuleSetCompiler.js +10 -10
- package/lib/rules/UseEffectRulePlugin.js +2 -2
- package/lib/runtime/GetChunkFilenameRuntimeModule.js +19 -15
- package/lib/runtime/GetMainFilenameRuntimeModule.js +1 -1
- package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +1 -1
- package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +1 -1
- package/lib/runtime/StartupChunkDependenciesPlugin.js +2 -2
- package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +3 -3
- package/lib/schemes/DataUriPlugin.js +3 -3
- package/lib/schemes/FileUriPlugin.js +1 -1
- package/lib/schemes/HttpUriPlugin.js +40 -36
- package/lib/schemes/VirtualUrlPlugin.js +1 -1
- package/lib/serialization/BinaryMiddleware.js +11 -11
- package/lib/serialization/FileMiddleware.js +18 -17
- package/lib/serialization/ObjectMiddleware.js +8 -8
- package/lib/serialization/Serializer.js +2 -2
- package/lib/serialization/SerializerMiddleware.js +2 -2
- package/lib/sharing/ConsumeSharedPlugin.js +4 -4
- package/lib/sharing/ProvideSharedPlugin.js +4 -4
- package/lib/sharing/SharePlugin.js +1 -1
- package/lib/sharing/resolveMatchedConfigs.js +1 -1
- package/lib/stats/DefaultStatsFactoryPlugin.js +85 -80
- package/lib/stats/DefaultStatsPresetPlugin.js +15 -15
- package/lib/stats/DefaultStatsPrinterPlugin.js +87 -87
- package/lib/stats/StatsFactory.js +7 -7
- package/lib/stats/StatsPrinter.js +9 -9
- package/lib/url/URLParserPlugin.js +5 -5
- package/lib/util/AsyncQueue.js +4 -4
- package/lib/util/IterableHelpers.js +2 -2
- package/lib/util/LazyBucketSortedSet.js +3 -3
- package/lib/util/SetHelpers.js +2 -2
- package/lib/util/StackedCacheMap.js +1 -1
- package/lib/util/StackedMap.js +1 -1
- package/lib/util/TupleSet.js +1 -1
- package/lib/util/WeakTupleMap.js +1 -1
- package/lib/util/cleverMerge.js +8 -8
- package/lib/util/comparators.js +10 -10
- package/lib/util/compileBooleanMatcher.js +20 -20
- package/lib/util/concatenate.js +3 -3
- package/lib/util/conventions.js +4 -4
- package/lib/util/create-schema-validation.js +1 -1
- package/lib/util/createHash.js +1 -1
- package/lib/util/deprecation.js +4 -4
- package/lib/util/deterministicGrouping.js +7 -7
- package/lib/util/findGraphRoots.js +1 -1
- package/lib/util/fs.js +4 -4
- package/lib/util/identifier.js +14 -14
- package/lib/util/magicComment.js +5 -1
- package/lib/util/memoize.js +1 -1
- package/lib/util/processAsyncTree.js +2 -2
- package/lib/util/propertyName.js +1 -1
- package/lib/util/removeBOM.js +1 -1
- package/lib/util/runtime.js +6 -6
- package/lib/util/semver.js +16 -16
- package/lib/util/serialization.js +5 -5
- package/lib/util/smartGrouping.js +1 -1
- package/lib/validateSchema.js +2 -2
- package/lib/wasm/EnableWasmLoadingPlugin.js +1 -1
- package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +1 -1
- package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +1 -1
- package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +4 -4
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +13 -9
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +2 -2
- package/lib/wasm-sync/WebAssemblyGenerator.js +16 -17
- package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +4 -2
- package/lib/wasm-sync/WebAssemblyParser.js +2 -2
- package/lib/web/FetchCompileAsyncWasmPlugin.js +4 -4
- package/lib/web/FetchCompileWasmPlugin.js +4 -4
- package/lib/web/JsonpChunkLoadingPlugin.js +2 -2
- package/lib/web/JsonpChunkLoadingRuntimeModule.js +1 -1
- package/lib/webpack.js +17 -12
- package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +2 -2
- package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +1 -1
- package/package.json +16 -16
- package/schemas/WebpackOptions.check.js +1 -1
- package/schemas/WebpackOptions.json +4 -0
- package/types.d.ts +275 -64
|
@@ -354,38 +354,50 @@ module.exports = function () {
|
|
|
354
354
|
};
|
|
355
355
|
|
|
356
356
|
var outdatedModules = [];
|
|
357
|
-
results.forEach(function (result) {
|
|
358
|
-
if (result.apply) {
|
|
359
|
-
var modules = result.apply(reportError);
|
|
360
|
-
if (modules) {
|
|
361
|
-
for (var i = 0; i < modules.length; i++) {
|
|
362
|
-
outdatedModules.push(modules[i]);
|
|
363
|
-
}
|
|
364
|
-
}
|
|
365
|
-
}
|
|
366
|
-
});
|
|
367
357
|
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
358
|
+
var onAccepted = function () {
|
|
359
|
+
return Promise.all([disposePromise, applyPromise]).then(function () {
|
|
360
|
+
// handle errors in accept handlers and self accepted module load
|
|
361
|
+
if (error) {
|
|
362
|
+
return setStatus("fail").then(function () {
|
|
363
|
+
throw error;
|
|
364
|
+
});
|
|
365
|
+
}
|
|
375
366
|
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
367
|
+
if (queuedInvalidatedModules) {
|
|
368
|
+
return internalApply(options).then(function (list) {
|
|
369
|
+
outdatedModules.forEach(function (moduleId) {
|
|
370
|
+
if (list.indexOf(moduleId) < 0) list.push(moduleId);
|
|
371
|
+
});
|
|
372
|
+
return list;
|
|
380
373
|
});
|
|
381
|
-
|
|
382
|
-
});
|
|
383
|
-
}
|
|
374
|
+
}
|
|
384
375
|
|
|
385
|
-
|
|
386
|
-
|
|
376
|
+
return setStatus("idle").then(function () {
|
|
377
|
+
return outdatedModules;
|
|
378
|
+
});
|
|
387
379
|
});
|
|
388
|
-
}
|
|
380
|
+
};
|
|
381
|
+
|
|
382
|
+
return Promise.all(
|
|
383
|
+
results
|
|
384
|
+
.filter(function (result) {
|
|
385
|
+
return result.apply;
|
|
386
|
+
})
|
|
387
|
+
.map(function (result) {
|
|
388
|
+
return result.apply(reportError);
|
|
389
|
+
})
|
|
390
|
+
)
|
|
391
|
+
.then(function (applyResults) {
|
|
392
|
+
applyResults.forEach(function (modules) {
|
|
393
|
+
if (modules) {
|
|
394
|
+
for (var i = 0; i < modules.length; i++) {
|
|
395
|
+
outdatedModules.push(modules[i]);
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
});
|
|
399
|
+
})
|
|
400
|
+
.then(onAccepted);
|
|
389
401
|
}
|
|
390
402
|
|
|
391
403
|
function applyInvalidatedModules() {
|
|
@@ -281,6 +281,7 @@ module.exports = function () {
|
|
|
281
281
|
}
|
|
282
282
|
},
|
|
283
283
|
apply: function (reportError) {
|
|
284
|
+
var acceptPromises = [];
|
|
284
285
|
// insert new code
|
|
285
286
|
for (var updateModuleId in appliedUpdate) {
|
|
286
287
|
if ($hasOwnProperty$(appliedUpdate, updateModuleId)) {
|
|
@@ -317,8 +318,9 @@ module.exports = function () {
|
|
|
317
318
|
}
|
|
318
319
|
}
|
|
319
320
|
for (var k = 0; k < callbacks.length; k++) {
|
|
321
|
+
var result;
|
|
320
322
|
try {
|
|
321
|
-
callbacks[k].call(null, moduleOutdatedDependencies);
|
|
323
|
+
result = callbacks[k].call(null, moduleOutdatedDependencies);
|
|
322
324
|
} catch (err) {
|
|
323
325
|
if (typeof errorHandlers[k] === "function") {
|
|
324
326
|
try {
|
|
@@ -355,54 +357,63 @@ module.exports = function () {
|
|
|
355
357
|
}
|
|
356
358
|
}
|
|
357
359
|
}
|
|
360
|
+
if (result && typeof result.then === "function") {
|
|
361
|
+
acceptPromises.push(result);
|
|
362
|
+
}
|
|
358
363
|
}
|
|
359
364
|
}
|
|
360
365
|
}
|
|
361
366
|
}
|
|
362
367
|
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
var
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
368
|
+
var onAccepted = function () {
|
|
369
|
+
// Load self accepted modules
|
|
370
|
+
for (var o = 0; o < outdatedSelfAcceptedModules.length; o++) {
|
|
371
|
+
var item = outdatedSelfAcceptedModules[o];
|
|
372
|
+
var moduleId = item.module;
|
|
373
|
+
try {
|
|
374
|
+
item.require(moduleId);
|
|
375
|
+
} catch (err) {
|
|
376
|
+
if (typeof item.errorHandler === "function") {
|
|
377
|
+
try {
|
|
378
|
+
item.errorHandler(err, {
|
|
379
|
+
moduleId: moduleId,
|
|
380
|
+
module: $moduleCache$[moduleId]
|
|
381
|
+
});
|
|
382
|
+
} catch (err1) {
|
|
383
|
+
if (options.onErrored) {
|
|
384
|
+
options.onErrored({
|
|
385
|
+
type: "self-accept-error-handler-errored",
|
|
386
|
+
moduleId: moduleId,
|
|
387
|
+
error: err1,
|
|
388
|
+
originalError: err
|
|
389
|
+
});
|
|
390
|
+
}
|
|
391
|
+
if (!options.ignoreErrored) {
|
|
392
|
+
reportError(err1);
|
|
393
|
+
reportError(err);
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
} else {
|
|
377
397
|
if (options.onErrored) {
|
|
378
398
|
options.onErrored({
|
|
379
|
-
type: "self-accept-
|
|
399
|
+
type: "self-accept-errored",
|
|
380
400
|
moduleId: moduleId,
|
|
381
|
-
error:
|
|
382
|
-
originalError: err
|
|
401
|
+
error: err
|
|
383
402
|
});
|
|
384
403
|
}
|
|
385
404
|
if (!options.ignoreErrored) {
|
|
386
|
-
reportError(err1);
|
|
387
405
|
reportError(err);
|
|
388
406
|
}
|
|
389
407
|
}
|
|
390
|
-
} else {
|
|
391
|
-
if (options.onErrored) {
|
|
392
|
-
options.onErrored({
|
|
393
|
-
type: "self-accept-errored",
|
|
394
|
-
moduleId: moduleId,
|
|
395
|
-
error: err
|
|
396
|
-
});
|
|
397
|
-
}
|
|
398
|
-
if (!options.ignoreErrored) {
|
|
399
|
-
reportError(err);
|
|
400
|
-
}
|
|
401
408
|
}
|
|
402
409
|
}
|
|
403
|
-
}
|
|
410
|
+
};
|
|
404
411
|
|
|
405
|
-
return
|
|
412
|
+
return Promise.all(acceptPromises)
|
|
413
|
+
.then(onAccepted)
|
|
414
|
+
.then(function () {
|
|
415
|
+
return outdatedModules;
|
|
416
|
+
});
|
|
406
417
|
}
|
|
407
418
|
};
|
|
408
419
|
}
|
|
@@ -13,7 +13,7 @@ const Template = require("../Template");
|
|
|
13
13
|
* @param {string} type unique identifier used for HMR runtime properties
|
|
14
14
|
* @returns {string} HMR runtime code
|
|
15
15
|
*/
|
|
16
|
-
const generateJavascriptHMR = type =>
|
|
16
|
+
const generateJavascriptHMR = (type) =>
|
|
17
17
|
Template.getFunctionContent(
|
|
18
18
|
require("../hmr/JavascriptHotModuleReplacement.runtime")
|
|
19
19
|
)
|
|
@@ -382,7 +382,7 @@ class LazyCompilationPlugin {
|
|
|
382
382
|
callback();
|
|
383
383
|
});
|
|
384
384
|
if (promise && promise.then) {
|
|
385
|
-
promise.then(b => {
|
|
385
|
+
promise.then((b) => {
|
|
386
386
|
backend = b;
|
|
387
387
|
callback();
|
|
388
388
|
}, callback);
|
|
@@ -395,7 +395,7 @@ class LazyCompilationPlugin {
|
|
|
395
395
|
PLUGIN_NAME,
|
|
396
396
|
(module, createData, resolveData) => {
|
|
397
397
|
if (
|
|
398
|
-
resolveData.dependencies.every(dep =>
|
|
398
|
+
resolveData.dependencies.every((dep) =>
|
|
399
399
|
HMR_DEPENDENCY_TYPES.has(dep.type)
|
|
400
400
|
)
|
|
401
401
|
) {
|
|
@@ -406,9 +406,9 @@ class LazyCompilationPlugin {
|
|
|
406
406
|
/** @type {Module} */
|
|
407
407
|
(compilation.moduleGraph.getParentModule(hmrDep));
|
|
408
408
|
const isReferringToDynamicImport = originModule.blocks.some(
|
|
409
|
-
block =>
|
|
409
|
+
(block) =>
|
|
410
410
|
block.dependencies.some(
|
|
411
|
-
dep =>
|
|
411
|
+
(dep) =>
|
|
412
412
|
dep.type === "import()" &&
|
|
413
413
|
/** @type {HarmonyImportDependency} */ (dep).request ===
|
|
414
414
|
hmrDep.request
|
|
@@ -417,7 +417,7 @@ class LazyCompilationPlugin {
|
|
|
417
417
|
if (!isReferringToDynamicImport) return module;
|
|
418
418
|
} else if (
|
|
419
419
|
!resolveData.dependencies.every(
|
|
420
|
-
dep =>
|
|
420
|
+
(dep) =>
|
|
421
421
|
HMR_DEPENDENCY_TYPES.has(dep.type) ||
|
|
422
422
|
(this.imports &&
|
|
423
423
|
(dep.type === "import()" ||
|
|
@@ -455,7 +455,7 @@ class LazyCompilationPlugin {
|
|
|
455
455
|
);
|
|
456
456
|
}
|
|
457
457
|
);
|
|
458
|
-
compiler.hooks.shutdown.tapAsync(PLUGIN_NAME, callback => {
|
|
458
|
+
compiler.hooks.shutdown.tapAsync(PLUGIN_NAME, (callback) => {
|
|
459
459
|
backend.dispose(callback);
|
|
460
460
|
});
|
|
461
461
|
}
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
* @param {Omit<LazyCompilationDefaultBackendOptions, "client"> & { client: NonNullable<LazyCompilationDefaultBackendOptions["client"]>}} options additional options for the backend
|
|
23
23
|
* @returns {BackendHandler} backend
|
|
24
24
|
*/
|
|
25
|
-
module.exports = options => (compiler, callback) => {
|
|
25
|
+
module.exports = (options) => (compiler, callback) => {
|
|
26
26
|
const logger = compiler.getInfrastructureLogger("LazyCompilationBackend");
|
|
27
27
|
const activeModules = new Map();
|
|
28
28
|
const prefix = "/lazy-compilation-using-";
|
|
@@ -47,7 +47,7 @@ module.exports = options => (compiler, callback) => {
|
|
|
47
47
|
const listen =
|
|
48
48
|
typeof options.listen === "function"
|
|
49
49
|
? options.listen
|
|
50
|
-
: server => {
|
|
50
|
+
: (server) => {
|
|
51
51
|
let listen = options.listen;
|
|
52
52
|
if (typeof listen === "object" && !("port" in listen)) {
|
|
53
53
|
listen = { ...listen, port: undefined };
|
|
@@ -100,14 +100,14 @@ module.exports = options => (compiler, callback) => {
|
|
|
100
100
|
let isClosing = false;
|
|
101
101
|
/** @type {Set<import("net").Socket>} */
|
|
102
102
|
const sockets = new Set();
|
|
103
|
-
server.on("connection", socket => {
|
|
103
|
+
server.on("connection", (socket) => {
|
|
104
104
|
sockets.add(socket);
|
|
105
105
|
socket.on("close", () => {
|
|
106
106
|
sockets.delete(socket);
|
|
107
107
|
});
|
|
108
108
|
if (isClosing) socket.destroy();
|
|
109
109
|
});
|
|
110
|
-
server.on("clientError", e => {
|
|
110
|
+
server.on("clientError", (e) => {
|
|
111
111
|
if (e.message !== "Server is disposing") logger.warn(e);
|
|
112
112
|
});
|
|
113
113
|
|
|
@@ -117,7 +117,7 @@ module.exports = options => (compiler, callback) => {
|
|
|
117
117
|
* @param {Error} err error
|
|
118
118
|
* @returns {void}
|
|
119
119
|
*/
|
|
120
|
-
err => {
|
|
120
|
+
(err) => {
|
|
121
121
|
if (err) return callback(err);
|
|
122
122
|
const _addr = server.address();
|
|
123
123
|
if (typeof _addr === "string") {
|
|
@@ -138,7 +138,7 @@ module.exports = options => (compiler, callback) => {
|
|
|
138
138
|
isClosing = true;
|
|
139
139
|
// Removing the listener is a workaround for a memory leak in node.js
|
|
140
140
|
server.off("request", requestListener);
|
|
141
|
-
server.close(err => {
|
|
141
|
+
server.close((err) => {
|
|
142
142
|
callback(err);
|
|
143
143
|
});
|
|
144
144
|
for (const socket of sockets) {
|
|
@@ -39,13 +39,13 @@ class ChunkModuleIdRangePlugin {
|
|
|
39
39
|
*/
|
|
40
40
|
apply(compiler) {
|
|
41
41
|
const options = this.options;
|
|
42
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
42
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
43
43
|
const moduleGraph = compilation.moduleGraph;
|
|
44
|
-
compilation.hooks.moduleIds.tap(PLUGIN_NAME, modules => {
|
|
44
|
+
compilation.hooks.moduleIds.tap(PLUGIN_NAME, (modules) => {
|
|
45
45
|
const chunkGraph = compilation.chunkGraph;
|
|
46
46
|
const chunk = find(
|
|
47
47
|
compilation.chunks,
|
|
48
|
-
chunk => chunk.name === options.name
|
|
48
|
+
(chunk) => chunk.name === options.name
|
|
49
49
|
);
|
|
50
50
|
if (!chunk) {
|
|
51
51
|
throw new Error(
|
|
@@ -72,7 +72,7 @@ class ChunkModuleIdRangePlugin {
|
|
|
72
72
|
chunkModules = chunkGraph.getOrderedChunkModules(chunk, cmpFn);
|
|
73
73
|
} else {
|
|
74
74
|
chunkModules = [...modules]
|
|
75
|
-
.filter(m => chunkGraph.isModuleInChunk(m, chunk))
|
|
75
|
+
.filter((m) => chunkGraph.isModuleInChunk(m, chunk))
|
|
76
76
|
.sort(compareModulesByPreOrderIndexOrIdentifier(moduleGraph));
|
|
77
77
|
}
|
|
78
78
|
|
|
@@ -37,8 +37,8 @@ class DeterministicChunkIdsPlugin {
|
|
|
37
37
|
* @returns {void}
|
|
38
38
|
*/
|
|
39
39
|
apply(compiler) {
|
|
40
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
41
|
-
compilation.hooks.chunkIds.tap(PLUGIN_NAME, chunks => {
|
|
40
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
41
|
+
compilation.hooks.chunkIds.tap(PLUGIN_NAME, (chunks) => {
|
|
42
42
|
const chunkGraph = compilation.chunkGraph;
|
|
43
43
|
const context = this.options.context
|
|
44
44
|
? this.options.context
|
|
@@ -49,8 +49,9 @@ class DeterministicChunkIdsPlugin {
|
|
|
49
49
|
|
|
50
50
|
const usedIds = getUsedChunkIds(compilation);
|
|
51
51
|
assignDeterministicIds(
|
|
52
|
-
[...chunks].filter(chunk => chunk.id === null),
|
|
53
|
-
chunk =>
|
|
52
|
+
[...chunks].filter((chunk) => chunk.id === null),
|
|
53
|
+
(chunk) =>
|
|
54
|
+
getFullChunkName(chunk, chunkGraph, context, compiler.root),
|
|
54
55
|
compareNatural,
|
|
55
56
|
(chunk, id) => {
|
|
56
57
|
const size = usedIds.size;
|
|
@@ -43,7 +43,7 @@ class DeterministicModuleIdsPlugin {
|
|
|
43
43
|
* @returns {void}
|
|
44
44
|
*/
|
|
45
45
|
apply(compiler) {
|
|
46
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
46
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
47
47
|
compilation.hooks.moduleIds.tap(PLUGIN_NAME, () => {
|
|
48
48
|
const chunkGraph = compilation.chunkGraph;
|
|
49
49
|
const context = this.options.context
|
|
@@ -61,7 +61,7 @@ class DeterministicModuleIdsPlugin {
|
|
|
61
61
|
);
|
|
62
62
|
assignDeterministicIds(
|
|
63
63
|
modules,
|
|
64
|
-
module => getFullModuleName(module, context, compiler.root),
|
|
64
|
+
(module) => getFullModuleName(module, context, compiler.root),
|
|
65
65
|
failOnConflict
|
|
66
66
|
? () => 0
|
|
67
67
|
: compareModulesByPreOrderIndexOrIdentifier(
|
|
@@ -54,7 +54,7 @@ class HashedModuleIdsPlugin {
|
|
|
54
54
|
*/
|
|
55
55
|
apply(compiler) {
|
|
56
56
|
const options = this.options;
|
|
57
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
57
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
58
58
|
compilation.hooks.moduleIds.tap(PLUGIN_NAME, () => {
|
|
59
59
|
const chunkGraph = compilation.chunkGraph;
|
|
60
60
|
const context = this.options.context
|
package/lib/ids/IdHelpers.js
CHANGED
|
@@ -33,7 +33,7 @@ const getHash = (str, len, hashFunction) => {
|
|
|
33
33
|
* @param {string} str the string
|
|
34
34
|
* @returns {string} string prefixed by an underscore if it is a number
|
|
35
35
|
*/
|
|
36
|
-
const avoidNumber = str => {
|
|
36
|
+
const avoidNumber = (str) => {
|
|
37
37
|
// max length of a number is 21 chars, bigger numbers a written as "...e+xx"
|
|
38
38
|
if (str.length > 21) return str;
|
|
39
39
|
const firstChar = str.charCodeAt(0);
|
|
@@ -54,7 +54,7 @@ const avoidNumber = str => {
|
|
|
54
54
|
* @param {string} request the request
|
|
55
55
|
* @returns {string} id representation
|
|
56
56
|
*/
|
|
57
|
-
const requestToId = request =>
|
|
57
|
+
const requestToId = (request) =>
|
|
58
58
|
request.replace(/^(\.\.?\/)+/, "").replace(/(^[.-]|[^a-zA-Z0-9_-])+/g, "_");
|
|
59
59
|
|
|
60
60
|
/**
|
|
@@ -136,7 +136,7 @@ const getShortChunkName = (
|
|
|
136
136
|
associatedObjectForCache
|
|
137
137
|
) => {
|
|
138
138
|
const modules = chunkGraph.getChunkRootModules(chunk);
|
|
139
|
-
const shortModuleNames = modules.map(m =>
|
|
139
|
+
const shortModuleNames = modules.map((m) =>
|
|
140
140
|
requestToId(getShortModuleName(m, context, associatedObjectForCache))
|
|
141
141
|
);
|
|
142
142
|
chunk.idNameHints.sort();
|
|
@@ -164,10 +164,10 @@ const getLongChunkName = (
|
|
|
164
164
|
associatedObjectForCache
|
|
165
165
|
) => {
|
|
166
166
|
const modules = chunkGraph.getChunkRootModules(chunk);
|
|
167
|
-
const shortModuleNames = modules.map(m =>
|
|
167
|
+
const shortModuleNames = modules.map((m) =>
|
|
168
168
|
requestToId(getShortModuleName(m, context, associatedObjectForCache))
|
|
169
169
|
);
|
|
170
|
-
const longModuleNames = modules.map(m =>
|
|
170
|
+
const longModuleNames = modules.map((m) =>
|
|
171
171
|
requestToId(
|
|
172
172
|
getLongModuleName("", m, context, hashFunction, associatedObjectForCache)
|
|
173
173
|
)
|
|
@@ -198,7 +198,7 @@ const getFullChunkName = (
|
|
|
198
198
|
) => {
|
|
199
199
|
if (chunk.name) return chunk.name;
|
|
200
200
|
const modules = chunkGraph.getChunkRootModules(chunk);
|
|
201
|
-
const fullModuleNames = modules.map(m =>
|
|
201
|
+
const fullModuleNames = modules.map((m) =>
|
|
202
202
|
makePathsRelative(context, m.identifier(), associatedObjectForCache)
|
|
203
203
|
);
|
|
204
204
|
return fullModuleNames.join();
|
|
@@ -259,7 +259,7 @@ const getUsedModuleIdsAndModules = (compilation, filter) => {
|
|
|
259
259
|
* @param {Compilation} compilation the compilation
|
|
260
260
|
* @returns {Set<string>} used chunk ids as strings
|
|
261
261
|
*/
|
|
262
|
-
const getUsedChunkIds = compilation => {
|
|
262
|
+
const getUsedChunkIds = (compilation) => {
|
|
263
263
|
/** @type {Set<string>} */
|
|
264
264
|
const usedIds = new Set();
|
|
265
265
|
if (compilation.usedChunkIds) {
|
|
@@ -413,7 +413,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
|
|
|
413
413
|
/**
|
|
414
414
|
* @param {Module} module the module
|
|
415
415
|
*/
|
|
416
|
-
assignId = module => {
|
|
416
|
+
assignId = (module) => {
|
|
417
417
|
if (chunkGraph.getModuleId(module) === null) {
|
|
418
418
|
while (usedIds.has(String(nextId))) nextId++;
|
|
419
419
|
chunkGraph.setModuleId(module, nextId++);
|
|
@@ -423,7 +423,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
|
|
|
423
423
|
/**
|
|
424
424
|
* @param {Module} module the module
|
|
425
425
|
*/
|
|
426
|
-
assignId = module => {
|
|
426
|
+
assignId = (module) => {
|
|
427
427
|
if (chunkGraph.getModuleId(module) === null) {
|
|
428
428
|
chunkGraph.setModuleId(module, nextId++);
|
|
429
429
|
}
|
|
@@ -42,24 +42,24 @@ class NamedChunkIdsPlugin {
|
|
|
42
42
|
* @returns {void}
|
|
43
43
|
*/
|
|
44
44
|
apply(compiler) {
|
|
45
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
45
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
46
46
|
const hashFunction =
|
|
47
47
|
/** @type {NonNullable<Output["hashFunction"]>} */
|
|
48
48
|
(compilation.outputOptions.hashFunction);
|
|
49
|
-
compilation.hooks.chunkIds.tap(PLUGIN_NAME, chunks => {
|
|
49
|
+
compilation.hooks.chunkIds.tap(PLUGIN_NAME, (chunks) => {
|
|
50
50
|
const chunkGraph = compilation.chunkGraph;
|
|
51
51
|
const context = this.context ? this.context : compiler.context;
|
|
52
52
|
const delimiter = this.delimiter;
|
|
53
53
|
|
|
54
54
|
const unnamedChunks = assignNames(
|
|
55
|
-
[...chunks].filter(chunk => {
|
|
55
|
+
[...chunks].filter((chunk) => {
|
|
56
56
|
if (chunk.name) {
|
|
57
57
|
chunk.id = chunk.name;
|
|
58
58
|
chunk.ids = [chunk.name];
|
|
59
59
|
}
|
|
60
60
|
return chunk.id === null;
|
|
61
61
|
}),
|
|
62
|
-
chunk =>
|
|
62
|
+
(chunk) =>
|
|
63
63
|
getShortChunkName(
|
|
64
64
|
chunk,
|
|
65
65
|
chunkGraph,
|
|
@@ -68,7 +68,7 @@ class NamedChunkIdsPlugin {
|
|
|
68
68
|
hashFunction,
|
|
69
69
|
compiler.root
|
|
70
70
|
),
|
|
71
|
-
chunk =>
|
|
71
|
+
(chunk) =>
|
|
72
72
|
getLongChunkName(
|
|
73
73
|
chunk,
|
|
74
74
|
chunkGraph,
|
|
@@ -40,7 +40,7 @@ class NamedModuleIdsPlugin {
|
|
|
40
40
|
*/
|
|
41
41
|
apply(compiler) {
|
|
42
42
|
const { root } = compiler;
|
|
43
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
43
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
44
44
|
const hashFunction =
|
|
45
45
|
/** @type {NonNullable<Output["hashFunction"]>} */
|
|
46
46
|
(compilation.outputOptions.hashFunction);
|
|
@@ -53,7 +53,7 @@ class NamedModuleIdsPlugin {
|
|
|
53
53
|
const [usedIds, modules] = getUsedModuleIdsAndModules(compilation);
|
|
54
54
|
const unnamedModules = assignNames(
|
|
55
55
|
modules,
|
|
56
|
-
m => getShortModuleName(m, context, root),
|
|
56
|
+
(m) => getShortModuleName(m, context, root),
|
|
57
57
|
(m, shortName) =>
|
|
58
58
|
getLongModuleName(shortName, m, context, hashFunction, root),
|
|
59
59
|
compareModulesByIdentifier,
|
|
@@ -21,8 +21,8 @@ class NaturalChunkIdsPlugin {
|
|
|
21
21
|
* @returns {void}
|
|
22
22
|
*/
|
|
23
23
|
apply(compiler) {
|
|
24
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
25
|
-
compilation.hooks.chunkIds.tap(PLUGIN_NAME, chunks => {
|
|
24
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
25
|
+
compilation.hooks.chunkIds.tap(PLUGIN_NAME, (chunks) => {
|
|
26
26
|
const chunkGraph = compilation.chunkGraph;
|
|
27
27
|
const compareNatural = compareChunksNatural(chunkGraph);
|
|
28
28
|
/** @type {Chunk[]} */
|
|
@@ -25,7 +25,7 @@ class NaturalModuleIdsPlugin {
|
|
|
25
25
|
* @returns {void}
|
|
26
26
|
*/
|
|
27
27
|
apply(compiler) {
|
|
28
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
28
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
29
29
|
compilation.hooks.moduleIds.tap(PLUGIN_NAME, () => {
|
|
30
30
|
const [usedIds, modulesInNaturalOrder] =
|
|
31
31
|
getUsedModuleIdsAndModules(compilation);
|
|
@@ -41,8 +41,8 @@ class OccurrenceChunkIdsPlugin {
|
|
|
41
41
|
*/
|
|
42
42
|
apply(compiler) {
|
|
43
43
|
const prioritiseInitial = this.options.prioritiseInitial;
|
|
44
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
45
|
-
compilation.hooks.chunkIds.tap(PLUGIN_NAME, chunks => {
|
|
44
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
45
|
+
compilation.hooks.chunkIds.tap(PLUGIN_NAME, (chunks) => {
|
|
46
46
|
const chunkGraph = compilation.chunkGraph;
|
|
47
47
|
|
|
48
48
|
/** @type {Map<Chunk, number>} */
|
|
@@ -46,7 +46,7 @@ class OccurrenceModuleIdsPlugin {
|
|
|
46
46
|
*/
|
|
47
47
|
apply(compiler) {
|
|
48
48
|
const prioritiseInitial = this.options.prioritiseInitial;
|
|
49
|
-
compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
|
|
49
|
+
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
50
50
|
const moduleGraph = compilation.moduleGraph;
|
|
51
51
|
|
|
52
52
|
compilation.hooks.moduleIds.tap(PLUGIN_NAME, () => {
|
|
@@ -75,14 +75,14 @@ class OccurrenceModuleIdsPlugin {
|
|
|
75
75
|
* @param {Module} module module
|
|
76
76
|
* @returns {number} count of occurs
|
|
77
77
|
*/
|
|
78
|
-
const countOccursInEntry = module => {
|
|
78
|
+
const countOccursInEntry = (module) => {
|
|
79
79
|
let sum = 0;
|
|
80
80
|
for (const [
|
|
81
81
|
originModule,
|
|
82
82
|
connections
|
|
83
83
|
] of moduleGraph.getIncomingConnectionsByOriginModule(module)) {
|
|
84
84
|
if (!originModule) continue;
|
|
85
|
-
if (!connections.some(c => c.isTargetActive(undefined))) continue;
|
|
85
|
+
if (!connections.some((c) => c.isTargetActive(undefined))) continue;
|
|
86
86
|
sum += initialChunkChunkMap.get(originModule) || 0;
|
|
87
87
|
}
|
|
88
88
|
return sum;
|
|
@@ -92,7 +92,7 @@ class OccurrenceModuleIdsPlugin {
|
|
|
92
92
|
* @param {Module} module module
|
|
93
93
|
* @returns {number} count of occurs
|
|
94
94
|
*/
|
|
95
|
-
const countOccurs = module => {
|
|
95
|
+
const countOccurs = (module) => {
|
|
96
96
|
let sum = 0;
|
|
97
97
|
for (const [
|
|
98
98
|
originModule,
|
|
@@ -46,7 +46,7 @@ class SyncModuleIdsPlugin {
|
|
|
46
46
|
let data;
|
|
47
47
|
let dataChanged = false;
|
|
48
48
|
if (this._read) {
|
|
49
|
-
compiler.hooks.readRecords.tapAsync(plugin, callback => {
|
|
49
|
+
compiler.hooks.readRecords.tapAsync(plugin, (callback) => {
|
|
50
50
|
const fs =
|
|
51
51
|
/** @type {IntermediateFileSystem} */
|
|
52
52
|
(compiler.intermediateFileSystem);
|
|
@@ -68,7 +68,7 @@ class SyncModuleIdsPlugin {
|
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
70
|
if (this._write) {
|
|
71
|
-
compiler.hooks.emitRecords.tapAsync(plugin, callback => {
|
|
71
|
+
compiler.hooks.emitRecords.tapAsync(plugin, (callback) => {
|
|
72
72
|
if (!data || !dataChanged) return callback();
|
|
73
73
|
/** @type {{[key: string]: string | number}} */
|
|
74
74
|
const json = {};
|
|
@@ -82,7 +82,7 @@ class SyncModuleIdsPlugin {
|
|
|
82
82
|
fs.writeFile(this._path, JSON.stringify(json), callback);
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
|
-
compiler.hooks.thisCompilation.tap(plugin, compilation => {
|
|
85
|
+
compiler.hooks.thisCompilation.tap(plugin, (compilation) => {
|
|
86
86
|
const associatedObjectForCache = compiler.root;
|
|
87
87
|
const context = this._context || compiler.context;
|
|
88
88
|
if (this._read) {
|
|
@@ -114,7 +114,7 @@ class SyncModuleIdsPlugin {
|
|
|
114
114
|
});
|
|
115
115
|
}
|
|
116
116
|
if (this._write) {
|
|
117
|
-
compilation.hooks.recordModules.tap(plugin, modules => {
|
|
117
|
+
compilation.hooks.recordModules.tap(plugin, (modules) => {
|
|
118
118
|
const { chunkGraph } = compilation;
|
|
119
119
|
let oldData = data;
|
|
120
120
|
if (!oldData) {
|