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.
Files changed (781) hide show
  1. package/README.md +1 -1
  2. package/lib/Chunk.js +3 -966
  3. package/lib/Compilation.js +237 -138
  4. package/lib/Compiler.js +23 -24
  5. package/lib/Dependency.js +3 -551
  6. package/lib/DependencyTemplate.js +3 -69
  7. package/lib/EntryPlugin.js +3 -68
  8. package/lib/Entrypoint.js +3 -121
  9. package/lib/ExternalsPlugin.js +3 -92
  10. package/lib/FileSystemInfo.js +3 -4629
  11. package/lib/InitFragment.js +3 -204
  12. package/lib/LibraryTemplatePlugin.js +3 -46
  13. package/lib/ModuleFilenameHelpers.js +3 -400
  14. package/lib/ModuleNotFoundError.js +2 -2
  15. package/lib/MultiCompiler.js +43 -24
  16. package/lib/NormalModule.js +3 -2190
  17. package/lib/NullFactory.js +3 -22
  18. package/lib/ProgressPlugin.js +3 -908
  19. package/lib/RawModule.js +3 -197
  20. package/lib/RequestShortener.js +3 -37
  21. package/lib/SingleEntryPlugin.js +1 -1
  22. package/lib/WebpackError.js +2 -2
  23. package/lib/asset/AssetBytesGenerator.js +15 -9
  24. package/lib/asset/AssetBytesParser.js +3 -3
  25. package/lib/asset/AssetGenerator.js +61 -38
  26. package/lib/asset/AssetModule.js +2 -2
  27. package/lib/asset/AssetModulesPlugin.js +6 -9
  28. package/lib/asset/AssetParser.js +3 -3
  29. package/lib/asset/AssetSourceGenerator.js +15 -9
  30. package/lib/asset/AssetSourceParser.js +3 -3
  31. package/lib/asset/RawDataUrlModule.js +17 -10
  32. package/lib/asset/WebManifestGenerator.js +7 -7
  33. package/lib/asset/WebManifestParser.js +5 -5
  34. package/lib/async-modules/AsyncModuleHelpers.js +6 -5
  35. package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -4
  36. package/lib/async-modules/InferAsyncModulesPlugin.js +4 -3
  37. package/lib/async-modules/isGeneratorLowered.js +3 -3
  38. package/lib/bun/BunTargetPlugin.js +1 -1
  39. package/lib/cache/AddBuildDependenciesPlugin.js +2 -19
  40. package/lib/{Cache.js → cache/Cache.js} +1 -1
  41. package/lib/{CacheFacade.js → cache/CacheFacade.js} +5 -5
  42. package/lib/cache/IdleFileCachePlugin.js +2 -2
  43. package/lib/cache/MemoryCachePlugin.js +6 -6
  44. package/lib/cache/MemoryWithGcCachePlugin.js +9 -10
  45. package/lib/cache/PackFileCacheStrategy.js +11 -28
  46. package/lib/cache/ResolverCachePlugin.js +8 -4
  47. package/lib/cache/getLazyHashedEtag.js +3 -5
  48. package/lib/cache/mergeEtags.js +1 -1
  49. package/lib/{OptionsApply.js → config/OptionsApply.js} +3 -3
  50. package/lib/{PlatformPlugin.js → config/PlatformPlugin.js} +2 -2
  51. package/lib/{WebpackOptionsApply.js → config/WebpackOptionsApply.js} +217 -200
  52. package/lib/{WebpackOptionsDefaulter.js → config/WebpackOptionsDefaulter.js} +3 -3
  53. package/lib/config/browserslistTargetHandler.js +3 -9
  54. package/lib/{cli.js → config/cli.js} +5 -158
  55. package/lib/config/defaults.js +192 -122
  56. package/lib/config/getClaimedAssetTypes.js +28 -21
  57. package/lib/config/normalization.js +18 -7
  58. package/lib/config/target.js +13 -4
  59. package/lib/container/ContainerEntryDependency.js +1 -1
  60. package/lib/container/ContainerEntryModule.js +13 -11
  61. package/lib/container/ContainerEntryModuleFactory.js +2 -2
  62. package/lib/container/ContainerExposedDependency.js +1 -1
  63. package/lib/container/ContainerPlugin.js +178 -5
  64. package/lib/container/ContainerReferencePlugin.js +75 -14
  65. package/lib/container/FallbackDependency.js +1 -1
  66. package/lib/container/FallbackItemDependency.js +1 -1
  67. package/lib/container/FallbackModule.js +12 -10
  68. package/lib/container/FallbackModuleFactory.js +2 -2
  69. package/lib/container/HoistContainerReferencesPlugin.js +10 -11
  70. package/lib/container/ModuleFederationPlugin.js +306 -7
  71. package/lib/container/RemoteModule.js +14 -10
  72. package/lib/container/RemoteRuntimeModule.js +5 -5
  73. package/lib/container/RemoteToExternalDependency.js +1 -1
  74. package/lib/container/moduleFederationHooks.js +1 -1
  75. package/lib/{ContextExclusionPlugin.js → context/ContextExclusionPlugin.js} +1 -1
  76. package/lib/{ContextModule.js → context/ContextModule.js} +50 -36
  77. package/lib/{ContextModuleFactory.js → context/ContextModuleFactory.js} +25 -24
  78. package/lib/{ContextReplacementPlugin.js → context/ContextReplacementPlugin.js} +4 -4
  79. package/lib/css/CssGenerator.js +57 -42
  80. package/lib/css/CssInjectStyleRuntimeModule.js +36 -30
  81. package/lib/css/CssLoadingRuntimeModule.js +77 -44
  82. package/lib/css/CssModule.js +27 -29
  83. package/lib/css/CssModulesPlugin.js +128 -44
  84. package/lib/css/CssParser.js +700 -311
  85. package/lib/css/CssServerStylesRuntimeModule.js +3 -3
  86. package/lib/css/cssMinify.js +130 -54
  87. package/lib/css/data.js +7017 -4648
  88. package/lib/css/syntax-parser.js +19873 -0
  89. package/lib/css/syntax-printer.js +6037 -0
  90. package/lib/css/syntax.js +37 -17370
  91. package/lib/debug/ProfilingPlugin.js +55 -23
  92. package/lib/{DefinePlugin.js → define/DefinePlugin.js} +407 -41
  93. package/lib/{DotenvPlugin.js → define/DotenvPlugin.js} +25 -29
  94. package/lib/{EnvironmentPlugin.js → define/EnvironmentPlugin.js} +2 -2
  95. package/lib/deno/DenoTargetPlugin.js +1 -1
  96. package/lib/dependencies/ConstDependency.js +3 -120
  97. package/lib/dependencies/ContextElementDependency.js +5 -172
  98. package/lib/dependencies/NullDependency.js +3 -37
  99. package/lib/dependencies/{AMDDefineDependency.js → amd/AMDDefineDependency.js} +12 -11
  100. package/lib/dependencies/{AMDDefineDependencyParserPlugin.js → amd/AMDDefineDependencyParserPlugin.js} +10 -10
  101. package/lib/dependencies/{AMDPlugin.js → amd/AMDPlugin.js} +11 -11
  102. package/lib/dependencies/{AMDRequireArrayDependency.js → amd/AMDRequireArrayDependency.js} +15 -13
  103. package/lib/dependencies/{AMDRequireContextDependency.js → amd/AMDRequireContextDependency.js} +11 -10
  104. package/lib/dependencies/{AMDRequireDependenciesBlock.js → amd/AMDRequireDependenciesBlock.js} +7 -6
  105. package/lib/dependencies/{AMDRequireDependenciesBlockParserPlugin.js → amd/AMDRequireDependenciesBlockParserPlugin.js} +10 -10
  106. package/lib/dependencies/{AMDRequireDependency.js → amd/AMDRequireDependency.js} +13 -12
  107. package/lib/dependencies/{AMDRequireItemDependency.js → amd/AMDRequireItemDependency.js} +8 -7
  108. package/lib/dependencies/{AMDRuntimeModules.js → amd/AMDRuntimeModules.js} +3 -3
  109. package/lib/dependencies/{LocalModule.js → amd/LocalModule.js} +8 -4
  110. package/lib/dependencies/{LocalModuleDependency.js → amd/LocalModuleDependency.js} +17 -10
  111. package/lib/dependencies/{LocalModulesHelpers.js → amd/LocalModulesHelpers.js} +1 -1
  112. package/lib/dependencies/{RequireJsStuffPlugin.js → amd/RequireJsStuffPlugin.js} +9 -9
  113. package/lib/dependencies/{UnsupportedDependency.js → amd/UnsupportedDependency.js} +11 -10
  114. package/lib/dependencies/{CommonJsDependencyHelpers.js → commonjs/CommonJsDependencyHelpers.js} +8 -9
  115. package/lib/dependencies/{CommonJsExportRequireDependency.js → commonjs/CommonJsExportRequireDependency.js} +176 -44
  116. package/lib/dependencies/{CommonJsExportsDependency.js → commonjs/CommonJsExportsDependency.js} +15 -14
  117. package/lib/dependencies/{CommonJsExportsParserPlugin.js → commonjs/CommonJsExportsParserPlugin.js} +138 -61
  118. package/lib/dependencies/{CommonJsFullRequireDependency.js → commonjs/CommonJsFullRequireDependency.js} +32 -24
  119. package/lib/dependencies/{CommonJsImportsParserPlugin.js → commonjs/CommonJsImportsParserPlugin.js} +39 -35
  120. package/lib/dependencies/{CommonJsObjectExportDependency.js → commonjs/CommonJsObjectExportDependency.js} +13 -12
  121. package/lib/dependencies/{CommonJsPlugin.js → commonjs/CommonJsPlugin.js} +47 -35
  122. package/lib/dependencies/{CommonJsRequireContextDependency.js → commonjs/CommonJsRequireContextDependency.js} +15 -14
  123. package/lib/dependencies/{CommonJsRequireDependency.js → commonjs/CommonJsRequireDependency.js} +33 -25
  124. package/lib/dependencies/{CommonJsSelfReferenceDependency.js → commonjs/CommonJsSelfReferenceDependency.js} +19 -20
  125. package/lib/dependencies/{ModuleDecoratorDependency.js → commonjs/ModuleDecoratorDependency.js} +16 -15
  126. package/lib/dependencies/{RequireEnsureDependenciesBlock.js → commonjs/RequireEnsureDependenciesBlock.js} +8 -7
  127. package/lib/dependencies/{RequireEnsureDependenciesBlockParserPlugin.js → commonjs/RequireEnsureDependenciesBlockParserPlugin.js} +5 -5
  128. package/lib/dependencies/{RequireEnsureDependency.js → commonjs/RequireEnsureDependency.js} +13 -12
  129. package/lib/dependencies/{RequireEnsureItemDependency.js → commonjs/RequireEnsureItemDependency.js} +7 -6
  130. package/lib/dependencies/{RequireEnsurePlugin.js → commonjs/RequireEnsurePlugin.js} +8 -8
  131. package/lib/dependencies/{RequireHeaderDependency.js → commonjs/RequireHeaderDependency.js} +14 -13
  132. package/lib/dependencies/{RequireIncludeDependency.js → commonjs/RequireIncludeDependency.js} +13 -12
  133. package/lib/dependencies/{RequireIncludeDependencyParserPlugin.js → commonjs/RequireIncludeDependencyParserPlugin.js} +3 -27
  134. package/lib/dependencies/{RequireIncludePlugin.js → commonjs/RequireIncludePlugin.js} +4 -4
  135. package/lib/dependencies/{RequireResolveContextDependency.js → commonjs/RequireResolveContextDependency.js} +11 -10
  136. package/lib/dependencies/{RequireResolveDependency.js → commonjs/RequireResolveDependency.js} +12 -11
  137. package/lib/dependencies/{RequireResolveHeaderDependency.js → commonjs/RequireResolveHeaderDependency.js} +13 -12
  138. package/lib/dependencies/commonjs/TopLevelThisParserPlugin.js +59 -0
  139. package/lib/dependencies/{ContextDependency.js → context/ContextDependency.js} +15 -14
  140. package/lib/dependencies/{ContextDependencyHelpers.js → context/ContextDependencyHelpers.js} +34 -18
  141. package/lib/dependencies/{ContextDependencyTemplateAsId.js → context/ContextDependencyTemplateAsId.js} +3 -3
  142. package/lib/dependencies/{ContextDependencyTemplateAsRequireCall.js → context/ContextDependencyTemplateAsRequireCall.js} +3 -3
  143. package/lib/dependencies/context/ContextElementDependency.js +198 -0
  144. package/lib/dependencies/{ImportMetaContextDependency.js → context/ImportMetaContextDependency.js} +7 -6
  145. package/lib/dependencies/{ImportMetaContextDependencyParserPlugin.js → context/ImportMetaContextDependencyParserPlugin.js} +9 -9
  146. package/lib/dependencies/{ImportMetaContextPlugin.js → context/ImportMetaContextPlugin.js} +5 -5
  147. package/lib/dependencies/{ImportMetaGlobDependency.js → context/ImportMetaGlobDependency.js} +7 -6
  148. package/lib/dependencies/{ImportMetaGlobDependencyParserPlugin.js → context/ImportMetaGlobDependencyParserPlugin.js} +4 -4
  149. package/lib/dependencies/{ImportMetaGlobHelpers.js → context/ImportMetaGlobHelpers.js} +9 -9
  150. package/lib/dependencies/{RequireContextDependency.js → context/RequireContextDependency.js} +7 -6
  151. package/lib/dependencies/{RequireContextDependencyParserPlugin.js → context/RequireContextDependencyParserPlugin.js} +2 -2
  152. package/lib/dependencies/{RequireContextPlugin.js → context/RequireContextPlugin.js} +5 -5
  153. package/lib/dependencies/{CachedConstDependency.js → core/CachedConstDependency.js} +12 -11
  154. package/lib/dependencies/core/ConstDependency.js +131 -0
  155. package/lib/dependencies/{ImportPhase.js → core/ImportPhase.js} +5 -4
  156. package/lib/dependencies/{ModuleDependency.js → core/ModuleDependency.js} +10 -7
  157. package/lib/dependencies/{ModuleDependencyTemplateAsId.js → core/ModuleDependencyTemplateAsId.js} +3 -3
  158. package/lib/dependencies/{ModuleDependencyTemplateAsRequireId.js → core/ModuleDependencyTemplateAsRequireId.js} +2 -2
  159. package/lib/dependencies/{ModuleInitFragmentDependency.js → core/ModuleInitFragmentDependency.js} +10 -9
  160. package/lib/dependencies/core/NullDependency.js +44 -0
  161. package/lib/dependencies/{RuntimeRequirementsDependency.js → core/RuntimeRequirementsDependency.js} +10 -9
  162. package/lib/dependencies/{StaticExportsDependency.js → core/StaticExportsDependency.js} +15 -8
  163. package/lib/dependencies/{CssIcssExportDependency.js → css/CssIcssExportDependency.js} +375 -100
  164. package/lib/dependencies/{CssIcssImportDependency.js → css/CssIcssImportDependency.js} +26 -22
  165. package/lib/dependencies/{CssIcssSymbolDependency.js → css/CssIcssSymbolDependency.js} +13 -12
  166. package/lib/dependencies/{CssImportDependency.js → css/CssImportDependency.js} +15 -11
  167. package/lib/dependencies/{CssUrlDependency.js → css/CssUrlDependency.js} +26 -21
  168. package/lib/dependencies/{CreateRequireParserPlugin.js → esm/CreateRequireParserPlugin.js} +9 -9
  169. package/lib/dependencies/{HarmonyAcceptDependency.js → esm/ESMAcceptDependency.js} +41 -38
  170. package/lib/dependencies/esm/ESMAcceptImportDependency.js +39 -0
  171. package/lib/dependencies/{HarmonyCompatibilityDependency.js → esm/ESMCompatibilityDependency.js} +40 -41
  172. package/lib/dependencies/{HarmonyDetectionParserPlugin.js → esm/ESMDetectionParserPlugin.js} +22 -21
  173. package/lib/dependencies/{HarmonyEvaluatedImportSpecifierDependency.js → esm/ESMEvaluatedImportSpecifierDependency.js} +33 -30
  174. package/lib/dependencies/{HarmonyExportDependencyParserPlugin.js → esm/ESMExportDependencyParserPlugin.js} +62 -93
  175. package/lib/dependencies/{HarmonyExportExpressionDependency.js → esm/ESMExportExpressionDependency.js} +83 -49
  176. package/lib/dependencies/{HarmonyExportHeaderDependency.js → esm/ESMExportHeaderDependency.js} +17 -15
  177. package/lib/dependencies/esm/ESMExportImportedSideEffectDependency.js +37 -0
  178. package/lib/dependencies/{HarmonyExportImportedSpecifierDependency.js → esm/ESMExportImportedSpecifierDependency.js} +136 -122
  179. package/lib/dependencies/{HarmonyExportInitFragment.js → esm/ESMExportInitFragment.js} +68 -43
  180. package/lib/dependencies/{HarmonyExportSpecifierDependency.js → esm/ESMExportSpecifierDependency.js} +68 -65
  181. package/lib/dependencies/{HarmonyExports.js → esm/ESMExports.js} +4 -4
  182. package/lib/dependencies/{HarmonyImportBareSideEffectDependency.js → esm/ESMImportBareSideEffectDependency.js} +21 -13
  183. package/lib/dependencies/{HarmonyImportDependency.js → esm/ESMImportDependency.js} +74 -71
  184. package/lib/dependencies/{HarmonyImportDependencyParserPlugin.js → esm/ESMImportDependencyParserPlugin.js} +199 -97
  185. package/lib/dependencies/{HarmonyImportGuard.js → esm/ESMImportGuard.js} +26 -29
  186. package/lib/dependencies/{HarmonyImportSideEffectDependency.js → esm/ESMImportSideEffectDependency.js} +86 -43
  187. package/lib/dependencies/{HarmonyImportSpecifierDependency.js → esm/ESMImportSpecifierDependency.js} +110 -61
  188. package/lib/dependencies/esm/ESMModulesPlugin.js +207 -0
  189. package/lib/dependencies/{HarmonyTopLevelThisParserPlugin.js → esm/ESMTopLevelThisParserPlugin.js} +7 -7
  190. package/lib/dependencies/{TopLevelAwaitDependency.js → esm/TopLevelAwaitDependency.js} +12 -11
  191. package/lib/dependencies/{DynamicExports.js → helpers/DynamicExports.js} +2 -2
  192. package/lib/{util → dependencies/helpers}/chainedImports.js +8 -9
  193. package/lib/dependencies/{processExportInfo.js → helpers/processExportInfo.js} +4 -4
  194. package/lib/{util → dependencies/helpers}/traverseDestructuringAssignmentProperties.js +1 -1
  195. package/lib/dependencies/{ImportMetaHotAcceptDependency.js → hmr/ImportMetaHotAcceptDependency.js} +8 -7
  196. package/lib/dependencies/{ImportMetaHotDeclineDependency.js → hmr/ImportMetaHotDeclineDependency.js} +8 -7
  197. package/lib/dependencies/{ModuleHotAcceptDependency.js → hmr/ModuleHotAcceptDependency.js} +8 -7
  198. package/lib/dependencies/{ModuleHotDeclineDependency.js → hmr/ModuleHotDeclineDependency.js} +8 -7
  199. package/lib/dependencies/{HtmlEntryDependency.js → html/HtmlEntryDependency.js} +125 -243
  200. package/lib/dependencies/{HtmlInlineHtmlDependency.js → html/HtmlInlineHtmlDependency.js} +13 -12
  201. package/lib/dependencies/{HtmlInlineScriptDependency.js → html/HtmlInlineScriptDependency.js} +72 -23
  202. package/lib/dependencies/{HtmlInlineStyleDependency.js → html/HtmlInlineStyleDependency.js} +53 -19
  203. package/lib/dependencies/{HtmlSourceDependency.js → html/HtmlSourceDependency.js} +23 -16
  204. package/lib/dependencies/{ImportContextDependency.js → import/ImportContextDependency.js} +24 -10
  205. package/lib/dependencies/{ImportDependency.js → import/ImportDependency.js} +26 -18
  206. package/lib/dependencies/{ImportEagerDependency.js → import/ImportEagerDependency.js} +18 -10
  207. package/lib/dependencies/{ImportParserPlugin.js → import/ImportParserPlugin.js} +20 -20
  208. package/lib/dependencies/{ImportPlugin.js → import/ImportPlugin.js} +4 -4
  209. package/lib/dependencies/{ImportWeakDependency.js → import/ImportWeakDependency.js} +18 -10
  210. package/lib/dependencies/{importOptionsCheck.js → import/importOptionsCheck.js} +2 -2
  211. package/lib/dependencies/{BuildTimeConstDependency.js → import-meta/BuildTimeConstDependency.js} +12 -11
  212. package/lib/dependencies/{ImportMetaMainDependency.js → import-meta/ImportMetaMainDependency.js} +12 -11
  213. package/lib/dependencies/{ImportMetaPlugin.js → import-meta/ImportMetaPlugin.js} +126 -107
  214. package/lib/dependencies/{SystemPlugin.js → system/SystemPlugin.js} +11 -38
  215. package/lib/dependencies/{SystemRuntimeModule.js → system/SystemRuntimeModule.js} +3 -3
  216. package/lib/dependencies/{ImportMetaResolveDependency.js → url/ImportMetaResolveDependency.js} +9 -8
  217. package/lib/dependencies/{URLContextDependency.js → url/URLContextDependency.js} +11 -10
  218. package/lib/dependencies/{URLDependency.js → url/URLDependency.js} +34 -25
  219. package/lib/{url → dependencies/url}/URLParserPlugin.js +22 -26
  220. package/lib/dependencies/{URLPlugin.js → url/URLPlugin.js} +6 -7
  221. package/lib/dependencies/{WebAssemblyExportImportedDependency.js → wasm/WebAssemblyExportImportedDependency.js} +18 -11
  222. package/lib/dependencies/{WebAssemblyImportDependency.js → wasm/WebAssemblyImportDependency.js} +19 -12
  223. package/lib/dependencies/{CreateScriptUrlDependency.js → worker/CreateScriptUrlDependency.js} +12 -11
  224. package/lib/dependencies/{WorkerAndWorkletPlugin.js → worker/WorkerAndWorkletPlugin.js} +46 -54
  225. package/lib/dependencies/{WorkerDependency.js → worker/WorkerDependency.js} +28 -20
  226. package/lib/dependencies/{WorkletDependency.js → worker/WorkletDependency.js} +25 -27
  227. package/lib/{EvalDevToolModulePlugin.js → devtool/EvalDevToolModulePlugin.js} +20 -6
  228. package/lib/{EvalSourceMapDevToolPlugin.js → devtool/EvalSourceMapDevToolPlugin.js} +32 -24
  229. package/lib/devtool/ModuleFilenameHelpers.js +413 -0
  230. package/lib/{SourceMapDevToolModuleOptionsPlugin.js → devtool/SourceMapDevToolModuleOptionsPlugin.js} +10 -3
  231. package/lib/{SourceMapDevToolPlugin.js → devtool/SourceMapDevToolPlugin.js} +207 -129
  232. package/lib/{util → devtool}/generateDebugId.js +1 -1
  233. package/lib/{IgnoreWarningsPlugin.js → diagnostics/IgnoreWarningsPlugin.js} +2 -2
  234. package/lib/{NoEmitOnErrorsPlugin.js → diagnostics/NoEmitOnErrorsPlugin.js} +1 -1
  235. package/lib/diagnostics/WarnCaseSensitiveModulesPlugin.js +64 -0
  236. package/lib/{WarnDeprecatedOptionPlugin.js → diagnostics/WarnDeprecatedOptionPlugin.js} +2 -22
  237. package/lib/diagnostics/WarnNoModeSetPlugin.js +27 -0
  238. package/lib/dll/DelegatedModule.js +20 -18
  239. package/lib/dll/DelegatedModuleFactoryPlugin.js +2 -2
  240. package/lib/dll/DelegatedPlugin.js +1 -1
  241. package/lib/{dependencies → dll}/DelegatedSourceDependency.js +5 -4
  242. package/lib/{dependencies → dll}/DllEntryDependency.js +6 -5
  243. package/lib/dll/DllEntryPlugin.js +3 -3
  244. package/lib/dll/DllModule.js +11 -9
  245. package/lib/dll/DllModuleFactory.js +3 -3
  246. package/lib/dll/DllPlugin.js +18 -6
  247. package/lib/dll/DllReferencePlugin.js +102 -26
  248. package/lib/dll/LibManifestPlugin.js +9 -7
  249. package/lib/electron/ElectronTargetPlugin.js +2 -2
  250. package/lib/{DynamicEntryPlugin.js → entry/DynamicEntryPlugin.js} +3 -3
  251. package/lib/{dependencies → entry}/EntryDependency.js +11 -2
  252. package/lib/{EntryOptionPlugin.js → entry/EntryOptionPlugin.js} +6 -6
  253. package/lib/entry/EntryPlugin.js +75 -0
  254. package/lib/{performance → errors}/AssetsOverSizeLimitWarning.js +2 -2
  255. package/lib/errors/AsyncDependencyToInitialChunkError.js +2 -2
  256. package/lib/errors/BuildCycleError.js +1 -1
  257. package/lib/{WarnCaseSensitiveModulesPlugin.js → errors/CaseSensitiveModulesWarning.js} +4 -56
  258. package/lib/errors/ChunkRenderError.js +1 -1
  259. package/lib/errors/CodeGenerationError.js +1 -1
  260. package/lib/errors/CommentCompilationWarning.js +1 -1
  261. package/lib/errors/ConflictingEntryExportsWarning.js +38 -0
  262. package/lib/{dependencies → errors}/CriticalDependencyWarning.js +4 -3
  263. package/lib/errors/DeprecatedOptionWarning.js +30 -0
  264. package/lib/errors/DllManifestError.js +26 -0
  265. package/lib/{performance → errors}/DuplicatePackagesWarning.js +6 -6
  266. package/lib/{dependencies/HarmonyLinkingError.js → errors/ESMLinkingError.js} +4 -4
  267. package/lib/{performance → errors}/EntrypointsOverSizeLimitWarning.js +2 -2
  268. package/lib/errors/EnvironmentNotSupportAsyncWarning.js +2 -2
  269. package/lib/errors/ErrorHelpers.js +222 -0
  270. package/lib/errors/ExternalStarReexportError.js +2 -2
  271. package/lib/{library → errors}/FalseIIFEUmdWarning.js +1 -1
  272. package/lib/errors/HookWebpackError.js +6 -5
  273. package/lib/errors/IgnoreErrorModuleFactory.js +3 -3
  274. package/lib/errors/InvalidDependenciesModuleWarning.js +1 -1
  275. package/lib/{optimize → errors}/MinMaxSizeWarning.js +1 -1
  276. package/lib/errors/ModuleBuildError.js +1 -1
  277. package/lib/errors/ModuleDependencyError.js +2 -2
  278. package/lib/errors/ModuleDependencyWarning.js +2 -2
  279. package/lib/errors/ModuleError.js +1 -1
  280. package/lib/errors/ModuleHashingError.js +1 -1
  281. package/lib/errors/ModuleNotFoundError.js +3 -3
  282. package/lib/errors/ModuleParseError.js +1 -1
  283. package/lib/errors/ModuleRestoreError.js +1 -1
  284. package/lib/errors/ModuleStoreError.js +1 -1
  285. package/lib/errors/ModuleWarning.js +1 -1
  286. package/lib/{performance → errors}/NoAsyncChunksWarning.js +1 -1
  287. package/lib/{WarnNoModeSetPlugin.js → errors/NoModeWarning.js} +2 -19
  288. package/lib/errors/NodeStuffInWebError.js +7 -2
  289. package/lib/errors/PathVariableError.js +31 -0
  290. package/lib/errors/RequireIncludeDeprecationWarning.js +40 -0
  291. package/lib/{performance → errors}/RuntimeInLargeChunkWarning.js +1 -1
  292. package/lib/errors/RuntimeModuleGenerationError.js +51 -0
  293. package/lib/errors/SSRManifestAutoPublicPathWarning.js +24 -0
  294. package/lib/errors/SystemImportDeprecationWarning.js +43 -0
  295. package/lib/errors/UnmergeableEntryExportsError.js +34 -0
  296. package/lib/errors/UnsupportedFeatureWarning.js +1 -1
  297. package/lib/{wasm-sync → errors}/UnsupportedWebAssemblyFeatureError.js +1 -1
  298. package/lib/{wasm-sync → errors}/WebAssemblyInInitialChunkError.js +7 -5
  299. package/lib/errors/WebpackError.js +12 -3
  300. package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -2
  301. package/lib/esm/ModuleChunkFormatPlugin.js +19 -19
  302. package/lib/esm/ModuleChunkLoadingPlugin.js +3 -3
  303. package/lib/esm/ModuleChunkLoadingRuntimeModule.js +8 -8
  304. package/lib/{ExternalModule.js → externals/ExternalModule.js} +85 -63
  305. package/lib/{ExternalModuleFactoryPlugin.js → externals/ExternalModuleFactoryPlugin.js} +41 -39
  306. package/lib/externals/ExternalsPlugin.js +99 -0
  307. package/lib/fs/FileSystemInfo.js +4642 -0
  308. package/lib/{util → fs}/fs.js +22 -9
  309. package/lib/{AsyncDependenciesBlock.js → graph/AsyncDependenciesBlock.js} +27 -4
  310. package/lib/graph/Chunk.js +985 -0
  311. package/lib/{ChunkGraph.js → graph/ChunkGraph.js} +187 -80
  312. package/lib/{ChunkGroup.js → graph/ChunkGroup.js} +11 -3
  313. package/lib/{DependenciesBlock.js → graph/DependenciesBlock.js} +16 -4
  314. package/lib/graph/Dependency.js +628 -0
  315. package/lib/graph/Entrypoint.js +136 -0
  316. package/lib/{ExportsInfo.js → graph/ExportsInfo.js} +151 -99
  317. package/lib/{HotUpdateChunk.js → graph/HotUpdateChunk.js} +8 -0
  318. package/lib/{ModuleGraph.js → graph/ModuleGraph.js} +36 -39
  319. package/lib/{ModuleGraphConnection.js → graph/ModuleGraphConnection.js} +2 -2
  320. package/lib/{buildChunkGraph.js → graph/buildChunkGraph.js} +163 -72
  321. package/lib/{util → graph}/findGraphRoots.js +20 -21
  322. package/lib/graph/isDependencyKind.js +23 -0
  323. package/lib/hmr/HotModuleReplacement.runtime.js +2 -2
  324. package/lib/{HotModuleReplacementPlugin.js → hmr/HotModuleReplacementPlugin.js} +49 -47
  325. package/lib/hmr/HotModuleReplacementRuntimeModule.js +3 -3
  326. package/lib/hmr/JavascriptHotModuleReplacement.runtime.js +10 -8
  327. package/lib/hmr/JavascriptHotModuleReplacementHelper.js +2 -2
  328. package/lib/hmr/LazyCompilationPlugin.js +34 -26
  329. package/lib/html/HtmlGenerator.js +168 -125
  330. package/lib/html/HtmlModule.js +6 -2
  331. package/lib/html/HtmlModulesPlugin.js +260 -215
  332. package/lib/html/HtmlParser.js +598 -292
  333. package/lib/html/builtinEmbeddedRenderer.js +60 -13
  334. package/lib/html/data.js +23 -1
  335. package/lib/html/htmlMinify.js +120 -51
  336. package/lib/html/syntax-parser.js +15796 -0
  337. package/lib/html/syntax-printer.js +1034 -0
  338. package/lib/html/syntax.js +37 -14062
  339. package/lib/html/xmlMinify.js +67 -0
  340. package/lib/ids/ChunkModuleIdRangePlugin.js +2 -2
  341. package/lib/ids/DeterministicModuleIdsPlugin.js +1 -1
  342. package/lib/ids/HashedModuleIdsPlugin.js +31 -4
  343. package/lib/ids/IdHelpers.js +4 -4
  344. package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
  345. package/lib/ids/OccurrenceChunkIdsPlugin.js +6 -5
  346. package/lib/ids/OccurrenceModuleIdsPlugin.js +6 -5
  347. package/lib/{RecordIdsPlugin.js → ids/RecordIdsPlugin.js} +5 -5
  348. package/lib/ids/SyncModuleIdsPlugin.js +3 -3
  349. package/lib/{util → ids}/numberHash.js +1 -1
  350. package/lib/index.js +348 -99
  351. package/lib/{APIPlugin.js → javascript/APIPlugin.js} +29 -30
  352. package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +4 -5
  353. package/lib/javascript/BasicEvaluatedExpression.js +4 -4
  354. package/lib/javascript/ChunkHelpers.js +64 -4
  355. package/lib/javascript/CommonJsChunkFormatPlugin.js +4 -7
  356. package/lib/{CompatibilityPlugin.js → javascript/CompatibilityPlugin.js} +10 -11
  357. package/lib/{ConstPlugin.js → javascript/ConstPlugin.js} +90 -139
  358. package/lib/{ExportsInfoApiPlugin.js → javascript/ExportsInfoApiPlugin.js} +5 -5
  359. package/lib/{dependencies → javascript}/ExportsInfoDependency.js +10 -9
  360. package/lib/javascript/JavascriptGenerator.js +25 -18
  361. package/lib/{JavascriptMetaInfoPlugin.js → javascript/JavascriptMetaInfoPlugin.js} +7 -7
  362. package/lib/javascript/JavascriptModule.js +4 -3
  363. package/lib/javascript/JavascriptModulesPlugin.js +458 -256
  364. package/lib/javascript/JavascriptParser.js +916 -287
  365. package/lib/javascript/JavascriptParserHelpers.js +1 -1
  366. package/lib/javascript/MergedEntryExports.js +196 -0
  367. package/lib/javascript/ScopeAnalyzer.js +3840 -5
  368. package/lib/javascript/StartupHelpers.js +6 -6
  369. package/lib/{UseStrictPlugin.js → javascript/UseStrictPlugin.js} +12 -15
  370. package/lib/{dependencies → javascript}/WebpackIsIncludedDependency.js +10 -9
  371. package/lib/{WebpackIsIncludedPlugin.js → javascript/WebpackIsIncludedPlugin.js} +8 -8
  372. package/lib/javascript/data.js +533 -122
  373. package/lib/javascript/jsMinify.js +272 -0
  374. package/lib/javascript/regexp.js +67 -32
  375. package/lib/javascript/syntax-parser.js +18561 -0
  376. package/lib/javascript/syntax-printer-data.js +933 -0
  377. package/lib/javascript/syntax-printer.js +47106 -0
  378. package/lib/javascript/syntax.js +20 -10946
  379. package/lib/json/JsonData.js +1 -1
  380. package/lib/{dependencies → json}/JsonExportsDependency.js +8 -7
  381. package/lib/json/JsonGenerator.js +17 -11
  382. package/lib/json/JsonModule.js +2 -2
  383. package/lib/json/JsonModulesPlugin.js +1 -1
  384. package/lib/json/JsonParser.js +5 -5
  385. package/lib/json/jsonMinify.js +69 -0
  386. package/lib/library/AbstractLibraryPlugin.js +28 -15
  387. package/lib/library/AmdLibraryPlugin.js +4 -4
  388. package/lib/library/AssignLibraryPlugin.js +27 -11
  389. package/lib/library/EnableLibraryPlugin.js +1 -1
  390. package/lib/library/ExportPropertyLibraryPlugin.js +4 -4
  391. package/lib/library/JsonpLibraryPlugin.js +1 -1
  392. package/lib/library/LibraryTemplatePlugin.js +53 -0
  393. package/lib/library/ModuleLibraryPlugin.js +207 -285
  394. package/lib/library/SystemLibraryPlugin.js +6 -8
  395. package/lib/library/UmdLibraryPlugin.js +3 -4
  396. package/lib/{dependencies → loaders}/LoaderDependency.js +3 -3
  397. package/lib/{dependencies → loaders}/LoaderImportDependency.js +9 -3
  398. package/lib/{LoaderOptionsPlugin.js → loaders/LoaderOptionsPlugin.js} +30 -12
  399. package/lib/{dependencies → loaders}/LoaderPlugin.js +27 -2
  400. package/lib/loaders/LoaderRunner.js +160 -22
  401. package/lib/{LoaderTargetPlugin.js → loaders/LoaderTargetPlugin.js} +2 -2
  402. package/lib/logging/Logger.js +7 -9
  403. package/lib/logging/ProgressPlugin.js +957 -0
  404. package/lib/{CodeGenerationResults.js → module/CodeGenerationResults.js} +7 -7
  405. package/lib/{Generator.js → module/Generator.js} +38 -14
  406. package/lib/{Module.js → module/Module.js} +122 -54
  407. package/lib/{ModuleFactory.js → module/ModuleFactory.js} +3 -3
  408. package/lib/module/NormalModule.js +2348 -0
  409. package/lib/{NormalModuleFactory.js → module/NormalModuleFactory.js} +53 -54
  410. package/lib/module/NullFactory.js +29 -0
  411. package/lib/{Parser.js → module/Parser.js} +3 -3
  412. package/lib/module/RawModule.js +208 -0
  413. package/lib/{SelfModuleFactory.js → module/SelfModuleFactory.js} +1 -1
  414. package/lib/{util → module}/extractSourceMap.js +2 -2
  415. package/lib/{util → module}/findCaseMismatch.js +2 -2
  416. package/lib/node/CommonJsChunkLoadingPlugin.js +3 -3
  417. package/lib/{dependencies → node}/ExternalModuleDependency.js +8 -7
  418. package/lib/{dependencies → node}/ExternalModuleInitFragment.js +6 -5
  419. package/lib/{dependencies → node}/ExternalModuleInitFragmentDependency.js +14 -9
  420. package/lib/node/NodeEnvironmentPlugin.js +11 -1
  421. package/lib/{NodeStuffPlugin.js → node/NodeStuffPlugin.js} +17 -17
  422. package/lib/node/NodeTargetPlugin.js +1 -1
  423. package/lib/node/NodeWatchFileSystem.js +61 -15
  424. package/lib/node/ReadFileChunkLoadingRuntimeModule.js +7 -7
  425. package/lib/node/ReadFileCompileAsyncWasmPlugin.js +9 -7
  426. package/lib/node/ReadFileCompileWasmPlugin.js +7 -5
  427. package/lib/node/RequireChunkLoadingRuntimeModule.js +7 -7
  428. package/lib/node/nodeConsole.js +2 -4
  429. package/lib/optimize/AggressiveMergingPlugin.js +5 -7
  430. package/lib/optimize/AggressiveSplittingPlugin.js +12 -8
  431. package/lib/{CircularModulesPlugin.js → optimize/CircularModulesPlugin.js} +13 -13
  432. package/lib/optimize/ConcatenatedModule.js +305 -309
  433. package/lib/{ConcatenationScope.js → optimize/ConcatenationScope.js} +39 -6
  434. package/lib/optimize/ConstExportsPlugin.js +7 -7
  435. package/lib/optimize/EnsureChunkConditionsPlugin.js +3 -3
  436. package/lib/{FlagAllModulesAsUsedPlugin.js → optimize/FlagAllModulesAsUsedPlugin.js} +3 -3
  437. package/lib/{FlagDependencyExportsPlugin.js → optimize/FlagDependencyExportsPlugin.js} +25 -30
  438. package/lib/{FlagDependencyUsagePlugin.js → optimize/FlagDependencyUsagePlugin.js} +26 -30
  439. package/lib/{FlagEntryExportAsUsedPlugin.js → optimize/FlagEntryExportAsUsedPlugin.js} +2 -2
  440. package/lib/optimize/FlagIncludedChunksPlugin.js +5 -13
  441. package/lib/optimize/InlineExports.js +11 -3
  442. package/lib/optimize/InnerGraph.js +5 -13
  443. package/lib/optimize/InnerGraphPlugin.js +17 -23
  444. package/lib/optimize/LazyBarrels.js +584 -0
  445. package/lib/{util → optimize}/LazyBucketSortedSet.js +2 -2
  446. package/lib/optimize/LimitChunkCountPlugin.js +21 -15
  447. package/lib/optimize/MangleExportsPlugin.js +8 -9
  448. package/lib/optimize/MergeDuplicateChunksPlugin.js +7 -6
  449. package/lib/optimize/MinChunkSizePlugin.js +9 -6
  450. package/lib/optimize/ModuleConcatenationPlugin.js +23 -16
  451. package/lib/{dependencies → optimize}/PureExpressionDependency.js +11 -10
  452. package/lib/optimize/RealContentHashPlugin.js +16 -7
  453. package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -2
  454. package/lib/optimize/RemoveParentModulesPlugin.js +4 -4
  455. package/lib/optimize/SideEffectsFlagPlugin.js +25 -37
  456. package/lib/optimize/SplitChunksPlugin.js +715 -159
  457. package/lib/{util → optimize}/TupleQueue.js +9 -9
  458. package/lib/optimize/chunkSetIntersections.js +437 -0
  459. package/lib/{util → optimize}/deterministicGrouping.js +25 -30
  460. package/lib/{BannerPlugin.js → output/BannerPlugin.js} +82 -14
  461. package/lib/{CleanPlugin.js → output/CleanPlugin.js} +66 -24
  462. package/lib/{CopyPlugin.js → output/CopyPlugin.js} +142 -67
  463. package/lib/{ManifestPlugin.js → output/ManifestPlugin.js} +91 -17
  464. package/lib/output/SSRManifestPlugin.js +349 -0
  465. package/lib/performance/AnalyzableBailoutsPlugin.js +1 -1
  466. package/lib/performance/AsyncChunkWaterfallsPlugin.js +1 -1
  467. package/lib/performance/BroadContextsPlugin.js +4 -4
  468. package/lib/performance/CacheEffectivenessPlugin.js +5 -7
  469. package/lib/performance/ConflictingResourceHintsPlugin.js +1 -1
  470. package/lib/performance/DuplicateModulesPlugin.js +3 -4
  471. package/lib/performance/DuplicatePackagesPlugin.js +3 -3
  472. package/lib/performance/DynamicExportsPlugin.js +2 -2
  473. package/lib/performance/EvalUsagePlugin.js +3 -3
  474. package/lib/performance/HotspotsPlugin.js +11 -10
  475. package/lib/performance/LargeModulesPlugin.js +2 -3
  476. package/lib/performance/LegacyJavascriptPlugin.js +1 -2
  477. package/lib/performance/MissingSideEffectsPlugin.js +2 -3
  478. package/lib/performance/MissingSourceMapsPlugin.js +5 -6
  479. package/lib/performance/PureAnnotationsPlugin.js +3 -3
  480. package/lib/performance/RedundantDynamicImportsPlugin.js +6 -8
  481. package/lib/performance/ScopeHoistingBailoutsPlugin.js +2 -2
  482. package/lib/performance/SizeLimitsPlugin.js +13 -16
  483. package/lib/performance/TopLevelThisPlugin.js +8 -7
  484. package/lib/performance/UnsplitVendorsPlugin.js +1 -2
  485. package/lib/performance/UnusedAliasesPlugin.js +6 -7
  486. package/lib/performance/UnusedAssetsPlugin.js +5 -5
  487. package/lib/performance/UnusedDefinesPlugin.js +2 -2
  488. package/lib/performance/UnusedExternalsPlugin.js +3 -4
  489. package/lib/performance/UnusedFederationPlugin.js +2 -4
  490. package/lib/performance/UnusedModulesPlugin.js +5 -4
  491. package/lib/performance/getModuleSize.js +1 -1
  492. package/lib/performance/hasOnlyUnusedExports.js +4 -4
  493. package/lib/performance/isOnlyReexported.js +7 -6
  494. package/lib/{AutomaticPrefetchPlugin.js → prefetch/AutomaticPrefetchPlugin.js} +4 -5
  495. package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +2 -2
  496. package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +7 -9
  497. package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +4 -4
  498. package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +4 -4
  499. package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +4 -4
  500. package/lib/{dependencies → prefetch}/PrefetchDependency.js +1 -1
  501. package/lib/{PrefetchPlugin.js → prefetch/PrefetchPlugin.js} +2 -2
  502. package/lib/prefetch/ResourceHintPlugin.js +82 -65
  503. package/lib/prefetch/ResourceHintRuntimeModule.js +3 -3
  504. package/lib/prefetch/StartupAssetHintRuntimeModule.js +10 -13
  505. package/lib/prefetch/parseResourceHintOptions.js +4 -3
  506. package/lib/{ProvidePlugin.js → provide/ProvidePlugin.js} +7 -7
  507. package/lib/{dependencies → provide}/ProvidedDependency.js +14 -13
  508. package/lib/{IgnorePlugin.js → resolve/IgnorePlugin.js} +30 -13
  509. package/lib/{NormalModuleReplacementPlugin.js → resolve/NormalModuleReplacementPlugin.js} +4 -4
  510. package/lib/{ResolverFactory.js → resolve/ResolverFactory.js} +18 -5
  511. package/lib/resolve/getResolveOptionsKey.js +59 -0
  512. package/lib/rules/RuleSetCompiler.js +27 -46
  513. package/lib/runtime/AsyncModuleGeneratorRuntimeModule.js +2 -2
  514. package/lib/runtime/AsyncModuleRuntimeModule.js +10 -9
  515. package/lib/runtime/AutoPublicPathRuntimeModule.js +5 -5
  516. package/lib/runtime/BaseUriRuntimeModule.js +3 -3
  517. package/lib/runtime/ChunkNameRuntimeModule.js +2 -2
  518. package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +2 -2
  519. package/lib/runtime/CompatRuntimeModule.js +4 -4
  520. package/lib/runtime/ConcatenationWrapRuntimeModule.js +2 -2
  521. package/lib/runtime/ConstructRequireRuntimeModule.js +2 -2
  522. package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +2 -2
  523. package/lib/runtime/CreateScriptRuntimeModule.js +2 -2
  524. package/lib/runtime/CreateScriptUrlRuntimeModule.js +2 -2
  525. package/lib/runtime/DefinePropertyGettersRuntimeModule.js +6 -6
  526. package/lib/runtime/EnsureChunkRuntimeModule.js +4 -4
  527. package/lib/runtime/GetChunkFilenameRuntimeModule.js +9 -10
  528. package/lib/runtime/GetFullHashRuntimeModule.js +2 -2
  529. package/lib/runtime/GetMainFilenameRuntimeModule.js +4 -4
  530. package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +3 -3
  531. package/lib/runtime/GetWorkletBootstrapRuntimeModule.js +3 -3
  532. package/lib/runtime/GlobalRuntimeModule.js +5 -7
  533. package/lib/runtime/HasOwnPropertyRuntimeModule.js +3 -3
  534. package/lib/runtime/HelperRuntimeModule.js +16 -1
  535. package/lib/runtime/LoadScriptRuntimeModule.js +3 -3
  536. package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +135 -102
  537. package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +2 -2
  538. package/lib/runtime/NonceRuntimeModule.js +2 -2
  539. package/lib/runtime/OnChunksLoadedRuntimeModule.js +4 -4
  540. package/lib/runtime/PublicPathRuntimeModule.js +2 -2
  541. package/lib/runtime/RelativeUrlRuntimeModule.js +2 -2
  542. package/lib/{RuntimeGlobals.js → runtime/RuntimeGlobals.js} +18 -1
  543. package/lib/runtime/RuntimeIdRuntimeModule.js +4 -4
  544. package/lib/{RuntimeModule.js → runtime/RuntimeModule.js} +36 -21
  545. package/lib/{RuntimePlugin.js → runtime/RuntimePlugin.js} +48 -50
  546. package/lib/runtime/SetAnonymousDefaultNameRuntimeModule.js +2 -2
  547. package/lib/runtime/SpecNamespaceObjectRuntimeModule.js +2 -2
  548. package/lib/runtime/StartupChunkDependenciesPlugin.js +2 -2
  549. package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +5 -5
  550. package/lib/runtime/StartupEntrypointRuntimeModule.js +3 -3
  551. package/lib/runtime/SystemContextRuntimeModule.js +2 -2
  552. package/lib/runtime/ToBinaryRuntimeModule.js +3 -3
  553. package/lib/runtime/WorkerRuntimeModule.js +1 -1
  554. package/lib/runtime/baseUri.js +1 -1
  555. package/lib/schemes/DataUriPlugin.js +4 -7
  556. package/lib/schemes/HttpUriPlugin.js +67 -11
  557. package/lib/schemes/VirtualUrlPlugin.js +50 -16
  558. package/lib/serialization/AggregateErrorSerializer.js +2 -2
  559. package/lib/serialization/BinaryMiddleware.js +9 -9
  560. package/lib/serialization/FileMiddleware.js +19 -19
  561. package/lib/serialization/ObjectMiddleware.js +77 -49
  562. package/lib/serialization/SerializerMiddleware.js +2 -2
  563. package/lib/serialization/SingleItemMiddleware.js +4 -2
  564. package/lib/sharing/ConsumeSharedFallbackDependency.js +9 -1
  565. package/lib/sharing/ConsumeSharedModule.js +18 -14
  566. package/lib/sharing/ConsumeSharedPlugin.js +148 -42
  567. package/lib/sharing/ConsumeSharedRuntimeModule.js +8 -8
  568. package/lib/sharing/ProvideForSharedDependency.js +9 -1
  569. package/lib/sharing/ProvideSharedDependency.js +1 -1
  570. package/lib/sharing/ProvideSharedModule.js +11 -9
  571. package/lib/sharing/ProvideSharedModuleFactory.js +2 -2
  572. package/lib/sharing/ProvideSharedPlugin.js +111 -20
  573. package/lib/sharing/SharePlugin.js +102 -9
  574. package/lib/sharing/ShareRuntimeModule.js +6 -6
  575. package/lib/sharing/resolveMatchedConfigs.js +1 -1
  576. package/lib/{util → sharing}/semver.js +19 -19
  577. package/lib/sharing/utils.js +59 -2
  578. package/lib/stats/DefaultStatsFactoryPlugin.js +25 -23
  579. package/lib/stats/DefaultStatsPresetPlugin.js +1 -1
  580. package/lib/stats/DefaultStatsPrinterPlugin.js +3 -3
  581. package/lib/{MultiStats.js → stats/MultiStats.js} +4 -4
  582. package/lib/{Stats.js → stats/Stats.js} +4 -4
  583. package/lib/stats/StatsFactory.js +14 -13
  584. package/lib/{ChunkTemplate.js → template/ChunkTemplate.js} +7 -7
  585. package/lib/{ConditionalInitFragment.js → template/ConditionalInitFragment.js} +3 -3
  586. package/lib/template/DependencyTemplate.js +77 -0
  587. package/lib/{DependencyTemplates.js → template/DependencyTemplates.js} +9 -4
  588. package/lib/template/InitFragment.js +223 -0
  589. package/lib/{MainTemplate.js → template/MainTemplate.js} +11 -11
  590. package/lib/{ModuleInfoHeaderPlugin.js → template/ModuleInfoHeaderPlugin.js} +30 -8
  591. package/lib/{ModuleTemplate.js → template/ModuleTemplate.js} +6 -6
  592. package/lib/{RuntimeTemplate.js → template/RuntimeTemplate.js} +178 -106
  593. package/lib/{Template.js → template/Template.js} +13 -11
  594. package/lib/{TemplatedPathPlugin.js → template/TemplatedPathPlugin.js} +35 -82
  595. package/lib/typescript/TypeScriptPlugin.js +5 -6
  596. package/lib/util/LocConverter.js +4 -7
  597. package/lib/util/RequestShortener.js +44 -0
  598. package/lib/util/SortableSet.js +87 -22
  599. package/lib/util/SourceProcessor.js +364 -66
  600. package/lib/util/TupleSet.js +27 -27
  601. package/lib/util/WeakTupleMap.js +10 -12
  602. package/lib/util/buildDiagnostics.js +2 -2
  603. package/lib/util/comparators.js +10 -10
  604. package/lib/util/concatenate.js +32 -151
  605. package/lib/util/createHooksRegistry.js +1 -2
  606. package/lib/util/createMappings.js +111 -0
  607. package/lib/util/dataURL.js +96 -18
  608. package/lib/util/deprecation.js +1 -1
  609. package/lib/util/extractComments.js +118 -0
  610. package/lib/util/formatLocation.js +1 -1
  611. package/lib/util/globUtils.js +197 -16
  612. package/lib/util/haltVisitors.js +51 -0
  613. package/lib/util/handlerKeys.js +2 -2
  614. package/lib/util/hash/wasm-hash.js +3 -4
  615. package/lib/util/identifier.js +117 -1
  616. package/lib/util/implicitTypeLoaderFallback.js +6 -4
  617. package/lib/util/internalSerializables.js +295 -103
  618. package/lib/util/magicComment.js +12 -7
  619. package/lib/util/makeSerializable.js +23 -4
  620. package/lib/util/parseJson.js +1 -1
  621. package/lib/util/preloadModuleType.js +5 -2
  622. package/lib/util/registerExternalSerializer.js +2 -2
  623. package/lib/util/removeBOM.js +1 -1
  624. package/lib/util/runtime.js +1 -1
  625. package/lib/util/serialization.js +4 -1
  626. package/lib/util/source.js +2 -2
  627. package/lib/util/terminalColors.js +161 -0
  628. package/lib/{wasm-async → wasm}/AsyncWasmCompileRuntimeModule.js +5 -5
  629. package/lib/{wasm-async → wasm}/AsyncWasmLoadingRuntimeModule.js +5 -5
  630. package/lib/{wasm-async → wasm}/AsyncWasmModule.js +9 -5
  631. package/lib/{wasm-async → wasm}/AsyncWebAssemblyGenerator.js +11 -6
  632. package/lib/{wasm-async → wasm}/AsyncWebAssemblyJavascriptGenerator.js +16 -11
  633. package/lib/{wasm-async → wasm}/AsyncWebAssemblyModulesPlugin.js +26 -10
  634. package/lib/{wasm-async → wasm}/AsyncWebAssemblyParser.js +8 -8
  635. package/lib/wasm/EnableWasmLoadingPlugin.js +1 -1
  636. package/lib/{wasm-async → wasm}/UniversalCompileAsyncWasmPlugin.js +9 -7
  637. package/lib/wasm/wasmModuleFilename.js +2 -2
  638. package/lib/wasm-sync/SyncWasmModule.js +3 -3
  639. package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +11 -12
  640. package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +3 -3
  641. package/lib/wasm-sync/WebAssemblyGenerator.js +15 -9
  642. package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +19 -16
  643. package/lib/wasm-sync/WebAssemblyModulesPlugin.js +9 -7
  644. package/lib/wasm-sync/WebAssemblyParser.js +6 -6
  645. package/lib/wasm-sync/WebAssemblyUtils.js +8 -9
  646. package/lib/{MultiWatching.js → watch/MultiWatching.js} +3 -3
  647. package/lib/{WatchIgnorePlugin.js → watch/WatchIgnorePlugin.js} +43 -9
  648. package/lib/{Watching.js → watch/Watching.js} +8 -8
  649. package/lib/web/FetchCompileAsyncWasmPlugin.js +8 -6
  650. package/lib/web/FetchCompileWasmPlugin.js +6 -4
  651. package/lib/web/JsonpChunkLoadingPlugin.js +3 -3
  652. package/lib/web/JsonpChunkLoadingRuntimeModule.js +6 -6
  653. package/lib/web/JsonpTemplatePlugin.js +1 -1
  654. package/lib/webpack.js +27 -17
  655. package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +3 -3
  656. package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +6 -6
  657. package/package.json +70 -40
  658. package/schemas/WebpackOptions.check.js +2 -1
  659. package/schemas/WebpackOptions.d.json.ts +2 -0
  660. package/schemas/WebpackOptions.json +294 -74
  661. package/schemas/plugins/BannerPlugin.check.js +2 -1
  662. package/schemas/plugins/BannerPlugin.json +29 -2
  663. package/schemas/plugins/HtmlGeneratorOptions.check.js +1 -0
  664. package/schemas/plugins/HtmlParserOptions.check.js +2 -1
  665. package/schemas/plugins/IgnorePlugin.check.js +1 -0
  666. package/schemas/plugins/IgnorePlugin.d.json.ts +2 -0
  667. package/schemas/plugins/IgnorePlugin.json +1 -1
  668. package/schemas/plugins/LoaderOptionsPlugin.check.js +1 -0
  669. package/schemas/plugins/ManifestPlugin.check.js +1 -0
  670. package/schemas/plugins/ManifestPlugin.json +3 -3
  671. package/schemas/plugins/ProgressPlugin.check.js +2 -1
  672. package/schemas/plugins/ProgressPlugin.json +2 -7
  673. package/schemas/plugins/SSRManifestPlugin.check.js +7 -0
  674. package/schemas/plugins/SSRManifestPlugin.json +20 -0
  675. package/schemas/plugins/SourceMapDevToolPlugin.check.js +2 -1
  676. package/schemas/plugins/SourceMapDevToolPlugin.json +44 -12
  677. package/schemas/plugins/WatchIgnorePlugin.check.js +2 -1
  678. package/schemas/plugins/WatchIgnorePlugin.json +12 -3
  679. package/schemas/plugins/asset/AssetGeneratorOptions.check.js +1 -0
  680. package/schemas/plugins/asset/AssetInlineGeneratorOptions.check.js +1 -0
  681. package/schemas/plugins/asset/AssetParserOptions.check.js +1 -0
  682. package/schemas/plugins/asset/AssetResourceGeneratorOptions.check.js +1 -0
  683. package/schemas/plugins/container/ContainerPlugin.check.js +2 -1
  684. package/schemas/plugins/container/ContainerPlugin.json +8 -0
  685. package/schemas/plugins/container/ContainerReferencePlugin.check.js +1 -0
  686. package/schemas/plugins/container/ExternalsType.check.js +1 -0
  687. package/schemas/plugins/container/ModuleFederationPlugin.check.js +2 -1
  688. package/schemas/plugins/container/ModuleFederationPlugin.json +40 -0
  689. package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +1 -0
  690. package/schemas/plugins/css/CssGeneratorOptions.check.js +1 -0
  691. package/schemas/plugins/css/CssModuleGeneratorOptions.check.js +1 -0
  692. package/schemas/plugins/css/CssModuleParserOptions.check.js +1 -0
  693. package/schemas/plugins/css/CssParserOptions.check.js +1 -0
  694. package/schemas/plugins/debug/ProfilingPlugin.check.js +1 -0
  695. package/schemas/plugins/dll/DllPlugin.check.js +1 -0
  696. package/schemas/plugins/dll/DllReferencePlugin.check.js +2 -1
  697. package/schemas/plugins/dll/DllReferencePlugin.json +3 -18
  698. package/schemas/plugins/ids/HashedModuleIdsPlugin.check.js +1 -0
  699. package/schemas/plugins/ids/OccurrenceChunkIdsPlugin.check.js +1 -0
  700. package/schemas/plugins/ids/OccurrenceModuleIdsPlugin.check.js +1 -0
  701. package/schemas/plugins/json/JsonModulesPluginGenerator.check.js +1 -0
  702. package/schemas/plugins/json/JsonModulesPluginParser.check.js +1 -0
  703. package/schemas/plugins/optimize/AggressiveSplittingPlugin.check.js +1 -0
  704. package/schemas/plugins/optimize/LimitChunkCountPlugin.check.js +1 -0
  705. package/schemas/plugins/optimize/MergeDuplicateChunksPlugin.check.js +1 -0
  706. package/schemas/plugins/optimize/MinChunkSizePlugin.check.js +1 -0
  707. package/schemas/plugins/schemes/HttpUriPlugin.check.js +1 -0
  708. package/schemas/plugins/schemes/VirtualUrlPlugin.check.js +1 -0
  709. package/schemas/plugins/sharing/ConsumeSharedPlugin.check.js +2 -1
  710. package/schemas/plugins/sharing/ConsumeSharedPlugin.json +32 -0
  711. package/schemas/plugins/sharing/ProvideSharedPlugin.check.js +2 -1
  712. package/schemas/plugins/sharing/ProvideSharedPlugin.json +32 -0
  713. package/schemas/plugins/sharing/SharePlugin.check.js +2 -1
  714. package/schemas/plugins/sharing/SharePlugin.json +32 -0
  715. package/types.d.ts +13915 -8414
  716. package/lib/ErrorHelpers.js +0 -107
  717. package/lib/LazyBarrel.js +0 -388
  718. package/lib/dependencies/HarmonyAcceptImportDependency.js +0 -39
  719. package/lib/dependencies/HarmonyModulesPlugin.js +0 -192
  720. package/lib/javascript/ChunkFormatHelpers.js +0 -71
  721. package/lib/javascript/grammar.js +0 -5546
  722. package/lib/javascript/parser.js +0 -1494
  723. package/lib/javascript/regexpData.js +0 -51
  724. package/lib/performance/getSourceModules.js +0 -22
  725. package/lib/util/Semaphore.js +0 -65
  726. package/lib/util/objectToMap.js +0 -15
  727. package/schemas/WebpackOptions.check.d.ts +0 -7
  728. package/schemas/_container.json +0 -155
  729. package/schemas/_sharing.json +0 -118
  730. package/schemas/plugins/BannerPlugin.check.d.ts +0 -7
  731. package/schemas/plugins/HtmlGeneratorOptions.check.d.ts +0 -7
  732. package/schemas/plugins/HtmlParserOptions.check.d.ts +0 -7
  733. package/schemas/plugins/IgnorePlugin.check.d.ts +0 -7
  734. package/schemas/plugins/LoaderOptionsPlugin.check.d.ts +0 -7
  735. package/schemas/plugins/ManifestPlugin.check.d.ts +0 -7
  736. package/schemas/plugins/ProgressPlugin.check.d.ts +0 -7
  737. package/schemas/plugins/SourceMapDevToolPlugin.check.d.ts +0 -7
  738. package/schemas/plugins/WatchIgnorePlugin.check.d.ts +0 -7
  739. package/schemas/plugins/asset/AssetGeneratorOptions.check.d.ts +0 -7
  740. package/schemas/plugins/asset/AssetInlineGeneratorOptions.check.d.ts +0 -7
  741. package/schemas/plugins/asset/AssetParserOptions.check.d.ts +0 -7
  742. package/schemas/plugins/asset/AssetResourceGeneratorOptions.check.d.ts +0 -7
  743. package/schemas/plugins/container/ContainerPlugin.check.d.ts +0 -7
  744. package/schemas/plugins/container/ContainerReferencePlugin.check.d.ts +0 -7
  745. package/schemas/plugins/container/ExternalsType.check.d.ts +0 -7
  746. package/schemas/plugins/container/ModuleFederationPlugin.check.d.ts +0 -7
  747. package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.d.ts +0 -7
  748. package/schemas/plugins/css/CssGeneratorOptions.check.d.ts +0 -7
  749. package/schemas/plugins/css/CssModuleGeneratorOptions.check.d.ts +0 -7
  750. package/schemas/plugins/css/CssModuleParserOptions.check.d.ts +0 -7
  751. package/schemas/plugins/css/CssParserOptions.check.d.ts +0 -7
  752. package/schemas/plugins/debug/ProfilingPlugin.check.d.ts +0 -7
  753. package/schemas/plugins/dll/DllPlugin.check.d.ts +0 -7
  754. package/schemas/plugins/dll/DllReferencePlugin.check.d.ts +0 -7
  755. package/schemas/plugins/ids/HashedModuleIdsPlugin.check.d.ts +0 -7
  756. package/schemas/plugins/ids/OccurrenceChunkIdsPlugin.check.d.ts +0 -7
  757. package/schemas/plugins/ids/OccurrenceModuleIdsPlugin.check.d.ts +0 -7
  758. package/schemas/plugins/json/JsonModulesPluginGenerator.check.d.ts +0 -7
  759. package/schemas/plugins/json/JsonModulesPluginParser.check.d.ts +0 -7
  760. package/schemas/plugins/optimize/AggressiveSplittingPlugin.check.d.ts +0 -7
  761. package/schemas/plugins/optimize/LimitChunkCountPlugin.check.d.ts +0 -7
  762. package/schemas/plugins/optimize/MergeDuplicateChunksPlugin.check.d.ts +0 -7
  763. package/schemas/plugins/optimize/MinChunkSizePlugin.check.d.ts +0 -7
  764. package/schemas/plugins/schemes/HttpUriPlugin.check.d.ts +0 -7
  765. package/schemas/plugins/schemes/VirtualUrlPlugin.check.d.ts +0 -7
  766. package/schemas/plugins/sharing/ConsumeSharedPlugin.check.d.ts +0 -7
  767. package/schemas/plugins/sharing/ProvideSharedPlugin.check.d.ts +0 -7
  768. package/schemas/plugins/sharing/SharePlugin.check.d.ts +0 -7
  769. /package/lib/{validateSchema.js → config/validateSchema.js} +0 -0
  770. /package/lib/{util → css}/conventions.js +0 -0
  771. /package/lib/{util → css}/topologicalSort.js +0 -0
  772. /package/lib/dependencies/{getFunctionExpression.js → helpers/getFunctionExpression.js} +0 -0
  773. /package/lib/{util → externals}/extractUrlAndGlobal.js +0 -0
  774. /package/lib/{util → fs}/StackedCacheMap.js +0 -0
  775. /package/lib/{util → javascript}/StackedMap.js +0 -0
  776. /package/lib/{ModuleProfile.js → module/ModuleProfile.js} +0 -0
  777. /package/lib/{ModuleSourceTypeConstants.js → module/ModuleSourceTypeConstants.js} +0 -0
  778. /package/lib/{ModuleTypeConstants.js → module/ModuleTypeConstants.js} +0 -0
  779. /package/lib/{OptimizationStages.js → optimize/OptimizationStages.js} +0 -0
  780. /package/lib/{util → optimize}/Queue.js +0 -0
  781. /package/lib/{util → stats}/smartGrouping.js +0 -0
@@ -4,22 +4,22 @@
4
4
 
5
5
  "use strict";
6
6
 
7
- const RuntimeGlobals = require("../RuntimeGlobals");
8
- const RuntimeModule = require("../RuntimeModule");
9
- const Template = require("../Template");
7
+ const RuntimeGlobals = require("../runtime/RuntimeGlobals");
8
+ const RuntimeModule = require("../runtime/RuntimeModule");
9
+ const Template = require("../template/Template");
10
10
  const { compareModulesByIdentifier } = require("../util/comparators");
11
11
  const { fullHashPathData } = require("../wasm/wasmModuleFilename");
12
12
  const WebAssemblyUtils = require("./WebAssemblyUtils");
13
13
 
14
14
  /** @import { Signature } from "@webassemblyjs/ast" */
15
- /** @import Chunk from "../Chunk" */
16
- /** @import ChunkGraph, { ModuleId } from "../ChunkGraph" */
15
+ /** @import Chunk from "../graph/Chunk" */
16
+ /** @import ChunkGraph, { ModuleId } from "../graph/ChunkGraph" */
17
17
  /** @import Compilation from "../Compilation" */
18
- /** @import Module, { ReadOnlyRuntimeRequirements } from "../Module" */
19
- /** @import ModuleGraph from "../ModuleGraph" */
18
+ /** @import Module, { ReadOnlyRuntimeRequirements } from "../module/Module" */
19
+ /** @import ModuleGraph from "../graph/ModuleGraph" */
20
20
  /** @import { RuntimeSpec } from "../util/runtime" */
21
21
 
22
- // TODO webpack 6 remove the whole folder
22
+ // TODO in the next major release: remove the whole folder
23
23
 
24
24
  // Get all wasm modules
25
25
  /**
@@ -339,10 +339,9 @@ class WasmChunkLoadingRuntimeModule extends RuntimeModule {
339
339
  stateExpression ? runtimeTemplate.assignOr(stateExpression, "{}") : "{}"
340
340
  };`,
341
341
  "",
342
- // This function is used to delay reading the installed wasm module promises
343
- // by a microtask. Sorting them doesn't help because there are edge cases where
344
- // sorting is not possible (modules splitted into different chunks).
345
- // So we not even trying and solve this by a microtask delay.
342
+ // Delays reading the installed wasm module promises by a microtask.
343
+ // Sorting them instead is not always possible — modules split across
344
+ // chunks have no order — so the delay is what is relied on.
346
345
  "function promiseResolve() { return Promise.resolve(); }",
347
346
  "",
348
347
  Template.asString(declarations),
@@ -5,12 +5,12 @@
5
5
 
6
6
  "use strict";
7
7
 
8
+ const UnsupportedWebAssemblyFeatureError = require("../errors/UnsupportedWebAssemblyFeatureError");
8
9
  const formatLocation = require("../util/formatLocation");
9
- const UnsupportedWebAssemblyFeatureError = require("./UnsupportedWebAssemblyFeatureError");
10
10
 
11
11
  /** @import Compiler from "../Compiler" */
12
- /** @import Dependency from "../Dependency" */
13
- /** @import Module from "../Module" */
12
+ /** @import Dependency from "../graph/Dependency" */
13
+ /** @import Module from "../module/Module" */
14
14
  /** @import { SyncWasmModuleBuildMeta } from "./SyncWasmModule" */
15
15
 
16
16
  const PLUGIN_NAME = "WasmFinalizeExportsPlugin";
@@ -10,16 +10,17 @@ const { moduleContextFromModuleAST } = require("@webassemblyjs/ast");
10
10
  const { addWithAST, editWithAST } = require("@webassemblyjs/wasm-edit");
11
11
  const { decode } = require("@webassemblyjs/wasm-parser");
12
12
  const { RawSource } = require("webpack-sources");
13
- const Generator = require("../Generator");
14
- const { WEBASSEMBLY_TYPES } = require("../ModuleSourceTypeConstants");
15
- const WebAssemblyExportImportedDependency = require("../dependencies/WebAssemblyExportImportedDependency");
13
+ const isDependencyKind = require("../graph/isDependencyKind");
14
+ const Generator = require("../module/Generator");
15
+ const { WEBASSEMBLY_TYPES } = require("../module/ModuleSourceTypeConstants");
16
16
  const WebAssemblyUtils = require("./WebAssemblyUtils");
17
17
 
18
+ /** @import WebAssemblyExportImportedDependency from "../dependencies/wasm/WebAssemblyExportImportedDependency" */
18
19
  /** @import { Source } from "webpack-sources" */
19
- /** @import { GenerateContext, UpdateHashContext } from "../Generator" */
20
- /** @import Module, { SourceType, SourceTypes } from "../Module" */
21
- /** @import ModuleGraph from "../ModuleGraph" */
22
- /** @import NormalModule from "../NormalModule" */
20
+ /** @import { GenerateContext, UpdateHashContext } from "../module/Generator" */
21
+ /** @import Module, { SourceType, SourceTypes } from "../module/Module" */
22
+ /** @import ModuleGraph from "../graph/ModuleGraph" */
23
+ /** @import NormalModule from "../module/NormalModule" */
23
24
  /** @import Hash from "../util/Hash" */
24
25
  /** @import { RuntimeSpec } from "../util/runtime" */
25
26
  /** @import { UsedWasmDependency } from "./WebAssemblyUtils" */
@@ -489,7 +490,7 @@ class WebAssemblyGenerator extends Generator {
489
490
  );
490
491
  const externalExports = new Set(
491
492
  module.dependencies
492
- .filter((d) => d instanceof WebAssemblyExportImportedDependency)
493
+ .filter((d) => isDependencyKind(d, "webassembly-export-imported"))
493
494
  .map((d) => {
494
495
  const wasmDep = /** @type {WebAssemblyExportImportedDependency} */ (
495
496
  d
@@ -544,7 +545,12 @@ class WebAssemblyGenerator extends Generator {
544
545
  * @returns {Source | null} generated code
545
546
  */
546
547
  generateError(error, module, generateContext) {
547
- return new RawSource(error.message);
548
+ return new RawSource(
549
+ Generator.buildErrorMessage(
550
+ error,
551
+ generateContext.runtimeTemplate.requestShortener
552
+ )
553
+ );
548
554
  }
549
555
 
550
556
  /**
@@ -6,20 +6,19 @@
6
6
  "use strict";
7
7
 
8
8
  const { RawSource } = require("webpack-sources");
9
- const { UsageState } = require("../ExportsInfo");
10
- const Generator = require("../Generator");
11
- const InitFragment = require("../InitFragment");
12
- const { WEBASSEMBLY_TYPES } = require("../ModuleSourceTypeConstants");
13
- const RuntimeGlobals = require("../RuntimeGlobals");
14
- const Template = require("../Template");
15
- const ModuleDependency = require("../dependencies/ModuleDependency");
16
- const WebAssemblyExportImportedDependency = require("../dependencies/WebAssemblyExportImportedDependency");
17
- const WebAssemblyImportDependency = require("../dependencies/WebAssemblyImportDependency");
9
+ const { UsageState } = require("../graph/ExportsInfo");
10
+ const isDependencyKind = require("../graph/isDependencyKind");
11
+ const Generator = require("../module/Generator");
12
+ const { WEBASSEMBLY_TYPES } = require("../module/ModuleSourceTypeConstants");
13
+ const RuntimeGlobals = require("../runtime/RuntimeGlobals");
14
+ const InitFragment = require("../template/InitFragment");
15
+ const Template = require("../template/Template");
18
16
 
19
17
  /** @import { Source } from "webpack-sources" */
20
- /** @import { GenerateContext } from "../Generator" */
21
- /** @import Module, { SourceType, SourceTypes } from "../Module" */
22
- /** @import NormalModule from "../NormalModule" */
18
+ /** @import { GenerateContext } from "../module/Generator" */
19
+ /** @import ModuleDependency from "../dependencies/core/ModuleDependency" */
20
+ /** @import Module, { SourceType, SourceTypes } from "../module/Module" */
21
+ /** @import NormalModule from "../module/NormalModule" */
23
22
 
24
23
  class WebAssemblyJavascriptGenerator extends Generator {
25
24
  /**
@@ -69,7 +68,7 @@ class WebAssemblyJavascriptGenerator extends Generator {
69
68
  let index = 0;
70
69
  for (const dep of module.dependencies) {
71
70
  const moduleDep =
72
- dep && dep instanceof ModuleDependency ? dep : undefined;
71
+ dep && isDependencyKind(dep, "module-dependency") ? dep : undefined;
73
72
  const mod = moduleGraph.getModule(dep);
74
73
  if (mod) {
75
74
  let importData = importedModules.get(mod);
@@ -87,7 +86,7 @@ class WebAssemblyJavascriptGenerator extends Generator {
87
86
  );
88
87
  index++;
89
88
  }
90
- if (dep instanceof WebAssemblyImportDependency) {
89
+ if (isDependencyKind(dep, "webassembly-import")) {
91
90
  importData.names.add(dep.name);
92
91
  if (dep.description.type === "GlobalType") {
93
92
  const exportName = dep.name;
@@ -121,7 +120,7 @@ class WebAssemblyJavascriptGenerator extends Generator {
121
120
  }
122
121
  }
123
122
  }
124
- if (dep instanceof WebAssemblyExportImportedDependency) {
123
+ if (isDependencyKind(dep, "webassembly-export-imported")) {
125
124
  importData.names.add(dep.name);
126
125
  const usedName = moduleGraph
127
126
  .getExportsInfo(module)
@@ -232,7 +231,11 @@ class WebAssemblyJavascriptGenerator extends Generator {
232
231
  */
233
232
  generateError(error, module, generateContext) {
234
233
  return new RawSource(
235
- Generator.throwBuildErrorCode(error, "WebAssembly.CompileError")
234
+ Generator.throwBuildErrorCode(
235
+ error,
236
+ "WebAssembly.CompileError",
237
+ generateContext.runtimeTemplate.requestShortener
238
+ )
236
239
  );
237
240
  }
238
241
  }
@@ -5,21 +5,23 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const Generator = require("../Generator");
8
+ const WebAssemblyExportImportedDependency = require("../dependencies/wasm/WebAssemblyExportImportedDependency");
9
+ const WebAssemblyImportDependency = require("../dependencies/wasm/WebAssemblyImportDependency");
10
+ const WebAssemblyInInitialChunkError = require("../errors/WebAssemblyInInitialChunkError");
11
+ const Generator = require("../module/Generator");
9
12
  const {
10
13
  JAVASCRIPT_TYPE,
11
14
  WEBASSEMBLY_TYPE
12
- } = require("../ModuleSourceTypeConstants");
13
- const { WEBASSEMBLY_MODULE_TYPE_SYNC } = require("../ModuleTypeConstants");
14
- const WebAssemblyExportImportedDependency = require("../dependencies/WebAssemblyExportImportedDependency");
15
- const WebAssemblyImportDependency = require("../dependencies/WebAssemblyImportDependency");
15
+ } = require("../module/ModuleSourceTypeConstants");
16
+ const {
17
+ WEBASSEMBLY_MODULE_TYPE_SYNC
18
+ } = require("../module/ModuleTypeConstants");
16
19
  const { compareModulesByFullName } = require("../util/comparators");
17
20
  const lazyModule = require("../util/lazyModule");
18
21
  const preloadModuleType = require("../util/preloadModuleType");
19
- const WebAssemblyInInitialChunkError = require("./WebAssemblyInInitialChunkError");
20
22
 
21
23
  /** @import Compiler from "../Compiler" */
22
- /** @import Module from "../Module" */
24
+ /** @import Module from "../module/Module" */
23
25
 
24
26
  const getWebAssemblyGenerator = lazyModule(() =>
25
27
  require("./WebAssemblyGenerator")
@@ -8,15 +8,15 @@
8
8
  const t = require("@webassemblyjs/ast");
9
9
  const { moduleContextFromModuleAST } = require("@webassemblyjs/ast");
10
10
  const { decode } = require("@webassemblyjs/wasm-parser");
11
- const Parser = require("../Parser");
12
- const StaticExportsDependency = require("../dependencies/StaticExportsDependency");
13
- const WebAssemblyExportImportedDependency = require("../dependencies/WebAssemblyExportImportedDependency");
14
- const WebAssemblyImportDependency = require("../dependencies/WebAssemblyImportDependency");
11
+ const StaticExportsDependency = require("../dependencies/core/StaticExportsDependency");
12
+ const WebAssemblyExportImportedDependency = require("../dependencies/wasm/WebAssemblyExportImportedDependency");
13
+ const WebAssemblyImportDependency = require("../dependencies/wasm/WebAssemblyImportDependency");
14
+ const Parser = require("../module/Parser");
15
15
 
16
16
  /** @import { ModuleImport } from "@webassemblyjs/ast" */
17
- /** @import { BuildInfo, BuildMeta } from "../Module" */
17
+ /** @import { BuildInfo, BuildMeta } from "../module/Module" */
18
18
  /** @import { SyncWasmModuleBuildMeta } from "./SyncWasmModule" */
19
- /** @import { ParserState, PreparsedAst } from "../Parser" */
19
+ /** @import { ParserState, PreparsedAst } from "../module/Parser" */
20
20
 
21
21
  const JS_COMPAT_TYPES = new Set(["i32", "i64", "f32", "f64", "externref"]);
22
22
 
@@ -5,11 +5,12 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const Template = require("../Template");
9
- const WebAssemblyImportDependency = require("../dependencies/WebAssemblyImportDependency");
8
+ const isDependencyKind = require("../graph/isDependencyKind");
9
+ const Template = require("../template/Template");
10
10
 
11
- /** @import Module from "../Module" */
12
- /** @import ModuleGraph from "../ModuleGraph" */
11
+ /** @import WebAssemblyImportDependency from "../dependencies/wasm/WebAssemblyImportDependency" */
12
+ /** @import Module from "../module/Module" */
13
+ /** @import ModuleGraph from "../graph/ModuleGraph" */
13
14
 
14
15
  /**
15
16
  * Defines the used wasm dependency type used by this module.
@@ -33,7 +34,7 @@ const getUsedDependencies = (moduleGraph, module, mangle) => {
33
34
  const array = [];
34
35
  let importIndex = 0;
35
36
  for (const dep of module.dependencies) {
36
- if (dep instanceof WebAssemblyImportDependency) {
37
+ if (isDependencyKind(dep, "webassembly-import")) {
37
38
  if (
38
39
  dep.description.type === "GlobalType" ||
39
40
  moduleGraph.getModule(dep) === null
@@ -42,10 +43,8 @@ const getUsedDependencies = (moduleGraph, module, mangle) => {
42
43
  }
43
44
 
44
45
  const exportName = dep.name;
45
- // TODO add the following 3 lines when removing of ModuleExport is possible
46
- // const importedModule = moduleGraph.getModule(dep);
47
- // const usedName = importedModule && moduleGraph.getExportsInfo(importedModule).getUsedName(exportName, runtime);
48
- // if (usedName !== false) {
46
+ // TODO once ModuleExport can be removed, skip a dependency whose
47
+ // imported module reports `getUsedName(exportName, runtime) === false`.
49
48
  if (mangle) {
50
49
  array.push({
51
50
  dependency: dep,
@@ -5,11 +5,11 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const asyncLib = require("./util/async");
8
+ const asyncLib = require("../util/async");
9
9
 
10
- /** @import MultiCompiler from "./MultiCompiler" */
10
+ /** @import MultiCompiler from "../MultiCompiler" */
11
11
  /** @import Watching from "./Watching" */
12
- /** @import { ErrorCallback } from "./webpack" */
12
+ /** @import { ErrorCallback } from "../webpack" */
13
13
 
14
14
  class MultiWatching {
15
15
  /**
@@ -5,16 +5,49 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const { groupBy } = require("./util/ArrayHelpers");
8
+ const { groupBy } = require("../util/ArrayHelpers");
9
+ const memoize = require("../util/memoize");
10
+
11
+ const getGlobUtils = memoize(() => require("../util/globUtils"));
9
12
 
10
13
  /** @import { TimeInfoEntries } from "watchpack" */
14
+ /** @import Compiler from "../Compiler" */
15
+ /** @import { WatchFileSystem, WatchMethod, Watcher } from "../fs/fs" */
16
+
17
+ /**
18
+ * An absolute path to a directory or file that should be ignored.
19
+ * @inline
20
+ * @absolutePath true
21
+ * @typedef {string} WatchIgnoreAbsolutePath
22
+ */
23
+
24
+ /**
25
+ * A glob matching, at any depth, the directories or files that should be ignored.
26
+ * @since 5.112.0
27
+ * @inline
28
+ * @minLength 1
29
+ * @absolutePath false
30
+ * @typedef {string} WatchIgnoreGlob
31
+ */
32
+
33
+ /**
34
+ * RegExp, absolute path or glob to directories or files that should be ignored.
35
+ * @inline
36
+ * @typedef {RegExp | WatchIgnoreAbsolutePath | WatchIgnoreGlob} WatchIgnoreEntry
37
+ */
38
+
39
+ /**
40
+ * A list of RegExps, absolute paths or globs to directories or files that should be ignored.
41
+ * @minItems 1
42
+ * @inline
43
+ * @typedef {WatchIgnoreEntry[]} WatchIgnorePaths
44
+ */
45
+
11
46
  /**
12
- * @import {
13
- * WatchIgnorePluginOptions
14
- * } from "../declarations/plugins/WatchIgnorePlugin"
47
+ * @schema plugins/WatchIgnorePlugin
48
+ * @typedef {object} WatchIgnorePluginOptions
49
+ * @property {WatchIgnorePaths} paths
15
50
  */
16
- /** @import Compiler from "./Compiler" */
17
- /** @import { WatchFileSystem, WatchMethod, Watcher } from "./util/fs" */
18
51
 
19
52
  const IGNORE_TIME_ENTRY = "ignore";
20
53
 
@@ -27,7 +60,8 @@ class IgnoringWatchFileSystem {
27
60
  constructor(wfs, paths) {
28
61
  /** @type {WatchFileSystem} */
29
62
  this.wfs = wfs;
30
- this.paths = paths;
63
+ const { compileRelativeGlobPaths, createPathGlobRegExp } = getGlobUtils();
64
+ this.paths = compileRelativeGlobPaths(paths, createPathGlobRegExp);
31
65
  }
32
66
 
33
67
  /** @type {WatchMethod} */
@@ -140,14 +174,14 @@ class WatchIgnorePlugin {
140
174
  apply(compiler) {
141
175
  compiler.hooks.validate.tap(PLUGIN_NAME, () => {
142
176
  compiler.validate(
143
- () => require("../schemas/plugins/WatchIgnorePlugin.json"),
177
+ () => require("../../schemas/plugins/WatchIgnorePlugin.json"),
144
178
  this.options,
145
179
  {
146
180
  name: "Watch Ignore Plugin",
147
181
  baseDataPath: "options"
148
182
  },
149
183
  (options) =>
150
- require("../schemas/plugins/WatchIgnorePlugin.check")(options)
184
+ require("../../schemas/plugins/WatchIgnorePlugin.check")(options)
151
185
  );
152
186
  });
153
187
  compiler.hooks.afterEnvironment.tap(PLUGIN_NAME, () => {
@@ -5,20 +5,20 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const Stats = require("./Stats");
8
+ const Stats = require("../stats/Stats");
9
9
 
10
- /** @import { WatchOptions } from "../declarations/WebpackOptions" */
11
- /** @import Compilation from "./Compilation" */
12
- /** @import Compiler from "./Compiler" */
13
- /** @import { Logger } from "./logging/Logger" */
14
- /** @import { TimeInfoEntries, WatchFileSystem, Watcher } from "./util/fs" */
15
- /** @import { ErrorCallback } from "./webpack" */
10
+ /** @import { WatchOptions } from "../../declarations/WebpackOptions" */
11
+ /** @import Compilation from "../Compilation" */
12
+ /** @import Compiler from "../Compiler" */
13
+ /** @import { Logger } from "../logging/Logger" */
14
+ /** @import { TimeInfoEntries, WatchFileSystem, Watcher } from "../fs/fs" */
15
+ /** @import { ErrorCallback } from "../webpack" */
16
16
 
17
17
  /**
18
18
  * Defines the callback type used by this module.
19
19
  * @template T
20
20
  * @template [R=void]
21
- * @typedef {import("./webpack").Callback<T, R>} Callback
21
+ * @typedef {import("../webpack").Callback<T, R>} Callback
22
22
  */
23
23
 
24
24
  /** @typedef {Set<string>} CollectedFiles */
@@ -5,14 +5,16 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const { WEBASSEMBLY_MODULE_TYPE_ASYNC } = require("../ModuleTypeConstants");
9
- const RuntimeGlobals = require("../RuntimeGlobals");
10
- const { usesFullHashDigest } = require("../TemplatedPathPlugin");
8
+ const {
9
+ WEBASSEMBLY_MODULE_TYPE_ASYNC
10
+ } = require("../module/ModuleTypeConstants");
11
+ const RuntimeGlobals = require("../runtime/RuntimeGlobals");
12
+ const { usesFullHashDigest } = require("../template/TemplatedPathPlugin");
13
+ const AsyncWasmCompileRuntimeModule = require("../wasm/AsyncWasmCompileRuntimeModule");
14
+ const AsyncWasmLoadingRuntimeModule = require("../wasm/AsyncWasmLoadingRuntimeModule");
11
15
  const { needsRuntimeFullHash } = require("../wasm/wasmModuleFilename");
12
- const AsyncWasmCompileRuntimeModule = require("../wasm-async/AsyncWasmCompileRuntimeModule");
13
- const AsyncWasmLoadingRuntimeModule = require("../wasm-async/AsyncWasmLoadingRuntimeModule");
14
16
 
15
- /** @import Chunk from "../Chunk" */
17
+ /** @import Chunk from "../graph/Chunk" */
16
18
  /** @import Compiler from "../Compiler" */
17
19
 
18
20
  const PLUGIN_NAME = "FetchCompileAsyncWasmPlugin";
@@ -5,13 +5,15 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const { WEBASSEMBLY_MODULE_TYPE_SYNC } = require("../ModuleTypeConstants");
9
- const RuntimeGlobals = require("../RuntimeGlobals");
10
- const { usesFullHashDigest } = require("../TemplatedPathPlugin");
8
+ const {
9
+ WEBASSEMBLY_MODULE_TYPE_SYNC
10
+ } = require("../module/ModuleTypeConstants");
11
+ const RuntimeGlobals = require("../runtime/RuntimeGlobals");
12
+ const { usesFullHashDigest } = require("../template/TemplatedPathPlugin");
11
13
  const { needsRuntimeFullHash } = require("../wasm/wasmModuleFilename");
12
14
  const WasmChunkLoadingRuntimeModule = require("../wasm-sync/WasmChunkLoadingRuntimeModule");
13
15
 
14
- /** @import Chunk from "../Chunk" */
16
+ /** @import Chunk from "../graph/Chunk" */
15
17
  /** @import Compiler from "../Compiler" */
16
18
 
17
19
  /**
@@ -5,12 +5,12 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const RuntimeGlobals = require("../RuntimeGlobals");
8
+ const RuntimeGlobals = require("../runtime/RuntimeGlobals");
9
9
  const lazyModule = require("../util/lazyModule");
10
10
 
11
- /** @import Chunk from "../Chunk" */
11
+ /** @import Chunk from "../graph/Chunk" */
12
12
  /** @import Compiler from "../Compiler" */
13
- /** @import { RuntimeRequirements } from "../Module" */
13
+ /** @import { RuntimeRequirements } from "../module/Module" */
14
14
 
15
15
  // only a chunk that loads other chunks at runtime emits this
16
16
  const getJsonpChunkLoadingRuntimeModule = lazyModule(() =>
@@ -6,21 +6,21 @@
6
6
 
7
7
  const { SyncWaterfallHook } = require("tapable");
8
8
  /** @import Compilation from "../Compilation" */
9
- const RuntimeGlobals = require("../RuntimeGlobals");
10
- const RuntimeModule = require("../RuntimeModule");
11
- const Template = require("../Template");
12
9
  const {
13
10
  generateJavascriptHMR
14
11
  } = require("../hmr/JavascriptHotModuleReplacementHelper");
15
12
  const chunkHasJs = require("../javascript/JavascriptModulesPlugin").chunkHasJs;
16
13
  const { getInitialChunkIds } = require("../javascript/StartupHelpers");
14
+ const RuntimeGlobals = require("../runtime/RuntimeGlobals");
15
+ const RuntimeModule = require("../runtime/RuntimeModule");
17
16
  const { renderBaseUri } = require("../runtime/baseUri");
17
+ const Template = require("../template/Template");
18
18
  const compileBooleanMatcher = require("../util/compileBooleanMatcher");
19
19
  const createHooksRegistry = require("../util/createHooksRegistry");
20
20
 
21
- /** @import Chunk from "../Chunk" */
22
- /** @import ChunkGraph from "../ChunkGraph" */
23
- /** @import { ReadOnlyRuntimeRequirements } from "../Module" */
21
+ /** @import Chunk from "../graph/Chunk" */
22
+ /** @import ChunkGraph from "../graph/ChunkGraph" */
23
+ /** @import { ReadOnlyRuntimeRequirements } from "../module/Module" */
24
24
 
25
25
  /**
26
26
  * @typedef {object} JsonpCompilationPluginHooks
@@ -12,7 +12,7 @@ const JsonpChunkLoadingRuntimeModule = require("./JsonpChunkLoadingRuntimeModule
12
12
  /** @import Compilation from "../Compilation" */
13
13
  /** @import Compiler from "../Compiler" */
14
14
 
15
- // TODO webpack 6 remove this class
15
+ // TODO in the next major release: remove this class
16
16
  class JsonpTemplatePlugin {
17
17
  /**
18
18
  * Returns hooks.
package/lib/webpack.js CHANGED
@@ -7,11 +7,8 @@
7
7
 
8
8
  const util = require("util");
9
9
  const webpackOptionsSchemaCheck = require("../schemas/WebpackOptions.check");
10
- const webpackOptionsSchema =
11
- /** @type {EXPECTED_ANY} */
12
- (require("../schemas/WebpackOptions.json"));
13
10
  const Compiler = require("./Compiler");
14
- const WebpackOptionsApply = require("./WebpackOptionsApply");
11
+ const WebpackOptionsApply = require("./config/WebpackOptionsApply");
15
12
  const {
16
13
  applyWebpackOptionsBaseDefaults,
17
14
  applyWebpackOptionsDefaults
@@ -23,9 +20,16 @@ const {
23
20
  const NodeEnvironmentPlugin = require("./node/NodeEnvironmentPlugin");
24
21
  const memoize = require("./util/memoize");
25
22
 
26
- const getValidateSchema = memoize(() => require("./validateSchema"));
23
+ const getValidateSchema = memoize(() => require("./config/validateSchema"));
24
+ // Read only to explain a failure the precompiled check already found, so a
25
+ // valid configuration never parses the schema — 498 KB of objects.
26
+ const getWebpackOptionsSchema = memoize(
27
+ () =>
28
+ /** @type {Parameters<typeof import("./config/validateSchema")>[0]} */
29
+ (require("../schemas/WebpackOptions.json"))
30
+ );
27
31
  const getMultiCompiler = memoize(() => require("./MultiCompiler"));
28
- const getProgressPlugin = memoize(() => require("./ProgressPlugin"));
32
+ const getProgressPlugin = memoize(() => require("./logging/ProgressPlugin"));
29
33
 
30
34
  /**
31
35
  * @import {
@@ -41,8 +45,8 @@ const getProgressPlugin = memoize(() => require("./ProgressPlugin"));
41
45
  * MultiWebpackOptions
42
46
  * } from "./MultiCompiler"
43
47
  */
44
- /** @import MultiStats from "./MultiStats" */
45
- /** @import Stats from "./Stats" */
48
+ /** @import MultiStats from "./stats/MultiStats" */
49
+ /** @import Stats from "./stats/Stats" */
46
50
 
47
51
  /** @typedef {(this: Compiler, compiler: Compiler) => void} WebpackPluginFunction */
48
52
  /** @typedef {(compiler: Compiler) => void} WebpackPluginInstanceApplyFunction */
@@ -63,7 +67,9 @@ const isDefaultProgressEnabled = (options) => {
63
67
  if (!progress) return false;
64
68
  if (
65
69
  infrastructureLogging.level === "none" ||
66
- /** @type {EXPECTED_ANY} */ (infrastructureLogging.level) === false
70
+ /** @type {typeof infrastructureLogging.level | false} */ (
71
+ infrastructureLogging.level
72
+ ) === false
67
73
  ) {
68
74
  return false;
69
75
  }
@@ -71,7 +77,7 @@ const isDefaultProgressEnabled = (options) => {
71
77
  };
72
78
 
73
79
  /**
74
- * @param {WebpackOptionsNormalizedWithDefaults} options resolved options
80
+ * @param {WebpackOptionsNormalizedWithDefaults | MultiCompilerOptions} options resolved or multi compiler options
75
81
  * @returns {boolean} true when the user already added a ProgressPlugin
76
82
  */
77
83
  const hasUserProgressPlugin = (options) =>
@@ -129,12 +135,16 @@ const createMultiCompiler = (childOptions, options) => {
129
135
  compilers.length > 0 &&
130
136
  /** @type {WebpackOptionsNormalizedWithDefaults} */ (compilers[0].options);
131
137
  if (firstOptions) {
132
- applyDefaultProgressPlugin(compiler, firstOptions, () =>
133
- compilers.some((c) =>
134
- hasUserProgressPlugin(
135
- /** @type {WebpackOptionsNormalizedWithDefaults} */ (c.options)
138
+ applyDefaultProgressPlugin(
139
+ compiler,
140
+ firstOptions,
141
+ () =>
142
+ hasUserProgressPlugin(options) ||
143
+ compilers.some((c) =>
144
+ hasUserProgressPlugin(
145
+ /** @type {WebpackOptionsNormalizedWithDefaults} */ (c.options)
146
+ )
136
147
  )
137
- )
138
148
  );
139
149
  }
140
150
  return compiler;
@@ -271,10 +281,10 @@ const webpack = (options, callback) => {
271
281
  )
272
282
  ) {
273
283
  getValidateSchema()(
274
- webpackOptionsSchema,
284
+ getWebpackOptionsSchema(),
275
285
  isMultiCompiler
276
286
  ? options.map((options) => (needValidate(options) ? options : {}))
277
- : needValidate(options)
287
+ : needValidate(/** @type {WebpackOptions} */ (options))
278
288
  ? options
279
289
  : {}
280
290
  );
@@ -5,13 +5,13 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const RuntimeGlobals = require("../RuntimeGlobals");
8
+ const RuntimeGlobals = require("../runtime/RuntimeGlobals");
9
9
  const StartupChunkDependenciesPlugin = require("../runtime/StartupChunkDependenciesPlugin");
10
10
  const lazyModule = require("../util/lazyModule");
11
11
 
12
- /** @import Chunk from "../Chunk" */
12
+ /** @import Chunk from "../graph/Chunk" */
13
13
  /** @import Compiler from "../Compiler" */
14
- /** @import { RuntimeRequirements } from "../Module" */
14
+ /** @import { RuntimeRequirements } from "../module/Module" */
15
15
 
16
16
  // only a chunk that loads other chunks at runtime emits this
17
17
  const getImportScriptsChunkLoadingRuntimeModule = lazyModule(() =>