webpack 5.106.0 → 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 -4
- 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 +71 -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 +11 -3
- 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 +14 -5
- 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
|
@@ -15,6 +15,7 @@ const AsyncWasmLoadingRuntimeModule = require("../wasm-async/AsyncWasmLoadingRun
|
|
|
15
15
|
/** @typedef {import("../Compiler")} Compiler */
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
|
+
* Defines the read file compile async wasm plugin options type used by this module.
|
|
18
19
|
* @typedef {object} ReadFileCompileAsyncWasmPluginOptions
|
|
19
20
|
* @property {boolean=} import use import?
|
|
20
21
|
*/
|
|
@@ -23,6 +24,7 @@ const PLUGIN_NAME = "ReadFileCompileAsyncWasmPlugin";
|
|
|
23
24
|
|
|
24
25
|
class ReadFileCompileAsyncWasmPlugin {
|
|
25
26
|
/**
|
|
27
|
+
* Creates an instance of ReadFileCompileAsyncWasmPlugin.
|
|
26
28
|
* @param {ReadFileCompileAsyncWasmPluginOptions=} options options object
|
|
27
29
|
*/
|
|
28
30
|
constructor({ import: useImport = false } = {}) {
|
|
@@ -31,7 +33,7 @@ class ReadFileCompileAsyncWasmPlugin {
|
|
|
31
33
|
}
|
|
32
34
|
|
|
33
35
|
/**
|
|
34
|
-
*
|
|
36
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
35
37
|
* @param {Compiler} compiler the compiler instance
|
|
36
38
|
* @returns {void}
|
|
37
39
|
*/
|
|
@@ -39,6 +41,7 @@ class ReadFileCompileAsyncWasmPlugin {
|
|
|
39
41
|
compiler.hooks.thisCompilation.tap(PLUGIN_NAME, (compilation) => {
|
|
40
42
|
const globalWasmLoading = compilation.outputOptions.wasmLoading;
|
|
41
43
|
/**
|
|
44
|
+
* Checks whether this read file compile async wasm plugin is enabled for chunk.
|
|
42
45
|
* @param {Chunk} chunk chunk
|
|
43
46
|
* @returns {boolean} true, if wasm loading is enabled for the chunk
|
|
44
47
|
*/
|
|
@@ -14,6 +14,7 @@ const WasmChunkLoadingRuntimeModule = require("../wasm-sync/WasmChunkLoadingRunt
|
|
|
14
14
|
/** @typedef {import("../Compiler")} Compiler */
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
+
* Defines the read file compile wasm plugin options type used by this module.
|
|
17
18
|
* @typedef {object} ReadFileCompileWasmPluginOptions
|
|
18
19
|
* @property {boolean=} mangleImports mangle imports
|
|
19
20
|
* @property {boolean=} import use import?
|
|
@@ -23,6 +24,7 @@ const PLUGIN_NAME = "ReadFileCompileWasmPlugin";
|
|
|
23
24
|
|
|
24
25
|
class ReadFileCompileWasmPlugin {
|
|
25
26
|
/**
|
|
27
|
+
* Creates an instance of ReadFileCompileWasmPlugin.
|
|
26
28
|
* @param {ReadFileCompileWasmPluginOptions=} options options object
|
|
27
29
|
*/
|
|
28
30
|
constructor(options = {}) {
|
|
@@ -31,7 +33,7 @@ class ReadFileCompileWasmPlugin {
|
|
|
31
33
|
}
|
|
32
34
|
|
|
33
35
|
/**
|
|
34
|
-
*
|
|
36
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
35
37
|
* @param {Compiler} compiler the compiler instance
|
|
36
38
|
* @returns {void}
|
|
37
39
|
*/
|
|
@@ -39,6 +41,7 @@ class ReadFileCompileWasmPlugin {
|
|
|
39
41
|
compiler.hooks.thisCompilation.tap(PLUGIN_NAME, (compilation) => {
|
|
40
42
|
const globalWasmLoading = compilation.outputOptions.wasmLoading;
|
|
41
43
|
/**
|
|
44
|
+
* Checks whether this read file compile wasm plugin is enabled for chunk.
|
|
42
45
|
* @param {Chunk} chunk chunk
|
|
43
46
|
* @returns {boolean} true, when wasm loading is enabled for the chunk
|
|
44
47
|
*/
|
|
@@ -26,6 +26,7 @@ const { getUndoPath } = require("../util/identifier");
|
|
|
26
26
|
|
|
27
27
|
class RequireChunkLoadingRuntimeModule extends RuntimeModule {
|
|
28
28
|
/**
|
|
29
|
+
* Creates an instance of RequireChunkLoadingRuntimeModule.
|
|
29
30
|
* @param {ReadOnlyRuntimeRequirements} runtimeRequirements runtime requirements
|
|
30
31
|
*/
|
|
31
32
|
constructor(runtimeRequirements) {
|
|
@@ -35,6 +36,7 @@ class RequireChunkLoadingRuntimeModule extends RuntimeModule {
|
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
/**
|
|
39
|
+
* Returns generated code.
|
|
38
40
|
* @private
|
|
39
41
|
* @param {Chunk} chunk chunk
|
|
40
42
|
* @param {string} rootOutputDir root output directory
|
|
@@ -55,6 +57,7 @@ class RequireChunkLoadingRuntimeModule extends RuntimeModule {
|
|
|
55
57
|
}
|
|
56
58
|
|
|
57
59
|
/**
|
|
60
|
+
* Generates runtime code for this runtime module.
|
|
58
61
|
* @returns {string | null} runtime code
|
|
59
62
|
*/
|
|
60
63
|
generate() {
|
package/lib/node/nodeConsole.js
CHANGED
|
@@ -14,6 +14,7 @@ const truncateArgs = require("../logging/truncateArgs");
|
|
|
14
14
|
/* eslint-disable no-console */
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
+
* Returns logger function.
|
|
17
18
|
* @param {object} options options
|
|
18
19
|
* @param {boolean=} options.colors colors
|
|
19
20
|
* @param {boolean=} options.appendOnly append only
|
|
@@ -28,6 +29,7 @@ module.exports = ({ colors, appendOnly, stream }) => {
|
|
|
28
29
|
let currentCollapsed = 0;
|
|
29
30
|
|
|
30
31
|
/**
|
|
32
|
+
* Returns indented string.
|
|
31
33
|
* @param {string} str string
|
|
32
34
|
* @param {string} prefix prefix
|
|
33
35
|
* @param {string} colorPrefix color prefix
|
|
@@ -67,6 +69,7 @@ module.exports = ({ colors, appendOnly, stream }) => {
|
|
|
67
69
|
};
|
|
68
70
|
|
|
69
71
|
/**
|
|
72
|
+
* Returns function to write with colors.
|
|
70
73
|
* @template T
|
|
71
74
|
* @param {string} prefix prefix
|
|
72
75
|
* @param {string} colorPrefix color prefix
|
|
@@ -11,6 +11,7 @@ const { STAGE_ADVANCED } = require("../OptimizationStages");
|
|
|
11
11
|
/** @typedef {import("../Compiler")} Compiler */
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
+
* Defines the aggressive merging plugin options type used by this module.
|
|
14
15
|
* @typedef {object} AggressiveMergingPluginOptions
|
|
15
16
|
* @property {number=} minSizeReduce minimal size reduction to trigger merging
|
|
16
17
|
*/
|
|
@@ -19,6 +20,7 @@ const PLUGIN_NAME = "AggressiveMergingPlugin";
|
|
|
19
20
|
|
|
20
21
|
class AggressiveMergingPlugin {
|
|
21
22
|
/**
|
|
23
|
+
* Creates an instance of AggressiveMergingPlugin.
|
|
22
24
|
* @param {AggressiveMergingPluginOptions=} options options object
|
|
23
25
|
*/
|
|
24
26
|
constructor(options) {
|
|
@@ -35,7 +37,7 @@ class AggressiveMergingPlugin {
|
|
|
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
|
*/
|
|
@@ -21,6 +21,7 @@ const identifierUtils = require("../util/identifier");
|
|
|
21
21
|
/** @typedef {import("../Module")} Module */
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
|
+
* Move module between.
|
|
24
25
|
* @param {ChunkGraph} chunkGraph the chunk graph
|
|
25
26
|
* @param {Chunk} oldChunk the old chunk
|
|
26
27
|
* @param {Chunk} newChunk the new chunk
|
|
@@ -32,6 +33,7 @@ const moveModuleBetween = (chunkGraph, oldChunk, newChunk) => (module) => {
|
|
|
32
33
|
};
|
|
33
34
|
|
|
34
35
|
/**
|
|
36
|
+
* Checks whether this object is not a entry module.
|
|
35
37
|
* @param {ChunkGraph} chunkGraph the chunk graph
|
|
36
38
|
* @param {Chunk} chunk the chunk
|
|
37
39
|
* @returns {(module: Module) => boolean} filter for entry module
|
|
@@ -48,6 +50,7 @@ const PLUGIN_NAME = "AggressiveSplittingPlugin";
|
|
|
48
50
|
|
|
49
51
|
class AggressiveSplittingPlugin {
|
|
50
52
|
/**
|
|
53
|
+
* Creates an instance of AggressiveSplittingPlugin.
|
|
51
54
|
* @param {AggressiveSplittingPluginOptions=} options options object
|
|
52
55
|
*/
|
|
53
56
|
constructor(options = {}) {
|
|
@@ -56,6 +59,7 @@ class AggressiveSplittingPlugin {
|
|
|
56
59
|
}
|
|
57
60
|
|
|
58
61
|
/**
|
|
62
|
+
* Was chunk recorded.
|
|
59
63
|
* @param {Chunk} chunk the chunk to test
|
|
60
64
|
* @returns {boolean} true if the chunk was recorded
|
|
61
65
|
*/
|
|
@@ -64,7 +68,7 @@ class AggressiveSplittingPlugin {
|
|
|
64
68
|
}
|
|
65
69
|
|
|
66
70
|
/**
|
|
67
|
-
*
|
|
71
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
68
72
|
* @param {Compiler} compiler the compiler instance
|
|
69
73
|
* @returns {void}
|
|
70
74
|
*/
|
|
@@ -138,6 +142,7 @@ class AggressiveSplittingPlugin {
|
|
|
138
142
|
const maxSize = this.options.maxSize || 50 * 1024;
|
|
139
143
|
|
|
140
144
|
/**
|
|
145
|
+
* Returns true when applied, otherwise false.
|
|
141
146
|
* @param {SplitData} splitData split data
|
|
142
147
|
* @returns {boolean} true when applied, otherwise false
|
|
143
148
|
*/
|
|
@@ -795,6 +795,7 @@ class ConcatenatedModule extends Module {
|
|
|
795
795
|
}
|
|
796
796
|
|
|
797
797
|
/**
|
|
798
|
+
* Returns the source types this module can generate.
|
|
798
799
|
* @returns {SourceTypes} types available (do not mutate)
|
|
799
800
|
*/
|
|
800
801
|
getSourceTypes() {
|
|
@@ -806,6 +807,7 @@ class ConcatenatedModule extends Module {
|
|
|
806
807
|
}
|
|
807
808
|
|
|
808
809
|
/**
|
|
810
|
+
* Returns the unique identifier used to reference this module.
|
|
809
811
|
* @returns {string} a unique identifier of the module
|
|
810
812
|
*/
|
|
811
813
|
identifier() {
|
|
@@ -813,6 +815,7 @@ class ConcatenatedModule extends Module {
|
|
|
813
815
|
}
|
|
814
816
|
|
|
815
817
|
/**
|
|
818
|
+
* Returns a human-readable identifier for this module.
|
|
816
819
|
* @param {RequestShortener} requestShortener the request shortener
|
|
817
820
|
* @returns {string} a user readable identifier of the module
|
|
818
821
|
*/
|
|
@@ -823,6 +826,7 @@ class ConcatenatedModule extends Module {
|
|
|
823
826
|
}
|
|
824
827
|
|
|
825
828
|
/**
|
|
829
|
+
* Gets the library identifier.
|
|
826
830
|
* @param {LibIdentOptions} options options
|
|
827
831
|
* @returns {LibIdent | null} an identifier for library inclusion
|
|
828
832
|
*/
|
|
@@ -831,6 +835,7 @@ class ConcatenatedModule extends Module {
|
|
|
831
835
|
}
|
|
832
836
|
|
|
833
837
|
/**
|
|
838
|
+
* Returns the path used when matching this module against rule conditions.
|
|
834
839
|
* @returns {NameForCondition | null} absolute path which should be used for condition matching (usually the resource path)
|
|
835
840
|
*/
|
|
836
841
|
nameForCondition() {
|
|
@@ -838,6 +843,7 @@ class ConcatenatedModule extends Module {
|
|
|
838
843
|
}
|
|
839
844
|
|
|
840
845
|
/**
|
|
846
|
+
* Gets side effects connection state.
|
|
841
847
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
842
848
|
* @returns {ConnectionState} how this module should be connected to referencing modules when consumed for side-effects only
|
|
843
849
|
*/
|
|
@@ -846,6 +852,7 @@ class ConcatenatedModule extends Module {
|
|
|
846
852
|
}
|
|
847
853
|
|
|
848
854
|
/**
|
|
855
|
+
* Builds the module using the provided compilation context.
|
|
849
856
|
* @param {WebpackOptions} options webpack options
|
|
850
857
|
* @param {Compilation} compilation the compilation
|
|
851
858
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -958,6 +965,7 @@ class ConcatenatedModule extends Module {
|
|
|
958
965
|
}
|
|
959
966
|
|
|
960
967
|
/**
|
|
968
|
+
* Returns the estimated size for the requested source type.
|
|
961
969
|
* @param {string=} type the source type for which the size should be estimated
|
|
962
970
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
963
971
|
*/
|
|
@@ -1243,6 +1251,7 @@ class ConcatenatedModule extends Module {
|
|
|
1243
1251
|
}
|
|
1244
1252
|
|
|
1245
1253
|
/**
|
|
1254
|
+
* Adds the provided file dependencies to the module.
|
|
1246
1255
|
* @param {FileSystemDependencies} fileDependencies set where file dependencies are added to
|
|
1247
1256
|
* @param {FileSystemDependencies} contextDependencies set where context dependencies are added to
|
|
1248
1257
|
* @param {FileSystemDependencies} missingDependencies set where missing dependencies are added to
|
|
@@ -1265,6 +1274,7 @@ class ConcatenatedModule extends Module {
|
|
|
1265
1274
|
}
|
|
1266
1275
|
|
|
1267
1276
|
/**
|
|
1277
|
+
* Generates code and runtime requirements for this module.
|
|
1268
1278
|
* @param {CodeGenerationContext} context context for code generation
|
|
1269
1279
|
* @returns {CodeGenerationResult} result
|
|
1270
1280
|
*/
|
|
@@ -2244,6 +2254,7 @@ ${defineGetters}`
|
|
|
2244
2254
|
}
|
|
2245
2255
|
|
|
2246
2256
|
/**
|
|
2257
|
+
* Updates the hash with the data contributed by this instance.
|
|
2247
2258
|
* @param {Hash} hash the hash used to track dependencies
|
|
2248
2259
|
* @param {UpdateHashContext} context context
|
|
2249
2260
|
* @returns {void}
|
|
@@ -15,13 +15,14 @@ const PLUGIN_NAME = "EnsureChunkConditionsPlugin";
|
|
|
15
15
|
|
|
16
16
|
class EnsureChunkConditionsPlugin {
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
18
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
19
19
|
* @param {Compiler} compiler the compiler instance
|
|
20
20
|
* @returns {void}
|
|
21
21
|
*/
|
|
22
22
|
apply(compiler) {
|
|
23
23
|
compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
|
|
24
24
|
/**
|
|
25
|
+
* Handles the hook callback for this code path.
|
|
25
26
|
* @param {Iterable<Chunk>} chunks the chunks
|
|
26
27
|
*/
|
|
27
28
|
const handler = (chunks) => {
|
|
@@ -16,7 +16,7 @@ const PLUGIN_NAME = "FlagIncludedChunksPlugin";
|
|
|
16
16
|
|
|
17
17
|
class FlagIncludedChunksPlugin {
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
19
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
20
20
|
* @param {Compiler} compiler the compiler instance
|
|
21
21
|
* @returns {void}
|
|
22
22
|
*/
|
|
@@ -46,6 +46,7 @@ class FlagIncludedChunksPlugin {
|
|
|
46
46
|
const modulos = Array.from(
|
|
47
47
|
{ length: 31 },
|
|
48
48
|
/**
|
|
49
|
+
* Handles the callback logic for this hook.
|
|
49
50
|
* @param {number} x x
|
|
50
51
|
* @param {number} i i
|
|
51
52
|
* @returns {number} result
|
|
@@ -22,6 +22,7 @@ const JavascriptParser = require("../javascript/JavascriptParser");
|
|
|
22
22
|
/** @typedef {(value: boolean | Set<string> | undefined) => void} UsageCallback */
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
|
+
* Defines the state object type used by this module.
|
|
25
26
|
* @typedef {object} StateObject
|
|
26
27
|
* @property {InnerGraph} innerGraph
|
|
27
28
|
* @property {TopLevelSymbol=} currentTopLevelSymbol
|
|
@@ -32,6 +33,7 @@ const JavascriptParser = require("../javascript/JavascriptParser");
|
|
|
32
33
|
|
|
33
34
|
class TopLevelSymbol {
|
|
34
35
|
/**
|
|
36
|
+
* Creates an instance of TopLevelSymbol.
|
|
35
37
|
* @param {string} name name of the variable
|
|
36
38
|
*/
|
|
37
39
|
constructor(name) {
|
|
@@ -47,6 +49,7 @@ const parserStateMap = new WeakMap();
|
|
|
47
49
|
const topLevelSymbolTag = Symbol("top level symbol");
|
|
48
50
|
|
|
49
51
|
/**
|
|
52
|
+
* Returns state.
|
|
50
53
|
* @param {ParserState} parserState parser state
|
|
51
54
|
* @returns {State | undefined} state
|
|
52
55
|
*/
|
|
@@ -55,6 +58,7 @@ function getState(parserState) {
|
|
|
55
58
|
}
|
|
56
59
|
|
|
57
60
|
/**
|
|
61
|
+
* Processes the provided state.
|
|
58
62
|
* @param {ParserState} state parser state
|
|
59
63
|
* @param {TopLevelSymbol | null} symbol the symbol, or null for all symbols
|
|
60
64
|
* @param {Usage} usage usage data
|
|
@@ -79,6 +83,7 @@ module.exports.addUsage = (state, symbol, usage) => {
|
|
|
79
83
|
/** @typedef {string | TopLevelSymbol | true} Usage */
|
|
80
84
|
|
|
81
85
|
/**
|
|
86
|
+
* Processes the provided parser.
|
|
82
87
|
* @param {JavascriptParser} parser the parser
|
|
83
88
|
* @param {string} name name of variable
|
|
84
89
|
* @param {Usage} usage usage data
|
|
@@ -95,6 +100,7 @@ module.exports.addVariableUsage = (parser, name, usage) => {
|
|
|
95
100
|
};
|
|
96
101
|
|
|
97
102
|
/**
|
|
103
|
+
* Processes the provided parser state.
|
|
98
104
|
* @param {ParserState} parserState parser state
|
|
99
105
|
* @returns {void}
|
|
100
106
|
*/
|
|
@@ -103,6 +109,7 @@ module.exports.bailout = (parserState) => {
|
|
|
103
109
|
};
|
|
104
110
|
|
|
105
111
|
/**
|
|
112
|
+
* Processes the provided parser state.
|
|
106
113
|
* @param {ParserState} parserState parser state
|
|
107
114
|
* @returns {void}
|
|
108
115
|
*/
|
|
@@ -121,6 +128,7 @@ module.exports.enable = (parserState) => {
|
|
|
121
128
|
/** @typedef {Set<string> | boolean} UsedByExports */
|
|
122
129
|
|
|
123
130
|
/**
|
|
131
|
+
* Usage callback map.
|
|
124
132
|
* @param {Dependency} dependency the dependency
|
|
125
133
|
* @param {UsedByExports | undefined} usedByExports usedByExports info
|
|
126
134
|
* @param {ModuleGraph} moduleGraph moduleGraph
|
|
@@ -150,6 +158,7 @@ module.exports.getDependencyUsedByExportsCondition = (
|
|
|
150
158
|
};
|
|
151
159
|
|
|
152
160
|
/**
|
|
161
|
+
* Returns usage data.
|
|
153
162
|
* @param {ParserState} state parser state
|
|
154
163
|
* @returns {TopLevelSymbol | void} usage data
|
|
155
164
|
*/
|
|
@@ -162,6 +171,7 @@ module.exports.getTopLevelSymbol = (state) => {
|
|
|
162
171
|
};
|
|
163
172
|
|
|
164
173
|
/**
|
|
174
|
+
* Processes the provided state.
|
|
165
175
|
* @param {ParserState} state parser state
|
|
166
176
|
* @returns {void}
|
|
167
177
|
*/
|
|
@@ -260,6 +270,7 @@ module.exports.inferDependencyUsage = (state) => {
|
|
|
260
270
|
};
|
|
261
271
|
|
|
262
272
|
/**
|
|
273
|
+
* Returns false, when unused. Otherwise true.
|
|
263
274
|
* @param {Dependency} dependency the dependency
|
|
264
275
|
* @param {UsedByExports | undefined} usedByExports usedByExports info
|
|
265
276
|
* @param {ModuleGraph} moduleGraph moduleGraph
|
|
@@ -290,6 +301,7 @@ module.exports.isDependencyUsedByExports = (
|
|
|
290
301
|
};
|
|
291
302
|
|
|
292
303
|
/**
|
|
304
|
+
* Returns true, when enabled.
|
|
293
305
|
* @param {ParserState} parserState parser state
|
|
294
306
|
* @returns {boolean} true, when enabled
|
|
295
307
|
*/
|
|
@@ -299,6 +311,7 @@ module.exports.isEnabled = (parserState) => {
|
|
|
299
311
|
};
|
|
300
312
|
|
|
301
313
|
/**
|
|
314
|
+
* Processes the provided state.
|
|
302
315
|
* @param {ParserState} state parser state
|
|
303
316
|
* @param {UsageCallback} onUsageCallback on usage callback
|
|
304
317
|
*/
|
|
@@ -326,6 +339,7 @@ module.exports.onUsage = (state, onUsageCallback) => {
|
|
|
326
339
|
};
|
|
327
340
|
|
|
328
341
|
/**
|
|
342
|
+
* Processes the provided state.
|
|
329
343
|
* @param {ParserState} state parser state
|
|
330
344
|
* @param {TopLevelSymbol | undefined} symbol the symbol
|
|
331
345
|
*/
|
|
@@ -338,6 +352,7 @@ module.exports.setTopLevelSymbol = (state, symbol) => {
|
|
|
338
352
|
};
|
|
339
353
|
|
|
340
354
|
/**
|
|
355
|
+
* Returns symbol.
|
|
341
356
|
* @param {JavascriptParser} parser parser
|
|
342
357
|
* @param {string} name name of variable
|
|
343
358
|
* @returns {TopLevelSymbol | undefined} symbol
|
|
@@ -32,7 +32,7 @@ const PLUGIN_NAME = "InnerGraphPlugin";
|
|
|
32
32
|
|
|
33
33
|
class InnerGraphPlugin {
|
|
34
34
|
/**
|
|
35
|
-
*
|
|
35
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
36
36
|
* @param {Compiler} compiler the compiler instance
|
|
37
37
|
* @returns {void}
|
|
38
38
|
*/
|
|
@@ -48,12 +48,14 @@ class InnerGraphPlugin {
|
|
|
48
48
|
);
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
|
+
* Handles the hook callback for this code path.
|
|
51
52
|
* @param {JavascriptParser} parser the parser
|
|
52
53
|
* @param {JavascriptParserOptions} parserOptions options
|
|
53
54
|
* @returns {void}
|
|
54
55
|
*/
|
|
55
56
|
const handler = (parser, parserOptions) => {
|
|
56
57
|
/**
|
|
58
|
+
* Processes the provided sup.
|
|
57
59
|
* @param {Expression} sup sup
|
|
58
60
|
*/
|
|
59
61
|
const onUsageSuper = (sup) => {
|
|
@@ -14,6 +14,7 @@ const { compareChunks } = require("../util/comparators");
|
|
|
14
14
|
/** @typedef {import("../Compiler")} Compiler */
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
+
* Defines the chunk combination type used by this module.
|
|
17
18
|
* @typedef {object} ChunkCombination
|
|
18
19
|
* @property {boolean} deleted this is set to true when combination was removed
|
|
19
20
|
* @property {number} sizeDiff
|
|
@@ -27,6 +28,7 @@ const { compareChunks } = require("../util/comparators");
|
|
|
27
28
|
*/
|
|
28
29
|
|
|
29
30
|
/**
|
|
31
|
+
* Adds the provided map to this object.
|
|
30
32
|
* @template K, V
|
|
31
33
|
* @param {Map<K, Set<V>>} map map
|
|
32
34
|
* @param {K} key key
|
|
@@ -45,6 +47,7 @@ const PLUGIN_NAME = "LimitChunkCountPlugin";
|
|
|
45
47
|
|
|
46
48
|
class LimitChunkCountPlugin {
|
|
47
49
|
/**
|
|
50
|
+
* Creates an instance of LimitChunkCountPlugin.
|
|
48
51
|
* @param {LimitChunkCountPluginOptions=} options options object
|
|
49
52
|
*/
|
|
50
53
|
constructor(options = { maxChunks: 1 }) {
|
|
@@ -53,6 +56,7 @@ class LimitChunkCountPlugin {
|
|
|
53
56
|
}
|
|
54
57
|
|
|
55
58
|
/**
|
|
59
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
56
60
|
* @param {Compiler} compiler the webpack compiler
|
|
57
61
|
* @returns {void}
|
|
58
62
|
*/
|
|
@@ -105,11 +109,13 @@ class LimitChunkCountPlugin {
|
|
|
105
109
|
|
|
106
110
|
// Layer 2: ordered by smallest combined size
|
|
107
111
|
/**
|
|
112
|
+
* Handles the stage callback for this hook.
|
|
108
113
|
* @param {ChunkCombination} c combination
|
|
109
114
|
* @returns {number} integrated size
|
|
110
115
|
*/
|
|
111
116
|
(c) => c.integratedSize,
|
|
112
117
|
/**
|
|
118
|
+
* Handles the callback logic for this hook.
|
|
113
119
|
* @param {number} a a
|
|
114
120
|
* @param {number} b b
|
|
115
121
|
* @returns {number} result
|
|
@@ -118,11 +124,13 @@ class LimitChunkCountPlugin {
|
|
|
118
124
|
|
|
119
125
|
// Layer 3: ordered by position difference in orderedChunk (-> to be deterministic)
|
|
120
126
|
/**
|
|
127
|
+
* Handles the callback logic for this hook.
|
|
121
128
|
* @param {ChunkCombination} c combination
|
|
122
129
|
* @returns {number} position difference
|
|
123
130
|
*/
|
|
124
131
|
(c) => c.bIdx - c.aIdx,
|
|
125
132
|
/**
|
|
133
|
+
* Handles the callback logic for this hook.
|
|
126
134
|
* @param {number} a a
|
|
127
135
|
* @param {number} b b
|
|
128
136
|
* @returns {number} result
|
|
@@ -131,6 +139,7 @@ class LimitChunkCountPlugin {
|
|
|
131
139
|
|
|
132
140
|
// Layer 4: ordered by position in orderedChunk (-> to be deterministic)
|
|
133
141
|
/**
|
|
142
|
+
* Handles the callback logic for this hook.
|
|
134
143
|
* @param {ChunkCombination} a a
|
|
135
144
|
* @param {ChunkCombination} b b
|
|
136
145
|
* @returns {number} result
|
|
@@ -20,11 +20,13 @@ const { compareSelect, compareStringsNumeric } = require("../util/comparators");
|
|
|
20
20
|
/** @typedef {import("../util/concatenate").UsedNames} UsedNames */
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
|
+
* Defines the comparator type used by this module.
|
|
23
24
|
* @template T
|
|
24
25
|
* @typedef {import("../util/comparators").Comparator<T>} Comparator
|
|
25
26
|
*/
|
|
26
27
|
|
|
27
28
|
/**
|
|
29
|
+
* Checks whether it can mangle.
|
|
28
30
|
* @param {ExportsInfo} exportsInfo exports info
|
|
29
31
|
* @returns {boolean} mangle is possible
|
|
30
32
|
*/
|
|
@@ -45,6 +47,7 @@ const canMangle = (exportsInfo) => {
|
|
|
45
47
|
/** @type {Comparator<ExportInfo>} */
|
|
46
48
|
const comparator = compareSelect((e) => e.name, compareStringsNumeric);
|
|
47
49
|
/**
|
|
50
|
+
* Mangle exports info.
|
|
48
51
|
* @param {boolean} deterministic use deterministic names
|
|
49
52
|
* @param {ExportsInfo} exportsInfo exports info
|
|
50
53
|
* @param {boolean | undefined} isNamespace is namespace object
|
|
@@ -158,6 +161,7 @@ const PLUGIN_NAME = "MangleExportsPlugin";
|
|
|
158
161
|
|
|
159
162
|
class MangleExportsPlugin {
|
|
160
163
|
/**
|
|
164
|
+
* Creates an instance of MangleExportsPlugin.
|
|
161
165
|
* @param {boolean} deterministic use deterministic names
|
|
162
166
|
*/
|
|
163
167
|
constructor(deterministic) {
|
|
@@ -166,7 +170,7 @@ class MangleExportsPlugin {
|
|
|
166
170
|
}
|
|
167
171
|
|
|
168
172
|
/**
|
|
169
|
-
*
|
|
173
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
170
174
|
* @param {Compiler} compiler the compiler instance
|
|
171
175
|
* @returns {void}
|
|
172
176
|
*/
|
|
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "MergeDuplicateChunksPlugin";
|
|
|
16
16
|
|
|
17
17
|
class MergeDuplicateChunksPlugin {
|
|
18
18
|
/**
|
|
19
|
+
* Creates an instance of MergeDuplicateChunksPlugin.
|
|
19
20
|
* @param {MergeDuplicateChunksPluginOptions=} options options object
|
|
20
21
|
*/
|
|
21
22
|
constructor(options = { stage: STAGE_BASIC }) {
|
|
@@ -24,6 +25,7 @@ class MergeDuplicateChunksPlugin {
|
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
/**
|
|
28
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
27
29
|
* @param {Compiler} compiler the compiler
|
|
28
30
|
* @returns {void}
|
|
29
31
|
*/
|
|
@@ -15,6 +15,7 @@ const PLUGIN_NAME = "MinChunkSizePlugin";
|
|
|
15
15
|
|
|
16
16
|
class MinChunkSizePlugin {
|
|
17
17
|
/**
|
|
18
|
+
* Creates an instance of MinChunkSizePlugin.
|
|
18
19
|
* @param {MinChunkSizePluginOptions} options options object
|
|
19
20
|
*/
|
|
20
21
|
constructor(options) {
|
|
@@ -23,7 +24,7 @@ class MinChunkSizePlugin {
|
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
/**
|
|
26
|
-
*
|
|
27
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
27
28
|
* @param {Compiler} compiler the compiler instance
|
|
28
29
|
* @returns {void}
|
|
29
30
|
*/
|
|
@@ -10,6 +10,7 @@ const WebpackError = require("../WebpackError");
|
|
|
10
10
|
|
|
11
11
|
class MinMaxSizeWarning extends WebpackError {
|
|
12
12
|
/**
|
|
13
|
+
* Creates an instance of MinMaxSizeWarning.
|
|
13
14
|
* @param {string[] | undefined} keys keys
|
|
14
15
|
* @param {number} minSize minimum size
|
|
15
16
|
* @param {number} maxSize maximum size
|