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
package/lib/ExternalModule.js
CHANGED
|
@@ -75,6 +75,7 @@ const { register } = require("./util/serialization");
|
|
|
75
75
|
/** @typedef {ImportDependencyMeta | CssImportDependencyMeta | AssetDependencyMeta} DependencyMeta */
|
|
76
76
|
|
|
77
77
|
/**
|
|
78
|
+
* Defines the source data type used by this module.
|
|
78
79
|
* @typedef {object} SourceData
|
|
79
80
|
* @property {boolean=} iife
|
|
80
81
|
* @property {string=} init
|
|
@@ -98,6 +99,7 @@ const RUNTIME_REQUIREMENTS_FOR_MODULE = new Set([
|
|
|
98
99
|
const EMPTY_RUNTIME_REQUIREMENTS = new Set();
|
|
99
100
|
|
|
100
101
|
/**
|
|
102
|
+
* Gets source for global variable external.
|
|
101
103
|
* @param {string | string[]} variableName the variable name or path
|
|
102
104
|
* @param {string} type the module system
|
|
103
105
|
* @returns {SourceData} the generated source
|
|
@@ -121,6 +123,7 @@ const getSourceForGlobalVariableExternal = (variableName, type) => {
|
|
|
121
123
|
/** @typedef {string | string[]} ModuleAndSpecifiers */
|
|
122
124
|
|
|
123
125
|
/**
|
|
126
|
+
* Gets source for common js external.
|
|
124
127
|
* @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
|
|
125
128
|
* @returns {SourceData} the generated source
|
|
126
129
|
*/
|
|
@@ -140,6 +143,7 @@ const getSourceForCommonJsExternal = (moduleAndSpecifiers) => {
|
|
|
140
143
|
};
|
|
141
144
|
|
|
142
145
|
/**
|
|
146
|
+
* Gets external module node commonjs init fragment.
|
|
143
147
|
* @param {RuntimeTemplate} runtimeTemplate the runtime template
|
|
144
148
|
* @returns {InitFragment<ChunkRenderContext>} code
|
|
145
149
|
*/
|
|
@@ -157,6 +161,7 @@ const getExternalModuleNodeCommonjsInitFragment = (runtimeTemplate) => {
|
|
|
157
161
|
};
|
|
158
162
|
|
|
159
163
|
/**
|
|
164
|
+
* Gets source for common js external in node module.
|
|
160
165
|
* @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
|
|
161
166
|
* @param {RuntimeTemplate} runtimeTemplate the runtime template
|
|
162
167
|
* @returns {SourceData} the generated source
|
|
@@ -186,6 +191,7 @@ const getSourceForCommonJsExternalInNodeModule = (
|
|
|
186
191
|
};
|
|
187
192
|
|
|
188
193
|
/**
|
|
194
|
+
* Gets source for import external.
|
|
189
195
|
* @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
|
|
190
196
|
* @param {RuntimeTemplate} runtimeTemplate the runtime template
|
|
191
197
|
* @param {ImportDependencyMeta=} dependencyMeta the dependency meta
|
|
@@ -240,6 +246,7 @@ const getSourceForImportExternal = (
|
|
|
240
246
|
};
|
|
241
247
|
|
|
242
248
|
/**
|
|
249
|
+
* Import assertion replacer.
|
|
243
250
|
* @param {string} key key
|
|
244
251
|
* @param {ImportAttributes | string | boolean | undefined} value value
|
|
245
252
|
* @returns {ImportAttributes | string | boolean | undefined} replaced value
|
|
@@ -253,10 +260,12 @@ const importAssertionReplacer = (key, value) => {
|
|
|
253
260
|
};
|
|
254
261
|
|
|
255
262
|
/**
|
|
263
|
+
* Represents ModuleExternalInitFragment.
|
|
256
264
|
* @extends {InitFragment<GenerateContext>}
|
|
257
265
|
*/
|
|
258
266
|
class ModuleExternalInitFragment extends InitFragment {
|
|
259
267
|
/**
|
|
268
|
+
* Creates an instance of ModuleExternalInitFragment.
|
|
260
269
|
* @param {string} request import source
|
|
261
270
|
* @param {Imported} imported the imported specifiers
|
|
262
271
|
* @param {string=} ident recomputed ident
|
|
@@ -294,6 +303,7 @@ class ModuleExternalInitFragment extends InitFragment {
|
|
|
294
303
|
}
|
|
295
304
|
|
|
296
305
|
/**
|
|
306
|
+
* Returns imported.
|
|
297
307
|
* @returns {Imported} imported
|
|
298
308
|
*/
|
|
299
309
|
getImported() {
|
|
@@ -301,6 +311,7 @@ class ModuleExternalInitFragment extends InitFragment {
|
|
|
301
311
|
}
|
|
302
312
|
|
|
303
313
|
/**
|
|
314
|
+
* Updates imported using the provided imported.
|
|
304
315
|
* @param {Imported} imported imported
|
|
305
316
|
*/
|
|
306
317
|
setImported(imported) {
|
|
@@ -308,6 +319,7 @@ class ModuleExternalInitFragment extends InitFragment {
|
|
|
308
319
|
}
|
|
309
320
|
|
|
310
321
|
/**
|
|
322
|
+
* Returns the source code that will be included as initialization code.
|
|
311
323
|
* @param {GenerateContext} context context
|
|
312
324
|
* @returns {string | Source | undefined} the source code that will be included as initialization code
|
|
313
325
|
*/
|
|
@@ -355,6 +367,7 @@ class ModuleExternalInitFragment extends InitFragment {
|
|
|
355
367
|
}
|
|
356
368
|
|
|
357
369
|
/**
|
|
370
|
+
* Returns identifier.
|
|
358
371
|
* @param {string} ident ident
|
|
359
372
|
* @returns {string} identifier
|
|
360
373
|
*/
|
|
@@ -363,6 +376,7 @@ class ModuleExternalInitFragment extends InitFragment {
|
|
|
363
376
|
}
|
|
364
377
|
|
|
365
378
|
/**
|
|
379
|
+
* Returns normalized imported.
|
|
366
380
|
* @param {Imported} imported imported
|
|
367
381
|
* @returns {Imported} normalized imported
|
|
368
382
|
*/
|
|
@@ -395,6 +409,7 @@ register(
|
|
|
395
409
|
);
|
|
396
410
|
|
|
397
411
|
/**
|
|
412
|
+
* Generates module remapping.
|
|
398
413
|
* @param {string} input input
|
|
399
414
|
* @param {ExportsInfo} exportsInfo the exports info
|
|
400
415
|
* @param {RuntimeSpec=} runtime the runtime
|
|
@@ -437,6 +452,7 @@ const generateModuleRemapping = (
|
|
|
437
452
|
};
|
|
438
453
|
|
|
439
454
|
/**
|
|
455
|
+
* Gets source for module external.
|
|
440
456
|
* @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
|
|
441
457
|
* @param {ExportsInfo} exportsInfo exports info of this module
|
|
442
458
|
* @param {RuntimeSpec} runtime the runtime
|
|
@@ -530,6 +546,7 @@ const getSourceForModuleExternal = (
|
|
|
530
546
|
};
|
|
531
547
|
|
|
532
548
|
/**
|
|
549
|
+
* Gets source for script external.
|
|
533
550
|
* @param {string | string[]} urlAndGlobal the script request
|
|
534
551
|
* @param {RuntimeTemplate} runtimeTemplate the runtime template
|
|
535
552
|
* @returns {SourceData} the generated source
|
|
@@ -567,6 +584,7 @@ const getSourceForScriptExternal = (urlAndGlobal, runtimeTemplate) => {
|
|
|
567
584
|
};
|
|
568
585
|
|
|
569
586
|
/**
|
|
587
|
+
* Checks external variable.
|
|
570
588
|
* @param {string} variableName the variable name to check
|
|
571
589
|
* @param {string} request the request path
|
|
572
590
|
* @param {RuntimeTemplate} runtimeTemplate the runtime template
|
|
@@ -578,6 +596,7 @@ const checkExternalVariable = (variableName, request, runtimeTemplate) =>
|
|
|
578
596
|
)} }\n`;
|
|
579
597
|
|
|
580
598
|
/**
|
|
599
|
+
* Gets source for amd or umd external.
|
|
581
600
|
* @param {ModuleId | string} id the module id
|
|
582
601
|
* @param {boolean} optional true, if the module is optional
|
|
583
602
|
* @param {string | string[]} request the request path
|
|
@@ -606,6 +625,7 @@ const getSourceForAmdOrUmdExternal = (
|
|
|
606
625
|
};
|
|
607
626
|
|
|
608
627
|
/**
|
|
628
|
+
* Gets source for default case.
|
|
609
629
|
* @param {boolean} optional true, if the module is optional
|
|
610
630
|
* @param {string | string[]} request the request path
|
|
611
631
|
* @param {RuntimeTemplate} runtimeTemplate the runtime template
|
|
@@ -631,6 +651,7 @@ const getSourceForDefaultCase = (optional, request, runtimeTemplate) => {
|
|
|
631
651
|
/** @typedef {string | string[] | RequestRecord} ExternalModuleRequest */
|
|
632
652
|
|
|
633
653
|
/**
|
|
654
|
+
* Defines the external module hooks type used by this module.
|
|
634
655
|
* @typedef {object} ExternalModuleHooks
|
|
635
656
|
* @property {SyncBailHook<[Chunk, Compilation], boolean>} chunkCondition
|
|
636
657
|
*/
|
|
@@ -640,6 +661,7 @@ const compilationHooksMap = new WeakMap();
|
|
|
640
661
|
|
|
641
662
|
class ExternalModule extends Module {
|
|
642
663
|
/**
|
|
664
|
+
* Creates an instance of ExternalModule.
|
|
643
665
|
* @param {ExternalModuleRequest} request request
|
|
644
666
|
* @param {ExternalsType} type type
|
|
645
667
|
* @param {string} userRequest user request
|
|
@@ -660,6 +682,7 @@ class ExternalModule extends Module {
|
|
|
660
682
|
}
|
|
661
683
|
|
|
662
684
|
/**
|
|
685
|
+
* Returns the attached hooks.
|
|
663
686
|
* @param {Compilation} compilation the compilation
|
|
664
687
|
* @returns {ExternalModuleHooks} the attached hooks
|
|
665
688
|
*/
|
|
@@ -675,6 +698,7 @@ class ExternalModule extends Module {
|
|
|
675
698
|
}
|
|
676
699
|
|
|
677
700
|
/**
|
|
701
|
+
* Returns the source types this module can generate.
|
|
678
702
|
* @returns {SourceTypes} types available (do not mutate)
|
|
679
703
|
*/
|
|
680
704
|
getSourceTypes() {
|
|
@@ -693,6 +717,7 @@ class ExternalModule extends Module {
|
|
|
693
717
|
}
|
|
694
718
|
|
|
695
719
|
/**
|
|
720
|
+
* Gets the library identifier.
|
|
696
721
|
* @param {LibIdentOptions} options options
|
|
697
722
|
* @returns {LibIdent | null} an identifier for library inclusion
|
|
698
723
|
*/
|
|
@@ -701,6 +726,7 @@ class ExternalModule extends Module {
|
|
|
701
726
|
}
|
|
702
727
|
|
|
703
728
|
/**
|
|
729
|
+
* Returns true if the module can be placed in the chunk.
|
|
704
730
|
* @param {Chunk} chunk the chunk which condition should be checked
|
|
705
731
|
* @param {Compilation} compilation the compilation
|
|
706
732
|
* @returns {boolean} true if the module can be placed in the chunk
|
|
@@ -721,6 +747,7 @@ class ExternalModule extends Module {
|
|
|
721
747
|
}
|
|
722
748
|
|
|
723
749
|
/**
|
|
750
|
+
* Returns the unique identifier used to reference this module.
|
|
724
751
|
* @returns {string} a unique identifier of the module
|
|
725
752
|
*/
|
|
726
753
|
identifier() {
|
|
@@ -728,6 +755,7 @@ class ExternalModule extends Module {
|
|
|
728
755
|
}
|
|
729
756
|
|
|
730
757
|
/**
|
|
758
|
+
* Returns a human-readable identifier for this module.
|
|
731
759
|
* @param {RequestShortener} requestShortener the request shortener
|
|
732
760
|
* @returns {string} a user readable identifier of the module
|
|
733
761
|
*/
|
|
@@ -736,6 +764,7 @@ class ExternalModule extends Module {
|
|
|
736
764
|
}
|
|
737
765
|
|
|
738
766
|
/**
|
|
767
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
739
768
|
* @param {NeedBuildContext} context context info
|
|
740
769
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
741
770
|
* @returns {void}
|
|
@@ -745,6 +774,7 @@ class ExternalModule extends Module {
|
|
|
745
774
|
}
|
|
746
775
|
|
|
747
776
|
/**
|
|
777
|
+
* Builds the module using the provided compilation context.
|
|
748
778
|
* @param {WebpackOptions} options webpack options
|
|
749
779
|
* @param {Compilation} compilation the compilation
|
|
750
780
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -838,6 +868,7 @@ class ExternalModule extends Module {
|
|
|
838
868
|
}
|
|
839
869
|
|
|
840
870
|
/**
|
|
871
|
+
* Returns the reason this module cannot be concatenated, when one exists.
|
|
841
872
|
* @param {ConcatenationBailoutReasonContext} context context
|
|
842
873
|
* @returns {string | undefined} reason why this module can't be concatenated, undefined when it can be concatenated
|
|
843
874
|
*/
|
|
@@ -855,6 +886,7 @@ class ExternalModule extends Module {
|
|
|
855
886
|
}
|
|
856
887
|
|
|
857
888
|
/**
|
|
889
|
+
* Get request and external type.
|
|
858
890
|
* @private
|
|
859
891
|
* @returns {{ request: string | string[], externalType: ExternalsType }} the request and external type
|
|
860
892
|
*/
|
|
@@ -901,6 +933,7 @@ class ExternalModule extends Module {
|
|
|
901
933
|
}
|
|
902
934
|
|
|
903
935
|
/**
|
|
936
|
+
* Returns the source data.
|
|
904
937
|
* @private
|
|
905
938
|
* @param {string | string[]} request request
|
|
906
939
|
* @param {ExternalsType} externalType the external type
|
|
@@ -1007,6 +1040,7 @@ class ExternalModule extends Module {
|
|
|
1007
1040
|
}
|
|
1008
1041
|
|
|
1009
1042
|
/**
|
|
1043
|
+
* Generates code and runtime requirements for this module.
|
|
1010
1044
|
* @param {CodeGenerationContext} context context for code generation
|
|
1011
1045
|
* @returns {CodeGenerationResult} result
|
|
1012
1046
|
*/
|
|
@@ -1143,6 +1177,7 @@ class ExternalModule extends Module {
|
|
|
1143
1177
|
}
|
|
1144
1178
|
|
|
1145
1179
|
/**
|
|
1180
|
+
* Returns the estimated size for the requested source type.
|
|
1146
1181
|
* @param {string=} type the source type for which the size should be estimated
|
|
1147
1182
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
1148
1183
|
*/
|
|
@@ -1151,6 +1186,7 @@ class ExternalModule extends Module {
|
|
|
1151
1186
|
}
|
|
1152
1187
|
|
|
1153
1188
|
/**
|
|
1189
|
+
* Updates the hash with the data contributed by this instance.
|
|
1154
1190
|
* @param {Hash} hash the hash used to track dependencies
|
|
1155
1191
|
* @param {UpdateHashContext} context context
|
|
1156
1192
|
* @returns {void}
|
|
@@ -1166,6 +1202,7 @@ class ExternalModule extends Module {
|
|
|
1166
1202
|
}
|
|
1167
1203
|
|
|
1168
1204
|
/**
|
|
1205
|
+
* Serializes this instance into the provided serializer context.
|
|
1169
1206
|
* @param {ObjectSerializerContext} context context
|
|
1170
1207
|
*/
|
|
1171
1208
|
serialize(context) {
|
|
@@ -1180,6 +1217,7 @@ class ExternalModule extends Module {
|
|
|
1180
1217
|
}
|
|
1181
1218
|
|
|
1182
1219
|
/**
|
|
1220
|
+
* Restores this instance from the provided deserializer context.
|
|
1183
1221
|
* @param {ObjectDeserializerContext} context context
|
|
1184
1222
|
*/
|
|
1185
1223
|
deserialize(context) {
|
|
@@ -33,6 +33,7 @@ const { cachedSetProperty, resolveByProperty } = require("./util/cleverMerge");
|
|
|
33
33
|
/** @typedef {(options?: ResolveOptions) => ExternalItemFunctionDataGetResolveCallbackResult | ExternalItemFunctionDataGetResolveResult} ExternalItemFunctionDataGetResolve */
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
|
+
* Defines the external item function data type used by this module.
|
|
36
37
|
* @typedef {object} ExternalItemFunctionData
|
|
37
38
|
* @property {string} context the directory in which the request is placed
|
|
38
39
|
* @property {ModuleFactoryCreateDataContextInfo} contextInfo contextual information
|
|
@@ -50,6 +51,7 @@ const EMPTY_RESOLVE_OPTIONS = {};
|
|
|
50
51
|
// TODO webpack 6 remove this
|
|
51
52
|
const callDeprecatedExternals = util.deprecate(
|
|
52
53
|
/**
|
|
54
|
+
* Handles the callback logic for this hook.
|
|
53
55
|
* @param {EXPECTED_FUNCTION} externalsFunction externals function
|
|
54
56
|
* @param {string} context context
|
|
55
57
|
* @param {string} request request
|
|
@@ -67,6 +69,7 @@ const callDeprecatedExternals = util.deprecate(
|
|
|
67
69
|
/** @typedef {ExternalItemObjectKnown & ExternalItemObjectUnknown} ExternalItemObject */
|
|
68
70
|
|
|
69
71
|
/**
|
|
72
|
+
* Defines the external weak cache type used by this module.
|
|
70
73
|
* @template {ExternalItemObject} T
|
|
71
74
|
* @typedef {WeakMap<T, Map<IssuerLayer, Omit<T, "byLayer">>>} ExternalWeakCache
|
|
72
75
|
*/
|
|
@@ -75,6 +78,7 @@ const callDeprecatedExternals = util.deprecate(
|
|
|
75
78
|
const cache = new WeakMap();
|
|
76
79
|
|
|
77
80
|
/**
|
|
81
|
+
* Returns result.
|
|
78
82
|
* @param {ExternalItemObject} obj obj
|
|
79
83
|
* @param {IssuerLayer} layer layer
|
|
80
84
|
* @returns {Omit<ExternalItemObject, "byLayer">} result
|
|
@@ -99,6 +103,7 @@ const PLUGIN_NAME = "ExternalModuleFactoryPlugin";
|
|
|
99
103
|
|
|
100
104
|
class ExternalModuleFactoryPlugin {
|
|
101
105
|
/**
|
|
106
|
+
* Creates an instance of ExternalModuleFactoryPlugin.
|
|
102
107
|
* @param {ExternalsType | ((dependency: Dependency) => ExternalsType)} type default external type
|
|
103
108
|
* @param {Externals} externals externals config
|
|
104
109
|
*/
|
|
@@ -108,6 +113,7 @@ class ExternalModuleFactoryPlugin {
|
|
|
108
113
|
}
|
|
109
114
|
|
|
110
115
|
/**
|
|
116
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
111
117
|
* @param {NormalModuleFactory} normalModuleFactory the normal module factory
|
|
112
118
|
* @returns {void}
|
|
113
119
|
*/
|
|
@@ -124,6 +130,7 @@ class ExternalModuleFactoryPlugin {
|
|
|
124
130
|
/** @typedef {(err?: Error | null, externalModule?: ExternalModule) => void} HandleExternalCallback */
|
|
125
131
|
|
|
126
132
|
/**
|
|
133
|
+
* Processes the provided value.
|
|
127
134
|
* @param {ExternalValue} value the external config
|
|
128
135
|
* @param {ExternalsType | undefined} type type of external
|
|
129
136
|
* @param {HandleExternalCallback} callback callback
|
|
@@ -215,6 +222,7 @@ class ExternalModuleFactoryPlugin {
|
|
|
215
222
|
};
|
|
216
223
|
|
|
217
224
|
/**
|
|
225
|
+
* Processes the provided external.
|
|
218
226
|
* @param {Externals} externals externals config
|
|
219
227
|
* @param {HandleExternalCallback} callback callback
|
|
220
228
|
* @returns {void}
|
|
@@ -230,6 +238,7 @@ class ExternalModuleFactoryPlugin {
|
|
|
230
238
|
/** @type {boolean | undefined} */
|
|
231
239
|
let asyncFlag;
|
|
232
240
|
/**
|
|
241
|
+
* Handle externals and callback.
|
|
233
242
|
* @param {(Error | null)=} err err
|
|
234
243
|
* @param {ExternalModule=} module module
|
|
235
244
|
* @returns {void}
|
|
@@ -262,6 +271,7 @@ class ExternalModuleFactoryPlugin {
|
|
|
262
271
|
}
|
|
263
272
|
} else if (typeof externals === "function") {
|
|
264
273
|
/**
|
|
274
|
+
* Processes the provided err.
|
|
265
275
|
* @param {Error | null | undefined} err err
|
|
266
276
|
* @param {ExternalValue=} value value
|
|
267
277
|
* @param {ExternalsType=} type type
|
package/lib/ExternalsPlugin.js
CHANGED
|
@@ -19,6 +19,7 @@ const PLUGIN_NAME = "ExternalsPlugin";
|
|
|
19
19
|
|
|
20
20
|
class ExternalsPlugin {
|
|
21
21
|
/**
|
|
22
|
+
* Creates an instance of ExternalsPlugin.
|
|
22
23
|
* @param {ExternalsType | ((dependency: Dependency) => ExternalsType)} type default external type
|
|
23
24
|
* @param {Externals} externals externals config
|
|
24
25
|
*/
|
|
@@ -28,7 +29,7 @@ class ExternalsPlugin {
|
|
|
28
29
|
}
|
|
29
30
|
|
|
30
31
|
/**
|
|
31
|
-
*
|
|
32
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
32
33
|
* @param {Compiler} compiler the compiler instance
|
|
33
34
|
* @returns {void}
|
|
34
35
|
*/
|