webpack 5.111.1 → 5.112.1
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 +1 -1
- package/bin/webpack.js +13 -7
- package/lib/Chunk.js +3 -966
- package/lib/Compilation.js +373 -163
- package/lib/Compiler.js +31 -44
- 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 +21 -13
- package/lib/asset/AssetBytesParser.js +12 -10
- package/lib/asset/AssetGenerator.js +71 -69
- package/lib/asset/AssetModule.js +13 -2
- package/lib/asset/AssetModulesPlugin.js +10 -12
- package/lib/asset/AssetParser.js +10 -10
- package/lib/asset/AssetSourceGenerator.js +23 -15
- package/lib/asset/AssetSourceParser.js +12 -10
- package/lib/asset/RawDataUrlModule.js +17 -10
- package/lib/asset/WebManifestGenerator.js +17 -12
- package/lib/asset/WebManifestParser.js +8 -8
- package/lib/async-modules/AsyncModuleHelpers.js +12 -5
- package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -4
- package/lib/async-modules/InferAsyncModulesPlugin.js +9 -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} +6 -6
- 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 +13 -19
- package/lib/cache/ResolverCachePlugin.js +65 -11
- 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} +209 -212
- package/lib/{WebpackOptionsDefaulter.js → config/WebpackOptionsDefaulter.js} +3 -3
- package/lib/config/browserslistTargetHandler.js +1 -1
- package/lib/{cli.js → config/cli.js} +14 -164
- package/lib/config/defaults.js +166 -59
- package/lib/config/getClaimedAssetTypes.js +22 -14
- package/lib/config/normalization.js +18 -7
- package/lib/config/target.js +11 -1
- 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 +37 -26
- package/lib/context/ContextModuleFactory.js +14 -11
- package/lib/context/ContextReplacementPlugin.js +6 -12
- package/lib/css/CssGenerator.js +78 -68
- package/lib/css/CssInjectStyleRuntimeModule.js +36 -30
- package/lib/css/CssLoadingRuntimeModule.js +77 -44
- package/lib/css/CssModule.js +37 -29
- package/lib/css/CssModulesPlugin.js +129 -45
- package/lib/css/CssParser.js +714 -322
- package/lib/css/CssServerStylesRuntimeModule.js +3 -3
- package/lib/{util → css}/conventions.js +1 -1
- package/lib/css/cssMinify.js +110 -37
- package/lib/css/data.js +6990 -5125
- package/lib/css/syntax-parser.js +20734 -0
- package/lib/css/syntax-printer.js +6092 -0
- package/lib/css/syntax.js +37 -18686
- package/lib/debug/ProfilingPlugin.js +106 -51
- package/lib/{DefinePlugin.js → define/DefinePlugin.js} +416 -55
- package/lib/{DotenvPlugin.js → define/DotenvPlugin.js} +19 -15
- package/lib/{EnvironmentPlugin.js → define/EnvironmentPlugin.js} +6 -4
- 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 -11
- 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} +14 -11
- 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 -36
- package/lib/dependencies/{CommonJsExportsDependency.js → commonjs/CommonJsExportsDependency.js} +15 -14
- package/lib/dependencies/{CommonJsExportsParserPlugin.js → commonjs/CommonJsExportsParserPlugin.js} +154 -92
- package/lib/dependencies/{CommonJsFullRequireDependency.js → commonjs/CommonJsFullRequireDependency.js} +32 -24
- package/lib/dependencies/{CommonJsImportsParserPlugin.js → commonjs/CommonJsImportsParserPlugin.js} +36 -33
- package/lib/dependencies/{CommonJsObjectExportDependency.js → commonjs/CommonJsObjectExportDependency.js} +17 -16
- package/lib/dependencies/{CommonJsPlugin.js → commonjs/CommonJsPlugin.js} +48 -39
- 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} +9 -6
- 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} +10 -11
- 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} +7 -10
- package/lib/dependencies/{ImportMetaGlobHelpers.js → context/ImportMetaGlobHelpers.js} +17 -19
- 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} +21 -17
- 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} +375 -99
- package/lib/dependencies/{CssIcssImportDependency.js → css/CssIcssImportDependency.js} +24 -19
- 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} +25 -22
- 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} +20 -20
- 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} +146 -133
- package/lib/dependencies/{HarmonyExportInitFragment.js → esm/ESMExportInitFragment.js} +48 -30
- package/lib/dependencies/{HarmonyExportSpecifierDependency.js → esm/ESMExportSpecifierDependency.js} +78 -37
- package/lib/dependencies/{HarmonyExports.js → esm/ESMExports.js} +4 -12
- package/lib/dependencies/{HarmonyImportBareSideEffectDependency.js → esm/ESMImportBareSideEffectDependency.js} +21 -13
- package/lib/dependencies/{HarmonyImportDependency.js → esm/ESMImportDependency.js} +86 -68
- package/lib/dependencies/{HarmonyImportDependencyParserPlugin.js → esm/ESMImportDependencyParserPlugin.js} +104 -100
- package/lib/dependencies/{HarmonyImportGuard.js → esm/ESMImportGuard.js} +36 -51
- package/lib/dependencies/{HarmonyImportSideEffectDependency.js → esm/ESMImportSideEffectDependency.js} +83 -39
- package/lib/dependencies/{HarmonyImportSpecifierDependency.js → esm/ESMImportSpecifierDependency.js} +98 -60
- package/lib/dependencies/esm/ESMLiveExportDependency.js +311 -0
- package/lib/dependencies/esm/ESMLiveExportParserPlugin.js +862 -0
- package/lib/dependencies/esm/ESMModulesPlugin.js +205 -0
- package/lib/dependencies/{HarmonyTopLevelThisParserPlugin.js → esm/ESMTopLevelThisParserPlugin.js} +7 -7
- package/lib/dependencies/{TopLevelAwaitDependency.js → esm/TopLevelAwaitDependency.js} +12 -18
- package/lib/dependencies/{DynamicExports.js → helpers/DynamicExports.js} +5 -7
- 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} +52 -151
- package/lib/dependencies/{HtmlInlineHtmlDependency.js → html/HtmlInlineHtmlDependency.js} +13 -15
- package/lib/dependencies/{HtmlInlineScriptDependency.js → html/HtmlInlineScriptDependency.js} +69 -23
- package/lib/dependencies/{HtmlInlineStyleDependency.js → html/HtmlInlineStyleDependency.js} +50 -18
- 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} +22 -25
- 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} +122 -103
- 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 +17 -19
- 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} +82 -53
- 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} +155 -27
- 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 +23 -21
- 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 +14 -10
- package/lib/dll/DllModuleFactory.js +3 -3
- package/lib/dll/DllPlugin.js +18 -6
- package/lib/dll/DllReferencePlugin.js +103 -30
- 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/errors/AbstractMethodError.js +1 -1
- 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} +9 -6
- package/lib/errors/ExternalStarReexportError.js +2 -2
- package/lib/{library → errors}/FalseIIFEUmdWarning.js +1 -1
- package/lib/errors/HookWebpackError.js +6 -5
- package/lib/errors/IgnoreErrorModuleFactory.js +3 -3
- package/lib/errors/InvalidDependenciesModuleWarning.js +1 -1
- package/lib/errors/JSONParseError.js +4 -4
- 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 +13 -3
- package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -2
- package/lib/esm/ModuleChunkFormatPlugin.js +55 -20
- package/lib/esm/ModuleChunkLoadingPlugin.js +3 -3
- package/lib/esm/ModuleChunkLoadingRuntimeModule.js +8 -8
- package/lib/{ExternalModule.js → externals/ExternalModule.js} +90 -63
- package/lib/{ExternalModuleFactoryPlugin.js → externals/ExternalModuleFactoryPlugin.js} +42 -41
- 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} +192 -80
- package/lib/{ChunkGroup.js → graph/ChunkGroup.js} +11 -3
- package/lib/{DependenciesBlock.js → graph/DependenciesBlock.js} +16 -4
- package/lib/graph/Dependency.js +634 -0
- package/lib/graph/Entrypoint.js +136 -0
- package/lib/{ExportsInfo.js → graph/ExportsInfo.js} +131 -83
- package/lib/{HotUpdateChunk.js → graph/HotUpdateChunk.js} +8 -0
- package/lib/{ModuleGraph.js → graph/ModuleGraph.js} +44 -33
- package/lib/{ModuleGraphConnection.js → graph/ModuleGraphConnection.js} +2 -2
- package/lib/{buildChunkGraph.js → graph/buildChunkGraph.js} +169 -76
- package/lib/{util → graph}/findGraphRoots.js +15 -9
- package/lib/graph/isDependencyKind.js +23 -0
- package/lib/hmr/HotModuleReplacement.runtime.js +12 -11
- package/lib/{HotModuleReplacementPlugin.js → hmr/HotModuleReplacementPlugin.js} +51 -57
- package/lib/hmr/HotModuleReplacementRuntimeModule.js +3 -3
- package/lib/hmr/JavascriptHotModuleReplacement.runtime.js +25 -26
- package/lib/hmr/JavascriptHotModuleReplacementHelper.js +2 -2
- package/lib/hmr/LazyCompilationPlugin.js +32 -28
- package/lib/html/HtmlGenerator.js +132 -60
- package/lib/html/HtmlModule.js +16 -2
- package/lib/html/HtmlModulesPlugin.js +184 -87
- package/lib/html/HtmlParser.js +511 -160
- package/lib/html/builtinEmbeddedRenderer.js +70 -25
- package/lib/html/data.js +44 -22
- package/lib/html/htmlMinify.js +114 -41
- package/lib/html/syntax-parser.js +15795 -0
- package/lib/html/syntax-printer.js +1033 -0
- package/lib/html/syntax.js +37 -13952
- package/lib/html/xmlMinify.js +70 -0
- package/lib/ids/ChunkModuleIdRangePlugin.js +2 -2
- package/lib/ids/DeterministicModuleIdsPlugin.js +1 -1
- package/lib/ids/HashedModuleIdsPlugin.js +32 -5
- 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 +312 -105
- package/lib/{APIPlugin.js → javascript/APIPlugin.js} +31 -37
- package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +4 -5
- package/lib/javascript/BasicEvaluatedExpression.js +9 -9
- package/lib/javascript/ChunkHelpers.js +64 -4
- package/lib/javascript/CommonJsChunkFormatPlugin.js +5 -13
- package/lib/{CompatibilityPlugin.js → javascript/CompatibilityPlugin.js} +7 -7
- package/lib/{ConstPlugin.js → javascript/ConstPlugin.js} +75 -8
- package/lib/{ExportsInfoApiPlugin.js → javascript/ExportsInfoApiPlugin.js} +5 -5
- package/lib/{dependencies → javascript}/ExportsInfoDependency.js +10 -9
- package/lib/javascript/JavascriptGenerator.js +32 -27
- package/lib/{JavascriptMetaInfoPlugin.js → javascript/JavascriptMetaInfoPlugin.js} +8 -20
- package/lib/javascript/JavascriptModule.js +14 -3
- package/lib/javascript/JavascriptModulesPlugin.js +441 -214
- package/lib/javascript/JavascriptParser.js +318 -144
- package/lib/javascript/JavascriptParserHelpers.js +1 -1
- package/lib/javascript/MergedEntryExports.js +196 -0
- package/lib/javascript/ScopeAnalyzer.js +3924 -13
- package/lib/javascript/StartupHelpers.js +6 -6
- package/lib/{UseStrictPlugin.js → javascript/UseStrictPlugin.js} +13 -19
- 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 +19169 -0
- package/lib/javascript/syntax-printer-data.js +1099 -0
- package/lib/javascript/syntax-printer.js +53878 -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 +24 -16
- package/lib/json/JsonModule.js +13 -2
- package/lib/json/JsonModulesPlugin.js +1 -1
- package/lib/json/JsonParser.js +11 -10
- 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 +28 -12
- package/lib/library/EnableLibraryPlugin.js +1 -1
- package/lib/library/ExportPropertyLibraryPlugin.js +4 -4
- package/lib/library/JsonpLibraryPlugin.js +2 -2
- package/lib/library/LibraryTemplatePlugin.js +53 -0
- package/lib/library/ModuleLibraryPlugin.js +557 -187
- 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 +94 -46
- package/lib/{LoaderTargetPlugin.js → loaders/LoaderTargetPlugin.js} +2 -2
- package/lib/loaders/loadLoader.js +16 -10
- 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} +33 -23
- package/lib/{Module.js → module/Module.js} +121 -53
- package/lib/{ModuleFactory.js → module/ModuleFactory.js} +3 -3
- package/lib/module/NormalModule.js +2350 -0
- package/lib/{NormalModuleFactory.js → module/NormalModuleFactory.js} +64 -71
- package/lib/module/NullFactory.js +29 -0
- package/lib/{Parser.js → module/Parser.js} +12 -5
- package/lib/module/RawModule.js +208 -0
- package/lib/{SelfModuleFactory.js → module/SelfModuleFactory.js} +1 -1
- package/lib/{util → module}/extractSourceMap.js +71 -20
- package/lib/{util → module}/findCaseMismatch.js +4 -4
- package/lib/node/CommonJsChunkLoadingPlugin.js +3 -3
- package/lib/{dependencies → node}/ExternalModuleDependency.js +8 -7
- package/lib/{dependencies → node}/ExternalModuleInitFragment.js +7 -6
- 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 +13 -19
- package/lib/node/ReadFileCompileWasmPlugin.js +9 -11
- package/lib/node/RequireChunkLoadingRuntimeModule.js +7 -7
- package/lib/node/nodeConsole.js +6 -7
- package/lib/optimize/AggressiveMergingPlugin.js +2 -2
- package/lib/optimize/AggressiveSplittingPlugin.js +12 -8
- package/lib/{CircularModulesPlugin.js → optimize/CircularModulesPlugin.js} +14 -14
- package/lib/optimize/ConcatenatedModule.js +231 -220
- 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} +23 -28
- package/lib/{FlagDependencyUsagePlugin.js → optimize/FlagDependencyUsagePlugin.js} +44 -19
- package/lib/{FlagEntryExportAsUsedPlugin.js → optimize/FlagEntryExportAsUsedPlugin.js} +2 -2
- package/lib/optimize/FlagIncludedChunksPlugin.js +2 -2
- package/lib/optimize/InlineExports.js +12 -7
- package/lib/optimize/InnerGraph.js +5 -13
- package/lib/optimize/InnerGraphPlugin.js +10 -10
- package/lib/optimize/LazyBarrels.js +620 -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 +28 -22
- package/lib/{dependencies → optimize}/PureExpressionDependency.js +11 -10
- package/lib/optimize/RealContentHashPlugin.js +18 -13
- package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -2
- package/lib/optimize/RemoveParentModulesPlugin.js +4 -4
- package/lib/optimize/SideEffectsFlagPlugin.js +24 -38
- package/lib/optimize/SplitChunksPlugin.js +719 -174
- 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} +69 -25
- package/lib/{CopyPlugin.js → output/CopyPlugin.js} +144 -70
- 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 +4 -6
- package/lib/performance/HotspotsPlugin.js +39 -14
- 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 +19 -13
- 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 +22 -13
- 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 +66 -45
- 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 +50 -17
- 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/BasicEffectRulePlugin.js +1 -1
- package/lib/rules/RuleSetCompiler.js +42 -51
- package/lib/rules/UseEffectRulePlugin.js +1 -3
- package/lib/runtime/AsyncModuleGeneratorRuntimeModule.js +2 -2
- package/lib/runtime/AsyncModuleRuntimeModule.js +14 -5
- 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 +7 -11
- 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} +24 -1
- package/lib/runtime/RuntimeIdRuntimeModule.js +4 -4
- package/lib/{RuntimeModule.js → runtime/RuntimeModule.js} +36 -21
- package/lib/{RuntimePlugin.js → runtime/RuntimePlugin.js} +50 -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 +68 -13
- package/lib/schemes/VirtualUrlPlugin.js +52 -16
- package/lib/serialization/AggregateErrorSerializer.js +4 -4
- package/lib/serialization/BinaryMiddleware.js +4 -1
- package/lib/serialization/ErrorObjectSerializer.js +2 -5
- package/lib/serialization/FileMiddleware.js +3 -3
- package/lib/serialization/ObjectMiddleware.js +62 -29
- package/lib/serialization/PlainObjectSerializer.js +3 -7
- package/lib/serialization/Serializer.js +21 -11
- package/lib/serialization/SerializerMiddleware.js +10 -8
- 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 +57 -54
- package/lib/stats/DefaultStatsPresetPlugin.js +3 -7
- package/lib/stats/DefaultStatsPrinterPlugin.js +15 -14
- package/lib/{MultiStats.js → stats/MultiStats.js} +4 -4
- package/lib/{Stats.js → stats/Stats.js} +4 -4
- package/lib/stats/StatsFactory.js +208 -37
- package/lib/stats/StatsPrinter.js +126 -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} +158 -95
- package/lib/{Template.js → template/Template.js} +14 -12
- 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 +439 -51
- package/lib/util/TupleSet.js +27 -27
- package/lib/util/WeakTupleMap.js +20 -16
- package/lib/util/buildDiagnostics.js +2 -2
- package/lib/util/cleverMerge.js +61 -33
- package/lib/util/comparators.js +19 -15
- package/lib/util/concatenate.js +28 -147
- package/lib/util/createMappings.js +111 -0
- package/lib/util/dataURL.js +96 -15
- package/lib/util/deprecation.js +5 -4
- package/lib/util/extractComments.js +118 -0
- package/lib/util/formatLocation.js +1 -1
- package/lib/util/globUtils.js +198 -20
- 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 +296 -102
- package/lib/util/magicComment.js +12 -7
- package/lib/util/makeSerializable.js +28 -7
- package/lib/util/memoize.js +1 -1
- package/lib/util/parseJson.js +2 -2
- 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 +35 -28
- 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 +19 -5
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyGenerator.js +17 -9
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyJavascriptGenerator.js +24 -15
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyModulesPlugin.js +26 -10
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyParser.js +14 -12
- package/lib/wasm/EnableWasmLoadingPlugin.js +1 -1
- package/lib/{wasm-async → wasm}/UniversalCompileAsyncWasmPlugin.js +11 -13
- package/lib/wasm/wasmModuleFilename.js +2 -2
- package/lib/wasm-sync/SyncWasmModule.js +18 -3
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +8 -8
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +3 -3
- package/lib/wasm-sync/WebAssemblyGenerator.js +22 -16
- package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +28 -21
- package/lib/wasm-sync/WebAssemblyModulesPlugin.js +9 -7
- package/lib/wasm-sync/WebAssemblyParser.js +15 -17
- 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 +12 -18
- package/lib/web/FetchCompileWasmPlugin.js +8 -10
- 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 +57 -36
- package/schemas/WebpackOptions.check.js +4 -3
- package/schemas/WebpackOptions.d.json.ts +2 -0
- package/schemas/WebpackOptions.json +295 -75
- package/schemas/plugins/BannerPlugin.check.js +4 -3
- package/schemas/plugins/BannerPlugin.json +29 -2
- package/schemas/plugins/HtmlGeneratorOptions.check.js +4 -3
- package/schemas/plugins/HtmlParserOptions.check.js +4 -3
- package/schemas/plugins/IgnorePlugin.check.js +4 -3
- package/schemas/plugins/IgnorePlugin.d.json.ts +2 -0
- package/schemas/plugins/IgnorePlugin.json +1 -1
- package/schemas/plugins/LoaderOptionsPlugin.check.js +4 -3
- package/schemas/plugins/ManifestPlugin.check.js +4 -3
- package/schemas/plugins/ManifestPlugin.json +3 -3
- package/schemas/plugins/ProgressPlugin.check.js +4 -3
- 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 +4 -3
- package/schemas/plugins/SourceMapDevToolPlugin.json +44 -12
- package/schemas/plugins/WatchIgnorePlugin.check.js +4 -3
- package/schemas/plugins/WatchIgnorePlugin.json +12 -3
- package/schemas/plugins/asset/AssetGeneratorOptions.check.js +4 -3
- package/schemas/plugins/asset/AssetInlineGeneratorOptions.check.js +4 -3
- package/schemas/plugins/asset/AssetParserOptions.check.js +4 -3
- package/schemas/plugins/asset/AssetResourceGeneratorOptions.check.js +4 -3
- package/schemas/plugins/container/ContainerPlugin.check.js +4 -3
- package/schemas/plugins/container/ContainerPlugin.json +8 -0
- package/schemas/plugins/container/ContainerReferencePlugin.check.js +4 -3
- package/schemas/plugins/container/ExternalsType.check.js +4 -3
- package/schemas/plugins/container/ModuleFederationPlugin.check.js +4 -3
- package/schemas/plugins/container/ModuleFederationPlugin.json +40 -0
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +4 -3
- package/schemas/plugins/css/CssGeneratorOptions.check.js +4 -3
- package/schemas/plugins/css/CssModuleGeneratorOptions.check.js +4 -3
- package/schemas/plugins/css/CssModuleParserOptions.check.js +4 -3
- package/schemas/plugins/css/CssParserOptions.check.js +4 -3
- package/schemas/plugins/debug/ProfilingPlugin.check.js +4 -3
- package/schemas/plugins/define/DotenvPluginOptions.check.js +7 -0
- package/schemas/plugins/define/DotenvPluginOptions.json +3 -0
- package/schemas/plugins/dll/DllPlugin.check.js +4 -3
- package/schemas/plugins/dll/DllReferencePlugin.check.js +4 -3
- package/schemas/plugins/dll/DllReferencePlugin.json +3 -18
- package/schemas/plugins/ids/HashedModuleIdsPlugin.check.js +4 -3
- package/schemas/plugins/ids/OccurrenceChunkIdsPlugin.check.js +4 -3
- package/schemas/plugins/ids/OccurrenceModuleIdsPlugin.check.js +4 -3
- package/schemas/plugins/json/JsonModulesPluginGenerator.check.js +4 -3
- package/schemas/plugins/json/JsonModulesPluginParser.check.js +4 -3
- package/schemas/plugins/optimize/AggressiveSplittingPlugin.check.js +4 -3
- package/schemas/plugins/optimize/LimitChunkCountPlugin.check.js +4 -3
- package/schemas/plugins/optimize/MergeDuplicateChunksPlugin.check.js +4 -3
- package/schemas/plugins/optimize/MinChunkSizePlugin.check.js +4 -3
- package/schemas/plugins/output/CleanOptions.check.js +7 -0
- package/schemas/plugins/output/CleanOptions.json +3 -0
- package/schemas/plugins/schemes/HttpUriPlugin.check.js +4 -3
- package/schemas/plugins/schemes/VirtualUrlPlugin.check.js +4 -3
- package/schemas/plugins/sharing/ConsumeSharedPlugin.check.js +4 -3
- package/schemas/plugins/sharing/ConsumeSharedPlugin.json +32 -0
- package/schemas/plugins/sharing/ProvideSharedPlugin.check.js +4 -3
- package/schemas/plugins/sharing/ProvideSharedPlugin.json +32 -0
- package/schemas/plugins/sharing/SharePlugin.check.js +4 -3
- package/schemas/plugins/sharing/SharePlugin.json +32 -0
- package/types.d.ts +20780 -14174
- 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}/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,96 +5,97 @@
|
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
const
|
|
9
|
-
const Dependency = require("
|
|
10
|
-
const { UsageState } = require("
|
|
11
|
-
const InitFragment = require("../InitFragment");
|
|
12
|
-
const RuntimeGlobals = require("../RuntimeGlobals");
|
|
13
|
-
const Template = require("../Template");
|
|
8
|
+
const ESMLinkingError = require("../../errors/ESMLinkingError");
|
|
9
|
+
const Dependency = require("../../graph/Dependency");
|
|
10
|
+
const { UsageState } = require("../../graph/ExportsInfo");
|
|
14
11
|
const {
|
|
15
|
-
InlinedUsedName,
|
|
16
12
|
isExportInlined,
|
|
17
13
|
isInlineEnabled,
|
|
18
|
-
isInlineExportsEnabled
|
|
19
|
-
|
|
14
|
+
isInlineExportsEnabled,
|
|
15
|
+
isInlinedUsedName
|
|
16
|
+
} = require("../../optimize/InlineExports");
|
|
17
|
+
const LazyBarrels = require("../../optimize/LazyBarrels");
|
|
20
18
|
const {
|
|
21
19
|
getKnownExportNames,
|
|
22
20
|
getMakeDeferredNamespaceModeFromExportsType
|
|
23
|
-
} = require("
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const
|
|
21
|
+
} = require("../../runtime/MakeDeferredNamespaceObjectRuntime");
|
|
22
|
+
const RuntimeGlobals = require("../../runtime/RuntimeGlobals");
|
|
23
|
+
const ConditionalInitFragment = require("../../template/ConditionalInitFragment");
|
|
24
|
+
const InitFragment = require("../../template/InitFragment");
|
|
25
|
+
const Template = require("../../template/Template");
|
|
26
|
+
const { countIterable } = require("../../util/IterableHelpers");
|
|
27
|
+
const { combine, first } = require("../../util/SetHelpers");
|
|
28
|
+
const makeSerializable = require("../../util/makeSerializable");
|
|
29
|
+
const { propertyAccess, propertyName } = require("../../util/property");
|
|
28
30
|
const {
|
|
29
31
|
filterRuntime,
|
|
30
32
|
getRuntimeKey,
|
|
31
33
|
keyToRuntime
|
|
32
|
-
} = require("
|
|
33
|
-
const
|
|
34
|
+
} = require("../../util/runtime");
|
|
35
|
+
const { ImportPhaseUtils } = require("../core/ImportPhase");
|
|
36
|
+
const processExportInfo = require("../helpers/processExportInfo");
|
|
37
|
+
const ESMExportInitFragment = require("./ESMExportInitFragment");
|
|
38
|
+
const ESMImportDependency = require("./ESMImportDependency");
|
|
34
39
|
|
|
35
|
-
const { ExportBindingType } =
|
|
36
|
-
|
|
37
|
-
const HarmonyImportDependency = require("./HarmonyImportDependency");
|
|
38
|
-
const HarmonyLinkingError = require("./HarmonyLinkingError");
|
|
39
|
-
const { ImportPhaseUtils } = require("./ImportPhase");
|
|
40
|
-
const processExportInfo = require("./processExportInfo");
|
|
40
|
+
const { ExportBindingType } = ESMExportInitFragment;
|
|
41
41
|
|
|
42
42
|
/** @import { ReplaceSource } from "webpack-sources" */
|
|
43
|
-
/** @import ChunkGraph from "
|
|
43
|
+
/** @import ChunkGraph from "../../graph/ChunkGraph" */
|
|
44
44
|
/**
|
|
45
45
|
* @import {
|
|
46
46
|
* ExportsSpec,
|
|
47
47
|
* GetConditionFn,
|
|
48
|
-
*
|
|
48
|
+
* LazyRole,
|
|
49
49
|
* RawReferencedExports,
|
|
50
50
|
* ReferencedExports,
|
|
51
51
|
* TRANSITIVE,
|
|
52
52
|
* ExportInfoName,
|
|
53
|
-
* UpdateHashContext
|
|
54
|
-
*
|
|
53
|
+
* UpdateHashContext,
|
|
54
|
+
* DependencyKinds
|
|
55
|
+
* } from "../../graph/Dependency"
|
|
55
56
|
*/
|
|
56
|
-
/** @import { DependencyTemplateContext } from "
|
|
57
|
-
/** @import ExportsInfo, { ExportInfo, UsedName } from "
|
|
58
|
-
/** @import { GenerateContext } from "
|
|
57
|
+
/** @import { DependencyTemplateContext } from "../../template/DependencyTemplate" */
|
|
58
|
+
/** @import ExportsInfo, { ExportInfo, UsedName } from "../../graph/ExportsInfo" */
|
|
59
|
+
/** @import { GenerateContext } from "../../module/Generator" */
|
|
59
60
|
/**
|
|
60
61
|
* @import Module, {
|
|
61
62
|
* BuildMeta,
|
|
62
63
|
* RuntimeRequirements,
|
|
63
64
|
* ExportsType
|
|
64
|
-
* } from "
|
|
65
|
+
* } from "../../module/Module"
|
|
65
66
|
*/
|
|
66
|
-
/** @import ModuleGraph from "
|
|
67
|
-
/** @import Hash from "
|
|
67
|
+
/** @import ModuleGraph from "../../graph/ModuleGraph" */
|
|
68
|
+
/** @import Hash from "../../util/Hash" */
|
|
68
69
|
/**
|
|
69
70
|
* @import ModuleGraphConnection, {
|
|
70
71
|
* ConnectionState
|
|
71
|
-
* } from "
|
|
72
|
+
* } from "../../graph/ModuleGraphConnection"
|
|
72
73
|
*/
|
|
73
|
-
/** @import RuntimeTemplate from "
|
|
74
|
-
/** @import WebpackError from "
|
|
75
|
-
/** @import { ImportAttributes } from "
|
|
76
|
-
/** @typedef {[Ids, string | null, Set<string>, ReadonlyArray<
|
|
77
|
-
/** @typedef {import("
|
|
78
|
-
/** @typedef {import("
|
|
79
|
-
/** @typedef {import("
|
|
80
|
-
/** @typedef {import("
|
|
81
|
-
/** @import { RuntimeSpec } from "
|
|
82
|
-
/** @import { Ids, ExportPresenceMode } from "./
|
|
83
|
-
/** @import { ExportMap } from "./
|
|
84
|
-
/** @import { ImportPhaseType } from "../
|
|
74
|
+
/** @import RuntimeTemplate from "../../template/RuntimeTemplate" */
|
|
75
|
+
/** @import WebpackError from "../../errors/WebpackError" */
|
|
76
|
+
/** @import { ImportAttributes } from "../../javascript/JavascriptParser" */
|
|
77
|
+
/** @typedef {[Ids, string | null, Set<string>, ReadonlyArray<ESMExportImportedSpecifierDependency> | null, ExportPresenceMode, ESMStarExportsList | null]} SerializedData */
|
|
78
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectDeserializerContext<SerializedData>} ObjectDeserializerContext */
|
|
79
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectSerializerContext<SerializedData>} ObjectSerializerContext */
|
|
80
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectDeserializerContext<[ESMExportImportedSpecifierDependency[]]>} StarListDeserializerContext */
|
|
81
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectSerializerContext<[ESMExportImportedSpecifierDependency[]]>} StarListSerializerContext */
|
|
82
|
+
/** @import { RuntimeSpec } from "../../util/runtime" */
|
|
83
|
+
/** @import { Ids, ExportPresenceMode } from "./ESMImportDependency" */
|
|
84
|
+
/** @import { ExportMap } from "./ESMExportInitFragment" */
|
|
85
|
+
/** @import { ImportPhaseType } from "../core/ImportPhase" */
|
|
85
86
|
/**
|
|
86
87
|
* @import {
|
|
87
88
|
* JavascriptModuleBuildMeta
|
|
88
|
-
* } from "
|
|
89
|
+
* } from "../../javascript/JavascriptModule"
|
|
89
90
|
*/
|
|
90
|
-
/** @import ConcatenationScope from "
|
|
91
|
+
/** @import ConcatenationScope from "../../optimize/ConcatenationScope" */
|
|
91
92
|
|
|
92
93
|
/** @typedef {"missing" | "unused" | "empty-star" | "reexport-dynamic-default" | "reexport-named-default" | "reexport-namespace-object" | "reexport-fake-namespace-object" | "reexport-undefined" | "normal-reexport" | "dynamic-reexport"} ExportModeType */
|
|
93
94
|
|
|
94
|
-
const { ExportPresenceModes } =
|
|
95
|
+
const { ExportPresenceModes } = ESMImportDependency;
|
|
95
96
|
|
|
96
97
|
const idsSymbol = /** @type {symbol} */ (
|
|
97
|
-
Symbol("
|
|
98
|
+
Symbol("ESMExportImportedSpecifierDependency.ids")
|
|
98
99
|
);
|
|
99
100
|
|
|
100
101
|
class NormalReexportItem {
|
|
@@ -263,8 +264,8 @@ const isAmbiguousWith = (moduleGraph, previous, exportInfo) => {
|
|
|
263
264
|
/**
|
|
264
265
|
* Determine export assignments.
|
|
265
266
|
* @param {ModuleGraph} moduleGraph module graph
|
|
266
|
-
* @param {
|
|
267
|
-
* @param {
|
|
267
|
+
* @param {ESMExportImportedSpecifierDependency[]} dependencies dependencies
|
|
268
|
+
* @param {ESMExportImportedSpecifierDependency=} additionalDependency additional dependency
|
|
268
269
|
* @returns {{ names: ExportInfoName[], dependencyIndices: DependencyIndices, conflicting: Set<ExportInfoName> | undefined }} result
|
|
269
270
|
*/
|
|
270
271
|
const determineExportAssignments = (
|
|
@@ -341,8 +342,8 @@ const determineExportAssignments = (
|
|
|
341
342
|
* @param {ExportInfoName[]} options.names names
|
|
342
343
|
* @param {DependencyIndices} options.dependencyIndices dependency indices
|
|
343
344
|
* @param {string} name name
|
|
344
|
-
* @param {ReadonlyArray<
|
|
345
|
-
* @returns {
|
|
345
|
+
* @param {ReadonlyArray<ESMExportImportedSpecifierDependency>} dependencies dependencies
|
|
346
|
+
* @returns {ESMExportImportedSpecifierDependency | undefined} found dependency or nothing
|
|
346
347
|
*/
|
|
347
348
|
const findDependencyForName = (
|
|
348
349
|
{ names, dependencyIndices },
|
|
@@ -368,7 +369,7 @@ const findDependencyForName = (
|
|
|
368
369
|
/**
|
|
369
370
|
* Returns the export mode.
|
|
370
371
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
371
|
-
* @param {
|
|
372
|
+
* @param {ESMExportImportedSpecifierDependency} dep the dependency
|
|
372
373
|
* @param {string} runtimeKey the runtime key
|
|
373
374
|
* @returns {ExportMode} the export mode
|
|
374
375
|
*/
|
|
@@ -547,17 +548,17 @@ const getMode = (moduleGraph, dep, runtimeKey) => {
|
|
|
547
548
|
/** @typedef {Set<string>} Hidden */
|
|
548
549
|
/** @typedef {Set<string>} IgnoredExports */
|
|
549
550
|
|
|
550
|
-
class
|
|
551
|
+
class ESMExportImportedSpecifierDependency extends ESMImportDependency {
|
|
551
552
|
/**
|
|
552
|
-
* Creates an instance of
|
|
553
|
+
* Creates an instance of ESMExportImportedSpecifierDependency.
|
|
553
554
|
* @param {string} request the request string
|
|
554
555
|
* @param {number} sourceOrder the order in the original source file
|
|
555
556
|
* @param {Ids} ids the requested export name of the imported module
|
|
556
557
|
* @param {string | null} name the export name of for this module
|
|
557
558
|
* @param {Set<string>} activeExports other named exports in the module
|
|
558
|
-
* @param {ReadonlyArray<
|
|
559
|
+
* @param {ReadonlyArray<ESMExportImportedSpecifierDependency> | null} otherStarExports other star exports in the module before this import
|
|
559
560
|
* @param {ExportPresenceMode} exportPresenceMode mode of checking export names
|
|
560
|
-
* @param {
|
|
561
|
+
* @param {ESMStarExportsList | null} allStarExports all star exports in the module
|
|
561
562
|
* @param {ImportPhaseType} phase import phase
|
|
562
563
|
* @param {ImportAttributes=} attributes import attributes
|
|
563
564
|
*/
|
|
@@ -584,7 +585,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
584
585
|
this.otherStarExports = otherStarExports;
|
|
585
586
|
/** @type {ExportPresenceMode} */
|
|
586
587
|
this.exportPresenceMode = exportPresenceMode;
|
|
587
|
-
/** @type {
|
|
588
|
+
/** @type {ESMStarExportsList | null} */
|
|
588
589
|
this.allStarExports = allStarExports;
|
|
589
590
|
}
|
|
590
591
|
|
|
@@ -596,7 +597,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
596
597
|
return Dependency.TRANSITIVE;
|
|
597
598
|
}
|
|
598
599
|
|
|
599
|
-
// TODO
|
|
600
|
+
// TODO in the next major release: remove
|
|
600
601
|
/**
|
|
601
602
|
* Returns id.
|
|
602
603
|
* @deprecated
|
|
@@ -605,7 +606,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
605
606
|
throw new Error("id was renamed to ids and type changed to string[]");
|
|
606
607
|
}
|
|
607
608
|
|
|
608
|
-
// TODO
|
|
609
|
+
// TODO in the next major release: remove
|
|
609
610
|
/**
|
|
610
611
|
* Returns id.
|
|
611
612
|
* @deprecated
|
|
@@ -614,7 +615,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
614
615
|
throw new Error("id was renamed to ids and type changed to string[]");
|
|
615
616
|
}
|
|
616
617
|
|
|
617
|
-
// TODO
|
|
618
|
+
// TODO in the next major release: remove
|
|
618
619
|
/**
|
|
619
620
|
* Updates id.
|
|
620
621
|
* @deprecated
|
|
@@ -631,25 +632,25 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
631
632
|
* Returns the export name this dependency requests from its target module (lazy barrel optimization).
|
|
632
633
|
* @returns {string | true | null} export name, true for all exports, null for none
|
|
633
634
|
*/
|
|
634
|
-
|
|
635
|
+
get forwardId() {
|
|
635
636
|
return this.ids.length > 0 ? this.ids[0] : true;
|
|
636
637
|
}
|
|
637
638
|
|
|
638
639
|
/**
|
|
639
640
|
* Returns how this dependency may be deferred when its parent module is side-effect-free (lazy barrel optimization).
|
|
640
|
-
* @returns {
|
|
641
|
+
* @returns {LazyRole | null} lazy classification, null when it must be processed eagerly
|
|
641
642
|
*/
|
|
642
|
-
|
|
643
|
+
get lazyRole() {
|
|
643
644
|
return this.name !== null
|
|
644
|
-
? Dependency.
|
|
645
|
-
: Dependency.
|
|
645
|
+
? Dependency.LAZY_NAMED_REEXPORT
|
|
646
|
+
: Dependency.LAZY_STAR_REEXPORT;
|
|
646
647
|
}
|
|
647
648
|
|
|
648
649
|
/**
|
|
649
|
-
* Returns the export name for a `
|
|
650
|
+
* Returns the export name for a `LAZY_LOCAL_EXPORT`/`LAZY_NAMED_REEXPORT` classification (lazy barrel optimization).
|
|
650
651
|
* @returns {string | null} export name, null when not applicable
|
|
651
652
|
*/
|
|
652
|
-
|
|
653
|
+
get lazyName() {
|
|
653
654
|
return this.name;
|
|
654
655
|
}
|
|
655
656
|
|
|
@@ -854,7 +855,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
854
855
|
for (const item of /** @type {NormalReexportItem[]} */ (mode.items)) {
|
|
855
856
|
if (item.hidden || item.checked) continue;
|
|
856
857
|
const usedName = exportsInfo.getUsedName(item.ids, runtime);
|
|
857
|
-
if (usedName
|
|
858
|
+
if (isInlinedUsedName(usedName)) {
|
|
858
859
|
hash.update(`${item.name}:${item.ids.join(".")}:`);
|
|
859
860
|
usedName.updateHash(hash);
|
|
860
861
|
}
|
|
@@ -899,9 +900,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
899
900
|
runtime,
|
|
900
901
|
referencedExports,
|
|
901
902
|
[],
|
|
902
|
-
|
|
903
|
-
mode.partialNamespaceExportInfo
|
|
904
|
-
)
|
|
903
|
+
mode.partialNamespaceExportInfo
|
|
905
904
|
);
|
|
906
905
|
return referencedExports;
|
|
907
906
|
}
|
|
@@ -917,9 +916,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
917
916
|
runtime,
|
|
918
917
|
referencedExports,
|
|
919
918
|
[],
|
|
920
|
-
|
|
921
|
-
mode.partialNamespaceExportInfo
|
|
922
|
-
),
|
|
919
|
+
mode.partialNamespaceExportInfo,
|
|
923
920
|
mode.type === "reexport-fake-namespace-object"
|
|
924
921
|
);
|
|
925
922
|
return referencedExports;
|
|
@@ -992,7 +989,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
992
989
|
|
|
993
990
|
const { names, dependencyIndices } = moduleGraph.cached(
|
|
994
991
|
determineExportAssignments,
|
|
995
|
-
/** @type {
|
|
992
|
+
/** @type {ESMExportImportedSpecifierDependency[]} */
|
|
996
993
|
(this.otherStarExports),
|
|
997
994
|
this
|
|
998
995
|
);
|
|
@@ -1015,7 +1012,8 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1015
1012
|
|
|
1016
1013
|
switch (mode.type) {
|
|
1017
1014
|
case "missing":
|
|
1018
|
-
|
|
1015
|
+
// The target may appear on a later build, so this export set cannot be cached.
|
|
1016
|
+
return { exports: [], dependencies: [] };
|
|
1019
1017
|
case "dynamic-reexport": {
|
|
1020
1018
|
const from =
|
|
1021
1019
|
/** @type {ModuleGraphConnection} */
|
|
@@ -1203,7 +1201,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1203
1201
|
.getReadOnlyExportInfo(this.name);
|
|
1204
1202
|
if (!exportInfo.hasCircularTarget(moduleGraph)) return;
|
|
1205
1203
|
return [
|
|
1206
|
-
new
|
|
1204
|
+
new ESMLinkingError(
|
|
1207
1205
|
`export '${ids.join(".")}' (reexported as '${
|
|
1208
1206
|
this.name
|
|
1209
1207
|
}') is part of a circular reexport chain in '${
|
|
@@ -1274,7 +1272,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1274
1272
|
this.allStarExports
|
|
1275
1273
|
? this.allStarExports.dependencies
|
|
1276
1274
|
: [
|
|
1277
|
-
.../** @type {ReadonlyArray<
|
|
1275
|
+
.../** @type {ReadonlyArray<ESMExportImportedSpecifierDependency>} */
|
|
1278
1276
|
(this.otherStarExports),
|
|
1279
1277
|
this
|
|
1280
1278
|
]
|
|
@@ -1304,7 +1302,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1304
1302
|
for (const [request, exports] of conflicts) {
|
|
1305
1303
|
if (!errors) errors = [];
|
|
1306
1304
|
errors.push(
|
|
1307
|
-
new
|
|
1305
|
+
new ESMLinkingError(
|
|
1308
1306
|
`The requested module '${
|
|
1309
1307
|
this.request
|
|
1310
1308
|
}' contains conflicting star exports for the ${
|
|
@@ -1360,13 +1358,15 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1360
1358
|
}
|
|
1361
1359
|
}
|
|
1362
1360
|
|
|
1363
|
-
makeSerializable(
|
|
1364
|
-
|
|
1361
|
+
makeSerializable(ESMExportImportedSpecifierDependency, [
|
|
1362
|
+
"webpack/lib/dependencies/esm/ESMExportImportedSpecifierDependency",
|
|
1363
|
+
// TODO in the next major release: remove, it restores the packs written
|
|
1364
|
+
// under the name the file had before the ESM rename
|
|
1365
1365
|
"webpack/lib/dependencies/HarmonyExportImportedSpecifierDependency"
|
|
1366
|
-
);
|
|
1366
|
+
]);
|
|
1367
1367
|
|
|
1368
|
-
|
|
1369
|
-
|
|
1368
|
+
ESMExportImportedSpecifierDependency.Template = class ESMExportImportedSpecifierDependencyTemplate extends (
|
|
1369
|
+
ESMImportDependency.Template
|
|
1370
1370
|
) {
|
|
1371
1371
|
/**
|
|
1372
1372
|
* Applies the plugin by registering its hooks on the compiler.
|
|
@@ -1378,12 +1378,17 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1378
1378
|
apply(dependency, source, templateContext) {
|
|
1379
1379
|
const { moduleGraph, runtime, concatenationScope } = templateContext;
|
|
1380
1380
|
|
|
1381
|
-
const dep = /** @type {
|
|
1381
|
+
const dep = /** @type {ESMExportImportedSpecifierDependency} */ (
|
|
1382
1382
|
dependency
|
|
1383
1383
|
);
|
|
1384
1384
|
|
|
1385
1385
|
const mode = dep.getMode(moduleGraph, runtime);
|
|
1386
1386
|
|
|
1387
|
+
// deferred by lazy barrel: never resolved, renders nothing
|
|
1388
|
+
if (mode.type === "missing" && LazyBarrels.isLazy(moduleGraph, dep)) {
|
|
1389
|
+
return;
|
|
1390
|
+
}
|
|
1391
|
+
|
|
1387
1392
|
// a wrapped module has no shared-scope symbols to redirect reexports to
|
|
1388
1393
|
if (concatenationScope && !concatenationScope.isWrapped()) {
|
|
1389
1394
|
switch (mode.type) {
|
|
@@ -1425,7 +1430,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1425
1430
|
/**
|
|
1426
1431
|
* Add export fragments.
|
|
1427
1432
|
* @param {InitFragment<GenerateContext>[]} initFragments target array for init fragments
|
|
1428
|
-
* @param {
|
|
1433
|
+
* @param {ESMExportImportedSpecifierDependency} dep dependency
|
|
1429
1434
|
* @param {ExportMode} mode the export mode
|
|
1430
1435
|
* @param {Module} module the current module
|
|
1431
1436
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
@@ -1454,15 +1459,21 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1454
1459
|
concatenationScope !== undefined &&
|
|
1455
1460
|
concatenationScope.isModuleInScope(importedModule);
|
|
1456
1461
|
const importVar = inScope
|
|
1457
|
-
?
|
|
1458
|
-
|
|
1459
|
-
|
|
1462
|
+
? concatenationScope.createModuleReference(importedModule, {
|
|
1463
|
+
asiSafe: true
|
|
1464
|
+
})
|
|
1465
|
+
: dep.getImportVar(moduleGraph);
|
|
1466
|
+
|
|
1467
|
+
const defaultImportVar = inScope
|
|
1468
|
+
? concatenationScope.createModuleReference(importedModule, {
|
|
1469
|
+
ids: ["default"],
|
|
1470
|
+
asiSafe: true
|
|
1471
|
+
})
|
|
1460
1472
|
: dep.getImportVar(moduleGraph);
|
|
1473
|
+
|
|
1461
1474
|
// whole-namespace modes need the original export names, not mangled ones
|
|
1462
1475
|
const namespaceImportVar = inScope
|
|
1463
|
-
?
|
|
1464
|
-
concatenationScope
|
|
1465
|
-
).createModuleReference(importedModule, {
|
|
1476
|
+
? concatenationScope.createModuleReference(importedModule, {
|
|
1466
1477
|
asiSafe: true,
|
|
1467
1478
|
mangleableNamespace: true
|
|
1468
1479
|
})
|
|
@@ -1501,7 +1512,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1501
1512
|
initFragments.push(
|
|
1502
1513
|
new InitFragment(
|
|
1503
1514
|
"/* empty/unused harmony star reexport */\n",
|
|
1504
|
-
InitFragment.
|
|
1515
|
+
InitFragment.STAGE_ESM_EXPORTS,
|
|
1505
1516
|
1
|
|
1506
1517
|
)
|
|
1507
1518
|
);
|
|
@@ -1513,24 +1524,13 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1513
1524
|
`${Template.toNormalComment(
|
|
1514
1525
|
`unused harmony reexport ${mode.name}`
|
|
1515
1526
|
)}\n`,
|
|
1516
|
-
InitFragment.
|
|
1527
|
+
InitFragment.STAGE_ESM_EXPORTS,
|
|
1517
1528
|
1
|
|
1518
1529
|
)
|
|
1519
1530
|
);
|
|
1520
1531
|
break;
|
|
1521
1532
|
|
|
1522
1533
|
case "reexport-dynamic-default": {
|
|
1523
|
-
// `${importVar}_default` names the interop variable that the import
|
|
1524
|
-
// statement declares. An in-scope target has no import statement, so
|
|
1525
|
-
// reference its default export and let the concatenation resolve it.
|
|
1526
|
-
const defaultAccess = inScope
|
|
1527
|
-
? /** @type {ConcatenationScope} */ (
|
|
1528
|
-
concatenationScope
|
|
1529
|
-
).createModuleReference(importedModule, {
|
|
1530
|
-
ids: ["default"],
|
|
1531
|
-
asiSafe: true
|
|
1532
|
-
})
|
|
1533
|
-
: importVar;
|
|
1534
1534
|
initFragments.push(
|
|
1535
1535
|
this.getReexportFragment(
|
|
1536
1536
|
module,
|
|
@@ -1538,7 +1538,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1538
1538
|
moduleGraph
|
|
1539
1539
|
.getExportsInfo(module)
|
|
1540
1540
|
.getUsedName(/** @type {string} */ (mode.name), runtime),
|
|
1541
|
-
|
|
1541
|
+
defaultImportVar,
|
|
1542
1542
|
inScope ? "" : null,
|
|
1543
1543
|
runtimeRequirements
|
|
1544
1544
|
)
|
|
@@ -1558,9 +1558,9 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1558
1558
|
moduleGraph
|
|
1559
1559
|
.getExportsInfo(module)
|
|
1560
1560
|
.getUsedName(/** @type {string} */ (mode.name), runtime),
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1561
|
+
concatenationScope.createModuleReference(importedModule, {
|
|
1562
|
+
asiSafe: true
|
|
1563
|
+
}),
|
|
1564
1564
|
"",
|
|
1565
1565
|
runtimeRequirements
|
|
1566
1566
|
)
|
|
@@ -1605,7 +1605,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1605
1605
|
moduleGraph
|
|
1606
1606
|
.getExportsInfo(module)
|
|
1607
1607
|
.getUsedName(/** @type {string} */ (mode.name), runtime),
|
|
1608
|
-
|
|
1608
|
+
defaultImportVar,
|
|
1609
1609
|
"",
|
|
1610
1610
|
runtimeRequirements
|
|
1611
1611
|
)
|
|
@@ -1670,8 +1670,8 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1670
1670
|
runtimeRequirements
|
|
1671
1671
|
)}`,
|
|
1672
1672
|
moduleGraph.isAsync(importedModule)
|
|
1673
|
-
? InitFragment.
|
|
1674
|
-
: InitFragment.
|
|
1673
|
+
? InitFragment.STAGE_ASYNC_ESM_IMPORTS
|
|
1674
|
+
: InitFragment.STAGE_ESM_IMPORTS,
|
|
1675
1675
|
/** @type {number} */ (dep.sourceOrder),
|
|
1676
1676
|
key,
|
|
1677
1677
|
runtimeCondition
|
|
@@ -1733,8 +1733,8 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1733
1733
|
new InitFragment(
|
|
1734
1734
|
`${content}\n/* harmony reexport (unknown) */ ${RuntimeGlobals.definePropertyGetters}(${exportsName}, __WEBPACK_REEXPORT_OBJECT__);\n`,
|
|
1735
1735
|
moduleGraph.isAsync(importedModule)
|
|
1736
|
-
? InitFragment.
|
|
1737
|
-
: InitFragment.
|
|
1736
|
+
? InitFragment.STAGE_ASYNC_ESM_IMPORTS
|
|
1737
|
+
: InitFragment.STAGE_ESM_IMPORTS,
|
|
1738
1738
|
/** @type {number} */ (dep.sourceOrder)
|
|
1739
1739
|
)
|
|
1740
1740
|
);
|
|
@@ -1755,7 +1755,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1755
1755
|
* @param {UsedName | null} valueKey value key
|
|
1756
1756
|
* @param {RuntimeRequirements} runtimeRequirements runtime requirements
|
|
1757
1757
|
* @param {string[]=} ids original ids on the imported side (for inline-rendering comment)
|
|
1758
|
-
* @returns {
|
|
1758
|
+
* @returns {ESMExportInitFragment} harmony export init fragment
|
|
1759
1759
|
*/
|
|
1760
1760
|
getReexportFragment(
|
|
1761
1761
|
module,
|
|
@@ -1778,7 +1778,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1778
1778
|
type: ExportBindingType.Getter
|
|
1779
1779
|
});
|
|
1780
1780
|
|
|
1781
|
-
return new
|
|
1781
|
+
return new ESMExportInitFragment(module.exportsArgument, map);
|
|
1782
1782
|
}
|
|
1783
1783
|
|
|
1784
1784
|
/**
|
|
@@ -1788,7 +1788,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1788
1788
|
* @param {string} name name
|
|
1789
1789
|
* @param {number} fakeType fake type
|
|
1790
1790
|
* @param {RuntimeRequirements} runtimeRequirements runtime requirements
|
|
1791
|
-
* @returns {[InitFragment<GenerateContext>,
|
|
1791
|
+
* @returns {[InitFragment<GenerateContext>, ESMExportInitFragment]} init fragments
|
|
1792
1792
|
*/
|
|
1793
1793
|
getReexportFakeNamespaceObjectFragments(
|
|
1794
1794
|
module,
|
|
@@ -1817,7 +1817,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1817
1817
|
-1,
|
|
1818
1818
|
`${name}_namespace_cache`
|
|
1819
1819
|
),
|
|
1820
|
-
new
|
|
1820
|
+
new ESMExportInitFragment(module.exportsArgument, map)
|
|
1821
1821
|
];
|
|
1822
1822
|
}
|
|
1823
1823
|
|
|
@@ -1869,7 +1869,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1869
1869
|
-1,
|
|
1870
1870
|
`${name}_deferred_namespace_cache`
|
|
1871
1871
|
),
|
|
1872
|
-
new
|
|
1872
|
+
new ESMExportInitFragment(module.exportsArgument, map)
|
|
1873
1873
|
];
|
|
1874
1874
|
}
|
|
1875
1875
|
|
|
@@ -1912,7 +1912,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1912
1912
|
/**
|
|
1913
1913
|
* Returns value.
|
|
1914
1914
|
* @param {string} name name
|
|
1915
|
-
* @param {null | false | string | string[] | import("
|
|
1915
|
+
* @param {null | false | string | string[] | import("../../optimize/InlineExports").InlinedUsedName} valueKey value key
|
|
1916
1916
|
* @param {string[]=} ids original imported ids (for inline-rendering comment)
|
|
1917
1917
|
* @returns {string | undefined} value
|
|
1918
1918
|
*/
|
|
@@ -1929,7 +1929,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1929
1929
|
return "/* unused export */ undefined";
|
|
1930
1930
|
}
|
|
1931
1931
|
|
|
1932
|
-
if (valueKey
|
|
1932
|
+
if (isInlinedUsedName(valueKey)) {
|
|
1933
1933
|
// Re-export forwards the source export's inlined literal as its own runtime value
|
|
1934
1934
|
return valueKey.render(
|
|
1935
1935
|
Template.toNormalComment(`inlined export ${propertyAccess(ids || [])}`)
|
|
@@ -1940,15 +1940,15 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1940
1940
|
}
|
|
1941
1941
|
};
|
|
1942
1942
|
|
|
1943
|
-
class
|
|
1943
|
+
class ESMStarExportsList {
|
|
1944
1944
|
constructor() {
|
|
1945
|
-
/** @type {
|
|
1945
|
+
/** @type {ESMExportImportedSpecifierDependency[]} */
|
|
1946
1946
|
this.dependencies = [];
|
|
1947
1947
|
}
|
|
1948
1948
|
|
|
1949
1949
|
/**
|
|
1950
1950
|
* Processes the provided dep.
|
|
1951
|
-
* @param {
|
|
1951
|
+
* @param {ESMExportImportedSpecifierDependency} dep dependency
|
|
1952
1952
|
* @returns {void}
|
|
1953
1953
|
*/
|
|
1954
1954
|
push(dep) {
|
|
@@ -1979,13 +1979,26 @@ class HarmonyStarExportsList {
|
|
|
1979
1979
|
}
|
|
1980
1980
|
|
|
1981
1981
|
makeSerializable(
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1982
|
+
ESMStarExportsList,
|
|
1983
|
+
[
|
|
1984
|
+
"webpack/lib/dependencies/esm/ESMExportImportedSpecifierDependency",
|
|
1985
|
+
// TODO in the next major release: remove, it restores the packs written
|
|
1986
|
+
// under the file's and the list's names before the ESM rename
|
|
1987
|
+
[
|
|
1988
|
+
"webpack/lib/dependencies/HarmonyExportImportedSpecifierDependency",
|
|
1989
|
+
"HarmonyStarExportsList"
|
|
1990
|
+
]
|
|
1991
|
+
],
|
|
1992
|
+
"ESMStarExportsList"
|
|
1985
1993
|
);
|
|
1986
1994
|
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1995
|
+
ESMExportImportedSpecifierDependency.ESMStarExportsList = ESMStarExportsList;
|
|
1996
|
+
ESMExportImportedSpecifierDependency.idsSymbol = idsSymbol;
|
|
1997
|
+
|
|
1998
|
+
/** @type {Set<keyof DependencyKinds>} */
|
|
1999
|
+
ESMExportImportedSpecifierDependency.KINDS = new Set([
|
|
2000
|
+
...ESMImportDependency.KINDS,
|
|
2001
|
+
"esm-reexport"
|
|
2002
|
+
]);
|
|
1990
2003
|
|
|
1991
|
-
module.exports =
|
|
2004
|
+
module.exports = ESMExportImportedSpecifierDependency;
|