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
package/lib/NormalModule.js
CHANGED
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
const querystring = require("querystring");
|
|
9
|
-
const parseJson = require("json-parse-even-better-errors");
|
|
10
9
|
const { getContext, runLoaders } = require("loader-runner");
|
|
11
10
|
const {
|
|
12
11
|
AsyncSeriesBailHook,
|
|
@@ -21,18 +20,17 @@ const {
|
|
|
21
20
|
SourceMapSource
|
|
22
21
|
} = require("webpack-sources");
|
|
23
22
|
const Compilation = require("./Compilation");
|
|
24
|
-
const HookWebpackError = require("./HookWebpackError");
|
|
25
23
|
const Module = require("./Module");
|
|
26
|
-
const ModuleBuildError = require("./ModuleBuildError");
|
|
27
|
-
const ModuleError = require("./ModuleError");
|
|
28
24
|
const ModuleGraphConnection = require("./ModuleGraphConnection");
|
|
29
|
-
const ModuleParseError = require("./ModuleParseError");
|
|
30
25
|
const { JAVASCRIPT_MODULE_TYPE_AUTO } = require("./ModuleTypeConstants");
|
|
31
|
-
const ModuleWarning = require("./ModuleWarning");
|
|
32
26
|
const RuntimeGlobals = require("./RuntimeGlobals");
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const
|
|
27
|
+
const HookWebpackError = require("./errors/HookWebpackError");
|
|
28
|
+
const ModuleBuildError = require("./errors/ModuleBuildError");
|
|
29
|
+
const ModuleError = require("./errors/ModuleError");
|
|
30
|
+
const ModuleParseError = require("./errors/ModuleParseError");
|
|
31
|
+
const ModuleWarning = require("./errors/ModuleWarning");
|
|
32
|
+
const NonErrorEmittedError = require("./errors/NonErrorEmittedError");
|
|
33
|
+
const UnhandledSchemeError = require("./errors/UnhandledSchemeError");
|
|
36
34
|
const LazySet = require("./util/LazySet");
|
|
37
35
|
const { isSubset } = require("./util/SetHelpers");
|
|
38
36
|
const { getScheme } = require("./util/URLAbsoluteSpecifier");
|
|
@@ -45,6 +43,7 @@ const {
|
|
|
45
43
|
} = require("./util/comparators");
|
|
46
44
|
const createHash = require("./util/createHash");
|
|
47
45
|
const { createFakeHook } = require("./util/deprecation");
|
|
46
|
+
const formatLocation = require("./util/formatLocation");
|
|
48
47
|
const { join } = require("./util/fs");
|
|
49
48
|
const {
|
|
50
49
|
absolutify,
|
|
@@ -53,6 +52,7 @@ const {
|
|
|
53
52
|
} = require("./util/identifier");
|
|
54
53
|
const makeSerializable = require("./util/makeSerializable");
|
|
55
54
|
const memoize = require("./util/memoize");
|
|
55
|
+
const parseJson = require("./util/parseJson");
|
|
56
56
|
|
|
57
57
|
/** @typedef {import("enhanced-resolve").ResolveContext} ResolveContext */
|
|
58
58
|
/** @typedef {import("enhanced-resolve").ResolveRequest} ResolveRequest */
|
|
@@ -119,7 +119,7 @@ const memoize = require("./util/memoize");
|
|
|
119
119
|
/** @typedef {(content: string) => boolean} NoParseFn */
|
|
120
120
|
|
|
121
121
|
const getInvalidDependenciesModuleWarning = memoize(() =>
|
|
122
|
-
require("./InvalidDependenciesModuleWarning")
|
|
122
|
+
require("./errors/InvalidDependenciesModuleWarning")
|
|
123
123
|
);
|
|
124
124
|
|
|
125
125
|
const getExtractSourceMap = memoize(() => require("./util/extractSourceMap"));
|
|
@@ -207,24 +207,6 @@ const asBuffer = (input) => {
|
|
|
207
207
|
return input;
|
|
208
208
|
};
|
|
209
209
|
|
|
210
|
-
class NonErrorEmittedError extends WebpackError {
|
|
211
|
-
/**
|
|
212
|
-
* @param {EXPECTED_ANY} error value which is not an instance of Error
|
|
213
|
-
*/
|
|
214
|
-
constructor(error) {
|
|
215
|
-
super();
|
|
216
|
-
|
|
217
|
-
this.name = "NonErrorEmittedError";
|
|
218
|
-
this.message = `(Emitted value instead of an instance of Error) ${error}`;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
makeSerializable(
|
|
223
|
-
NonErrorEmittedError,
|
|
224
|
-
"webpack/lib/NormalModule",
|
|
225
|
-
"NonErrorEmittedError"
|
|
226
|
-
);
|
|
227
|
-
|
|
228
210
|
/** @typedef {[string | Buffer, string | RawSourceMap | undefined, PreparsedAst | undefined]} Result */
|
|
229
211
|
|
|
230
212
|
/** @typedef {LoaderContext<EXPECTED_ANY>} AnyLoaderContext */
|
|
@@ -394,7 +376,7 @@ class NormalModule extends Module {
|
|
|
394
376
|
this.extractSourceMap = extractSourceMap;
|
|
395
377
|
|
|
396
378
|
// Info from Build
|
|
397
|
-
/** @type {
|
|
379
|
+
/** @type {Error | null} */
|
|
398
380
|
this.error = null;
|
|
399
381
|
/**
|
|
400
382
|
* @private
|
|
@@ -440,6 +422,7 @@ class NormalModule extends Module {
|
|
|
440
422
|
}
|
|
441
423
|
|
|
442
424
|
/**
|
|
425
|
+
* Returns the unique identifier used to reference this module.
|
|
443
426
|
* @returns {string} a unique identifier of the module
|
|
444
427
|
*/
|
|
445
428
|
identifier() {
|
|
@@ -453,6 +436,7 @@ class NormalModule extends Module {
|
|
|
453
436
|
}
|
|
454
437
|
|
|
455
438
|
/**
|
|
439
|
+
* Returns a human-readable identifier for this module.
|
|
456
440
|
* @param {RequestShortener} requestShortener the request shortener
|
|
457
441
|
* @returns {string} a user readable identifier of the module
|
|
458
442
|
*/
|
|
@@ -468,6 +452,7 @@ class NormalModule extends Module {
|
|
|
468
452
|
}
|
|
469
453
|
|
|
470
454
|
/**
|
|
455
|
+
* Gets the library identifier.
|
|
471
456
|
* @param {LibIdentOptions} options options
|
|
472
457
|
* @returns {LibIdent | null} an identifier for library inclusion
|
|
473
458
|
*/
|
|
@@ -482,6 +467,7 @@ class NormalModule extends Module {
|
|
|
482
467
|
}
|
|
483
468
|
|
|
484
469
|
/**
|
|
470
|
+
* Returns the path used when matching this module against rule conditions.
|
|
485
471
|
* @returns {NameForCondition | null} absolute path which should be used for condition matching (usually the resource path)
|
|
486
472
|
*/
|
|
487
473
|
nameForCondition() {
|
|
@@ -722,7 +708,9 @@ class NormalModule extends Module {
|
|
|
722
708
|
if (typeof options === "string") {
|
|
723
709
|
if (options.startsWith("{") && options.endsWith("}")) {
|
|
724
710
|
try {
|
|
725
|
-
options =
|
|
711
|
+
options =
|
|
712
|
+
/** @type {LoaderItem["options"]} */
|
|
713
|
+
(parseJson(options));
|
|
726
714
|
} catch (err) {
|
|
727
715
|
throw new Error(
|
|
728
716
|
`Cannot parse string options: ${/** @type {Error} */ (err).message}`,
|
|
@@ -1170,7 +1158,7 @@ class NormalModule extends Module {
|
|
|
1170
1158
|
}
|
|
1171
1159
|
|
|
1172
1160
|
/**
|
|
1173
|
-
* @param {
|
|
1161
|
+
* @param {Error} error the error
|
|
1174
1162
|
* @returns {void}
|
|
1175
1163
|
*/
|
|
1176
1164
|
markModuleAsErrored(error) {
|
|
@@ -1245,6 +1233,7 @@ class NormalModule extends Module {
|
|
|
1245
1233
|
}
|
|
1246
1234
|
|
|
1247
1235
|
/**
|
|
1236
|
+
* Builds the module using the provided compilation context.
|
|
1248
1237
|
* @param {WebpackOptions} options webpack options
|
|
1249
1238
|
* @param {Compilation} compilation the compilation
|
|
1250
1239
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -1321,7 +1310,7 @@ class NormalModule extends Module {
|
|
|
1321
1310
|
try {
|
|
1322
1311
|
hooks.beforeSnapshot.call(this);
|
|
1323
1312
|
} catch (err) {
|
|
1324
|
-
this.markModuleAsErrored(/** @type {
|
|
1313
|
+
this.markModuleAsErrored(/** @type {Error} */ (err));
|
|
1325
1314
|
return callback();
|
|
1326
1315
|
}
|
|
1327
1316
|
|
|
@@ -1413,7 +1402,7 @@ class NormalModule extends Module {
|
|
|
1413
1402
|
try {
|
|
1414
1403
|
hooks.beforeParse.call(this);
|
|
1415
1404
|
} catch (err) {
|
|
1416
|
-
this.markModuleAsErrored(/** @type {
|
|
1405
|
+
this.markModuleAsErrored(/** @type {Error} */ (err));
|
|
1417
1406
|
this._initBuildHash(compilation);
|
|
1418
1407
|
return callback();
|
|
1419
1408
|
}
|
|
@@ -1448,6 +1437,7 @@ class NormalModule extends Module {
|
|
|
1448
1437
|
}
|
|
1449
1438
|
|
|
1450
1439
|
/**
|
|
1440
|
+
* Returns the reason this module cannot be concatenated, when one exists.
|
|
1451
1441
|
* @param {ConcatenationBailoutReasonContext} context context
|
|
1452
1442
|
* @returns {string | undefined} reason why this module can't be concatenated, undefined when it can be concatenated
|
|
1453
1443
|
*/
|
|
@@ -1458,6 +1448,7 @@ class NormalModule extends Module {
|
|
|
1458
1448
|
}
|
|
1459
1449
|
|
|
1460
1450
|
/**
|
|
1451
|
+
* Gets side effects connection state.
|
|
1461
1452
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
1462
1453
|
* @returns {ConnectionState} how this module should be connected to referencing modules when consumed for side-effects only
|
|
1463
1454
|
*/
|
|
@@ -1506,6 +1497,7 @@ class NormalModule extends Module {
|
|
|
1506
1497
|
}
|
|
1507
1498
|
|
|
1508
1499
|
/**
|
|
1500
|
+
* Returns the source types this module can generate.
|
|
1509
1501
|
* @returns {SourceTypes} types available (do not mutate)
|
|
1510
1502
|
*/
|
|
1511
1503
|
getSourceTypes() {
|
|
@@ -1518,6 +1510,7 @@ class NormalModule extends Module {
|
|
|
1518
1510
|
}
|
|
1519
1511
|
|
|
1520
1512
|
/**
|
|
1513
|
+
* Generates code and runtime requirements for this module.
|
|
1521
1514
|
* @param {CodeGenerationContext} context context for code generation
|
|
1522
1515
|
* @returns {CodeGenerationResult} result
|
|
1523
1516
|
*/
|
|
@@ -1596,6 +1589,7 @@ class NormalModule extends Module {
|
|
|
1596
1589
|
}
|
|
1597
1590
|
|
|
1598
1591
|
/**
|
|
1592
|
+
* Gets the original source.
|
|
1599
1593
|
* @returns {Source | null} the original source for the module before webpack transformation
|
|
1600
1594
|
*/
|
|
1601
1595
|
originalSource() {
|
|
@@ -1603,6 +1597,7 @@ class NormalModule extends Module {
|
|
|
1603
1597
|
}
|
|
1604
1598
|
|
|
1605
1599
|
/**
|
|
1600
|
+
* Invalidates the cached state associated with this value.
|
|
1606
1601
|
* @returns {void}
|
|
1607
1602
|
*/
|
|
1608
1603
|
invalidateBuild() {
|
|
@@ -1610,6 +1605,7 @@ class NormalModule extends Module {
|
|
|
1610
1605
|
}
|
|
1611
1606
|
|
|
1612
1607
|
/**
|
|
1608
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
1613
1609
|
* @param {NeedBuildContext} context context info
|
|
1614
1610
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
1615
1611
|
* @returns {void}
|
|
@@ -1669,6 +1665,7 @@ class NormalModule extends Module {
|
|
|
1669
1665
|
}
|
|
1670
1666
|
|
|
1671
1667
|
/**
|
|
1668
|
+
* Returns the estimated size for the requested source type.
|
|
1672
1669
|
* @param {string=} type the source type for which the size should be estimated
|
|
1673
1670
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
1674
1671
|
*/
|
|
@@ -1690,6 +1687,7 @@ class NormalModule extends Module {
|
|
|
1690
1687
|
}
|
|
1691
1688
|
|
|
1692
1689
|
/**
|
|
1690
|
+
* Adds the provided file dependencies to the module.
|
|
1693
1691
|
* @param {FileSystemDependencies} fileDependencies set where file dependencies are added to
|
|
1694
1692
|
* @param {FileSystemDependencies} contextDependencies set where context dependencies are added to
|
|
1695
1693
|
* @param {FileSystemDependencies} missingDependencies set where missing dependencies are added to
|
|
@@ -1723,6 +1721,7 @@ class NormalModule extends Module {
|
|
|
1723
1721
|
}
|
|
1724
1722
|
|
|
1725
1723
|
/**
|
|
1724
|
+
* Updates the hash with the data contributed by this instance.
|
|
1726
1725
|
* @param {Hash} hash the hash used to track dependencies
|
|
1727
1726
|
* @param {UpdateHashContext} context context
|
|
1728
1727
|
* @returns {void}
|
|
@@ -1733,6 +1732,15 @@ class NormalModule extends Module {
|
|
|
1733
1732
|
/** @type {string} */
|
|
1734
1733
|
(buildInfo.hash)
|
|
1735
1734
|
);
|
|
1735
|
+
// Clear cached source types and re-compute so that changes in incoming
|
|
1736
|
+
// connections (e.g. asset module newly referenced from JS via lazy
|
|
1737
|
+
// compilation) are reflected in the hash and trigger code generation
|
|
1738
|
+
// cache invalidation.
|
|
1739
|
+
// https://github.com/webpack/webpack/issues/20800
|
|
1740
|
+
this._sourceTypes = undefined;
|
|
1741
|
+
for (const type of this.getSourceTypes()) {
|
|
1742
|
+
hash.update(type);
|
|
1743
|
+
}
|
|
1736
1744
|
/** @type {Generator} */
|
|
1737
1745
|
(this.generator).updateHash(hash, {
|
|
1738
1746
|
module: this,
|
|
@@ -1742,6 +1750,7 @@ class NormalModule extends Module {
|
|
|
1742
1750
|
}
|
|
1743
1751
|
|
|
1744
1752
|
/**
|
|
1753
|
+
* Serializes this instance into the provided serializer context.
|
|
1745
1754
|
* @param {ObjectSerializerContext} context context
|
|
1746
1755
|
*/
|
|
1747
1756
|
serialize(context) {
|
|
@@ -1784,6 +1793,7 @@ class NormalModule extends Module {
|
|
|
1784
1793
|
}
|
|
1785
1794
|
|
|
1786
1795
|
/**
|
|
1796
|
+
* Restores this instance from the provided deserializer context.
|
|
1787
1797
|
* @param {ObjectDeserializerContext} context context
|
|
1788
1798
|
*/
|
|
1789
1799
|
deserialize(context) {
|
|
@@ -31,6 +31,7 @@ const { getScheme } = require("./util/URLAbsoluteSpecifier");
|
|
|
31
31
|
const { cachedCleverMerge, cachedSetProperty } = require("./util/cleverMerge");
|
|
32
32
|
const { join } = require("./util/fs");
|
|
33
33
|
const {
|
|
34
|
+
escapeHashInPathRequest,
|
|
34
35
|
parseResource,
|
|
35
36
|
parseResourceWithoutFragment
|
|
36
37
|
} = require("./util/identifier");
|
|
@@ -62,6 +63,7 @@ const {
|
|
|
62
63
|
/** @typedef {import("./util/identifier").AssociatedObjectForCache} AssociatedObjectForCache */
|
|
63
64
|
|
|
64
65
|
/**
|
|
66
|
+
* Defines the callback type used by this module.
|
|
65
67
|
* @template T
|
|
66
68
|
* @typedef {import("./Compiler").Callback<T>} Callback
|
|
67
69
|
*/
|
|
@@ -70,6 +72,7 @@ const {
|
|
|
70
72
|
/** @typedef {Partial<NormalModuleCreateData & { settings: ModuleSettings }>} CreateData */
|
|
71
73
|
|
|
72
74
|
/**
|
|
75
|
+
* Defines the resolve data type used by this module.
|
|
73
76
|
* @typedef {object} ResolveData
|
|
74
77
|
* @property {ModuleFactoryCreateData["contextInfo"]} contextInfo
|
|
75
78
|
* @property {ModuleFactoryCreateData["resolveOptions"]} resolveOptions
|
|
@@ -88,6 +91,7 @@ const {
|
|
|
88
91
|
*/
|
|
89
92
|
|
|
90
93
|
/**
|
|
94
|
+
* Defines the resource data type used by this module.
|
|
91
95
|
* @typedef {object} ResourceData
|
|
92
96
|
* @property {string} resource
|
|
93
97
|
* @property {string=} path
|
|
@@ -97,6 +101,7 @@ const {
|
|
|
97
101
|
*/
|
|
98
102
|
|
|
99
103
|
/**
|
|
104
|
+
* Defines the resource scheme data type used by this module.
|
|
100
105
|
* @typedef {object} ResourceSchemeData
|
|
101
106
|
* @property {string=} mimetype mime type of the resource
|
|
102
107
|
* @property {string=} parameters additional parameters for the resource
|
|
@@ -107,6 +112,7 @@ const {
|
|
|
107
112
|
/** @typedef {ResourceData & { data: ResourceSchemeData & Partial<ResolveRequest> }} ResourceDataWithData */
|
|
108
113
|
|
|
109
114
|
/**
|
|
115
|
+
* Defines the parsed loader request type used by this module.
|
|
110
116
|
* @typedef {object} ParsedLoaderRequest
|
|
111
117
|
* @property {string} loader loader
|
|
112
118
|
* @property {string | undefined} options options
|
|
@@ -127,8 +133,9 @@ const {
|
|
|
127
133
|
/** @typedef {import("./ModuleTypeConstants").CSS_MODULE_TYPE_GLOBAL} CSS_MODULE_TYPE_GLOBAL */
|
|
128
134
|
/** @typedef {import("./ModuleTypeConstants").CSS_MODULE_TYPE_MODULE} CSS_MODULE_TYPE_MODULE */
|
|
129
135
|
/** @typedef {import("./ModuleTypeConstants").CSS_MODULE_TYPE_AUTO} CSS_MODULE_TYPE_AUTO */
|
|
136
|
+
/** @typedef {import("./ModuleTypeConstants").HTML_MODULE_TYPE} HTML_MODULE_TYPE */
|
|
130
137
|
|
|
131
|
-
/** @typedef {JAVASCRIPT_MODULE_TYPE_AUTO | JAVASCRIPT_MODULE_TYPE_DYNAMIC | JAVASCRIPT_MODULE_TYPE_ESM | JSON_MODULE_TYPE | ASSET_MODULE_TYPE | ASSET_MODULE_TYPE_INLINE | ASSET_MODULE_TYPE_RESOURCE | ASSET_MODULE_TYPE_SOURCE | WEBASSEMBLY_MODULE_TYPE_ASYNC | WEBASSEMBLY_MODULE_TYPE_SYNC | CSS_MODULE_TYPE | CSS_MODULE_TYPE_GLOBAL | CSS_MODULE_TYPE_MODULE | CSS_MODULE_TYPE_AUTO} KnownNormalModuleTypes */
|
|
138
|
+
/** @typedef {JAVASCRIPT_MODULE_TYPE_AUTO | JAVASCRIPT_MODULE_TYPE_DYNAMIC | JAVASCRIPT_MODULE_TYPE_ESM | JSON_MODULE_TYPE | ASSET_MODULE_TYPE | ASSET_MODULE_TYPE_INLINE | ASSET_MODULE_TYPE_RESOURCE | ASSET_MODULE_TYPE_SOURCE | WEBASSEMBLY_MODULE_TYPE_ASYNC | WEBASSEMBLY_MODULE_TYPE_SYNC | CSS_MODULE_TYPE | CSS_MODULE_TYPE_GLOBAL | CSS_MODULE_TYPE_MODULE | CSS_MODULE_TYPE_AUTO | HTML_MODULE_TYPE} KnownNormalModuleTypes */
|
|
132
139
|
/** @typedef {KnownNormalModuleTypes | string} NormalModuleTypes */
|
|
133
140
|
|
|
134
141
|
const EMPTY_RESOLVE_OPTIONS = {};
|
|
@@ -143,6 +150,7 @@ const MATCH_RESOURCE_REGEX = /^([^!]+)!=!/;
|
|
|
143
150
|
const LEADING_DOT_EXTENSION_REGEX = /^[^.]/;
|
|
144
151
|
|
|
145
152
|
/**
|
|
153
|
+
* Returns ident.
|
|
146
154
|
* @param {LoaderItem} data data
|
|
147
155
|
* @returns {string} ident
|
|
148
156
|
*/
|
|
@@ -163,6 +171,7 @@ const loaderToIdent = (data) => {
|
|
|
163
171
|
};
|
|
164
172
|
|
|
165
173
|
/**
|
|
174
|
+
* Stringify loaders and resource.
|
|
166
175
|
* @param {LoaderItem[]} loaders loaders
|
|
167
176
|
* @param {string} resource resource
|
|
168
177
|
* @returns {string} stringified loaders and resource
|
|
@@ -176,6 +185,7 @@ const stringifyLoadersAndResource = (loaders, resource) => {
|
|
|
176
185
|
};
|
|
177
186
|
|
|
178
187
|
/**
|
|
188
|
+
* Checks whether it needs calls.
|
|
179
189
|
* @param {number} times times
|
|
180
190
|
* @param {(err?: null | Error) => void} callback callback
|
|
181
191
|
* @returns {(err?: null | Error) => void} callback
|
|
@@ -191,6 +201,7 @@ const needCalls = (times, callback) => (err) => {
|
|
|
191
201
|
};
|
|
192
202
|
|
|
193
203
|
/**
|
|
204
|
+
* Merges global options.
|
|
194
205
|
* @template T
|
|
195
206
|
* @template O
|
|
196
207
|
* @param {T} globalOptions global options
|
|
@@ -221,6 +232,7 @@ const mergeGlobalOptions = (globalOptions, type, localOptions) => {
|
|
|
221
232
|
|
|
222
233
|
// TODO webpack 6 remove
|
|
223
234
|
/**
|
|
235
|
+
* Deprecation changed hook message.
|
|
224
236
|
* @template {import("tapable").Hook<EXPECTED_ANY, EXPECTED_ANY>} T
|
|
225
237
|
* @param {string} name name
|
|
226
238
|
* @param {T} hook hook
|
|
@@ -309,8 +321,14 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
309
321
|
/** @typedef {import("../declarations/WebpackOptions").CssGeneratorOptions} CssGeneratorOptions */
|
|
310
322
|
/** @typedef {import("../declarations/WebpackOptions").CssModuleGeneratorOptions} CssModuleGeneratorOptions */
|
|
311
323
|
|
|
324
|
+
/** @typedef {import("./html/HtmlParser")} HtmlParser */
|
|
325
|
+
/** @typedef {import("../declarations/WebpackOptions").EmptyParserOptions} HtmlParserOptions */
|
|
326
|
+
/** @typedef {import("./html/HtmlGenerator")} HtmlGenerator */
|
|
327
|
+
/** @typedef {import("../declarations/WebpackOptions").EmptyGeneratorOptions} HtmlGeneratorOptions */
|
|
328
|
+
|
|
312
329
|
/* eslint-disable jsdoc/type-formatting */
|
|
313
330
|
/**
|
|
331
|
+
* Defines the shared type used by this module.
|
|
314
332
|
* @typedef {[
|
|
315
333
|
* [JAVASCRIPT_MODULE_TYPE_AUTO, JavascriptParser, JavascriptParserOptions, JavascriptGenerator, EmptyGeneratorOptions],
|
|
316
334
|
* [JAVASCRIPT_MODULE_TYPE_DYNAMIC, JavascriptParser, JavascriptParserOptions, JavascriptGenerator, EmptyGeneratorOptions],
|
|
@@ -327,18 +345,21 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
327
345
|
* [CSS_MODULE_TYPE_AUTO, CssParser, CssModuleParserOptions, CssGenerator, CssModuleGeneratorOptions],
|
|
328
346
|
* [CSS_MODULE_TYPE_MODULE, CssParser, CssModuleParserOptions, CssGenerator, CssModuleGeneratorOptions],
|
|
329
347
|
* [CSS_MODULE_TYPE_GLOBAL, CssParser, CssModuleParserOptions, CssGenerator, CssModuleGeneratorOptions],
|
|
348
|
+
* [HTML_MODULE_TYPE, HtmlParser, HtmlParserOptions, HtmlGenerator, HtmlGeneratorOptions],
|
|
330
349
|
* [string, Parser, ParserOptions, Generator, GeneratorOptions],
|
|
331
350
|
* ]} ParsersAndGeneratorsByTypes
|
|
332
351
|
*/
|
|
333
352
|
/* eslint-enable jsdoc/type-formatting */
|
|
334
353
|
|
|
335
354
|
/**
|
|
355
|
+
* Defines the extract tuple elements type used by this module.
|
|
336
356
|
* @template {unknown[]} T
|
|
337
357
|
* @template {number[]} I
|
|
338
358
|
* @typedef {{ [K in keyof I]: K extends keyof I ? I[K] extends keyof T ? T[I[K]] : never : never }} ExtractTupleElements
|
|
339
359
|
*/
|
|
340
360
|
|
|
341
361
|
/**
|
|
362
|
+
* Represents the normal module factory runtime component.
|
|
342
363
|
* @template {unknown[]} T
|
|
343
364
|
* @template {number[]} A
|
|
344
365
|
* @template [R=void]
|
|
@@ -347,6 +368,7 @@ const ruleSetCompiler = new RuleSetCompiler([
|
|
|
347
368
|
|
|
348
369
|
class NormalModuleFactory extends ModuleFactory {
|
|
349
370
|
/**
|
|
371
|
+
* Creates an instance of NormalModuleFactory.
|
|
350
372
|
* @param {object} param params
|
|
351
373
|
* @param {string=} param.context context
|
|
352
374
|
* @param {InputFileSystem} param.fs file system
|
|
@@ -868,6 +890,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
868
890
|
);
|
|
869
891
|
|
|
870
892
|
/**
|
|
893
|
+
* Processes the provided string.
|
|
871
894
|
* @param {string} context context
|
|
872
895
|
*/
|
|
873
896
|
const defaultResolve = (context) => {
|
|
@@ -895,7 +918,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
895
918
|
this.resolveResource(
|
|
896
919
|
contextInfo,
|
|
897
920
|
context,
|
|
898
|
-
unresolvedResource,
|
|
921
|
+
escapeHashInPathRequest(unresolvedResource),
|
|
899
922
|
normalResolver,
|
|
900
923
|
resolveContext,
|
|
901
924
|
(err, _resolvedResource, resolvedResourceResolveData) => {
|
|
@@ -972,6 +995,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
972
995
|
}
|
|
973
996
|
|
|
974
997
|
/**
|
|
998
|
+
* Processes the provided data.
|
|
975
999
|
* @param {ModuleFactoryCreateData} data data object
|
|
976
1000
|
* @param {ModuleFactoryCallback} callback callback
|
|
977
1001
|
* @returns {void}
|
|
@@ -1080,6 +1104,7 @@ class NormalModuleFactory extends ModuleFactory {
|
|
|
1080
1104
|
}
|
|
1081
1105
|
|
|
1082
1106
|
/**
|
|
1107
|
+
* Processes the provided context info.
|
|
1083
1108
|
* @param {ModuleFactoryCreateDataContextInfo} contextInfo context info
|
|
1084
1109
|
* @param {string} context context
|
|
1085
1110
|
* @param {string} unresolvedResource unresolved resource
|
|
@@ -1152,6 +1177,7 @@ ${hints.join("\n\n")}`;
|
|
|
1152
1177
|
}
|
|
1153
1178
|
|
|
1154
1179
|
/**
|
|
1180
|
+
* Resolve resource error hints.
|
|
1155
1181
|
* @param {Error} error error
|
|
1156
1182
|
* @param {ModuleFactoryCreateDataContextInfo} contextInfo context info
|
|
1157
1183
|
* @param {string} context context
|
|
@@ -1277,6 +1303,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1277
1303
|
}
|
|
1278
1304
|
|
|
1279
1305
|
/**
|
|
1306
|
+
* Resolves request array.
|
|
1280
1307
|
* @param {ModuleFactoryCreateDataContextInfo} contextInfo context info
|
|
1281
1308
|
* @param {string} context context
|
|
1282
1309
|
* @param {LoaderItem[]} array array
|
|
@@ -1298,6 +1325,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1298
1325
|
asyncLib.map(
|
|
1299
1326
|
array,
|
|
1300
1327
|
/**
|
|
1328
|
+
* Handles the callback logic for this hook.
|
|
1301
1329
|
* @param {LoaderItem} item item
|
|
1302
1330
|
* @param {Callback<LoaderItem>} callback callback
|
|
1303
1331
|
*/
|
|
@@ -1376,6 +1404,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1376
1404
|
}
|
|
1377
1405
|
|
|
1378
1406
|
/**
|
|
1407
|
+
* Returns parser.
|
|
1379
1408
|
* @param {string} type type
|
|
1380
1409
|
* @param {ParserOptions} parserOptions parser options
|
|
1381
1410
|
* @returns {Parser} parser
|
|
@@ -1399,6 +1428,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1399
1428
|
}
|
|
1400
1429
|
|
|
1401
1430
|
/**
|
|
1431
|
+
* Creates a parser from the provided type.
|
|
1402
1432
|
* @param {string} type type
|
|
1403
1433
|
* @param {ParserOptions} parserOptions parser options
|
|
1404
1434
|
* @returns {Parser} parser
|
|
@@ -1418,6 +1448,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1418
1448
|
}
|
|
1419
1449
|
|
|
1420
1450
|
/**
|
|
1451
|
+
* Returns generator.
|
|
1421
1452
|
* @param {string} type type of generator
|
|
1422
1453
|
* @param {GeneratorOptions} generatorOptions generator options
|
|
1423
1454
|
* @returns {Generator} generator
|
|
@@ -1441,6 +1472,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1441
1472
|
}
|
|
1442
1473
|
|
|
1443
1474
|
/**
|
|
1475
|
+
* Creates a generator.
|
|
1444
1476
|
* @param {string} type type of generator
|
|
1445
1477
|
* @param {GeneratorOptions} generatorOptions generator options
|
|
1446
1478
|
* @returns {Generator} generator
|
|
@@ -1462,6 +1494,7 @@ If changing the source code is not an option there is also a resolve options cal
|
|
|
1462
1494
|
}
|
|
1463
1495
|
|
|
1464
1496
|
/**
|
|
1497
|
+
* Returns the resolver.
|
|
1465
1498
|
* @param {Parameters<ResolverFactory["get"]>[0]} type type of resolver
|
|
1466
1499
|
* @param {Parameters<ResolverFactory["get"]>[1]=} resolveOptions options
|
|
1467
1500
|
* @returns {ReturnType<ResolverFactory["get"]>} the resolver
|
package/lib/NullFactory.js
CHANGED
|
@@ -12,6 +12,7 @@ const ModuleFactory = require("./ModuleFactory");
|
|
|
12
12
|
|
|
13
13
|
class NullFactory extends ModuleFactory {
|
|
14
14
|
/**
|
|
15
|
+
* Processes the provided data.
|
|
15
16
|
* @param {ModuleFactoryCreateData} data data object
|
|
16
17
|
* @param {ModuleFactoryCallback} callback callback
|
|
17
18
|
* @returns {void}
|
package/lib/OptionsApply.js
CHANGED
package/lib/Parser.js
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
/** @typedef {Record<string, EXPECTED_ANY>} PreparsedAst */
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
+
* Defines the parser state base type used by this module.
|
|
15
16
|
* @typedef {object} ParserStateBase
|
|
16
17
|
* @property {string | Buffer} source
|
|
17
18
|
* @property {NormalModule} current
|
|
@@ -25,13 +26,14 @@
|
|
|
25
26
|
class Parser {
|
|
26
27
|
/* istanbul ignore next */
|
|
27
28
|
/**
|
|
29
|
+
* Parses the provided source and updates the parser state.
|
|
28
30
|
* @abstract
|
|
29
31
|
* @param {string | Buffer | PreparsedAst} source the source to parse
|
|
30
32
|
* @param {ParserState} state the parser state
|
|
31
33
|
* @returns {ParserState} the parser state
|
|
32
34
|
*/
|
|
33
35
|
parse(source, state) {
|
|
34
|
-
const AbstractMethodError = require("./AbstractMethodError");
|
|
36
|
+
const AbstractMethodError = require("./errors/AbstractMethodError");
|
|
35
37
|
|
|
36
38
|
throw new AbstractMethodError();
|
|
37
39
|
}
|
package/lib/PlatformPlugin.js
CHANGED
|
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "PlatformPlugin";
|
|
|
16
16
|
*/
|
|
17
17
|
class PlatformPlugin {
|
|
18
18
|
/**
|
|
19
|
+
* Creates an instance of PlatformPlugin.
|
|
19
20
|
* @param {Partial<PlatformTargetProperties>} platform target properties
|
|
20
21
|
*/
|
|
21
22
|
constructor(platform) {
|
|
@@ -24,7 +25,7 @@ class PlatformPlugin {
|
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
|
-
*
|
|
28
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
28
29
|
* @param {Compiler} compiler the compiler instance
|
|
29
30
|
* @returns {void}
|
|
30
31
|
*/
|
package/lib/PrefetchPlugin.js
CHANGED
|
@@ -13,6 +13,7 @@ const PLUGIN_NAME = "PrefetchPlugin";
|
|
|
13
13
|
|
|
14
14
|
class PrefetchPlugin {
|
|
15
15
|
/**
|
|
16
|
+
* Creates an instance of PrefetchPlugin.
|
|
16
17
|
* @param {string} context context or request if context is not set
|
|
17
18
|
* @param {string=} request request
|
|
18
19
|
*/
|
|
@@ -27,7 +28,7 @@ class PrefetchPlugin {
|
|
|
27
28
|
}
|
|
28
29
|
|
|
29
30
|
/**
|
|
30
|
-
*
|
|
31
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
31
32
|
* @param {Compiler} compiler the compiler instance
|
|
32
33
|
* @returns {void}
|
|
33
34
|
*/
|