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
|
@@ -62,6 +62,7 @@ const {
|
|
|
62
62
|
/** @typedef {import("./util/identifier").AssociatedObjectForCache} AssociatedObjectForCache */
|
|
63
63
|
|
|
64
64
|
/**
|
|
65
|
+
* Defines the callback type used by this module.
|
|
65
66
|
* @template T
|
|
66
67
|
* @typedef {import("./Compiler").Callback<T>} Callback
|
|
67
68
|
*/
|
|
@@ -70,6 +71,7 @@ const {
|
|
|
70
71
|
/** @typedef {Partial<NormalModuleCreateData & { settings: ModuleSettings }>} CreateData */
|
|
71
72
|
|
|
72
73
|
/**
|
|
74
|
+
* Defines the resolve data type used by this module.
|
|
73
75
|
* @typedef {object} ResolveData
|
|
74
76
|
* @property {ModuleFactoryCreateData["contextInfo"]} contextInfo
|
|
75
77
|
* @property {ModuleFactoryCreateData["resolveOptions"]} resolveOptions
|
|
@@ -88,6 +90,7 @@ const {
|
|
|
88
90
|
*/
|
|
89
91
|
|
|
90
92
|
/**
|
|
93
|
+
* Defines the resource data type used by this module.
|
|
91
94
|
* @typedef {object} ResourceData
|
|
92
95
|
* @property {string} resource
|
|
93
96
|
* @property {string=} path
|
|
@@ -97,6 +100,7 @@ const {
|
|
|
97
100
|
*/
|
|
98
101
|
|
|
99
102
|
/**
|
|
103
|
+
* Defines the resource scheme data type used by this module.
|
|
100
104
|
* @typedef {object} ResourceSchemeData
|
|
101
105
|
* @property {string=} mimetype mime type of the resource
|
|
102
106
|
* @property {string=} parameters additional parameters for the resource
|
|
@@ -107,6 +111,7 @@ const {
|
|
|
107
111
|
/** @typedef {ResourceData & { data: ResourceSchemeData & Partial<ResolveRequest> }} ResourceDataWithData */
|
|
108
112
|
|
|
109
113
|
/**
|
|
114
|
+
* Defines the parsed loader request type used by this module.
|
|
110
115
|
* @typedef {object} ParsedLoaderRequest
|
|
111
116
|
* @property {string} loader loader
|
|
112
117
|
* @property {string | undefined} options options
|
|
@@ -143,6 +148,7 @@ const MATCH_RESOURCE_REGEX = /^([^!]+)!=!/;
|
|
|
143
148
|
const LEADING_DOT_EXTENSION_REGEX = /^[^.]/;
|
|
144
149
|
|
|
145
150
|
/**
|
|
151
|
+
* Returns ident.
|
|
146
152
|
* @param {LoaderItem} data data
|
|
147
153
|
* @returns {string} ident
|
|
148
154
|
*/
|
|
@@ -163,6 +169,7 @@ const loaderToIdent = (data) => {
|
|
|
163
169
|
};
|
|
164
170
|
|
|
165
171
|
/**
|
|
172
|
+
* Stringify loaders and resource.
|
|
166
173
|
* @param {LoaderItem[]} loaders loaders
|
|
167
174
|
* @param {string} resource resource
|
|
168
175
|
* @returns {string} stringified loaders and resource
|
|
@@ -176,6 +183,7 @@ const stringifyLoadersAndResource = (loaders, resource) => {
|
|
|
176
183
|
};
|
|
177
184
|
|
|
178
185
|
/**
|
|
186
|
+
* Checks whether it needs calls.
|
|
179
187
|
* @param {number} times times
|
|
180
188
|
* @param {(err?: null | Error) => void} callback callback
|
|
181
189
|
* @returns {(err?: null | Error) => void} callback
|
|
@@ -191,6 +199,7 @@ const needCalls = (times, callback) => (err) => {
|
|
|
191
199
|
};
|
|
192
200
|
|
|
193
201
|
/**
|
|
202
|
+
* Merges global options.
|
|
194
203
|
* @template T
|
|
195
204
|
* @template O
|
|
196
205
|
* @param {T} globalOptions global options
|
|
@@ -221,6 +230,7 @@ const mergeGlobalOptions = (globalOptions, type, localOptions) => {
|
|
|
221
230
|
|
|
222
231
|
// TODO webpack 6 remove
|
|
223
232
|
/**
|
|
233
|
+
* Deprecation changed hook message.
|
|
224
234
|
* @template {import("tapable").Hook<EXPECTED_ANY, EXPECTED_ANY>} T
|
|
225
235
|
* @param {string} name name
|
|
226
236
|
* @param {T} hook hook
|
|
@@ -311,6 +321,7 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
311
321
|
|
|
312
322
|
/* eslint-disable jsdoc/type-formatting */
|
|
313
323
|
/**
|
|
324
|
+
* Defines the shared type used by this module.
|
|
314
325
|
* @typedef {[
|
|
315
326
|
* [JAVASCRIPT_MODULE_TYPE_AUTO, JavascriptParser, JavascriptParserOptions, JavascriptGenerator, EmptyGeneratorOptions],
|
|
316
327
|
* [JAVASCRIPT_MODULE_TYPE_DYNAMIC, JavascriptParser, JavascriptParserOptions, JavascriptGenerator, EmptyGeneratorOptions],
|
|
@@ -333,12 +344,14 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
333
344
|
/* eslint-enable jsdoc/type-formatting */
|
|
334
345
|
|
|
335
346
|
/**
|
|
347
|
+
* Defines the extract tuple elements type used by this module.
|
|
336
348
|
* @template {unknown[]} T
|
|
337
349
|
* @template {number[]} I
|
|
338
350
|
* @typedef {{ [K in keyof I]: K extends keyof I ? I[K] extends keyof T ? T[I[K]] : never : never }} ExtractTupleElements
|
|
339
351
|
*/
|
|
340
352
|
|
|
341
353
|
/**
|
|
354
|
+
* Represents the normal module factory runtime component.
|
|
342
355
|
* @template {unknown[]} T
|
|
343
356
|
* @template {number[]} A
|
|
344
357
|
* @template [R=void]
|
|
@@ -347,6 +360,7 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
347
360
|
|
|
348
361
|
class NormalModuleFactory extends ModuleFactory {
|
|
349
362
|
/**
|
|
363
|
+
* Creates an instance of NormalModuleFactory.
|
|
350
364
|
* @param {object} param params
|
|
351
365
|
* @param {string=} param.context context
|
|
352
366
|
* @param {InputFileSystem} param.fs file system
|
|
@@ -868,6 +882,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
868
882
|
);
|
|
869
883
|
|
|
870
884
|
/**
|
|
885
|
+
* Processes the provided string.
|
|
871
886
|
* @param {string} context context
|
|
872
887
|
*/
|
|
873
888
|
const defaultResolve = (context) => {
|
|
@@ -972,6 +987,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
972
987
|
}
|
|
973
988
|
|
|
974
989
|
/**
|
|
990
|
+
* Processes the provided data.
|
|
975
991
|
* @param {ModuleFactoryCreateData} data data object
|
|
976
992
|
* @param {ModuleFactoryCallback} callback callback
|
|
977
993
|
* @returns {void}
|
|
@@ -1080,6 +1096,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
1080
1096
|
}
|
|
1081
1097
|
|
|
1082
1098
|
/**
|
|
1099
|
+
* Processes the provided context info.
|
|
1083
1100
|
* @param {ModuleFactoryCreateDataContextInfo} contextInfo context info
|
|
1084
1101
|
* @param {string} context context
|
|
1085
1102
|
* @param {string} unresolvedResource unresolved resource
|
|
@@ -1152,6 +1169,7 @@ ${hints.join("\n\n")}`;
|
|
|
1152
1169
|
}
|
|
1153
1170
|
|
|
1154
1171
|
/**
|
|
1172
|
+
* Resolve resource error hints.
|
|
1155
1173
|
* @param {Error} error error
|
|
1156
1174
|
* @param {ModuleFactoryCreateDataContextInfo} contextInfo context info
|
|
1157
1175
|
* @param {string} context context
|
|
@@ -1277,6 +1295,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1277
1295
|
}
|
|
1278
1296
|
|
|
1279
1297
|
/**
|
|
1298
|
+
* Resolves request array.
|
|
1280
1299
|
* @param {ModuleFactoryCreateDataContextInfo} contextInfo context info
|
|
1281
1300
|
* @param {string} context context
|
|
1282
1301
|
* @param {LoaderItem[]} array array
|
|
@@ -1298,6 +1317,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1298
1317
|
asyncLib.map(
|
|
1299
1318
|
array,
|
|
1300
1319
|
/**
|
|
1320
|
+
* Handles the callback logic for this hook.
|
|
1301
1321
|
* @param {LoaderItem} item item
|
|
1302
1322
|
* @param {Callback<LoaderItem>} callback callback
|
|
1303
1323
|
*/
|
|
@@ -1376,6 +1396,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1376
1396
|
}
|
|
1377
1397
|
|
|
1378
1398
|
/**
|
|
1399
|
+
* Returns parser.
|
|
1379
1400
|
* @param {string} type type
|
|
1380
1401
|
* @param {ParserOptions} parserOptions parser options
|
|
1381
1402
|
* @returns {Parser} parser
|
|
@@ -1399,6 +1420,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1399
1420
|
}
|
|
1400
1421
|
|
|
1401
1422
|
/**
|
|
1423
|
+
* Creates a parser from the provided type.
|
|
1402
1424
|
* @param {string} type type
|
|
1403
1425
|
* @param {ParserOptions} parserOptions parser options
|
|
1404
1426
|
* @returns {Parser} parser
|
|
@@ -1418,6 +1440,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1418
1440
|
}
|
|
1419
1441
|
|
|
1420
1442
|
/**
|
|
1443
|
+
* Returns generator.
|
|
1421
1444
|
* @param {string} type type of generator
|
|
1422
1445
|
* @param {GeneratorOptions} generatorOptions generator options
|
|
1423
1446
|
* @returns {Generator} generator
|
|
@@ -1441,6 +1464,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1441
1464
|
}
|
|
1442
1465
|
|
|
1443
1466
|
/**
|
|
1467
|
+
* Creates a generator.
|
|
1444
1468
|
* @param {string} type type of generator
|
|
1445
1469
|
* @param {GeneratorOptions} generatorOptions generator options
|
|
1446
1470
|
* @returns {Generator} generator
|
|
@@ -1462,6 +1486,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1462
1486
|
}
|
|
1463
1487
|
|
|
1464
1488
|
/**
|
|
1489
|
+
* Returns the resolver.
|
|
1465
1490
|
* @param {Parameters<ResolverFactory["get"]>[0]} type type of resolver
|
|
1466
1491
|
* @param {Parameters<ResolverFactory["get"]>[1]=} resolveOptions options
|
|
1467
1492
|
* @returns {ReturnType<ResolverFactory["get"]>} the resolver
|
package/lib/NullFactory.js
CHANGED
|
@@ -12,6 +12,7 @@ const ModuleFactory = require("./ModuleFactory");
|
|
|
12
12
|
|
|
13
13
|
class NullFactory extends ModuleFactory {
|
|
14
14
|
/**
|
|
15
|
+
* Processes the provided data.
|
|
15
16
|
* @param {ModuleFactoryCreateData} data data object
|
|
16
17
|
* @param {ModuleFactoryCallback} callback callback
|
|
17
18
|
* @returns {void}
|
package/lib/OptionsApply.js
CHANGED
package/lib/Parser.js
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
/** @typedef {Record<string, EXPECTED_ANY>} PreparsedAst */
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
+
* Defines the parser state base type used by this module.
|
|
15
16
|
* @typedef {object} ParserStateBase
|
|
16
17
|
* @property {string | Buffer} source
|
|
17
18
|
* @property {NormalModule} current
|
|
@@ -25,6 +26,7 @@
|
|
|
25
26
|
class Parser {
|
|
26
27
|
/* istanbul ignore next */
|
|
27
28
|
/**
|
|
29
|
+
* Parses the provided source and updates the parser state.
|
|
28
30
|
* @abstract
|
|
29
31
|
* @param {string | Buffer | PreparsedAst} source the source to parse
|
|
30
32
|
* @param {ParserState} state the parser state
|
package/lib/PlatformPlugin.js
CHANGED
|
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "PlatformPlugin";
|
|
|
16
16
|
*/
|
|
17
17
|
class PlatformPlugin {
|
|
18
18
|
/**
|
|
19
|
+
* Creates an instance of PlatformPlugin.
|
|
19
20
|
* @param {Partial<PlatformTargetProperties>} platform target properties
|
|
20
21
|
*/
|
|
21
22
|
constructor(platform) {
|
|
@@ -24,7 +25,7 @@ class PlatformPlugin {
|
|
|
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
|
*/
|
package/lib/PrefetchPlugin.js
CHANGED
|
@@ -13,6 +13,7 @@ const PLUGIN_NAME = "PrefetchPlugin";
|
|
|
13
13
|
|
|
14
14
|
class PrefetchPlugin {
|
|
15
15
|
/**
|
|
16
|
+
* Creates an instance of PrefetchPlugin.
|
|
16
17
|
* @param {string} context context or request if context is not set
|
|
17
18
|
* @param {string=} request request
|
|
18
19
|
*/
|
|
@@ -27,7 +28,7 @@ class PrefetchPlugin {
|
|
|
27
28
|
}
|
|
28
29
|
|
|
29
30
|
/**
|
|
30
|
-
*
|
|
31
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
31
32
|
* @param {Compiler} compiler the compiler instance
|
|
32
33
|
* @returns {void}
|
|
33
34
|
*/
|
package/lib/ProgressPlugin.js
CHANGED
|
@@ -12,6 +12,7 @@ const { contextify } = require("./util/identifier");
|
|
|
12
12
|
|
|
13
13
|
/** @typedef {import("tapable").Tap} Tap */
|
|
14
14
|
/**
|
|
15
|
+
* Defines the hook type used by this module.
|
|
15
16
|
* @template T, R, AdditionalOptions
|
|
16
17
|
* @typedef {import("tapable").Hook<T, R, AdditionalOptions>} Hook
|
|
17
18
|
*/
|
|
@@ -25,17 +26,20 @@ const { contextify } = require("./util/identifier");
|
|
|
25
26
|
/** @typedef {import("./logging/Logger").Logger} Logger */
|
|
26
27
|
|
|
27
28
|
/**
|
|
29
|
+
* Defines the async queue type used by this module.
|
|
28
30
|
* @template T, K, R
|
|
29
31
|
* @typedef {import("./util/AsyncQueue")<T, K, R>} AsyncQueue
|
|
30
32
|
*/
|
|
31
33
|
|
|
32
34
|
/**
|
|
35
|
+
* Defines the counts data type used by this module.
|
|
33
36
|
* @typedef {object} CountsData
|
|
34
37
|
* @property {number} modulesCount modules count
|
|
35
38
|
* @property {number} dependenciesCount dependencies count
|
|
36
39
|
*/
|
|
37
40
|
|
|
38
41
|
/**
|
|
42
|
+
* Returns median.
|
|
39
43
|
* @param {number} a a
|
|
40
44
|
* @param {number} b b
|
|
41
45
|
* @param {number} c c
|
|
@@ -46,6 +50,7 @@ const median3 = (a, b, c) => a + b + c - Math.max(a, b, c) - Math.min(a, b, c);
|
|
|
46
50
|
/** @typedef {(percentage: number, msg: string, ...args: string[]) => void} HandlerFn */
|
|
47
51
|
|
|
48
52
|
/**
|
|
53
|
+
* Creates a default handler.
|
|
49
54
|
* @param {boolean | null | undefined} profile need profile
|
|
50
55
|
* @param {Logger} logger logger
|
|
51
56
|
* @returns {HandlerFn} default handler
|
|
@@ -122,6 +127,7 @@ const createDefaultHandler = (profile, logger) => {
|
|
|
122
127
|
const SKIPPED_QUEUE_CONTEXTS = ["import-module", "load-module"];
|
|
123
128
|
|
|
124
129
|
/**
|
|
130
|
+
* Defines the report progress callback.
|
|
125
131
|
* @callback ReportProgress
|
|
126
132
|
* @param {number} p percentage
|
|
127
133
|
* @param {...string} args additional arguments
|
|
@@ -147,6 +153,7 @@ const DEFAULT_OPTIONS = {
|
|
|
147
153
|
|
|
148
154
|
class ProgressPlugin {
|
|
149
155
|
/**
|
|
156
|
+
* Returns a progress reporter, if any.
|
|
150
157
|
* @param {Compiler} compiler the current compiler
|
|
151
158
|
* @returns {ReportProgress | undefined} a progress reporter, if any
|
|
152
159
|
*/
|
|
@@ -155,6 +162,7 @@ class ProgressPlugin {
|
|
|
155
162
|
}
|
|
156
163
|
|
|
157
164
|
/**
|
|
165
|
+
* Creates an instance of ProgressPlugin.
|
|
158
166
|
* @param {ProgressPluginArgument} options options
|
|
159
167
|
*/
|
|
160
168
|
constructor(options = {}) {
|
|
@@ -167,21 +175,20 @@ class ProgressPlugin {
|
|
|
167
175
|
/** @type {ProgressPluginOptions} */
|
|
168
176
|
this.options = options;
|
|
169
177
|
|
|
170
|
-
|
|
171
|
-
this.
|
|
172
|
-
this.
|
|
173
|
-
this.
|
|
174
|
-
|
|
175
|
-
this.showEntries =
|
|
176
|
-
this.showModules =
|
|
177
|
-
this.showDependencies =
|
|
178
|
-
|
|
179
|
-
this.
|
|
180
|
-
options.activeModules || DEFAULT_OPTIONS.activeModules;
|
|
181
|
-
this.percentBy = options.percentBy || DEFAULT_OPTIONS.percentBy;
|
|
178
|
+
const merged = { ...DEFAULT_OPTIONS, ...options };
|
|
179
|
+
this.profile = merged.profile;
|
|
180
|
+
this.handler = merged.handler;
|
|
181
|
+
this.modulesCount = merged.modulesCount;
|
|
182
|
+
this.dependenciesCount = merged.dependenciesCount;
|
|
183
|
+
this.showEntries = merged.entries;
|
|
184
|
+
this.showModules = merged.modules;
|
|
185
|
+
this.showDependencies = merged.dependencies;
|
|
186
|
+
this.showActiveModules = merged.activeModules;
|
|
187
|
+
this.percentBy = merged.percentBy;
|
|
182
188
|
}
|
|
183
189
|
|
|
184
190
|
/**
|
|
191
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
185
192
|
* @param {Compiler | MultiCompiler} compiler webpack compiler
|
|
186
193
|
* @returns {void}
|
|
187
194
|
*/
|
|
@@ -200,6 +207,7 @@ class ProgressPlugin {
|
|
|
200
207
|
}
|
|
201
208
|
|
|
202
209
|
/**
|
|
210
|
+
* Apply on multi compiler.
|
|
203
211
|
* @param {MultiCompiler} compiler webpack multi-compiler
|
|
204
212
|
* @param {HandlerFn} handler function that executes for every progress step
|
|
205
213
|
* @returns {void}
|
|
@@ -219,6 +227,7 @@ class ProgressPlugin {
|
|
|
219
227
|
}
|
|
220
228
|
|
|
221
229
|
/**
|
|
230
|
+
* Processes the provided compiler.
|
|
222
231
|
* @param {Compiler} compiler webpack compiler
|
|
223
232
|
* @param {HandlerFn} handler function that executes for every progress step
|
|
224
233
|
* @returns {void}
|
|
@@ -333,6 +342,7 @@ class ProgressPlugin {
|
|
|
333
342
|
};
|
|
334
343
|
|
|
335
344
|
/**
|
|
345
|
+
* Processes the provided factorize queue.
|
|
336
346
|
* @template T
|
|
337
347
|
* @param {AsyncQueue<FactorizeModuleOptions, string, Module | ModuleFactoryResult>} factorizeQueue async queue
|
|
338
348
|
* @param {T} _item item
|
|
@@ -355,6 +365,7 @@ class ProgressPlugin {
|
|
|
355
365
|
};
|
|
356
366
|
|
|
357
367
|
/**
|
|
368
|
+
* Processes the provided add module queue.
|
|
358
369
|
* @template T
|
|
359
370
|
* @param {AsyncQueue<Module, string, Module>} addModuleQueue async queue
|
|
360
371
|
* @param {T} _item item
|
|
@@ -369,6 +380,7 @@ class ProgressPlugin {
|
|
|
369
380
|
|
|
370
381
|
// only used when showActiveModules is set
|
|
371
382
|
/**
|
|
383
|
+
* Processes the provided module.
|
|
372
384
|
* @param {Module} module the module
|
|
373
385
|
*/
|
|
374
386
|
const moduleBuild = (module) => {
|
|
@@ -381,6 +393,7 @@ class ProgressPlugin {
|
|
|
381
393
|
};
|
|
382
394
|
|
|
383
395
|
/**
|
|
396
|
+
* Processes the provided entry.
|
|
384
397
|
* @param {Dependency} entry entry dependency
|
|
385
398
|
* @param {EntryOptions} options options object
|
|
386
399
|
*/
|
|
@@ -390,6 +403,7 @@ class ProgressPlugin {
|
|
|
390
403
|
};
|
|
391
404
|
|
|
392
405
|
/**
|
|
406
|
+
* Processes the provided module.
|
|
393
407
|
* @param {Module} module the module
|
|
394
408
|
*/
|
|
395
409
|
const moduleDone = (module) => {
|
|
@@ -412,6 +426,7 @@ class ProgressPlugin {
|
|
|
412
426
|
};
|
|
413
427
|
|
|
414
428
|
/**
|
|
429
|
+
* Processes the provided entry.
|
|
415
430
|
* @param {Dependency} entry entry dependency
|
|
416
431
|
* @param {EntryOptions} options options object
|
|
417
432
|
*/
|
|
@@ -606,6 +621,7 @@ class ProgressPlugin {
|
|
|
606
621
|
}
|
|
607
622
|
});
|
|
608
623
|
/**
|
|
624
|
+
* Processes the provided hook.
|
|
609
625
|
* @template {Hook<EXPECTED_ANY, EXPECTED_ANY, EXPECTED_ANY>} T
|
|
610
626
|
* @param {T} hook hook
|
|
611
627
|
* @param {number} progress progress from 0 to 1
|
|
@@ -629,6 +645,7 @@ class ProgressPlugin {
|
|
|
629
645
|
handler(progress, category, name);
|
|
630
646
|
},
|
|
631
647
|
/**
|
|
648
|
+
* Processes the provided tap.
|
|
632
649
|
* @param {Tap} tap tap
|
|
633
650
|
*/
|
|
634
651
|
tap(tap) {
|
package/lib/ProvidePlugin.js
CHANGED
|
@@ -24,6 +24,7 @@ const PLUGIN_NAME = "ProvidePlugin";
|
|
|
24
24
|
|
|
25
25
|
class ProvidePlugin {
|
|
26
26
|
/**
|
|
27
|
+
* Creates an instance of ProvidePlugin.
|
|
27
28
|
* @param {Record<string, string | string[]>} definitions the provided identifiers
|
|
28
29
|
*/
|
|
29
30
|
constructor(definitions) {
|
|
@@ -31,7 +32,7 @@ class ProvidePlugin {
|
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
/**
|
|
34
|
-
*
|
|
35
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
35
36
|
* @param {Compiler} compiler the compiler instance
|
|
36
37
|
* @returns {void}
|
|
37
38
|
*/
|
|
@@ -53,6 +54,7 @@ class ProvidePlugin {
|
|
|
53
54
|
new ProvidedDependency.Template()
|
|
54
55
|
);
|
|
55
56
|
/**
|
|
57
|
+
* Handles the hook callback for this code path.
|
|
56
58
|
* @param {JavascriptParser} parser the parser
|
|
57
59
|
* @param {JavascriptParserOptions} parserOptions options
|
|
58
60
|
* @returns {void}
|
package/lib/RawModule.js
CHANGED
|
@@ -36,6 +36,7 @@ const makeSerializable = require("./util/makeSerializable");
|
|
|
36
36
|
|
|
37
37
|
class RawModule extends Module {
|
|
38
38
|
/**
|
|
39
|
+
* Creates an instance of RawModule.
|
|
39
40
|
* @param {string} source source code
|
|
40
41
|
* @param {string} identifier unique identifier
|
|
41
42
|
* @param {string=} readableIdentifier readable identifier
|
|
@@ -50,6 +51,7 @@ class RawModule extends Module {
|
|
|
50
51
|
}
|
|
51
52
|
|
|
52
53
|
/**
|
|
54
|
+
* Returns the source types this module can generate.
|
|
53
55
|
* @returns {SourceTypes} types available (do not mutate)
|
|
54
56
|
*/
|
|
55
57
|
getSourceTypes() {
|
|
@@ -57,6 +59,7 @@ class RawModule extends Module {
|
|
|
57
59
|
}
|
|
58
60
|
|
|
59
61
|
/**
|
|
62
|
+
* Returns the unique identifier used to reference this module.
|
|
60
63
|
* @returns {string} a unique identifier of the module
|
|
61
64
|
*/
|
|
62
65
|
identifier() {
|
|
@@ -64,6 +67,7 @@ class RawModule extends Module {
|
|
|
64
67
|
}
|
|
65
68
|
|
|
66
69
|
/**
|
|
70
|
+
* Returns the estimated size for the requested source type.
|
|
67
71
|
* @param {string=} type the source type for which the size should be estimated
|
|
68
72
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
69
73
|
*/
|
|
@@ -72,6 +76,7 @@ class RawModule extends Module {
|
|
|
72
76
|
}
|
|
73
77
|
|
|
74
78
|
/**
|
|
79
|
+
* Returns a human-readable identifier for this module.
|
|
75
80
|
* @param {RequestShortener} requestShortener the request shortener
|
|
76
81
|
* @returns {string} a user readable identifier of the module
|
|
77
82
|
*/
|
|
@@ -82,6 +87,7 @@ class RawModule extends Module {
|
|
|
82
87
|
}
|
|
83
88
|
|
|
84
89
|
/**
|
|
90
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
85
91
|
* @param {NeedBuildContext} context context info
|
|
86
92
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
87
93
|
* @returns {void}
|
|
@@ -91,6 +97,7 @@ class RawModule extends Module {
|
|
|
91
97
|
}
|
|
92
98
|
|
|
93
99
|
/**
|
|
100
|
+
* Builds the module using the provided compilation context.
|
|
94
101
|
* @param {WebpackOptions} options webpack options
|
|
95
102
|
* @param {Compilation} compilation the compilation
|
|
96
103
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -107,6 +114,7 @@ class RawModule extends Module {
|
|
|
107
114
|
}
|
|
108
115
|
|
|
109
116
|
/**
|
|
117
|
+
* Gets side effects connection state.
|
|
110
118
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
111
119
|
* @returns {ConnectionState} how this module should be connected to referencing modules when consumed for side-effects only
|
|
112
120
|
*/
|
|
@@ -119,6 +127,7 @@ class RawModule extends Module {
|
|
|
119
127
|
}
|
|
120
128
|
|
|
121
129
|
/**
|
|
130
|
+
* Generates code and runtime requirements for this module.
|
|
122
131
|
* @param {CodeGenerationContext} context context for code generation
|
|
123
132
|
* @returns {CodeGenerationResult} result
|
|
124
133
|
*/
|
|
@@ -137,6 +146,7 @@ class RawModule extends Module {
|
|
|
137
146
|
}
|
|
138
147
|
|
|
139
148
|
/**
|
|
149
|
+
* Updates the hash with the data contributed by this instance.
|
|
140
150
|
* @param {Hash} hash the hash used to track dependencies
|
|
141
151
|
* @param {UpdateHashContext} context context
|
|
142
152
|
* @returns {void}
|
|
@@ -147,6 +157,7 @@ class RawModule extends Module {
|
|
|
147
157
|
}
|
|
148
158
|
|
|
149
159
|
/**
|
|
160
|
+
* Serializes this instance into the provided serializer context.
|
|
150
161
|
* @param {ObjectSerializerContext} context context
|
|
151
162
|
*/
|
|
152
163
|
serialize(context) {
|
|
@@ -161,6 +172,7 @@ class RawModule extends Module {
|
|
|
161
172
|
}
|
|
162
173
|
|
|
163
174
|
/**
|
|
175
|
+
* Restores this instance from the provided deserializer context.
|
|
164
176
|
* @param {ObjectDeserializerContext} context context
|
|
165
177
|
*/
|
|
166
178
|
deserialize(context) {
|
package/lib/RecordIdsPlugin.js
CHANGED
|
@@ -13,6 +13,7 @@ const identifierUtils = require("./util/identifier");
|
|
|
13
13
|
/** @typedef {import("./Module")} Module */
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
+
* Defines the records chunks type used by this module.
|
|
16
17
|
* @typedef {object} RecordsChunks
|
|
17
18
|
* @property {Record<string, number>=} byName
|
|
18
19
|
* @property {Record<string, number>=} bySource
|
|
@@ -20,18 +21,21 @@ const identifierUtils = require("./util/identifier");
|
|
|
20
21
|
*/
|
|
21
22
|
|
|
22
23
|
/**
|
|
24
|
+
* Defines the records modules type used by this module.
|
|
23
25
|
* @typedef {object} RecordsModules
|
|
24
26
|
* @property {Record<string, number>=} byIdentifier
|
|
25
27
|
* @property {number[]=} usedIds
|
|
26
28
|
*/
|
|
27
29
|
|
|
28
30
|
/**
|
|
31
|
+
* Defines the records type used by this module.
|
|
29
32
|
* @typedef {object} Records
|
|
30
33
|
* @property {RecordsChunks=} chunks
|
|
31
34
|
* @property {RecordsModules=} modules
|
|
32
35
|
*/
|
|
33
36
|
|
|
34
37
|
/**
|
|
38
|
+
* Defines the record ids plugin options type used by this module.
|
|
35
39
|
* @typedef {object} RecordIdsPluginOptions
|
|
36
40
|
* @property {boolean=} portableIds true, when ids need to be portable
|
|
37
41
|
*/
|
|
@@ -42,6 +46,7 @@ const PLUGIN_NAME = "RecordIdsPlugin";
|
|
|
42
46
|
|
|
43
47
|
class RecordIdsPlugin {
|
|
44
48
|
/**
|
|
49
|
+
* Creates an instance of RecordIdsPlugin.
|
|
45
50
|
* @param {RecordIdsPluginOptions=} options object
|
|
46
51
|
*/
|
|
47
52
|
constructor(options) {
|
|
@@ -49,6 +54,7 @@ class RecordIdsPlugin {
|
|
|
49
54
|
}
|
|
50
55
|
|
|
51
56
|
/**
|
|
57
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
52
58
|
* @param {Compiler} compiler the Compiler
|
|
53
59
|
* @returns {void}
|
|
54
60
|
*/
|
|
@@ -62,6 +68,7 @@ class RecordIdsPlugin {
|
|
|
62
68
|
);
|
|
63
69
|
|
|
64
70
|
/**
|
|
71
|
+
* Gets module identifier.
|
|
65
72
|
* @param {Module} module the module
|
|
66
73
|
* @returns {string} the (portable) identifier
|
|
67
74
|
*/
|
|
@@ -113,6 +120,7 @@ class RecordIdsPlugin {
|
|
|
113
120
|
/** @typedef {string[]} ChunkSources */
|
|
114
121
|
|
|
115
122
|
/**
|
|
123
|
+
* Gets chunk sources.
|
|
116
124
|
* @param {Chunk} chunk the chunk
|
|
117
125
|
* @returns {ChunkSources} sources of the chunk
|
|
118
126
|
*/
|
package/lib/RequestShortener.js
CHANGED
|
@@ -9,8 +9,14 @@ const { contextify } = require("./util/identifier");
|
|
|
9
9
|
|
|
10
10
|
/** @typedef {import("./util/identifier").AssociatedObjectForCache} AssociatedObjectForCache */
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Shortens absolute or verbose request strings so diagnostics and stats output
|
|
14
|
+
* can be rendered relative to a chosen base directory.
|
|
15
|
+
*/
|
|
12
16
|
class RequestShortener {
|
|
13
17
|
/**
|
|
18
|
+
* Binds a context-aware shortening function to the provided directory and
|
|
19
|
+
* optional cache owner.
|
|
14
20
|
* @param {string} dir the directory
|
|
15
21
|
* @param {AssociatedObjectForCache=} associatedObjectForCache an object to which the cache will be attached
|
|
16
22
|
*/
|
|
@@ -22,6 +28,8 @@ class RequestShortener {
|
|
|
22
28
|
}
|
|
23
29
|
|
|
24
30
|
/**
|
|
31
|
+
* Returns a request string rewritten relative to the configured directory
|
|
32
|
+
* when one is provided.
|
|
25
33
|
* @param {string | undefined | null} request the request to shorten
|
|
26
34
|
* @returns {string | undefined | null} the shortened request
|
|
27
35
|
*/
|
|
@@ -23,7 +23,7 @@ const PLUGIN_NAME = "RequireJsStuffPlugin";
|
|
|
23
23
|
|
|
24
24
|
module.exports = class RequireJsStuffPlugin {
|
|
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
|
*/
|
|
@@ -36,6 +36,7 @@ module.exports = class RequireJsStuffPlugin {
|
|
|
36
36
|
new ConstDependency.Template()
|
|
37
37
|
);
|
|
38
38
|
/**
|
|
39
|
+
* Handles the hook callback for this code path.
|
|
39
40
|
* @param {JavascriptParser} parser the parser
|
|
40
41
|
* @param {JavascriptParserOptions} parserOptions options
|
|
41
42
|
* @returns {void}
|