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
|
@@ -13,6 +13,7 @@ const ModuleDependencyTemplateAsId = require("./ModuleDependencyTemplateAsId");
|
|
|
13
13
|
|
|
14
14
|
class ImportMetaHotAcceptDependency extends ModuleDependency {
|
|
15
15
|
/**
|
|
16
|
+
* Creates an instance of ImportMetaHotAcceptDependency.
|
|
16
17
|
* @param {string} request the request string
|
|
17
18
|
* @param {Range} range location in source code
|
|
18
19
|
*/
|
|
@@ -13,6 +13,7 @@ const ModuleDependencyTemplateAsId = require("./ModuleDependencyTemplateAsId");
|
|
|
13
13
|
|
|
14
14
|
class ImportMetaHotDeclineDependency extends ModuleDependency {
|
|
15
15
|
/**
|
|
16
|
+
* Creates an instance of ImportMetaHotDeclineDependency.
|
|
16
17
|
* @param {string} request the request string
|
|
17
18
|
* @param {Range} range location in source code
|
|
18
19
|
*/
|
|
@@ -74,6 +74,7 @@ const collectImportMetaEnvDefinitions = (compilation) => {
|
|
|
74
74
|
};
|
|
75
75
|
|
|
76
76
|
/**
|
|
77
|
+
* Defines the import meta plugin hooks type used by this module.
|
|
77
78
|
* @typedef {object} ImportMetaPluginHooks
|
|
78
79
|
* @property {SyncBailHook<[DestructuringAssignmentProperty], string | void>} propertyInDestructuring
|
|
79
80
|
*/
|
|
@@ -83,6 +84,7 @@ const compilationHooksMap = new WeakMap();
|
|
|
83
84
|
|
|
84
85
|
class ImportMetaPlugin {
|
|
85
86
|
/**
|
|
87
|
+
* Returns the attached hooks.
|
|
86
88
|
* @param {Compilation} compilation the compilation
|
|
87
89
|
* @returns {ImportMetaPluginHooks} the attached hooks
|
|
88
90
|
*/
|
|
@@ -103,6 +105,7 @@ class ImportMetaPlugin {
|
|
|
103
105
|
}
|
|
104
106
|
|
|
105
107
|
/**
|
|
108
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
106
109
|
* @param {Compiler} compiler compiler
|
|
107
110
|
*/
|
|
108
111
|
apply(compiler) {
|
|
@@ -117,11 +120,13 @@ class ImportMetaPlugin {
|
|
|
117
120
|
);
|
|
118
121
|
|
|
119
122
|
/**
|
|
123
|
+
* Returns file url.
|
|
120
124
|
* @param {NormalModule} module module
|
|
121
125
|
* @returns {string} file url
|
|
122
126
|
*/
|
|
123
127
|
const getUrl = (module) => pathToFileURL(module.resource).toString();
|
|
124
128
|
/**
|
|
129
|
+
* Processes the provided parser.
|
|
125
130
|
* @param {Parser} parser parser parser
|
|
126
131
|
* @param {JavascriptParserOptions} parserOptions parserOptions
|
|
127
132
|
* @returns {void}
|
|
@@ -154,6 +159,7 @@ class ImportMetaPlugin {
|
|
|
154
159
|
JSON.stringify(getUrl(parser.state.module));
|
|
155
160
|
const importMetaWebpackVersion = () => JSON.stringify(webpackVersion);
|
|
156
161
|
/**
|
|
162
|
+
* Import meta unknown property.
|
|
157
163
|
* @param {Members} members members
|
|
158
164
|
* @returns {string} error message
|
|
159
165
|
*/
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
const AsyncDependenciesBlock = require("../AsyncDependenciesBlock");
|
|
9
|
-
const CommentCompilationWarning = require("../CommentCompilationWarning");
|
|
10
|
-
const UnsupportedFeatureWarning = require("../UnsupportedFeatureWarning");
|
|
9
|
+
const CommentCompilationWarning = require("../errors/CommentCompilationWarning");
|
|
10
|
+
const UnsupportedFeatureWarning = require("../errors/UnsupportedFeatureWarning");
|
|
11
11
|
const {
|
|
12
12
|
VariableInfo,
|
|
13
13
|
getImportAttributes
|
|
@@ -47,6 +47,7 @@ const parserStateMap = new WeakMap();
|
|
|
47
47
|
const dynamicImportTag = Symbol("import()");
|
|
48
48
|
|
|
49
49
|
/**
|
|
50
|
+
* Returns import parser plugin state.
|
|
50
51
|
* @param {JavascriptParser} parser javascript parser
|
|
51
52
|
* @returns {State} import parser plugin state
|
|
52
53
|
*/
|
|
@@ -58,6 +59,7 @@ function getState(parser) {
|
|
|
58
59
|
}
|
|
59
60
|
|
|
60
61
|
/**
|
|
62
|
+
* Tag dynamic import referenced.
|
|
61
63
|
* @param {JavascriptParser} parser javascript parser
|
|
62
64
|
* @param {ImportExpression} importCall import expression
|
|
63
65
|
* @param {string} variableName variable name
|
|
@@ -78,6 +80,7 @@ function tagDynamicImportReferenced(parser, importCall, variableName) {
|
|
|
78
80
|
}
|
|
79
81
|
|
|
80
82
|
/**
|
|
83
|
+
* Gets fulfilled callback namespace obj.
|
|
81
84
|
* @param {CallExpression} importThen import().then() call
|
|
82
85
|
* @returns {Identifier | ObjectPattern | undefined} the dynamic imported namespace obj
|
|
83
86
|
*/
|
|
@@ -96,6 +99,7 @@ function getFulfilledCallbackNamespaceObj(importThen) {
|
|
|
96
99
|
}
|
|
97
100
|
|
|
98
101
|
/**
|
|
102
|
+
* Walk import then fulfilled callback.
|
|
99
103
|
* @param {JavascriptParser} parser javascript parser
|
|
100
104
|
* @param {ImportExpression} importCall import expression
|
|
101
105
|
* @param {ArrowFunctionExpression | FunctionExpression} fulfilledCallback the fulfilled callback
|
|
@@ -157,6 +161,7 @@ function walkImportThenFulfilledCallback(
|
|
|
157
161
|
}
|
|
158
162
|
|
|
159
163
|
/**
|
|
164
|
+
* Exports from enumerable.
|
|
160
165
|
* @template T
|
|
161
166
|
* @param {Iterable<T>} enumerable enumerable
|
|
162
167
|
* @returns {T[][]} array of array
|
|
@@ -168,6 +173,7 @@ const PLUGIN_NAME = "ImportParserPlugin";
|
|
|
168
173
|
|
|
169
174
|
class ImportParserPlugin {
|
|
170
175
|
/**
|
|
176
|
+
* Creates an instance of ImportParserPlugin.
|
|
171
177
|
* @param {JavascriptParserOptions} options options
|
|
172
178
|
*/
|
|
173
179
|
constructor(options) {
|
|
@@ -175,6 +181,7 @@ class ImportParserPlugin {
|
|
|
175
181
|
}
|
|
176
182
|
|
|
177
183
|
/**
|
|
184
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
178
185
|
* @param {JavascriptParser} parser the parser
|
|
179
186
|
* @returns {void}
|
|
180
187
|
*/
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
const memoize = require("../util/memoize");
|
|
9
9
|
|
|
10
10
|
const getCommentCompilationWarning = memoize(() =>
|
|
11
|
-
require("../CommentCompilationWarning")
|
|
11
|
+
require("../errors/CommentCompilationWarning")
|
|
12
12
|
);
|
|
13
13
|
|
|
14
14
|
/** @typedef {import("../javascript/JavascriptParser")} JavascriptParser */
|
|
@@ -28,6 +28,7 @@ const ImportPhase = Object.freeze({
|
|
|
28
28
|
/** @typedef {"defer" | "source" | "evaluation"} ImportPhaseName */
|
|
29
29
|
|
|
30
30
|
/**
|
|
31
|
+
* Defines the import phase utils type used by this module.
|
|
31
32
|
* @typedef {object} ImportPhaseUtils
|
|
32
33
|
* @property {(phase: ImportPhaseType | undefined) => boolean} isEvaluation true if phase is evaluation
|
|
33
34
|
* @property {(phase: ImportPhaseType | undefined) => boolean} isDefer true if phase is defer
|
|
@@ -59,10 +60,12 @@ const ImportPhaseUtils = {
|
|
|
59
60
|
};
|
|
60
61
|
|
|
61
62
|
/**
|
|
63
|
+
* Defines the get comment options type used by this module.
|
|
62
64
|
* @typedef {() => Record<string, EXPECTED_ANY> | null} GetCommentOptions
|
|
63
65
|
*/
|
|
64
66
|
|
|
65
67
|
/**
|
|
68
|
+
* Defines the get import phase callback.
|
|
66
69
|
* @callback GetImportPhase
|
|
67
70
|
* @param {JavascriptParser} parser parser
|
|
68
71
|
* @param {ExportNamedDeclaration | ExportAllDeclaration | ImportDeclaration | ImportExpression} node node
|
|
@@ -71,8 +74,9 @@ const ImportPhaseUtils = {
|
|
|
71
74
|
*/
|
|
72
75
|
|
|
73
76
|
/**
|
|
74
|
-
*
|
|
75
|
-
* @param {boolean=}
|
|
77
|
+
* Creates an import phase resolver.
|
|
78
|
+
* @param {boolean=} enableDeferPhase enable defer phase detection
|
|
79
|
+
* @param {boolean=} enableSourcePhase enable source phase detection
|
|
76
80
|
* @returns {GetImportPhase} evaluates the import phase for ast node
|
|
77
81
|
*/
|
|
78
82
|
function createGetImportPhase(enableDeferPhase, enableSourcePhase) {
|
|
@@ -24,7 +24,7 @@ const PLUGIN_NAME = "ImportPlugin";
|
|
|
24
24
|
|
|
25
25
|
class ImportPlugin {
|
|
26
26
|
/**
|
|
27
|
-
*
|
|
27
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
28
28
|
* @param {Compiler} compiler the compiler instance
|
|
29
29
|
* @returns {void}
|
|
30
30
|
*/
|
|
@@ -69,6 +69,7 @@ class ImportPlugin {
|
|
|
69
69
|
);
|
|
70
70
|
|
|
71
71
|
/**
|
|
72
|
+
* Handles the hook callback for this code path.
|
|
72
73
|
* @param {Parser} parser parser parser
|
|
73
74
|
* @param {JavascriptParserOptions} parserOptions parserOptions
|
|
74
75
|
* @returns {void}
|
|
@@ -20,6 +20,7 @@ const ImportDependency = require("./ImportDependency");
|
|
|
20
20
|
|
|
21
21
|
class ImportWeakDependency extends ImportDependency {
|
|
22
22
|
/**
|
|
23
|
+
* Creates an instance of ImportWeakDependency.
|
|
23
24
|
* @param {string} request the request
|
|
24
25
|
* @param {Range} range expression range
|
|
25
26
|
* @param {RawReferencedExports | null} referencedExports list of referenced exports
|
|
@@ -45,6 +46,7 @@ ImportWeakDependency.Template = class ImportDependencyTemplate extends (
|
|
|
45
46
|
ImportDependency.Template
|
|
46
47
|
) {
|
|
47
48
|
/**
|
|
49
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
48
50
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
49
51
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
50
52
|
* @param {DependencyTemplateContext} templateContext the context object
|
|
@@ -19,6 +19,7 @@ const NullDependency = require("./NullDependency");
|
|
|
19
19
|
/** @typedef {import("../util/Hash")} Hash */
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
+
* Defines the get exports from data fn callback.
|
|
22
23
|
* @callback GetExportsFromDataFn
|
|
23
24
|
* @param {JsonValue} data raw json data
|
|
24
25
|
* @param {number=} curDepth current depth
|
|
@@ -26,6 +27,7 @@ const NullDependency = require("./NullDependency");
|
|
|
26
27
|
*/
|
|
27
28
|
|
|
28
29
|
/**
|
|
30
|
+
* Gets exports with depth.
|
|
29
31
|
* @param {number} exportsDepth exportsDepth
|
|
30
32
|
* @returns {GetExportsFromDataFn} value
|
|
31
33
|
*/
|
|
@@ -71,6 +73,7 @@ const getExportsWithDepth = (exportsDepth) =>
|
|
|
71
73
|
|
|
72
74
|
class JsonExportsDependency extends NullDependency {
|
|
73
75
|
/**
|
|
76
|
+
* Creates an instance of JsonExportsDependency.
|
|
74
77
|
* @param {JsonData} data json data
|
|
75
78
|
* @param {number} exportsDepth the depth of json exports to analyze
|
|
76
79
|
*/
|
|
@@ -99,7 +102,7 @@ class JsonExportsDependency extends NullDependency {
|
|
|
99
102
|
}
|
|
100
103
|
|
|
101
104
|
/**
|
|
102
|
-
*
|
|
105
|
+
* Updates the hash with the data contributed by this instance.
|
|
103
106
|
* @param {Hash} hash hash to be updated
|
|
104
107
|
* @param {UpdateHashContext} context context
|
|
105
108
|
* @returns {void}
|
|
@@ -109,6 +112,7 @@ class JsonExportsDependency extends NullDependency {
|
|
|
109
112
|
}
|
|
110
113
|
|
|
111
114
|
/**
|
|
115
|
+
* Serializes this instance into the provided serializer context.
|
|
112
116
|
* @param {ObjectSerializerContext} context context
|
|
113
117
|
*/
|
|
114
118
|
serialize(context) {
|
|
@@ -119,6 +123,7 @@ class JsonExportsDependency extends NullDependency {
|
|
|
119
123
|
}
|
|
120
124
|
|
|
121
125
|
/**
|
|
126
|
+
* Restores this instance from the provided deserializer context.
|
|
122
127
|
* @param {ObjectDeserializerContext} context context
|
|
123
128
|
*/
|
|
124
129
|
deserialize(context) {
|
|
@@ -12,6 +12,7 @@ const ModuleDependency = require("./ModuleDependency");
|
|
|
12
12
|
|
|
13
13
|
class LoaderDependency extends ModuleDependency {
|
|
14
14
|
/**
|
|
15
|
+
* Creates an instance of LoaderDependency.
|
|
15
16
|
* @param {string} request request string
|
|
16
17
|
*/
|
|
17
18
|
constructor(request) {
|
|
@@ -27,6 +28,7 @@ class LoaderDependency extends ModuleDependency {
|
|
|
27
28
|
}
|
|
28
29
|
|
|
29
30
|
/**
|
|
31
|
+
* Returns function to determine if the connection is active.
|
|
30
32
|
* @param {ModuleGraph} moduleGraph module graph
|
|
31
33
|
* @returns {null | false | GetConditionFn} function to determine if the connection is active
|
|
32
34
|
*/
|
|
@@ -12,6 +12,7 @@ const ModuleDependency = require("./ModuleDependency");
|
|
|
12
12
|
|
|
13
13
|
class LoaderImportDependency extends ModuleDependency {
|
|
14
14
|
/**
|
|
15
|
+
* Creates an instance of LoaderImportDependency.
|
|
15
16
|
* @param {string} request request string
|
|
16
17
|
*/
|
|
17
18
|
constructor(request) {
|
|
@@ -28,6 +29,7 @@ class LoaderImportDependency extends ModuleDependency {
|
|
|
28
29
|
}
|
|
29
30
|
|
|
30
31
|
/**
|
|
32
|
+
* Returns function to determine if the connection is active.
|
|
31
33
|
* @param {ModuleGraph} moduleGraph module graph
|
|
32
34
|
* @returns {null | false | GetConditionFn} function to determine if the connection is active
|
|
33
35
|
*/
|
|
@@ -19,6 +19,7 @@ const LoaderImportDependency = require("./LoaderImportDependency");
|
|
|
19
19
|
/** @typedef {import("../Module").FileSystemDependencies} FileSystemDependencies */
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
+
* Defines the import module callback callback.
|
|
22
23
|
* @callback ImportModuleCallback
|
|
23
24
|
* @param {(Error | null)=} err error object
|
|
24
25
|
* @param {ExecuteModuleExports=} exports exports of the evaluated module
|
|
@@ -26,6 +27,7 @@ const LoaderImportDependency = require("./LoaderImportDependency");
|
|
|
26
27
|
*/
|
|
27
28
|
|
|
28
29
|
/**
|
|
30
|
+
* Defines the import module options type used by this module.
|
|
29
31
|
* @typedef {object} ImportModuleOptions
|
|
30
32
|
* @property {string=} layer the target layer
|
|
31
33
|
* @property {string=} publicPath the target public path
|
|
@@ -36,7 +38,7 @@ const PLUGIN_NAME = "LoaderPlugin";
|
|
|
36
38
|
|
|
37
39
|
class LoaderPlugin {
|
|
38
40
|
/**
|
|
39
|
-
*
|
|
41
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
40
42
|
* @param {Compiler} compiler the compiler instance
|
|
41
43
|
* @returns {void}
|
|
42
44
|
*/
|
|
@@ -162,6 +164,7 @@ class LoaderPlugin {
|
|
|
162
164
|
};
|
|
163
165
|
|
|
164
166
|
/**
|
|
167
|
+
* Processes the provided request.
|
|
165
168
|
* @param {string} request the request string to load the module from
|
|
166
169
|
* @param {ImportModuleOptions} options options
|
|
167
170
|
* @param {ImportModuleCallback} callback callback returning the exports
|
|
@@ -12,6 +12,7 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
12
12
|
|
|
13
13
|
class LocalModule {
|
|
14
14
|
/**
|
|
15
|
+
* Creates an instance of LocalModule.
|
|
15
16
|
* @param {string} name name
|
|
16
17
|
* @param {number} idx index
|
|
17
18
|
*/
|
|
@@ -26,6 +27,7 @@ class LocalModule {
|
|
|
26
27
|
}
|
|
27
28
|
|
|
28
29
|
/**
|
|
30
|
+
* Returns variable name.
|
|
29
31
|
* @returns {string} variable name
|
|
30
32
|
*/
|
|
31
33
|
variableName() {
|
|
@@ -33,6 +35,7 @@ class LocalModule {
|
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
/**
|
|
38
|
+
* Serializes this instance into the provided serializer context.
|
|
36
39
|
* @param {ObjectSerializerContext} context context
|
|
37
40
|
*/
|
|
38
41
|
serialize(context) {
|
|
@@ -44,6 +47,7 @@ class LocalModule {
|
|
|
44
47
|
}
|
|
45
48
|
|
|
46
49
|
/**
|
|
50
|
+
* Restores this instance from the provided deserializer context.
|
|
47
51
|
* @param {ObjectDeserializerContext} context context
|
|
48
52
|
*/
|
|
49
53
|
deserialize(context) {
|
|
@@ -18,6 +18,7 @@ const NullDependency = require("./NullDependency");
|
|
|
18
18
|
|
|
19
19
|
class LocalModuleDependency extends NullDependency {
|
|
20
20
|
/**
|
|
21
|
+
* Creates an instance of LocalModuleDependency.
|
|
21
22
|
* @param {LocalModule} localModule local module
|
|
22
23
|
* @param {Range | undefined} range range
|
|
23
24
|
* @param {boolean} callNew true, when the local module should be called with new
|
|
@@ -31,6 +32,7 @@ class LocalModuleDependency extends NullDependency {
|
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
/**
|
|
35
|
+
* Serializes this instance into the provided serializer context.
|
|
34
36
|
* @param {ObjectSerializerContext} context context
|
|
35
37
|
*/
|
|
36
38
|
serialize(context) {
|
|
@@ -44,6 +46,7 @@ class LocalModuleDependency extends NullDependency {
|
|
|
44
46
|
}
|
|
45
47
|
|
|
46
48
|
/**
|
|
49
|
+
* Restores this instance from the provided deserializer context.
|
|
47
50
|
* @param {ObjectDeserializerContext} context context
|
|
48
51
|
*/
|
|
49
52
|
deserialize(context) {
|
|
@@ -66,6 +69,7 @@ LocalModuleDependency.Template = class LocalModuleDependencyTemplate extends (
|
|
|
66
69
|
NullDependency.Template
|
|
67
70
|
) {
|
|
68
71
|
/**
|
|
72
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
69
73
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
70
74
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
71
75
|
* @param {DependencyTemplateContext} templateContext the context object
|
|
@@ -10,6 +10,7 @@ const LocalModule = require("./LocalModule");
|
|
|
10
10
|
/** @typedef {import("../javascript/JavascriptParser").JavascriptParserState} JavascriptParserState */
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
+
* Returns resolved module.
|
|
13
14
|
* @param {string} parent parent module
|
|
14
15
|
* @param {string} mod module to resolve
|
|
15
16
|
* @returns {string} resolved module
|
|
@@ -34,6 +35,7 @@ const lookup = (parent, mod) => {
|
|
|
34
35
|
};
|
|
35
36
|
|
|
36
37
|
/**
|
|
38
|
+
* Returns local module.
|
|
37
39
|
* @param {JavascriptParserState} state parser state
|
|
38
40
|
* @param {string} name name
|
|
39
41
|
* @returns {LocalModule} local module
|
|
@@ -48,6 +50,7 @@ module.exports.addLocalModule = (state, name) => {
|
|
|
48
50
|
};
|
|
49
51
|
|
|
50
52
|
/**
|
|
53
|
+
* Returns local module or null.
|
|
51
54
|
* @param {JavascriptParserState} state parser state
|
|
52
55
|
* @param {string} name name
|
|
53
56
|
* @param {string=} namedModule named module
|
|
@@ -23,6 +23,7 @@ const NullDependency = require("./NullDependency");
|
|
|
23
23
|
|
|
24
24
|
class ModuleDecoratorDependency extends NullDependency {
|
|
25
25
|
/**
|
|
26
|
+
* Creates an instance of ModuleDecoratorDependency.
|
|
26
27
|
* @param {string} decorator the decorator requirement
|
|
27
28
|
* @param {boolean} allowExportsAccess allow to access exports from module
|
|
28
29
|
*/
|
|
@@ -35,6 +36,7 @@ class ModuleDecoratorDependency extends NullDependency {
|
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
/**
|
|
39
|
+
* Returns a display name for the type of dependency.
|
|
38
40
|
* @returns {string} a display name for the type of dependency
|
|
39
41
|
*/
|
|
40
42
|
get type() {
|
|
@@ -46,6 +48,7 @@ class ModuleDecoratorDependency extends NullDependency {
|
|
|
46
48
|
}
|
|
47
49
|
|
|
48
50
|
/**
|
|
51
|
+
* Returns an identifier to merge equal requests.
|
|
49
52
|
* @returns {string | null} an identifier to merge equal requests
|
|
50
53
|
*/
|
|
51
54
|
getResourceIdentifier() {
|
|
@@ -65,7 +68,7 @@ class ModuleDecoratorDependency extends NullDependency {
|
|
|
65
68
|
}
|
|
66
69
|
|
|
67
70
|
/**
|
|
68
|
-
*
|
|
71
|
+
* Updates the hash with the data contributed by this instance.
|
|
69
72
|
* @param {Hash} hash hash to be updated
|
|
70
73
|
* @param {UpdateHashContext} context context
|
|
71
74
|
* @returns {void}
|
|
@@ -78,6 +81,7 @@ class ModuleDecoratorDependency extends NullDependency {
|
|
|
78
81
|
}
|
|
79
82
|
|
|
80
83
|
/**
|
|
84
|
+
* Serializes this instance into the provided serializer context.
|
|
81
85
|
* @param {ObjectSerializerContext} context context
|
|
82
86
|
*/
|
|
83
87
|
serialize(context) {
|
|
@@ -88,6 +92,7 @@ class ModuleDecoratorDependency extends NullDependency {
|
|
|
88
92
|
}
|
|
89
93
|
|
|
90
94
|
/**
|
|
95
|
+
* Restores this instance from the provided deserializer context.
|
|
91
96
|
* @param {ObjectDeserializerContext} context context
|
|
92
97
|
*/
|
|
93
98
|
deserialize(context) {
|
|
@@ -107,6 +112,7 @@ ModuleDecoratorDependency.Template = class ModuleDecoratorDependencyTemplate ext
|
|
|
107
112
|
NullDependency.Template
|
|
108
113
|
) {
|
|
109
114
|
/**
|
|
115
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
110
116
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
111
117
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
112
118
|
* @param {DependencyTemplateContext} templateContext the context object
|
|
@@ -17,6 +17,7 @@ const DependencyTemplate = require("../DependencyTemplate");
|
|
|
17
17
|
|
|
18
18
|
class ModuleDependency extends Dependency {
|
|
19
19
|
/**
|
|
20
|
+
* Creates an instance of ModuleDependency.
|
|
20
21
|
* @param {string} request request path which needs resolving
|
|
21
22
|
* @param {number=} sourceOrder source order
|
|
22
23
|
*/
|
|
@@ -32,6 +33,7 @@ class ModuleDependency extends Dependency {
|
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
/**
|
|
36
|
+
* Returns a request context.
|
|
35
37
|
* @returns {string | undefined} a request context
|
|
36
38
|
*/
|
|
37
39
|
getContext() {
|
|
@@ -39,6 +41,7 @@ class ModuleDependency extends Dependency {
|
|
|
39
41
|
}
|
|
40
42
|
|
|
41
43
|
/**
|
|
44
|
+
* Returns an identifier to merge equal requests.
|
|
42
45
|
* @returns {string | null} an identifier to merge equal requests
|
|
43
46
|
*/
|
|
44
47
|
getResourceIdentifier() {
|
|
@@ -46,6 +49,7 @@ class ModuleDependency extends Dependency {
|
|
|
46
49
|
}
|
|
47
50
|
|
|
48
51
|
/**
|
|
52
|
+
* Could affect referencing module.
|
|
49
53
|
* @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
|
|
50
54
|
*/
|
|
51
55
|
couldAffectReferencingModule() {
|
|
@@ -53,6 +57,7 @@ class ModuleDependency extends Dependency {
|
|
|
53
57
|
}
|
|
54
58
|
|
|
55
59
|
/**
|
|
60
|
+
* Creates an ignored module.
|
|
56
61
|
* @param {string} context context directory
|
|
57
62
|
* @returns {Module} ignored module
|
|
58
63
|
*/
|
|
@@ -69,6 +74,7 @@ class ModuleDependency extends Dependency {
|
|
|
69
74
|
}
|
|
70
75
|
|
|
71
76
|
/**
|
|
77
|
+
* Serializes this instance into the provided serializer context.
|
|
72
78
|
* @param {ObjectSerializerContext} context context
|
|
73
79
|
*/
|
|
74
80
|
serialize(context) {
|
|
@@ -82,6 +88,7 @@ class ModuleDependency extends Dependency {
|
|
|
82
88
|
}
|
|
83
89
|
|
|
84
90
|
/**
|
|
91
|
+
* Restores this instance from the provided deserializer context.
|
|
85
92
|
* @param {ObjectDeserializerContext} context context
|
|
86
93
|
*/
|
|
87
94
|
deserialize(context) {
|
|
@@ -14,6 +14,7 @@ const ModuleDependency = require("./ModuleDependency");
|
|
|
14
14
|
|
|
15
15
|
class ModuleDependencyTemplateAsId extends ModuleDependency.Template {
|
|
16
16
|
/**
|
|
17
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
17
18
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
18
19
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
19
20
|
* @param {DependencyTemplateContext} templateContext the context object
|
|
@@ -13,6 +13,7 @@ const ModuleDependency = require("./ModuleDependency");
|
|
|
13
13
|
|
|
14
14
|
class ModuleDependencyTemplateAsRequireId extends ModuleDependency.Template {
|
|
15
15
|
/**
|
|
16
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
16
17
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
17
18
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
18
19
|
* @param {DependencyTemplateContext} templateContext the context object
|
|
@@ -13,6 +13,7 @@ const ModuleDependencyTemplateAsId = require("./ModuleDependencyTemplateAsId");
|
|
|
13
13
|
|
|
14
14
|
class ModuleHotAcceptDependency extends ModuleDependency {
|
|
15
15
|
/**
|
|
16
|
+
* Creates an instance of ModuleHotAcceptDependency.
|
|
16
17
|
* @param {string} request the request string
|
|
17
18
|
* @param {Range} range location in source code
|
|
18
19
|
*/
|
|
@@ -13,6 +13,7 @@ const ModuleDependencyTemplateAsId = require("./ModuleDependencyTemplateAsId");
|
|
|
13
13
|
|
|
14
14
|
class ModuleHotDeclineDependency extends ModuleDependency {
|
|
15
15
|
/**
|
|
16
|
+
* Creates an instance of ModuleHotDeclineDependency.
|
|
16
17
|
* @param {string} request the request string
|
|
17
18
|
* @param {Range} range location in source code
|
|
18
19
|
*/
|
|
@@ -19,6 +19,7 @@ const NullDependency = require("./NullDependency");
|
|
|
19
19
|
*/
|
|
20
20
|
class ModuleInitFragmentDependency extends NullDependency {
|
|
21
21
|
/**
|
|
22
|
+
* Creates an instance of ModuleInitFragmentDependency.
|
|
22
23
|
* @param {string} initCode the initialization code
|
|
23
24
|
* @param {string[]} runtimeRequirements runtime requirements
|
|
24
25
|
* @param {string=} key unique key to avoid emitting the same initialization code twice
|
|
@@ -31,6 +32,7 @@ class ModuleInitFragmentDependency extends NullDependency {
|
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
/**
|
|
35
|
+
* Serializes this instance into the provided serializer context.
|
|
34
36
|
* @param {ObjectSerializerContext} context context
|
|
35
37
|
*/
|
|
36
38
|
serialize(context) {
|
|
@@ -42,6 +44,7 @@ class ModuleInitFragmentDependency extends NullDependency {
|
|
|
42
44
|
}
|
|
43
45
|
|
|
44
46
|
/**
|
|
47
|
+
* Restores this instance from the provided deserializer context.
|
|
45
48
|
* @param {ObjectDeserializerContext} context context
|
|
46
49
|
*/
|
|
47
50
|
deserialize(context) {
|
|
@@ -62,6 +65,7 @@ ModuleInitFragmentDependency.Template = class ModuleInitFragmentDependencyTempla
|
|
|
62
65
|
NullDependency.Template
|
|
63
66
|
) {
|
|
64
67
|
/**
|
|
68
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
65
69
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
66
70
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
67
71
|
* @param {DependencyTemplateContext} templateContext the context object
|
|
@@ -20,6 +20,7 @@ class NullDependency extends Dependency {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
|
+
* Could affect referencing module.
|
|
23
24
|
* @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
|
|
24
25
|
*/
|
|
25
26
|
couldAffectReferencingModule() {
|
|
@@ -31,6 +32,7 @@ NullDependency.Template = class NullDependencyTemplate extends (
|
|
|
31
32
|
DependencyTemplate
|
|
32
33
|
) {
|
|
33
34
|
/**
|
|
35
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
34
36
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
35
37
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
36
38
|
* @param {DependencyTemplateContext} templateContext the context object
|
|
@@ -24,6 +24,7 @@ const ModuleDependency = require("./ModuleDependency");
|
|
|
24
24
|
/** @typedef {import("../util/runtime").RuntimeSpec} RuntimeSpec */
|
|
25
25
|
|
|
26
26
|
/**
|
|
27
|
+
* Returns the converted path.
|
|
27
28
|
* @param {string[] | null} path the property path array
|
|
28
29
|
* @returns {string} the converted path
|
|
29
30
|
*/
|
|
@@ -34,6 +35,7 @@ const pathToString = (path) =>
|
|
|
34
35
|
|
|
35
36
|
class ProvidedDependency extends ModuleDependency {
|
|
36
37
|
/**
|
|
38
|
+
* Creates an instance of ProvidedDependency.
|
|
37
39
|
* @param {string} request request
|
|
38
40
|
* @param {string} identifier identifier
|
|
39
41
|
* @param {ExportInfoName[]} ids ids
|
|
@@ -69,7 +71,7 @@ class ProvidedDependency extends ModuleDependency {
|
|
|
69
71
|
}
|
|
70
72
|
|
|
71
73
|
/**
|
|
72
|
-
*
|
|
74
|
+
* Updates the hash with the data contributed by this instance.
|
|
73
75
|
* @param {Hash} hash hash to be updated
|
|
74
76
|
* @param {UpdateHashContext} context context
|
|
75
77
|
* @returns {void}
|
|
@@ -82,6 +84,7 @@ class ProvidedDependency extends ModuleDependency {
|
|
|
82
84
|
}
|
|
83
85
|
|
|
84
86
|
/**
|
|
87
|
+
* Serializes this instance into the provided serializer context.
|
|
85
88
|
* @param {ObjectSerializerContext} context context
|
|
86
89
|
*/
|
|
87
90
|
serialize(context) {
|
|
@@ -92,6 +95,7 @@ class ProvidedDependency extends ModuleDependency {
|
|
|
92
95
|
}
|
|
93
96
|
|
|
94
97
|
/**
|
|
98
|
+
* Restores this instance from the provided deserializer context.
|
|
95
99
|
* @param {ObjectDeserializerContext} context context
|
|
96
100
|
*/
|
|
97
101
|
deserialize(context) {
|
|
@@ -109,6 +113,7 @@ makeSerializable(
|
|
|
109
113
|
|
|
110
114
|
class ProvidedDependencyTemplate extends ModuleDependency.Template {
|
|
111
115
|
/**
|
|
116
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
112
117
|
* @param {Dependency} dependency the dependency for which the template should be applied
|
|
113
118
|
* @param {ReplaceSource} source the current replace source which can be modified
|
|
114
119
|
* @param {DependencyTemplateContext} templateContext the context object
|