@depup/webpack 5.111.1-depup.2 → 5.112.0-depup.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 +4 -8
- package/changes.json +3 -19
- package/lib/Chunk.js +3 -966
- package/lib/Compilation.js +224 -106
- package/lib/Compiler.js +19 -19
- package/lib/Dependency.js +3 -551
- package/lib/DependencyTemplate.js +3 -70
- package/lib/EntryPlugin.js +3 -68
- package/lib/Entrypoint.js +3 -121
- package/lib/ExternalsPlugin.js +3 -92
- package/lib/FileSystemInfo.js +3 -4629
- package/lib/InitFragment.js +3 -204
- package/lib/LibraryTemplatePlugin.js +3 -46
- package/lib/ModuleFilenameHelpers.js +3 -400
- package/lib/ModuleNotFoundError.js +2 -2
- package/lib/MultiCompiler.js +37 -8
- package/lib/NormalModule.js +3 -2242
- package/lib/NullFactory.js +3 -22
- package/lib/ProgressPlugin.js +3 -908
- package/lib/RawModule.js +3 -197
- package/lib/RequestShortener.js +3 -37
- package/lib/SingleEntryPlugin.js +1 -1
- package/lib/WebpackError.js +2 -2
- package/lib/asset/AssetBytesGenerator.js +8 -8
- package/lib/asset/AssetBytesParser.js +3 -3
- package/lib/asset/AssetGenerator.js +36 -22
- package/lib/asset/AssetModule.js +2 -2
- package/lib/asset/AssetModulesPlugin.js +6 -9
- package/lib/asset/AssetParser.js +3 -3
- package/lib/asset/AssetSourceGenerator.js +8 -8
- package/lib/asset/AssetSourceParser.js +3 -3
- package/lib/asset/RawDataUrlModule.js +17 -10
- package/lib/asset/WebManifestGenerator.js +7 -7
- package/lib/asset/WebManifestParser.js +5 -5
- package/lib/async-modules/AsyncModuleHelpers.js +6 -5
- package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -4
- package/lib/async-modules/InferAsyncModulesPlugin.js +4 -3
- package/lib/async-modules/isGeneratorLowered.js +3 -3
- package/lib/bun/BunTargetPlugin.js +1 -1
- package/lib/cache/AddBuildDependenciesPlugin.js +2 -19
- package/lib/{Cache.js → cache/Cache.js} +1 -1
- package/lib/{CacheFacade.js → cache/CacheFacade.js} +5 -5
- package/lib/cache/IdleFileCachePlugin.js +2 -2
- package/lib/cache/MemoryCachePlugin.js +2 -2
- package/lib/cache/MemoryWithGcCachePlugin.js +2 -2
- package/lib/cache/PackFileCacheStrategy.js +8 -10
- package/lib/cache/ResolverCachePlugin.js +8 -4
- package/lib/cache/mergeEtags.js +1 -1
- package/lib/{OptionsApply.js → config/OptionsApply.js} +3 -3
- package/lib/{PlatformPlugin.js → config/PlatformPlugin.js} +2 -2
- package/lib/{WebpackOptionsApply.js → config/WebpackOptionsApply.js} +217 -200
- package/lib/{WebpackOptionsDefaulter.js → config/WebpackOptionsDefaulter.js} +3 -3
- package/lib/config/browserslistTargetHandler.js +1 -1
- package/lib/{cli.js → config/cli.js} +5 -158
- package/lib/config/defaults.js +144 -48
- package/lib/config/getClaimedAssetTypes.js +21 -13
- package/lib/config/normalization.js +18 -7
- package/lib/config/target.js +10 -0
- package/lib/container/ContainerEntryDependency.js +1 -1
- package/lib/container/ContainerEntryModule.js +13 -11
- package/lib/container/ContainerEntryModuleFactory.js +2 -2
- package/lib/container/ContainerExposedDependency.js +1 -1
- package/lib/container/ContainerPlugin.js +178 -5
- package/lib/container/ContainerReferencePlugin.js +75 -14
- package/lib/container/FallbackDependency.js +1 -1
- package/lib/container/FallbackItemDependency.js +1 -1
- package/lib/container/FallbackModule.js +12 -10
- package/lib/container/FallbackModuleFactory.js +2 -2
- package/lib/container/HoistContainerReferencesPlugin.js +10 -11
- package/lib/container/ModuleFederationPlugin.js +306 -7
- package/lib/container/RemoteModule.js +14 -10
- package/lib/container/RemoteRuntimeModule.js +5 -5
- package/lib/container/RemoteToExternalDependency.js +1 -1
- package/lib/container/moduleFederationHooks.js +1 -1
- package/lib/context/ContextModule.js +36 -25
- package/lib/context/ContextModuleFactory.js +13 -10
- package/lib/context/ContextReplacementPlugin.js +3 -3
- package/lib/css/CssGenerator.js +38 -31
- package/lib/css/CssInjectStyleRuntimeModule.js +36 -30
- package/lib/css/CssLoadingRuntimeModule.js +77 -44
- package/lib/css/CssModule.js +27 -29
- package/lib/css/CssModulesPlugin.js +128 -44
- package/lib/css/CssParser.js +682 -291
- package/lib/css/CssServerStylesRuntimeModule.js +3 -3
- package/lib/css/cssMinify.js +110 -37
- package/lib/css/data.js +6985 -5125
- package/lib/css/syntax-parser.js +19873 -0
- package/lib/css/syntax-printer.js +6037 -0
- package/lib/css/syntax.js +37 -18686
- package/lib/debug/ProfilingPlugin.js +52 -19
- package/lib/{DefinePlugin.js → define/DefinePlugin.js} +407 -41
- package/lib/{DotenvPlugin.js → define/DotenvPlugin.js} +9 -9
- package/lib/{EnvironmentPlugin.js → define/EnvironmentPlugin.js} +2 -2
- package/lib/deno/DenoTargetPlugin.js +1 -1
- package/lib/dependencies/ConstDependency.js +3 -120
- package/lib/dependencies/ContextElementDependency.js +5 -172
- package/lib/dependencies/NullDependency.js +3 -37
- package/lib/dependencies/{AMDDefineDependency.js → amd/AMDDefineDependency.js} +12 -11
- package/lib/dependencies/{AMDDefineDependencyParserPlugin.js → amd/AMDDefineDependencyParserPlugin.js} +10 -10
- package/lib/dependencies/{AMDPlugin.js → amd/AMDPlugin.js} +11 -11
- package/lib/dependencies/{AMDRequireArrayDependency.js → amd/AMDRequireArrayDependency.js} +15 -13
- package/lib/dependencies/{AMDRequireContextDependency.js → amd/AMDRequireContextDependency.js} +11 -10
- package/lib/dependencies/{AMDRequireDependenciesBlock.js → amd/AMDRequireDependenciesBlock.js} +7 -6
- package/lib/dependencies/{AMDRequireDependenciesBlockParserPlugin.js → amd/AMDRequireDependenciesBlockParserPlugin.js} +10 -10
- package/lib/dependencies/{AMDRequireDependency.js → amd/AMDRequireDependency.js} +13 -12
- package/lib/dependencies/{AMDRequireItemDependency.js → amd/AMDRequireItemDependency.js} +8 -7
- package/lib/dependencies/{AMDRuntimeModules.js → amd/AMDRuntimeModules.js} +3 -3
- package/lib/dependencies/{LocalModule.js → amd/LocalModule.js} +8 -4
- package/lib/dependencies/{LocalModuleDependency.js → amd/LocalModuleDependency.js} +17 -10
- package/lib/dependencies/{LocalModulesHelpers.js → amd/LocalModulesHelpers.js} +1 -1
- package/lib/dependencies/{RequireJsStuffPlugin.js → amd/RequireJsStuffPlugin.js} +9 -9
- package/lib/dependencies/{UnsupportedDependency.js → amd/UnsupportedDependency.js} +11 -10
- package/lib/dependencies/{CommonJsDependencyHelpers.js → commonjs/CommonJsDependencyHelpers.js} +8 -9
- package/lib/dependencies/{CommonJsExportRequireDependency.js → commonjs/CommonJsExportRequireDependency.js} +166 -33
- package/lib/dependencies/{CommonJsExportsDependency.js → commonjs/CommonJsExportsDependency.js} +15 -14
- package/lib/dependencies/{CommonJsExportsParserPlugin.js → commonjs/CommonJsExportsParserPlugin.js} +138 -61
- package/lib/dependencies/{CommonJsFullRequireDependency.js → commonjs/CommonJsFullRequireDependency.js} +32 -24
- package/lib/dependencies/{CommonJsImportsParserPlugin.js → commonjs/CommonJsImportsParserPlugin.js} +35 -30
- package/lib/dependencies/{CommonJsObjectExportDependency.js → commonjs/CommonJsObjectExportDependency.js} +13 -12
- package/lib/dependencies/{CommonJsPlugin.js → commonjs/CommonJsPlugin.js} +47 -35
- package/lib/dependencies/{CommonJsRequireContextDependency.js → commonjs/CommonJsRequireContextDependency.js} +15 -14
- package/lib/dependencies/{CommonJsRequireDependency.js → commonjs/CommonJsRequireDependency.js} +33 -25
- package/lib/dependencies/{CommonJsSelfReferenceDependency.js → commonjs/CommonJsSelfReferenceDependency.js} +17 -16
- package/lib/dependencies/{ModuleDecoratorDependency.js → commonjs/ModuleDecoratorDependency.js} +16 -15
- package/lib/dependencies/{RequireEnsureDependenciesBlock.js → commonjs/RequireEnsureDependenciesBlock.js} +8 -7
- package/lib/dependencies/{RequireEnsureDependenciesBlockParserPlugin.js → commonjs/RequireEnsureDependenciesBlockParserPlugin.js} +5 -5
- package/lib/dependencies/{RequireEnsureDependency.js → commonjs/RequireEnsureDependency.js} +13 -12
- package/lib/dependencies/{RequireEnsureItemDependency.js → commonjs/RequireEnsureItemDependency.js} +7 -6
- package/lib/dependencies/{RequireEnsurePlugin.js → commonjs/RequireEnsurePlugin.js} +8 -8
- package/lib/dependencies/{RequireHeaderDependency.js → commonjs/RequireHeaderDependency.js} +14 -13
- package/lib/dependencies/{RequireIncludeDependency.js → commonjs/RequireIncludeDependency.js} +13 -12
- package/lib/dependencies/{RequireIncludeDependencyParserPlugin.js → commonjs/RequireIncludeDependencyParserPlugin.js} +3 -27
- package/lib/dependencies/{RequireIncludePlugin.js → commonjs/RequireIncludePlugin.js} +4 -4
- package/lib/dependencies/{RequireResolveContextDependency.js → commonjs/RequireResolveContextDependency.js} +11 -10
- package/lib/dependencies/{RequireResolveDependency.js → commonjs/RequireResolveDependency.js} +12 -11
- package/lib/dependencies/{RequireResolveHeaderDependency.js → commonjs/RequireResolveHeaderDependency.js} +13 -12
- package/lib/dependencies/commonjs/TopLevelThisParserPlugin.js +59 -0
- package/lib/dependencies/{ContextDependency.js → context/ContextDependency.js} +15 -14
- package/lib/dependencies/{ContextDependencyHelpers.js → context/ContextDependencyHelpers.js} +31 -9
- package/lib/dependencies/{ContextDependencyTemplateAsId.js → context/ContextDependencyTemplateAsId.js} +3 -3
- package/lib/dependencies/{ContextDependencyTemplateAsRequireCall.js → context/ContextDependencyTemplateAsRequireCall.js} +3 -3
- package/lib/dependencies/context/ContextElementDependency.js +198 -0
- package/lib/dependencies/{ImportMetaContextDependency.js → context/ImportMetaContextDependency.js} +7 -6
- package/lib/dependencies/{ImportMetaContextDependencyParserPlugin.js → context/ImportMetaContextDependencyParserPlugin.js} +9 -9
- package/lib/dependencies/{ImportMetaContextPlugin.js → context/ImportMetaContextPlugin.js} +5 -5
- package/lib/dependencies/{ImportMetaGlobDependency.js → context/ImportMetaGlobDependency.js} +7 -6
- package/lib/dependencies/{ImportMetaGlobDependencyParserPlugin.js → context/ImportMetaGlobDependencyParserPlugin.js} +4 -4
- package/lib/dependencies/{ImportMetaGlobHelpers.js → context/ImportMetaGlobHelpers.js} +9 -9
- package/lib/dependencies/{RequireContextDependency.js → context/RequireContextDependency.js} +7 -6
- package/lib/dependencies/{RequireContextDependencyParserPlugin.js → context/RequireContextDependencyParserPlugin.js} +2 -2
- package/lib/dependencies/{RequireContextPlugin.js → context/RequireContextPlugin.js} +5 -5
- package/lib/dependencies/{CachedConstDependency.js → core/CachedConstDependency.js} +12 -11
- package/lib/dependencies/core/ConstDependency.js +131 -0
- package/lib/dependencies/{ImportPhase.js → core/ImportPhase.js} +5 -4
- package/lib/dependencies/{ModuleDependency.js → core/ModuleDependency.js} +10 -7
- package/lib/dependencies/{ModuleDependencyTemplateAsId.js → core/ModuleDependencyTemplateAsId.js} +3 -3
- package/lib/dependencies/{ModuleDependencyTemplateAsRequireId.js → core/ModuleDependencyTemplateAsRequireId.js} +2 -2
- package/lib/dependencies/{ModuleInitFragmentDependency.js → core/ModuleInitFragmentDependency.js} +10 -9
- package/lib/dependencies/core/NullDependency.js +44 -0
- package/lib/dependencies/{RuntimeRequirementsDependency.js → core/RuntimeRequirementsDependency.js} +10 -9
- package/lib/dependencies/{StaticExportsDependency.js → core/StaticExportsDependency.js} +15 -8
- package/lib/dependencies/{CssIcssExportDependency.js → css/CssIcssExportDependency.js} +369 -92
- package/lib/dependencies/{CssIcssImportDependency.js → css/CssIcssImportDependency.js} +23 -16
- package/lib/dependencies/{CssIcssSymbolDependency.js → css/CssIcssSymbolDependency.js} +13 -12
- package/lib/dependencies/{CssImportDependency.js → css/CssImportDependency.js} +15 -11
- package/lib/dependencies/{CssUrlDependency.js → css/CssUrlDependency.js} +23 -16
- package/lib/dependencies/{CreateRequireParserPlugin.js → esm/CreateRequireParserPlugin.js} +9 -9
- package/lib/dependencies/{HarmonyAcceptDependency.js → esm/ESMAcceptDependency.js} +41 -38
- package/lib/dependencies/esm/ESMAcceptImportDependency.js +39 -0
- package/lib/dependencies/{HarmonyCompatibilityDependency.js → esm/ESMCompatibilityDependency.js} +29 -21
- package/lib/dependencies/{HarmonyDetectionParserPlugin.js → esm/ESMDetectionParserPlugin.js} +19 -17
- package/lib/dependencies/{HarmonyEvaluatedImportSpecifierDependency.js → esm/ESMEvaluatedImportSpecifierDependency.js} +33 -30
- package/lib/dependencies/{HarmonyExportDependencyParserPlugin.js → esm/ESMExportDependencyParserPlugin.js} +60 -89
- package/lib/dependencies/{HarmonyExportExpressionDependency.js → esm/ESMExportExpressionDependency.js} +80 -45
- package/lib/dependencies/{HarmonyExportHeaderDependency.js → esm/ESMExportHeaderDependency.js} +17 -15
- package/lib/dependencies/esm/ESMExportImportedSideEffectDependency.js +37 -0
- package/lib/dependencies/{HarmonyExportImportedSpecifierDependency.js → esm/ESMExportImportedSpecifierDependency.js} +133 -118
- package/lib/dependencies/{HarmonyExportInitFragment.js → esm/ESMExportInitFragment.js} +48 -30
- package/lib/dependencies/{HarmonyExportSpecifierDependency.js → esm/ESMExportSpecifierDependency.js} +60 -36
- package/lib/dependencies/{HarmonyExports.js → esm/ESMExports.js} +4 -4
- package/lib/dependencies/{HarmonyImportBareSideEffectDependency.js → esm/ESMImportBareSideEffectDependency.js} +21 -13
- package/lib/dependencies/{HarmonyImportDependency.js → esm/ESMImportDependency.js} +74 -71
- package/lib/dependencies/{HarmonyImportDependencyParserPlugin.js → esm/ESMImportDependencyParserPlugin.js} +99 -84
- package/lib/dependencies/{HarmonyImportGuard.js → esm/ESMImportGuard.js} +26 -29
- package/lib/dependencies/{HarmonyImportSideEffectDependency.js → esm/ESMImportSideEffectDependency.js} +83 -39
- package/lib/dependencies/{HarmonyImportSpecifierDependency.js → esm/ESMImportSpecifierDependency.js} +94 -59
- package/lib/dependencies/esm/ESMModulesPlugin.js +207 -0
- package/lib/dependencies/{HarmonyTopLevelThisParserPlugin.js → esm/ESMTopLevelThisParserPlugin.js} +7 -7
- package/lib/dependencies/{TopLevelAwaitDependency.js → esm/TopLevelAwaitDependency.js} +12 -11
- package/lib/dependencies/{DynamicExports.js → helpers/DynamicExports.js} +2 -2
- package/lib/{util → dependencies/helpers}/chainedImports.js +5 -5
- package/lib/dependencies/{processExportInfo.js → helpers/processExportInfo.js} +4 -4
- package/lib/{util → dependencies/helpers}/traverseDestructuringAssignmentProperties.js +1 -1
- package/lib/dependencies/{ImportMetaHotAcceptDependency.js → hmr/ImportMetaHotAcceptDependency.js} +8 -7
- package/lib/dependencies/{ImportMetaHotDeclineDependency.js → hmr/ImportMetaHotDeclineDependency.js} +8 -7
- package/lib/dependencies/{ModuleHotAcceptDependency.js → hmr/ModuleHotAcceptDependency.js} +8 -7
- package/lib/dependencies/{ModuleHotDeclineDependency.js → hmr/ModuleHotDeclineDependency.js} +8 -7
- package/lib/dependencies/{HtmlEntryDependency.js → html/HtmlEntryDependency.js} +51 -141
- package/lib/dependencies/{HtmlInlineHtmlDependency.js → html/HtmlInlineHtmlDependency.js} +13 -12
- package/lib/dependencies/{HtmlInlineScriptDependency.js → html/HtmlInlineScriptDependency.js} +69 -19
- package/lib/dependencies/{HtmlInlineStyleDependency.js → html/HtmlInlineStyleDependency.js} +50 -15
- package/lib/dependencies/{HtmlSourceDependency.js → html/HtmlSourceDependency.js} +23 -16
- package/lib/dependencies/{ImportContextDependency.js → import/ImportContextDependency.js} +24 -10
- package/lib/dependencies/{ImportDependency.js → import/ImportDependency.js} +26 -18
- package/lib/dependencies/{ImportEagerDependency.js → import/ImportEagerDependency.js} +18 -10
- package/lib/dependencies/{ImportParserPlugin.js → import/ImportParserPlugin.js} +20 -20
- package/lib/dependencies/{ImportPlugin.js → import/ImportPlugin.js} +4 -4
- package/lib/dependencies/{ImportWeakDependency.js → import/ImportWeakDependency.js} +18 -10
- package/lib/dependencies/{importOptionsCheck.js → import/importOptionsCheck.js} +2 -2
- package/lib/dependencies/{BuildTimeConstDependency.js → import-meta/BuildTimeConstDependency.js} +12 -11
- package/lib/dependencies/{ImportMetaMainDependency.js → import-meta/ImportMetaMainDependency.js} +12 -11
- package/lib/dependencies/{ImportMetaPlugin.js → import-meta/ImportMetaPlugin.js} +119 -98
- package/lib/dependencies/{SystemPlugin.js → system/SystemPlugin.js} +11 -38
- package/lib/dependencies/{SystemRuntimeModule.js → system/SystemRuntimeModule.js} +3 -3
- package/lib/dependencies/{ImportMetaResolveDependency.js → url/ImportMetaResolveDependency.js} +9 -8
- package/lib/dependencies/{URLContextDependency.js → url/URLContextDependency.js} +11 -10
- package/lib/dependencies/{URLDependency.js → url/URLDependency.js} +28 -20
- package/lib/{url → dependencies/url}/URLParserPlugin.js +16 -18
- package/lib/dependencies/{URLPlugin.js → url/URLPlugin.js} +6 -7
- package/lib/dependencies/{WebAssemblyExportImportedDependency.js → wasm/WebAssemblyExportImportedDependency.js} +18 -11
- package/lib/dependencies/{WebAssemblyImportDependency.js → wasm/WebAssemblyImportDependency.js} +19 -12
- package/lib/dependencies/{CreateScriptUrlDependency.js → worker/CreateScriptUrlDependency.js} +12 -11
- package/lib/dependencies/{WorkerAndWorkletPlugin.js → worker/WorkerAndWorkletPlugin.js} +31 -33
- package/lib/dependencies/{WorkerDependency.js → worker/WorkerDependency.js} +22 -15
- package/lib/dependencies/{WorkletDependency.js → worker/WorkletDependency.js} +19 -18
- package/lib/{EvalDevToolModulePlugin.js → devtool/EvalDevToolModulePlugin.js} +20 -6
- package/lib/{EvalSourceMapDevToolPlugin.js → devtool/EvalSourceMapDevToolPlugin.js} +32 -24
- package/lib/devtool/ModuleFilenameHelpers.js +413 -0
- package/lib/{SourceMapDevToolModuleOptionsPlugin.js → devtool/SourceMapDevToolModuleOptionsPlugin.js} +10 -3
- package/lib/{SourceMapDevToolPlugin.js → devtool/SourceMapDevToolPlugin.js} +154 -26
- package/lib/{util → devtool}/generateDebugId.js +1 -1
- package/lib/{IgnoreWarningsPlugin.js → diagnostics/IgnoreWarningsPlugin.js} +2 -2
- package/lib/{NoEmitOnErrorsPlugin.js → diagnostics/NoEmitOnErrorsPlugin.js} +1 -1
- package/lib/diagnostics/WarnCaseSensitiveModulesPlugin.js +64 -0
- package/lib/{WarnDeprecatedOptionPlugin.js → diagnostics/WarnDeprecatedOptionPlugin.js} +2 -22
- package/lib/diagnostics/WarnNoModeSetPlugin.js +27 -0
- package/lib/dll/DelegatedModule.js +20 -18
- package/lib/dll/DelegatedModuleFactoryPlugin.js +2 -2
- package/lib/dll/DelegatedPlugin.js +1 -1
- package/lib/{dependencies → dll}/DelegatedSourceDependency.js +5 -4
- package/lib/{dependencies → dll}/DllEntryDependency.js +6 -5
- package/lib/dll/DllEntryPlugin.js +3 -3
- package/lib/dll/DllModule.js +11 -9
- package/lib/dll/DllModuleFactory.js +3 -3
- package/lib/dll/DllPlugin.js +18 -6
- package/lib/dll/DllReferencePlugin.js +102 -26
- package/lib/dll/LibManifestPlugin.js +9 -7
- package/lib/electron/ElectronTargetPlugin.js +2 -2
- package/lib/{DynamicEntryPlugin.js → entry/DynamicEntryPlugin.js} +3 -3
- package/lib/{dependencies → entry}/EntryDependency.js +11 -2
- package/lib/{EntryOptionPlugin.js → entry/EntryOptionPlugin.js} +6 -6
- package/lib/entry/EntryPlugin.js +75 -0
- package/lib/{performance → errors}/AssetsOverSizeLimitWarning.js +2 -2
- package/lib/errors/AsyncDependencyToInitialChunkError.js +2 -2
- package/lib/errors/BuildCycleError.js +1 -1
- package/lib/{WarnCaseSensitiveModulesPlugin.js → errors/CaseSensitiveModulesWarning.js} +4 -56
- package/lib/errors/ChunkRenderError.js +1 -1
- package/lib/errors/CodeGenerationError.js +1 -1
- package/lib/errors/CommentCompilationWarning.js +1 -1
- package/lib/errors/ConflictingEntryExportsWarning.js +38 -0
- package/lib/{dependencies → errors}/CriticalDependencyWarning.js +4 -3
- package/lib/errors/DeprecatedOptionWarning.js +30 -0
- package/lib/errors/DllManifestError.js +26 -0
- package/lib/{performance → errors}/DuplicatePackagesWarning.js +6 -6
- package/lib/{dependencies/HarmonyLinkingError.js → errors/ESMLinkingError.js} +4 -4
- package/lib/{performance → errors}/EntrypointsOverSizeLimitWarning.js +2 -2
- package/lib/errors/EnvironmentNotSupportAsyncWarning.js +2 -2
- package/lib/{ErrorHelpers.js → errors/ErrorHelpers.js} +7 -5
- package/lib/errors/ExternalStarReexportError.js +2 -2
- package/lib/{library → errors}/FalseIIFEUmdWarning.js +1 -1
- package/lib/errors/HookWebpackError.js +4 -4
- package/lib/errors/IgnoreErrorModuleFactory.js +3 -3
- package/lib/errors/InvalidDependenciesModuleWarning.js +1 -1
- package/lib/{optimize → errors}/MinMaxSizeWarning.js +1 -1
- package/lib/errors/ModuleBuildError.js +1 -1
- package/lib/errors/ModuleDependencyError.js +2 -2
- package/lib/errors/ModuleDependencyWarning.js +2 -2
- package/lib/errors/ModuleError.js +1 -1
- package/lib/errors/ModuleHashingError.js +1 -1
- package/lib/errors/ModuleNotFoundError.js +3 -3
- package/lib/errors/ModuleParseError.js +1 -1
- package/lib/errors/ModuleRestoreError.js +1 -1
- package/lib/errors/ModuleStoreError.js +1 -1
- package/lib/errors/ModuleWarning.js +1 -1
- package/lib/{performance → errors}/NoAsyncChunksWarning.js +1 -1
- package/lib/{WarnNoModeSetPlugin.js → errors/NoModeWarning.js} +2 -19
- package/lib/errors/NodeStuffInWebError.js +7 -2
- package/lib/errors/PathVariableError.js +31 -0
- package/lib/errors/RequireIncludeDeprecationWarning.js +40 -0
- package/lib/{performance → errors}/RuntimeInLargeChunkWarning.js +1 -1
- package/lib/errors/RuntimeModuleGenerationError.js +51 -0
- package/lib/errors/SSRManifestAutoPublicPathWarning.js +24 -0
- package/lib/errors/SystemImportDeprecationWarning.js +43 -0
- package/lib/errors/UnmergeableEntryExportsError.js +34 -0
- package/lib/errors/UnsupportedFeatureWarning.js +1 -1
- package/lib/{wasm-sync → errors}/UnsupportedWebAssemblyFeatureError.js +1 -1
- package/lib/{wasm-sync → errors}/WebAssemblyInInitialChunkError.js +7 -5
- package/lib/errors/WebpackError.js +12 -3
- package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -2
- package/lib/esm/ModuleChunkFormatPlugin.js +19 -19
- package/lib/esm/ModuleChunkLoadingPlugin.js +3 -3
- package/lib/esm/ModuleChunkLoadingRuntimeModule.js +8 -8
- package/lib/{ExternalModule.js → externals/ExternalModule.js} +79 -55
- package/lib/{ExternalModuleFactoryPlugin.js → externals/ExternalModuleFactoryPlugin.js} +41 -39
- package/lib/externals/ExternalsPlugin.js +99 -0
- package/lib/fs/FileSystemInfo.js +4642 -0
- package/lib/{util → fs}/fs.js +22 -9
- package/lib/{AsyncDependenciesBlock.js → graph/AsyncDependenciesBlock.js} +27 -4
- package/lib/graph/Chunk.js +985 -0
- package/lib/{ChunkGraph.js → graph/ChunkGraph.js} +187 -80
- package/lib/{ChunkGroup.js → graph/ChunkGroup.js} +11 -3
- package/lib/{DependenciesBlock.js → graph/DependenciesBlock.js} +16 -4
- package/lib/graph/Dependency.js +628 -0
- package/lib/graph/Entrypoint.js +136 -0
- package/lib/{ExportsInfo.js → graph/ExportsInfo.js} +130 -82
- package/lib/{HotUpdateChunk.js → graph/HotUpdateChunk.js} +8 -0
- package/lib/{ModuleGraph.js → graph/ModuleGraph.js} +30 -30
- package/lib/{ModuleGraphConnection.js → graph/ModuleGraphConnection.js} +2 -2
- package/lib/{buildChunkGraph.js → graph/buildChunkGraph.js} +152 -57
- package/lib/{util → graph}/findGraphRoots.js +14 -8
- package/lib/graph/isDependencyKind.js +23 -0
- package/lib/hmr/HotModuleReplacement.runtime.js +2 -2
- package/lib/{HotModuleReplacementPlugin.js → hmr/HotModuleReplacementPlugin.js} +47 -47
- package/lib/hmr/HotModuleReplacementRuntimeModule.js +3 -3
- package/lib/hmr/JavascriptHotModuleReplacement.runtime.js +10 -8
- package/lib/hmr/JavascriptHotModuleReplacementHelper.js +2 -2
- package/lib/hmr/LazyCompilationPlugin.js +31 -21
- package/lib/html/HtmlGenerator.js +107 -43
- package/lib/html/HtmlModule.js +6 -2
- package/lib/html/HtmlModulesPlugin.js +172 -76
- package/lib/html/HtmlParser.js +503 -153
- package/lib/html/builtinEmbeddedRenderer.js +60 -13
- package/lib/html/data.js +2 -1
- package/lib/html/htmlMinify.js +111 -41
- package/lib/html/syntax-parser.js +15796 -0
- package/lib/html/syntax-printer.js +1034 -0
- package/lib/html/syntax.js +37 -13952
- package/lib/html/xmlMinify.js +67 -0
- package/lib/ids/ChunkModuleIdRangePlugin.js +2 -2
- package/lib/ids/DeterministicModuleIdsPlugin.js +1 -1
- package/lib/ids/HashedModuleIdsPlugin.js +31 -4
- package/lib/ids/IdHelpers.js +4 -4
- package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
- package/lib/ids/OccurrenceChunkIdsPlugin.js +6 -5
- package/lib/ids/OccurrenceModuleIdsPlugin.js +6 -5
- package/lib/{RecordIdsPlugin.js → ids/RecordIdsPlugin.js} +5 -5
- package/lib/ids/SyncModuleIdsPlugin.js +3 -3
- package/lib/{util → ids}/numberHash.js +1 -1
- package/lib/index.js +303 -97
- package/lib/{APIPlugin.js → javascript/APIPlugin.js} +25 -25
- package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +4 -5
- package/lib/javascript/BasicEvaluatedExpression.js +4 -4
- package/lib/javascript/ChunkHelpers.js +64 -4
- package/lib/javascript/CommonJsChunkFormatPlugin.js +4 -7
- package/lib/{CompatibilityPlugin.js → javascript/CompatibilityPlugin.js} +7 -7
- package/lib/{ConstPlugin.js → javascript/ConstPlugin.js} +74 -7
- package/lib/{ExportsInfoApiPlugin.js → javascript/ExportsInfoApiPlugin.js} +5 -5
- package/lib/{dependencies → javascript}/ExportsInfoDependency.js +10 -9
- package/lib/javascript/JavascriptGenerator.js +17 -17
- package/lib/{JavascriptMetaInfoPlugin.js → javascript/JavascriptMetaInfoPlugin.js} +7 -7
- package/lib/javascript/JavascriptModule.js +4 -3
- package/lib/javascript/JavascriptModulesPlugin.js +440 -211
- package/lib/javascript/JavascriptParser.js +220 -134
- package/lib/javascript/JavascriptParserHelpers.js +1 -1
- package/lib/javascript/MergedEntryExports.js +196 -0
- package/lib/javascript/ScopeAnalyzer.js +3840 -5
- package/lib/javascript/StartupHelpers.js +6 -6
- package/lib/{UseStrictPlugin.js → javascript/UseStrictPlugin.js} +12 -15
- package/lib/{dependencies → javascript}/WebpackIsIncludedDependency.js +10 -9
- package/lib/{WebpackIsIncludedPlugin.js → javascript/WebpackIsIncludedPlugin.js} +8 -8
- package/lib/javascript/data.js +533 -122
- package/lib/javascript/jsMinify.js +272 -0
- package/lib/javascript/regexp.js +67 -32
- package/lib/javascript/syntax-parser.js +18561 -0
- package/lib/javascript/syntax-printer-data.js +933 -0
- package/lib/javascript/syntax-printer.js +47106 -0
- package/lib/javascript/syntax.js +20 -11274
- package/lib/json/JsonData.js +1 -1
- package/lib/{dependencies → json}/JsonExportsDependency.js +8 -7
- package/lib/json/JsonGenerator.js +10 -10
- package/lib/json/JsonModule.js +2 -2
- package/lib/json/JsonModulesPlugin.js +1 -1
- package/lib/json/JsonParser.js +5 -5
- package/lib/json/jsonMinify.js +69 -0
- package/lib/library/AbstractLibraryPlugin.js +28 -15
- package/lib/library/AmdLibraryPlugin.js +4 -4
- package/lib/library/AssignLibraryPlugin.js +27 -11
- package/lib/library/EnableLibraryPlugin.js +1 -1
- package/lib/library/ExportPropertyLibraryPlugin.js +4 -4
- package/lib/library/JsonpLibraryPlugin.js +1 -1
- package/lib/library/LibraryTemplatePlugin.js +53 -0
- package/lib/library/ModuleLibraryPlugin.js +160 -166
- package/lib/library/SystemLibraryPlugin.js +6 -8
- package/lib/library/UmdLibraryPlugin.js +3 -4
- package/lib/{dependencies → loaders}/LoaderDependency.js +3 -3
- package/lib/{dependencies → loaders}/LoaderImportDependency.js +9 -3
- package/lib/{LoaderOptionsPlugin.js → loaders/LoaderOptionsPlugin.js} +30 -12
- package/lib/{dependencies → loaders}/LoaderPlugin.js +2 -2
- package/lib/loaders/LoaderRunner.js +31 -21
- package/lib/{LoaderTargetPlugin.js → loaders/LoaderTargetPlugin.js} +2 -2
- package/lib/logging/Logger.js +7 -9
- package/lib/logging/ProgressPlugin.js +957 -0
- package/lib/{CodeGenerationResults.js → module/CodeGenerationResults.js} +7 -7
- package/lib/{Generator.js → module/Generator.js} +16 -14
- package/lib/{Module.js → module/Module.js} +119 -51
- package/lib/{ModuleFactory.js → module/ModuleFactory.js} +3 -3
- package/lib/module/NormalModule.js +2348 -0
- package/lib/{NormalModuleFactory.js → module/NormalModuleFactory.js} +53 -54
- package/lib/module/NullFactory.js +29 -0
- package/lib/{Parser.js → module/Parser.js} +3 -3
- package/lib/module/RawModule.js +208 -0
- package/lib/{SelfModuleFactory.js → module/SelfModuleFactory.js} +1 -1
- package/lib/{util → module}/extractSourceMap.js +2 -2
- package/lib/{util → module}/findCaseMismatch.js +2 -2
- package/lib/node/CommonJsChunkLoadingPlugin.js +3 -3
- package/lib/{dependencies → node}/ExternalModuleDependency.js +8 -7
- package/lib/{dependencies → node}/ExternalModuleInitFragment.js +6 -5
- package/lib/{dependencies → node}/ExternalModuleInitFragmentDependency.js +14 -9
- package/lib/node/NodeEnvironmentPlugin.js +11 -1
- package/lib/{NodeStuffPlugin.js → node/NodeStuffPlugin.js} +17 -17
- package/lib/node/NodeTargetPlugin.js +1 -1
- package/lib/node/NodeWatchFileSystem.js +58 -6
- package/lib/node/ReadFileChunkLoadingRuntimeModule.js +7 -7
- package/lib/node/ReadFileCompileAsyncWasmPlugin.js +9 -7
- package/lib/node/ReadFileCompileWasmPlugin.js +7 -5
- package/lib/node/RequireChunkLoadingRuntimeModule.js +7 -7
- package/lib/node/nodeConsole.js +2 -4
- package/lib/optimize/AggressiveMergingPlugin.js +2 -2
- package/lib/optimize/AggressiveSplittingPlugin.js +12 -8
- package/lib/{CircularModulesPlugin.js → optimize/CircularModulesPlugin.js} +13 -13
- package/lib/optimize/ConcatenatedModule.js +229 -214
- package/lib/{ConcatenationScope.js → optimize/ConcatenationScope.js} +39 -6
- package/lib/optimize/ConstExportsPlugin.js +7 -7
- package/lib/optimize/EnsureChunkConditionsPlugin.js +3 -3
- package/lib/{FlagAllModulesAsUsedPlugin.js → optimize/FlagAllModulesAsUsedPlugin.js} +3 -3
- package/lib/{FlagDependencyExportsPlugin.js → optimize/FlagDependencyExportsPlugin.js} +17 -17
- package/lib/{FlagDependencyUsagePlugin.js → optimize/FlagDependencyUsagePlugin.js} +17 -17
- package/lib/{FlagEntryExportAsUsedPlugin.js → optimize/FlagEntryExportAsUsedPlugin.js} +2 -2
- package/lib/optimize/FlagIncludedChunksPlugin.js +2 -2
- package/lib/optimize/InlineExports.js +11 -3
- package/lib/optimize/InnerGraph.js +5 -13
- package/lib/optimize/InnerGraphPlugin.js +10 -10
- package/lib/optimize/LazyBarrels.js +584 -0
- package/lib/{util → optimize}/LazyBucketSortedSet.js +2 -2
- package/lib/optimize/LimitChunkCountPlugin.js +16 -7
- package/lib/optimize/MangleExportsPlugin.js +5 -5
- package/lib/optimize/MergeDuplicateChunksPlugin.js +7 -6
- package/lib/optimize/MinChunkSizePlugin.js +9 -6
- package/lib/optimize/ModuleConcatenationPlugin.js +20 -12
- package/lib/{dependencies → optimize}/PureExpressionDependency.js +11 -10
- package/lib/optimize/RealContentHashPlugin.js +16 -7
- package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -2
- package/lib/optimize/RemoveParentModulesPlugin.js +4 -4
- package/lib/optimize/SideEffectsFlagPlugin.js +18 -18
- package/lib/optimize/SplitChunksPlugin.js +713 -155
- package/lib/{util → optimize}/TupleQueue.js +9 -9
- package/lib/optimize/chunkSetIntersections.js +437 -0
- package/lib/{util → optimize}/deterministicGrouping.js +17 -17
- package/lib/{BannerPlugin.js → output/BannerPlugin.js} +82 -14
- package/lib/{CleanPlugin.js → output/CleanPlugin.js} +66 -24
- package/lib/{CopyPlugin.js → output/CopyPlugin.js} +142 -67
- package/lib/{ManifestPlugin.js → output/ManifestPlugin.js} +91 -17
- package/lib/output/SSRManifestPlugin.js +349 -0
- package/lib/performance/AnalyzableBailoutsPlugin.js +1 -1
- package/lib/performance/AsyncChunkWaterfallsPlugin.js +1 -1
- package/lib/performance/BroadContextsPlugin.js +4 -4
- package/lib/performance/CacheEffectivenessPlugin.js +2 -3
- package/lib/performance/ConflictingResourceHintsPlugin.js +1 -1
- package/lib/performance/DuplicateModulesPlugin.js +3 -4
- package/lib/performance/DuplicatePackagesPlugin.js +3 -3
- package/lib/performance/DynamicExportsPlugin.js +2 -2
- package/lib/performance/EvalUsagePlugin.js +3 -3
- package/lib/performance/HotspotsPlugin.js +11 -10
- package/lib/performance/LargeModulesPlugin.js +2 -3
- package/lib/performance/LegacyJavascriptPlugin.js +1 -2
- package/lib/performance/MissingSideEffectsPlugin.js +2 -3
- package/lib/performance/MissingSourceMapsPlugin.js +5 -6
- package/lib/performance/PureAnnotationsPlugin.js +3 -3
- package/lib/performance/RedundantDynamicImportsPlugin.js +6 -8
- package/lib/performance/ScopeHoistingBailoutsPlugin.js +2 -2
- package/lib/performance/SizeLimitsPlugin.js +11 -12
- package/lib/performance/TopLevelThisPlugin.js +8 -7
- package/lib/performance/UnsplitVendorsPlugin.js +1 -2
- package/lib/performance/UnusedAliasesPlugin.js +6 -7
- package/lib/performance/UnusedAssetsPlugin.js +5 -5
- package/lib/performance/UnusedDefinesPlugin.js +2 -2
- package/lib/performance/UnusedExternalsPlugin.js +3 -4
- package/lib/performance/UnusedFederationPlugin.js +2 -4
- package/lib/performance/UnusedModulesPlugin.js +5 -4
- package/lib/performance/getModuleSize.js +1 -1
- package/lib/performance/hasOnlyUnusedExports.js +4 -4
- package/lib/performance/isOnlyReexported.js +7 -6
- package/lib/{AutomaticPrefetchPlugin.js → prefetch/AutomaticPrefetchPlugin.js} +4 -5
- package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +2 -2
- package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +1 -1
- package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +4 -4
- package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +4 -4
- package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +4 -4
- package/lib/{dependencies → prefetch}/PrefetchDependency.js +1 -1
- package/lib/{PrefetchPlugin.js → prefetch/PrefetchPlugin.js} +2 -2
- package/lib/prefetch/ResourceHintPlugin.js +65 -44
- package/lib/prefetch/ResourceHintRuntimeModule.js +3 -3
- package/lib/prefetch/StartupAssetHintRuntimeModule.js +3 -3
- package/lib/prefetch/parseResourceHintOptions.js +4 -3
- package/lib/{ProvidePlugin.js → provide/ProvidePlugin.js} +7 -7
- package/lib/{dependencies → provide}/ProvidedDependency.js +14 -13
- package/lib/{IgnorePlugin.js → resolve/IgnorePlugin.js} +30 -13
- package/lib/{NormalModuleReplacementPlugin.js → resolve/NormalModuleReplacementPlugin.js} +4 -4
- package/lib/{ResolverFactory.js → resolve/ResolverFactory.js} +18 -5
- package/lib/resolve/getResolveOptionsKey.js +59 -0
- package/lib/rules/RuleSetCompiler.js +27 -46
- package/lib/runtime/AsyncModuleGeneratorRuntimeModule.js +2 -2
- package/lib/runtime/AsyncModuleRuntimeModule.js +7 -4
- package/lib/runtime/AutoPublicPathRuntimeModule.js +5 -5
- package/lib/runtime/BaseUriRuntimeModule.js +3 -3
- package/lib/runtime/ChunkNameRuntimeModule.js +2 -2
- package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +2 -2
- package/lib/runtime/CompatRuntimeModule.js +4 -4
- package/lib/runtime/ConcatenationWrapRuntimeModule.js +2 -2
- package/lib/runtime/ConstructRequireRuntimeModule.js +2 -2
- package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +2 -2
- package/lib/runtime/CreateScriptRuntimeModule.js +2 -2
- package/lib/runtime/CreateScriptUrlRuntimeModule.js +2 -2
- package/lib/runtime/DefinePropertyGettersRuntimeModule.js +6 -6
- package/lib/runtime/EnsureChunkRuntimeModule.js +4 -4
- package/lib/runtime/GetChunkFilenameRuntimeModule.js +6 -6
- package/lib/runtime/GetFullHashRuntimeModule.js +2 -2
- package/lib/runtime/GetMainFilenameRuntimeModule.js +4 -4
- package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +3 -3
- package/lib/runtime/GetWorkletBootstrapRuntimeModule.js +3 -3
- package/lib/runtime/GlobalRuntimeModule.js +3 -3
- package/lib/runtime/HasOwnPropertyRuntimeModule.js +3 -3
- package/lib/runtime/HelperRuntimeModule.js +16 -1
- package/lib/runtime/LoadScriptRuntimeModule.js +3 -3
- package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +80 -17
- package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +2 -2
- package/lib/runtime/NonceRuntimeModule.js +2 -2
- package/lib/runtime/OnChunksLoadedRuntimeModule.js +4 -4
- package/lib/runtime/PublicPathRuntimeModule.js +2 -2
- package/lib/runtime/RelativeUrlRuntimeModule.js +2 -2
- package/lib/{RuntimeGlobals.js → runtime/RuntimeGlobals.js} +18 -1
- package/lib/runtime/RuntimeIdRuntimeModule.js +4 -4
- package/lib/{RuntimeModule.js → runtime/RuntimeModule.js} +36 -21
- package/lib/{RuntimePlugin.js → runtime/RuntimePlugin.js} +48 -50
- package/lib/runtime/SetAnonymousDefaultNameRuntimeModule.js +2 -2
- package/lib/runtime/SpecNamespaceObjectRuntimeModule.js +2 -2
- package/lib/runtime/StartupChunkDependenciesPlugin.js +2 -2
- package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +5 -5
- package/lib/runtime/StartupEntrypointRuntimeModule.js +3 -3
- package/lib/runtime/SystemContextRuntimeModule.js +2 -2
- package/lib/runtime/ToBinaryRuntimeModule.js +3 -3
- package/lib/runtime/WorkerRuntimeModule.js +1 -1
- package/lib/runtime/baseUri.js +1 -1
- package/lib/schemes/DataUriPlugin.js +1 -1
- package/lib/schemes/HttpUriPlugin.js +67 -11
- package/lib/schemes/VirtualUrlPlugin.js +50 -16
- package/lib/serialization/AggregateErrorSerializer.js +2 -2
- package/lib/serialization/FileMiddleware.js +3 -3
- package/lib/serialization/ObjectMiddleware.js +47 -16
- package/lib/serialization/SerializerMiddleware.js +2 -2
- package/lib/serialization/SingleItemMiddleware.js +4 -2
- package/lib/sharing/ConsumeSharedFallbackDependency.js +9 -1
- package/lib/sharing/ConsumeSharedModule.js +18 -14
- package/lib/sharing/ConsumeSharedPlugin.js +148 -42
- package/lib/sharing/ConsumeSharedRuntimeModule.js +8 -8
- package/lib/sharing/ProvideForSharedDependency.js +9 -1
- package/lib/sharing/ProvideSharedDependency.js +1 -1
- package/lib/sharing/ProvideSharedModule.js +11 -9
- package/lib/sharing/ProvideSharedModuleFactory.js +2 -2
- package/lib/sharing/ProvideSharedPlugin.js +111 -20
- package/lib/sharing/SharePlugin.js +102 -9
- package/lib/sharing/ShareRuntimeModule.js +6 -6
- package/lib/sharing/resolveMatchedConfigs.js +1 -1
- package/lib/{util → sharing}/semver.js +14 -16
- package/lib/sharing/utils.js +59 -2
- package/lib/stats/DefaultStatsFactoryPlugin.js +22 -19
- package/lib/stats/DefaultStatsPresetPlugin.js +1 -1
- package/lib/stats/DefaultStatsPrinterPlugin.js +3 -3
- package/lib/{MultiStats.js → stats/MultiStats.js} +4 -4
- package/lib/{Stats.js → stats/Stats.js} +4 -4
- package/lib/stats/StatsFactory.js +14 -13
- package/lib/{ChunkTemplate.js → template/ChunkTemplate.js} +7 -7
- package/lib/{ConditionalInitFragment.js → template/ConditionalInitFragment.js} +3 -3
- package/lib/template/DependencyTemplate.js +77 -0
- package/lib/{DependencyTemplates.js → template/DependencyTemplates.js} +9 -4
- package/lib/template/InitFragment.js +223 -0
- package/lib/{MainTemplate.js → template/MainTemplate.js} +11 -11
- package/lib/{ModuleInfoHeaderPlugin.js → template/ModuleInfoHeaderPlugin.js} +30 -8
- package/lib/{ModuleTemplate.js → template/ModuleTemplate.js} +6 -6
- package/lib/{RuntimeTemplate.js → template/RuntimeTemplate.js} +145 -63
- package/lib/{Template.js → template/Template.js} +13 -11
- package/lib/{TemplatedPathPlugin.js → template/TemplatedPathPlugin.js} +19 -23
- package/lib/typescript/TypeScriptPlugin.js +3 -3
- package/lib/util/RequestShortener.js +44 -0
- package/lib/util/SortableSet.js +87 -22
- package/lib/util/SourceProcessor.js +349 -44
- package/lib/util/TupleSet.js +27 -27
- package/lib/util/WeakTupleMap.js +10 -12
- package/lib/util/buildDiagnostics.js +2 -2
- package/lib/util/comparators.js +10 -10
- package/lib/util/concatenate.js +28 -147
- package/lib/util/createMappings.js +111 -0
- package/lib/util/dataURL.js +94 -15
- package/lib/util/deprecation.js +1 -1
- package/lib/util/extractComments.js +118 -0
- package/lib/util/formatLocation.js +1 -1
- package/lib/util/globUtils.js +197 -16
- package/lib/util/haltVisitors.js +51 -0
- package/lib/util/handlerKeys.js +2 -2
- package/lib/util/identifier.js +117 -1
- package/lib/util/implicitTypeLoaderFallback.js +6 -4
- package/lib/util/internalSerializables.js +294 -102
- package/lib/util/magicComment.js +12 -7
- package/lib/util/makeSerializable.js +23 -4
- package/lib/util/parseJson.js +1 -1
- package/lib/util/preloadModuleType.js +5 -2
- package/lib/util/registerExternalSerializer.js +2 -2
- package/lib/util/removeBOM.js +1 -1
- package/lib/util/runtime.js +1 -1
- package/lib/util/serialization.js +4 -1
- package/lib/util/source.js +2 -2
- package/lib/util/terminalColors.js +161 -0
- package/lib/{wasm-async → wasm}/AsyncWasmCompileRuntimeModule.js +5 -5
- package/lib/{wasm-async → wasm}/AsyncWasmLoadingRuntimeModule.js +5 -5
- package/lib/{wasm-async → wasm}/AsyncWasmModule.js +9 -5
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyGenerator.js +5 -5
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyJavascriptGenerator.js +11 -10
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyModulesPlugin.js +26 -10
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyParser.js +8 -8
- package/lib/wasm/EnableWasmLoadingPlugin.js +1 -1
- package/lib/{wasm-async → wasm}/UniversalCompileAsyncWasmPlugin.js +9 -7
- package/lib/wasm/wasmModuleFilename.js +2 -2
- package/lib/wasm-sync/SyncWasmModule.js +3 -3
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +8 -8
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +3 -3
- package/lib/wasm-sync/WebAssemblyGenerator.js +9 -8
- package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +14 -15
- package/lib/wasm-sync/WebAssemblyModulesPlugin.js +9 -7
- package/lib/wasm-sync/WebAssemblyParser.js +6 -6
- package/lib/wasm-sync/WebAssemblyUtils.js +6 -5
- package/lib/{MultiWatching.js → watch/MultiWatching.js} +3 -3
- package/lib/{WatchIgnorePlugin.js → watch/WatchIgnorePlugin.js} +43 -9
- package/lib/{Watching.js → watch/Watching.js} +8 -8
- package/lib/web/FetchCompileAsyncWasmPlugin.js +8 -6
- package/lib/web/FetchCompileWasmPlugin.js +6 -4
- package/lib/web/JsonpChunkLoadingPlugin.js +3 -3
- package/lib/web/JsonpChunkLoadingRuntimeModule.js +6 -6
- package/lib/web/JsonpTemplatePlugin.js +1 -1
- package/lib/webpack.js +27 -17
- package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +3 -3
- package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +6 -6
- package/package.json +48 -41
- package/schemas/WebpackOptions.check.js +2 -1
- package/schemas/WebpackOptions.d.json.ts +2 -0
- package/schemas/WebpackOptions.json +294 -74
- package/schemas/plugins/BannerPlugin.check.js +2 -1
- package/schemas/plugins/BannerPlugin.json +29 -2
- package/schemas/plugins/HtmlGeneratorOptions.check.js +1 -0
- package/schemas/plugins/HtmlParserOptions.check.js +2 -1
- package/schemas/plugins/IgnorePlugin.check.js +1 -0
- package/schemas/plugins/IgnorePlugin.d.json.ts +2 -0
- package/schemas/plugins/IgnorePlugin.json +1 -1
- package/schemas/plugins/LoaderOptionsPlugin.check.js +1 -0
- package/schemas/plugins/ManifestPlugin.check.js +1 -0
- package/schemas/plugins/ManifestPlugin.json +3 -3
- package/schemas/plugins/ProgressPlugin.check.js +2 -1
- package/schemas/plugins/ProgressPlugin.json +2 -7
- package/schemas/plugins/SSRManifestPlugin.check.js +7 -0
- package/schemas/plugins/SSRManifestPlugin.json +20 -0
- package/schemas/plugins/SourceMapDevToolPlugin.check.js +2 -1
- package/schemas/plugins/SourceMapDevToolPlugin.json +44 -12
- package/schemas/plugins/WatchIgnorePlugin.check.js +2 -1
- package/schemas/plugins/WatchIgnorePlugin.json +12 -3
- package/schemas/plugins/asset/AssetGeneratorOptions.check.js +1 -0
- package/schemas/plugins/asset/AssetInlineGeneratorOptions.check.js +1 -0
- package/schemas/plugins/asset/AssetParserOptions.check.js +1 -0
- package/schemas/plugins/asset/AssetResourceGeneratorOptions.check.js +1 -0
- package/schemas/plugins/container/ContainerPlugin.check.js +2 -1
- package/schemas/plugins/container/ContainerPlugin.json +8 -0
- package/schemas/plugins/container/ContainerReferencePlugin.check.js +1 -0
- package/schemas/plugins/container/ExternalsType.check.js +1 -0
- package/schemas/plugins/container/ModuleFederationPlugin.check.js +2 -1
- package/schemas/plugins/container/ModuleFederationPlugin.json +40 -0
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +1 -0
- package/schemas/plugins/css/CssGeneratorOptions.check.js +1 -0
- package/schemas/plugins/css/CssModuleGeneratorOptions.check.js +1 -0
- package/schemas/plugins/css/CssModuleParserOptions.check.js +1 -0
- package/schemas/plugins/css/CssParserOptions.check.js +1 -0
- package/schemas/plugins/debug/ProfilingPlugin.check.js +1 -0
- package/schemas/plugins/dll/DllPlugin.check.js +1 -0
- package/schemas/plugins/dll/DllReferencePlugin.check.js +2 -1
- package/schemas/plugins/dll/DllReferencePlugin.json +3 -18
- package/schemas/plugins/ids/HashedModuleIdsPlugin.check.js +1 -0
- package/schemas/plugins/ids/OccurrenceChunkIdsPlugin.check.js +1 -0
- package/schemas/plugins/ids/OccurrenceModuleIdsPlugin.check.js +1 -0
- package/schemas/plugins/json/JsonModulesPluginGenerator.check.js +1 -0
- package/schemas/plugins/json/JsonModulesPluginParser.check.js +1 -0
- package/schemas/plugins/optimize/AggressiveSplittingPlugin.check.js +1 -0
- package/schemas/plugins/optimize/LimitChunkCountPlugin.check.js +1 -0
- package/schemas/plugins/optimize/MergeDuplicateChunksPlugin.check.js +1 -0
- package/schemas/plugins/optimize/MinChunkSizePlugin.check.js +1 -0
- package/schemas/plugins/schemes/HttpUriPlugin.check.js +1 -0
- package/schemas/plugins/schemes/VirtualUrlPlugin.check.js +1 -0
- package/schemas/plugins/sharing/ConsumeSharedPlugin.check.js +2 -1
- package/schemas/plugins/sharing/ConsumeSharedPlugin.json +32 -0
- package/schemas/plugins/sharing/ProvideSharedPlugin.check.js +2 -1
- package/schemas/plugins/sharing/ProvideSharedPlugin.json +32 -0
- package/schemas/plugins/sharing/SharePlugin.check.js +2 -1
- package/schemas/plugins/sharing/SharePlugin.json +32 -0
- package/types.d.ts +19355 -13873
- package/lib/LazyBarrel.js +0 -388
- package/lib/dependencies/HarmonyAcceptImportDependency.js +0 -39
- package/lib/dependencies/HarmonyModulesPlugin.js +0 -192
- package/lib/javascript/ChunkFormatHelpers.js +0 -72
- package/lib/javascript/grammar.js +0 -5546
- package/lib/javascript/parser.js +0 -1500
- package/lib/javascript/regexpData.js +0 -51
- package/lib/performance/getSourceModules.js +0 -22
- package/lib/util/Semaphore.js +0 -65
- package/lib/util/objectToMap.js +0 -15
- package/schemas/WebpackOptions.check.d.ts +0 -7
- package/schemas/_container.json +0 -155
- package/schemas/_sharing.json +0 -118
- package/schemas/plugins/BannerPlugin.check.d.ts +0 -7
- package/schemas/plugins/HtmlGeneratorOptions.check.d.ts +0 -7
- package/schemas/plugins/HtmlParserOptions.check.d.ts +0 -7
- package/schemas/plugins/IgnorePlugin.check.d.ts +0 -7
- package/schemas/plugins/LoaderOptionsPlugin.check.d.ts +0 -7
- package/schemas/plugins/ManifestPlugin.check.d.ts +0 -7
- package/schemas/plugins/ProgressPlugin.check.d.ts +0 -7
- package/schemas/plugins/SourceMapDevToolPlugin.check.d.ts +0 -7
- package/schemas/plugins/WatchIgnorePlugin.check.d.ts +0 -7
- package/schemas/plugins/asset/AssetGeneratorOptions.check.d.ts +0 -7
- package/schemas/plugins/asset/AssetInlineGeneratorOptions.check.d.ts +0 -7
- package/schemas/plugins/asset/AssetParserOptions.check.d.ts +0 -7
- package/schemas/plugins/asset/AssetResourceGeneratorOptions.check.d.ts +0 -7
- package/schemas/plugins/container/ContainerPlugin.check.d.ts +0 -7
- package/schemas/plugins/container/ContainerReferencePlugin.check.d.ts +0 -7
- package/schemas/plugins/container/ExternalsType.check.d.ts +0 -7
- package/schemas/plugins/container/ModuleFederationPlugin.check.d.ts +0 -7
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.d.ts +0 -7
- package/schemas/plugins/css/CssGeneratorOptions.check.d.ts +0 -7
- package/schemas/plugins/css/CssModuleGeneratorOptions.check.d.ts +0 -7
- package/schemas/plugins/css/CssModuleParserOptions.check.d.ts +0 -7
- package/schemas/plugins/css/CssParserOptions.check.d.ts +0 -7
- package/schemas/plugins/debug/ProfilingPlugin.check.d.ts +0 -7
- package/schemas/plugins/dll/DllPlugin.check.d.ts +0 -7
- package/schemas/plugins/dll/DllReferencePlugin.check.d.ts +0 -7
- package/schemas/plugins/ids/HashedModuleIdsPlugin.check.d.ts +0 -7
- package/schemas/plugins/ids/OccurrenceChunkIdsPlugin.check.d.ts +0 -7
- package/schemas/plugins/ids/OccurrenceModuleIdsPlugin.check.d.ts +0 -7
- package/schemas/plugins/json/JsonModulesPluginGenerator.check.d.ts +0 -7
- package/schemas/plugins/json/JsonModulesPluginParser.check.d.ts +0 -7
- package/schemas/plugins/optimize/AggressiveSplittingPlugin.check.d.ts +0 -7
- package/schemas/plugins/optimize/LimitChunkCountPlugin.check.d.ts +0 -7
- package/schemas/plugins/optimize/MergeDuplicateChunksPlugin.check.d.ts +0 -7
- package/schemas/plugins/optimize/MinChunkSizePlugin.check.d.ts +0 -7
- package/schemas/plugins/schemes/HttpUriPlugin.check.d.ts +0 -7
- package/schemas/plugins/schemes/VirtualUrlPlugin.check.d.ts +0 -7
- package/schemas/plugins/sharing/ConsumeSharedPlugin.check.d.ts +0 -7
- package/schemas/plugins/sharing/ProvideSharedPlugin.check.d.ts +0 -7
- package/schemas/plugins/sharing/SharePlugin.check.d.ts +0 -7
- /package/lib/{validateSchema.js → config/validateSchema.js} +0 -0
- /package/lib/{util → css}/conventions.js +0 -0
- /package/lib/{util → css}/topologicalSort.js +0 -0
- /package/lib/dependencies/{getFunctionExpression.js → helpers/getFunctionExpression.js} +0 -0
- /package/lib/{util → externals}/extractUrlAndGlobal.js +0 -0
- /package/lib/{util → fs}/StackedCacheMap.js +0 -0
- /package/lib/{util → javascript}/StackedMap.js +0 -0
- /package/lib/{ModuleProfile.js → module/ModuleProfile.js} +0 -0
- /package/lib/{ModuleSourceTypeConstants.js → module/ModuleSourceTypeConstants.js} +0 -0
- /package/lib/{ModuleTypeConstants.js → module/ModuleTypeConstants.js} +0 -0
- /package/lib/{OptimizationStages.js → optimize/OptimizationStages.js} +0 -0
- /package/lib/{util → optimize}/Queue.js +0 -0
- /package/lib/{util → stats}/smartGrouping.js +0 -0
|
@@ -5,87 +5,70 @@
|
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
const
|
|
8
|
+
const AssetModulesPlugin = require("../asset/AssetModulesPlugin");
|
|
9
|
+
|
|
10
|
+
const InferAsyncModulesPlugin = require("../async-modules/InferAsyncModulesPlugin");
|
|
11
|
+
|
|
12
|
+
const ResolverCachePlugin = require("../cache/ResolverCachePlugin");
|
|
13
|
+
|
|
14
|
+
const CommonJsPlugin = require("../dependencies/commonjs/CommonJsPlugin");
|
|
15
|
+
const RequireEnsurePlugin = require("../dependencies/commonjs/RequireEnsurePlugin");
|
|
16
|
+
const RequireIncludePlugin = require("../dependencies/commonjs/RequireIncludePlugin");
|
|
17
|
+
const ImportMetaContextPlugin = require("../dependencies/context/ImportMetaContextPlugin");
|
|
18
|
+
const RequireContextPlugin = require("../dependencies/context/RequireContextPlugin");
|
|
19
|
+
const ESMModulesPlugin = require("../dependencies/esm/ESMModulesPlugin");
|
|
20
|
+
const ImportPlugin = require("../dependencies/import/ImportPlugin");
|
|
21
|
+
const ImportMetaPlugin = require("../dependencies/import-meta/ImportMetaPlugin");
|
|
22
|
+
|
|
23
|
+
const SystemPlugin = require("../dependencies/system/SystemPlugin");
|
|
24
|
+
const URLPlugin = require("../dependencies/url/URLPlugin");
|
|
25
|
+
|
|
26
|
+
const WorkerAndWorkletPlugin = require("../dependencies/worker/WorkerAndWorkletPlugin");
|
|
27
|
+
const WarnCaseSensitiveModulesPlugin = require("../diagnostics/WarnCaseSensitiveModulesPlugin");
|
|
28
|
+
const EntryOptionPlugin = require("../entry/EntryOptionPlugin");
|
|
29
|
+
const RecordIdsPlugin = require("../ids/RecordIdsPlugin");
|
|
30
|
+
const APIPlugin = require("../javascript/APIPlugin");
|
|
31
|
+
const CompatibilityPlugin = require("../javascript/CompatibilityPlugin");
|
|
32
|
+
const ConstPlugin = require("../javascript/ConstPlugin");
|
|
33
|
+
const ExportsInfoApiPlugin = require("../javascript/ExportsInfoApiPlugin");
|
|
34
|
+
const JavascriptMetaInfoPlugin = require("../javascript/JavascriptMetaInfoPlugin");
|
|
35
|
+
|
|
36
|
+
const JavascriptModulesPlugin = require("../javascript/JavascriptModulesPlugin");
|
|
37
|
+
const UseStrictPlugin = require("../javascript/UseStrictPlugin");
|
|
38
|
+
const WebpackIsIncludedPlugin = require("../javascript/WebpackIsIncludedPlugin");
|
|
39
|
+
|
|
40
|
+
const JsonModulesPlugin = require("../json/JsonModulesPlugin");
|
|
41
|
+
const LoaderPlugin = require("../loaders/LoaderPlugin");
|
|
42
|
+
const NodeStuffPlugin = require("../node/NodeStuffPlugin");
|
|
43
|
+
const FlagDependencyExportsPlugin = require("../optimize/FlagDependencyExportsPlugin");
|
|
44
|
+
|
|
45
|
+
const ChunkPrefetchPreloadPlugin = require("../prefetch/ChunkPrefetchPreloadPlugin");
|
|
46
|
+
const ResourceHintPlugin = require("../prefetch/ResourceHintPlugin");
|
|
47
|
+
const RuntimePlugin = require("../runtime/RuntimePlugin");
|
|
48
|
+
|
|
49
|
+
const DataUriPlugin = require("../schemes/DataUriPlugin");
|
|
50
|
+
const FileUriPlugin = require("../schemes/FileUriPlugin");
|
|
51
|
+
|
|
52
|
+
const DefaultStatsFactoryPlugin = require("../stats/DefaultStatsFactoryPlugin");
|
|
53
|
+
const DefaultStatsPresetPlugin = require("../stats/DefaultStatsPresetPlugin");
|
|
54
|
+
const DefaultStatsPrinterPlugin = require("../stats/DefaultStatsPrinterPlugin");
|
|
55
|
+
const TemplatedPathPlugin = require("../template/TemplatedPathPlugin");
|
|
56
|
+
|
|
57
|
+
const { cleverMerge } = require("../util/cleverMerge");
|
|
58
|
+
const { NODE_MODULES_REGEXP } = require("../util/identifier");
|
|
22
59
|
const OptionsApply = require("./OptionsApply");
|
|
23
60
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const RuntimePlugin = require("./RuntimePlugin");
|
|
27
|
-
|
|
28
|
-
const TemplatedPathPlugin = require("./TemplatedPathPlugin");
|
|
29
|
-
|
|
30
|
-
const UseStrictPlugin = require("./UseStrictPlugin");
|
|
31
|
-
|
|
32
|
-
const WarnCaseSensitiveModulesPlugin = require("./WarnCaseSensitiveModulesPlugin");
|
|
33
|
-
|
|
34
|
-
const WebpackIsIncludedPlugin = require("./WebpackIsIncludedPlugin");
|
|
35
|
-
|
|
36
|
-
const AssetModulesPlugin = require("./asset/AssetModulesPlugin");
|
|
37
|
-
|
|
38
|
-
const InferAsyncModulesPlugin = require("./async-modules/InferAsyncModulesPlugin");
|
|
39
|
-
|
|
40
|
-
const ResolverCachePlugin = require("./cache/ResolverCachePlugin");
|
|
41
|
-
|
|
42
|
-
const CommonJsPlugin = require("./dependencies/CommonJsPlugin");
|
|
43
|
-
|
|
44
|
-
const HarmonyModulesPlugin = require("./dependencies/HarmonyModulesPlugin");
|
|
45
|
-
|
|
46
|
-
const ImportMetaContextPlugin = require("./dependencies/ImportMetaContextPlugin");
|
|
47
|
-
const ImportMetaPlugin = require("./dependencies/ImportMetaPlugin");
|
|
48
|
-
|
|
49
|
-
const ImportPlugin = require("./dependencies/ImportPlugin");
|
|
50
|
-
const LoaderPlugin = require("./dependencies/LoaderPlugin");
|
|
51
|
-
|
|
52
|
-
const RequireContextPlugin = require("./dependencies/RequireContextPlugin");
|
|
53
|
-
const RequireEnsurePlugin = require("./dependencies/RequireEnsurePlugin");
|
|
54
|
-
const RequireIncludePlugin = require("./dependencies/RequireIncludePlugin");
|
|
55
|
-
|
|
56
|
-
const SystemPlugin = require("./dependencies/SystemPlugin");
|
|
57
|
-
|
|
58
|
-
const URLPlugin = require("./dependencies/URLPlugin");
|
|
59
|
-
|
|
60
|
-
const WorkerAndWorkletPlugin = require("./dependencies/WorkerAndWorkletPlugin");
|
|
61
|
-
|
|
62
|
-
const JavascriptModulesPlugin = require("./javascript/JavascriptModulesPlugin");
|
|
63
|
-
|
|
64
|
-
const JsonModulesPlugin = require("./json/JsonModulesPlugin");
|
|
65
|
-
|
|
66
|
-
const ChunkPrefetchPreloadPlugin = require("./prefetch/ChunkPrefetchPreloadPlugin");
|
|
67
|
-
const ResourceHintPlugin = require("./prefetch/ResourceHintPlugin");
|
|
68
|
-
|
|
69
|
-
const DataUriPlugin = require("./schemes/DataUriPlugin");
|
|
70
|
-
const FileUriPlugin = require("./schemes/FileUriPlugin");
|
|
71
|
-
|
|
72
|
-
const DefaultStatsFactoryPlugin = require("./stats/DefaultStatsFactoryPlugin");
|
|
73
|
-
const DefaultStatsPresetPlugin = require("./stats/DefaultStatsPresetPlugin");
|
|
74
|
-
const DefaultStatsPrinterPlugin = require("./stats/DefaultStatsPrinterPlugin");
|
|
75
|
-
|
|
76
|
-
const { cleverMerge } = require("./util/cleverMerge");
|
|
77
|
-
const { NODE_MODULES_REGEXP } = require("./util/identifier");
|
|
78
|
-
|
|
79
|
-
/** @import { WebpackPluginFunction } from "./webpack" */
|
|
61
|
+
/** @import { WebpackPluginFunction } from "../webpack" */
|
|
62
|
+
/** @import { NormalizedBuildDependencyItem } from "../cache/AddBuildDependenciesPlugin" */
|
|
80
63
|
/**
|
|
81
64
|
* @import {
|
|
82
65
|
* WebpackOptionsNormalizedWithDefaults as WebpackOptions
|
|
83
|
-
* } from "./
|
|
66
|
+
* } from "./defaults"
|
|
84
67
|
*/
|
|
85
|
-
/** @import { WebpackOptionsInterception } from "./
|
|
86
|
-
/** @import Compiler from "
|
|
87
|
-
/** @import { InputFileSystem, IntermediateFileSystem } from "
|
|
88
|
-
/** @import { ResolveOptionsWithDependencyType } from "
|
|
68
|
+
/** @import { WebpackOptionsInterception } from "./normalization" */
|
|
69
|
+
/** @import Compiler from "../Compiler" */
|
|
70
|
+
/** @import { InputFileSystem, IntermediateFileSystem } from "../fs/fs" */
|
|
71
|
+
/** @import { ResolveOptionsWithDependencyType } from "../resolve/ResolverFactory" */
|
|
89
72
|
|
|
90
73
|
const CLASS_NAME = "WebpackOptionsApply";
|
|
91
74
|
|
|
@@ -109,7 +92,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
109
92
|
|
|
110
93
|
if (options.externals) {
|
|
111
94
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
112
|
-
const ExternalsPlugin = require("
|
|
95
|
+
const ExternalsPlugin = require("../externals/ExternalsPlugin");
|
|
113
96
|
|
|
114
97
|
new ExternalsPlugin(options.externalsType, options.externals).apply(
|
|
115
98
|
compiler
|
|
@@ -117,7 +100,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
117
100
|
}
|
|
118
101
|
|
|
119
102
|
if (options.externalsPresets.node) {
|
|
120
|
-
const NodeTargetPlugin = require("
|
|
103
|
+
const NodeTargetPlugin = require("../node/NodeTargetPlugin");
|
|
121
104
|
|
|
122
105
|
// Some older versions of Node.js don't support all built-in modules via import, only via `require`,
|
|
123
106
|
// but it seems like there shouldn't be a warning here since these versions are rarely used in real applications
|
|
@@ -128,7 +111,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
128
111
|
// Handle external CSS `@import` and `url()`
|
|
129
112
|
if (options.experiments.css) {
|
|
130
113
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
131
|
-
const ExternalsPlugin = require("
|
|
114
|
+
const ExternalsPlugin = require("../externals/ExternalsPlugin");
|
|
132
115
|
|
|
133
116
|
new ExternalsPlugin(
|
|
134
117
|
"module",
|
|
@@ -156,7 +139,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
156
139
|
}
|
|
157
140
|
if (options.externalsPresets.nodeModules) {
|
|
158
141
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
159
|
-
const ExternalsPlugin = require("
|
|
142
|
+
const ExternalsPlugin = require("../externals/ExternalsPlugin");
|
|
160
143
|
|
|
161
144
|
const type = options.output.module ? "module-import" : "node-commonjs";
|
|
162
145
|
const preset = options.externalsPresets.nodeModules;
|
|
@@ -239,12 +222,12 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
239
222
|
).apply(compiler);
|
|
240
223
|
}
|
|
241
224
|
if (options.externalsPresets.deno) {
|
|
242
|
-
const DenoTargetPlugin = require("
|
|
225
|
+
const DenoTargetPlugin = require("../deno/DenoTargetPlugin");
|
|
243
226
|
|
|
244
227
|
new DenoTargetPlugin().apply(compiler);
|
|
245
228
|
}
|
|
246
229
|
if (options.externalsPresets.bun) {
|
|
247
|
-
const BunTargetPlugin = require("
|
|
230
|
+
const BunTargetPlugin = require("../bun/BunTargetPlugin");
|
|
248
231
|
|
|
249
232
|
new BunTargetPlugin().apply(compiler);
|
|
250
233
|
}
|
|
@@ -252,7 +235,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
252
235
|
const type = options.externalsPresets.webAsync ? "import" : "module";
|
|
253
236
|
|
|
254
237
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
255
|
-
const ExternalsPlugin = require("
|
|
238
|
+
const ExternalsPlugin = require("../externals/ExternalsPlugin");
|
|
256
239
|
|
|
257
240
|
new ExternalsPlugin(type, ({ request, dependencyType }, callback) => {
|
|
258
241
|
if (/^(?:\/\/|https?:\/\/|#|std:|jsr:|npm:)/.test(request)) {
|
|
@@ -282,7 +265,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
282
265
|
|
|
283
266
|
// Warn when ESM output is requested but the electron version lacks it (added in electron 28)
|
|
284
267
|
if (options.output.module && !options.output.environment.module) {
|
|
285
|
-
const WebpackError = require("
|
|
268
|
+
const WebpackError = require("../WebpackError");
|
|
286
269
|
|
|
287
270
|
compiler.hooks.thisCompilation.tap(CLASS_NAME, (compilation) => {
|
|
288
271
|
compilation.warnings.push(
|
|
@@ -295,19 +278,19 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
295
278
|
|
|
296
279
|
if (options.externalsPresets.electronMain) {
|
|
297
280
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
298
|
-
const ElectronTargetPlugin = require("
|
|
281
|
+
const ElectronTargetPlugin = require("../electron/ElectronTargetPlugin");
|
|
299
282
|
|
|
300
283
|
new ElectronTargetPlugin("main", type).apply(compiler);
|
|
301
284
|
}
|
|
302
285
|
if (options.externalsPresets.electronPreload) {
|
|
303
286
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
304
|
-
const ElectronTargetPlugin = require("
|
|
287
|
+
const ElectronTargetPlugin = require("../electron/ElectronTargetPlugin");
|
|
305
288
|
|
|
306
289
|
new ElectronTargetPlugin("preload", type).apply(compiler);
|
|
307
290
|
}
|
|
308
291
|
if (options.externalsPresets.electronRenderer) {
|
|
309
292
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
310
|
-
const ElectronTargetPlugin = require("
|
|
293
|
+
const ElectronTargetPlugin = require("../electron/ElectronTargetPlugin");
|
|
311
294
|
|
|
312
295
|
new ElectronTargetPlugin("renderer", type).apply(compiler);
|
|
313
296
|
}
|
|
@@ -317,14 +300,14 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
317
300
|
!options.externalsPresets.electronRenderer
|
|
318
301
|
) {
|
|
319
302
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
320
|
-
const ElectronTargetPlugin = require("
|
|
303
|
+
const ElectronTargetPlugin = require("../electron/ElectronTargetPlugin");
|
|
321
304
|
|
|
322
305
|
new ElectronTargetPlugin(undefined, type).apply(compiler);
|
|
323
306
|
}
|
|
324
307
|
}
|
|
325
308
|
if (options.externalsPresets.nwjs) {
|
|
326
309
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
327
|
-
const ExternalsPlugin = require("
|
|
310
|
+
const ExternalsPlugin = require("../externals/ExternalsPlugin");
|
|
328
311
|
|
|
329
312
|
new ExternalsPlugin("node-commonjs", "nw.gui").apply(compiler);
|
|
330
313
|
}
|
|
@@ -335,19 +318,19 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
335
318
|
if (typeof options.output.chunkFormat === "string") {
|
|
336
319
|
switch (options.output.chunkFormat) {
|
|
337
320
|
case "array-push": {
|
|
338
|
-
const ArrayPushCallbackChunkFormatPlugin = require("
|
|
321
|
+
const ArrayPushCallbackChunkFormatPlugin = require("../javascript/ArrayPushCallbackChunkFormatPlugin");
|
|
339
322
|
|
|
340
323
|
new ArrayPushCallbackChunkFormatPlugin().apply(compiler);
|
|
341
324
|
break;
|
|
342
325
|
}
|
|
343
326
|
case "commonjs": {
|
|
344
|
-
const CommonJsChunkFormatPlugin = require("
|
|
327
|
+
const CommonJsChunkFormatPlugin = require("../javascript/CommonJsChunkFormatPlugin");
|
|
345
328
|
|
|
346
329
|
new CommonJsChunkFormatPlugin().apply(compiler);
|
|
347
330
|
break;
|
|
348
331
|
}
|
|
349
332
|
case "module": {
|
|
350
|
-
const ModuleChunkFormatPlugin = require("
|
|
333
|
+
const ModuleChunkFormatPlugin = require("../esm/ModuleChunkFormatPlugin");
|
|
351
334
|
|
|
352
335
|
new ModuleChunkFormatPlugin().apply(compiler);
|
|
353
336
|
break;
|
|
@@ -365,7 +348,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
365
348
|
|
|
366
349
|
if (enabledChunkLoadingTypes.length > 0) {
|
|
367
350
|
for (const type of enabledChunkLoadingTypes) {
|
|
368
|
-
const EnableChunkLoadingPlugin = require("
|
|
351
|
+
const EnableChunkLoadingPlugin = require("../javascript/EnableChunkLoadingPlugin");
|
|
369
352
|
|
|
370
353
|
new EnableChunkLoadingPlugin(type).apply(compiler);
|
|
371
354
|
}
|
|
@@ -377,7 +360,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
377
360
|
|
|
378
361
|
if (enabledWasmLoadingTypes.length > 0) {
|
|
379
362
|
for (const type of enabledWasmLoadingTypes) {
|
|
380
|
-
const EnableWasmLoadingPlugin = require("
|
|
363
|
+
const EnableWasmLoadingPlugin = require("../wasm/EnableWasmLoadingPlugin");
|
|
381
364
|
|
|
382
365
|
new EnableWasmLoadingPlugin(type).apply(compiler);
|
|
383
366
|
}
|
|
@@ -390,7 +373,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
390
373
|
if (enabledLibraryTypes.length > 0) {
|
|
391
374
|
let once = true;
|
|
392
375
|
for (const type of enabledLibraryTypes) {
|
|
393
|
-
const EnableLibraryPlugin = require("
|
|
376
|
+
const EnableLibraryPlugin = require("../library/EnableLibraryPlugin");
|
|
394
377
|
|
|
395
378
|
new EnableLibraryPlugin(type, {
|
|
396
379
|
// eslint-disable-next-line no-loop-func
|
|
@@ -411,7 +394,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
411
394
|
}
|
|
412
395
|
|
|
413
396
|
if (options.output.pathinfo) {
|
|
414
|
-
const ModuleInfoHeaderPlugin = require("
|
|
397
|
+
const ModuleInfoHeaderPlugin = require("../template/ModuleInfoHeaderPlugin");
|
|
415
398
|
|
|
416
399
|
new ModuleInfoHeaderPlugin(options.output.pathinfo !== true).apply(
|
|
417
400
|
compiler
|
|
@@ -419,7 +402,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
419
402
|
}
|
|
420
403
|
|
|
421
404
|
if (options.output.clean) {
|
|
422
|
-
const CleanPlugin = require("
|
|
405
|
+
const CleanPlugin = require("../output/CleanPlugin");
|
|
423
406
|
|
|
424
407
|
new CleanPlugin(
|
|
425
408
|
options.output.clean === true ? {} : options.output.clean
|
|
@@ -427,13 +410,13 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
427
410
|
}
|
|
428
411
|
|
|
429
412
|
if (options.output.copy) {
|
|
430
|
-
const CopyPlugin = require("
|
|
413
|
+
const CopyPlugin = require("../output/CopyPlugin");
|
|
431
414
|
|
|
432
415
|
new CopyPlugin(options.output.copy).apply(compiler);
|
|
433
416
|
}
|
|
434
417
|
|
|
435
418
|
if (options.dotenv) {
|
|
436
|
-
const DotenvPlugin = require("
|
|
419
|
+
const DotenvPlugin = require("../define/DotenvPlugin");
|
|
437
420
|
|
|
438
421
|
new DotenvPlugin(
|
|
439
422
|
typeof options.dotenv === "boolean" ? {} : options.dotenv
|
|
@@ -460,9 +443,10 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
460
443
|
const moduleMaps = use.includes("module");
|
|
461
444
|
const noSources = use.includes("nosources");
|
|
462
445
|
const debugIds = use.includes("debugids");
|
|
446
|
+
const scopes = use.includes("scopes");
|
|
463
447
|
const Plugin = evalWrapped
|
|
464
|
-
? require("
|
|
465
|
-
: require("
|
|
448
|
+
? require("../devtool/EvalSourceMapDevToolPlugin")
|
|
449
|
+
: require("../devtool/SourceMapDevToolPlugin");
|
|
466
450
|
const assetExt =
|
|
467
451
|
type === "javascript"
|
|
468
452
|
? /\.((c|m)?js)($|\?)/i
|
|
@@ -482,10 +466,11 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
482
466
|
columns: !cheap,
|
|
483
467
|
noSources,
|
|
484
468
|
namespace: options.output.devtoolNamespace,
|
|
485
|
-
debugIds
|
|
469
|
+
debugIds,
|
|
470
|
+
scopes
|
|
486
471
|
}).apply(compiler);
|
|
487
472
|
} else if (use.includes("eval")) {
|
|
488
|
-
const EvalDevToolModulePlugin = require("
|
|
473
|
+
const EvalDevToolModulePlugin = require("../devtool/EvalDevToolModulePlugin");
|
|
489
474
|
|
|
490
475
|
new EvalDevToolModulePlugin({
|
|
491
476
|
moduleFilenameTemplate:
|
|
@@ -505,13 +490,13 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
505
490
|
|
|
506
491
|
if (options.output.module) {
|
|
507
492
|
// Analyzable output is ESM output, so this is every build that can reserve a name.
|
|
508
|
-
const RuntimeTemplate = require("
|
|
493
|
+
const RuntimeTemplate = require("../template/RuntimeTemplate");
|
|
509
494
|
|
|
510
495
|
RuntimeTemplate.fillReservedNames(compiler);
|
|
511
496
|
}
|
|
512
497
|
|
|
513
498
|
if (options.experiments.syncWebAssembly) {
|
|
514
|
-
const WebAssemblyModulesPlugin = require("
|
|
499
|
+
const WebAssemblyModulesPlugin = require("../wasm-sync/WebAssemblyModulesPlugin");
|
|
515
500
|
|
|
516
501
|
new WebAssemblyModulesPlugin({
|
|
517
502
|
mangleImports: options.optimization.mangleWasmImports
|
|
@@ -519,7 +504,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
519
504
|
}
|
|
520
505
|
|
|
521
506
|
if (options.experiments.asyncWebAssembly) {
|
|
522
|
-
const AsyncWebAssemblyModulesPlugin = require("
|
|
507
|
+
const AsyncWebAssemblyModulesPlugin = require("../wasm/AsyncWebAssemblyModulesPlugin");
|
|
523
508
|
|
|
524
509
|
new AsyncWebAssemblyModulesPlugin({
|
|
525
510
|
mangleImports: options.optimization.mangleWasmImports
|
|
@@ -527,25 +512,25 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
527
512
|
}
|
|
528
513
|
|
|
529
514
|
if (options.experiments.css) {
|
|
530
|
-
const CssModulesPlugin = require("
|
|
515
|
+
const CssModulesPlugin = require("../css/CssModulesPlugin");
|
|
531
516
|
|
|
532
517
|
new CssModulesPlugin().apply(compiler);
|
|
533
518
|
}
|
|
534
519
|
|
|
535
520
|
if (options.experiments.html) {
|
|
536
|
-
const HtmlModulesPlugin = require("
|
|
521
|
+
const HtmlModulesPlugin = require("../html/HtmlModulesPlugin");
|
|
537
522
|
|
|
538
523
|
new HtmlModulesPlugin().apply(compiler);
|
|
539
524
|
}
|
|
540
525
|
|
|
541
526
|
if (options.experiments.typescript) {
|
|
542
|
-
const TypeScriptPlugin = require("
|
|
527
|
+
const TypeScriptPlugin = require("../typescript/TypeScriptPlugin");
|
|
543
528
|
|
|
544
529
|
new TypeScriptPlugin().apply(compiler);
|
|
545
530
|
}
|
|
546
531
|
|
|
547
532
|
if (options.experiments.lazyCompilation) {
|
|
548
|
-
const LazyCompilationPlugin = require("
|
|
533
|
+
const LazyCompilationPlugin = require("../hmr/LazyCompilationPlugin");
|
|
549
534
|
|
|
550
535
|
const lazyOptions =
|
|
551
536
|
typeof options.experiments.lazyCompilation === "object"
|
|
@@ -557,12 +542,12 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
557
542
|
compiler.platform.web === null;
|
|
558
543
|
|
|
559
544
|
if (isUniversalTarget) {
|
|
560
|
-
const emitter = require.resolve("
|
|
545
|
+
const emitter = require.resolve("../../hot/emitter-event-target.js");
|
|
561
546
|
|
|
562
|
-
const NormalModuleReplacementPlugin = require("
|
|
547
|
+
const NormalModuleReplacementPlugin = require("../resolve/NormalModuleReplacementPlugin");
|
|
563
548
|
|
|
564
549
|
// Override emitter that using `EventEmitter` to `EventTarget`
|
|
565
|
-
// TODO
|
|
550
|
+
// TODO in the next major release: migrate to `EventTarget` by default
|
|
566
551
|
new NormalModuleReplacementPlugin(/emitter(\.js)?$/, (result) => {
|
|
567
552
|
if (
|
|
568
553
|
/webpack[/\\]hot|webpack-dev-server[/\\]client|webpack-hot-middleware[/\\]client/.test(
|
|
@@ -578,8 +563,8 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
578
563
|
|
|
579
564
|
const backend = require.resolve(
|
|
580
565
|
isUniversalTarget
|
|
581
|
-
? "
|
|
582
|
-
:
|
|
566
|
+
? "../../hot/lazy-compilation-universal.js"
|
|
567
|
+
: `../../hot/lazy-compilation-${
|
|
583
568
|
options.externalsPresets.node ? "node" : "web"
|
|
584
569
|
}.js`
|
|
585
570
|
);
|
|
@@ -588,7 +573,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
588
573
|
backend:
|
|
589
574
|
typeof lazyOptions.backend === "function"
|
|
590
575
|
? lazyOptions.backend
|
|
591
|
-
: require("
|
|
576
|
+
: require("../hmr/lazyCompilationBackend")({
|
|
592
577
|
...lazyOptions.backend,
|
|
593
578
|
client:
|
|
594
579
|
(lazyOptions.backend && lazyOptions.backend.client) || backend
|
|
@@ -600,7 +585,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
600
585
|
}
|
|
601
586
|
|
|
602
587
|
if (options.experiments.buildHttp) {
|
|
603
|
-
const HttpUriPlugin = require("
|
|
588
|
+
const HttpUriPlugin = require("../schemes/HttpUriPlugin");
|
|
604
589
|
|
|
605
590
|
const httpOptions = options.experiments.buildHttp;
|
|
606
591
|
new HttpUriPlugin(httpOptions).apply(compiler);
|
|
@@ -617,12 +602,12 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
617
602
|
new FileUriPlugin().apply(compiler);
|
|
618
603
|
|
|
619
604
|
new CompatibilityPlugin().apply(compiler);
|
|
620
|
-
new
|
|
605
|
+
new ESMModulesPlugin({
|
|
621
606
|
deferImport: options.experiments.deferImport
|
|
622
607
|
}).apply(compiler);
|
|
623
608
|
if (options.amd !== false) {
|
|
624
|
-
const AMDPlugin = require("
|
|
625
|
-
const RequireJsStuffPlugin = require("
|
|
609
|
+
const AMDPlugin = require("../dependencies/amd/AMDPlugin");
|
|
610
|
+
const RequireJsStuffPlugin = require("../dependencies/amd/RequireJsStuffPlugin");
|
|
626
611
|
|
|
627
612
|
new AMDPlugin(options.amd || {}).apply(compiler);
|
|
628
613
|
new RequireJsStuffPlugin().apply(compiler);
|
|
@@ -662,36 +647,36 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
662
647
|
new JavascriptMetaInfoPlugin().apply(compiler);
|
|
663
648
|
|
|
664
649
|
if (typeof options.mode !== "string") {
|
|
665
|
-
const WarnNoModeSetPlugin = require("
|
|
650
|
+
const WarnNoModeSetPlugin = require("../diagnostics/WarnNoModeSetPlugin");
|
|
666
651
|
|
|
667
652
|
new WarnNoModeSetPlugin().apply(compiler);
|
|
668
653
|
}
|
|
669
654
|
|
|
670
|
-
const EnsureChunkConditionsPlugin = require("
|
|
655
|
+
const EnsureChunkConditionsPlugin = require("../optimize/EnsureChunkConditionsPlugin");
|
|
671
656
|
|
|
672
657
|
new EnsureChunkConditionsPlugin().apply(compiler);
|
|
673
658
|
if (options.optimization.removeAvailableModules) {
|
|
674
|
-
const RemoveParentModulesPlugin = require("
|
|
659
|
+
const RemoveParentModulesPlugin = require("../optimize/RemoveParentModulesPlugin");
|
|
675
660
|
|
|
676
661
|
new RemoveParentModulesPlugin().apply(compiler);
|
|
677
662
|
}
|
|
678
663
|
if (options.optimization.removeEmptyChunks) {
|
|
679
|
-
const RemoveEmptyChunksPlugin = require("
|
|
664
|
+
const RemoveEmptyChunksPlugin = require("../optimize/RemoveEmptyChunksPlugin");
|
|
680
665
|
|
|
681
666
|
new RemoveEmptyChunksPlugin().apply(compiler);
|
|
682
667
|
}
|
|
683
668
|
if (options.optimization.mergeDuplicateChunks) {
|
|
684
|
-
const MergeDuplicateChunksPlugin = require("
|
|
669
|
+
const MergeDuplicateChunksPlugin = require("../optimize/MergeDuplicateChunksPlugin");
|
|
685
670
|
|
|
686
671
|
new MergeDuplicateChunksPlugin().apply(compiler);
|
|
687
672
|
}
|
|
688
673
|
if (options.optimization.flagIncludedChunks) {
|
|
689
|
-
const FlagIncludedChunksPlugin = require("
|
|
674
|
+
const FlagIncludedChunksPlugin = require("../optimize/FlagIncludedChunksPlugin");
|
|
690
675
|
|
|
691
676
|
new FlagIncludedChunksPlugin().apply(compiler);
|
|
692
677
|
}
|
|
693
678
|
if (options.optimization.sideEffects) {
|
|
694
|
-
const SideEffectsFlagPlugin = require("
|
|
679
|
+
const SideEffectsFlagPlugin = require("../optimize/SideEffectsFlagPlugin");
|
|
695
680
|
|
|
696
681
|
new SideEffectsFlagPlugin(
|
|
697
682
|
options.optimization.sideEffects === true
|
|
@@ -701,7 +686,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
701
686
|
new FlagDependencyExportsPlugin().apply(compiler);
|
|
702
687
|
}
|
|
703
688
|
if (options.optimization.usedExports) {
|
|
704
|
-
const FlagDependencyUsagePlugin = require("
|
|
689
|
+
const FlagDependencyUsagePlugin = require("../optimize/FlagDependencyUsagePlugin");
|
|
705
690
|
|
|
706
691
|
new FlagDependencyUsagePlugin(
|
|
707
692
|
options.optimization.usedExports === "global",
|
|
@@ -710,7 +695,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
710
695
|
).apply(compiler);
|
|
711
696
|
}
|
|
712
697
|
if (options.optimization.innerGraph) {
|
|
713
|
-
const InnerGraphPlugin = require("
|
|
698
|
+
const InnerGraphPlugin = require("../optimize/InnerGraphPlugin");
|
|
714
699
|
|
|
715
700
|
new InnerGraphPlugin().apply(compiler);
|
|
716
701
|
}
|
|
@@ -723,48 +708,48 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
723
708
|
const inlineExports = options.optimization.inlineExports;
|
|
724
709
|
|
|
725
710
|
if (options.mode === "production" || circularHints || inlineExports) {
|
|
726
|
-
const CircularModulesPlugin = require("
|
|
711
|
+
const CircularModulesPlugin = require("../optimize/CircularModulesPlugin");
|
|
727
712
|
|
|
728
713
|
new CircularModulesPlugin({ hints: circularHints }).apply(compiler);
|
|
729
714
|
}
|
|
730
715
|
|
|
731
|
-
const ConstExportsPlugin = require("
|
|
716
|
+
const ConstExportsPlugin = require("../optimize/ConstExportsPlugin");
|
|
732
717
|
|
|
733
718
|
new ConstExportsPlugin({
|
|
734
719
|
inlineExports
|
|
735
720
|
}).apply(compiler);
|
|
736
721
|
|
|
737
722
|
if (options.optimization.mangleExports) {
|
|
738
|
-
const MangleExportsPlugin = require("
|
|
723
|
+
const MangleExportsPlugin = require("../optimize/MangleExportsPlugin");
|
|
739
724
|
|
|
740
725
|
new MangleExportsPlugin(
|
|
741
726
|
options.optimization.mangleExports !== "size"
|
|
742
727
|
).apply(compiler);
|
|
743
728
|
}
|
|
744
729
|
if (options.optimization.concatenateModules) {
|
|
745
|
-
const ModuleConcatenationPlugin = require("
|
|
730
|
+
const ModuleConcatenationPlugin = require("../optimize/ModuleConcatenationPlugin");
|
|
746
731
|
|
|
747
732
|
new ModuleConcatenationPlugin().apply(compiler);
|
|
748
733
|
}
|
|
749
734
|
if (options.optimization.splitChunks) {
|
|
750
|
-
const SplitChunksPlugin = require("
|
|
735
|
+
const SplitChunksPlugin = require("../optimize/SplitChunksPlugin");
|
|
751
736
|
|
|
752
737
|
new SplitChunksPlugin(options.optimization.splitChunks).apply(compiler);
|
|
753
738
|
}
|
|
754
739
|
if (options.optimization.runtimeChunk) {
|
|
755
|
-
const RuntimeChunkPlugin = require("
|
|
740
|
+
const RuntimeChunkPlugin = require("../optimize/RuntimeChunkPlugin");
|
|
756
741
|
|
|
757
742
|
new RuntimeChunkPlugin(options.optimization.runtimeChunk).apply(compiler);
|
|
758
743
|
}
|
|
759
744
|
if (!options.optimization.emitOnErrors) {
|
|
760
|
-
const NoEmitOnErrorsPlugin = require("
|
|
745
|
+
const NoEmitOnErrorsPlugin = require("../diagnostics/NoEmitOnErrorsPlugin");
|
|
761
746
|
|
|
762
747
|
new NoEmitOnErrorsPlugin().apply(compiler);
|
|
763
748
|
}
|
|
764
749
|
// ESM output may bake a name into a chunk whose hashed name would then go stale;
|
|
765
750
|
// the repair runs for those alone where it was not asked for outright.
|
|
766
751
|
if (options.optimization.realContentHash || options.output.module) {
|
|
767
|
-
const RealContentHashPlugin = require("
|
|
752
|
+
const RealContentHashPlugin = require("../optimize/RealContentHashPlugin");
|
|
768
753
|
|
|
769
754
|
new RealContentHashPlugin({
|
|
770
755
|
hashFunction:
|
|
@@ -777,7 +762,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
777
762
|
}).apply(compiler);
|
|
778
763
|
}
|
|
779
764
|
if (options.optimization.checkWasmTypes) {
|
|
780
|
-
const WasmFinalizeExportsPlugin = require("
|
|
765
|
+
const WasmFinalizeExportsPlugin = require("../wasm-sync/WasmFinalizeExportsPlugin");
|
|
781
766
|
|
|
782
767
|
new WasmFinalizeExportsPlugin().apply(compiler);
|
|
783
768
|
}
|
|
@@ -785,20 +770,20 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
785
770
|
if (moduleIds) {
|
|
786
771
|
switch (moduleIds) {
|
|
787
772
|
case "natural": {
|
|
788
|
-
const NaturalModuleIdsPlugin = require("
|
|
773
|
+
const NaturalModuleIdsPlugin = require("../ids/NaturalModuleIdsPlugin");
|
|
789
774
|
|
|
790
775
|
new NaturalModuleIdsPlugin().apply(compiler);
|
|
791
776
|
break;
|
|
792
777
|
}
|
|
793
778
|
case "named": {
|
|
794
|
-
const NamedModuleIdsPlugin = require("
|
|
779
|
+
const NamedModuleIdsPlugin = require("../ids/NamedModuleIdsPlugin");
|
|
795
780
|
|
|
796
781
|
new NamedModuleIdsPlugin().apply(compiler);
|
|
797
782
|
break;
|
|
798
783
|
}
|
|
799
784
|
case "hashed": {
|
|
800
|
-
const WarnDeprecatedOptionPlugin = require("
|
|
801
|
-
const HashedModuleIdsPlugin = require("
|
|
785
|
+
const WarnDeprecatedOptionPlugin = require("../diagnostics/WarnDeprecatedOptionPlugin");
|
|
786
|
+
const HashedModuleIdsPlugin = require("../ids/HashedModuleIdsPlugin");
|
|
802
787
|
|
|
803
788
|
new WarnDeprecatedOptionPlugin(
|
|
804
789
|
"optimization.moduleIds",
|
|
@@ -811,13 +796,13 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
811
796
|
break;
|
|
812
797
|
}
|
|
813
798
|
case "deterministic": {
|
|
814
|
-
const DeterministicModuleIdsPlugin = require("
|
|
799
|
+
const DeterministicModuleIdsPlugin = require("../ids/DeterministicModuleIdsPlugin");
|
|
815
800
|
|
|
816
801
|
new DeterministicModuleIdsPlugin().apply(compiler);
|
|
817
802
|
break;
|
|
818
803
|
}
|
|
819
804
|
case "size": {
|
|
820
|
-
const OccurrenceModuleIdsPlugin = require("
|
|
805
|
+
const OccurrenceModuleIdsPlugin = require("../ids/OccurrenceModuleIdsPlugin");
|
|
821
806
|
|
|
822
807
|
new OccurrenceModuleIdsPlugin({
|
|
823
808
|
prioritiseInitial: true
|
|
@@ -834,26 +819,26 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
834
819
|
if (chunkIds) {
|
|
835
820
|
switch (chunkIds) {
|
|
836
821
|
case "natural": {
|
|
837
|
-
const NaturalChunkIdsPlugin = require("
|
|
822
|
+
const NaturalChunkIdsPlugin = require("../ids/NaturalChunkIdsPlugin");
|
|
838
823
|
|
|
839
824
|
new NaturalChunkIdsPlugin().apply(compiler);
|
|
840
825
|
break;
|
|
841
826
|
}
|
|
842
827
|
case "named": {
|
|
843
|
-
const NamedChunkIdsPlugin = require("
|
|
828
|
+
const NamedChunkIdsPlugin = require("../ids/NamedChunkIdsPlugin");
|
|
844
829
|
|
|
845
830
|
new NamedChunkIdsPlugin().apply(compiler);
|
|
846
831
|
break;
|
|
847
832
|
}
|
|
848
833
|
case "deterministic": {
|
|
849
|
-
const DeterministicChunkIdsPlugin = require("
|
|
834
|
+
const DeterministicChunkIdsPlugin = require("../ids/DeterministicChunkIdsPlugin");
|
|
850
835
|
|
|
851
836
|
new DeterministicChunkIdsPlugin().apply(compiler);
|
|
852
837
|
break;
|
|
853
838
|
}
|
|
854
839
|
case "size": {
|
|
855
840
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
856
|
-
const OccurrenceChunkIdsPlugin = require("
|
|
841
|
+
const OccurrenceChunkIdsPlugin = require("../ids/OccurrenceChunkIdsPlugin");
|
|
857
842
|
|
|
858
843
|
new OccurrenceChunkIdsPlugin({
|
|
859
844
|
prioritiseInitial: true
|
|
@@ -862,7 +847,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
862
847
|
}
|
|
863
848
|
case "total-size": {
|
|
864
849
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
865
|
-
const OccurrenceChunkIdsPlugin = require("
|
|
850
|
+
const OccurrenceChunkIdsPlugin = require("../ids/OccurrenceChunkIdsPlugin");
|
|
866
851
|
|
|
867
852
|
new OccurrenceChunkIdsPlugin({
|
|
868
853
|
prioritiseInitial: false
|
|
@@ -876,7 +861,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
876
861
|
}
|
|
877
862
|
}
|
|
878
863
|
if (options.optimization.nodeEnv) {
|
|
879
|
-
const DefinePlugin = require("
|
|
864
|
+
const DefinePlugin = require("../define/DefinePlugin");
|
|
880
865
|
|
|
881
866
|
const defValue = JSON.stringify(options.optimization.nodeEnv);
|
|
882
867
|
const development = options.mode === "development";
|
|
@@ -919,131 +904,131 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
919
904
|
|
|
920
905
|
if (options.performance) {
|
|
921
906
|
if (options.performance.hotspots) {
|
|
922
|
-
const HotspotsPlugin = require("
|
|
907
|
+
const HotspotsPlugin = require("../performance/HotspotsPlugin");
|
|
923
908
|
|
|
924
909
|
new HotspotsPlugin(options.performance).apply(compiler);
|
|
925
910
|
}
|
|
926
911
|
|
|
927
|
-
const SizeLimitsPlugin = require("
|
|
912
|
+
const SizeLimitsPlugin = require("../performance/SizeLimitsPlugin");
|
|
928
913
|
|
|
929
914
|
new SizeLimitsPlugin(options.performance).apply(compiler);
|
|
930
915
|
|
|
931
916
|
if (options.performance.duplicatePackages) {
|
|
932
|
-
const DuplicatePackagesPlugin = require("
|
|
917
|
+
const DuplicatePackagesPlugin = require("../performance/DuplicatePackagesPlugin");
|
|
933
918
|
|
|
934
919
|
new DuplicatePackagesPlugin(options.performance).apply(compiler);
|
|
935
920
|
}
|
|
936
921
|
|
|
937
922
|
if (options.performance.cacheEffectiveness) {
|
|
938
|
-
const CacheEffectivenessPlugin = require("
|
|
923
|
+
const CacheEffectivenessPlugin = require("../performance/CacheEffectivenessPlugin");
|
|
939
924
|
|
|
940
925
|
new CacheEffectivenessPlugin(options.performance).apply(compiler);
|
|
941
926
|
}
|
|
942
927
|
|
|
943
928
|
if (options.performance.duplicateModules) {
|
|
944
|
-
const DuplicateModulesPlugin = require("
|
|
929
|
+
const DuplicateModulesPlugin = require("../performance/DuplicateModulesPlugin");
|
|
945
930
|
|
|
946
931
|
new DuplicateModulesPlugin(options.performance).apply(compiler);
|
|
947
932
|
}
|
|
948
933
|
|
|
949
934
|
if (options.performance.redundantDynamicImports) {
|
|
950
|
-
const RedundantDynamicImportsPlugin = require("
|
|
935
|
+
const RedundantDynamicImportsPlugin = require("../performance/RedundantDynamicImportsPlugin");
|
|
951
936
|
|
|
952
937
|
new RedundantDynamicImportsPlugin(options.performance).apply(compiler);
|
|
953
938
|
}
|
|
954
939
|
|
|
955
940
|
if (options.performance.largeModules) {
|
|
956
|
-
const LargeModulesPlugin = require("
|
|
941
|
+
const LargeModulesPlugin = require("../performance/LargeModulesPlugin");
|
|
957
942
|
|
|
958
943
|
new LargeModulesPlugin(options.performance).apply(compiler);
|
|
959
944
|
}
|
|
960
945
|
|
|
961
946
|
if (options.performance.analyzableBailouts) {
|
|
962
|
-
const AnalyzableBailoutsPlugin = require("
|
|
947
|
+
const AnalyzableBailoutsPlugin = require("../performance/AnalyzableBailoutsPlugin");
|
|
963
948
|
|
|
964
949
|
new AnalyzableBailoutsPlugin(options.performance).apply(compiler);
|
|
965
950
|
}
|
|
966
951
|
|
|
967
952
|
if (options.performance.asyncChunkWaterfalls) {
|
|
968
|
-
const AsyncChunkWaterfallsPlugin = require("
|
|
953
|
+
const AsyncChunkWaterfallsPlugin = require("../performance/AsyncChunkWaterfallsPlugin");
|
|
969
954
|
|
|
970
955
|
new AsyncChunkWaterfallsPlugin(options.performance).apply(compiler);
|
|
971
956
|
}
|
|
972
957
|
|
|
973
958
|
if (options.performance.broadContexts) {
|
|
974
|
-
const BroadContextsPlugin = require("
|
|
959
|
+
const BroadContextsPlugin = require("../performance/BroadContextsPlugin");
|
|
975
960
|
|
|
976
961
|
new BroadContextsPlugin(options.performance).apply(compiler);
|
|
977
962
|
}
|
|
978
963
|
|
|
979
964
|
if (options.performance.legacyJavascript) {
|
|
980
|
-
const LegacyJavascriptPlugin = require("
|
|
965
|
+
const LegacyJavascriptPlugin = require("../performance/LegacyJavascriptPlugin");
|
|
981
966
|
|
|
982
967
|
new LegacyJavascriptPlugin(options.performance).apply(compiler);
|
|
983
968
|
}
|
|
984
969
|
|
|
985
970
|
if (options.performance.mixedExports) {
|
|
986
|
-
const MixedExportsPlugin = require("
|
|
971
|
+
const MixedExportsPlugin = require("../performance/MixedExportsPlugin");
|
|
987
972
|
|
|
988
973
|
new MixedExportsPlugin(options.performance).apply(compiler);
|
|
989
974
|
}
|
|
990
975
|
|
|
991
976
|
if (options.performance.pureAnnotations) {
|
|
992
|
-
const PureAnnotationsPlugin = require("
|
|
977
|
+
const PureAnnotationsPlugin = require("../performance/PureAnnotationsPlugin");
|
|
993
978
|
|
|
994
979
|
new PureAnnotationsPlugin(options.performance).apply(compiler);
|
|
995
980
|
}
|
|
996
981
|
|
|
997
982
|
if (options.performance.evalUsage) {
|
|
998
|
-
const EvalUsagePlugin = require("
|
|
983
|
+
const EvalUsagePlugin = require("../performance/EvalUsagePlugin");
|
|
999
984
|
|
|
1000
985
|
new EvalUsagePlugin(options.performance).apply(compiler);
|
|
1001
986
|
}
|
|
1002
987
|
|
|
1003
988
|
if (options.performance.tinyChunks) {
|
|
1004
|
-
const TinyChunksPlugin = require("
|
|
989
|
+
const TinyChunksPlugin = require("../performance/TinyChunksPlugin");
|
|
1005
990
|
|
|
1006
991
|
new TinyChunksPlugin(options.performance).apply(compiler);
|
|
1007
992
|
}
|
|
1008
993
|
|
|
1009
994
|
if (options.performance.topLevelThis) {
|
|
1010
|
-
const TopLevelThisPlugin = require("
|
|
995
|
+
const TopLevelThisPlugin = require("../performance/TopLevelThisPlugin");
|
|
1011
996
|
|
|
1012
997
|
new TopLevelThisPlugin(options.performance).apply(compiler);
|
|
1013
998
|
}
|
|
1014
999
|
|
|
1015
1000
|
if (options.performance.unsplitVendors) {
|
|
1016
|
-
const UnsplitVendorsPlugin = require("
|
|
1001
|
+
const UnsplitVendorsPlugin = require("../performance/UnsplitVendorsPlugin");
|
|
1017
1002
|
|
|
1018
1003
|
new UnsplitVendorsPlugin(options.performance).apply(compiler);
|
|
1019
1004
|
}
|
|
1020
1005
|
|
|
1021
1006
|
if (options.performance.splitChunksCapped) {
|
|
1022
|
-
const SplitChunksCappedPlugin = require("
|
|
1007
|
+
const SplitChunksCappedPlugin = require("../performance/SplitChunksCappedPlugin");
|
|
1023
1008
|
|
|
1024
1009
|
new SplitChunksCappedPlugin(options.performance).apply(compiler);
|
|
1025
1010
|
}
|
|
1026
1011
|
|
|
1027
1012
|
if (options.performance.dynamicExports) {
|
|
1028
|
-
const DynamicExportsPlugin = require("
|
|
1013
|
+
const DynamicExportsPlugin = require("../performance/DynamicExportsPlugin");
|
|
1029
1014
|
|
|
1030
1015
|
new DynamicExportsPlugin(options.performance).apply(compiler);
|
|
1031
1016
|
}
|
|
1032
1017
|
|
|
1033
1018
|
if (options.performance.inlinedAssets) {
|
|
1034
|
-
const InlinedAssetsPlugin = require("
|
|
1019
|
+
const InlinedAssetsPlugin = require("../performance/InlinedAssetsPlugin");
|
|
1035
1020
|
|
|
1036
1021
|
new InlinedAssetsPlugin(options.performance).apply(compiler);
|
|
1037
1022
|
}
|
|
1038
1023
|
|
|
1039
1024
|
if (options.performance.missingSideEffects) {
|
|
1040
|
-
const MissingSideEffectsPlugin = require("
|
|
1025
|
+
const MissingSideEffectsPlugin = require("../performance/MissingSideEffectsPlugin");
|
|
1041
1026
|
|
|
1042
1027
|
new MissingSideEffectsPlugin(options.performance).apply(compiler);
|
|
1043
1028
|
}
|
|
1044
1029
|
|
|
1045
1030
|
if (options.performance.scopeHoistingBailouts) {
|
|
1046
|
-
const ScopeHoistingBailoutsPlugin = require("
|
|
1031
|
+
const ScopeHoistingBailoutsPlugin = require("../performance/ScopeHoistingBailoutsPlugin");
|
|
1047
1032
|
|
|
1048
1033
|
new ScopeHoistingBailoutsPlugin(options.performance).apply(compiler);
|
|
1049
1034
|
}
|
|
@@ -1051,8 +1036,8 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1051
1036
|
// One switch for source maps: a devtool that ships the map to everyone,
|
|
1052
1037
|
// and a loader that loses it, are both about the map being worth its cost.
|
|
1053
1038
|
if (options.performance.sourceMaps) {
|
|
1054
|
-
const EmbeddedSourceMapsPlugin = require("
|
|
1055
|
-
const MissingSourceMapsPlugin = require("
|
|
1039
|
+
const EmbeddedSourceMapsPlugin = require("../performance/EmbeddedSourceMapsPlugin");
|
|
1040
|
+
const MissingSourceMapsPlugin = require("../performance/MissingSourceMapsPlugin");
|
|
1056
1041
|
|
|
1057
1042
|
new EmbeddedSourceMapsPlugin(options.performance).apply(compiler);
|
|
1058
1043
|
new MissingSourceMapsPlugin(options.performance).apply(compiler);
|
|
@@ -1061,13 +1046,13 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1061
1046
|
// One switch for configuration that did nothing: the four read different
|
|
1062
1047
|
// parts of the config, but the finding and the fix are the same.
|
|
1063
1048
|
if (options.performance.unusedConfig) {
|
|
1064
|
-
const UnusedAliasesPlugin = require("
|
|
1065
|
-
const UnusedDefinesPlugin = require("
|
|
1066
|
-
const UnusedExternalsPlugin = require("
|
|
1067
|
-
const UnusedFederationPlugin = require("
|
|
1049
|
+
const UnusedAliasesPlugin = require("../performance/UnusedAliasesPlugin");
|
|
1050
|
+
const UnusedDefinesPlugin = require("../performance/UnusedDefinesPlugin");
|
|
1051
|
+
const UnusedExternalsPlugin = require("../performance/UnusedExternalsPlugin");
|
|
1052
|
+
const UnusedFederationPlugin = require("../performance/UnusedFederationPlugin");
|
|
1068
1053
|
// Reports even where size hints are off: a dead rule is a configuration
|
|
1069
1054
|
// mistake either way.
|
|
1070
|
-
const UnusedRuleWarningPlugin = require("
|
|
1055
|
+
const UnusedRuleWarningPlugin = require("../performance/UnusedRuleWarningPlugin");
|
|
1071
1056
|
|
|
1072
1057
|
new UnusedAliasesPlugin(options.performance).apply(compiler);
|
|
1073
1058
|
new UnusedDefinesPlugin(options.performance).apply(compiler);
|
|
@@ -1079,8 +1064,8 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1079
1064
|
// One switch for a module nothing uses: the two differ only in what kept
|
|
1080
1065
|
// it there, and each names the cause it knows about.
|
|
1081
1066
|
if (options.performance.unusedModules) {
|
|
1082
|
-
const UnusedModulesPlugin = require("
|
|
1083
|
-
const UnusedReexportsPlugin = require("
|
|
1067
|
+
const UnusedModulesPlugin = require("../performance/UnusedModulesPlugin");
|
|
1068
|
+
const UnusedReexportsPlugin = require("../performance/UnusedReexportsPlugin");
|
|
1084
1069
|
|
|
1085
1070
|
new UnusedModulesPlugin(options.performance).apply(compiler);
|
|
1086
1071
|
new UnusedReexportsPlugin(options.performance).apply(compiler);
|
|
@@ -1089,13 +1074,13 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1089
1074
|
// Deliberately not gated on `hints`, like `unusedConfig` above: a rule
|
|
1090
1075
|
// that only matches on one OS is a configuration mistake, not a size.
|
|
1091
1076
|
if (options.performance.osDependentRules) {
|
|
1092
|
-
const OsDependentRuleWarningPlugin = require("
|
|
1077
|
+
const OsDependentRuleWarningPlugin = require("../performance/OsDependentRuleWarningPlugin");
|
|
1093
1078
|
|
|
1094
1079
|
new OsDependentRuleWarningPlugin(options.performance).apply(compiler);
|
|
1095
1080
|
}
|
|
1096
1081
|
|
|
1097
1082
|
if (options.performance.unusedAssets) {
|
|
1098
|
-
const UnusedAssetsPlugin = require("
|
|
1083
|
+
const UnusedAssetsPlugin = require("../performance/UnusedAssetsPlugin");
|
|
1099
1084
|
|
|
1100
1085
|
new UnusedAssetsPlugin(options.performance).apply(compiler);
|
|
1101
1086
|
}
|
|
@@ -1103,7 +1088,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1103
1088
|
// Deliberately not gated on `hints`: asking for both directives on one
|
|
1104
1089
|
// import is a configuration mistake, not a size.
|
|
1105
1090
|
if (options.performance.conflictingResourceHints) {
|
|
1106
|
-
const ConflictingResourceHintsPlugin = require("
|
|
1091
|
+
const ConflictingResourceHintsPlugin = require("../performance/ConflictingResourceHintsPlugin");
|
|
1107
1092
|
|
|
1108
1093
|
new ConflictingResourceHintsPlugin(options.performance).apply(compiler);
|
|
1109
1094
|
}
|
|
@@ -1117,15 +1102,45 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1117
1102
|
|
|
1118
1103
|
new WarnCaseSensitiveModulesPlugin().apply(compiler);
|
|
1119
1104
|
|
|
1120
|
-
const AddManagedPathsPlugin = require("
|
|
1105
|
+
const AddManagedPathsPlugin = require("../cache/AddManagedPathsPlugin");
|
|
1106
|
+
|
|
1107
|
+
/**
|
|
1108
|
+
* @param {NonNullable<WebpackOptions["snapshot"]["managedPaths"]>} paths snapshot paths
|
|
1109
|
+
* @returns {NonNullable<WebpackOptions["snapshot"]["managedPaths"]>} paths with relative globs compiled
|
|
1110
|
+
*/
|
|
1111
|
+
const compileSnapshotPaths = (paths) => {
|
|
1112
|
+
const {
|
|
1113
|
+
compileRelativeGlobPaths,
|
|
1114
|
+
createPathGlobPrefixRegExp
|
|
1115
|
+
} = require("../util/globUtils");
|
|
1116
|
+
|
|
1117
|
+
return compileRelativeGlobPaths(paths, (pattern) =>
|
|
1118
|
+
createPathGlobPrefixRegExp(
|
|
1119
|
+
pattern,
|
|
1120
|
+
/** @type {string} */ (options.context)
|
|
1121
|
+
)
|
|
1122
|
+
);
|
|
1123
|
+
};
|
|
1124
|
+
const snapshotOptions = {
|
|
1125
|
+
...options.snapshot,
|
|
1126
|
+
managedPaths: compileSnapshotPaths(
|
|
1127
|
+
/** @type {NonNullable<WebpackOptions["snapshot"]["managedPaths"]>} */
|
|
1128
|
+
(options.snapshot.managedPaths)
|
|
1129
|
+
),
|
|
1130
|
+
immutablePaths: compileSnapshotPaths(
|
|
1131
|
+
/** @type {NonNullable<WebpackOptions["snapshot"]["immutablePaths"]>} */
|
|
1132
|
+
(options.snapshot.immutablePaths)
|
|
1133
|
+
),
|
|
1134
|
+
unmanagedPaths: compileSnapshotPaths(
|
|
1135
|
+
/** @type {NonNullable<WebpackOptions["snapshot"]["unmanagedPaths"]>} */
|
|
1136
|
+
(options.snapshot.unmanagedPaths)
|
|
1137
|
+
)
|
|
1138
|
+
};
|
|
1121
1139
|
|
|
1122
1140
|
new AddManagedPathsPlugin(
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
(options.snapshot.immutablePaths),
|
|
1127
|
-
/** @type {NonNullable<WebpackOptions["snapshot"]["managedPaths"]>} */
|
|
1128
|
-
(options.snapshot.unmanagedPaths)
|
|
1141
|
+
snapshotOptions.managedPaths,
|
|
1142
|
+
snapshotOptions.immutablePaths,
|
|
1143
|
+
snapshotOptions.unmanagedPaths
|
|
1129
1144
|
).apply(compiler);
|
|
1130
1145
|
|
|
1131
1146
|
if (options.cache && typeof options.cache === "object") {
|
|
@@ -1134,7 +1149,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1134
1149
|
case "memory": {
|
|
1135
1150
|
if (Number.isFinite(cacheOptions.maxGenerations)) {
|
|
1136
1151
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
1137
|
-
const MemoryWithGcCachePlugin = require("
|
|
1152
|
+
const MemoryWithGcCachePlugin = require("../cache/MemoryWithGcCachePlugin");
|
|
1138
1153
|
|
|
1139
1154
|
new MemoryWithGcCachePlugin({
|
|
1140
1155
|
maxGenerations:
|
|
@@ -1143,7 +1158,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1143
1158
|
}).apply(compiler);
|
|
1144
1159
|
} else {
|
|
1145
1160
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
1146
|
-
const MemoryCachePlugin = require("
|
|
1161
|
+
const MemoryCachePlugin = require("../cache/MemoryCachePlugin");
|
|
1147
1162
|
|
|
1148
1163
|
new MemoryCachePlugin().apply(compiler);
|
|
1149
1164
|
}
|
|
@@ -1158,20 +1173,22 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1158
1173
|
break;
|
|
1159
1174
|
}
|
|
1160
1175
|
case "filesystem": {
|
|
1161
|
-
const AddBuildDependenciesPlugin = require("
|
|
1176
|
+
const AddBuildDependenciesPlugin = require("../cache/AddBuildDependenciesPlugin");
|
|
1162
1177
|
|
|
1163
1178
|
for (const key in cacheOptions.buildDependencies) {
|
|
1164
1179
|
const list = cacheOptions.buildDependencies[key];
|
|
1165
|
-
new AddBuildDependenciesPlugin(
|
|
1180
|
+
new AddBuildDependenciesPlugin(
|
|
1181
|
+
/** @type {NormalizedBuildDependencyItem[]} */ (list)
|
|
1182
|
+
).apply(compiler);
|
|
1166
1183
|
}
|
|
1167
1184
|
if (!Number.isFinite(cacheOptions.maxMemoryGenerations)) {
|
|
1168
1185
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
1169
|
-
const MemoryCachePlugin = require("
|
|
1186
|
+
const MemoryCachePlugin = require("../cache/MemoryCachePlugin");
|
|
1170
1187
|
|
|
1171
1188
|
new MemoryCachePlugin().apply(compiler);
|
|
1172
1189
|
} else if (cacheOptions.maxMemoryGenerations !== 0) {
|
|
1173
1190
|
// @ts-expect-error https://github.com/microsoft/TypeScript/issues/41697
|
|
1174
|
-
const MemoryWithGcCachePlugin = require("
|
|
1191
|
+
const MemoryWithGcCachePlugin = require("../cache/MemoryWithGcCachePlugin");
|
|
1175
1192
|
|
|
1176
1193
|
new MemoryWithGcCachePlugin({
|
|
1177
1194
|
maxGenerations:
|
|
@@ -1189,8 +1206,8 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1189
1206
|
}
|
|
1190
1207
|
switch (cacheOptions.store) {
|
|
1191
1208
|
case "pack": {
|
|
1192
|
-
const IdleFileCachePlugin = require("
|
|
1193
|
-
const PackFileCacheStrategy = require("
|
|
1209
|
+
const IdleFileCachePlugin = require("../cache/IdleFileCachePlugin");
|
|
1210
|
+
const PackFileCacheStrategy = require("../cache/PackFileCacheStrategy");
|
|
1194
1211
|
|
|
1195
1212
|
new IdleFileCachePlugin(
|
|
1196
1213
|
new PackFileCacheStrategy({
|
|
@@ -1206,7 +1223,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1206
1223
|
logger: compiler.getInfrastructureLogger(
|
|
1207
1224
|
"webpack.cache.PackFileCacheStrategy"
|
|
1208
1225
|
),
|
|
1209
|
-
snapshot:
|
|
1226
|
+
snapshot: snapshotOptions,
|
|
1210
1227
|
maxAge: /** @type {number} */ (cacheOptions.maxAge),
|
|
1211
1228
|
profile: cacheOptions.profile,
|
|
1212
1229
|
allowCollectingMemory: cacheOptions.allowCollectingMemory,
|
|
@@ -1235,7 +1252,7 @@ class WebpackOptionsApply extends OptionsApply {
|
|
|
1235
1252
|
new ResolverCachePlugin().apply(compiler);
|
|
1236
1253
|
|
|
1237
1254
|
if (options.ignoreWarnings && options.ignoreWarnings.length > 0) {
|
|
1238
|
-
const IgnoreWarningsPlugin = require("
|
|
1255
|
+
const IgnoreWarningsPlugin = require("../diagnostics/IgnoreWarningsPlugin");
|
|
1239
1256
|
|
|
1240
1257
|
new IgnoreWarningsPlugin(options.ignoreWarnings).apply(compiler);
|
|
1241
1258
|
}
|