@depup/webpack 5.111.1-depup.1 → 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 -7
- package/changes.json +3 -15
- 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 +49 -38
- 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
package/lib/dependencies/{HarmonyExportHeaderDependency.js → esm/ESMExportHeaderDependency.js}
RENAMED
|
@@ -5,19 +5,19 @@
|
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
const makeSerializable = require("
|
|
9
|
-
const NullDependency = require("
|
|
8
|
+
const makeSerializable = require("../../util/makeSerializable");
|
|
9
|
+
const NullDependency = require("../core/NullDependency");
|
|
10
10
|
|
|
11
11
|
/** @import { ReplaceSource } from "webpack-sources" */
|
|
12
|
-
/** @import Dependency from "
|
|
13
|
-
/** @import { DependencyTemplateContext } from "
|
|
14
|
-
/** @import { Range } from "
|
|
15
|
-
/** @typedef {import("
|
|
16
|
-
/** @typedef {import("
|
|
12
|
+
/** @import Dependency from "../../graph/Dependency" */
|
|
13
|
+
/** @import { DependencyTemplateContext } from "../../template/DependencyTemplate" */
|
|
14
|
+
/** @import { Range } from "../../javascript/JavascriptParser" */
|
|
15
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectDeserializerContext<[Range | undefined | null, Range]>} ObjectDeserializerContext */
|
|
16
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectSerializerContext<[Range | undefined | null, Range]>} ObjectSerializerContext */
|
|
17
17
|
|
|
18
|
-
class
|
|
18
|
+
class ESMExportHeaderDependency extends NullDependency {
|
|
19
19
|
/**
|
|
20
|
-
* Creates an instance of
|
|
20
|
+
* Creates an instance of ESMExportHeaderDependency.
|
|
21
21
|
* @param {Range | undefined | null} range range
|
|
22
22
|
* @param {Range} rangeStatement range statement
|
|
23
23
|
*/
|
|
@@ -52,12 +52,14 @@ class HarmonyExportHeaderDependency extends NullDependency {
|
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
-
makeSerializable(
|
|
56
|
-
|
|
55
|
+
makeSerializable(ESMExportHeaderDependency, [
|
|
56
|
+
"webpack/lib/dependencies/esm/ESMExportHeaderDependency",
|
|
57
|
+
// TODO in the next major release: remove, it restores the packs written
|
|
58
|
+
// under the name the file had before the ESM rename
|
|
57
59
|
"webpack/lib/dependencies/HarmonyExportHeaderDependency"
|
|
58
|
-
);
|
|
60
|
+
]);
|
|
59
61
|
|
|
60
|
-
|
|
62
|
+
ESMExportHeaderDependency.Template = class ESMExportDependencyTemplate extends (
|
|
61
63
|
NullDependency.Template
|
|
62
64
|
) {
|
|
63
65
|
/**
|
|
@@ -68,7 +70,7 @@ HarmonyExportHeaderDependency.Template = class HarmonyExportDependencyTemplate e
|
|
|
68
70
|
* @returns {void}
|
|
69
71
|
*/
|
|
70
72
|
apply(dependency, source, templateContext) {
|
|
71
|
-
const dep = /** @type {
|
|
73
|
+
const dep = /** @type {ESMExportHeaderDependency} */ (dependency);
|
|
72
74
|
const content = "";
|
|
73
75
|
const replaceUntil = dep.range
|
|
74
76
|
? dep.range[0] - 1
|
|
@@ -77,4 +79,4 @@ HarmonyExportHeaderDependency.Template = class HarmonyExportDependencyTemplate e
|
|
|
77
79
|
}
|
|
78
80
|
};
|
|
79
81
|
|
|
80
|
-
module.exports =
|
|
82
|
+
module.exports = ESMExportHeaderDependency;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*
|
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
|
3
|
+
Author Haijie Xie @hai-x
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
const Dependency = require("../../graph/Dependency");
|
|
9
|
+
const makeSerializable = require("../../util/makeSerializable");
|
|
10
|
+
const ESMImportSideEffectDependency = require("./ESMImportSideEffectDependency");
|
|
11
|
+
|
|
12
|
+
/** @import { LazyRole } from "../../graph/Dependency" */
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* The evaluation of an `export … from "..."` statement's module. It is a separate
|
|
16
|
+
* class rather than a flag so a lazy barrel defers it with the re-export, while an
|
|
17
|
+
* import declaration's evaluation stays tied to the barrel's own code.
|
|
18
|
+
*/
|
|
19
|
+
class ESMExportImportedSideEffectDependency extends ESMImportSideEffectDependency {
|
|
20
|
+
/**
|
|
21
|
+
* Returns how this dependency may be deferred when its parent module is side-effect-free (lazy barrel optimization).
|
|
22
|
+
* @returns {LazyRole | null} lazy classification, null when it must be processed eagerly
|
|
23
|
+
*/
|
|
24
|
+
get lazyRole() {
|
|
25
|
+
return Dependency.LAZY_REEXPORT_SIDE_EFFECT;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
makeSerializable(
|
|
30
|
+
ESMExportImportedSideEffectDependency,
|
|
31
|
+
"webpack/lib/dependencies/esm/ESMExportImportedSideEffectDependency"
|
|
32
|
+
);
|
|
33
|
+
|
|
34
|
+
ESMExportImportedSideEffectDependency.Template =
|
|
35
|
+
ESMImportSideEffectDependency.Template;
|
|
36
|
+
|
|
37
|
+
module.exports = ESMExportImportedSideEffectDependency;
|
|
@@ -5,96 +5,96 @@
|
|
|
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");
|
|
20
17
|
const {
|
|
21
18
|
getKnownExportNames,
|
|
22
19
|
getMakeDeferredNamespaceModeFromExportsType
|
|
23
|
-
} = require("
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const
|
|
20
|
+
} = require("../../runtime/MakeDeferredNamespaceObjectRuntime");
|
|
21
|
+
const RuntimeGlobals = require("../../runtime/RuntimeGlobals");
|
|
22
|
+
const ConditionalInitFragment = require("../../template/ConditionalInitFragment");
|
|
23
|
+
const InitFragment = require("../../template/InitFragment");
|
|
24
|
+
const Template = require("../../template/Template");
|
|
25
|
+
const { countIterable } = require("../../util/IterableHelpers");
|
|
26
|
+
const { combine, first } = require("../../util/SetHelpers");
|
|
27
|
+
const makeSerializable = require("../../util/makeSerializable");
|
|
28
|
+
const { propertyAccess, propertyName } = require("../../util/property");
|
|
28
29
|
const {
|
|
29
30
|
filterRuntime,
|
|
30
31
|
getRuntimeKey,
|
|
31
32
|
keyToRuntime
|
|
32
|
-
} = require("
|
|
33
|
-
const
|
|
33
|
+
} = require("../../util/runtime");
|
|
34
|
+
const { ImportPhaseUtils } = require("../core/ImportPhase");
|
|
35
|
+
const processExportInfo = require("../helpers/processExportInfo");
|
|
36
|
+
const ESMExportInitFragment = require("./ESMExportInitFragment");
|
|
37
|
+
const ESMImportDependency = require("./ESMImportDependency");
|
|
34
38
|
|
|
35
|
-
const { ExportBindingType } =
|
|
36
|
-
|
|
37
|
-
const HarmonyImportDependency = require("./HarmonyImportDependency");
|
|
38
|
-
const HarmonyLinkingError = require("./HarmonyLinkingError");
|
|
39
|
-
const { ImportPhaseUtils } = require("./ImportPhase");
|
|
40
|
-
const processExportInfo = require("./processExportInfo");
|
|
39
|
+
const { ExportBindingType } = ESMExportInitFragment;
|
|
41
40
|
|
|
42
41
|
/** @import { ReplaceSource } from "webpack-sources" */
|
|
43
|
-
/** @import ChunkGraph from "
|
|
42
|
+
/** @import ChunkGraph from "../../graph/ChunkGraph" */
|
|
44
43
|
/**
|
|
45
44
|
* @import {
|
|
46
45
|
* ExportsSpec,
|
|
47
46
|
* GetConditionFn,
|
|
48
|
-
*
|
|
47
|
+
* LazyRole,
|
|
49
48
|
* RawReferencedExports,
|
|
50
49
|
* ReferencedExports,
|
|
51
50
|
* TRANSITIVE,
|
|
52
51
|
* ExportInfoName,
|
|
53
|
-
* UpdateHashContext
|
|
54
|
-
*
|
|
52
|
+
* UpdateHashContext,
|
|
53
|
+
* DependencyKinds
|
|
54
|
+
* } from "../../graph/Dependency"
|
|
55
55
|
*/
|
|
56
|
-
/** @import { DependencyTemplateContext } from "
|
|
57
|
-
/** @import ExportsInfo, { ExportInfo, UsedName } from "
|
|
58
|
-
/** @import { GenerateContext } from "
|
|
56
|
+
/** @import { DependencyTemplateContext } from "../../template/DependencyTemplate" */
|
|
57
|
+
/** @import ExportsInfo, { ExportInfo, UsedName } from "../../graph/ExportsInfo" */
|
|
58
|
+
/** @import { GenerateContext } from "../../module/Generator" */
|
|
59
59
|
/**
|
|
60
60
|
* @import Module, {
|
|
61
61
|
* BuildMeta,
|
|
62
62
|
* RuntimeRequirements,
|
|
63
63
|
* ExportsType
|
|
64
|
-
* } from "
|
|
64
|
+
* } from "../../module/Module"
|
|
65
65
|
*/
|
|
66
|
-
/** @import ModuleGraph from "
|
|
67
|
-
/** @import Hash from "
|
|
66
|
+
/** @import ModuleGraph from "../../graph/ModuleGraph" */
|
|
67
|
+
/** @import Hash from "../../util/Hash" */
|
|
68
68
|
/**
|
|
69
69
|
* @import ModuleGraphConnection, {
|
|
70
70
|
* ConnectionState
|
|
71
|
-
* } from "
|
|
71
|
+
* } from "../../graph/ModuleGraphConnection"
|
|
72
72
|
*/
|
|
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 "../
|
|
73
|
+
/** @import RuntimeTemplate from "../../template/RuntimeTemplate" */
|
|
74
|
+
/** @import WebpackError from "../../errors/WebpackError" */
|
|
75
|
+
/** @import { ImportAttributes } from "../../javascript/JavascriptParser" */
|
|
76
|
+
/** @typedef {[Ids, string | null, Set<string>, ReadonlyArray<ESMExportImportedSpecifierDependency> | null, ExportPresenceMode, ESMStarExportsList | null]} SerializedData */
|
|
77
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectDeserializerContext<SerializedData>} ObjectDeserializerContext */
|
|
78
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectSerializerContext<SerializedData>} ObjectSerializerContext */
|
|
79
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectDeserializerContext<[ESMExportImportedSpecifierDependency[]]>} StarListDeserializerContext */
|
|
80
|
+
/** @typedef {import("../../serialization/ObjectMiddleware").ObjectSerializerContext<[ESMExportImportedSpecifierDependency[]]>} StarListSerializerContext */
|
|
81
|
+
/** @import { RuntimeSpec } from "../../util/runtime" */
|
|
82
|
+
/** @import { Ids, ExportPresenceMode } from "./ESMImportDependency" */
|
|
83
|
+
/** @import { ExportMap } from "./ESMExportInitFragment" */
|
|
84
|
+
/** @import { ImportPhaseType } from "../core/ImportPhase" */
|
|
85
85
|
/**
|
|
86
86
|
* @import {
|
|
87
87
|
* JavascriptModuleBuildMeta
|
|
88
|
-
* } from "
|
|
88
|
+
* } from "../../javascript/JavascriptModule"
|
|
89
89
|
*/
|
|
90
|
-
/** @import ConcatenationScope from "
|
|
90
|
+
/** @import ConcatenationScope from "../../optimize/ConcatenationScope" */
|
|
91
91
|
|
|
92
92
|
/** @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
93
|
|
|
94
|
-
const { ExportPresenceModes } =
|
|
94
|
+
const { ExportPresenceModes } = ESMImportDependency;
|
|
95
95
|
|
|
96
96
|
const idsSymbol = /** @type {symbol} */ (
|
|
97
|
-
Symbol("
|
|
97
|
+
Symbol("ESMExportImportedSpecifierDependency.ids")
|
|
98
98
|
);
|
|
99
99
|
|
|
100
100
|
class NormalReexportItem {
|
|
@@ -263,8 +263,8 @@ const isAmbiguousWith = (moduleGraph, previous, exportInfo) => {
|
|
|
263
263
|
/**
|
|
264
264
|
* Determine export assignments.
|
|
265
265
|
* @param {ModuleGraph} moduleGraph module graph
|
|
266
|
-
* @param {
|
|
267
|
-
* @param {
|
|
266
|
+
* @param {ESMExportImportedSpecifierDependency[]} dependencies dependencies
|
|
267
|
+
* @param {ESMExportImportedSpecifierDependency=} additionalDependency additional dependency
|
|
268
268
|
* @returns {{ names: ExportInfoName[], dependencyIndices: DependencyIndices, conflicting: Set<ExportInfoName> | undefined }} result
|
|
269
269
|
*/
|
|
270
270
|
const determineExportAssignments = (
|
|
@@ -341,8 +341,8 @@ const determineExportAssignments = (
|
|
|
341
341
|
* @param {ExportInfoName[]} options.names names
|
|
342
342
|
* @param {DependencyIndices} options.dependencyIndices dependency indices
|
|
343
343
|
* @param {string} name name
|
|
344
|
-
* @param {ReadonlyArray<
|
|
345
|
-
* @returns {
|
|
344
|
+
* @param {ReadonlyArray<ESMExportImportedSpecifierDependency>} dependencies dependencies
|
|
345
|
+
* @returns {ESMExportImportedSpecifierDependency | undefined} found dependency or nothing
|
|
346
346
|
*/
|
|
347
347
|
const findDependencyForName = (
|
|
348
348
|
{ names, dependencyIndices },
|
|
@@ -368,7 +368,7 @@ const findDependencyForName = (
|
|
|
368
368
|
/**
|
|
369
369
|
* Returns the export mode.
|
|
370
370
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
371
|
-
* @param {
|
|
371
|
+
* @param {ESMExportImportedSpecifierDependency} dep the dependency
|
|
372
372
|
* @param {string} runtimeKey the runtime key
|
|
373
373
|
* @returns {ExportMode} the export mode
|
|
374
374
|
*/
|
|
@@ -547,17 +547,17 @@ const getMode = (moduleGraph, dep, runtimeKey) => {
|
|
|
547
547
|
/** @typedef {Set<string>} Hidden */
|
|
548
548
|
/** @typedef {Set<string>} IgnoredExports */
|
|
549
549
|
|
|
550
|
-
class
|
|
550
|
+
class ESMExportImportedSpecifierDependency extends ESMImportDependency {
|
|
551
551
|
/**
|
|
552
|
-
* Creates an instance of
|
|
552
|
+
* Creates an instance of ESMExportImportedSpecifierDependency.
|
|
553
553
|
* @param {string} request the request string
|
|
554
554
|
* @param {number} sourceOrder the order in the original source file
|
|
555
555
|
* @param {Ids} ids the requested export name of the imported module
|
|
556
556
|
* @param {string | null} name the export name of for this module
|
|
557
557
|
* @param {Set<string>} activeExports other named exports in the module
|
|
558
|
-
* @param {ReadonlyArray<
|
|
558
|
+
* @param {ReadonlyArray<ESMExportImportedSpecifierDependency> | null} otherStarExports other star exports in the module before this import
|
|
559
559
|
* @param {ExportPresenceMode} exportPresenceMode mode of checking export names
|
|
560
|
-
* @param {
|
|
560
|
+
* @param {ESMStarExportsList | null} allStarExports all star exports in the module
|
|
561
561
|
* @param {ImportPhaseType} phase import phase
|
|
562
562
|
* @param {ImportAttributes=} attributes import attributes
|
|
563
563
|
*/
|
|
@@ -584,7 +584,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
584
584
|
this.otherStarExports = otherStarExports;
|
|
585
585
|
/** @type {ExportPresenceMode} */
|
|
586
586
|
this.exportPresenceMode = exportPresenceMode;
|
|
587
|
-
/** @type {
|
|
587
|
+
/** @type {ESMStarExportsList | null} */
|
|
588
588
|
this.allStarExports = allStarExports;
|
|
589
589
|
}
|
|
590
590
|
|
|
@@ -596,7 +596,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
596
596
|
return Dependency.TRANSITIVE;
|
|
597
597
|
}
|
|
598
598
|
|
|
599
|
-
// TODO
|
|
599
|
+
// TODO in the next major release: remove
|
|
600
600
|
/**
|
|
601
601
|
* Returns id.
|
|
602
602
|
* @deprecated
|
|
@@ -605,7 +605,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
605
605
|
throw new Error("id was renamed to ids and type changed to string[]");
|
|
606
606
|
}
|
|
607
607
|
|
|
608
|
-
// TODO
|
|
608
|
+
// TODO in the next major release: remove
|
|
609
609
|
/**
|
|
610
610
|
* Returns id.
|
|
611
611
|
* @deprecated
|
|
@@ -614,7 +614,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
614
614
|
throw new Error("id was renamed to ids and type changed to string[]");
|
|
615
615
|
}
|
|
616
616
|
|
|
617
|
-
// TODO
|
|
617
|
+
// TODO in the next major release: remove
|
|
618
618
|
/**
|
|
619
619
|
* Updates id.
|
|
620
620
|
* @deprecated
|
|
@@ -631,25 +631,25 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
631
631
|
* Returns the export name this dependency requests from its target module (lazy barrel optimization).
|
|
632
632
|
* @returns {string | true | null} export name, true for all exports, null for none
|
|
633
633
|
*/
|
|
634
|
-
|
|
634
|
+
get forwardId() {
|
|
635
635
|
return this.ids.length > 0 ? this.ids[0] : true;
|
|
636
636
|
}
|
|
637
637
|
|
|
638
638
|
/**
|
|
639
639
|
* Returns how this dependency may be deferred when its parent module is side-effect-free (lazy barrel optimization).
|
|
640
|
-
* @returns {
|
|
640
|
+
* @returns {LazyRole | null} lazy classification, null when it must be processed eagerly
|
|
641
641
|
*/
|
|
642
|
-
|
|
642
|
+
get lazyRole() {
|
|
643
643
|
return this.name !== null
|
|
644
|
-
? Dependency.
|
|
645
|
-
: Dependency.
|
|
644
|
+
? Dependency.LAZY_NAMED_REEXPORT
|
|
645
|
+
: Dependency.LAZY_STAR_REEXPORT;
|
|
646
646
|
}
|
|
647
647
|
|
|
648
648
|
/**
|
|
649
|
-
* Returns the export name for a `
|
|
649
|
+
* Returns the export name for a `LAZY_LOCAL_EXPORT`/`LAZY_NAMED_REEXPORT` classification (lazy barrel optimization).
|
|
650
650
|
* @returns {string | null} export name, null when not applicable
|
|
651
651
|
*/
|
|
652
|
-
|
|
652
|
+
get lazyName() {
|
|
653
653
|
return this.name;
|
|
654
654
|
}
|
|
655
655
|
|
|
@@ -854,7 +854,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
854
854
|
for (const item of /** @type {NormalReexportItem[]} */ (mode.items)) {
|
|
855
855
|
if (item.hidden || item.checked) continue;
|
|
856
856
|
const usedName = exportsInfo.getUsedName(item.ids, runtime);
|
|
857
|
-
if (usedName
|
|
857
|
+
if (isInlinedUsedName(usedName)) {
|
|
858
858
|
hash.update(`${item.name}:${item.ids.join(".")}:`);
|
|
859
859
|
usedName.updateHash(hash);
|
|
860
860
|
}
|
|
@@ -992,7 +992,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
992
992
|
|
|
993
993
|
const { names, dependencyIndices } = moduleGraph.cached(
|
|
994
994
|
determineExportAssignments,
|
|
995
|
-
/** @type {
|
|
995
|
+
/** @type {ESMExportImportedSpecifierDependency[]} */
|
|
996
996
|
(this.otherStarExports),
|
|
997
997
|
this
|
|
998
998
|
);
|
|
@@ -1015,7 +1015,8 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1015
1015
|
|
|
1016
1016
|
switch (mode.type) {
|
|
1017
1017
|
case "missing":
|
|
1018
|
-
|
|
1018
|
+
// The target may appear on a later build, so this export set cannot be cached.
|
|
1019
|
+
return { exports: [], dependencies: [] };
|
|
1019
1020
|
case "dynamic-reexport": {
|
|
1020
1021
|
const from =
|
|
1021
1022
|
/** @type {ModuleGraphConnection} */
|
|
@@ -1203,7 +1204,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1203
1204
|
.getReadOnlyExportInfo(this.name);
|
|
1204
1205
|
if (!exportInfo.hasCircularTarget(moduleGraph)) return;
|
|
1205
1206
|
return [
|
|
1206
|
-
new
|
|
1207
|
+
new ESMLinkingError(
|
|
1207
1208
|
`export '${ids.join(".")}' (reexported as '${
|
|
1208
1209
|
this.name
|
|
1209
1210
|
}') is part of a circular reexport chain in '${
|
|
@@ -1274,7 +1275,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1274
1275
|
this.allStarExports
|
|
1275
1276
|
? this.allStarExports.dependencies
|
|
1276
1277
|
: [
|
|
1277
|
-
.../** @type {ReadonlyArray<
|
|
1278
|
+
.../** @type {ReadonlyArray<ESMExportImportedSpecifierDependency>} */
|
|
1278
1279
|
(this.otherStarExports),
|
|
1279
1280
|
this
|
|
1280
1281
|
]
|
|
@@ -1304,7 +1305,7 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1304
1305
|
for (const [request, exports] of conflicts) {
|
|
1305
1306
|
if (!errors) errors = [];
|
|
1306
1307
|
errors.push(
|
|
1307
|
-
new
|
|
1308
|
+
new ESMLinkingError(
|
|
1308
1309
|
`The requested module '${
|
|
1309
1310
|
this.request
|
|
1310
1311
|
}' contains conflicting star exports for the ${
|
|
@@ -1360,13 +1361,15 @@ class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
|
|
|
1360
1361
|
}
|
|
1361
1362
|
}
|
|
1362
1363
|
|
|
1363
|
-
makeSerializable(
|
|
1364
|
-
|
|
1364
|
+
makeSerializable(ESMExportImportedSpecifierDependency, [
|
|
1365
|
+
"webpack/lib/dependencies/esm/ESMExportImportedSpecifierDependency",
|
|
1366
|
+
// TODO in the next major release: remove, it restores the packs written
|
|
1367
|
+
// under the name the file had before the ESM rename
|
|
1365
1368
|
"webpack/lib/dependencies/HarmonyExportImportedSpecifierDependency"
|
|
1366
|
-
);
|
|
1369
|
+
]);
|
|
1367
1370
|
|
|
1368
|
-
|
|
1369
|
-
|
|
1371
|
+
ESMExportImportedSpecifierDependency.Template = class ESMExportImportedSpecifierDependencyTemplate extends (
|
|
1372
|
+
ESMImportDependency.Template
|
|
1370
1373
|
) {
|
|
1371
1374
|
/**
|
|
1372
1375
|
* Applies the plugin by registering its hooks on the compiler.
|
|
@@ -1378,7 +1381,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1378
1381
|
apply(dependency, source, templateContext) {
|
|
1379
1382
|
const { moduleGraph, runtime, concatenationScope } = templateContext;
|
|
1380
1383
|
|
|
1381
|
-
const dep = /** @type {
|
|
1384
|
+
const dep = /** @type {ESMExportImportedSpecifierDependency} */ (
|
|
1382
1385
|
dependency
|
|
1383
1386
|
);
|
|
1384
1387
|
|
|
@@ -1425,7 +1428,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1425
1428
|
/**
|
|
1426
1429
|
* Add export fragments.
|
|
1427
1430
|
* @param {InitFragment<GenerateContext>[]} initFragments target array for init fragments
|
|
1428
|
-
* @param {
|
|
1431
|
+
* @param {ESMExportImportedSpecifierDependency} dep dependency
|
|
1429
1432
|
* @param {ExportMode} mode the export mode
|
|
1430
1433
|
* @param {Module} module the current module
|
|
1431
1434
|
* @param {ModuleGraph} moduleGraph the module graph
|
|
@@ -1458,6 +1461,16 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1458
1461
|
concatenationScope
|
|
1459
1462
|
).createModuleReference(importedModule, { asiSafe: true })
|
|
1460
1463
|
: dep.getImportVar(moduleGraph);
|
|
1464
|
+
|
|
1465
|
+
const defaultImportVar = inScope
|
|
1466
|
+
? /** @type {ConcatenationScope} */ (
|
|
1467
|
+
concatenationScope
|
|
1468
|
+
).createModuleReference(importedModule, {
|
|
1469
|
+
ids: ["default"],
|
|
1470
|
+
asiSafe: true
|
|
1471
|
+
})
|
|
1472
|
+
: dep.getImportVar(moduleGraph);
|
|
1473
|
+
|
|
1461
1474
|
// whole-namespace modes need the original export names, not mangled ones
|
|
1462
1475
|
const namespaceImportVar = inScope
|
|
1463
1476
|
? /** @type {ConcatenationScope} */ (
|
|
@@ -1501,7 +1514,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1501
1514
|
initFragments.push(
|
|
1502
1515
|
new InitFragment(
|
|
1503
1516
|
"/* empty/unused harmony star reexport */\n",
|
|
1504
|
-
InitFragment.
|
|
1517
|
+
InitFragment.STAGE_ESM_EXPORTS,
|
|
1505
1518
|
1
|
|
1506
1519
|
)
|
|
1507
1520
|
);
|
|
@@ -1513,24 +1526,13 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1513
1526
|
`${Template.toNormalComment(
|
|
1514
1527
|
`unused harmony reexport ${mode.name}`
|
|
1515
1528
|
)}\n`,
|
|
1516
|
-
InitFragment.
|
|
1529
|
+
InitFragment.STAGE_ESM_EXPORTS,
|
|
1517
1530
|
1
|
|
1518
1531
|
)
|
|
1519
1532
|
);
|
|
1520
1533
|
break;
|
|
1521
1534
|
|
|
1522
1535
|
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
1536
|
initFragments.push(
|
|
1535
1537
|
this.getReexportFragment(
|
|
1536
1538
|
module,
|
|
@@ -1538,7 +1540,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1538
1540
|
moduleGraph
|
|
1539
1541
|
.getExportsInfo(module)
|
|
1540
1542
|
.getUsedName(/** @type {string} */ (mode.name), runtime),
|
|
1541
|
-
|
|
1543
|
+
defaultImportVar,
|
|
1542
1544
|
inScope ? "" : null,
|
|
1543
1545
|
runtimeRequirements
|
|
1544
1546
|
)
|
|
@@ -1605,7 +1607,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1605
1607
|
moduleGraph
|
|
1606
1608
|
.getExportsInfo(module)
|
|
1607
1609
|
.getUsedName(/** @type {string} */ (mode.name), runtime),
|
|
1608
|
-
|
|
1610
|
+
defaultImportVar,
|
|
1609
1611
|
"",
|
|
1610
1612
|
runtimeRequirements
|
|
1611
1613
|
)
|
|
@@ -1670,8 +1672,8 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1670
1672
|
runtimeRequirements
|
|
1671
1673
|
)}`,
|
|
1672
1674
|
moduleGraph.isAsync(importedModule)
|
|
1673
|
-
? InitFragment.
|
|
1674
|
-
: InitFragment.
|
|
1675
|
+
? InitFragment.STAGE_ASYNC_ESM_IMPORTS
|
|
1676
|
+
: InitFragment.STAGE_ESM_IMPORTS,
|
|
1675
1677
|
/** @type {number} */ (dep.sourceOrder),
|
|
1676
1678
|
key,
|
|
1677
1679
|
runtimeCondition
|
|
@@ -1733,8 +1735,8 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1733
1735
|
new InitFragment(
|
|
1734
1736
|
`${content}\n/* harmony reexport (unknown) */ ${RuntimeGlobals.definePropertyGetters}(${exportsName}, __WEBPACK_REEXPORT_OBJECT__);\n`,
|
|
1735
1737
|
moduleGraph.isAsync(importedModule)
|
|
1736
|
-
? InitFragment.
|
|
1737
|
-
: InitFragment.
|
|
1738
|
+
? InitFragment.STAGE_ASYNC_ESM_IMPORTS
|
|
1739
|
+
: InitFragment.STAGE_ESM_IMPORTS,
|
|
1738
1740
|
/** @type {number} */ (dep.sourceOrder)
|
|
1739
1741
|
)
|
|
1740
1742
|
);
|
|
@@ -1755,7 +1757,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1755
1757
|
* @param {UsedName | null} valueKey value key
|
|
1756
1758
|
* @param {RuntimeRequirements} runtimeRequirements runtime requirements
|
|
1757
1759
|
* @param {string[]=} ids original ids on the imported side (for inline-rendering comment)
|
|
1758
|
-
* @returns {
|
|
1760
|
+
* @returns {ESMExportInitFragment} harmony export init fragment
|
|
1759
1761
|
*/
|
|
1760
1762
|
getReexportFragment(
|
|
1761
1763
|
module,
|
|
@@ -1778,7 +1780,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1778
1780
|
type: ExportBindingType.Getter
|
|
1779
1781
|
});
|
|
1780
1782
|
|
|
1781
|
-
return new
|
|
1783
|
+
return new ESMExportInitFragment(module.exportsArgument, map);
|
|
1782
1784
|
}
|
|
1783
1785
|
|
|
1784
1786
|
/**
|
|
@@ -1788,7 +1790,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1788
1790
|
* @param {string} name name
|
|
1789
1791
|
* @param {number} fakeType fake type
|
|
1790
1792
|
* @param {RuntimeRequirements} runtimeRequirements runtime requirements
|
|
1791
|
-
* @returns {[InitFragment<GenerateContext>,
|
|
1793
|
+
* @returns {[InitFragment<GenerateContext>, ESMExportInitFragment]} init fragments
|
|
1792
1794
|
*/
|
|
1793
1795
|
getReexportFakeNamespaceObjectFragments(
|
|
1794
1796
|
module,
|
|
@@ -1817,7 +1819,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1817
1819
|
-1,
|
|
1818
1820
|
`${name}_namespace_cache`
|
|
1819
1821
|
),
|
|
1820
|
-
new
|
|
1822
|
+
new ESMExportInitFragment(module.exportsArgument, map)
|
|
1821
1823
|
];
|
|
1822
1824
|
}
|
|
1823
1825
|
|
|
@@ -1869,7 +1871,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1869
1871
|
-1,
|
|
1870
1872
|
`${name}_deferred_namespace_cache`
|
|
1871
1873
|
),
|
|
1872
|
-
new
|
|
1874
|
+
new ESMExportInitFragment(module.exportsArgument, map)
|
|
1873
1875
|
];
|
|
1874
1876
|
}
|
|
1875
1877
|
|
|
@@ -1912,7 +1914,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1912
1914
|
/**
|
|
1913
1915
|
* Returns value.
|
|
1914
1916
|
* @param {string} name name
|
|
1915
|
-
* @param {null | false | string | string[] | import("
|
|
1917
|
+
* @param {null | false | string | string[] | import("../../optimize/InlineExports").InlinedUsedName} valueKey value key
|
|
1916
1918
|
* @param {string[]=} ids original imported ids (for inline-rendering comment)
|
|
1917
1919
|
* @returns {string | undefined} value
|
|
1918
1920
|
*/
|
|
@@ -1929,7 +1931,7 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1929
1931
|
return "/* unused export */ undefined";
|
|
1930
1932
|
}
|
|
1931
1933
|
|
|
1932
|
-
if (valueKey
|
|
1934
|
+
if (isInlinedUsedName(valueKey)) {
|
|
1933
1935
|
// Re-export forwards the source export's inlined literal as its own runtime value
|
|
1934
1936
|
return valueKey.render(
|
|
1935
1937
|
Template.toNormalComment(`inlined export ${propertyAccess(ids || [])}`)
|
|
@@ -1940,15 +1942,15 @@ HarmonyExportImportedSpecifierDependency.Template = class HarmonyExportImportedS
|
|
|
1940
1942
|
}
|
|
1941
1943
|
};
|
|
1942
1944
|
|
|
1943
|
-
class
|
|
1945
|
+
class ESMStarExportsList {
|
|
1944
1946
|
constructor() {
|
|
1945
|
-
/** @type {
|
|
1947
|
+
/** @type {ESMExportImportedSpecifierDependency[]} */
|
|
1946
1948
|
this.dependencies = [];
|
|
1947
1949
|
}
|
|
1948
1950
|
|
|
1949
1951
|
/**
|
|
1950
1952
|
* Processes the provided dep.
|
|
1951
|
-
* @param {
|
|
1953
|
+
* @param {ESMExportImportedSpecifierDependency} dep dependency
|
|
1952
1954
|
* @returns {void}
|
|
1953
1955
|
*/
|
|
1954
1956
|
push(dep) {
|
|
@@ -1979,13 +1981,26 @@ class HarmonyStarExportsList {
|
|
|
1979
1981
|
}
|
|
1980
1982
|
|
|
1981
1983
|
makeSerializable(
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1984
|
+
ESMStarExportsList,
|
|
1985
|
+
[
|
|
1986
|
+
"webpack/lib/dependencies/esm/ESMExportImportedSpecifierDependency",
|
|
1987
|
+
// TODO in the next major release: remove, it restores the packs written
|
|
1988
|
+
// under the file's and the list's names before the ESM rename
|
|
1989
|
+
[
|
|
1990
|
+
"webpack/lib/dependencies/HarmonyExportImportedSpecifierDependency",
|
|
1991
|
+
"HarmonyStarExportsList"
|
|
1992
|
+
]
|
|
1993
|
+
],
|
|
1994
|
+
"ESMStarExportsList"
|
|
1985
1995
|
);
|
|
1986
1996
|
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1997
|
+
ESMExportImportedSpecifierDependency.ESMStarExportsList = ESMStarExportsList;
|
|
1998
|
+
ESMExportImportedSpecifierDependency.idsSymbol = idsSymbol;
|
|
1999
|
+
|
|
2000
|
+
/** @type {Set<keyof DependencyKinds>} */
|
|
2001
|
+
ESMExportImportedSpecifierDependency.KINDS = new Set([
|
|
2002
|
+
...ESMImportDependency.KINDS,
|
|
2003
|
+
"esm-reexport"
|
|
2004
|
+
]);
|
|
1990
2005
|
|
|
1991
|
-
module.exports =
|
|
2006
|
+
module.exports = ESMExportImportedSpecifierDependency;
|