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
|
@@ -37,6 +37,7 @@ const ContainerExposedDependency = require("./ContainerExposedDependency");
|
|
|
37
37
|
/** @typedef {import("../util/fs").InputFileSystem} InputFileSystem */
|
|
38
38
|
|
|
39
39
|
/**
|
|
40
|
+
* Defines the expose options type used by this module.
|
|
40
41
|
* @typedef {object} ExposeOptions
|
|
41
42
|
* @property {string[]} import requests to exposed modules (last one is exported)
|
|
42
43
|
* @property {string} name custom chunk name for the exposed module
|
|
@@ -46,6 +47,7 @@ const ContainerExposedDependency = require("./ContainerExposedDependency");
|
|
|
46
47
|
|
|
47
48
|
class ContainerEntryModule extends Module {
|
|
48
49
|
/**
|
|
50
|
+
* Creates an instance of ContainerEntryModule.
|
|
49
51
|
* @param {string} name container entry name
|
|
50
52
|
* @param {ExposesList} exposes list of exposed modules
|
|
51
53
|
* @param {string} shareScope name of the share scope
|
|
@@ -61,6 +63,7 @@ class ContainerEntryModule extends Module {
|
|
|
61
63
|
}
|
|
62
64
|
|
|
63
65
|
/**
|
|
66
|
+
* Returns the source types this module can generate.
|
|
64
67
|
* @returns {SourceTypes} types available (do not mutate)
|
|
65
68
|
*/
|
|
66
69
|
getSourceTypes() {
|
|
@@ -68,6 +71,7 @@ class ContainerEntryModule extends Module {
|
|
|
68
71
|
}
|
|
69
72
|
|
|
70
73
|
/**
|
|
74
|
+
* Returns the unique identifier used to reference this module.
|
|
71
75
|
* @returns {string} a unique identifier of the module
|
|
72
76
|
*/
|
|
73
77
|
identifier() {
|
|
@@ -77,6 +81,7 @@ class ContainerEntryModule extends Module {
|
|
|
77
81
|
}
|
|
78
82
|
|
|
79
83
|
/**
|
|
84
|
+
* Returns a human-readable identifier for this module.
|
|
80
85
|
* @param {RequestShortener} requestShortener the request shortener
|
|
81
86
|
* @returns {string} a user readable identifier of the module
|
|
82
87
|
*/
|
|
@@ -85,6 +90,7 @@ class ContainerEntryModule extends Module {
|
|
|
85
90
|
}
|
|
86
91
|
|
|
87
92
|
/**
|
|
93
|
+
* Gets the library identifier.
|
|
88
94
|
* @param {LibIdentOptions} options options
|
|
89
95
|
* @returns {LibIdent | null} an identifier for library inclusion
|
|
90
96
|
*/
|
|
@@ -95,6 +101,7 @@ class ContainerEntryModule extends Module {
|
|
|
95
101
|
}
|
|
96
102
|
|
|
97
103
|
/**
|
|
104
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
98
105
|
* @param {NeedBuildContext} context context info
|
|
99
106
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
100
107
|
* @returns {void}
|
|
@@ -104,6 +111,7 @@ class ContainerEntryModule extends Module {
|
|
|
104
111
|
}
|
|
105
112
|
|
|
106
113
|
/**
|
|
114
|
+
* Builds the module using the provided compilation context.
|
|
107
115
|
* @param {WebpackOptions} options webpack options
|
|
108
116
|
* @param {Compilation} compilation the compilation
|
|
109
117
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -147,6 +155,7 @@ class ContainerEntryModule extends Module {
|
|
|
147
155
|
}
|
|
148
156
|
|
|
149
157
|
/**
|
|
158
|
+
* Generates code and runtime requirements for this module.
|
|
150
159
|
* @param {CodeGenerationContext} context context for code generation
|
|
151
160
|
* @returns {CodeGenerationResult} result
|
|
152
161
|
*/
|
|
@@ -265,6 +274,7 @@ class ContainerEntryModule extends Module {
|
|
|
265
274
|
}
|
|
266
275
|
|
|
267
276
|
/**
|
|
277
|
+
* Returns the estimated size for the requested source type.
|
|
268
278
|
* @param {string=} type the source type for which the size should be estimated
|
|
269
279
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
270
280
|
*/
|
|
@@ -273,6 +283,7 @@ class ContainerEntryModule extends Module {
|
|
|
273
283
|
}
|
|
274
284
|
|
|
275
285
|
/**
|
|
286
|
+
* Serializes this instance into the provided serializer context.
|
|
276
287
|
* @param {ObjectSerializerContext} context context
|
|
277
288
|
*/
|
|
278
289
|
serialize(context) {
|
|
@@ -284,6 +295,7 @@ class ContainerEntryModule extends Module {
|
|
|
284
295
|
}
|
|
285
296
|
|
|
286
297
|
/**
|
|
298
|
+
* Restores this instance from the provided deserializer context.
|
|
287
299
|
* @param {ObjectDeserializerContext} context context
|
|
288
300
|
* @returns {ContainerEntryModule} deserialized container entry module
|
|
289
301
|
*/
|
|
@@ -14,6 +14,7 @@ const ContainerEntryModule = require("./ContainerEntryModule");
|
|
|
14
14
|
|
|
15
15
|
module.exports = class ContainerEntryModuleFactory extends ModuleFactory {
|
|
16
16
|
/**
|
|
17
|
+
* Processes the provided data.
|
|
17
18
|
* @param {ModuleFactoryCreateData} data data object
|
|
18
19
|
* @param {ModuleFactoryCallback} callback callback
|
|
19
20
|
* @returns {void}
|
|
@@ -13,6 +13,7 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
13
13
|
|
|
14
14
|
class ContainerExposedDependency extends ModuleDependency {
|
|
15
15
|
/**
|
|
16
|
+
* Creates an instance of ContainerExposedDependency.
|
|
16
17
|
* @param {string} exposedName public name
|
|
17
18
|
* @param {string} request request to module
|
|
18
19
|
*/
|
|
@@ -31,6 +32,7 @@ class ContainerExposedDependency extends ModuleDependency {
|
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
/**
|
|
35
|
+
* Returns an identifier to merge equal requests.
|
|
34
36
|
* @returns {string | null} an identifier to merge equal requests
|
|
35
37
|
*/
|
|
36
38
|
getResourceIdentifier() {
|
|
@@ -38,6 +40,7 @@ class ContainerExposedDependency extends ModuleDependency {
|
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
/**
|
|
43
|
+
* Serializes this instance into the provided serializer context.
|
|
41
44
|
* @param {ObjectSerializerContext} context context
|
|
42
45
|
*/
|
|
43
46
|
serialize(context) {
|
|
@@ -46,6 +49,7 @@ class ContainerExposedDependency extends ModuleDependency {
|
|
|
46
49
|
}
|
|
47
50
|
|
|
48
51
|
/**
|
|
52
|
+
* Restores this instance from the provided deserializer context.
|
|
49
53
|
* @param {ObjectDeserializerContext} context context
|
|
50
54
|
*/
|
|
51
55
|
deserialize(context) {
|
|
@@ -23,6 +23,7 @@ const PLUGIN_NAME = "ContainerPlugin";
|
|
|
23
23
|
|
|
24
24
|
class ContainerPlugin {
|
|
25
25
|
/**
|
|
26
|
+
* Creates an instance of ContainerPlugin.
|
|
26
27
|
* @param {ContainerPluginOptions} options options
|
|
27
28
|
*/
|
|
28
29
|
constructor(options) {
|
|
@@ -31,7 +32,7 @@ class ContainerPlugin {
|
|
|
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
|
*/
|
|
@@ -24,6 +24,7 @@ const PLUGIN_NAME = "ContainerReferencePlugin";
|
|
|
24
24
|
|
|
25
25
|
class ContainerReferencePlugin {
|
|
26
26
|
/**
|
|
27
|
+
* Creates an instance of ContainerReferencePlugin.
|
|
27
28
|
* @param {ContainerReferencePluginOptions} options options
|
|
28
29
|
*/
|
|
29
30
|
constructor(options) {
|
|
@@ -32,7 +33,7 @@ class ContainerReferencePlugin {
|
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
/**
|
|
35
|
-
*
|
|
36
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
36
37
|
* @param {Compiler} compiler the compiler instance
|
|
37
38
|
* @returns {void}
|
|
38
39
|
*/
|
|
@@ -14,6 +14,7 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
14
14
|
|
|
15
15
|
class FallbackDependency extends Dependency {
|
|
16
16
|
/**
|
|
17
|
+
* Creates an instance of FallbackDependency.
|
|
17
18
|
* @param {ExternalRequests} requests requests
|
|
18
19
|
*/
|
|
19
20
|
constructor(requests) {
|
|
@@ -23,6 +24,7 @@ class FallbackDependency extends Dependency {
|
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
/**
|
|
27
|
+
* Returns an identifier to merge equal requests.
|
|
26
28
|
* @returns {string | null} an identifier to merge equal requests
|
|
27
29
|
*/
|
|
28
30
|
getResourceIdentifier() {
|
|
@@ -38,6 +40,7 @@ class FallbackDependency extends Dependency {
|
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
/**
|
|
43
|
+
* Serializes this instance into the provided serializer context.
|
|
41
44
|
* @param {ObjectSerializerContext} context context
|
|
42
45
|
*/
|
|
43
46
|
serialize(context) {
|
|
@@ -47,6 +50,7 @@ class FallbackDependency extends Dependency {
|
|
|
47
50
|
}
|
|
48
51
|
|
|
49
52
|
/**
|
|
53
|
+
* Restores this instance from the provided deserializer context.
|
|
50
54
|
* @param {ObjectDeserializerContext} context context
|
|
51
55
|
* @returns {FallbackDependency} deserialize fallback dependency
|
|
52
56
|
*/
|
|
@@ -41,6 +41,7 @@ const RUNTIME_REQUIREMENTS = new Set([RuntimeGlobals.module]);
|
|
|
41
41
|
|
|
42
42
|
class FallbackModule extends Module {
|
|
43
43
|
/**
|
|
44
|
+
* Creates an instance of FallbackModule.
|
|
44
45
|
* @param {ExternalRequests} requests list of requests to choose one
|
|
45
46
|
*/
|
|
46
47
|
constructor(requests) {
|
|
@@ -52,6 +53,7 @@ class FallbackModule extends Module {
|
|
|
52
53
|
}
|
|
53
54
|
|
|
54
55
|
/**
|
|
56
|
+
* Returns the unique identifier used to reference this module.
|
|
55
57
|
* @returns {string} a unique identifier of the module
|
|
56
58
|
*/
|
|
57
59
|
identifier() {
|
|
@@ -59,6 +61,7 @@ class FallbackModule extends Module {
|
|
|
59
61
|
}
|
|
60
62
|
|
|
61
63
|
/**
|
|
64
|
+
* Returns a human-readable identifier for this module.
|
|
62
65
|
* @param {RequestShortener} requestShortener the request shortener
|
|
63
66
|
* @returns {string} a user readable identifier of the module
|
|
64
67
|
*/
|
|
@@ -67,6 +70,7 @@ class FallbackModule extends Module {
|
|
|
67
70
|
}
|
|
68
71
|
|
|
69
72
|
/**
|
|
73
|
+
* Gets the library identifier.
|
|
70
74
|
* @param {LibIdentOptions} options options
|
|
71
75
|
* @returns {LibIdent | null} an identifier for library inclusion
|
|
72
76
|
*/
|
|
@@ -77,6 +81,7 @@ class FallbackModule extends Module {
|
|
|
77
81
|
}
|
|
78
82
|
|
|
79
83
|
/**
|
|
84
|
+
* Returns true if the module can be placed in the chunk.
|
|
80
85
|
* @param {Chunk} chunk the chunk which condition should be checked
|
|
81
86
|
* @param {Compilation} compilation the compilation
|
|
82
87
|
* @returns {boolean} true if the module can be placed in the chunk
|
|
@@ -86,6 +91,7 @@ class FallbackModule extends Module {
|
|
|
86
91
|
}
|
|
87
92
|
|
|
88
93
|
/**
|
|
94
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
89
95
|
* @param {NeedBuildContext} context context info
|
|
90
96
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
91
97
|
* @returns {void}
|
|
@@ -95,6 +101,7 @@ class FallbackModule extends Module {
|
|
|
95
101
|
}
|
|
96
102
|
|
|
97
103
|
/**
|
|
104
|
+
* Builds the module using the provided compilation context.
|
|
98
105
|
* @param {WebpackOptions} options webpack options
|
|
99
106
|
* @param {Compilation} compilation the compilation
|
|
100
107
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -117,6 +124,7 @@ class FallbackModule extends Module {
|
|
|
117
124
|
}
|
|
118
125
|
|
|
119
126
|
/**
|
|
127
|
+
* Returns the estimated size for the requested source type.
|
|
120
128
|
* @param {string=} type the source type for which the size should be estimated
|
|
121
129
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
122
130
|
*/
|
|
@@ -125,6 +133,7 @@ class FallbackModule extends Module {
|
|
|
125
133
|
}
|
|
126
134
|
|
|
127
135
|
/**
|
|
136
|
+
* Returns the source types this module can generate.
|
|
128
137
|
* @returns {SourceTypes} types available (do not mutate)
|
|
129
138
|
*/
|
|
130
139
|
getSourceTypes() {
|
|
@@ -132,6 +141,7 @@ class FallbackModule extends Module {
|
|
|
132
141
|
}
|
|
133
142
|
|
|
134
143
|
/**
|
|
144
|
+
* Generates code and runtime requirements for this module.
|
|
135
145
|
* @param {CodeGenerationContext} context context for code generation
|
|
136
146
|
* @returns {CodeGenerationResult} result
|
|
137
147
|
*/
|
|
@@ -168,6 +178,7 @@ class FallbackModule extends Module {
|
|
|
168
178
|
}
|
|
169
179
|
|
|
170
180
|
/**
|
|
181
|
+
* Serializes this instance into the provided serializer context.
|
|
171
182
|
* @param {ObjectSerializerContext} context context
|
|
172
183
|
*/
|
|
173
184
|
serialize(context) {
|
|
@@ -177,6 +188,7 @@ class FallbackModule extends Module {
|
|
|
177
188
|
}
|
|
178
189
|
|
|
179
190
|
/**
|
|
191
|
+
* Restores this instance from the provided deserializer context.
|
|
180
192
|
* @param {ObjectDeserializerContext} context context
|
|
181
193
|
* @returns {FallbackModule} deserialized fallback module
|
|
182
194
|
*/
|
|
@@ -14,6 +14,7 @@ const FallbackModule = require("./FallbackModule");
|
|
|
14
14
|
|
|
15
15
|
module.exports = class FallbackModuleFactory extends ModuleFactory {
|
|
16
16
|
/**
|
|
17
|
+
* Processes the provided data.
|
|
17
18
|
* @param {ModuleFactoryCreateData} data data object
|
|
18
19
|
* @param {ModuleFactoryCallback} callback callback
|
|
19
20
|
* @returns {void}
|
|
@@ -19,6 +19,7 @@ const HoistContainerReferences = require("./HoistContainerReferencesPlugin");
|
|
|
19
19
|
/** @typedef {import("../Dependency")} Dependency */
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
+
* Defines the compilation hooks type used by this module.
|
|
22
23
|
* @typedef {object} CompilationHooks
|
|
23
24
|
* @property {SyncHook<Dependency>} addContainerEntryDependency
|
|
24
25
|
* @property {SyncHook<Dependency>} addFederationRuntimeDependency
|
|
@@ -30,6 +31,7 @@ const PLUGIN_NAME = "ModuleFederationPlugin";
|
|
|
30
31
|
|
|
31
32
|
class ModuleFederationPlugin {
|
|
32
33
|
/**
|
|
34
|
+
* Creates an instance of ModuleFederationPlugin.
|
|
33
35
|
* @param {ModuleFederationPluginOptions} options options
|
|
34
36
|
*/
|
|
35
37
|
constructor(options) {
|
|
@@ -60,7 +62,7 @@ class ModuleFederationPlugin {
|
|
|
60
62
|
}
|
|
61
63
|
|
|
62
64
|
/**
|
|
63
|
-
*
|
|
65
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
64
66
|
* @param {Compiler} compiler the compiler instance
|
|
65
67
|
* @returns {void}
|
|
66
68
|
*/
|
|
@@ -45,6 +45,7 @@ const RUNTIME_REQUIREMENTS = new Set([RuntimeGlobals.module]);
|
|
|
45
45
|
|
|
46
46
|
class RemoteModule extends Module {
|
|
47
47
|
/**
|
|
48
|
+
* Creates an instance of RemoteModule.
|
|
48
49
|
* @param {string} request request string
|
|
49
50
|
* @param {ExternalRequests} externalRequests list of external requests to containers
|
|
50
51
|
* @param {string} internalRequest name of exposed module in container
|
|
@@ -67,6 +68,7 @@ class RemoteModule extends Module {
|
|
|
67
68
|
}
|
|
68
69
|
|
|
69
70
|
/**
|
|
71
|
+
* Returns the unique identifier used to reference this module.
|
|
70
72
|
* @returns {string} a unique identifier of the module
|
|
71
73
|
*/
|
|
72
74
|
identifier() {
|
|
@@ -74,6 +76,7 @@ class RemoteModule extends Module {
|
|
|
74
76
|
}
|
|
75
77
|
|
|
76
78
|
/**
|
|
79
|
+
* Returns a human-readable identifier for this module.
|
|
77
80
|
* @param {RequestShortener} requestShortener the request shortener
|
|
78
81
|
* @returns {string} a user readable identifier of the module
|
|
79
82
|
*/
|
|
@@ -82,6 +85,7 @@ class RemoteModule extends Module {
|
|
|
82
85
|
}
|
|
83
86
|
|
|
84
87
|
/**
|
|
88
|
+
* Gets the library identifier.
|
|
85
89
|
* @param {LibIdentOptions} options options
|
|
86
90
|
* @returns {LibIdent | null} an identifier for library inclusion
|
|
87
91
|
*/
|
|
@@ -92,6 +96,7 @@ class RemoteModule extends Module {
|
|
|
92
96
|
}
|
|
93
97
|
|
|
94
98
|
/**
|
|
99
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
95
100
|
* @param {NeedBuildContext} context context info
|
|
96
101
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
97
102
|
* @returns {void}
|
|
@@ -101,6 +106,7 @@ class RemoteModule extends Module {
|
|
|
101
106
|
}
|
|
102
107
|
|
|
103
108
|
/**
|
|
109
|
+
* Builds the module using the provided compilation context.
|
|
104
110
|
* @param {WebpackOptions} options webpack options
|
|
105
111
|
* @param {Compilation} compilation the compilation
|
|
106
112
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -127,6 +133,7 @@ class RemoteModule extends Module {
|
|
|
127
133
|
}
|
|
128
134
|
|
|
129
135
|
/**
|
|
136
|
+
* Returns the estimated size for the requested source type.
|
|
130
137
|
* @param {string=} type the source type for which the size should be estimated
|
|
131
138
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
132
139
|
*/
|
|
@@ -135,6 +142,7 @@ class RemoteModule extends Module {
|
|
|
135
142
|
}
|
|
136
143
|
|
|
137
144
|
/**
|
|
145
|
+
* Returns the source types this module can generate.
|
|
138
146
|
* @returns {SourceTypes} types available (do not mutate)
|
|
139
147
|
*/
|
|
140
148
|
getSourceTypes() {
|
|
@@ -155,6 +163,7 @@ class RemoteModule extends Module {
|
|
|
155
163
|
}
|
|
156
164
|
|
|
157
165
|
/**
|
|
166
|
+
* Returns export type.
|
|
158
167
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
159
168
|
* @param {boolean | undefined} strict the importing module is strict
|
|
160
169
|
* @returns {ExportsType} export type
|
|
@@ -168,6 +177,7 @@ class RemoteModule extends Module {
|
|
|
168
177
|
}
|
|
169
178
|
|
|
170
179
|
/**
|
|
180
|
+
* Returns the path used when matching this module against rule conditions.
|
|
171
181
|
* @returns {NameForCondition | null} absolute path which should be used for condition matching (usually the resource path)
|
|
172
182
|
*/
|
|
173
183
|
nameForCondition() {
|
|
@@ -175,6 +185,7 @@ class RemoteModule extends Module {
|
|
|
175
185
|
}
|
|
176
186
|
|
|
177
187
|
/**
|
|
188
|
+
* Generates code and runtime requirements for this module.
|
|
178
189
|
* @param {CodeGenerationContext} context context for code generation
|
|
179
190
|
* @returns {CodeGenerationResult} result
|
|
180
191
|
*/
|
|
@@ -197,6 +208,7 @@ class RemoteModule extends Module {
|
|
|
197
208
|
}
|
|
198
209
|
|
|
199
210
|
/**
|
|
211
|
+
* Serializes this instance into the provided serializer context.
|
|
200
212
|
* @param {ObjectSerializerContext} context context
|
|
201
213
|
*/
|
|
202
214
|
serialize(context) {
|
|
@@ -209,6 +221,7 @@ class RemoteModule extends Module {
|
|
|
209
221
|
}
|
|
210
222
|
|
|
211
223
|
/**
|
|
224
|
+
* Restores this instance from the provided deserializer context.
|
|
212
225
|
* @param {ObjectDeserializerContext} context context
|
|
213
226
|
* @returns {RemoteModule} deserialized module
|
|
214
227
|
*/
|
package/lib/container/options.js
CHANGED
|
@@ -6,16 +6,19 @@
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
|
+
* Defines the item type used by this module.
|
|
9
10
|
* @template T
|
|
10
11
|
* @typedef {Record<string, string | string[] | T>} Item
|
|
11
12
|
*/
|
|
12
13
|
|
|
13
14
|
/**
|
|
15
|
+
* Defines the container options format type used by this module.
|
|
14
16
|
* @template T
|
|
15
17
|
* @typedef {(string | Item<T>)[] | Item<T>} ContainerOptionsFormat
|
|
16
18
|
*/
|
|
17
19
|
|
|
18
20
|
/**
|
|
21
|
+
* Processes the provided t.
|
|
19
22
|
* @template T
|
|
20
23
|
* @template N
|
|
21
24
|
* @param {ContainerOptionsFormat<T>} options options passed by the user
|
|
@@ -26,6 +29,7 @@
|
|
|
26
29
|
*/
|
|
27
30
|
const process = (options, normalizeSimple, normalizeOptions, fn) => {
|
|
28
31
|
/**
|
|
32
|
+
* Processes the provided item.
|
|
29
33
|
* @param {(string | Item<T>)[]} items items
|
|
30
34
|
*/
|
|
31
35
|
const array = (items) => {
|
|
@@ -40,6 +44,7 @@ const process = (options, normalizeSimple, normalizeOptions, fn) => {
|
|
|
40
44
|
}
|
|
41
45
|
};
|
|
42
46
|
/**
|
|
47
|
+
* Processes the provided obj.
|
|
43
48
|
* @param {Item<T>} obj an object
|
|
44
49
|
*/
|
|
45
50
|
const object = (obj) => {
|
|
@@ -63,6 +68,7 @@ const process = (options, normalizeSimple, normalizeOptions, fn) => {
|
|
|
63
68
|
};
|
|
64
69
|
|
|
65
70
|
/**
|
|
71
|
+
* Returns parsed options.
|
|
66
72
|
* @template T
|
|
67
73
|
* @template R
|
|
68
74
|
* @param {ContainerOptionsFormat<T>} options options passed by the user
|
|
@@ -80,6 +86,7 @@ const parseOptions = (options, normalizeSimple, normalizeOptions) => {
|
|
|
80
86
|
};
|
|
81
87
|
|
|
82
88
|
/**
|
|
89
|
+
* Returns options to spread or pass.
|
|
83
90
|
* @template T
|
|
84
91
|
* @param {string} scope scope name
|
|
85
92
|
* @param {ContainerOptionsFormat<T>} options options passed by the user
|
package/lib/css/CssGenerator.js
CHANGED
|
@@ -56,6 +56,7 @@ const getCssModulesPlugin = memoize(() => require("./CssModulesPlugin"));
|
|
|
56
56
|
|
|
57
57
|
class CssGenerator extends Generator {
|
|
58
58
|
/**
|
|
59
|
+
* Creates an instance of CssGenerator.
|
|
59
60
|
* @param {CssModuleGeneratorOptions} options options
|
|
60
61
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
61
62
|
*/
|
|
@@ -70,6 +71,7 @@ class CssGenerator extends Generator {
|
|
|
70
71
|
}
|
|
71
72
|
|
|
72
73
|
/**
|
|
74
|
+
* Returns the reason this module cannot be concatenated, when one exists.
|
|
73
75
|
* @param {NormalModule} module module for which the bailout reason should be determined
|
|
74
76
|
* @param {ConcatenationBailoutReasonContext} context context
|
|
75
77
|
* @returns {string | undefined} reason why this module can't be concatenated, undefined when it can be concatenated
|
|
@@ -97,12 +99,11 @@ class CssGenerator extends Generator {
|
|
|
97
99
|
// Iterate through module.dependencies to maintain source order
|
|
98
100
|
for (const dep of module.dependencies) {
|
|
99
101
|
if (dep instanceof CssImportDependency) {
|
|
100
|
-
/** @type {CssModule} */
|
|
101
102
|
const depModule = /** @type {CssModule} */ (moduleGraph.getModule(dep));
|
|
102
103
|
const importVar = generateContext.runtimeTemplate.moduleExports({
|
|
103
104
|
module: depModule,
|
|
104
105
|
chunkGraph: generateContext.chunkGraph,
|
|
105
|
-
request:
|
|
106
|
+
request: depModule.userRequest,
|
|
106
107
|
weak: false,
|
|
107
108
|
runtimeRequirements: generateContext.runtimeRequirements
|
|
108
109
|
});
|
|
@@ -113,16 +114,12 @@ class CssGenerator extends Generator {
|
|
|
113
114
|
);
|
|
114
115
|
parts.push({
|
|
115
116
|
expr: `(${RuntimeGlobals.compatGetDefaultExport}(${importVar})() || "")`,
|
|
116
|
-
type: /** @type {CssParserExportType} */ (
|
|
117
|
-
/** @type {CssModule} */ (depModule).exportType
|
|
118
|
-
)
|
|
117
|
+
type: /** @type {CssParserExportType} */ (depModule.exportType)
|
|
119
118
|
});
|
|
120
119
|
} else {
|
|
121
120
|
parts.push({
|
|
122
121
|
expr: importVar,
|
|
123
|
-
type: /** @type {CssParserExportType} */ (
|
|
124
|
-
/** @type {CssModule} */ (depModule).exportType
|
|
125
|
-
)
|
|
122
|
+
type: /** @type {CssParserExportType} */ (depModule.exportType)
|
|
126
123
|
});
|
|
127
124
|
}
|
|
128
125
|
}
|
|
@@ -188,6 +185,7 @@ class CssGenerator extends Generator {
|
|
|
188
185
|
}
|
|
189
186
|
|
|
190
187
|
/**
|
|
188
|
+
* Processes the provided module.
|
|
191
189
|
* @param {NormalModule} module the current module
|
|
192
190
|
* @param {Dependency} dependency the dependency to generate
|
|
193
191
|
* @param {InitFragment<GenerateContext>[]} initFragments mutable list of init fragments
|
|
@@ -245,6 +243,7 @@ class CssGenerator extends Generator {
|
|
|
245
243
|
}
|
|
246
244
|
|
|
247
245
|
/**
|
|
246
|
+
* Processes the provided module.
|
|
248
247
|
* @param {NormalModule} module the module to generate
|
|
249
248
|
* @param {InitFragment<GenerateContext>[]} initFragments mutable list of init fragments
|
|
250
249
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
@@ -276,6 +275,7 @@ class CssGenerator extends Generator {
|
|
|
276
275
|
}
|
|
277
276
|
|
|
278
277
|
/**
|
|
278
|
+
* Generates generated code for this runtime module.
|
|
279
279
|
* @param {NormalModule} module module for which the code should be generated
|
|
280
280
|
* @param {GenerateContext} generateContext context for generate
|
|
281
281
|
* @returns {Source | null} generated code
|
|
@@ -348,7 +348,8 @@ class CssGenerator extends Generator {
|
|
|
348
348
|
module,
|
|
349
349
|
generateContext
|
|
350
350
|
);
|
|
351
|
-
|
|
351
|
+
|
|
352
|
+
let jsLiteral = cssSource
|
|
352
353
|
? this._cssSourceToJsStringLiteral(cssSource, module)
|
|
353
354
|
: new RawSource('""');
|
|
354
355
|
|
|
@@ -362,22 +363,37 @@ class CssGenerator extends Generator {
|
|
|
362
363
|
);
|
|
363
364
|
|
|
364
365
|
const args = importCode.map((part) => part.expr);
|
|
365
|
-
|
|
366
|
+
|
|
367
|
+
jsLiteral = new ConcatSource(
|
|
366
368
|
`${RuntimeGlobals.cssMergeStyleSheets}([${args.join(", ")}, `,
|
|
367
369
|
jsLiteral,
|
|
368
370
|
"])"
|
|
369
371
|
);
|
|
372
|
+
} else {
|
|
373
|
+
jsLiteral = new ConcatSource(
|
|
374
|
+
`${generateContext.runtimeTemplate.concatenation(
|
|
375
|
+
...importCode
|
|
376
|
+
)} + `,
|
|
377
|
+
jsLiteral
|
|
378
|
+
);
|
|
370
379
|
}
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
if (
|
|
383
|
+
exportType === "css-style-sheet" &&
|
|
384
|
+
typeof (/** @type {BuildInfo} */ (module.buildInfo).charset) !==
|
|
385
|
+
"undefined"
|
|
386
|
+
) {
|
|
387
|
+
jsLiteral = new ConcatSource(
|
|
388
|
+
`'@charset "${/** @type {BuildInfo} */ (module.buildInfo).charset}";\\n' + `,
|
|
375
389
|
jsLiteral
|
|
376
390
|
);
|
|
377
391
|
}
|
|
392
|
+
|
|
378
393
|
return jsLiteral;
|
|
379
394
|
};
|
|
380
395
|
/**
|
|
396
|
+
* Generates js default export.
|
|
381
397
|
* @returns {Source | null} the default export
|
|
382
398
|
*/
|
|
383
399
|
const generateJSDefaultExport = () => {
|
|
@@ -566,6 +582,7 @@ class CssGenerator extends Generator {
|
|
|
566
582
|
}
|
|
567
583
|
|
|
568
584
|
/**
|
|
585
|
+
* Generates fallback output for the provided error condition.
|
|
569
586
|
* @param {Error} error the error
|
|
570
587
|
* @param {NormalModule} module module for which the code should be generated
|
|
571
588
|
* @param {GenerateContext} generateContext context for generate
|
|
@@ -587,6 +604,7 @@ class CssGenerator extends Generator {
|
|
|
587
604
|
}
|
|
588
605
|
|
|
589
606
|
/**
|
|
607
|
+
* Returns the source types available for this module.
|
|
590
608
|
* @param {NormalModule} module fresh module
|
|
591
609
|
* @returns {SourceTypes} available types (do not mutate)
|
|
592
610
|
*/
|
|
@@ -648,6 +666,7 @@ class CssGenerator extends Generator {
|
|
|
648
666
|
}
|
|
649
667
|
|
|
650
668
|
/**
|
|
669
|
+
* Returns the estimated size for the requested source type.
|
|
651
670
|
* @param {NormalModule} module the module
|
|
652
671
|
* @param {SourceType=} type source type
|
|
653
672
|
* @returns {number} estimate size of the module
|
|
@@ -690,11 +709,13 @@ class CssGenerator extends Generator {
|
|
|
690
709
|
}
|
|
691
710
|
|
|
692
711
|
/**
|
|
712
|
+
* Updates the hash with the data contributed by this instance.
|
|
693
713
|
* @param {Hash} hash hash that will be modified
|
|
694
714
|
* @param {UpdateHashContext} updateHashContext context for updating hash
|
|
695
715
|
*/
|
|
696
716
|
updateHash(hash, { module }) {
|
|
697
717
|
hash.update(/** @type {boolean} */ (this._esModule).toString());
|
|
718
|
+
hash.update(/** @type {boolean} */ (this._exportsOnly).toString());
|
|
698
719
|
}
|
|
699
720
|
}
|
|
700
721
|
|