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
|
@@ -25,6 +25,7 @@ const { getUndoPath } = require("../util/identifier");
|
|
|
25
25
|
/** @typedef {import("../Module").ReadOnlyRuntimeRequirements} ReadOnlyRuntimeRequirements */
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
|
+
* Defines the jsonp compilation plugin hooks type used by this module.
|
|
28
29
|
* @typedef {object} JsonpCompilationPluginHooks
|
|
29
30
|
* @property {SyncWaterfallHook<[string, Chunk]>} linkPreload
|
|
30
31
|
* @property {SyncWaterfallHook<[string, Chunk]>} linkPrefetch
|
|
@@ -35,6 +36,7 @@ const compilationHooksMap = new WeakMap();
|
|
|
35
36
|
|
|
36
37
|
class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
|
|
37
38
|
/**
|
|
39
|
+
* Returns hooks.
|
|
38
40
|
* @param {Compilation} compilation the compilation
|
|
39
41
|
* @returns {JsonpCompilationPluginHooks} hooks
|
|
40
42
|
*/
|
|
@@ -56,6 +58,7 @@ class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
|
|
|
56
58
|
}
|
|
57
59
|
|
|
58
60
|
/**
|
|
61
|
+
* Creates an instance of ModuleChunkLoadingRuntimeModule.
|
|
59
62
|
* @param {ReadOnlyRuntimeRequirements} runtimeRequirements runtime requirements
|
|
60
63
|
*/
|
|
61
64
|
constructor(runtimeRequirements) {
|
|
@@ -65,6 +68,7 @@ class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
|
|
|
65
68
|
}
|
|
66
69
|
|
|
67
70
|
/**
|
|
71
|
+
* Returns generated code.
|
|
68
72
|
* @private
|
|
69
73
|
* @param {Chunk} chunk chunk
|
|
70
74
|
* @param {string} rootOutputDir root output directory
|
|
@@ -85,6 +89,7 @@ class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
|
|
|
85
89
|
}
|
|
86
90
|
|
|
87
91
|
/**
|
|
92
|
+
* Generates runtime code for this runtime module.
|
|
88
93
|
* @returns {string | null} runtime code
|
|
89
94
|
*/
|
|
90
95
|
generate() {
|
package/lib/formatLocation.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
/** @typedef {import("./Dependency").SourcePosition} SourcePosition */
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
+
* Returns formatted position.
|
|
12
13
|
* @param {SourcePosition} pos position
|
|
13
14
|
* @returns {string} formatted position
|
|
14
15
|
*/
|
|
@@ -24,6 +25,7 @@ const formatPosition = (pos) => {
|
|
|
24
25
|
};
|
|
25
26
|
|
|
26
27
|
/**
|
|
28
|
+
* Returns formatted location.
|
|
27
29
|
* @param {DependencyLocation} loc location
|
|
28
30
|
* @returns {string} formatted location
|
|
29
31
|
*/
|
|
@@ -46,6 +46,7 @@ const { registerNotSerializable } = require("../util/serialization");
|
|
|
46
46
|
/** @typedef {{ client: string, data: string, active: boolean }} ModuleResult */
|
|
47
47
|
|
|
48
48
|
/**
|
|
49
|
+
* Defines the backend api type used by this module.
|
|
49
50
|
* @typedef {object} BackendApi
|
|
50
51
|
* @property {(callback: (err?: (Error | null)) => void) => void} dispose
|
|
51
52
|
* @property {(module: Module) => ModuleResult} module
|
|
@@ -59,6 +60,7 @@ const HMR_DEPENDENCY_TYPES = new Set([
|
|
|
59
60
|
]);
|
|
60
61
|
|
|
61
62
|
/**
|
|
63
|
+
* Checks true, if the module should be selected.
|
|
62
64
|
* @param {Options["test"]} test test option
|
|
63
65
|
* @param {Module} module the module
|
|
64
66
|
* @returns {boolean | null | string} true, if the module should be selected
|
|
@@ -81,6 +83,7 @@ const checkTest = (test, module) => {
|
|
|
81
83
|
|
|
82
84
|
class LazyCompilationDependency extends Dependency {
|
|
83
85
|
/**
|
|
86
|
+
* Creates an instance of LazyCompilationDependency.
|
|
84
87
|
* @param {LazyCompilationProxyModule} proxyModule proxy module
|
|
85
88
|
*/
|
|
86
89
|
constructor(proxyModule) {
|
|
@@ -97,6 +100,7 @@ class LazyCompilationDependency extends Dependency {
|
|
|
97
100
|
}
|
|
98
101
|
|
|
99
102
|
/**
|
|
103
|
+
* Returns an identifier to merge equal requests.
|
|
100
104
|
* @returns {string | null} an identifier to merge equal requests
|
|
101
105
|
*/
|
|
102
106
|
getResourceIdentifier() {
|
|
@@ -108,6 +112,7 @@ registerNotSerializable(LazyCompilationDependency);
|
|
|
108
112
|
|
|
109
113
|
class LazyCompilationProxyModule extends Module {
|
|
110
114
|
/**
|
|
115
|
+
* Creates an instance of LazyCompilationProxyModule.
|
|
111
116
|
* @param {string} context context
|
|
112
117
|
* @param {Module} originalModule an original module
|
|
113
118
|
* @param {string} request request
|
|
@@ -129,6 +134,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
129
134
|
}
|
|
130
135
|
|
|
131
136
|
/**
|
|
137
|
+
* Returns the unique identifier used to reference this module.
|
|
132
138
|
* @returns {string} a unique identifier of the module
|
|
133
139
|
*/
|
|
134
140
|
identifier() {
|
|
@@ -136,6 +142,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
136
142
|
}
|
|
137
143
|
|
|
138
144
|
/**
|
|
145
|
+
* Returns a human-readable identifier for this module.
|
|
139
146
|
* @param {RequestShortener} requestShortener the request shortener
|
|
140
147
|
* @returns {string} a user readable identifier of the module
|
|
141
148
|
*/
|
|
@@ -163,6 +170,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
163
170
|
}
|
|
164
171
|
|
|
165
172
|
/**
|
|
173
|
+
* Gets the library identifier.
|
|
166
174
|
* @param {LibIdentOptions} options options
|
|
167
175
|
* @returns {LibIdent | null} an identifier for library inclusion
|
|
168
176
|
*/
|
|
@@ -173,6 +181,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
173
181
|
}
|
|
174
182
|
|
|
175
183
|
/**
|
|
184
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
176
185
|
* @param {NeedBuildContext} context context info
|
|
177
186
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
178
187
|
* @returns {void}
|
|
@@ -182,6 +191,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
182
191
|
}
|
|
183
192
|
|
|
184
193
|
/**
|
|
194
|
+
* Builds the module using the provided compilation context.
|
|
185
195
|
* @param {WebpackOptions} options webpack options
|
|
186
196
|
* @param {Compilation} compilation the compilation
|
|
187
197
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -208,6 +218,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
208
218
|
}
|
|
209
219
|
|
|
210
220
|
/**
|
|
221
|
+
* Returns the source types this module can generate.
|
|
211
222
|
* @returns {SourceTypes} types available (do not mutate)
|
|
212
223
|
*/
|
|
213
224
|
getSourceTypes() {
|
|
@@ -215,6 +226,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
215
226
|
}
|
|
216
227
|
|
|
217
228
|
/**
|
|
229
|
+
* Returns the estimated size for the requested source type.
|
|
218
230
|
* @param {string=} type the source type for which the size should be estimated
|
|
219
231
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
220
232
|
*/
|
|
@@ -223,6 +235,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
223
235
|
}
|
|
224
236
|
|
|
225
237
|
/**
|
|
238
|
+
* Generates code and runtime requirements for this module.
|
|
226
239
|
* @param {CodeGenerationContext} context context for code generation
|
|
227
240
|
* @returns {CodeGenerationResult} result
|
|
228
241
|
*/
|
|
@@ -304,6 +317,7 @@ class LazyCompilationProxyModule extends Module {
|
|
|
304
317
|
}
|
|
305
318
|
|
|
306
319
|
/**
|
|
320
|
+
* Updates the hash with the data contributed by this instance.
|
|
307
321
|
* @param {Hash} hash the hash used to track dependencies
|
|
308
322
|
* @param {UpdateHashContext} context context
|
|
309
323
|
* @returns {void}
|
|
@@ -323,6 +337,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
|
|
|
323
337
|
}
|
|
324
338
|
|
|
325
339
|
/**
|
|
340
|
+
* Processes the provided data.
|
|
326
341
|
* @param {ModuleFactoryCreateData} data data object
|
|
327
342
|
* @param {ModuleFactoryCallback} callback callback
|
|
328
343
|
* @returns {void}
|
|
@@ -338,6 +353,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
|
|
|
338
353
|
}
|
|
339
354
|
|
|
340
355
|
/**
|
|
356
|
+
* Defines the backend handler callback.
|
|
341
357
|
* @callback BackendHandler
|
|
342
358
|
* @param {Compiler} compiler compiler
|
|
343
359
|
* @param {(err: Error | null, backendApi?: BackendApi) => void} callback callback
|
|
@@ -345,6 +361,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
|
|
|
345
361
|
*/
|
|
346
362
|
|
|
347
363
|
/**
|
|
364
|
+
* Defines the promise backend handler callback.
|
|
348
365
|
* @callback PromiseBackendHandler
|
|
349
366
|
* @param {Compiler} compiler compiler
|
|
350
367
|
* @returns {Promise<BackendApi>} backend
|
|
@@ -355,6 +372,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
|
|
|
355
372
|
/** @typedef {(module: Module) => boolean} TestFn */
|
|
356
373
|
|
|
357
374
|
/**
|
|
375
|
+
* Defines the options type used by this module.
|
|
358
376
|
* @typedef {object} Options options
|
|
359
377
|
* @property {BackEnd} backend the backend
|
|
360
378
|
* @property {boolean=} entries
|
|
@@ -366,6 +384,7 @@ const PLUGIN_NAME = "LazyCompilationPlugin";
|
|
|
366
384
|
|
|
367
385
|
class LazyCompilationPlugin {
|
|
368
386
|
/**
|
|
387
|
+
* Creates an instance of LazyCompilationPlugin.
|
|
369
388
|
* @param {Options} options options
|
|
370
389
|
*/
|
|
371
390
|
constructor({ backend, entries, imports, test }) {
|
|
@@ -376,7 +395,7 @@ class LazyCompilationPlugin {
|
|
|
376
395
|
}
|
|
377
396
|
|
|
378
397
|
/**
|
|
379
|
-
*
|
|
398
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
380
399
|
* @param {Compiler} compiler the compiler instance
|
|
381
400
|
* @returns {void}
|
|
382
401
|
*/
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
/** @typedef {() => Server} CreateServerFunction */
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
+
* Returns backend.
|
|
22
23
|
* @param {Omit<LazyCompilationDefaultBackendOptions, "client"> & { client: NonNullable<LazyCompilationDefaultBackendOptions["client"]> }} options additional options for the backend
|
|
23
24
|
* @returns {BackendHandler} backend
|
|
24
25
|
*/
|
|
@@ -118,6 +119,7 @@ module.exports = (options) => (compiler, callback) => {
|
|
|
118
119
|
server.on(
|
|
119
120
|
"listening",
|
|
120
121
|
/**
|
|
122
|
+
* Handles the callback logic for this hook.
|
|
121
123
|
* @param {Error} err error
|
|
122
124
|
* @returns {void}
|
|
123
125
|
*/
|
|
@@ -16,6 +16,7 @@ const {
|
|
|
16
16
|
/** @typedef {import("../ChunkGraph").ModuleComparator} ModuleComparator */
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
|
+
* Defines the chunk module id range plugin options type used by this module.
|
|
19
20
|
* @typedef {object} ChunkModuleIdRangePluginOptions
|
|
20
21
|
* @property {string} name the chunk name
|
|
21
22
|
* @property {("index" | "index2" | "preOrderIndex" | "postOrderIndex")=} order order
|
|
@@ -27,6 +28,7 @@ const PLUGIN_NAME = "ChunkModuleIdRangePlugin";
|
|
|
27
28
|
|
|
28
29
|
class ChunkModuleIdRangePlugin {
|
|
29
30
|
/**
|
|
31
|
+
* Creates an instance of ChunkModuleIdRangePlugin.
|
|
30
32
|
* @param {ChunkModuleIdRangePluginOptions} options options object
|
|
31
33
|
*/
|
|
32
34
|
constructor(options) {
|
|
@@ -35,7 +37,7 @@ class ChunkModuleIdRangePlugin {
|
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
/**
|
|
38
|
-
*
|
|
40
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
39
41
|
* @param {Compiler} compiler the compiler instance
|
|
40
42
|
* @returns {void}
|
|
41
43
|
*/
|
|
@@ -15,6 +15,7 @@ const {
|
|
|
15
15
|
/** @typedef {import("../Compiler")} Compiler */
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
|
+
* Defines the deterministic chunk ids plugin options type used by this module.
|
|
18
19
|
* @typedef {object} DeterministicChunkIdsPluginOptions
|
|
19
20
|
* @property {string=} context context for ids
|
|
20
21
|
* @property {number=} maxLength maximum length of ids
|
|
@@ -24,6 +25,7 @@ const PLUGIN_NAME = "DeterministicChunkIdsPlugin";
|
|
|
24
25
|
|
|
25
26
|
class DeterministicChunkIdsPlugin {
|
|
26
27
|
/**
|
|
28
|
+
* Creates an instance of DeterministicChunkIdsPlugin.
|
|
27
29
|
* @param {DeterministicChunkIdsPluginOptions=} options options
|
|
28
30
|
*/
|
|
29
31
|
constructor(options = {}) {
|
|
@@ -32,7 +34,7 @@ class DeterministicChunkIdsPlugin {
|
|
|
32
34
|
}
|
|
33
35
|
|
|
34
36
|
/**
|
|
35
|
-
*
|
|
37
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
36
38
|
* @param {Compiler} compiler the compiler instance
|
|
37
39
|
* @returns {void}
|
|
38
40
|
*/
|
|
@@ -18,6 +18,7 @@ const {
|
|
|
18
18
|
/** @typedef {import("../Module")} Module */
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
|
+
* Defines the deterministic module ids plugin options type used by this module.
|
|
21
22
|
* @typedef {object} DeterministicModuleIdsPluginOptions
|
|
22
23
|
* @property {string=} context context relative to which module identifiers are computed
|
|
23
24
|
* @property {((module: Module) => boolean)=} test selector function for modules
|
|
@@ -31,6 +32,7 @@ const PLUGIN_NAME = "DeterministicModuleIdsPlugin";
|
|
|
31
32
|
|
|
32
33
|
class DeterministicModuleIdsPlugin {
|
|
33
34
|
/**
|
|
35
|
+
* Creates an instance of DeterministicModuleIdsPlugin.
|
|
34
36
|
* @param {DeterministicModuleIdsPluginOptions=} options options
|
|
35
37
|
*/
|
|
36
38
|
constructor(options = {}) {
|
|
@@ -39,7 +41,7 @@ class DeterministicModuleIdsPlugin {
|
|
|
39
41
|
}
|
|
40
42
|
|
|
41
43
|
/**
|
|
42
|
-
*
|
|
44
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
43
45
|
* @param {Compiler} compiler the compiler instance
|
|
44
46
|
* @returns {void}
|
|
45
47
|
*/
|
|
@@ -22,6 +22,7 @@ const PLUGIN_NAME = "HashedModuleIdsPlugin";
|
|
|
22
22
|
|
|
23
23
|
class HashedModuleIdsPlugin {
|
|
24
24
|
/**
|
|
25
|
+
* Creates an instance of HashedModuleIdsPlugin.
|
|
25
26
|
* @param {HashedModuleIdsPluginOptions=} options options object
|
|
26
27
|
*/
|
|
27
28
|
constructor(options = {}) {
|
|
@@ -30,7 +31,7 @@ class HashedModuleIdsPlugin {
|
|
|
30
31
|
}
|
|
31
32
|
|
|
32
33
|
/**
|
|
33
|
-
*
|
|
34
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
34
35
|
* @param {Compiler} compiler the compiler instance
|
|
35
36
|
* @returns {void}
|
|
36
37
|
*/
|
package/lib/ids/IdHelpers.js
CHANGED
|
@@ -18,6 +18,7 @@ const numberHash = require("../util/numberHash");
|
|
|
18
18
|
/** @typedef {import("../Module").BuildMeta} BuildMeta */
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
|
+
* Returns hash.
|
|
21
22
|
* @param {string} str string to hash
|
|
22
23
|
* @param {number} len max length of the hash
|
|
23
24
|
* @param {HashFunction} hashFunction hash function to use
|
|
@@ -31,6 +32,7 @@ const getHash = (str, len, hashFunction) => {
|
|
|
31
32
|
};
|
|
32
33
|
|
|
33
34
|
/**
|
|
35
|
+
* Returns string prefixed by an underscore if it is a number.
|
|
34
36
|
* @param {string} str the string
|
|
35
37
|
* @returns {string} string prefixed by an underscore if it is a number
|
|
36
38
|
*/
|
|
@@ -52,6 +54,7 @@ const avoidNumber = (str) => {
|
|
|
52
54
|
};
|
|
53
55
|
|
|
54
56
|
/**
|
|
57
|
+
* Returns id representation.
|
|
55
58
|
* @param {string} request the request
|
|
56
59
|
* @returns {string} id representation
|
|
57
60
|
*/
|
|
@@ -59,6 +62,7 @@ const requestToId = (request) =>
|
|
|
59
62
|
request.replace(/^(\.\.?\/)+/, "").replace(/(^[.-]|[^a-z0-9_-])+/gi, "_");
|
|
60
63
|
|
|
61
64
|
/**
|
|
65
|
+
* Shorten long string.
|
|
62
66
|
* @param {string} string the string
|
|
63
67
|
* @param {string} delimiter separator for string and hash
|
|
64
68
|
* @param {HashFunction} hashFunction hash function to use
|
|
@@ -74,6 +78,7 @@ const shortenLongString = (string, delimiter, hashFunction) => {
|
|
|
74
78
|
};
|
|
75
79
|
|
|
76
80
|
/**
|
|
81
|
+
* Gets short module name.
|
|
77
82
|
* @param {Module} module the module
|
|
78
83
|
* @param {string} context context directory
|
|
79
84
|
* @param {AssociatedObjectForCache=} associatedObjectForCache an object to which the cache will be attached
|
|
@@ -92,6 +97,7 @@ const getShortModuleName = (module, context, associatedObjectForCache) => {
|
|
|
92
97
|
};
|
|
93
98
|
|
|
94
99
|
/**
|
|
100
|
+
* Gets long module name.
|
|
95
101
|
* @param {string} shortName the short name
|
|
96
102
|
* @param {Module} module the module
|
|
97
103
|
* @param {string} context context directory
|
|
@@ -111,6 +117,7 @@ const getLongModuleName = (
|
|
|
111
117
|
};
|
|
112
118
|
|
|
113
119
|
/**
|
|
120
|
+
* Gets full module name.
|
|
114
121
|
* @param {Module} module the module
|
|
115
122
|
* @param {string} context context directory
|
|
116
123
|
* @param {AssociatedObjectForCache=} associatedObjectForCache an object to which the cache will be attached
|
|
@@ -120,6 +127,7 @@ const getFullModuleName = (module, context, associatedObjectForCache) =>
|
|
|
120
127
|
makePathsRelative(context, module.identifier(), associatedObjectForCache);
|
|
121
128
|
|
|
122
129
|
/**
|
|
130
|
+
* Gets short chunk name.
|
|
123
131
|
* @param {Chunk} chunk the chunk
|
|
124
132
|
* @param {ChunkGraph} chunkGraph the chunk graph
|
|
125
133
|
* @param {string} context context directory
|
|
@@ -148,6 +156,7 @@ const getShortChunkName = (
|
|
|
148
156
|
};
|
|
149
157
|
|
|
150
158
|
/**
|
|
159
|
+
* Gets long chunk name.
|
|
151
160
|
* @param {Chunk} chunk the chunk
|
|
152
161
|
* @param {ChunkGraph} chunkGraph the chunk graph
|
|
153
162
|
* @param {string} context context directory
|
|
@@ -185,6 +194,7 @@ const getLongChunkName = (
|
|
|
185
194
|
};
|
|
186
195
|
|
|
187
196
|
/**
|
|
197
|
+
* Gets full chunk name.
|
|
188
198
|
* @param {Chunk} chunk the chunk
|
|
189
199
|
* @param {ChunkGraph} chunkGraph the chunk graph
|
|
190
200
|
* @param {string} context context directory
|
|
@@ -206,6 +216,7 @@ const getFullChunkName = (
|
|
|
206
216
|
};
|
|
207
217
|
|
|
208
218
|
/**
|
|
219
|
+
* Adds to map of items.
|
|
209
220
|
* @template K
|
|
210
221
|
* @template V
|
|
211
222
|
* @param {Map<K, V[]>} map a map from key to values
|
|
@@ -225,6 +236,7 @@ const addToMapOfItems = (map, key, value) => {
|
|
|
225
236
|
/** @typedef {Set<string>} UsedModuleIds */
|
|
226
237
|
|
|
227
238
|
/**
|
|
239
|
+
* Gets used module ids and modules.
|
|
228
240
|
* @param {Compilation} compilation the compilation
|
|
229
241
|
* @param {((module: Module) => boolean)=} filter filter modules
|
|
230
242
|
* @returns {[UsedModuleIds, Module[]]} used module ids as strings and modules without id matching the filter
|
|
@@ -263,6 +275,7 @@ const getUsedModuleIdsAndModules = (compilation, filter) => {
|
|
|
263
275
|
/** @typedef {Set<string>} UsedChunkIds */
|
|
264
276
|
|
|
265
277
|
/**
|
|
278
|
+
* Gets used chunk ids.
|
|
266
279
|
* @param {Compilation} compilation the compilation
|
|
267
280
|
* @returns {UsedChunkIds} used chunk ids as strings
|
|
268
281
|
*/
|
|
@@ -286,6 +299,7 @@ const getUsedChunkIds = (compilation) => {
|
|
|
286
299
|
};
|
|
287
300
|
|
|
288
301
|
/**
|
|
302
|
+
* Returns list of items without a name.
|
|
289
303
|
* @template T
|
|
290
304
|
* @param {Iterable<T>} items list of items to be named
|
|
291
305
|
* @param {(item: T) => string} getShortName get a short name for an item
|
|
@@ -304,6 +318,7 @@ const assignNames = (
|
|
|
304
318
|
assignName
|
|
305
319
|
) => {
|
|
306
320
|
/**
|
|
321
|
+
* Defines the map to item type used by this module.
|
|
307
322
|
* @template T
|
|
308
323
|
* @typedef {Map<string, T[]>} MapToItem
|
|
309
324
|
*/
|
|
@@ -358,6 +373,7 @@ const assignNames = (
|
|
|
358
373
|
};
|
|
359
374
|
|
|
360
375
|
/**
|
|
376
|
+
* Assign deterministic ids.
|
|
361
377
|
* @template T
|
|
362
378
|
* @param {T[]} items list of items to be named
|
|
363
379
|
* @param {(item: T) => string} getName get a name for an item
|
|
@@ -412,6 +428,7 @@ const assignDeterministicIds = (
|
|
|
412
428
|
};
|
|
413
429
|
|
|
414
430
|
/**
|
|
431
|
+
* Assign ascending module ids.
|
|
415
432
|
* @param {UsedModuleIds} usedIds used ids
|
|
416
433
|
* @param {Iterable<Module>} modules the modules
|
|
417
434
|
* @param {Compilation} compilation the compilation
|
|
@@ -425,6 +442,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
|
|
|
425
442
|
let assignId;
|
|
426
443
|
if (usedIds.size > 0) {
|
|
427
444
|
/**
|
|
445
|
+
* Processes the provided module.
|
|
428
446
|
* @param {Module} module the module
|
|
429
447
|
*/
|
|
430
448
|
assignId = (module) => {
|
|
@@ -435,6 +453,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
|
|
|
435
453
|
};
|
|
436
454
|
} else {
|
|
437
455
|
/**
|
|
456
|
+
* Processes the provided module.
|
|
438
457
|
* @param {Module} module the module
|
|
439
458
|
*/
|
|
440
459
|
assignId = (module) => {
|
|
@@ -449,6 +468,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
|
|
|
449
468
|
};
|
|
450
469
|
|
|
451
470
|
/**
|
|
471
|
+
* Assign ascending chunk ids.
|
|
452
472
|
* @param {Iterable<Chunk>} chunks the chunks
|
|
453
473
|
* @param {Compilation} compilation the compilation
|
|
454
474
|
* @returns {void}
|
|
@@ -17,6 +17,7 @@ const {
|
|
|
17
17
|
/** @typedef {import("../Compiler")} Compiler */
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
|
+
* Defines the named chunk ids plugin options type used by this module.
|
|
20
21
|
* @typedef {object} NamedChunkIdsPluginOptions
|
|
21
22
|
* @property {string=} context context
|
|
22
23
|
* @property {string=} delimiter delimiter
|
|
@@ -26,6 +27,7 @@ const PLUGIN_NAME = "NamedChunkIdsPlugin";
|
|
|
26
27
|
|
|
27
28
|
class NamedChunkIdsPlugin {
|
|
28
29
|
/**
|
|
30
|
+
* Creates an instance of NamedChunkIdsPlugin.
|
|
29
31
|
* @param {NamedChunkIdsPluginOptions=} options options
|
|
30
32
|
*/
|
|
31
33
|
constructor(options = {}) {
|
|
@@ -34,7 +36,7 @@ class NamedChunkIdsPlugin {
|
|
|
34
36
|
}
|
|
35
37
|
|
|
36
38
|
/**
|
|
37
|
-
*
|
|
39
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
38
40
|
* @param {Compiler} compiler the compiler instance
|
|
39
41
|
* @returns {void}
|
|
40
42
|
*/
|
|
@@ -17,6 +17,7 @@ const {
|
|
|
17
17
|
/** @typedef {import("../Compiler")} Compiler */
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
|
+
* Defines the named module ids plugin options type used by this module.
|
|
20
21
|
* @typedef {object} NamedModuleIdsPluginOptions
|
|
21
22
|
* @property {string=} context context
|
|
22
23
|
*/
|
|
@@ -25,6 +26,7 @@ const PLUGIN_NAME = "NamedModuleIdsPlugin";
|
|
|
25
26
|
|
|
26
27
|
class NamedModuleIdsPlugin {
|
|
27
28
|
/**
|
|
29
|
+
* Creates an instance of NamedModuleIdsPlugin.
|
|
28
30
|
* @param {NamedModuleIdsPluginOptions=} options options
|
|
29
31
|
*/
|
|
30
32
|
constructor(options = {}) {
|
|
@@ -33,7 +35,7 @@ class NamedModuleIdsPlugin {
|
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
/**
|
|
36
|
-
*
|
|
38
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
37
39
|
* @param {Compiler} compiler the compiler instance
|
|
38
40
|
* @returns {void}
|
|
39
41
|
*/
|
|
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "OccurrenceChunkIdsPlugin";
|
|
|
16
16
|
|
|
17
17
|
class OccurrenceChunkIdsPlugin {
|
|
18
18
|
/**
|
|
19
|
+
* Creates an instance of OccurrenceChunkIdsPlugin.
|
|
19
20
|
* @param {OccurrenceChunkIdsPluginOptions=} options options object
|
|
20
21
|
*/
|
|
21
22
|
constructor(options = {}) {
|
|
@@ -24,7 +25,7 @@ class OccurrenceChunkIdsPlugin {
|
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
|
-
*
|
|
28
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
28
29
|
* @param {Compiler} compiler the compiler instance
|
|
29
30
|
* @returns {void}
|
|
30
31
|
*/
|
|
@@ -21,6 +21,7 @@ const PLUGIN_NAME = "OccurrenceModuleIdsPlugin";
|
|
|
21
21
|
|
|
22
22
|
class OccurrenceModuleIdsPlugin {
|
|
23
23
|
/**
|
|
24
|
+
* Creates an instance of OccurrenceModuleIdsPlugin.
|
|
24
25
|
* @param {OccurrenceModuleIdsPluginOptions=} options options object
|
|
25
26
|
*/
|
|
26
27
|
constructor(options = {}) {
|
|
@@ -29,7 +30,7 @@ class OccurrenceModuleIdsPlugin {
|
|
|
29
30
|
}
|
|
30
31
|
|
|
31
32
|
/**
|
|
32
|
-
*
|
|
33
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
33
34
|
* @param {Compiler} compiler the compiler instance
|
|
34
35
|
* @returns {void}
|
|
35
36
|
*/
|
|
@@ -79,6 +80,7 @@ class OccurrenceModuleIdsPlugin {
|
|
|
79
80
|
}
|
|
80
81
|
|
|
81
82
|
/**
|
|
83
|
+
* Count occurs in entry.
|
|
82
84
|
* @param {Module} module module
|
|
83
85
|
* @returns {number} count of occurs
|
|
84
86
|
*/
|
|
@@ -96,6 +98,7 @@ class OccurrenceModuleIdsPlugin {
|
|
|
96
98
|
};
|
|
97
99
|
|
|
98
100
|
/**
|
|
101
|
+
* Returns count of occurs.
|
|
99
102
|
* @param {Module} module module
|
|
100
103
|
* @returns {number} count of occurs
|
|
101
104
|
*/
|
|
@@ -18,6 +18,7 @@ const { getUsedModuleIdsAndModules } = require("./IdHelpers");
|
|
|
18
18
|
const plugin = "SyncModuleIdsPlugin";
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
|
+
* Represents the sync module ids plugin runtime component.
|
|
21
22
|
* @typedef {object} SyncModuleIdsPluginOptions
|
|
22
23
|
* @property {string} path path to file
|
|
23
24
|
* @property {string=} context context for module names
|
|
@@ -27,6 +28,7 @@ const plugin = "SyncModuleIdsPlugin";
|
|
|
27
28
|
|
|
28
29
|
class SyncModuleIdsPlugin {
|
|
29
30
|
/**
|
|
31
|
+
* Creates an instance of SyncModuleIdsPlugin.
|
|
30
32
|
* @param {SyncModuleIdsPluginOptions} options options
|
|
31
33
|
*/
|
|
32
34
|
constructor(options) {
|
|
@@ -35,7 +37,7 @@ class SyncModuleIdsPlugin {
|
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
/**
|
|
38
|
-
*
|
|
40
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
39
41
|
* @param {Compiler} compiler the compiler instance
|
|
40
42
|
* @returns {void}
|
|
41
43
|
*/
|
package/lib/index.js
CHANGED
|
@@ -85,6 +85,7 @@ const memoize = require("./util/memoize");
|
|
|
85
85
|
/** @typedef {import("./util/fs").OutputFileSystem} OutputFileSystem */
|
|
86
86
|
|
|
87
87
|
/**
|
|
88
|
+
* Returns function.
|
|
88
89
|
* @template {EXPECTED_FUNCTION} T
|
|
89
90
|
* @param {() => T} factory factory function
|
|
90
91
|
* @returns {T} function
|
|
@@ -93,6 +94,7 @@ const lazyFunction = (factory) => {
|
|
|
93
94
|
const fac = memoize(factory);
|
|
94
95
|
const f = /** @type {unknown} */ (
|
|
95
96
|
/**
|
|
97
|
+
* Handles the callback logic for this hook.
|
|
96
98
|
* @param {...EXPECTED_ANY} args args
|
|
97
99
|
* @returns {T} result
|
|
98
100
|
*/
|
|
@@ -102,6 +104,7 @@ const lazyFunction = (factory) => {
|
|
|
102
104
|
};
|
|
103
105
|
|
|
104
106
|
/**
|
|
107
|
+
* Merges the provided values into a single result.
|
|
105
108
|
* @template A
|
|
106
109
|
* @template B
|
|
107
110
|
* @param {A} obj input a
|
|
@@ -142,6 +145,7 @@ module.exports = mergeExports(fn, {
|
|
|
142
145
|
return require("./webpack");
|
|
143
146
|
},
|
|
144
147
|
/**
|
|
148
|
+
* Returns validate fn.
|
|
145
149
|
* @returns {(configuration: Configuration | MultiConfiguration) => void} validate fn
|
|
146
150
|
*/
|
|
147
151
|
get validate() {
|
|
@@ -151,6 +155,7 @@ module.exports = mergeExports(fn, {
|
|
|
151
155
|
|
|
152
156
|
const getRealValidate = memoize(
|
|
153
157
|
/**
|
|
158
|
+
* Handles the callback logic for this hook.
|
|
154
159
|
* @returns {(configuration: Configuration | MultiConfiguration) => void} validate fn
|
|
155
160
|
*/
|
|
156
161
|
() => {
|
|
@@ -23,7 +23,7 @@ const PLUGIN_NAME = "ArrayPushCallbackChunkFormatPlugin";
|
|
|
23
23
|
|
|
24
24
|
class ArrayPushCallbackChunkFormatPlugin {
|
|
25
25
|
/**
|
|
26
|
-
*
|
|
26
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
27
27
|
* @param {Compiler} compiler the compiler instance
|
|
28
28
|
* @returns {void}
|
|
29
29
|
*/
|