webpack 5.106.1 → 5.107.0
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/README.md +2 -2
- package/lib/APIPlugin.js +4 -2
- package/lib/AsyncDependenciesBlock.js +3 -0
- package/lib/AutomaticPrefetchPlugin.js +6 -1
- package/lib/BannerPlugin.js +10 -1
- package/lib/Cache.js +27 -5
- package/lib/CacheFacade.js +26 -0
- 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/CompatibilityPlugin.js +23 -8
- package/lib/Compilation.js +161 -27
- package/lib/Compiler.js +41 -17
- 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 +14 -2
- package/lib/ContextModuleFactory.js +10 -0
- package/lib/ContextReplacementPlugin.js +4 -1
- package/lib/DefinePlugin.js +22 -9
- package/lib/DependenciesBlock.js +6 -1
- package/lib/Dependency.js +48 -4
- package/lib/DependencyTemplate.js +7 -1
- package/lib/DependencyTemplates.js +4 -0
- 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 +3 -2
- package/lib/ErrorHelpers.js +7 -0
- package/lib/EvalDevToolModulePlugin.js +3 -1
- package/lib/EvalSourceMapDevToolPlugin.js +11 -10
- package/lib/ExportsInfo.js +56 -2
- package/lib/ExportsInfoApiPlugin.js +2 -1
- package/lib/ExternalModule.js +114 -15
- package/lib/ExternalModuleFactoryPlugin.js +15 -0
- package/lib/ExternalsPlugin.js +2 -1
- package/lib/FileSystemInfo.js +291 -71
- 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 +16 -3
- package/lib/HotModuleReplacementPlugin.js +35 -9
- package/lib/IgnorePlugin.js +4 -2
- package/lib/IgnoreWarningsPlugin.js +2 -1
- package/lib/InitFragment.js +10 -0
- package/lib/JavascriptMetaInfoPlugin.js +2 -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 +101 -19
- package/lib/ModuleFactory.js +6 -1
- 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/ModuleSourceTypeConstants.js +32 -1
- package/lib/ModuleTemplate.js +8 -0
- package/lib/ModuleTypeConstants.js +12 -3
- package/lib/MultiCompiler.js +30 -2
- package/lib/MultiStats.js +8 -0
- package/lib/MultiWatching.js +3 -0
- package/lib/NoEmitOnErrorsPlugin.js +1 -1
- package/lib/NodeStuffPlugin.js +11 -2
- package/lib/NormalModule.js +43 -33
- package/lib/NormalModuleFactory.js +35 -2
- package/lib/NormalModuleReplacementPlugin.js +1 -1
- package/lib/NullFactory.js +1 -0
- package/lib/OptionsApply.js +1 -0
- package/lib/Parser.js +3 -1
- package/lib/PlatformPlugin.js +2 -1
- package/lib/PrefetchPlugin.js +2 -1
- package/lib/ProgressPlugin.js +158 -68
- 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/ResolverFactory.js +5 -0
- package/lib/RuntimeGlobals.js +6 -5
- package/lib/RuntimeModule.js +22 -7
- package/lib/RuntimePlugin.js +13 -0
- package/lib/RuntimeTemplate.js +35 -1
- package/lib/SelfModuleFactory.js +2 -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/UseStrictPlugin.js +2 -1
- package/lib/WarnCaseSensitiveModulesPlugin.js +71 -3
- package/lib/WarnDeprecatedOptionPlugin.js +2 -2
- package/lib/WarnNoModeSetPlugin.js +17 -2
- package/lib/WatchIgnorePlugin.js +4 -1
- package/lib/Watching.js +16 -3
- package/lib/WebpackError.js +3 -74
- package/lib/WebpackIsIncludedPlugin.js +3 -1
- package/lib/WebpackOptionsApply.js +14 -1
- package/lib/WebpackOptionsDefaulter.js +1 -0
- package/lib/asset/AssetBytesGenerator.js +12 -2
- package/lib/asset/AssetBytesParser.js +1 -0
- package/lib/asset/AssetGenerator.js +42 -10
- package/lib/asset/AssetModulesPlugin.js +7 -2
- package/lib/asset/AssetParser.js +2 -0
- package/lib/asset/AssetSourceGenerator.js +12 -2
- 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 +19 -6
- 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 +33 -4
- 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 +33 -1
- package/lib/config/browserslistTargetHandler.js +2 -0
- package/lib/config/defaults.js +232 -12
- package/lib/config/normalization.js +15 -1
- 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 +336 -100
- package/lib/css/CssInjectStyleRuntimeModule.js +45 -42
- package/lib/css/CssLoadingRuntimeModule.js +23 -4
- package/lib/{CssModule.js → css/CssModule.js} +21 -15
- package/lib/css/CssModulesPlugin.js +235 -89
- package/lib/css/CssParser.js +616 -261
- package/lib/css/walkCssTokens.js +179 -2
- 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 +14 -1
- 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 +64 -0
- package/lib/dependencies/CommonJsExportRequireDependency.js +62 -10
- package/lib/dependencies/CommonJsExportsDependency.js +4 -0
- package/lib/dependencies/CommonJsExportsParserPlugin.js +9 -1
- package/lib/dependencies/CommonJsFullRequireDependency.js +36 -9
- package/lib/dependencies/CommonJsImportsParserPlugin.js +24 -3
- package/lib/dependencies/CommonJsPlugin.js +4 -1
- package/lib/dependencies/CommonJsRequireContextDependency.js +3 -0
- package/lib/dependencies/CommonJsRequireDependency.js +70 -4
- package/lib/dependencies/CommonJsSelfReferenceDependency.js +5 -0
- package/lib/dependencies/ConstDependency.js +6 -1
- package/lib/dependencies/ContextDependency.js +9 -2
- package/lib/dependencies/ContextDependencyHelpers.js +4 -1
- 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 +7 -1
- package/lib/dependencies/CreateScriptUrlDependency.js +4 -0
- package/lib/dependencies/CriticalDependencyWarning.js +2 -1
- package/lib/dependencies/CssIcssExportDependency.js +339 -66
- package/lib/dependencies/CssIcssImportDependency.js +53 -8
- package/lib/dependencies/CssIcssSymbolDependency.js +16 -4
- package/lib/dependencies/CssImportDependency.js +12 -0
- package/lib/dependencies/CssUrlDependency.js +32 -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 +4 -1
- package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +4 -0
- package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +10 -7
- package/lib/dependencies/HarmonyExportExpressionDependency.js +27 -14
- package/lib/dependencies/HarmonyExportHeaderDependency.js +4 -0
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +143 -5
- 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 +21 -2
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +31 -1
- package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -0
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +18 -3
- package/lib/{HarmonyLinkingError.js → dependencies/HarmonyLinkingError.js} +5 -3
- package/lib/dependencies/HarmonyModulesPlugin.js +4 -1
- package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -0
- package/lib/dependencies/HtmlInlineScriptDependency.js +133 -0
- package/lib/dependencies/HtmlInlineStyleDependency.js +101 -0
- package/lib/dependencies/HtmlScriptSrcDependency.js +318 -0
- package/lib/dependencies/HtmlSourceDependency.js +127 -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 +4 -1
- 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 +9 -2
- package/lib/dependencies/ImportPhase.js +7 -3
- 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 +4 -1
- package/lib/dependencies/RequireIncludePlugin.js +2 -1
- package/lib/{RequireJsStuffPlugin.js → dependencies/RequireJsStuffPlugin.js} +9 -8
- 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 +5 -2
- 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 +5 -2
- package/lib/dependencies/WebpackIsIncludedDependency.js +2 -0
- package/lib/dependencies/WorkerDependency.js +6 -1
- package/lib/dependencies/WorkerPlugin.js +11 -3
- package/lib/dependencies/getFunctionExpression.js +1 -0
- package/lib/dependencies/processExportInfo.js +1 -0
- package/lib/{DelegatedModule.js → dll/DelegatedModule.js} +44 -31
- package/lib/{DelegatedModuleFactoryPlugin.js → dll/DelegatedModuleFactoryPlugin.js} +7 -4
- package/lib/{DelegatedPlugin.js → dll/DelegatedPlugin.js} +4 -3
- package/lib/{DllEntryPlugin.js → dll/DllEntryPlugin.js} +6 -5
- package/lib/{DllModule.js → dll/DllModule.js} +35 -24
- package/lib/{DllModuleFactory.js → dll/DllModuleFactory.js} +5 -4
- package/lib/{DllPlugin.js → dll/DllPlugin.js} +8 -6
- package/lib/{DllReferencePlugin.js → dll/DllReferencePlugin.js} +23 -18
- package/lib/{LibManifestPlugin.js → dll/LibManifestPlugin.js} +13 -10
- package/lib/electron/ElectronTargetPlugin.js +2 -1
- package/lib/{AbstractMethodError.js → errors/AbstractMethodError.js} +10 -1
- package/lib/{AsyncDependencyToInitialChunkError.js → errors/AsyncDependencyToInitialChunkError.js} +8 -3
- package/lib/errors/BuildCycleError.js +1 -1
- package/lib/{ChunkRenderError.js → errors/ChunkRenderError.js} +1 -1
- package/lib/{CodeGenerationError.js → errors/CodeGenerationError.js} +1 -1
- package/lib/{CommentCompilationWarning.js → errors/CommentCompilationWarning.js} +9 -3
- package/lib/{ConcurrentCompilationError.js → errors/ConcurrentCompilationError.js} +4 -2
- package/lib/{EnvironmentNotSupportAsyncWarning.js → errors/EnvironmentNotSupportAsyncWarning.js} +4 -4
- package/lib/{HookWebpackError.js → errors/HookWebpackError.js} +11 -5
- package/lib/{IgnoreErrorModuleFactory.js → errors/IgnoreErrorModuleFactory.js} +6 -4
- package/lib/{InvalidDependenciesModuleWarning.js → errors/InvalidDependenciesModuleWarning.js} +4 -3
- package/lib/errors/JSONParseError.js +114 -0
- package/lib/{ModuleBuildError.js → errors/ModuleBuildError.js} +8 -5
- package/lib/{ModuleDependencyError.js → errors/ModuleDependencyError.js} +2 -2
- package/lib/{ModuleDependencyWarning.js → errors/ModuleDependencyWarning.js} +5 -4
- package/lib/{ModuleError.js → errors/ModuleError.js} +7 -5
- package/lib/{ModuleHashingError.js → errors/ModuleHashingError.js} +1 -1
- package/lib/{ModuleNotFoundError.js → errors/ModuleNotFoundError.js} +3 -2
- package/lib/{ModuleParseError.js → errors/ModuleParseError.js} +11 -6
- package/lib/{ModuleRestoreError.js → errors/ModuleRestoreError.js} +2 -1
- package/lib/{ModuleStoreError.js → errors/ModuleStoreError.js} +2 -1
- package/lib/{ModuleWarning.js → errors/ModuleWarning.js} +8 -5
- package/lib/{NodeStuffInWebError.js → errors/NodeStuffInWebError.js} +5 -4
- package/lib/errors/NonErrorEmittedError.js +28 -0
- package/lib/{UnhandledSchemeError.js → errors/UnhandledSchemeError.js} +8 -2
- package/lib/{UnsupportedFeatureWarning.js → errors/UnsupportedFeatureWarning.js} +4 -3
- package/lib/errors/WebpackError.js +84 -0
- 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/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/html/HtmlGenerator.js +379 -0
- package/lib/html/HtmlModulesPlugin.js +433 -0
- package/lib/html/HtmlParser.js +1489 -0
- package/lib/html/walkHtmlTokens.js +2733 -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 +22 -1
- 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 +39 -15
- 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 +112 -9
- package/lib/javascript/JavascriptParser.js +360 -16
- package/lib/javascript/JavascriptParserHelpers.js +7 -1
- 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 +14 -25
- package/lib/library/AbstractLibraryPlugin.js +17 -2
- package/lib/library/AmdLibraryPlugin.js +8 -0
- package/lib/library/AssignLibraryPlugin.js +16 -0
- package/lib/library/EnableLibraryPlugin.js +8 -2
- package/lib/library/ExportPropertyLibraryPlugin.js +9 -0
- package/lib/{FalseIIFEUmdWarning.js → library/FalseIIFEUmdWarning.js} +1 -1
- package/lib/library/JsonpLibraryPlugin.js +8 -0
- package/lib/library/ModuleLibraryPlugin.js +86 -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 +7 -3
- 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 +116 -64
- package/lib/optimize/AggressiveMergingPlugin.js +3 -1
- package/lib/optimize/AggressiveSplittingPlugin.js +6 -1
- package/lib/optimize/ConcatenatedModule.js +62 -6
- package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -1
- package/lib/optimize/FlagIncludedChunksPlugin.js +2 -1
- package/lib/optimize/InnerGraph.js +16 -1
- package/lib/optimize/InnerGraphPlugin.js +14 -2
- 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 +5 -4
- package/lib/optimize/ModuleConcatenationPlugin.js +36 -8
- package/lib/optimize/RealContentHashPlugin.js +104 -26
- 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 +118 -4
- package/lib/optimize/SplitChunksPlugin.js +50 -2
- package/lib/performance/AssetsOverSizeLimitWarning.js +3 -2
- package/lib/performance/EntrypointsOverSizeLimitWarning.js +3 -2
- package/lib/performance/NoAsyncChunksWarning.js +5 -3
- package/lib/performance/SizeLimitsPlugin.js +8 -2
- 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 +5 -1
- 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 +10 -3
- 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 +121 -13
- 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/SetAnonymousDefaultNameRuntimeModule.js +35 -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 +14 -2
- package/lib/schemes/FileUriPlugin.js +1 -1
- package/lib/schemes/HttpUriPlugin.js +43 -1
- package/lib/schemes/VirtualUrlPlugin.js +7 -2
- 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 +14 -2
- 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 +8 -3
- package/lib/sharing/ConsumeSharedRuntimeModule.js +9 -4
- package/lib/sharing/ProvideForSharedDependency.js +1 -0
- package/lib/sharing/ProvideSharedDependency.js +4 -0
- package/lib/sharing/ProvideSharedModule.js +12 -1
- package/lib/sharing/ProvideSharedModuleFactory.js +1 -0
- package/lib/sharing/ProvideSharedPlugin.js +5 -2
- package/lib/sharing/SharePlugin.js +2 -1
- package/lib/sharing/ShareRuntimeModule.js +1 -0
- package/lib/sharing/resolveMatchedConfigs.js +4 -1
- package/lib/sharing/utils.js +8 -0
- package/lib/stats/DefaultStatsFactoryPlugin.js +58 -3
- package/lib/stats/DefaultStatsPresetPlugin.js +12 -2
- package/lib/stats/DefaultStatsPrinterPlugin.js +38 -2
- package/lib/stats/StatsFactory.js +13 -1
- package/lib/stats/StatsPrinter.js +7 -0
- package/lib/typescript/TypeScriptPlugin.js +210 -0
- package/lib/url/URLParserPlugin.js +8 -2
- 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 +22 -2
- package/lib/util/Hash.js +2 -2
- package/lib/util/IterableHelpers.js +3 -0
- package/lib/util/LazyBucketSortedSet.js +21 -0
- package/lib/util/LazySet.js +39 -0
- package/lib/util/LocConverter.js +53 -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 +7 -1
- 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 +19 -2
- package/lib/util/comparators.js +34 -3
- package/lib/util/compileBooleanMatcher.js +9 -0
- package/lib/util/concatenate.js +9 -3
- package/lib/util/conventions.js +46 -1
- package/lib/util/createMappings.js +118 -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/{formatLocation.js → util/formatLocation.js} +4 -2
- package/lib/{SizeFormatHelpers.js → util/formatSize.js} +4 -1
- package/lib/util/fs.js +71 -8
- 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/md4.js +1 -1
- package/lib/util/hash/wasm-hash.js +5 -0
- package/lib/util/hash/xxhash64.js +1 -1
- package/lib/util/identifier.js +67 -0
- package/lib/util/internalSerializables.js +35 -19
- package/lib/util/magicComment.js +10 -6
- 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 +41 -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 +23 -0
- package/lib/util/topologicalSort.js +69 -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 +12 -3
- package/lib/wasm-async/AsyncWebAssemblyParser.js +2 -1
- package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +12 -1
- package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +6 -3
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +1 -0
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +2 -2
- package/lib/wasm-sync/WebAssemblyGenerator.js +26 -1
- package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +7 -3
- 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 +13 -1
- package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +10 -1
- package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +1 -0
- package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
- package/package.json +31 -31
- package/schemas/WebpackOptions.check.js +1 -1
- package/schemas/WebpackOptions.json +161 -57
- package/schemas/plugins/{DllPlugin.check.d.ts → HtmlGeneratorOptions.check.d.ts} +1 -1
- package/schemas/plugins/HtmlGeneratorOptions.check.js +6 -0
- package/schemas/plugins/HtmlGeneratorOptions.json +3 -0
- package/schemas/plugins/ProgressPlugin.check.js +1 -1
- package/schemas/plugins/ProgressPlugin.json +22 -0
- package/schemas/plugins/{DllReferencePlugin.check.d.ts → css/CssAutoOrModuleParserOptions.check.d.ts} +1 -1
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +6 -0
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.json +3 -0
- package/schemas/plugins/dll/DllPlugin.check.d.ts +7 -0
- package/schemas/plugins/dll/DllReferencePlugin.check.d.ts +7 -0
- package/types.d.ts +5325 -353
- package/lib/CaseSensitiveModulesWarning.js +0 -72
- package/lib/GraphHelpers.js +0 -46
- package/lib/NoModeWarning.js +0 -23
- package/lib/css/CssMergeStyleSheetsRuntimeModule.js +0 -56
- /package/schemas/plugins/{DllPlugin.check.js → dll/DllPlugin.check.js} +0 -0
- /package/schemas/plugins/{DllPlugin.json → dll/DllPlugin.json} +0 -0
- /package/schemas/plugins/{DllReferencePlugin.check.js → dll/DllReferencePlugin.check.js} +0 -0
- /package/schemas/plugins/{DllReferencePlugin.json → dll/DllReferencePlugin.json} +0 -0
|
@@ -20,6 +20,7 @@ const PLUGIN_NAME = "ContextReplacementPlugin";
|
|
|
20
20
|
|
|
21
21
|
class ContextReplacementPlugin {
|
|
22
22
|
/**
|
|
23
|
+
* Creates an instance of ContextReplacementPlugin.
|
|
23
24
|
* @param {RegExp} resourceRegExp A regular expression that determines which files will be selected
|
|
24
25
|
* @param {(string | ((context: BeforeContextResolveData | AfterContextResolveData) => void) | RegExp | boolean)=} newContentResource A new resource to replace the match
|
|
25
26
|
* @param {(boolean | NewContentCreateContextMap | RegExp)=} newContentRecursive If true, all subdirectories are searched for matches
|
|
@@ -44,6 +45,7 @@ class ContextReplacementPlugin {
|
|
|
44
45
|
) {
|
|
45
46
|
this.newContentResource = newContentResource;
|
|
46
47
|
/**
|
|
48
|
+
* Stores new content create context map.
|
|
47
49
|
* @param {InputFileSystem} fs input file system
|
|
48
50
|
* @param {(err: null | Error, newContentRecursive: NewContentCreateContextMap) => void} callback callback
|
|
49
51
|
*/
|
|
@@ -87,7 +89,7 @@ class ContextReplacementPlugin {
|
|
|
87
89
|
}
|
|
88
90
|
|
|
89
91
|
/**
|
|
90
|
-
*
|
|
92
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
91
93
|
* @param {Compiler} compiler the compiler instance
|
|
92
94
|
* @returns {void}
|
|
93
95
|
*/
|
|
@@ -202,6 +204,7 @@ class ContextReplacementPlugin {
|
|
|
202
204
|
}
|
|
203
205
|
|
|
204
206
|
/**
|
|
207
|
+
* Creates a resolve dependencies from context map.
|
|
205
208
|
* @param {(fs: InputFileSystem, callback: (err: null | Error, map: NewContentCreateContextMap) => void) => void} createContextMap create context map function
|
|
206
209
|
* @returns {(fs: InputFileSystem, options: ContextModuleOptions, callback: (err: null | Error, dependencies?: ContextElementDependency[]) => void) => void} resolve resolve dependencies from context map function
|
|
207
210
|
*/
|
package/lib/DefinePlugin.js
CHANGED
|
@@ -12,8 +12,8 @@ const {
|
|
|
12
12
|
JAVASCRIPT_MODULE_TYPE_ESM
|
|
13
13
|
} = require("./ModuleTypeConstants");
|
|
14
14
|
const RuntimeGlobals = require("./RuntimeGlobals");
|
|
15
|
-
const WebpackError = require("./WebpackError");
|
|
16
15
|
const ConstDependency = require("./dependencies/ConstDependency");
|
|
16
|
+
const WebpackError = require("./errors/WebpackError");
|
|
17
17
|
const BasicEvaluatedExpression = require("./javascript/BasicEvaluatedExpression");
|
|
18
18
|
const { VariableInfo } = require("./javascript/JavascriptParser");
|
|
19
19
|
const {
|
|
@@ -39,6 +39,7 @@ const createHash = require("./util/createHash");
|
|
|
39
39
|
/** @typedef {RecursiveArrayOrRecord<CodeValuePrimitive | RuntimeValue>} CodeValue */
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
|
+
* Defines the runtime value options type used by this module.
|
|
42
43
|
* @typedef {object} RuntimeValueOptions
|
|
43
44
|
* @property {string[]=} fileDependencies
|
|
44
45
|
* @property {string[]=} contextDependencies
|
|
@@ -51,6 +52,7 @@ const createHash = require("./util/createHash");
|
|
|
51
52
|
|
|
52
53
|
class RuntimeValue {
|
|
53
54
|
/**
|
|
55
|
+
* Creates an instance of RuntimeValue.
|
|
54
56
|
* @param {GeneratorFn} fn generator function
|
|
55
57
|
* @param {true | string[] | RuntimeValueOptions=} options options
|
|
56
58
|
*/
|
|
@@ -71,6 +73,7 @@ class RuntimeValue {
|
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
/**
|
|
76
|
+
* Returns code.
|
|
74
77
|
* @param {JavascriptParser} parser the parser
|
|
75
78
|
* @param {ValueCacheVersions} valueCacheVersions valueCacheVersions
|
|
76
79
|
* @param {string} key the defined key
|
|
@@ -128,6 +131,7 @@ class RuntimeValue {
|
|
|
128
131
|
}
|
|
129
132
|
|
|
130
133
|
/**
|
|
134
|
+
* Returns used keys.
|
|
131
135
|
* @param {DestructuringAssignmentProperties | undefined} properties properties
|
|
132
136
|
* @returns {Set<string> | undefined} used keys
|
|
133
137
|
*/
|
|
@@ -140,6 +144,7 @@ function getObjKeys(properties) {
|
|
|
140
144
|
/** @typedef {boolean | undefined | null} AsiSafe */
|
|
141
145
|
|
|
142
146
|
/**
|
|
147
|
+
* Returns code converted to string that evaluates.
|
|
143
148
|
* @param {EXPECTED_ANY[] | { [k: string]: EXPECTED_ANY }} obj obj
|
|
144
149
|
* @param {JavascriptParser} parser Parser
|
|
145
150
|
* @param {ValueCacheVersions} valueCacheVersions valueCacheVersions
|
|
@@ -287,6 +292,7 @@ const toCode = (
|
|
|
287
292
|
};
|
|
288
293
|
|
|
289
294
|
/**
|
|
295
|
+
* Returns result.
|
|
290
296
|
* @param {CodeValue} code code
|
|
291
297
|
* @returns {string | undefined} result
|
|
292
298
|
*/
|
|
@@ -313,7 +319,7 @@ const toCacheVersion = (code) => {
|
|
|
313
319
|
const items = Object.keys(code).map((key) => ({
|
|
314
320
|
key,
|
|
315
321
|
value: toCacheVersion(
|
|
316
|
-
/** @type {Record<string,
|
|
322
|
+
/** @type {Record<string, CodeValue>} */
|
|
317
323
|
(code)[key]
|
|
318
324
|
)
|
|
319
325
|
}));
|
|
@@ -336,6 +342,7 @@ const WEBPACK_REQUIRE_FUNCTION_REGEXP = new RegExp(
|
|
|
336
342
|
const WEBPACK_REQUIRE_IDENTIFIER_REGEXP = new RegExp(RuntimeGlobals.require);
|
|
337
343
|
|
|
338
344
|
/**
|
|
345
|
+
* Defines the define plugin hooks type used by this module.
|
|
339
346
|
* @typedef {object} DefinePluginHooks
|
|
340
347
|
* @property {SyncWaterfallHook<[Record<string, CodeValue>]>} definitions
|
|
341
348
|
*/
|
|
@@ -347,6 +354,7 @@ const compilationHooksMap = new WeakMap();
|
|
|
347
354
|
|
|
348
355
|
class DefinePlugin {
|
|
349
356
|
/**
|
|
357
|
+
* Returns the attached hooks.
|
|
350
358
|
* @param {Compilation} compilation the compilation
|
|
351
359
|
* @returns {DefinePluginHooks} the attached hooks
|
|
352
360
|
*/
|
|
@@ -371,6 +379,7 @@ class DefinePlugin {
|
|
|
371
379
|
}
|
|
372
380
|
|
|
373
381
|
/**
|
|
382
|
+
* Returns runtime value.
|
|
374
383
|
* @param {GeneratorFn} fn generator function
|
|
375
384
|
* @param {true | string[] | RuntimeValueOptions=} options options
|
|
376
385
|
* @returns {RuntimeValue} runtime value
|
|
@@ -380,7 +389,7 @@ class DefinePlugin {
|
|
|
380
389
|
}
|
|
381
390
|
|
|
382
391
|
/**
|
|
383
|
-
*
|
|
392
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
384
393
|
* @param {Compiler} compiler the compiler instance
|
|
385
394
|
* @returns {void}
|
|
386
395
|
*/
|
|
@@ -419,7 +428,7 @@ class DefinePlugin {
|
|
|
419
428
|
);
|
|
420
429
|
|
|
421
430
|
/**
|
|
422
|
-
*
|
|
431
|
+
* Handles the hook callback for this code path.
|
|
423
432
|
* @param {JavascriptParser} parser Parser
|
|
424
433
|
* @returns {void}
|
|
425
434
|
*/
|
|
@@ -440,6 +449,7 @@ class DefinePlugin {
|
|
|
440
449
|
});
|
|
441
450
|
|
|
442
451
|
/**
|
|
452
|
+
* Adds value dependency.
|
|
443
453
|
* @param {string} key key
|
|
444
454
|
*/
|
|
445
455
|
const addValueDependency = (key) => {
|
|
@@ -455,6 +465,7 @@ class DefinePlugin {
|
|
|
455
465
|
};
|
|
456
466
|
|
|
457
467
|
/**
|
|
468
|
+
* With value dependency.
|
|
458
469
|
* @template T
|
|
459
470
|
* @param {string} key key
|
|
460
471
|
* @param {(expression: Expression) => T} fn fn
|
|
@@ -468,7 +479,7 @@ class DefinePlugin {
|
|
|
468
479
|
};
|
|
469
480
|
|
|
470
481
|
/**
|
|
471
|
-
*
|
|
482
|
+
* Processes the provided definition.
|
|
472
483
|
* @param {Definitions} definitions Definitions map
|
|
473
484
|
* @param {string} prefix Prefix string
|
|
474
485
|
* @returns {void}
|
|
@@ -495,7 +506,7 @@ class DefinePlugin {
|
|
|
495
506
|
};
|
|
496
507
|
|
|
497
508
|
/**
|
|
498
|
-
*
|
|
509
|
+
* Processes the provided prefix.
|
|
499
510
|
* @param {string} prefix Prefix
|
|
500
511
|
* @param {string} key Key
|
|
501
512
|
* @returns {void}
|
|
@@ -580,7 +591,7 @@ class DefinePlugin {
|
|
|
580
591
|
};
|
|
581
592
|
|
|
582
593
|
/**
|
|
583
|
-
*
|
|
594
|
+
* Processes the provided key.
|
|
584
595
|
* @param {string} key Key
|
|
585
596
|
* @param {CodeValue} code Code
|
|
586
597
|
* @returns {void}
|
|
@@ -703,7 +714,7 @@ class DefinePlugin {
|
|
|
703
714
|
};
|
|
704
715
|
|
|
705
716
|
/**
|
|
706
|
-
*
|
|
717
|
+
* Processes the provided key.
|
|
707
718
|
* @param {string} key Key
|
|
708
719
|
* @param {object} obj Object
|
|
709
720
|
* @returns {void}
|
|
@@ -788,7 +799,7 @@ class DefinePlugin {
|
|
|
788
799
|
.tap(PLUGIN_NAME, handler);
|
|
789
800
|
|
|
790
801
|
/**
|
|
791
|
-
*
|
|
802
|
+
* Processes the provided definition.
|
|
792
803
|
* @param {Definitions} definitions Definitions map
|
|
793
804
|
* @param {string} prefix Prefix string
|
|
794
805
|
* @returns {void}
|
|
@@ -825,11 +836,13 @@ class DefinePlugin {
|
|
|
825
836
|
};
|
|
826
837
|
|
|
827
838
|
/**
|
|
839
|
+
* Walk definitions for keys.
|
|
828
840
|
* @param {Definitions} definitions Definitions map
|
|
829
841
|
* @returns {void}
|
|
830
842
|
*/
|
|
831
843
|
const walkDefinitionsForKeys = (definitions) => {
|
|
832
844
|
/**
|
|
845
|
+
* Adds the provided map to the define plugin.
|
|
833
846
|
* @param {Map<string, Set<string>>} map Map
|
|
834
847
|
* @param {string} key key
|
|
835
848
|
* @param {string} value v
|
package/lib/DependenciesBlock.js
CHANGED
|
@@ -53,6 +53,7 @@ class DependenciesBlock {
|
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
/**
|
|
56
|
+
* Adds the provided dependency to the dependencies block.
|
|
56
57
|
* @param {Dependency} dependency dependency being tied to block.
|
|
57
58
|
* This is an "edge" pointing to another "node" on module graph.
|
|
58
59
|
* @returns {void}
|
|
@@ -62,6 +63,7 @@ class DependenciesBlock {
|
|
|
62
63
|
}
|
|
63
64
|
|
|
64
65
|
/**
|
|
66
|
+
* Removes dependency.
|
|
65
67
|
* @param {Dependency} dependency dependency being removed
|
|
66
68
|
* @returns {void}
|
|
67
69
|
*/
|
|
@@ -73,7 +75,7 @@ class DependenciesBlock {
|
|
|
73
75
|
}
|
|
74
76
|
|
|
75
77
|
/**
|
|
76
|
-
*
|
|
78
|
+
* Clear dependencies and blocks.
|
|
77
79
|
* @returns {void}
|
|
78
80
|
*/
|
|
79
81
|
clearDependenciesAndBlocks() {
|
|
@@ -82,6 +84,7 @@ class DependenciesBlock {
|
|
|
82
84
|
}
|
|
83
85
|
|
|
84
86
|
/**
|
|
87
|
+
* Updates the hash with the data contributed by this instance.
|
|
85
88
|
* @param {Hash} hash the hash used to track dependencies
|
|
86
89
|
* @param {UpdateHashContext} context context
|
|
87
90
|
* @returns {void}
|
|
@@ -96,6 +99,7 @@ class DependenciesBlock {
|
|
|
96
99
|
}
|
|
97
100
|
|
|
98
101
|
/**
|
|
102
|
+
* Serializes this instance into the provided serializer context.
|
|
99
103
|
* @param {ObjectSerializerContext} context context
|
|
100
104
|
*/
|
|
101
105
|
serialize({ write }) {
|
|
@@ -104,6 +108,7 @@ class DependenciesBlock {
|
|
|
104
108
|
}
|
|
105
109
|
|
|
106
110
|
/**
|
|
111
|
+
* Restores this instance from the provided deserializer context.
|
|
107
112
|
* @param {ObjectDeserializerContext} context context
|
|
108
113
|
*/
|
|
109
114
|
deserialize({ read }) {
|
package/lib/Dependency.js
CHANGED
|
@@ -14,13 +14,14 @@ const memoize = require("./util/memoize");
|
|
|
14
14
|
/** @typedef {import("./ModuleGraphConnection")} ModuleGraphConnection */
|
|
15
15
|
/** @typedef {import("./ModuleGraphConnection").ConnectionState} ConnectionState */
|
|
16
16
|
/** @typedef {import("./RuntimeTemplate")} RuntimeTemplate */
|
|
17
|
-
/** @typedef {import("./WebpackError")} WebpackError */
|
|
17
|
+
/** @typedef {import("./errors/WebpackError")} WebpackError */
|
|
18
18
|
/** @typedef {import("./serialization/ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */
|
|
19
19
|
/** @typedef {import("./serialization/ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */
|
|
20
20
|
/** @typedef {import("./util/Hash")} Hash */
|
|
21
21
|
/** @typedef {import("./util/runtime").RuntimeSpec} RuntimeSpec */
|
|
22
22
|
/** @typedef {import("./dependencies/ModuleDependency")} ModuleDependency */
|
|
23
23
|
/**
|
|
24
|
+
* Defines the update hash context type used by this module.
|
|
24
25
|
* @typedef {object} UpdateHashContext
|
|
25
26
|
* @property {ChunkGraph} chunkGraph
|
|
26
27
|
* @property {RuntimeSpec} runtime
|
|
@@ -28,12 +29,14 @@ const memoize = require("./util/memoize");
|
|
|
28
29
|
*/
|
|
29
30
|
|
|
30
31
|
/**
|
|
32
|
+
* Defines the source position type used by this module.
|
|
31
33
|
* @typedef {object} SourcePosition
|
|
32
34
|
* @property {number} line
|
|
33
35
|
* @property {number=} column
|
|
34
36
|
*/
|
|
35
37
|
|
|
36
38
|
/**
|
|
39
|
+
* Defines the real dependency location type used by this module.
|
|
37
40
|
* @typedef {object} RealDependencyLocation
|
|
38
41
|
* @property {SourcePosition} start
|
|
39
42
|
* @property {SourcePosition=} end
|
|
@@ -41,6 +44,7 @@ const memoize = require("./util/memoize");
|
|
|
41
44
|
*/
|
|
42
45
|
|
|
43
46
|
/**
|
|
47
|
+
* Defines the synthetic dependency location type used by this module.
|
|
44
48
|
* @typedef {object} SyntheticDependencyLocation
|
|
45
49
|
* @property {string} name
|
|
46
50
|
* @property {number=} index
|
|
@@ -51,6 +55,7 @@ const memoize = require("./util/memoize");
|
|
|
51
55
|
/** @typedef {string} ExportInfoName */
|
|
52
56
|
|
|
53
57
|
/**
|
|
58
|
+
* Defines the export spec type used by this module.
|
|
54
59
|
* @typedef {object} ExportSpec
|
|
55
60
|
* @property {ExportInfoName} name the name of the export
|
|
56
61
|
* @property {boolean=} canMangle can the export be renamed (defaults to true)
|
|
@@ -65,6 +70,7 @@ const memoize = require("./util/memoize");
|
|
|
65
70
|
/** @typedef {Set<string>} ExportsSpecExcludeExports */
|
|
66
71
|
|
|
67
72
|
/**
|
|
73
|
+
* Defines the exports spec type used by this module.
|
|
68
74
|
* @typedef {object} ExportsSpec
|
|
69
75
|
* @property {(string | ExportSpec)[] | true | null} exports exported names, true for unknown exports or null for no exports
|
|
70
76
|
* @property {ExportsSpecExcludeExports=} excludeExports when exports = true, list of unaffected exports
|
|
@@ -77,6 +83,7 @@ const memoize = require("./util/memoize");
|
|
|
77
83
|
*/
|
|
78
84
|
|
|
79
85
|
/**
|
|
86
|
+
* Defines the referenced export type used by this module.
|
|
80
87
|
* @typedef {object} ReferencedExport
|
|
81
88
|
* @property {string[]} name name of the referenced export
|
|
82
89
|
* @property {boolean=} canMangle when false, referenced export can not be mangled, defaults to true
|
|
@@ -124,6 +131,7 @@ class Dependency {
|
|
|
124
131
|
}
|
|
125
132
|
|
|
126
133
|
/**
|
|
134
|
+
* Returns a display name for the type of dependency.
|
|
127
135
|
* @returns {string} a display name for the type of dependency
|
|
128
136
|
*/
|
|
129
137
|
get type() {
|
|
@@ -131,6 +139,7 @@ class Dependency {
|
|
|
131
139
|
}
|
|
132
140
|
|
|
133
141
|
/**
|
|
142
|
+
* Returns a dependency category, typical categories are "commonjs", "amd", "esm".
|
|
134
143
|
* @returns {string} a dependency category, typical categories are "commonjs", "amd", "esm"
|
|
135
144
|
*/
|
|
136
145
|
get category() {
|
|
@@ -138,6 +147,7 @@ class Dependency {
|
|
|
138
147
|
}
|
|
139
148
|
|
|
140
149
|
/**
|
|
150
|
+
* Returns location.
|
|
141
151
|
* @returns {DependencyLocation} location
|
|
142
152
|
*/
|
|
143
153
|
get loc() {
|
|
@@ -183,6 +193,7 @@ class Dependency {
|
|
|
183
193
|
}
|
|
184
194
|
|
|
185
195
|
/**
|
|
196
|
+
* Updates loc using the provided start line.
|
|
186
197
|
* @param {number} startLine start line
|
|
187
198
|
* @param {number} startColumn start column
|
|
188
199
|
* @param {number} endLine end line
|
|
@@ -199,6 +210,7 @@ class Dependency {
|
|
|
199
210
|
}
|
|
200
211
|
|
|
201
212
|
/**
|
|
213
|
+
* Returns a request context.
|
|
202
214
|
* @returns {string | undefined} a request context
|
|
203
215
|
*/
|
|
204
216
|
getContext() {
|
|
@@ -206,6 +218,7 @@ class Dependency {
|
|
|
206
218
|
}
|
|
207
219
|
|
|
208
220
|
/**
|
|
221
|
+
* Returns an identifier to merge equal requests.
|
|
209
222
|
* @returns {string | null} an identifier to merge equal requests
|
|
210
223
|
*/
|
|
211
224
|
getResourceIdentifier() {
|
|
@@ -213,6 +226,7 @@ class Dependency {
|
|
|
213
226
|
}
|
|
214
227
|
|
|
215
228
|
/**
|
|
229
|
+
* Could affect referencing module.
|
|
216
230
|
* @returns {boolean | TRANSITIVE} true, when changes to the referenced module could affect the referencing module; TRANSITIVE, when changes to the referenced module could affect referencing modules of the referencing module
|
|
217
231
|
*/
|
|
218
232
|
couldAffectReferencingModule() {
|
|
@@ -242,6 +256,7 @@ class Dependency {
|
|
|
242
256
|
}
|
|
243
257
|
|
|
244
258
|
/**
|
|
259
|
+
* Returns function to determine if the connection is active.
|
|
245
260
|
* @param {ModuleGraph} moduleGraph module graph
|
|
246
261
|
* @returns {null | false | GetConditionFn} function to determine if the connection is active
|
|
247
262
|
*/
|
|
@@ -259,7 +274,7 @@ class Dependency {
|
|
|
259
274
|
}
|
|
260
275
|
|
|
261
276
|
/**
|
|
262
|
-
* Returns warnings
|
|
277
|
+
* Returns warnings.
|
|
263
278
|
* @param {ModuleGraph} moduleGraph module graph
|
|
264
279
|
* @returns {WebpackError[] | null | undefined} warnings
|
|
265
280
|
*/
|
|
@@ -268,7 +283,7 @@ class Dependency {
|
|
|
268
283
|
}
|
|
269
284
|
|
|
270
285
|
/**
|
|
271
|
-
* Returns errors
|
|
286
|
+
* Returns errors.
|
|
272
287
|
* @param {ModuleGraph} moduleGraph module graph
|
|
273
288
|
* @returns {WebpackError[] | null | undefined} errors
|
|
274
289
|
*/
|
|
@@ -277,7 +292,7 @@ class Dependency {
|
|
|
277
292
|
}
|
|
278
293
|
|
|
279
294
|
/**
|
|
280
|
-
*
|
|
295
|
+
* Updates the hash with the data contributed by this instance.
|
|
281
296
|
* @param {Hash} hash hash to be updated
|
|
282
297
|
* @param {UpdateHashContext} context context
|
|
283
298
|
* @returns {void}
|
|
@@ -293,6 +308,7 @@ class Dependency {
|
|
|
293
308
|
}
|
|
294
309
|
|
|
295
310
|
/**
|
|
311
|
+
* Gets module evaluation side effects state.
|
|
296
312
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
297
313
|
* @returns {ConnectionState} how this dependency connects the module to referencing modules
|
|
298
314
|
*/
|
|
@@ -301,6 +317,7 @@ class Dependency {
|
|
|
301
317
|
}
|
|
302
318
|
|
|
303
319
|
/**
|
|
320
|
+
* Creates an ignored module.
|
|
304
321
|
* @param {string} context context directory
|
|
305
322
|
* @returns {Module} ignored module
|
|
306
323
|
*/
|
|
@@ -309,6 +326,15 @@ class Dependency {
|
|
|
309
326
|
}
|
|
310
327
|
|
|
311
328
|
/**
|
|
329
|
+
* Returns true if this dependency can be concatenated
|
|
330
|
+
* @returns {boolean} true if this dependency can be concatenated
|
|
331
|
+
*/
|
|
332
|
+
canConcatenate() {
|
|
333
|
+
return false;
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
/**
|
|
337
|
+
* Serializes this instance into the provided serializer context.
|
|
312
338
|
* @param {ObjectSerializerContext} context context
|
|
313
339
|
*/
|
|
314
340
|
serialize({ write }) {
|
|
@@ -323,6 +349,7 @@ class Dependency {
|
|
|
323
349
|
}
|
|
324
350
|
|
|
325
351
|
/**
|
|
352
|
+
* Restores this instance from the provided deserializer context.
|
|
326
353
|
* @param {ObjectDeserializerContext} context context
|
|
327
354
|
*/
|
|
328
355
|
deserialize({ read }) {
|
|
@@ -345,6 +372,7 @@ Dependency.EXPORTS_OBJECT_REFERENCED = [[]];
|
|
|
345
372
|
// TODO remove in webpack 6
|
|
346
373
|
Object.defineProperty(Dependency.prototype, "module", {
|
|
347
374
|
/**
|
|
375
|
+
* Returns throws.
|
|
348
376
|
* @deprecated
|
|
349
377
|
* @returns {EXPECTED_ANY} throws
|
|
350
378
|
*/
|
|
@@ -355,6 +383,7 @@ Object.defineProperty(Dependency.prototype, "module", {
|
|
|
355
383
|
},
|
|
356
384
|
|
|
357
385
|
/**
|
|
386
|
+
* Updates module.
|
|
358
387
|
* @deprecated
|
|
359
388
|
* @returns {never} throws
|
|
360
389
|
*/
|
|
@@ -366,15 +395,30 @@ Object.defineProperty(Dependency.prototype, "module", {
|
|
|
366
395
|
});
|
|
367
396
|
|
|
368
397
|
/**
|
|
398
|
+
* Returns true if the dependency is a low priority dependency.
|
|
369
399
|
* @param {Dependency} dependency dep
|
|
370
400
|
* @returns {boolean} true if the dependency is a low priority dependency
|
|
371
401
|
*/
|
|
372
402
|
Dependency.isLowPriorityDependency = (dependency) =>
|
|
373
403
|
/** @type {ModuleDependency} */ (dependency).sourceOrder === Infinity;
|
|
374
404
|
|
|
405
|
+
// TODO in webpack 6, call canConcatenate() directly on the dependency instance instead of using this static method.
|
|
406
|
+
/**
|
|
407
|
+
* Returns true if the dependency can be concatenated (scope hoisting).
|
|
408
|
+
* @param {Dependency} dependency dep
|
|
409
|
+
* @returns {boolean} true if this dependency supports concatenation
|
|
410
|
+
*/
|
|
411
|
+
Dependency.canConcatenate = (dependency) => {
|
|
412
|
+
if (typeof dependency.canConcatenate === "function") {
|
|
413
|
+
return dependency.canConcatenate();
|
|
414
|
+
}
|
|
415
|
+
return false;
|
|
416
|
+
};
|
|
417
|
+
|
|
375
418
|
// TODO remove in webpack 6
|
|
376
419
|
Object.defineProperty(Dependency.prototype, "disconnect", {
|
|
377
420
|
/**
|
|
421
|
+
* Returns throws.
|
|
378
422
|
* @deprecated
|
|
379
423
|
* @returns {EXPECTED_ANY} throws
|
|
380
424
|
*/
|
|
@@ -19,11 +19,13 @@
|
|
|
19
19
|
/** @typedef {import("./RuntimeTemplate")} RuntimeTemplate */
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
+
* Defines the init fragment type used by this module.
|
|
22
23
|
* @template T
|
|
23
24
|
* @typedef {import("./InitFragment")<T>} InitFragment
|
|
24
25
|
*/
|
|
25
26
|
|
|
26
27
|
/**
|
|
28
|
+
* Defines the dependency template context type used by this module.
|
|
27
29
|
* @typedef {object} DependencyTemplateContext
|
|
28
30
|
* @property {RuntimeTemplate} runtimeTemplate the runtime template
|
|
29
31
|
* @property {DependencyTemplates} dependencyTemplates the dependency templates
|
|
@@ -39,15 +41,18 @@
|
|
|
39
41
|
*/
|
|
40
42
|
|
|
41
43
|
/**
|
|
44
|
+
* Defines the css dependency template context extras type used by this module.
|
|
42
45
|
* @typedef {object} CssDependencyTemplateContextExtras
|
|
43
46
|
* @property {CssData} cssData the css exports data
|
|
44
47
|
* @property {string} type the css exports data
|
|
45
48
|
*/
|
|
46
49
|
|
|
47
50
|
/**
|
|
51
|
+
* Defines the css data type used by this module.
|
|
48
52
|
* @typedef {object} CssData
|
|
49
53
|
* @property {boolean} esModule whether export __esModule
|
|
50
54
|
* @property {Map<string, string>} exports the css exports
|
|
55
|
+
* @property {Map<string, { line: number, column: number }>=} exportLocs source position (line is 1-based, column is 0-based) of each export's defining identifier in the original CSS, used to emit fine-grained JS-to-CSS source mappings
|
|
51
56
|
*/
|
|
52
57
|
|
|
53
58
|
/** @typedef {DependencyTemplateContext & CssDependencyTemplateContextExtras} CssDependencyTemplateContext */
|
|
@@ -55,6 +60,7 @@
|
|
|
55
60
|
class DependencyTemplate {
|
|
56
61
|
/* istanbul ignore next */
|
|
57
62
|
/**
|
|
63
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
58
64
|
* @abstract
|
|
59
65
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
60
66
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
@@ -62,7 +68,7 @@ class DependencyTemplate {
|
|
|
62
68
|
* @returns {void}
|
|
63
69
|
*/
|
|
64
70
|
apply(dependency, source, templateContext) {
|
|
65
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
71
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
66
72
|
|
|
67
73
|
throw new AbstractMethodError();
|
|
68
74
|
}
|
|
@@ -14,6 +14,7 @@ const createHash = require("./util/createHash");
|
|
|
14
14
|
|
|
15
15
|
class DependencyTemplates {
|
|
16
16
|
/**
|
|
17
|
+
* Creates an instance of DependencyTemplates.
|
|
17
18
|
* @param {HashFunction} hashFunction the hash function to use
|
|
18
19
|
*/
|
|
19
20
|
constructor(hashFunction = DEFAULTS.HASH_FUNCTION) {
|
|
@@ -26,6 +27,7 @@ class DependencyTemplates {
|
|
|
26
27
|
}
|
|
27
28
|
|
|
28
29
|
/**
|
|
30
|
+
* Returns template for this dependency.
|
|
29
31
|
* @param {DependencyConstructor} dependency Constructor of Dependency
|
|
30
32
|
* @returns {DependencyTemplate | undefined} template for this dependency
|
|
31
33
|
*/
|
|
@@ -34,6 +36,7 @@ class DependencyTemplates {
|
|
|
34
36
|
}
|
|
35
37
|
|
|
36
38
|
/**
|
|
39
|
+
* Updates value using the provided dependency.
|
|
37
40
|
* @param {DependencyConstructor} dependency Constructor of Dependency
|
|
38
41
|
* @param {DependencyTemplate} dependencyTemplate template for this dependency
|
|
39
42
|
* @returns {void}
|
|
@@ -43,6 +46,7 @@ class DependencyTemplates {
|
|
|
43
46
|
}
|
|
44
47
|
|
|
45
48
|
/**
|
|
49
|
+
* Updates the hash with the data contributed by this instance.
|
|
46
50
|
* @param {string} part additional hash contributor
|
|
47
51
|
* @returns {void}
|
|
48
52
|
*/
|
package/lib/DotenvPlugin.js
CHANGED
|
@@ -214,6 +214,7 @@ const envToDefinitions = (env) => {
|
|
|
214
214
|
|
|
215
215
|
class DotenvPlugin {
|
|
216
216
|
/**
|
|
217
|
+
* Creates an instance of DotenvPlugin.
|
|
217
218
|
* @param {DotenvPluginOptions=} options options object
|
|
218
219
|
*/
|
|
219
220
|
constructor(options = {}) {
|
|
@@ -222,6 +223,7 @@ class DotenvPlugin {
|
|
|
222
223
|
}
|
|
223
224
|
|
|
224
225
|
/**
|
|
226
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
225
227
|
* @param {Compiler} compiler the compiler instance
|
|
226
228
|
* @returns {void}
|
|
227
229
|
*/
|
|
@@ -355,6 +357,7 @@ class DotenvPlugin {
|
|
|
355
357
|
}
|
|
356
358
|
|
|
357
359
|
/**
|
|
360
|
+
* Loads the provided compiler.
|
|
358
361
|
* @private
|
|
359
362
|
* @param {Compiler} compiler compiler
|
|
360
363
|
* @param {ItemCacheFacade} itemCache item cache facade
|
|
@@ -21,6 +21,7 @@ const PLUGIN_NAME = "DynamicEntryPlugin";
|
|
|
21
21
|
|
|
22
22
|
class DynamicEntryPlugin {
|
|
23
23
|
/**
|
|
24
|
+
* Creates an instance of DynamicEntryPlugin.
|
|
24
25
|
* @param {string} context the context path
|
|
25
26
|
* @param {EntryDynamic} entry the entry value
|
|
26
27
|
*/
|
|
@@ -32,7 +33,7 @@ class DynamicEntryPlugin {
|
|
|
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
|
*/
|
|
@@ -65,6 +66,7 @@ class DynamicEntryPlugin {
|
|
|
65
66
|
promises.push(
|
|
66
67
|
new Promise(
|
|
67
68
|
/**
|
|
69
|
+
* Handles the callback logic for this hook.
|
|
68
70
|
* @param {(value?: undefined) => void} resolve resolve
|
|
69
71
|
* @param {(reason?: Error) => void} reject reject
|
|
70
72
|
*/
|
package/lib/EntryOptionPlugin.js
CHANGED
|
@@ -14,6 +14,7 @@ const PLUGIN_NAME = "EntryOptionPlugin";
|
|
|
14
14
|
|
|
15
15
|
class EntryOptionPlugin {
|
|
16
16
|
/**
|
|
17
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
17
18
|
* @param {Compiler} compiler the compiler instance one is tapping into
|
|
18
19
|
* @returns {void}
|
|
19
20
|
*/
|
|
@@ -25,6 +26,7 @@ class EntryOptionPlugin {
|
|
|
25
26
|
}
|
|
26
27
|
|
|
27
28
|
/**
|
|
29
|
+
* Apply entry option.
|
|
28
30
|
* @param {Compiler} compiler the compiler
|
|
29
31
|
* @param {string} context context directory
|
|
30
32
|
* @param {Entry} entry request
|
|
@@ -56,6 +58,7 @@ class EntryOptionPlugin {
|
|
|
56
58
|
}
|
|
57
59
|
|
|
58
60
|
/**
|
|
61
|
+
* Entry description to options.
|
|
59
62
|
* @param {Compiler} compiler the compiler
|
|
60
63
|
* @param {string} name entry name
|
|
61
64
|
* @param {EntryDescription} desc entry description
|
package/lib/EntryPlugin.js
CHANGED
|
@@ -26,7 +26,7 @@ class EntryPlugin {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
29
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
30
30
|
* @param {Compiler} compiler the compiler instance
|
|
31
31
|
* @returns {void}
|
|
32
32
|
*/
|
|
@@ -52,6 +52,7 @@ class EntryPlugin {
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
/**
|
|
55
|
+
* Creates a dependency.
|
|
55
56
|
* @param {string} entry entry request
|
|
56
57
|
* @param {EntryOptions | string} options entry options (passing string is deprecated)
|
|
57
58
|
* @returns {EntryDependency} the dependency
|
package/lib/Entrypoint.js
CHANGED
|
@@ -44,6 +44,8 @@ class Entrypoint extends ChunkGroup {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
/**
|
|
47
|
+
* Indicates whether this chunk group is loaded as part of the initial page
|
|
48
|
+
* load instead of being created lazily.
|
|
47
49
|
* @returns {boolean} true, when this chunk group will be loaded on initial page load
|
|
48
50
|
*/
|
|
49
51
|
isInitial() {
|
|
@@ -90,6 +92,8 @@ class Entrypoint extends ChunkGroup {
|
|
|
90
92
|
}
|
|
91
93
|
|
|
92
94
|
/**
|
|
95
|
+
* Replaces one member chunk with another while preserving the group's
|
|
96
|
+
* ordering and avoiding duplicates.
|
|
93
97
|
* @param {Chunk} oldChunk chunk to be replaced
|
|
94
98
|
* @param {Chunk} newChunk New chunk that will be replaced with
|
|
95
99
|
* @returns {boolean | undefined} returns true if the replacement was successful
|