webpack 5.111.0 → 5.112.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 +1 -1
- package/lib/Chunk.js +3 -966
- package/lib/Compilation.js +237 -138
- package/lib/Compiler.js +23 -24
- package/lib/Dependency.js +3 -551
- package/lib/DependencyTemplate.js +3 -69
- 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 +43 -24
- package/lib/NormalModule.js +3 -2190
- 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 +15 -9
- package/lib/asset/AssetBytesParser.js +3 -3
- package/lib/asset/AssetGenerator.js +61 -38
- 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 +15 -9
- 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 +6 -6
- package/lib/cache/MemoryWithGcCachePlugin.js +9 -10
- package/lib/cache/PackFileCacheStrategy.js +11 -28
- package/lib/cache/ResolverCachePlugin.js +8 -4
- package/lib/cache/getLazyHashedEtag.js +3 -5
- 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 +3 -9
- package/lib/{cli.js → config/cli.js} +5 -158
- package/lib/config/defaults.js +192 -122
- package/lib/config/getClaimedAssetTypes.js +28 -21
- package/lib/config/normalization.js +18 -7
- package/lib/config/target.js +13 -4
- 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/{ContextExclusionPlugin.js → context/ContextExclusionPlugin.js} +1 -1
- package/lib/{ContextModule.js → context/ContextModule.js} +50 -36
- package/lib/{ContextModuleFactory.js → context/ContextModuleFactory.js} +25 -24
- package/lib/{ContextReplacementPlugin.js → context/ContextReplacementPlugin.js} +4 -4
- package/lib/css/CssGenerator.js +57 -42
- 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 +700 -311
- package/lib/css/CssServerStylesRuntimeModule.js +3 -3
- package/lib/css/cssMinify.js +130 -54
- package/lib/css/data.js +7017 -4648
- package/lib/css/syntax-parser.js +19873 -0
- package/lib/css/syntax-printer.js +6037 -0
- package/lib/css/syntax.js +37 -17370
- package/lib/debug/ProfilingPlugin.js +55 -23
- package/lib/{DefinePlugin.js → define/DefinePlugin.js} +407 -41
- package/lib/{DotenvPlugin.js → define/DotenvPlugin.js} +25 -29
- 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} +176 -44
- 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} +39 -35
- 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} +19 -20
- 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} +34 -18
- 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} +375 -100
- package/lib/dependencies/{CssIcssImportDependency.js → css/CssIcssImportDependency.js} +26 -22
- 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} +26 -21
- 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} +40 -41
- package/lib/dependencies/{HarmonyDetectionParserPlugin.js → esm/ESMDetectionParserPlugin.js} +22 -21
- package/lib/dependencies/{HarmonyEvaluatedImportSpecifierDependency.js → esm/ESMEvaluatedImportSpecifierDependency.js} +33 -30
- package/lib/dependencies/{HarmonyExportDependencyParserPlugin.js → esm/ESMExportDependencyParserPlugin.js} +62 -93
- package/lib/dependencies/{HarmonyExportExpressionDependency.js → esm/ESMExportExpressionDependency.js} +83 -49
- 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} +136 -122
- package/lib/dependencies/{HarmonyExportInitFragment.js → esm/ESMExportInitFragment.js} +68 -43
- package/lib/dependencies/{HarmonyExportSpecifierDependency.js → esm/ESMExportSpecifierDependency.js} +68 -65
- 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} +199 -97
- package/lib/dependencies/{HarmonyImportGuard.js → esm/ESMImportGuard.js} +26 -29
- package/lib/dependencies/{HarmonyImportSideEffectDependency.js → esm/ESMImportSideEffectDependency.js} +86 -43
- package/lib/dependencies/{HarmonyImportSpecifierDependency.js → esm/ESMImportSpecifierDependency.js} +110 -61
- 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 +8 -9
- 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} +125 -243
- package/lib/dependencies/{HtmlInlineHtmlDependency.js → html/HtmlInlineHtmlDependency.js} +13 -12
- package/lib/dependencies/{HtmlInlineScriptDependency.js → html/HtmlInlineScriptDependency.js} +72 -23
- package/lib/dependencies/{HtmlInlineStyleDependency.js → html/HtmlInlineStyleDependency.js} +53 -19
- 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} +126 -107
- 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} +34 -25
- package/lib/{url → dependencies/url}/URLParserPlugin.js +22 -26
- 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} +46 -54
- package/lib/dependencies/{WorkerDependency.js → worker/WorkerDependency.js} +28 -20
- package/lib/dependencies/{WorkletDependency.js → worker/WorkletDependency.js} +25 -27
- 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} +207 -129
- 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/errors/ErrorHelpers.js +222 -0
- 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/{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} +85 -63
- 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} +151 -99
- package/lib/{HotUpdateChunk.js → graph/HotUpdateChunk.js} +8 -0
- package/lib/{ModuleGraph.js → graph/ModuleGraph.js} +36 -39
- package/lib/{ModuleGraphConnection.js → graph/ModuleGraphConnection.js} +2 -2
- package/lib/{buildChunkGraph.js → graph/buildChunkGraph.js} +163 -72
- package/lib/{util → graph}/findGraphRoots.js +20 -21
- package/lib/graph/isDependencyKind.js +23 -0
- package/lib/hmr/HotModuleReplacement.runtime.js +2 -2
- package/lib/{HotModuleReplacementPlugin.js → hmr/HotModuleReplacementPlugin.js} +49 -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 +34 -26
- package/lib/html/HtmlGenerator.js +168 -125
- package/lib/html/HtmlModule.js +6 -2
- package/lib/html/HtmlModulesPlugin.js +260 -215
- package/lib/html/HtmlParser.js +598 -292
- package/lib/html/builtinEmbeddedRenderer.js +60 -13
- package/lib/html/data.js +23 -1
- package/lib/html/htmlMinify.js +120 -51
- package/lib/html/syntax-parser.js +15796 -0
- package/lib/html/syntax-printer.js +1034 -0
- package/lib/html/syntax.js +37 -14062
- 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 +348 -99
- package/lib/{APIPlugin.js → javascript/APIPlugin.js} +29 -30
- 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} +10 -11
- package/lib/{ConstPlugin.js → javascript/ConstPlugin.js} +90 -139
- package/lib/{ExportsInfoApiPlugin.js → javascript/ExportsInfoApiPlugin.js} +5 -5
- package/lib/{dependencies → javascript}/ExportsInfoDependency.js +10 -9
- package/lib/javascript/JavascriptGenerator.js +25 -18
- package/lib/{JavascriptMetaInfoPlugin.js → javascript/JavascriptMetaInfoPlugin.js} +7 -7
- package/lib/javascript/JavascriptModule.js +4 -3
- package/lib/javascript/JavascriptModulesPlugin.js +458 -256
- package/lib/javascript/JavascriptParser.js +916 -287
- 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 -10946
- package/lib/json/JsonData.js +1 -1
- package/lib/{dependencies → json}/JsonExportsDependency.js +8 -7
- package/lib/json/JsonGenerator.js +17 -11
- 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 +207 -285
- 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 +27 -2
- package/lib/loaders/LoaderRunner.js +160 -22
- 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} +38 -14
- package/lib/{Module.js → module/Module.js} +122 -54
- 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 +61 -15
- 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 +5 -7
- package/lib/optimize/AggressiveSplittingPlugin.js +12 -8
- package/lib/{CircularModulesPlugin.js → optimize/CircularModulesPlugin.js} +13 -13
- package/lib/optimize/ConcatenatedModule.js +305 -309
- 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} +25 -30
- package/lib/{FlagDependencyUsagePlugin.js → optimize/FlagDependencyUsagePlugin.js} +26 -30
- package/lib/{FlagEntryExportAsUsedPlugin.js → optimize/FlagEntryExportAsUsedPlugin.js} +2 -2
- package/lib/optimize/FlagIncludedChunksPlugin.js +5 -13
- package/lib/optimize/InlineExports.js +11 -3
- package/lib/optimize/InnerGraph.js +5 -13
- package/lib/optimize/InnerGraphPlugin.js +17 -23
- package/lib/optimize/LazyBarrels.js +584 -0
- package/lib/{util → optimize}/LazyBucketSortedSet.js +2 -2
- package/lib/optimize/LimitChunkCountPlugin.js +21 -15
- package/lib/optimize/MangleExportsPlugin.js +8 -9
- package/lib/optimize/MergeDuplicateChunksPlugin.js +7 -6
- package/lib/optimize/MinChunkSizePlugin.js +9 -6
- package/lib/optimize/ModuleConcatenationPlugin.js +23 -16
- 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 +25 -37
- package/lib/optimize/SplitChunksPlugin.js +715 -159
- package/lib/{util → optimize}/TupleQueue.js +9 -9
- package/lib/optimize/chunkSetIntersections.js +437 -0
- package/lib/{util → optimize}/deterministicGrouping.js +25 -30
- 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 +5 -7
- 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 +13 -16
- 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 +7 -9
- 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 +82 -65
- package/lib/prefetch/ResourceHintRuntimeModule.js +3 -3
- package/lib/prefetch/StartupAssetHintRuntimeModule.js +10 -13
- 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 +10 -9
- 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 +9 -10
- 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 +5 -7
- 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 +135 -102
- 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 +4 -7
- package/lib/schemes/HttpUriPlugin.js +67 -11
- package/lib/schemes/VirtualUrlPlugin.js +50 -16
- package/lib/serialization/AggregateErrorSerializer.js +2 -2
- package/lib/serialization/BinaryMiddleware.js +9 -9
- package/lib/serialization/FileMiddleware.js +19 -19
- package/lib/serialization/ObjectMiddleware.js +77 -49
- 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 +19 -19
- package/lib/sharing/utils.js +59 -2
- package/lib/stats/DefaultStatsFactoryPlugin.js +25 -23
- 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} +178 -106
- package/lib/{Template.js → template/Template.js} +13 -11
- package/lib/{TemplatedPathPlugin.js → template/TemplatedPathPlugin.js} +35 -82
- package/lib/typescript/TypeScriptPlugin.js +5 -6
- package/lib/util/LocConverter.js +4 -7
- package/lib/util/RequestShortener.js +44 -0
- package/lib/util/SortableSet.js +87 -22
- package/lib/util/SourceProcessor.js +364 -66
- 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 +32 -151
- package/lib/util/createHooksRegistry.js +1 -2
- package/lib/util/createMappings.js +111 -0
- package/lib/util/dataURL.js +96 -18
- 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/hash/wasm-hash.js +3 -4
- package/lib/util/identifier.js +117 -1
- package/lib/util/implicitTypeLoaderFallback.js +6 -4
- package/lib/util/internalSerializables.js +295 -103
- 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 +11 -6
- package/lib/{wasm-async → wasm}/AsyncWebAssemblyJavascriptGenerator.js +16 -11
- 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 +11 -12
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +3 -3
- package/lib/wasm-sync/WebAssemblyGenerator.js +15 -9
- package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +19 -16
- package/lib/wasm-sync/WebAssemblyModulesPlugin.js +9 -7
- package/lib/wasm-sync/WebAssemblyParser.js +6 -6
- package/lib/wasm-sync/WebAssemblyUtils.js +8 -9
- 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 +70 -40
- 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 +13915 -8414
- package/lib/ErrorHelpers.js +0 -107
- 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 -71
- package/lib/javascript/grammar.js +0 -5546
- package/lib/javascript/parser.js +0 -1494
- 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
|
@@ -6,54 +6,57 @@
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
const { CachedSource, ReplaceSource } = require("webpack-sources");
|
|
9
|
-
const APIPlugin = require("./APIPlugin");
|
|
10
9
|
|
|
11
|
-
const InitFragment = require("./InitFragment");
|
|
12
|
-
const { CSS_TYPE, JAVASCRIPT_TYPE } = require("./ModuleSourceTypeConstants");
|
|
13
|
-
const { WEBASSEMBLY_MODULE_TYPE_ASYNC } = require("./ModuleTypeConstants");
|
|
14
|
-
const RuntimeGlobals = require("./RuntimeGlobals");
|
|
15
|
-
const Template = require("./Template");
|
|
16
10
|
const {
|
|
17
11
|
getOutgoingAsyncModules
|
|
18
|
-
} = require("
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const JavascriptModulesPlugin = require("
|
|
23
|
-
const {
|
|
12
|
+
} = require("../async-modules/AsyncModuleHelpers");
|
|
13
|
+
const { ImportPhaseUtils } = require("../dependencies/core/ImportPhase");
|
|
14
|
+
const isDependencyKind = require("../graph/isDependencyKind");
|
|
15
|
+
const APIPlugin = require("../javascript/APIPlugin");
|
|
16
|
+
const JavascriptModulesPlugin = require("../javascript/JavascriptModulesPlugin");
|
|
17
|
+
const {
|
|
18
|
+
CSS_TYPE,
|
|
19
|
+
JAVASCRIPT_TYPE
|
|
20
|
+
} = require("../module/ModuleSourceTypeConstants");
|
|
21
|
+
const {
|
|
22
|
+
WEBASSEMBLY_MODULE_TYPE_ASYNC
|
|
23
|
+
} = require("../module/ModuleTypeConstants");
|
|
24
|
+
const { isInlinedUsedName } = require("../optimize/InlineExports");
|
|
24
25
|
const {
|
|
25
26
|
getDeferredCycleModuleIds,
|
|
26
27
|
getDeferredCycleModules,
|
|
27
28
|
getKnownExportNames,
|
|
28
29
|
getMakeDeferredNamespaceModeFromExportsType,
|
|
29
30
|
getOptimizedDeferredModule
|
|
30
|
-
} = require("
|
|
31
|
+
} = require("../runtime/MakeDeferredNamespaceObjectRuntime");
|
|
32
|
+
const RuntimeGlobals = require("../runtime/RuntimeGlobals");
|
|
31
33
|
const {
|
|
32
34
|
isAbsoluteBaseUri,
|
|
33
35
|
isChunkRelativeBaseUri
|
|
34
|
-
} = require("
|
|
35
|
-
const { equals } = require("
|
|
36
|
-
const { getScheme } = require("
|
|
37
|
-
const { compareIds } = require("
|
|
38
|
-
const compileBooleanMatcher = require("
|
|
36
|
+
} = require("../runtime/baseUri");
|
|
37
|
+
const { equals } = require("../util/ArrayHelpers");
|
|
38
|
+
const { getScheme } = require("../util/URLAbsoluteSpecifier");
|
|
39
|
+
const { compareIds } = require("../util/comparators");
|
|
40
|
+
const compileBooleanMatcher = require("../util/compileBooleanMatcher");
|
|
39
41
|
const {
|
|
40
42
|
RESOLVABLE_SPECIFIER_REGEXP,
|
|
41
43
|
getUndoPath,
|
|
42
44
|
toJsStringLiteral
|
|
43
|
-
} = require("
|
|
44
|
-
const memoize = require("
|
|
45
|
-
const { propertyAccess, propertyName } = require("
|
|
45
|
+
} = require("../util/identifier");
|
|
46
|
+
const memoize = require("../util/memoize");
|
|
47
|
+
const { propertyAccess, propertyName } = require("../util/property");
|
|
46
48
|
const {
|
|
47
49
|
forEachRuntime,
|
|
48
50
|
getRuntimeKey,
|
|
49
51
|
intersectRuntime,
|
|
50
52
|
subtractRuntime
|
|
51
|
-
} = require("
|
|
53
|
+
} = require("../util/runtime");
|
|
54
|
+
const InitFragment = require("./InitFragment");
|
|
55
|
+
const Template = require("./Template");
|
|
52
56
|
|
|
53
|
-
const getCssModulesPlugin = memoize(() => require("
|
|
57
|
+
const getCssModulesPlugin = memoize(() => require("../css/CssModulesPlugin"));
|
|
54
58
|
// `Compilation` requires this module, so its stage constants are read lazily.
|
|
55
|
-
const getCompilation = memoize(() => require("
|
|
56
|
-
const getExternalModule = memoize(() => require("./ExternalModule"));
|
|
59
|
+
const getCompilation = memoize(() => require("../Compilation"));
|
|
57
60
|
|
|
58
61
|
/**
|
|
59
62
|
* @typedef {object} ChunkAssetNaming
|
|
@@ -88,10 +91,8 @@ const CHUNK_ASSET_NAMING = new Map([
|
|
|
88
91
|
]);
|
|
89
92
|
const getTemplatedPathPlugin = memoize(() => require("./TemplatedPathPlugin"));
|
|
90
93
|
const getConcatenatedModule = memoize(() =>
|
|
91
|
-
require("
|
|
94
|
+
require("../optimize/ConcatenatedModule")
|
|
92
95
|
);
|
|
93
|
-
const getNormalModule = memoize(() => require("./NormalModule"));
|
|
94
|
-
|
|
95
96
|
/**
|
|
96
97
|
* Whether a hot update can re-run the module a reference is emitted into: the HMR
|
|
97
98
|
* plugin marks every normal module, and a concatenated one is read through its root.
|
|
@@ -100,9 +101,8 @@ const getNormalModule = memoize(() => require("./NormalModule"));
|
|
|
100
101
|
*/
|
|
101
102
|
const isHotModule = (module) => {
|
|
102
103
|
if (module === undefined) return false;
|
|
103
|
-
const normal =
|
|
104
|
-
|
|
105
|
-
return normal instanceof getNormalModule() && normal.hot;
|
|
104
|
+
const normal = module.getRootModule();
|
|
105
|
+
return normal.is("normal") && normal.hot;
|
|
106
106
|
};
|
|
107
107
|
|
|
108
108
|
// Any `[hash]`/`[fullhash]`/`[chunkhash]`/`[contenthash]` token, incl. a `:<length>`
|
|
@@ -220,16 +220,16 @@ const HOT_NAME_BAILOUT =
|
|
|
220
220
|
/**
|
|
221
221
|
* @import {
|
|
222
222
|
* OutputNormalizedWithDefaults as OutputOptions
|
|
223
|
-
* } from "
|
|
223
|
+
* } from "../config/defaults"
|
|
224
224
|
*/
|
|
225
|
-
/** @import { PublicPath, WasmLoading } from "
|
|
226
|
-
/** @import ModuleDependency from "
|
|
225
|
+
/** @import { PublicPath, WasmLoading } from "../../declarations/WebpackOptions.d.ts" */
|
|
226
|
+
/** @import ModuleDependency from "../dependencies/core/ModuleDependency" */
|
|
227
227
|
/**
|
|
228
228
|
* @import Module, {
|
|
229
229
|
* ReadOnlyRuntimeRequirements,
|
|
230
230
|
* BuildMeta,
|
|
231
231
|
* RuntimeRequirements
|
|
232
|
-
* } from "
|
|
232
|
+
* } from "../module/Module"
|
|
233
233
|
*/
|
|
234
234
|
/** @typedef {"import" | "url" | "url-runtime" | "url-inline" | "wasm" | "wasm-relative"} AnalyzableForm */
|
|
235
235
|
/**
|
|
@@ -304,18 +304,19 @@ const CHUNK_ASSET_NAMING_BY_STAND_IN = new Map(
|
|
|
304
304
|
|
|
305
305
|
const PASS_NAME = "analyzableChunkNaming";
|
|
306
306
|
|
|
307
|
-
/** @import AsyncDependenciesBlock from "
|
|
307
|
+
/** @import AsyncDependenciesBlock from "../graph/AsyncDependenciesBlock" */
|
|
308
308
|
/** @import { Source } from "webpack-sources" */
|
|
309
|
-
/** @import Compiler from "
|
|
310
|
-
/** @import Chunk, { ChunkFilenameTemplate, ChunkId } from "
|
|
311
|
-
/** @import ChunkGraph, { ModuleId } from "
|
|
312
|
-
/** @import Compilation from "
|
|
313
|
-
/** @import Dependency from "
|
|
314
|
-
/** @import ModuleGraph from "
|
|
315
|
-
/** @import RequestShortener from "
|
|
316
|
-
/** @import Hash from "
|
|
317
|
-
/** @import CodeGenerationResults from "
|
|
318
|
-
/** @import { RuntimeSpec } from "
|
|
309
|
+
/** @import Compiler from "../Compiler" */
|
|
310
|
+
/** @import Chunk, { ChunkFilenameTemplate, ChunkId } from "../graph/Chunk" */
|
|
311
|
+
/** @import ChunkGraph, { ModuleId } from "../graph/ChunkGraph" */
|
|
312
|
+
/** @import Compilation from "../Compilation" */
|
|
313
|
+
/** @import Dependency from "../graph/Dependency" */
|
|
314
|
+
/** @import ModuleGraph from "../graph/ModuleGraph" */
|
|
315
|
+
/** @import RequestShortener from "../util/RequestShortener" */
|
|
316
|
+
/** @import Hash from "../util/Hash" */
|
|
317
|
+
/** @import CodeGenerationResults from "../module/CodeGenerationResults" */
|
|
318
|
+
/** @import { RuntimeSpec } from "../util/runtime" */
|
|
319
|
+
/** @import { JsonValue } from "../fs/fs" */
|
|
319
320
|
|
|
320
321
|
/**
|
|
321
322
|
* A stand-in whose every hash reads back as `hash`. Which content hashes a chunk
|
|
@@ -428,7 +429,7 @@ function getGlobalObject(definition) {
|
|
|
428
429
|
// An async external is a promise, not a module record with an evaluating state.
|
|
429
430
|
const isAsyncExternal = (/** @type {Module} */ module) =>
|
|
430
431
|
Boolean(/** @type {BuildMeta} */ (module.buildMeta).async) &&
|
|
431
|
-
module
|
|
432
|
+
module.is("external");
|
|
432
433
|
|
|
433
434
|
// `createFakeNamespaceObject`'s "merge all properties" bit, the only one that
|
|
434
435
|
// changes which names the namespace it builds carries.
|
|
@@ -745,8 +746,7 @@ class RuntimeTemplate {
|
|
|
745
746
|
: undefined;
|
|
746
747
|
// A reassigned `__webpack_public_path__` cannot reach a baked literal, and `.p`
|
|
747
748
|
// belongs to a runtime, so only the runtimes it reaches keep the runtime form.
|
|
748
|
-
// `url-inline` is unaffected:
|
|
749
|
-
// the reassigned value at the call site rather than through the wrapper.
|
|
749
|
+
// `url-inline` is unaffected: it reads the value at the call site.
|
|
750
750
|
if (
|
|
751
751
|
form !== "url-inline" &&
|
|
752
752
|
APIPlugin.runtimeUsesPublicPathOverride(
|
|
@@ -774,12 +774,13 @@ class RuntimeTemplate {
|
|
|
774
774
|
return true;
|
|
775
775
|
}
|
|
776
776
|
|
|
777
|
-
// `url-inline` asks whether the file can be named at the call site
|
|
778
|
-
// its `.p + <file>` fallback spells that without `import.meta
|
|
779
|
-
// below does not rule it out
|
|
777
|
+
// `url-inline` asks only whether the file can be named at the call site, and
|
|
778
|
+
// its `.p + <file>` fallback spells that without `import.meta`, so the gate
|
|
779
|
+
// below does not rule it out.
|
|
780
|
+
|
|
780
781
|
// `environment.module` is deliberately not consulted: ESM output writes
|
|
781
|
-
// `import.meta` regardless
|
|
782
|
-
//
|
|
782
|
+
// `import.meta` regardless, so the url forms match what the rest of the
|
|
783
|
+
// bundle already assumes the target reads.
|
|
783
784
|
if (form === "url-inline") return true;
|
|
784
785
|
// `eval` devtool wraps each module in `eval(...)`, where `import.meta` is a
|
|
785
786
|
// syntax error. Runtime modules are emitted beside them, never wrapped.
|
|
@@ -830,6 +831,16 @@ class RuntimeTemplate {
|
|
|
830
831
|
return true;
|
|
831
832
|
}
|
|
832
833
|
|
|
834
|
+
/**
|
|
835
|
+
* Reports an analyzable-ESM bailout from outside this class.
|
|
836
|
+
* @param {Module | undefined} module the module the reference is emitted into
|
|
837
|
+
* @param {string} reason why no literal could be baked
|
|
838
|
+
* @returns {void}
|
|
839
|
+
*/
|
|
840
|
+
analyzableBailout(module, reason) {
|
|
841
|
+
this._analyzableBailout(module, reason, null);
|
|
842
|
+
}
|
|
843
|
+
|
|
833
844
|
/**
|
|
834
845
|
* Records why a reference kept the runtime form, on the module that wrote it —
|
|
835
846
|
* the channel `ModuleConcatenationPlugin` already reports through, so it reaches
|
|
@@ -1124,10 +1135,9 @@ class RuntimeTemplate {
|
|
|
1124
1135
|
const chunks = this._moduleChunks(module, chunkGraph);
|
|
1125
1136
|
const parts = this._resolvePublicPathPrefix(publicPath);
|
|
1126
1137
|
if (parts === null) return null;
|
|
1127
|
-
// A protocol-relative base names a host but no scheme, and the runtime reads
|
|
1128
|
-
// against the
|
|
1129
|
-
//
|
|
1130
|
-
// here. Nothing walks back to the output root first: the base replaces it.
|
|
1138
|
+
// A protocol-relative base names a host but no scheme, and the runtime reads
|
|
1139
|
+
// it against the very url this literal resolves against, so it may stay that
|
|
1140
|
+
// way. Nothing walks back to the output root: the base replaces it.
|
|
1131
1141
|
if (base.startsWith("//")) {
|
|
1132
1142
|
return this._specifierOf(
|
|
1133
1143
|
[["literal", base], ...rootedParts(parts), ["literal", filename]],
|
|
@@ -1192,10 +1202,9 @@ class RuntimeTemplate {
|
|
|
1192
1202
|
let base;
|
|
1193
1203
|
let found = false;
|
|
1194
1204
|
for (const chunk of this.compilation.chunks) {
|
|
1195
|
-
//
|
|
1196
|
-
//
|
|
1197
|
-
//
|
|
1198
|
-
// chunk already share the base it sets, however their descriptors differ.
|
|
1205
|
+
// A literal must agree with the one value `BaseUriRuntimeModule` writes, and
|
|
1206
|
+
// that reads the entry options off the chunk it is emitted into, so only a
|
|
1207
|
+
// chunk carrying a runtime has a say.
|
|
1199
1208
|
if (!chunk.hasRuntime()) continue;
|
|
1200
1209
|
const entryOptions = chunk.getEntryOptions();
|
|
1201
1210
|
// An entry this code cannot run under has no say in the base it resolves to.
|
|
@@ -1483,14 +1492,13 @@ class RuntimeTemplate {
|
|
|
1483
1492
|
}
|
|
1484
1493
|
if (!this.supportTemplateLiteral()) return this._es5Concatenation(args);
|
|
1485
1494
|
|
|
1486
|
-
// cost comparison between template literal and concatenation
|
|
1487
|
-
//
|
|
1488
|
-
//
|
|
1489
|
-
//
|
|
1490
|
-
//
|
|
1491
|
-
//
|
|
1492
|
-
//
|
|
1493
|
-
// e. g. `x${a}x${b}x${c}x` (3*3 = 9) is shorter than "x"+a+"x"+b+"x"+c+"x" (4+4+4 = 12)
|
|
1495
|
+
// WHY: cost comparison between a template literal and a concatenation, both
|
|
1496
|
+
// needing equal surroundings (`xxx` against "xxx"). A template literal costs
|
|
1497
|
+
// a constant 3 chars per expression; an es5 concatenation costs 3 + n chars
|
|
1498
|
+
// for n expressions in a row, and reduces by 3 where it ends with an
|
|
1499
|
+
// expression or starts with a single one. So `${a}${b}${c}` (3*3 = 9) is
|
|
1500
|
+
// longer than ""+a+b+c ((3+3)-3 = 3), while `x${a}x${b}x${c}x` (3*3 = 9) is
|
|
1501
|
+
// shorter than "x"+a+"x"+b+"x"+c+"x" (4+4+4 = 12).
|
|
1494
1502
|
|
|
1495
1503
|
let templateCost = 0;
|
|
1496
1504
|
let concatenationCost = 0;
|
|
@@ -1853,6 +1861,28 @@ class RuntimeTemplate {
|
|
|
1853
1861
|
return `${this.comment({ request })}${JSON.stringify(moduleId)}`;
|
|
1854
1862
|
}
|
|
1855
1863
|
|
|
1864
|
+
/**
|
|
1865
|
+
* The side-effect annotation for output another build reads back, which is the
|
|
1866
|
+
* only output it can pay for — elsewhere it is bytes with no consumer.
|
|
1867
|
+
* @returns {string} the annotation, or an empty string
|
|
1868
|
+
*/
|
|
1869
|
+
sideEffectsAnnotation() {
|
|
1870
|
+
return this.outputOptions.module ? "/*#__PURE__*/" : "";
|
|
1871
|
+
}
|
|
1872
|
+
|
|
1873
|
+
/**
|
|
1874
|
+
* A module instantiation's side-effect annotation. Write it only where the
|
|
1875
|
+
* statement ends the call: a minifier reads `f(id)(x)` as one and drops it.
|
|
1876
|
+
* @param {Module} module the instantiated module
|
|
1877
|
+
* @param {ModuleGraph} moduleGraph the module graph
|
|
1878
|
+
* @returns {string} the annotation, or an empty string when it may have side effects
|
|
1879
|
+
*/
|
|
1880
|
+
moduleSideEffectsAnnotation(module, moduleGraph) {
|
|
1881
|
+
return module.getSideEffectsConnectionState(moduleGraph) === false
|
|
1882
|
+
? this.sideEffectsAnnotation()
|
|
1883
|
+
: "";
|
|
1884
|
+
}
|
|
1885
|
+
|
|
1856
1886
|
/**
|
|
1857
1887
|
* Returns the expression.
|
|
1858
1888
|
* @param {object} options options object
|
|
@@ -2080,8 +2110,8 @@ class RuntimeTemplate {
|
|
|
2080
2110
|
const exportsType = module.getExportsType(chunkGraph.moduleGraph, strict);
|
|
2081
2111
|
|
|
2082
2112
|
const isModuleDeferred =
|
|
2083
|
-
(dependency
|
|
2084
|
-
dependency
|
|
2113
|
+
(isDependencyKind(dependency, "esm-import") ||
|
|
2114
|
+
isDependencyKind(dependency, "dynamic-import")) &&
|
|
2085
2115
|
ImportPhaseUtils.isDefer(dependency.phase) &&
|
|
2086
2116
|
!(/** @type {BuildMeta} */ (module.buildMeta).async);
|
|
2087
2117
|
|
|
@@ -2353,10 +2383,9 @@ class RuntimeTemplate {
|
|
|
2353
2383
|
request,
|
|
2354
2384
|
weak
|
|
2355
2385
|
});
|
|
2356
|
-
//
|
|
2357
|
-
//
|
|
2358
|
-
//
|
|
2359
|
-
// block-scoped (`let`/`const`).
|
|
2386
|
+
// A harmony import may sit inside a runtime-condition `if` block yet be
|
|
2387
|
+
// referenced outside it, so it stays function-scoped with `var` rather than
|
|
2388
|
+
// block-scoped.
|
|
2360
2389
|
const optDeclaration = update ? "" : "var ";
|
|
2361
2390
|
|
|
2362
2391
|
const exportsType = module.getExportsType(
|
|
@@ -2370,8 +2399,9 @@ class RuntimeTemplate {
|
|
|
2370
2399
|
let importContent;
|
|
2371
2400
|
|
|
2372
2401
|
const isModuleDeferred =
|
|
2373
|
-
|
|
2374
|
-
|
|
2402
|
+
dependency !== undefined &&
|
|
2403
|
+
(isDependencyKind(dependency, "esm-import") ||
|
|
2404
|
+
isDependencyKind(dependency, "dynamic-import")) &&
|
|
2375
2405
|
ImportPhaseUtils.isDefer(dependency.phase) &&
|
|
2376
2406
|
!isAsyncExternal(module);
|
|
2377
2407
|
|
|
@@ -2382,7 +2412,7 @@ class RuntimeTemplate {
|
|
|
2382
2412
|
// would deadlock; forcing the namespace throws instead.
|
|
2383
2413
|
outgoingAsyncModules.delete(originModule);
|
|
2384
2414
|
|
|
2385
|
-
importContent = `/* deferred harmony import */ ${optDeclaration}${importVar} = ${getOptimizedDeferredModule(
|
|
2415
|
+
importContent = `/* deferred harmony import */ ${optDeclaration}${importVar} = ${this.sideEffectsAnnotation()}${getOptimizedDeferredModule(
|
|
2386
2416
|
moduleId,
|
|
2387
2417
|
exportsType,
|
|
2388
2418
|
Array.from(outgoingAsyncModules, (mod) => chunkGraph.getModuleId(mod)),
|
|
@@ -2395,7 +2425,10 @@ class RuntimeTemplate {
|
|
|
2395
2425
|
|
|
2396
2426
|
return [importContent, ""];
|
|
2397
2427
|
}
|
|
2398
|
-
importContent = `/* harmony import */ ${optDeclaration}${importVar} = ${
|
|
2428
|
+
importContent = `/* harmony import */ ${optDeclaration}${importVar} = ${this.moduleSideEffectsAnnotation(
|
|
2429
|
+
module,
|
|
2430
|
+
moduleGraph
|
|
2431
|
+
)}${RuntimeGlobals.require}(${moduleId});\n`;
|
|
2399
2432
|
|
|
2400
2433
|
if (exportsType === "dynamic") {
|
|
2401
2434
|
runtimeRequirements.add(RuntimeGlobals.compatGetDefaultExport);
|
|
@@ -2462,8 +2495,8 @@ class RuntimeTemplate {
|
|
|
2462
2495
|
);
|
|
2463
2496
|
|
|
2464
2497
|
const isModuleDeferred =
|
|
2465
|
-
(dependency
|
|
2466
|
-
dependency
|
|
2498
|
+
(isDependencyKind(dependency, "esm-import") ||
|
|
2499
|
+
isDependencyKind(dependency, "dynamic-import")) &&
|
|
2467
2500
|
ImportPhaseUtils.isDefer(dependency.phase) &&
|
|
2468
2501
|
!isAsyncExternal(module);
|
|
2469
2502
|
|
|
@@ -2480,7 +2513,7 @@ class RuntimeTemplate {
|
|
|
2480
2513
|
);
|
|
2481
2514
|
return `${comment} undefined`;
|
|
2482
2515
|
}
|
|
2483
|
-
if (used
|
|
2516
|
+
if (isInlinedUsedName(used)) {
|
|
2484
2517
|
throw new Error(
|
|
2485
2518
|
"Can't inline the exports of defer imported module"
|
|
2486
2519
|
);
|
|
@@ -2495,10 +2528,8 @@ class RuntimeTemplate {
|
|
|
2495
2528
|
}
|
|
2496
2529
|
// accessing the .default property is same thing as `require()` the module.
|
|
2497
2530
|
|
|
2498
|
-
//
|
|
2499
|
-
//
|
|
2500
|
-
// is translated to
|
|
2501
|
-
// var mod = require("cjs"); mod.x;
|
|
2531
|
+
// So `import mod from "cjs"; mod.default.x` translates to
|
|
2532
|
+
// `var mod = require("cjs"); mod.x`.
|
|
2502
2533
|
switch (exportsType) {
|
|
2503
2534
|
case "dynamic":
|
|
2504
2535
|
if (isCall) {
|
|
@@ -2538,10 +2569,9 @@ class RuntimeTemplate {
|
|
|
2538
2569
|
exportsType === "default-only" ||
|
|
2539
2570
|
exportsType === "default-with-named"
|
|
2540
2571
|
) {
|
|
2541
|
-
//
|
|
2542
|
-
//
|
|
2543
|
-
//
|
|
2544
|
-
// we will need to createFakeNamespaceObject that simulates ES Module namespace object
|
|
2572
|
+
// `exportName.length` is 0, so the namespace object is used in an unknown
|
|
2573
|
+
// way — `import * as ns from "cjs"; console.log(ns)` — and needs
|
|
2574
|
+
// `createFakeNamespaceObject` to simulate an ES module namespace.
|
|
2545
2575
|
runtimeRequirements.add(RuntimeGlobals.createFakeNamespaceObject);
|
|
2546
2576
|
initFragments.push(
|
|
2547
2577
|
new InitFragment(
|
|
@@ -2592,7 +2622,7 @@ class RuntimeTemplate {
|
|
|
2592
2622
|
);
|
|
2593
2623
|
return `${comment} undefined`;
|
|
2594
2624
|
}
|
|
2595
|
-
if (used
|
|
2625
|
+
if (isInlinedUsedName(used)) {
|
|
2596
2626
|
return used.render(
|
|
2597
2627
|
Template.toNormalComment(
|
|
2598
2628
|
`inlined export ${propertyAccess(exportName)}`
|
|
@@ -2709,7 +2739,7 @@ class RuntimeTemplate {
|
|
|
2709
2739
|
if (exportInfo.provided === false) continue;
|
|
2710
2740
|
const used = exportsInfo.getUsedName([exportInfo.name], runtime);
|
|
2711
2741
|
if (!used) continue;
|
|
2712
|
-
if (used
|
|
2742
|
+
if (isInlinedUsedName(used)) {
|
|
2713
2743
|
// An inlined export isn't reachable by name on the raw exports object,
|
|
2714
2744
|
// so the decoupled object must expose the inlined value directly.
|
|
2715
2745
|
mangled = true;
|
|
@@ -3443,9 +3473,8 @@ class RuntimeTemplate {
|
|
|
3443
3473
|
// emitted and filled in once the hash exists.
|
|
3444
3474
|
const deferred = template === undefined || HASH_IN_FILENAME.test(template);
|
|
3445
3475
|
// An id names the chunk in the stand-in, and one nothing could resolve would
|
|
3446
|
-
// reach the bundle verbatim. The whole name is re-resolved later
|
|
3447
|
-
//
|
|
3448
|
-
// One of the two always names where the reference goes.
|
|
3476
|
+
// reach the bundle verbatim. The whole name is re-resolved later, so any hash
|
|
3477
|
+
// spelling is fine here; one of the two always names the destination.
|
|
3449
3478
|
const chunks =
|
|
3450
3479
|
consumingChunks ||
|
|
3451
3480
|
this._moduleChunks(/** @type {Module} */ (consumingModule), chunkGraph);
|
|
@@ -3658,7 +3687,7 @@ class RuntimeTemplate {
|
|
|
3658
3687
|
/**
|
|
3659
3688
|
* A path built by a function, resolved to the value it will have — or `null` when
|
|
3660
3689
|
* it moves with the compilation hash, which code generation does not know.
|
|
3661
|
-
* @param {import("./TemplatedPathPlugin").TemplatePathFn
|
|
3690
|
+
* @param {import("./TemplatedPathPlugin").TemplatePathFn} fn the function
|
|
3662
3691
|
* @param {string | undefined} value its answer to the first probe, or `undefined`
|
|
3663
3692
|
* when it answered nothing
|
|
3664
3693
|
* @returns {string | null} the settled value, or `null` when it is hash-dependent
|
|
@@ -4272,6 +4301,49 @@ class RuntimeTemplate {
|
|
|
4272
4301
|
return this.returningFunction(factory);
|
|
4273
4302
|
}
|
|
4274
4303
|
|
|
4304
|
+
/**
|
|
4305
|
+
* @param {object} options options
|
|
4306
|
+
* @param {Module} options.module the module the body belongs to
|
|
4307
|
+
* @param {boolean} options.needModule whether the body reads `module`
|
|
4308
|
+
* @param {boolean} options.needExports whether the body reads `exports`
|
|
4309
|
+
* @param {boolean} options.needRequire whether the body reads `__webpack_require__`
|
|
4310
|
+
* @param {boolean} options.needThisAsExports whether the body reads `this` as exports
|
|
4311
|
+
* @param {boolean=} options.shorthand render as a method shorthand, without the `function` keyword
|
|
4312
|
+
* @returns {string} the header, ending with the opening brace
|
|
4313
|
+
*/
|
|
4314
|
+
moduleFactoryFnHeader({
|
|
4315
|
+
module,
|
|
4316
|
+
needModule,
|
|
4317
|
+
needExports,
|
|
4318
|
+
needRequire,
|
|
4319
|
+
needThisAsExports,
|
|
4320
|
+
shorthand = false
|
|
4321
|
+
}) {
|
|
4322
|
+
/** @type {string[]} */
|
|
4323
|
+
const args = [];
|
|
4324
|
+
if (needExports || needRequire || needModule) {
|
|
4325
|
+
args.push(
|
|
4326
|
+
needModule
|
|
4327
|
+
? module.moduleArgument
|
|
4328
|
+
: `__unused_webpack_${module.moduleArgument}`
|
|
4329
|
+
);
|
|
4330
|
+
}
|
|
4331
|
+
if (needExports || needRequire) {
|
|
4332
|
+
args.push(
|
|
4333
|
+
needExports
|
|
4334
|
+
? module.exportsArgument
|
|
4335
|
+
: `__unused_webpack_${module.exportsArgument}`
|
|
4336
|
+
);
|
|
4337
|
+
}
|
|
4338
|
+
if (needRequire) args.push(RuntimeGlobals.require);
|
|
4339
|
+
const parameters = args.join(", ");
|
|
4340
|
+
if (shorthand) return `(${parameters}) {`;
|
|
4341
|
+
if (!needThisAsExports && this.supportsArrowFunction()) {
|
|
4342
|
+
return `(${parameters}) => {`;
|
|
4343
|
+
}
|
|
4344
|
+
return `function(${parameters}) {`;
|
|
4345
|
+
}
|
|
4346
|
+
|
|
4275
4347
|
/**
|
|
4276
4348
|
* Define es module flag statement.
|
|
4277
4349
|
* @param {object} options options
|
|
@@ -4355,11 +4427,9 @@ class RuntimeTemplate {
|
|
|
4355
4427
|
compilation.hooks.processAssets.tapPromise(
|
|
4356
4428
|
{
|
|
4357
4429
|
name: PASS_NAME,
|
|
4358
|
-
// Before source maps are written and before a minifier runs
|
|
4359
|
-
// the asset
|
|
4360
|
-
// Every hash it reads is
|
|
4361
|
-
// every `processAssets` stage — and `RealContentHashPlugin` still repairs
|
|
4362
|
-
// the names afterwards.
|
|
4430
|
+
// Before source maps are written and before a minifier runs, since both
|
|
4431
|
+
// read the asset and a stand-in differs in length from what replaces it.
|
|
4432
|
+
// Every hash it reads is settled: `createHash` precedes every stage.
|
|
4363
4433
|
stage: getCompilation().PROCESS_ASSETS_STAGE_DERIVED
|
|
4364
4434
|
},
|
|
4365
4435
|
async () => {
|
|
@@ -4585,7 +4655,7 @@ class RuntimeTemplate {
|
|
|
4585
4655
|
* @returns {SpecifierPart[] | null} what it resolves to, or `null` if unreadable
|
|
4586
4656
|
*/
|
|
4587
4657
|
static _readAnalyzableSpecifier(payload) {
|
|
4588
|
-
/** @type {
|
|
4658
|
+
/** @type {JsonValue} */
|
|
4589
4659
|
let decoded;
|
|
4590
4660
|
try {
|
|
4591
4661
|
decoded = JSON.parse(
|
|
@@ -4600,17 +4670,19 @@ class RuntimeTemplate {
|
|
|
4600
4670
|
if (!Array.isArray(decoded)) return null;
|
|
4601
4671
|
for (const part of decoded) {
|
|
4602
4672
|
if (!Array.isArray(part) || part.length !== 2) return null;
|
|
4603
|
-
if (!SPECIFIER_PART_KINDS.has(part[0]))
|
|
4673
|
+
if (!SPECIFIER_PART_KINDS.has(/** @type {string} */ (part[0]))) {
|
|
4674
|
+
return null;
|
|
4675
|
+
}
|
|
4604
4676
|
// Only a chunk id may be a number; the rest are read as text.
|
|
4605
4677
|
if (
|
|
4606
4678
|
typeof part[1] !== "string" &&
|
|
4607
|
-
(!CHUNK_SPECIFIER_PART_KINDS.has(part[0]) ||
|
|
4679
|
+
(!CHUNK_SPECIFIER_PART_KINDS.has(/** @type {string} */ (part[0])) ||
|
|
4608
4680
|
typeof part[1] !== "number")
|
|
4609
4681
|
) {
|
|
4610
4682
|
return null;
|
|
4611
4683
|
}
|
|
4612
4684
|
}
|
|
4613
|
-
return decoded;
|
|
4685
|
+
return /** @type {SpecifierPart[]} */ (decoded);
|
|
4614
4686
|
}
|
|
4615
4687
|
}
|
|
4616
4688
|
|
|
@@ -6,30 +6,32 @@
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
const { ConcatSource, PrefixSource } = require("webpack-sources");
|
|
9
|
-
const {
|
|
10
|
-
|
|
9
|
+
const {
|
|
10
|
+
WEBPACK_MODULE_TYPE_RUNTIME
|
|
11
|
+
} = require("../module/ModuleTypeConstants");
|
|
12
|
+
const RuntimeGlobals = require("../runtime/RuntimeGlobals");
|
|
11
13
|
|
|
12
14
|
/** @import { Source } from "webpack-sources" */
|
|
13
15
|
/**
|
|
14
16
|
* @import {
|
|
15
17
|
* OutputNormalizedWithDefaults as OutputOptions
|
|
16
|
-
* } from "
|
|
18
|
+
* } from "../config/defaults"
|
|
17
19
|
*/
|
|
18
|
-
/** @import Chunk from "
|
|
19
|
-
/** @import ChunkGraph, { ModuleId } from "
|
|
20
|
-
/** @import CodeGenerationResults from "
|
|
21
|
-
/** @import { AssetInfo, PathData } from "
|
|
20
|
+
/** @import Chunk from "../graph/Chunk" */
|
|
21
|
+
/** @import ChunkGraph, { ModuleId } from "../graph/ChunkGraph" */
|
|
22
|
+
/** @import CodeGenerationResults from "../module/CodeGenerationResults" */
|
|
23
|
+
/** @import { AssetInfo, PathData } from "../Compilation" */
|
|
22
24
|
/** @import DependencyTemplates from "./DependencyTemplates" */
|
|
23
|
-
/** @import Module from "
|
|
24
|
-
/** @import ModuleGraph from "
|
|
25
|
+
/** @import Module from "../module/Module" */
|
|
26
|
+
/** @import ModuleGraph from "../graph/ModuleGraph" */
|
|
25
27
|
/** @import ModuleTemplate from "./ModuleTemplate" */
|
|
26
|
-
/** @import RuntimeModule from "
|
|
28
|
+
/** @import RuntimeModule from "../runtime/RuntimeModule" */
|
|
27
29
|
/** @import RuntimeTemplate from "./RuntimeTemplate" */
|
|
28
30
|
/**
|
|
29
31
|
* @import {
|
|
30
32
|
* ChunkRenderContext,
|
|
31
33
|
* RenderContext
|
|
32
|
-
* } from "
|
|
34
|
+
* } from "../javascript/JavascriptModulesPlugin"
|
|
33
35
|
*/
|
|
34
36
|
|
|
35
37
|
const START_LOWERCASE_ALPHABET_CODE = "a".charCodeAt(0);
|