webpack 5.106.1 → 5.106.2
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/lib/APIPlugin.js +3 -1
- package/lib/AbstractMethodError.js +10 -1
- package/lib/AsyncDependenciesBlock.js +3 -0
- package/lib/AsyncDependencyToInitialChunkError.js +6 -1
- package/lib/AutomaticPrefetchPlugin.js +6 -1
- package/lib/BannerPlugin.js +10 -1
- package/lib/Cache.js +26 -1
- package/lib/CacheFacade.js +26 -0
- package/lib/CaseSensitiveModulesWarning.js +9 -1
- package/lib/Chunk.js +46 -0
- package/lib/ChunkGraph.js +111 -0
- package/lib/ChunkGroup.js +57 -13
- package/lib/ChunkTemplate.js +9 -0
- package/lib/CleanPlugin.js +14 -1
- package/lib/CodeGenerationResults.js +19 -0
- package/lib/CommentCompilationWarning.js +6 -0
- package/lib/CompatibilityPlugin.js +15 -1
- package/lib/Compilation.js +127 -1
- package/lib/Compiler.js +37 -4
- package/lib/ConcatenationScope.js +24 -1
- package/lib/ConditionalInitFragment.js +6 -0
- package/lib/ConstPlugin.js +4 -1
- package/lib/ContextExclusionPlugin.js +2 -1
- package/lib/ContextModule.js +12 -0
- package/lib/ContextModuleFactory.js +10 -0
- package/lib/ContextReplacementPlugin.js +4 -1
- package/lib/CssModule.js +6 -0
- package/lib/DefinePlugin.js +20 -7
- package/lib/DelegatedModule.js +13 -0
- package/lib/DelegatedModuleFactoryPlugin.js +3 -0
- package/lib/DelegatedPlugin.js +2 -1
- package/lib/DependenciesBlock.js +6 -1
- package/lib/Dependency.js +26 -3
- package/lib/DependencyTemplate.js +5 -0
- package/lib/DependencyTemplates.js +4 -0
- package/lib/DllEntryPlugin.js +2 -1
- package/lib/DllModule.js +11 -0
- package/lib/DllModuleFactory.js +1 -0
- package/lib/DllPlugin.js +2 -1
- package/lib/DllReferencePlugin.js +11 -6
- package/lib/DotenvPlugin.js +3 -0
- package/lib/DynamicEntryPlugin.js +3 -1
- package/lib/EntryOptionPlugin.js +3 -0
- package/lib/EntryPlugin.js +2 -1
- package/lib/Entrypoint.js +4 -0
- package/lib/EnvironmentPlugin.js +2 -1
- package/lib/ErrorHelpers.js +7 -0
- package/lib/EvalDevToolModulePlugin.js +3 -1
- package/lib/EvalSourceMapDevToolPlugin.js +3 -1
- package/lib/ExportsInfo.js +56 -2
- package/lib/ExportsInfoApiPlugin.js +2 -1
- package/lib/ExternalModule.js +38 -0
- package/lib/ExternalModuleFactoryPlugin.js +10 -0
- package/lib/ExternalsPlugin.js +2 -1
- package/lib/FileSystemInfo.js +105 -0
- package/lib/FlagAllModulesAsUsedPlugin.js +2 -1
- package/lib/FlagDependencyExportsPlugin.js +4 -1
- package/lib/FlagDependencyUsagePlugin.js +5 -1
- package/lib/FlagEntryExportAsUsedPlugin.js +2 -1
- package/lib/Generator.js +13 -0
- package/lib/GraphHelpers.js +3 -0
- package/lib/HookWebpackError.js +6 -0
- package/lib/HotModuleReplacementPlugin.js +9 -1
- package/lib/IgnoreErrorModuleFactory.js +2 -0
- package/lib/IgnorePlugin.js +2 -1
- package/lib/IgnoreWarningsPlugin.js +2 -1
- package/lib/InitFragment.js +10 -0
- package/lib/InvalidDependenciesModuleWarning.js +1 -0
- package/lib/JavascriptMetaInfoPlugin.js +2 -1
- package/lib/LibManifestPlugin.js +4 -1
- package/lib/LibraryTemplatePlugin.js +2 -1
- package/lib/LoaderOptionsPlugin.js +3 -1
- package/lib/LoaderTargetPlugin.js +2 -1
- package/lib/MainTemplate.js +15 -0
- package/lib/ManifestPlugin.js +9 -2
- package/lib/Module.js +82 -1
- package/lib/ModuleBuildError.js +3 -0
- package/lib/ModuleDependencyWarning.js +1 -0
- package/lib/ModuleError.js +2 -0
- package/lib/ModuleFactory.js +5 -0
- package/lib/ModuleFilenameHelpers.js +3 -0
- package/lib/ModuleGraph.js +66 -0
- package/lib/ModuleGraphConnection.js +9 -0
- package/lib/ModuleInfoHeaderPlugin.js +5 -0
- package/lib/ModuleNotFoundError.js +1 -0
- package/lib/ModuleParseError.js +3 -0
- package/lib/ModuleRestoreError.js +1 -0
- package/lib/ModuleSourceTypeConstants.js +1 -0
- package/lib/ModuleStoreError.js +1 -0
- package/lib/ModuleTemplate.js +8 -0
- package/lib/ModuleWarning.js +3 -0
- package/lib/MultiCompiler.js +28 -0
- package/lib/MultiStats.js +8 -0
- package/lib/MultiWatching.js +3 -0
- package/lib/NoEmitOnErrorsPlugin.js +1 -1
- package/lib/NodeStuffInWebError.js +1 -0
- package/lib/NodeStuffPlugin.js +10 -1
- package/lib/NormalModule.js +30 -2
- package/lib/NormalModuleFactory.js +25 -0
- package/lib/NormalModuleReplacementPlugin.js +1 -1
- package/lib/NullFactory.js +1 -0
- package/lib/OptionsApply.js +1 -0
- package/lib/Parser.js +2 -0
- package/lib/PlatformPlugin.js +2 -1
- package/lib/PrefetchPlugin.js +2 -1
- package/lib/ProgressPlugin.js +29 -12
- package/lib/ProvidePlugin.js +3 -1
- package/lib/RawModule.js +12 -0
- package/lib/RecordIdsPlugin.js +8 -0
- package/lib/RequestShortener.js +8 -0
- package/lib/RequireJsStuffPlugin.js +2 -1
- package/lib/ResolverFactory.js +5 -0
- package/lib/RuntimeGlobals.js +1 -0
- package/lib/RuntimeModule.js +13 -0
- package/lib/RuntimePlugin.js +2 -0
- package/lib/RuntimeTemplate.js +35 -1
- package/lib/SelfModuleFactory.js +2 -0
- package/lib/SizeFormatHelpers.js +1 -0
- package/lib/SourceMapDevToolModuleOptionsPlugin.js +2 -0
- package/lib/SourceMapDevToolPlugin.js +3 -1
- package/lib/Stats.js +5 -0
- package/lib/Template.js +20 -0
- package/lib/TemplatedPathPlugin.js +10 -3
- package/lib/UnhandledSchemeError.js +6 -0
- package/lib/UnsupportedFeatureWarning.js +1 -0
- package/lib/UseStrictPlugin.js +2 -1
- package/lib/WarnCaseSensitiveModulesPlugin.js +1 -1
- package/lib/WarnDeprecatedOptionPlugin.js +1 -1
- package/lib/WarnNoModeSetPlugin.js +1 -1
- package/lib/WatchIgnorePlugin.js +4 -1
- package/lib/Watching.js +14 -0
- package/lib/WebpackError.js +3 -0
- package/lib/WebpackIsIncludedPlugin.js +2 -0
- package/lib/WebpackOptionsApply.js +1 -0
- package/lib/WebpackOptionsDefaulter.js +1 -0
- package/lib/asset/AssetBytesGenerator.js +6 -0
- package/lib/asset/AssetBytesParser.js +1 -0
- package/lib/asset/AssetGenerator.js +20 -2
- package/lib/asset/AssetModulesPlugin.js +4 -1
- package/lib/asset/AssetParser.js +2 -0
- package/lib/asset/AssetSourceGenerator.js +6 -0
- package/lib/asset/AssetSourceParser.js +1 -0
- package/lib/asset/RawDataUrlModule.js +11 -0
- package/lib/async-modules/AsyncModuleHelpers.js +1 -0
- package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -0
- package/lib/async-modules/InferAsyncModulesPlugin.js +1 -1
- package/lib/buildChunkGraph.js +15 -0
- package/lib/cache/AddBuildDependenciesPlugin.js +2 -1
- package/lib/cache/AddManagedPathsPlugin.js +2 -1
- package/lib/cache/IdleFileCachePlugin.js +2 -1
- package/lib/cache/MemoryCachePlugin.js +1 -1
- package/lib/cache/MemoryWithGcCachePlugin.js +3 -1
- package/lib/cache/PackFileCacheStrategy.js +29 -0
- package/lib/cache/ResolverCachePlugin.js +10 -1
- package/lib/cache/getLazyHashedEtag.js +4 -0
- package/lib/cache/mergeEtags.js +2 -0
- package/lib/cli.js +30 -0
- package/lib/config/browserslistTargetHandler.js +2 -0
- package/lib/config/defaults.js +35 -2
- package/lib/config/normalization.js +12 -0
- package/lib/config/target.js +11 -0
- package/lib/container/ContainerEntryDependency.js +2 -0
- package/lib/container/ContainerEntryModule.js +12 -0
- package/lib/container/ContainerEntryModuleFactory.js +1 -0
- package/lib/container/ContainerExposedDependency.js +4 -0
- package/lib/container/ContainerPlugin.js +2 -1
- package/lib/container/ContainerReferencePlugin.js +2 -1
- package/lib/container/FallbackDependency.js +4 -0
- package/lib/container/FallbackItemDependency.js +1 -0
- package/lib/container/FallbackModule.js +12 -0
- package/lib/container/FallbackModuleFactory.js +1 -0
- package/lib/container/ModuleFederationPlugin.js +3 -1
- package/lib/container/RemoteModule.js +13 -0
- package/lib/container/RemoteRuntimeModule.js +1 -0
- package/lib/container/RemoteToExternalDependency.js +1 -0
- package/lib/container/options.js +7 -0
- package/lib/css/CssGenerator.js +35 -14
- package/lib/css/CssInjectStyleRuntimeModule.js +1 -0
- package/lib/css/CssLoadingRuntimeModule.js +1 -0
- package/lib/css/CssMergeStyleSheetsRuntimeModule.js +1 -0
- package/lib/css/CssModulesPlugin.js +69 -3
- package/lib/css/CssParser.js +59 -1
- package/lib/css/walkCssTokens.js +31 -0
- package/lib/debug/ProfilingPlugin.js +19 -1
- package/lib/dependencies/AMDDefineDependency.js +7 -0
- package/lib/dependencies/AMDDefineDependencyParserPlugin.js +12 -0
- package/lib/dependencies/AMDPlugin.js +4 -1
- package/lib/dependencies/AMDRequireArrayDependency.js +6 -0
- package/lib/dependencies/AMDRequireContextDependency.js +3 -0
- package/lib/dependencies/AMDRequireDependenciesBlock.js +1 -0
- package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +13 -0
- package/lib/dependencies/AMDRequireDependency.js +4 -0
- package/lib/dependencies/AMDRequireItemDependency.js +1 -0
- package/lib/dependencies/AMDRuntimeModules.js +3 -0
- package/lib/dependencies/CachedConstDependency.js +6 -1
- package/lib/dependencies/CommonJsDependencyHelpers.js +1 -0
- package/lib/dependencies/CommonJsExportRequireDependency.js +8 -0
- package/lib/dependencies/CommonJsExportsDependency.js +4 -0
- package/lib/dependencies/CommonJsExportsParserPlugin.js +8 -0
- package/lib/dependencies/CommonJsFullRequireDependency.js +4 -0
- package/lib/dependencies/CommonJsImportsParserPlugin.js +20 -0
- package/lib/dependencies/CommonJsPlugin.js +4 -1
- package/lib/dependencies/CommonJsRequireContextDependency.js +3 -0
- package/lib/dependencies/CommonJsRequireDependency.js +3 -0
- package/lib/dependencies/CommonJsSelfReferenceDependency.js +5 -0
- package/lib/dependencies/ConstDependency.js +6 -1
- package/lib/dependencies/ContextDependency.js +8 -1
- package/lib/dependencies/ContextDependencyHelpers.js +3 -0
- package/lib/dependencies/ContextDependencyTemplateAsId.js +1 -0
- package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +1 -0
- package/lib/dependencies/ContextElementDependency.js +4 -0
- package/lib/dependencies/CreateRequireParserPlugin.js +6 -0
- package/lib/dependencies/CreateScriptUrlDependency.js +4 -0
- package/lib/dependencies/CriticalDependencyWarning.js +1 -0
- package/lib/dependencies/CssIcssExportDependency.js +10 -2
- package/lib/dependencies/CssIcssImportDependency.js +4 -1
- package/lib/dependencies/CssIcssSymbolDependency.js +5 -1
- package/lib/dependencies/CssImportDependency.js +4 -0
- package/lib/dependencies/CssUrlDependency.js +7 -0
- package/lib/dependencies/DelegatedSourceDependency.js +1 -0
- package/lib/dependencies/DllEntryDependency.js +3 -0
- package/lib/dependencies/DynamicExports.js +5 -0
- package/lib/dependencies/EntryDependency.js +1 -0
- package/lib/dependencies/ExportsInfoDependency.js +6 -0
- package/lib/dependencies/ExternalModuleDependency.js +5 -0
- package/lib/dependencies/ExternalModuleInitFragment.js +3 -0
- package/lib/dependencies/ExternalModuleInitFragmentDependency.js +4 -0
- package/lib/dependencies/HarmonyAcceptDependency.js +6 -0
- package/lib/dependencies/HarmonyAcceptImportDependency.js +1 -0
- package/lib/dependencies/HarmonyCompatibilityDependency.js +1 -0
- package/lib/dependencies/HarmonyDetectionParserPlugin.js +3 -0
- package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +4 -0
- package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +2 -0
- package/lib/dependencies/HarmonyExportExpressionDependency.js +5 -0
- package/lib/dependencies/HarmonyExportHeaderDependency.js +4 -0
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +33 -2
- package/lib/dependencies/HarmonyExportInitFragment.js +6 -0
- package/lib/dependencies/HarmonyExportSpecifierDependency.js +5 -0
- package/lib/dependencies/HarmonyExports.js +2 -0
- package/lib/dependencies/HarmonyImportDependency.js +11 -0
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +9 -0
- package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -0
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +17 -2
- package/lib/dependencies/HarmonyModulesPlugin.js +4 -1
- package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -0
- package/lib/dependencies/ImportContextDependency.js +4 -0
- package/lib/dependencies/ImportDependency.js +5 -0
- package/lib/dependencies/ImportEagerDependency.js +2 -0
- package/lib/dependencies/ImportMetaContextDependency.js +1 -0
- package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +3 -0
- package/lib/dependencies/ImportMetaContextPlugin.js +2 -1
- package/lib/dependencies/ImportMetaHotAcceptDependency.js +1 -0
- package/lib/dependencies/ImportMetaHotDeclineDependency.js +1 -0
- package/lib/dependencies/ImportMetaPlugin.js +6 -0
- package/lib/dependencies/ImportParserPlugin.js +7 -0
- package/lib/dependencies/ImportPhase.js +6 -2
- package/lib/dependencies/ImportPlugin.js +2 -1
- package/lib/dependencies/ImportWeakDependency.js +2 -0
- package/lib/dependencies/JsonExportsDependency.js +6 -1
- package/lib/dependencies/LoaderDependency.js +2 -0
- package/lib/dependencies/LoaderImportDependency.js +2 -0
- package/lib/dependencies/LoaderPlugin.js +4 -1
- package/lib/dependencies/LocalModule.js +4 -0
- package/lib/dependencies/LocalModuleDependency.js +4 -0
- package/lib/dependencies/LocalModulesHelpers.js +3 -0
- package/lib/dependencies/ModuleDecoratorDependency.js +7 -1
- package/lib/dependencies/ModuleDependency.js +7 -0
- package/lib/dependencies/ModuleDependencyTemplateAsId.js +1 -0
- package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +1 -0
- package/lib/dependencies/ModuleHotAcceptDependency.js +1 -0
- package/lib/dependencies/ModuleHotDeclineDependency.js +1 -0
- package/lib/dependencies/ModuleInitFragmentDependency.js +4 -0
- package/lib/dependencies/NullDependency.js +2 -0
- package/lib/dependencies/PrefetchDependency.js +1 -0
- package/lib/dependencies/ProvidedDependency.js +6 -1
- package/lib/dependencies/PureExpressionDependency.js +7 -1
- package/lib/dependencies/RequireContextDependency.js +1 -0
- package/lib/dependencies/RequireContextDependencyParserPlugin.js +1 -0
- package/lib/dependencies/RequireContextPlugin.js +2 -1
- package/lib/dependencies/RequireEnsureDependenciesBlock.js +1 -0
- package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +1 -0
- package/lib/dependencies/RequireEnsureDependency.js +4 -0
- package/lib/dependencies/RequireEnsureItemDependency.js +1 -0
- package/lib/dependencies/RequireEnsurePlugin.js +2 -1
- package/lib/dependencies/RequireHeaderDependency.js +4 -0
- package/lib/dependencies/RequireIncludeDependency.js +2 -0
- package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +3 -0
- package/lib/dependencies/RequireIncludePlugin.js +2 -1
- package/lib/dependencies/RequireResolveContextDependency.js +3 -0
- package/lib/dependencies/RequireResolveDependency.js +1 -0
- package/lib/dependencies/RequireResolveHeaderDependency.js +5 -0
- package/lib/dependencies/RuntimeRequirementsDependency.js +5 -1
- package/lib/dependencies/StaticExportsDependency.js +3 -0
- package/lib/dependencies/SystemPlugin.js +4 -1
- package/lib/dependencies/SystemRuntimeModule.js +1 -0
- package/lib/dependencies/URLContextDependency.js +3 -0
- package/lib/dependencies/URLDependency.js +6 -0
- package/lib/dependencies/URLPlugin.js +2 -0
- package/lib/dependencies/UnsupportedDependency.js +4 -0
- package/lib/dependencies/WebAssemblyExportImportedDependency.js +4 -0
- package/lib/dependencies/WebAssemblyImportDependency.js +4 -1
- package/lib/dependencies/WebpackIsIncludedDependency.js +2 -0
- package/lib/dependencies/WorkerDependency.js +6 -1
- package/lib/dependencies/WorkerPlugin.js +9 -1
- package/lib/dependencies/getFunctionExpression.js +1 -0
- package/lib/dependencies/processExportInfo.js +1 -0
- package/lib/electron/ElectronTargetPlugin.js +2 -1
- package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -0
- package/lib/esm/ModuleChunkFormatPlugin.js +5 -1
- package/lib/esm/ModuleChunkLoadingPlugin.js +3 -1
- package/lib/esm/ModuleChunkLoadingRuntimeModule.js +5 -0
- package/lib/formatLocation.js +2 -0
- package/lib/hmr/HotModuleReplacementRuntimeModule.js +1 -0
- package/lib/hmr/JavascriptHotModuleReplacementHelper.js +1 -0
- package/lib/hmr/LazyCompilationPlugin.js +20 -1
- package/lib/hmr/lazyCompilationBackend.js +2 -0
- package/lib/ids/ChunkModuleIdRangePlugin.js +3 -1
- package/lib/ids/DeterministicChunkIdsPlugin.js +3 -1
- package/lib/ids/DeterministicModuleIdsPlugin.js +3 -1
- package/lib/ids/HashedModuleIdsPlugin.js +2 -1
- package/lib/ids/IdHelpers.js +20 -0
- package/lib/ids/NamedChunkIdsPlugin.js +3 -1
- package/lib/ids/NamedModuleIdsPlugin.js +3 -1
- package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
- package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
- package/lib/ids/OccurrenceChunkIdsPlugin.js +2 -1
- package/lib/ids/OccurrenceModuleIdsPlugin.js +4 -1
- package/lib/ids/SyncModuleIdsPlugin.js +3 -1
- package/lib/index.js +5 -0
- package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +1 -1
- package/lib/javascript/BasicEvaluatedExpression.js +4 -2
- package/lib/javascript/ChunkFormatHelpers.js +2 -1
- package/lib/javascript/ChunkHelpers.js +1 -0
- package/lib/javascript/CommonJsChunkFormatPlugin.js +1 -1
- package/lib/javascript/EnableChunkLoadingPlugin.js +5 -1
- package/lib/javascript/JavascriptGenerator.js +10 -0
- package/lib/javascript/JavascriptModulesPlugin.js +23 -1
- package/lib/javascript/JavascriptParser.js +163 -0
- package/lib/javascript/JavascriptParserHelpers.js +6 -0
- package/lib/javascript/StartupHelpers.js +5 -0
- package/lib/json/JsonData.js +5 -0
- package/lib/json/JsonGenerator.js +21 -0
- package/lib/json/JsonModulesPlugin.js +1 -1
- package/lib/json/JsonParser.js +8 -10
- package/lib/library/AbstractLibraryPlugin.js +16 -1
- package/lib/library/AmdLibraryPlugin.js +8 -0
- package/lib/library/AssignLibraryPlugin.js +16 -0
- package/lib/library/EnableLibraryPlugin.js +7 -1
- package/lib/library/ExportPropertyLibraryPlugin.js +9 -0
- package/lib/library/JsonpLibraryPlugin.js +8 -0
- package/lib/library/ModuleLibraryPlugin.js +12 -1
- package/lib/library/SystemLibraryPlugin.js +8 -0
- package/lib/library/UmdLibraryPlugin.js +16 -0
- package/lib/logging/Logger.js +17 -0
- package/lib/logging/createConsoleLogger.js +7 -0
- package/lib/logging/runtime.js +2 -0
- package/lib/logging/truncateArgs.js +2 -0
- package/lib/node/CommonJsChunkLoadingPlugin.js +5 -1
- package/lib/node/NodeEnvironmentPlugin.js +3 -1
- package/lib/node/NodeSourcePlugin.js +1 -1
- package/lib/node/NodeTargetPlugin.js +2 -1
- package/lib/node/NodeTemplatePlugin.js +3 -1
- package/lib/node/NodeWatchFileSystem.js +2 -0
- package/lib/node/ReadFileChunkLoadingRuntimeModule.js +3 -0
- package/lib/node/ReadFileCompileAsyncWasmPlugin.js +4 -1
- package/lib/node/ReadFileCompileWasmPlugin.js +4 -1
- package/lib/node/RequireChunkLoadingRuntimeModule.js +3 -0
- package/lib/node/nodeConsole.js +3 -0
- package/lib/optimize/AggressiveMergingPlugin.js +3 -1
- package/lib/optimize/AggressiveSplittingPlugin.js +6 -1
- package/lib/optimize/ConcatenatedModule.js +11 -0
- package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -1
- package/lib/optimize/FlagIncludedChunksPlugin.js +2 -1
- package/lib/optimize/InnerGraph.js +15 -0
- package/lib/optimize/InnerGraphPlugin.js +3 -1
- package/lib/optimize/LimitChunkCountPlugin.js +9 -0
- package/lib/optimize/MangleExportsPlugin.js +5 -1
- package/lib/optimize/MergeDuplicateChunksPlugin.js +2 -0
- package/lib/optimize/MinChunkSizePlugin.js +2 -1
- package/lib/optimize/MinMaxSizeWarning.js +1 -0
- package/lib/optimize/ModuleConcatenationPlugin.js +21 -1
- package/lib/optimize/RealContentHashPlugin.js +16 -1
- package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -1
- package/lib/optimize/RemoveParentModulesPlugin.js +3 -1
- package/lib/optimize/RuntimeChunkPlugin.js +2 -1
- package/lib/optimize/SideEffectsFlagPlugin.js +7 -1
- package/lib/optimize/SplitChunksPlugin.js +49 -1
- package/lib/performance/AssetsOverSizeLimitWarning.js +1 -0
- package/lib/performance/EntrypointsOverSizeLimitWarning.js +1 -0
- package/lib/performance/SizeLimitsPlugin.js +7 -1
- package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +6 -0
- package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +1 -0
- package/lib/rules/BasicEffectRulePlugin.js +3 -0
- package/lib/rules/BasicMatcherRulePlugin.js +3 -0
- package/lib/rules/ObjectMatcherRulePlugin.js +3 -0
- package/lib/rules/RuleSetCompiler.js +18 -0
- package/lib/rules/UseEffectRulePlugin.js +6 -0
- package/lib/runtime/AsyncModuleRuntimeModule.js +1 -0
- package/lib/runtime/AutoPublicPathRuntimeModule.js +1 -0
- package/lib/runtime/BaseUriRuntimeModule.js +1 -0
- package/lib/runtime/ChunkNameRuntimeModule.js +1 -0
- package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +1 -0
- package/lib/runtime/CompatRuntimeModule.js +2 -0
- package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +1 -0
- package/lib/runtime/CreateScriptRuntimeModule.js +1 -0
- package/lib/runtime/CreateScriptUrlRuntimeModule.js +1 -0
- package/lib/runtime/DefinePropertyGettersRuntimeModule.js +1 -0
- package/lib/runtime/EnsureChunkRuntimeModule.js +1 -0
- package/lib/runtime/GetChunkFilenameRuntimeModule.js +1 -0
- package/lib/runtime/GetFullHashRuntimeModule.js +1 -0
- package/lib/runtime/GetMainFilenameRuntimeModule.js +1 -0
- package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +1 -0
- package/lib/runtime/GlobalRuntimeModule.js +1 -0
- package/lib/runtime/HasOwnPropertyRuntimeModule.js +1 -0
- package/lib/runtime/HelperRuntimeModule.js +5 -0
- package/lib/runtime/LoadScriptRuntimeModule.js +1 -0
- package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +2 -0
- package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +1 -0
- package/lib/runtime/NonceRuntimeModule.js +1 -0
- package/lib/runtime/OnChunksLoadedRuntimeModule.js +1 -0
- package/lib/runtime/PublicPathRuntimeModule.js +1 -0
- package/lib/runtime/RelativeUrlRuntimeModule.js +1 -0
- package/lib/runtime/RuntimeIdRuntimeModule.js +1 -0
- package/lib/runtime/StartupChunkDependenciesPlugin.js +13 -1
- package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +1 -0
- package/lib/runtime/StartupEntrypointRuntimeModule.js +1 -0
- package/lib/runtime/SystemContextRuntimeModule.js +1 -0
- package/lib/runtime/ToBinaryRuntimeModule.js +1 -0
- package/lib/schemes/DataUriPlugin.js +1 -1
- package/lib/schemes/FileUriPlugin.js +1 -1
- package/lib/schemes/HttpUriPlugin.js +43 -1
- package/lib/schemes/VirtualUrlPlugin.js +6 -1
- package/lib/serialization/AggregateErrorSerializer.js +2 -0
- package/lib/serialization/ArraySerializer.js +2 -0
- package/lib/serialization/BinaryMiddleware.js +20 -1
- package/lib/serialization/DateObjectSerializer.js +2 -0
- package/lib/serialization/ErrorObjectSerializer.js +3 -0
- package/lib/serialization/FileMiddleware.js +21 -0
- package/lib/serialization/MapObjectSerializer.js +2 -0
- package/lib/serialization/NullPrototypeObjectSerializer.js +2 -0
- package/lib/serialization/ObjectMiddleware.js +23 -0
- package/lib/serialization/PlainObjectSerializer.js +7 -0
- package/lib/serialization/RegExpObjectSerializer.js +2 -0
- package/lib/serialization/Serializer.js +5 -0
- package/lib/serialization/SerializerMiddleware.js +12 -0
- package/lib/serialization/SetObjectSerializer.js +2 -0
- package/lib/serialization/SingleItemMiddleware.js +3 -0
- package/lib/sharing/ConsumeSharedFallbackDependency.js +1 -0
- package/lib/sharing/ConsumeSharedModule.js +15 -0
- package/lib/sharing/ConsumeSharedPlugin.js +6 -1
- package/lib/sharing/ConsumeSharedRuntimeModule.js +1 -0
- package/lib/sharing/ProvideForSharedDependency.js +1 -0
- package/lib/sharing/ProvideSharedDependency.js +4 -0
- package/lib/sharing/ProvideSharedModule.js +11 -0
- package/lib/sharing/ProvideSharedModuleFactory.js +1 -0
- package/lib/sharing/ProvideSharedPlugin.js +4 -1
- package/lib/sharing/SharePlugin.js +2 -1
- package/lib/sharing/ShareRuntimeModule.js +1 -0
- package/lib/sharing/resolveMatchedConfigs.js +3 -0
- package/lib/sharing/utils.js +8 -0
- package/lib/stats/DefaultStatsFactoryPlugin.js +56 -1
- package/lib/stats/DefaultStatsPresetPlugin.js +11 -1
- package/lib/stats/DefaultStatsPrinterPlugin.js +37 -1
- package/lib/stats/StatsFactory.js +12 -0
- package/lib/stats/StatsPrinter.js +7 -0
- package/lib/url/URLParserPlugin.js +6 -0
- package/lib/util/AppendOnlyStackedSet.js +15 -0
- package/lib/util/ArrayHelpers.js +1 -0
- package/lib/util/ArrayQueue.js +10 -5
- package/lib/util/AsyncQueue.js +20 -0
- package/lib/util/IterableHelpers.js +3 -0
- package/lib/util/LazyBucketSortedSet.js +21 -0
- package/lib/util/LazySet.js +39 -0
- package/lib/util/ParallelismFactorCalculator.js +1 -0
- package/lib/util/Queue.js +6 -3
- package/lib/util/Semaphore.js +14 -1
- package/lib/util/SetHelpers.js +3 -0
- package/lib/util/SortableSet.js +6 -0
- package/lib/util/StackedCacheMap.js +20 -3
- package/lib/util/StackedMap.js +45 -0
- package/lib/util/StringXor.js +1 -1
- package/lib/util/TupleQueue.js +7 -3
- package/lib/util/TupleSet.js +13 -0
- package/lib/util/URLAbsoluteSpecifier.js +1 -0
- package/lib/util/WeakTupleMap.js +33 -0
- package/lib/util/binarySearchBounds.js +1 -0
- package/lib/util/cleverMerge.js +17 -0
- package/lib/util/comparators.js +31 -0
- package/lib/util/compileBooleanMatcher.js +9 -0
- package/lib/util/concatenate.js +6 -0
- package/lib/util/conventions.js +4 -0
- package/lib/util/dataURL.js +1 -0
- package/lib/util/deprecation.js +19 -0
- package/lib/util/deterministicGrouping.js +20 -0
- package/lib/util/extractSourceMap.js +1 -0
- package/lib/util/extractUrlAndGlobal.js +1 -0
- package/lib/util/findGraphRoots.js +5 -0
- package/lib/util/fs.js +63 -0
- package/lib/util/generateDebugId.js +1 -0
- package/lib/util/hash/BatchedHash.js +1 -0
- package/lib/util/hash/BulkUpdateHash.js +1 -0
- package/lib/util/hash/hash-digest.js +8 -0
- package/lib/util/hash/wasm-hash.js +5 -0
- package/lib/util/identifier.js +19 -0
- package/lib/util/magicComment.js +1 -0
- package/lib/util/makeSerializable.js +6 -0
- package/lib/util/memoize.js +2 -0
- package/lib/util/mimeTypes.js +176 -0
- package/lib/util/nonNumericOnlyHash.js +1 -0
- package/lib/util/parseJson.js +112 -0
- package/lib/util/processAsyncTree.js +8 -0
- package/lib/util/property.js +1 -0
- package/lib/util/registerExternalSerializer.js +20 -0
- package/lib/util/removeBOM.js +1 -0
- package/lib/util/runtime.js +32 -0
- package/lib/util/semver.js +15 -0
- package/lib/util/serialization.js +2 -0
- package/lib/util/smartGrouping.js +8 -0
- package/lib/util/source.js +2 -0
- package/lib/validateSchema.js +1 -0
- package/lib/wasm/EnableWasmLoadingPlugin.js +15 -1
- package/lib/wasm-async/AsyncWasmCompileRuntimeModule.js +1 -0
- package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +1 -0
- package/lib/wasm-async/AsyncWebAssemblyGenerator.js +6 -0
- package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +5 -0
- package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +10 -1
- package/lib/wasm-async/AsyncWebAssemblyParser.js +1 -0
- package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +12 -1
- package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +1 -0
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +1 -0
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +1 -1
- package/lib/wasm-sync/WebAssemblyGenerator.js +26 -1
- package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +2 -0
- package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +4 -0
- package/lib/wasm-sync/WebAssemblyModulesPlugin.js +10 -1
- package/lib/wasm-sync/WebAssemblyParser.js +2 -0
- package/lib/wasm-sync/WebAssemblyUtils.js +2 -0
- package/lib/web/FetchCompileAsyncWasmPlugin.js +10 -1
- package/lib/web/FetchCompileWasmPlugin.js +13 -1
- package/lib/web/JsonpChunkLoadingPlugin.js +11 -1
- package/lib/web/JsonpChunkLoadingRuntimeModule.js +1 -0
- package/lib/web/JsonpTemplatePlugin.js +2 -1
- package/lib/webpack.js +10 -0
- package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +10 -1
- package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +1 -0
- package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
- package/package.json +12 -14
- package/schemas/WebpackOptions.check.js +1 -1
- package/schemas/WebpackOptions.json +44 -55
- package/types.d.ts +4594 -331
|
@@ -54,17 +54,20 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
54
54
|
/** @typedef {import("../ExportsInfo").ExportInfoName} ExportInfoName */
|
|
55
55
|
|
|
56
56
|
/**
|
|
57
|
+
* Defines the shared type used by this module.
|
|
57
58
|
* @template T
|
|
58
59
|
* @typedef {import("../util/comparators").Comparator<T>} Comparator<T>
|
|
59
60
|
*/
|
|
60
61
|
|
|
61
62
|
/**
|
|
63
|
+
* Defines the group config type used by this module.
|
|
62
64
|
* @template I, G
|
|
63
65
|
* @typedef {import("../util/smartGrouping").GroupConfig<I, G>} GroupConfig
|
|
64
66
|
*/
|
|
65
67
|
|
|
66
68
|
/** @typedef {KnownStatsCompilation & Record<string, EXPECTED_ANY>} StatsCompilation */
|
|
67
69
|
/**
|
|
70
|
+
* Defines the known stats compilation type used by this module.
|
|
68
71
|
* @typedef {object} KnownStatsCompilation
|
|
69
72
|
* @property {EXPECTED_ANY=} env
|
|
70
73
|
* @property {string=} name
|
|
@@ -95,6 +98,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
95
98
|
|
|
96
99
|
/** @typedef {KnownStatsLogging & Record<string, EXPECTED_ANY>} StatsLogging */
|
|
97
100
|
/**
|
|
101
|
+
* Defines the known stats logging type used by this module.
|
|
98
102
|
* @typedef {object} KnownStatsLogging
|
|
99
103
|
* @property {StatsLoggingEntry[]} entries
|
|
100
104
|
* @property {number} filteredEntries
|
|
@@ -103,6 +107,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
103
107
|
|
|
104
108
|
/** @typedef {KnownStatsLoggingEntry & Record<string, EXPECTED_ANY>} StatsLoggingEntry */
|
|
105
109
|
/**
|
|
110
|
+
* Defines the known stats logging entry type used by this module.
|
|
106
111
|
* @typedef {object} KnownStatsLoggingEntry
|
|
107
112
|
* @property {string} type
|
|
108
113
|
* @property {string=} message
|
|
@@ -115,6 +120,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
115
120
|
/** @typedef {KnownStatsAsset & Record<string, EXPECTED_ANY>} StatsAsset */
|
|
116
121
|
/** @typedef {string[]} ChunkIdHints */
|
|
117
122
|
/**
|
|
123
|
+
* Defines the known stats asset type used by this module.
|
|
118
124
|
* @typedef {object} KnownStatsAsset
|
|
119
125
|
* @property {string} type
|
|
120
126
|
* @property {string} name
|
|
@@ -136,6 +142,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
136
142
|
|
|
137
143
|
/** @typedef {KnownStatsChunkGroup & Record<string, EXPECTED_ANY>} StatsChunkGroup */
|
|
138
144
|
/**
|
|
145
|
+
* Defines the known stats chunk group type used by this module.
|
|
139
146
|
* @typedef {object} KnownStatsChunkGroup
|
|
140
147
|
* @property {ChunkName=} name
|
|
141
148
|
* @property {ChunkId[]=} chunks
|
|
@@ -153,6 +160,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
153
160
|
/** @typedef {Module[]} ModuleIssuerPath */
|
|
154
161
|
/** @typedef {KnownStatsModule & Record<string, EXPECTED_ANY>} StatsModule */
|
|
155
162
|
/**
|
|
163
|
+
* Defines the known stats module type used by this module.
|
|
156
164
|
* @typedef {object} KnownStatsModule
|
|
157
165
|
* @property {string=} type
|
|
158
166
|
* @property {string=} moduleType
|
|
@@ -197,6 +205,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
197
205
|
|
|
198
206
|
/** @typedef {KnownStatsProfile & Record<string, EXPECTED_ANY>} StatsProfile */
|
|
199
207
|
/**
|
|
208
|
+
* Defines the known stats profile type used by this module.
|
|
200
209
|
* @typedef {object} KnownStatsProfile
|
|
201
210
|
* @property {number} total
|
|
202
211
|
* @property {number} resolving
|
|
@@ -212,6 +221,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
212
221
|
|
|
213
222
|
/** @typedef {KnownStatsModuleIssuer & Record<string, EXPECTED_ANY>} StatsModuleIssuer */
|
|
214
223
|
/**
|
|
224
|
+
* Defines the known stats module issuer type used by this module.
|
|
215
225
|
* @typedef {object} KnownStatsModuleIssuer
|
|
216
226
|
* @property {string} identifier
|
|
217
227
|
* @property {string} name
|
|
@@ -221,6 +231,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
221
231
|
|
|
222
232
|
/** @typedef {KnownStatsModuleReason & Record<string, EXPECTED_ANY>} StatsModuleReason */
|
|
223
233
|
/**
|
|
234
|
+
* Defines the known stats module reason type used by this module.
|
|
224
235
|
* @typedef {object} KnownStatsModuleReason
|
|
225
236
|
* @property {string | null} moduleIdentifier
|
|
226
237
|
* @property {string | null} module
|
|
@@ -238,6 +249,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
238
249
|
|
|
239
250
|
/** @typedef {KnownStatsChunk & Record<string, EXPECTED_ANY>} StatsChunk */
|
|
240
251
|
/**
|
|
252
|
+
* Defines the known stats chunk type used by this module.
|
|
241
253
|
* @typedef {object} KnownStatsChunk
|
|
242
254
|
* @property {boolean} rendered
|
|
243
255
|
* @property {boolean} initial
|
|
@@ -264,6 +276,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
264
276
|
|
|
265
277
|
/** @typedef {KnownStatsChunkOrigin & Record<string, EXPECTED_ANY>} StatsChunkOrigin */
|
|
266
278
|
/**
|
|
279
|
+
* Defines the known stats chunk origin type used by this module.
|
|
267
280
|
* @typedef {object} KnownStatsChunkOrigin
|
|
268
281
|
* @property {string} module
|
|
269
282
|
* @property {string} moduleIdentifier
|
|
@@ -275,6 +288,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
275
288
|
|
|
276
289
|
/** @typedef {KnownStatsModuleTraceItem & Record<string, EXPECTED_ANY>} StatsModuleTraceItem */
|
|
277
290
|
/**
|
|
291
|
+
* Defines the known stats module trace item type used by this module.
|
|
278
292
|
* @typedef {object} KnownStatsModuleTraceItem
|
|
279
293
|
* @property {string=} originIdentifier
|
|
280
294
|
* @property {string=} originName
|
|
@@ -287,12 +301,14 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
287
301
|
|
|
288
302
|
/** @typedef {KnownStatsModuleTraceDependency & Record<string, EXPECTED_ANY>} StatsModuleTraceDependency */
|
|
289
303
|
/**
|
|
304
|
+
* Defines the known stats module trace dependency type used by this module.
|
|
290
305
|
* @typedef {object} KnownStatsModuleTraceDependency
|
|
291
306
|
* @property {string=} loc
|
|
292
307
|
*/
|
|
293
308
|
|
|
294
309
|
/** @typedef {KnownStatsError & Record<string, EXPECTED_ANY>} StatsError */
|
|
295
310
|
/**
|
|
311
|
+
* Defines the known stats error type used by this module.
|
|
296
312
|
* @typedef {object} KnownStatsError
|
|
297
313
|
* @property {string} message
|
|
298
314
|
* @property {string=} chunkName
|
|
@@ -315,6 +331,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
315
331
|
/** @typedef {Asset & { type: string, related: PreprocessedAsset[] | undefined }} PreprocessedAsset */
|
|
316
332
|
|
|
317
333
|
/**
|
|
334
|
+
* Defines the extractors by option type used by this module.
|
|
318
335
|
* @template T
|
|
319
336
|
* @template O
|
|
320
337
|
* @typedef {Record<string, (object: O, data: T, context: StatsFactoryContext, options: NormalizedStatsOptions, factory: StatsFactory) => void>} ExtractorsByOption
|
|
@@ -324,6 +341,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
324
341
|
/** @typedef {{ origin: Module, module: Module }} ModuleTrace */
|
|
325
342
|
|
|
326
343
|
/**
|
|
344
|
+
* Defines the simple extractors type used by this module.
|
|
327
345
|
* @typedef {object} SimpleExtractors
|
|
328
346
|
* @property {ExtractorsByOption<Compilation, StatsCompilation>} compilation
|
|
329
347
|
* @property {ExtractorsByOption<PreprocessedAsset, StatsAsset>} asset
|
|
@@ -344,6 +362,7 @@ const { makePathsRelative, parseResource } = require("../util/identifier");
|
|
|
344
362
|
*/
|
|
345
363
|
|
|
346
364
|
/**
|
|
365
|
+
* Returns array of values.
|
|
347
366
|
* @template T
|
|
348
367
|
* @template I
|
|
349
368
|
* @param {Iterable<T>} items items to select from
|
|
@@ -362,6 +381,7 @@ const uniqueArray = (items, selector) => {
|
|
|
362
381
|
};
|
|
363
382
|
|
|
364
383
|
/**
|
|
384
|
+
* Unique ordered array.
|
|
365
385
|
* @template T
|
|
366
386
|
* @template I
|
|
367
387
|
* @param {Iterable<T>} items items to select from
|
|
@@ -373,12 +393,14 @@ const uniqueOrderedArray = (items, selector, comparator) =>
|
|
|
373
393
|
uniqueArray(items, selector).sort(comparator);
|
|
374
394
|
|
|
375
395
|
/**
|
|
396
|
+
* Defines the shared type used by this module.
|
|
376
397
|
* @template T
|
|
377
398
|
* @template R
|
|
378
399
|
* @typedef {{ [P in keyof T]: R }} MappedValues<T, R>
|
|
379
400
|
*/
|
|
380
401
|
|
|
381
402
|
/**
|
|
403
|
+
* Returns mapped object.
|
|
382
404
|
* @template {object} T
|
|
383
405
|
* @template {object} R
|
|
384
406
|
* @param {T} obj object to be mapped
|
|
@@ -395,6 +417,7 @@ const mapObject = (obj, fn) => {
|
|
|
395
417
|
};
|
|
396
418
|
|
|
397
419
|
/**
|
|
420
|
+
* Count with children.
|
|
398
421
|
* @template T
|
|
399
422
|
* @param {Compilation} compilation the compilation
|
|
400
423
|
* @param {(compilation: Compilation, name: string) => T[]} getItems get items
|
|
@@ -998,6 +1021,7 @@ const SIMPLE_EXTRACTORS = {
|
|
|
998
1021
|
.create(`${type}${childType}.warnings`, cachedGetWarnings(c), context)
|
|
999
1022
|
.filter(
|
|
1000
1023
|
/**
|
|
1024
|
+
* Handles the warnings count callback for this hook.
|
|
1001
1025
|
* @param {StatsError} warning warning
|
|
1002
1026
|
* @returns {boolean} result
|
|
1003
1027
|
*/
|
|
@@ -1122,6 +1146,7 @@ const SIMPLE_EXTRACTORS = {
|
|
|
1122
1146
|
chunkGroupChildren &&
|
|
1123
1147
|
chunkGroup.getChildrenByOrders(moduleGraph, chunkGraph);
|
|
1124
1148
|
/**
|
|
1149
|
+
* Returns } Asset object.
|
|
1125
1150
|
* @param {string} name Name
|
|
1126
1151
|
* @returns {{ name: string, size: number }} Asset object
|
|
1127
1152
|
*/
|
|
@@ -1743,6 +1768,7 @@ const SORTERS = {
|
|
|
1743
1768
|
concatComparators(
|
|
1744
1769
|
compareSelect(
|
|
1745
1770
|
/**
|
|
1771
|
+
* Handles the callback for this hook.
|
|
1746
1772
|
* @param {Dependency} x dependency
|
|
1747
1773
|
* @returns {DependencyLocation} location
|
|
1748
1774
|
*/
|
|
@@ -1771,11 +1797,13 @@ const SORTERS = {
|
|
|
1771
1797
|
};
|
|
1772
1798
|
|
|
1773
1799
|
/**
|
|
1800
|
+
* Defines the children type used by this module.
|
|
1774
1801
|
* @template T
|
|
1775
1802
|
* @typedef {T & { children?: Children<T>[] | undefined, filteredChildren?: number }} Children
|
|
1776
1803
|
*/
|
|
1777
1804
|
|
|
1778
1805
|
/**
|
|
1806
|
+
* Returns item size.
|
|
1779
1807
|
* @template T
|
|
1780
1808
|
* @param {Children<T>} item item
|
|
1781
1809
|
* @returns {number} item size
|
|
@@ -1791,6 +1819,7 @@ const getItemSize = (item) =>
|
|
|
1791
1819
|
: 1 + getTotalSize(item.children);
|
|
1792
1820
|
|
|
1793
1821
|
/**
|
|
1822
|
+
* Returns total size.
|
|
1794
1823
|
* @template T
|
|
1795
1824
|
* @param {Children<T>[]} children children
|
|
1796
1825
|
* @returns {number} total size
|
|
@@ -1804,6 +1833,7 @@ const getTotalSize = (children) => {
|
|
|
1804
1833
|
};
|
|
1805
1834
|
|
|
1806
1835
|
/**
|
|
1836
|
+
* Returns total items.
|
|
1807
1837
|
* @template T
|
|
1808
1838
|
* @param {Children<T>[]} children children
|
|
1809
1839
|
* @returns {number} total items
|
|
@@ -1822,6 +1852,7 @@ const getTotalItems = (children) => {
|
|
|
1822
1852
|
};
|
|
1823
1853
|
|
|
1824
1854
|
/**
|
|
1855
|
+
* Returns collapsed children.
|
|
1825
1856
|
* @template T
|
|
1826
1857
|
* @param {Children<T>[]} children children
|
|
1827
1858
|
* @returns {Children<T>[]} collapsed children
|
|
@@ -1847,6 +1878,7 @@ const collapse = (children) => {
|
|
|
1847
1878
|
};
|
|
1848
1879
|
|
|
1849
1880
|
/**
|
|
1881
|
+
* Returns result.
|
|
1850
1882
|
* @template T
|
|
1851
1883
|
* @param {Children<T>[]} itemsAndGroups item and groups
|
|
1852
1884
|
* @param {number} max max
|
|
@@ -1976,6 +2008,7 @@ const spaceLimited = (
|
|
|
1976
2008
|
};
|
|
1977
2009
|
|
|
1978
2010
|
/**
|
|
2011
|
+
* Errors space limit.
|
|
1979
2012
|
* @param {StatsError[]} errors errors
|
|
1980
2013
|
* @param {number} max max
|
|
1981
2014
|
* @returns {[StatsError[], number]} error space limit
|
|
@@ -2039,6 +2072,7 @@ const errorsSpaceLimit = (errors, max) => {
|
|
|
2039
2072
|
};
|
|
2040
2073
|
|
|
2041
2074
|
/**
|
|
2075
|
+
* Returns } asset size.
|
|
2042
2076
|
* @template {{ size: number }} T
|
|
2043
2077
|
* @param {T[]} children children
|
|
2044
2078
|
* @param {T[]} assets assets
|
|
@@ -2055,6 +2089,7 @@ const assetGroup = (children, assets) => {
|
|
|
2055
2089
|
/** @typedef {{ size: number, sizes: Record<string, number> }} ModuleGroupBySizeResult */
|
|
2056
2090
|
|
|
2057
2091
|
/**
|
|
2092
|
+
* Returns size and sizes.
|
|
2058
2093
|
* @template {ModuleGroupBySizeResult} T
|
|
2059
2094
|
* @param {Children<T>[]} children children
|
|
2060
2095
|
* @param {KnownStatsModule[]} modules modules
|
|
@@ -2077,6 +2112,7 @@ const moduleGroup = (children, modules) => {
|
|
|
2077
2112
|
};
|
|
2078
2113
|
|
|
2079
2114
|
/**
|
|
2115
|
+
* Returns } reason group.
|
|
2080
2116
|
* @template {{ active: boolean }} T
|
|
2081
2117
|
* @param {Children<T>[]} children children
|
|
2082
2118
|
* @param {KnownStatsModuleReason[]} reasons reasons
|
|
@@ -2098,6 +2134,7 @@ const GROUP_PATH_REGEXP = /(.+)[/\\][^/\\]+?(?:\?|(?: \+ \d+ modules?)?$)/;
|
|
|
2098
2134
|
/** @typedef {{ type: string }} BaseGroup */
|
|
2099
2135
|
|
|
2100
2136
|
/**
|
|
2137
|
+
* Defines the base group with children type used by this module.
|
|
2101
2138
|
* @template T
|
|
2102
2139
|
* @typedef {BaseGroup & { children: T[], size: number }} BaseGroupWithChildren
|
|
2103
2140
|
*/
|
|
@@ -2105,6 +2142,7 @@ const GROUP_PATH_REGEXP = /(.+)[/\\][^/\\]+?(?:\?|(?: \+ \d+ modules?)?$)/;
|
|
|
2105
2142
|
/** @typedef {(name: string, asset: StatsAsset) => boolean} AssetFilterItemFn */
|
|
2106
2143
|
|
|
2107
2144
|
/**
|
|
2145
|
+
* Describes the assets groupers shape.
|
|
2108
2146
|
* @typedef {{
|
|
2109
2147
|
* _: (groupConfigs: GroupConfig<KnownStatsAsset, BaseGroup & { filteredChildren: number, size: number } | BaseGroupWithChildren<KnownStatsAsset>>[], context: StatsFactoryContext, options: NormalizedStatsOptions) => void,
|
|
2110
2148
|
* groupAssetsByInfo: (groupConfigs: GroupConfig<KnownStatsAsset, BaseGroupWithChildren<KnownStatsAsset>>[], context: StatsFactoryContext, options: NormalizedStatsOptions) => void,
|
|
@@ -2117,6 +2155,7 @@ const GROUP_PATH_REGEXP = /(.+)[/\\][^/\\]+?(?:\?|(?: \+ \d+ modules?)?$)/;
|
|
|
2117
2155
|
const ASSETS_GROUPERS = {
|
|
2118
2156
|
_: (groupConfigs, context, options) => {
|
|
2119
2157
|
/**
|
|
2158
|
+
* Processes the provided name.
|
|
2120
2159
|
* @param {keyof KnownStatsAsset} name name
|
|
2121
2160
|
* @param {boolean=} exclude need exclude?
|
|
2122
2161
|
*/
|
|
@@ -2196,6 +2235,7 @@ const ASSETS_GROUPERS = {
|
|
|
2196
2235
|
},
|
|
2197
2236
|
groupAssetsByInfo: (groupConfigs, _context, _options) => {
|
|
2198
2237
|
/**
|
|
2238
|
+
* Group by asset info flag.
|
|
2199
2239
|
* @param {string} name name
|
|
2200
2240
|
*/
|
|
2201
2241
|
const groupByAssetInfoFlag = (name) => {
|
|
@@ -2218,6 +2258,7 @@ const ASSETS_GROUPERS = {
|
|
|
2218
2258
|
},
|
|
2219
2259
|
groupAssetsByChunk: (groupConfigs, _context, _options) => {
|
|
2220
2260
|
/**
|
|
2261
|
+
* Processes the provided name.
|
|
2221
2262
|
* @param {keyof KnownStatsAsset} name name
|
|
2222
2263
|
*/
|
|
2223
2264
|
const groupByNames = (name) => {
|
|
@@ -2257,6 +2298,7 @@ const ASSETS_GROUPERS = {
|
|
|
2257
2298
|
};
|
|
2258
2299
|
|
|
2259
2300
|
/**
|
|
2301
|
+
* Describes the modules groupers shape.
|
|
2260
2302
|
* @typedef {{
|
|
2261
2303
|
* _: (groupConfigs: GroupConfig<KnownStatsModule, BaseGroup & { filteredChildren?: number, children?: KnownStatsModule[], size: number, sizes: Record<string, number> }>[], context: StatsFactoryContext, options: NormalizedStatsOptions) => void,
|
|
2262
2304
|
* excludeModules: (groupConfigs: GroupConfig<KnownStatsModule, BaseGroup & { filteredChildren: number, size: number, sizes: Record<string, number> }>[], context: StatsFactoryContext, options: NormalizedStatsOptions) => void,
|
|
@@ -2271,6 +2313,7 @@ const ASSETS_GROUPERS = {
|
|
|
2271
2313
|
const MODULES_GROUPERS = (type) => ({
|
|
2272
2314
|
_: (groupConfigs, context, options) => {
|
|
2273
2315
|
/**
|
|
2316
|
+
* Processes the provided name.
|
|
2274
2317
|
* @param {keyof KnownStatsModule} name name
|
|
2275
2318
|
* @param {string} type type
|
|
2276
2319
|
* @param {boolean=} exclude need exclude?
|
|
@@ -2452,6 +2495,7 @@ const MODULES_GROUPERS = (type) => ({
|
|
|
2452
2495
|
});
|
|
2453
2496
|
|
|
2454
2497
|
/**
|
|
2498
|
+
* Defines the module reasons groupers type used by this module.
|
|
2455
2499
|
* @typedef {{ groupReasonsByOrigin: (groupConfigs: GroupConfig<KnownStatsModuleReason, BaseGroup & { module: string, children: KnownStatsModuleReason[], active: boolean }>[], context: StatsFactoryContext, options: NormalizedStatsOptions) => void }} ModuleReasonsGroupers
|
|
2456
2500
|
*/
|
|
2457
2501
|
|
|
@@ -2493,6 +2537,7 @@ const RESULT_GROUPERS = {
|
|
|
2493
2537
|
|
|
2494
2538
|
// remove a prefixed "!" that can be specified to reverse sort order
|
|
2495
2539
|
/**
|
|
2540
|
+
* Normalizes field key.
|
|
2496
2541
|
* @param {string} field a field name
|
|
2497
2542
|
* @returns {field} normalized field
|
|
2498
2543
|
*/
|
|
@@ -2505,6 +2550,7 @@ const normalizeFieldKey = (field) => {
|
|
|
2505
2550
|
|
|
2506
2551
|
// if a field is prefixed by a "!" reverse sort order
|
|
2507
2552
|
/**
|
|
2553
|
+
* Sorts order regular.
|
|
2508
2554
|
* @param {string} field a field name
|
|
2509
2555
|
* @returns {boolean} result
|
|
2510
2556
|
*/
|
|
@@ -2516,6 +2562,7 @@ const sortOrderRegular = (field) => {
|
|
|
2516
2562
|
};
|
|
2517
2563
|
|
|
2518
2564
|
/**
|
|
2565
|
+
* Returns comparators.
|
|
2519
2566
|
* @template T
|
|
2520
2567
|
* @param {string | false} field field name
|
|
2521
2568
|
* @returns {(a: T, b: T) => 0 | 1 | -1} comparators
|
|
@@ -2523,6 +2570,7 @@ const sortOrderRegular = (field) => {
|
|
|
2523
2570
|
const sortByField = (field) => {
|
|
2524
2571
|
if (!field) {
|
|
2525
2572
|
/**
|
|
2573
|
+
* Returns zero.
|
|
2526
2574
|
* @param {T} a first
|
|
2527
2575
|
* @param {T} b second
|
|
2528
2576
|
* @returns {-1 | 0 | 1} zero
|
|
@@ -2547,6 +2595,7 @@ const sortByField = (field) => {
|
|
|
2547
2595
|
};
|
|
2548
2596
|
|
|
2549
2597
|
/**
|
|
2598
|
+
* Describes the asset sorters shape.
|
|
2550
2599
|
* @typedef {{
|
|
2551
2600
|
* assetsSort: (comparators: Comparator<Asset>[], context: StatsFactoryContext, options: NormalizedStatsOptions) => void,
|
|
2552
2601
|
* _: (comparators: Comparator<Asset>[], context: StatsFactoryContext, options: NormalizedStatsOptions) => void,
|
|
@@ -2599,11 +2648,13 @@ const RESULT_SORTERS = {
|
|
|
2599
2648
|
};
|
|
2600
2649
|
|
|
2601
2650
|
/**
|
|
2651
|
+
* Defines the extract function type used by this module.
|
|
2602
2652
|
* @template T
|
|
2603
2653
|
* @typedef {T extends Record<string, Record<string, infer F>> ? F : never} ExtractFunction
|
|
2604
2654
|
*/
|
|
2605
2655
|
|
|
2606
2656
|
/**
|
|
2657
|
+
* Processes the provided config.
|
|
2607
2658
|
* @template {Record<string, Record<string, EXPECTED_ANY>>} T
|
|
2608
2659
|
* @param {T} config the config see above
|
|
2609
2660
|
* @param {NormalizedStatsOptions} options stats options
|
|
@@ -2658,11 +2709,13 @@ const ITEM_NAMES = {
|
|
|
2658
2709
|
};
|
|
2659
2710
|
|
|
2660
2711
|
/**
|
|
2712
|
+
* Defines the named object type used by this module.
|
|
2661
2713
|
* @template T
|
|
2662
2714
|
* @typedef {{ name: T }} NamedObject
|
|
2663
2715
|
*/
|
|
2664
2716
|
|
|
2665
2717
|
/**
|
|
2718
|
+
* Merges the provided values into a single result.
|
|
2666
2719
|
* @template {{ name: string }} T
|
|
2667
2720
|
* @param {T[]} items items to be merged
|
|
2668
2721
|
* @returns {NamedObject<T>} an object
|
|
@@ -2688,7 +2741,7 @@ const PLUGIN_NAME = "DefaultStatsFactoryPlugin";
|
|
|
2688
2741
|
|
|
2689
2742
|
class DefaultStatsFactoryPlugin {
|
|
2690
2743
|
/**
|
|
2691
|
-
*
|
|
2744
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
2692
2745
|
* @param {Compiler} compiler the compiler instance
|
|
2693
2746
|
* @returns {void}
|
|
2694
2747
|
*/
|
|
@@ -2697,6 +2750,7 @@ class DefaultStatsFactoryPlugin {
|
|
|
2697
2750
|
compilation.hooks.statsFactory.tap(
|
|
2698
2751
|
PLUGIN_NAME,
|
|
2699
2752
|
/**
|
|
2753
|
+
* Handles the callback logic for this hook.
|
|
2700
2754
|
* @param {StatsFactory} stats stats factory
|
|
2701
2755
|
* @param {NormalizedStatsOptions} options stats options
|
|
2702
2756
|
*/
|
|
@@ -2758,6 +2812,7 @@ class DefaultStatsFactoryPlugin {
|
|
|
2758
2812
|
.tap(
|
|
2759
2813
|
PLUGIN_NAME,
|
|
2760
2814
|
/**
|
|
2815
|
+
* Handles the callback logic for this hook.
|
|
2761
2816
|
* @param {Compilation} comp compilation
|
|
2762
2817
|
* @param {StatsFactoryContext} options options
|
|
2763
2818
|
* @returns {StatsFactory | undefined} stats factory
|
|
@@ -17,6 +17,7 @@ const RequestShortener = require("../RequestShortener");
|
|
|
17
17
|
/** @typedef {import("./DefaultStatsFactoryPlugin").StatsError} StatsError */
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
|
+
* Processes the provided normalized stats option.
|
|
20
21
|
* @param {Partial<NormalizedStatsOptions>} options options
|
|
21
22
|
* @param {StatsOptions} defaults default options
|
|
22
23
|
*/
|
|
@@ -144,16 +145,19 @@ const NAMED_PRESETS = {
|
|
|
144
145
|
};
|
|
145
146
|
|
|
146
147
|
/**
|
|
148
|
+
* Returns true when enabled, otherwise false.
|
|
147
149
|
* @param {Partial<NormalizedStatsOptions>} all stats options
|
|
148
150
|
* @returns {boolean} true when enabled, otherwise false
|
|
149
151
|
*/
|
|
150
152
|
const NORMAL_ON = ({ all }) => all !== false;
|
|
151
153
|
/**
|
|
154
|
+
* Returns true when enabled, otherwise false.
|
|
152
155
|
* @param {Partial<NormalizedStatsOptions>} all stats options
|
|
153
156
|
* @returns {boolean} true when enabled, otherwise false
|
|
154
157
|
*/
|
|
155
158
|
const NORMAL_OFF = ({ all }) => all === true;
|
|
156
159
|
/**
|
|
160
|
+
* Returns true when enabled, otherwise false.
|
|
157
161
|
* @param {Partial<NormalizedStatsOptions>} all stats options
|
|
158
162
|
* @param {CreateStatsOptionsContext} forToString stats options context
|
|
159
163
|
* @returns {boolean} true when enabled, otherwise false
|
|
@@ -161,6 +165,7 @@ const NORMAL_OFF = ({ all }) => all === true;
|
|
|
161
165
|
const ON_FOR_TO_STRING = ({ all }, { forToString }) =>
|
|
162
166
|
forToString ? all !== false : all === true;
|
|
163
167
|
/**
|
|
168
|
+
* Returns true when enabled, otherwise false.
|
|
164
169
|
* @param {Partial<NormalizedStatsOptions>} all stats options
|
|
165
170
|
* @param {CreateStatsOptionsContext} forToString stats options context
|
|
166
171
|
* @returns {boolean} true when enabled, otherwise false
|
|
@@ -168,6 +173,7 @@ const ON_FOR_TO_STRING = ({ all }, { forToString }) =>
|
|
|
168
173
|
const OFF_FOR_TO_STRING = ({ all }, { forToString }) =>
|
|
169
174
|
forToString ? all === true : all !== false;
|
|
170
175
|
/**
|
|
176
|
+
* Auto for to string.
|
|
171
177
|
* @param {Partial<NormalizedStatsOptions>} all stats options
|
|
172
178
|
* @param {CreateStatsOptionsContext} forToString stats options context
|
|
173
179
|
* @returns {boolean | "auto"} true when enabled, otherwise false
|
|
@@ -285,11 +291,13 @@ const DEFAULTS = {
|
|
|
285
291
|
};
|
|
286
292
|
|
|
287
293
|
/**
|
|
294
|
+
* Defines the normalize function type used by this module.
|
|
288
295
|
* @template T
|
|
289
296
|
* @typedef {(value: T, ...args: EXPECTED_ANY[]) => boolean} NormalizeFunction
|
|
290
297
|
*/
|
|
291
298
|
|
|
292
299
|
/**
|
|
300
|
+
* Returns normalize fn.
|
|
293
301
|
* @template {string} T
|
|
294
302
|
* @param {string | ({ test: (value: T) => boolean }) | NormalizeFunction<T> | boolean} item item to normalize
|
|
295
303
|
* @returns {NormalizeFunction<T>} normalize fn
|
|
@@ -315,6 +323,7 @@ const normalizeFilter = (item) => {
|
|
|
315
323
|
/** @typedef {{ [Key in NormalizerKeys]?: (value: StatsOptions[Key]) => KnownNormalizedStatsOptions[Key] }} Normalizers */
|
|
316
324
|
|
|
317
325
|
/**
|
|
326
|
+
* Defines the warning filter fn callback.
|
|
318
327
|
* @callback WarningFilterFn
|
|
319
328
|
* @param {StatsError} warning warning
|
|
320
329
|
* @param {string} warningString warning string
|
|
@@ -343,6 +352,7 @@ const NORMALIZER = {
|
|
|
343
352
|
}
|
|
344
353
|
return value.map(
|
|
345
354
|
/**
|
|
355
|
+
* Handles the warnings filter callback for this hook.
|
|
346
356
|
* @param {StatsOptions["warningsFilter"]} filter a warning filter
|
|
347
357
|
* @returns {WarningFilterFn} result
|
|
348
358
|
*/
|
|
@@ -380,7 +390,7 @@ const PLUGIN_NAME = "DefaultStatsPresetPlugin";
|
|
|
380
390
|
|
|
381
391
|
class DefaultStatsPresetPlugin {
|
|
382
392
|
/**
|
|
383
|
-
*
|
|
393
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
384
394
|
* @param {Compiler} compiler the compiler instance
|
|
385
395
|
* @returns {void}
|
|
386
396
|
*/
|