webpack 5.106.1 → 5.106.2

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 (553) hide show
  1. package/lib/APIPlugin.js +3 -1
  2. package/lib/AbstractMethodError.js +10 -1
  3. package/lib/AsyncDependenciesBlock.js +3 -0
  4. package/lib/AsyncDependencyToInitialChunkError.js +6 -1
  5. package/lib/AutomaticPrefetchPlugin.js +6 -1
  6. package/lib/BannerPlugin.js +10 -1
  7. package/lib/Cache.js +26 -1
  8. package/lib/CacheFacade.js +26 -0
  9. package/lib/CaseSensitiveModulesWarning.js +9 -1
  10. package/lib/Chunk.js +46 -0
  11. package/lib/ChunkGraph.js +111 -0
  12. package/lib/ChunkGroup.js +57 -13
  13. package/lib/ChunkTemplate.js +9 -0
  14. package/lib/CleanPlugin.js +14 -1
  15. package/lib/CodeGenerationResults.js +19 -0
  16. package/lib/CommentCompilationWarning.js +6 -0
  17. package/lib/CompatibilityPlugin.js +15 -1
  18. package/lib/Compilation.js +127 -1
  19. package/lib/Compiler.js +37 -4
  20. package/lib/ConcatenationScope.js +24 -1
  21. package/lib/ConditionalInitFragment.js +6 -0
  22. package/lib/ConstPlugin.js +4 -1
  23. package/lib/ContextExclusionPlugin.js +2 -1
  24. package/lib/ContextModule.js +12 -0
  25. package/lib/ContextModuleFactory.js +10 -0
  26. package/lib/ContextReplacementPlugin.js +4 -1
  27. package/lib/CssModule.js +6 -0
  28. package/lib/DefinePlugin.js +20 -7
  29. package/lib/DelegatedModule.js +13 -0
  30. package/lib/DelegatedModuleFactoryPlugin.js +3 -0
  31. package/lib/DelegatedPlugin.js +2 -1
  32. package/lib/DependenciesBlock.js +6 -1
  33. package/lib/Dependency.js +26 -3
  34. package/lib/DependencyTemplate.js +5 -0
  35. package/lib/DependencyTemplates.js +4 -0
  36. package/lib/DllEntryPlugin.js +2 -1
  37. package/lib/DllModule.js +11 -0
  38. package/lib/DllModuleFactory.js +1 -0
  39. package/lib/DllPlugin.js +2 -1
  40. package/lib/DllReferencePlugin.js +11 -6
  41. package/lib/DotenvPlugin.js +3 -0
  42. package/lib/DynamicEntryPlugin.js +3 -1
  43. package/lib/EntryOptionPlugin.js +3 -0
  44. package/lib/EntryPlugin.js +2 -1
  45. package/lib/Entrypoint.js +4 -0
  46. package/lib/EnvironmentPlugin.js +2 -1
  47. package/lib/ErrorHelpers.js +7 -0
  48. package/lib/EvalDevToolModulePlugin.js +3 -1
  49. package/lib/EvalSourceMapDevToolPlugin.js +3 -1
  50. package/lib/ExportsInfo.js +56 -2
  51. package/lib/ExportsInfoApiPlugin.js +2 -1
  52. package/lib/ExternalModule.js +38 -0
  53. package/lib/ExternalModuleFactoryPlugin.js +10 -0
  54. package/lib/ExternalsPlugin.js +2 -1
  55. package/lib/FileSystemInfo.js +105 -0
  56. package/lib/FlagAllModulesAsUsedPlugin.js +2 -1
  57. package/lib/FlagDependencyExportsPlugin.js +4 -1
  58. package/lib/FlagDependencyUsagePlugin.js +5 -1
  59. package/lib/FlagEntryExportAsUsedPlugin.js +2 -1
  60. package/lib/Generator.js +13 -0
  61. package/lib/GraphHelpers.js +3 -0
  62. package/lib/HookWebpackError.js +6 -0
  63. package/lib/HotModuleReplacementPlugin.js +9 -1
  64. package/lib/IgnoreErrorModuleFactory.js +2 -0
  65. package/lib/IgnorePlugin.js +2 -1
  66. package/lib/IgnoreWarningsPlugin.js +2 -1
  67. package/lib/InitFragment.js +10 -0
  68. package/lib/InvalidDependenciesModuleWarning.js +1 -0
  69. package/lib/JavascriptMetaInfoPlugin.js +2 -1
  70. package/lib/LibManifestPlugin.js +4 -1
  71. package/lib/LibraryTemplatePlugin.js +2 -1
  72. package/lib/LoaderOptionsPlugin.js +3 -1
  73. package/lib/LoaderTargetPlugin.js +2 -1
  74. package/lib/MainTemplate.js +15 -0
  75. package/lib/ManifestPlugin.js +9 -2
  76. package/lib/Module.js +82 -1
  77. package/lib/ModuleBuildError.js +3 -0
  78. package/lib/ModuleDependencyWarning.js +1 -0
  79. package/lib/ModuleError.js +2 -0
  80. package/lib/ModuleFactory.js +5 -0
  81. package/lib/ModuleFilenameHelpers.js +3 -0
  82. package/lib/ModuleGraph.js +66 -0
  83. package/lib/ModuleGraphConnection.js +9 -0
  84. package/lib/ModuleInfoHeaderPlugin.js +5 -0
  85. package/lib/ModuleNotFoundError.js +1 -0
  86. package/lib/ModuleParseError.js +3 -0
  87. package/lib/ModuleRestoreError.js +1 -0
  88. package/lib/ModuleSourceTypeConstants.js +1 -0
  89. package/lib/ModuleStoreError.js +1 -0
  90. package/lib/ModuleTemplate.js +8 -0
  91. package/lib/ModuleWarning.js +3 -0
  92. package/lib/MultiCompiler.js +28 -0
  93. package/lib/MultiStats.js +8 -0
  94. package/lib/MultiWatching.js +3 -0
  95. package/lib/NoEmitOnErrorsPlugin.js +1 -1
  96. package/lib/NodeStuffInWebError.js +1 -0
  97. package/lib/NodeStuffPlugin.js +10 -1
  98. package/lib/NormalModule.js +30 -2
  99. package/lib/NormalModuleFactory.js +25 -0
  100. package/lib/NormalModuleReplacementPlugin.js +1 -1
  101. package/lib/NullFactory.js +1 -0
  102. package/lib/OptionsApply.js +1 -0
  103. package/lib/Parser.js +2 -0
  104. package/lib/PlatformPlugin.js +2 -1
  105. package/lib/PrefetchPlugin.js +2 -1
  106. package/lib/ProgressPlugin.js +29 -12
  107. package/lib/ProvidePlugin.js +3 -1
  108. package/lib/RawModule.js +12 -0
  109. package/lib/RecordIdsPlugin.js +8 -0
  110. package/lib/RequestShortener.js +8 -0
  111. package/lib/RequireJsStuffPlugin.js +2 -1
  112. package/lib/ResolverFactory.js +5 -0
  113. package/lib/RuntimeGlobals.js +1 -0
  114. package/lib/RuntimeModule.js +13 -0
  115. package/lib/RuntimePlugin.js +2 -0
  116. package/lib/RuntimeTemplate.js +35 -1
  117. package/lib/SelfModuleFactory.js +2 -0
  118. package/lib/SizeFormatHelpers.js +1 -0
  119. package/lib/SourceMapDevToolModuleOptionsPlugin.js +2 -0
  120. package/lib/SourceMapDevToolPlugin.js +3 -1
  121. package/lib/Stats.js +5 -0
  122. package/lib/Template.js +20 -0
  123. package/lib/TemplatedPathPlugin.js +10 -3
  124. package/lib/UnhandledSchemeError.js +6 -0
  125. package/lib/UnsupportedFeatureWarning.js +1 -0
  126. package/lib/UseStrictPlugin.js +2 -1
  127. package/lib/WarnCaseSensitiveModulesPlugin.js +1 -1
  128. package/lib/WarnDeprecatedOptionPlugin.js +1 -1
  129. package/lib/WarnNoModeSetPlugin.js +1 -1
  130. package/lib/WatchIgnorePlugin.js +4 -1
  131. package/lib/Watching.js +14 -0
  132. package/lib/WebpackError.js +3 -0
  133. package/lib/WebpackIsIncludedPlugin.js +2 -0
  134. package/lib/WebpackOptionsApply.js +1 -0
  135. package/lib/WebpackOptionsDefaulter.js +1 -0
  136. package/lib/asset/AssetBytesGenerator.js +6 -0
  137. package/lib/asset/AssetBytesParser.js +1 -0
  138. package/lib/asset/AssetGenerator.js +20 -2
  139. package/lib/asset/AssetModulesPlugin.js +4 -1
  140. package/lib/asset/AssetParser.js +2 -0
  141. package/lib/asset/AssetSourceGenerator.js +6 -0
  142. package/lib/asset/AssetSourceParser.js +1 -0
  143. package/lib/asset/RawDataUrlModule.js +11 -0
  144. package/lib/async-modules/AsyncModuleHelpers.js +1 -0
  145. package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -0
  146. package/lib/async-modules/InferAsyncModulesPlugin.js +1 -1
  147. package/lib/buildChunkGraph.js +15 -0
  148. package/lib/cache/AddBuildDependenciesPlugin.js +2 -1
  149. package/lib/cache/AddManagedPathsPlugin.js +2 -1
  150. package/lib/cache/IdleFileCachePlugin.js +2 -1
  151. package/lib/cache/MemoryCachePlugin.js +1 -1
  152. package/lib/cache/MemoryWithGcCachePlugin.js +3 -1
  153. package/lib/cache/PackFileCacheStrategy.js +29 -0
  154. package/lib/cache/ResolverCachePlugin.js +10 -1
  155. package/lib/cache/getLazyHashedEtag.js +4 -0
  156. package/lib/cache/mergeEtags.js +2 -0
  157. package/lib/cli.js +30 -0
  158. package/lib/config/browserslistTargetHandler.js +2 -0
  159. package/lib/config/defaults.js +35 -2
  160. package/lib/config/normalization.js +12 -0
  161. package/lib/config/target.js +11 -0
  162. package/lib/container/ContainerEntryDependency.js +2 -0
  163. package/lib/container/ContainerEntryModule.js +12 -0
  164. package/lib/container/ContainerEntryModuleFactory.js +1 -0
  165. package/lib/container/ContainerExposedDependency.js +4 -0
  166. package/lib/container/ContainerPlugin.js +2 -1
  167. package/lib/container/ContainerReferencePlugin.js +2 -1
  168. package/lib/container/FallbackDependency.js +4 -0
  169. package/lib/container/FallbackItemDependency.js +1 -0
  170. package/lib/container/FallbackModule.js +12 -0
  171. package/lib/container/FallbackModuleFactory.js +1 -0
  172. package/lib/container/ModuleFederationPlugin.js +3 -1
  173. package/lib/container/RemoteModule.js +13 -0
  174. package/lib/container/RemoteRuntimeModule.js +1 -0
  175. package/lib/container/RemoteToExternalDependency.js +1 -0
  176. package/lib/container/options.js +7 -0
  177. package/lib/css/CssGenerator.js +35 -14
  178. package/lib/css/CssInjectStyleRuntimeModule.js +1 -0
  179. package/lib/css/CssLoadingRuntimeModule.js +1 -0
  180. package/lib/css/CssMergeStyleSheetsRuntimeModule.js +1 -0
  181. package/lib/css/CssModulesPlugin.js +69 -3
  182. package/lib/css/CssParser.js +59 -1
  183. package/lib/css/walkCssTokens.js +31 -0
  184. package/lib/debug/ProfilingPlugin.js +19 -1
  185. package/lib/dependencies/AMDDefineDependency.js +7 -0
  186. package/lib/dependencies/AMDDefineDependencyParserPlugin.js +12 -0
  187. package/lib/dependencies/AMDPlugin.js +4 -1
  188. package/lib/dependencies/AMDRequireArrayDependency.js +6 -0
  189. package/lib/dependencies/AMDRequireContextDependency.js +3 -0
  190. package/lib/dependencies/AMDRequireDependenciesBlock.js +1 -0
  191. package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +13 -0
  192. package/lib/dependencies/AMDRequireDependency.js +4 -0
  193. package/lib/dependencies/AMDRequireItemDependency.js +1 -0
  194. package/lib/dependencies/AMDRuntimeModules.js +3 -0
  195. package/lib/dependencies/CachedConstDependency.js +6 -1
  196. package/lib/dependencies/CommonJsDependencyHelpers.js +1 -0
  197. package/lib/dependencies/CommonJsExportRequireDependency.js +8 -0
  198. package/lib/dependencies/CommonJsExportsDependency.js +4 -0
  199. package/lib/dependencies/CommonJsExportsParserPlugin.js +8 -0
  200. package/lib/dependencies/CommonJsFullRequireDependency.js +4 -0
  201. package/lib/dependencies/CommonJsImportsParserPlugin.js +20 -0
  202. package/lib/dependencies/CommonJsPlugin.js +4 -1
  203. package/lib/dependencies/CommonJsRequireContextDependency.js +3 -0
  204. package/lib/dependencies/CommonJsRequireDependency.js +3 -0
  205. package/lib/dependencies/CommonJsSelfReferenceDependency.js +5 -0
  206. package/lib/dependencies/ConstDependency.js +6 -1
  207. package/lib/dependencies/ContextDependency.js +8 -1
  208. package/lib/dependencies/ContextDependencyHelpers.js +3 -0
  209. package/lib/dependencies/ContextDependencyTemplateAsId.js +1 -0
  210. package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +1 -0
  211. package/lib/dependencies/ContextElementDependency.js +4 -0
  212. package/lib/dependencies/CreateRequireParserPlugin.js +6 -0
  213. package/lib/dependencies/CreateScriptUrlDependency.js +4 -0
  214. package/lib/dependencies/CriticalDependencyWarning.js +1 -0
  215. package/lib/dependencies/CssIcssExportDependency.js +10 -2
  216. package/lib/dependencies/CssIcssImportDependency.js +4 -1
  217. package/lib/dependencies/CssIcssSymbolDependency.js +5 -1
  218. package/lib/dependencies/CssImportDependency.js +4 -0
  219. package/lib/dependencies/CssUrlDependency.js +7 -0
  220. package/lib/dependencies/DelegatedSourceDependency.js +1 -0
  221. package/lib/dependencies/DllEntryDependency.js +3 -0
  222. package/lib/dependencies/DynamicExports.js +5 -0
  223. package/lib/dependencies/EntryDependency.js +1 -0
  224. package/lib/dependencies/ExportsInfoDependency.js +6 -0
  225. package/lib/dependencies/ExternalModuleDependency.js +5 -0
  226. package/lib/dependencies/ExternalModuleInitFragment.js +3 -0
  227. package/lib/dependencies/ExternalModuleInitFragmentDependency.js +4 -0
  228. package/lib/dependencies/HarmonyAcceptDependency.js +6 -0
  229. package/lib/dependencies/HarmonyAcceptImportDependency.js +1 -0
  230. package/lib/dependencies/HarmonyCompatibilityDependency.js +1 -0
  231. package/lib/dependencies/HarmonyDetectionParserPlugin.js +3 -0
  232. package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +4 -0
  233. package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +2 -0
  234. package/lib/dependencies/HarmonyExportExpressionDependency.js +5 -0
  235. package/lib/dependencies/HarmonyExportHeaderDependency.js +4 -0
  236. package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +33 -2
  237. package/lib/dependencies/HarmonyExportInitFragment.js +6 -0
  238. package/lib/dependencies/HarmonyExportSpecifierDependency.js +5 -0
  239. package/lib/dependencies/HarmonyExports.js +2 -0
  240. package/lib/dependencies/HarmonyImportDependency.js +11 -0
  241. package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +9 -0
  242. package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -0
  243. package/lib/dependencies/HarmonyImportSpecifierDependency.js +17 -2
  244. package/lib/dependencies/HarmonyModulesPlugin.js +4 -1
  245. package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -0
  246. package/lib/dependencies/ImportContextDependency.js +4 -0
  247. package/lib/dependencies/ImportDependency.js +5 -0
  248. package/lib/dependencies/ImportEagerDependency.js +2 -0
  249. package/lib/dependencies/ImportMetaContextDependency.js +1 -0
  250. package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +3 -0
  251. package/lib/dependencies/ImportMetaContextPlugin.js +2 -1
  252. package/lib/dependencies/ImportMetaHotAcceptDependency.js +1 -0
  253. package/lib/dependencies/ImportMetaHotDeclineDependency.js +1 -0
  254. package/lib/dependencies/ImportMetaPlugin.js +6 -0
  255. package/lib/dependencies/ImportParserPlugin.js +7 -0
  256. package/lib/dependencies/ImportPhase.js +6 -2
  257. package/lib/dependencies/ImportPlugin.js +2 -1
  258. package/lib/dependencies/ImportWeakDependency.js +2 -0
  259. package/lib/dependencies/JsonExportsDependency.js +6 -1
  260. package/lib/dependencies/LoaderDependency.js +2 -0
  261. package/lib/dependencies/LoaderImportDependency.js +2 -0
  262. package/lib/dependencies/LoaderPlugin.js +4 -1
  263. package/lib/dependencies/LocalModule.js +4 -0
  264. package/lib/dependencies/LocalModuleDependency.js +4 -0
  265. package/lib/dependencies/LocalModulesHelpers.js +3 -0
  266. package/lib/dependencies/ModuleDecoratorDependency.js +7 -1
  267. package/lib/dependencies/ModuleDependency.js +7 -0
  268. package/lib/dependencies/ModuleDependencyTemplateAsId.js +1 -0
  269. package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +1 -0
  270. package/lib/dependencies/ModuleHotAcceptDependency.js +1 -0
  271. package/lib/dependencies/ModuleHotDeclineDependency.js +1 -0
  272. package/lib/dependencies/ModuleInitFragmentDependency.js +4 -0
  273. package/lib/dependencies/NullDependency.js +2 -0
  274. package/lib/dependencies/PrefetchDependency.js +1 -0
  275. package/lib/dependencies/ProvidedDependency.js +6 -1
  276. package/lib/dependencies/PureExpressionDependency.js +7 -1
  277. package/lib/dependencies/RequireContextDependency.js +1 -0
  278. package/lib/dependencies/RequireContextDependencyParserPlugin.js +1 -0
  279. package/lib/dependencies/RequireContextPlugin.js +2 -1
  280. package/lib/dependencies/RequireEnsureDependenciesBlock.js +1 -0
  281. package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +1 -0
  282. package/lib/dependencies/RequireEnsureDependency.js +4 -0
  283. package/lib/dependencies/RequireEnsureItemDependency.js +1 -0
  284. package/lib/dependencies/RequireEnsurePlugin.js +2 -1
  285. package/lib/dependencies/RequireHeaderDependency.js +4 -0
  286. package/lib/dependencies/RequireIncludeDependency.js +2 -0
  287. package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +3 -0
  288. package/lib/dependencies/RequireIncludePlugin.js +2 -1
  289. package/lib/dependencies/RequireResolveContextDependency.js +3 -0
  290. package/lib/dependencies/RequireResolveDependency.js +1 -0
  291. package/lib/dependencies/RequireResolveHeaderDependency.js +5 -0
  292. package/lib/dependencies/RuntimeRequirementsDependency.js +5 -1
  293. package/lib/dependencies/StaticExportsDependency.js +3 -0
  294. package/lib/dependencies/SystemPlugin.js +4 -1
  295. package/lib/dependencies/SystemRuntimeModule.js +1 -0
  296. package/lib/dependencies/URLContextDependency.js +3 -0
  297. package/lib/dependencies/URLDependency.js +6 -0
  298. package/lib/dependencies/URLPlugin.js +2 -0
  299. package/lib/dependencies/UnsupportedDependency.js +4 -0
  300. package/lib/dependencies/WebAssemblyExportImportedDependency.js +4 -0
  301. package/lib/dependencies/WebAssemblyImportDependency.js +4 -1
  302. package/lib/dependencies/WebpackIsIncludedDependency.js +2 -0
  303. package/lib/dependencies/WorkerDependency.js +6 -1
  304. package/lib/dependencies/WorkerPlugin.js +9 -1
  305. package/lib/dependencies/getFunctionExpression.js +1 -0
  306. package/lib/dependencies/processExportInfo.js +1 -0
  307. package/lib/electron/ElectronTargetPlugin.js +2 -1
  308. package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -0
  309. package/lib/esm/ModuleChunkFormatPlugin.js +5 -1
  310. package/lib/esm/ModuleChunkLoadingPlugin.js +3 -1
  311. package/lib/esm/ModuleChunkLoadingRuntimeModule.js +5 -0
  312. package/lib/formatLocation.js +2 -0
  313. package/lib/hmr/HotModuleReplacementRuntimeModule.js +1 -0
  314. package/lib/hmr/JavascriptHotModuleReplacementHelper.js +1 -0
  315. package/lib/hmr/LazyCompilationPlugin.js +20 -1
  316. package/lib/hmr/lazyCompilationBackend.js +2 -0
  317. package/lib/ids/ChunkModuleIdRangePlugin.js +3 -1
  318. package/lib/ids/DeterministicChunkIdsPlugin.js +3 -1
  319. package/lib/ids/DeterministicModuleIdsPlugin.js +3 -1
  320. package/lib/ids/HashedModuleIdsPlugin.js +2 -1
  321. package/lib/ids/IdHelpers.js +20 -0
  322. package/lib/ids/NamedChunkIdsPlugin.js +3 -1
  323. package/lib/ids/NamedModuleIdsPlugin.js +3 -1
  324. package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
  325. package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
  326. package/lib/ids/OccurrenceChunkIdsPlugin.js +2 -1
  327. package/lib/ids/OccurrenceModuleIdsPlugin.js +4 -1
  328. package/lib/ids/SyncModuleIdsPlugin.js +3 -1
  329. package/lib/index.js +5 -0
  330. package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +1 -1
  331. package/lib/javascript/BasicEvaluatedExpression.js +4 -2
  332. package/lib/javascript/ChunkFormatHelpers.js +2 -1
  333. package/lib/javascript/ChunkHelpers.js +1 -0
  334. package/lib/javascript/CommonJsChunkFormatPlugin.js +1 -1
  335. package/lib/javascript/EnableChunkLoadingPlugin.js +5 -1
  336. package/lib/javascript/JavascriptGenerator.js +10 -0
  337. package/lib/javascript/JavascriptModulesPlugin.js +23 -1
  338. package/lib/javascript/JavascriptParser.js +163 -0
  339. package/lib/javascript/JavascriptParserHelpers.js +6 -0
  340. package/lib/javascript/StartupHelpers.js +5 -0
  341. package/lib/json/JsonData.js +5 -0
  342. package/lib/json/JsonGenerator.js +21 -0
  343. package/lib/json/JsonModulesPlugin.js +1 -1
  344. package/lib/json/JsonParser.js +8 -10
  345. package/lib/library/AbstractLibraryPlugin.js +16 -1
  346. package/lib/library/AmdLibraryPlugin.js +8 -0
  347. package/lib/library/AssignLibraryPlugin.js +16 -0
  348. package/lib/library/EnableLibraryPlugin.js +7 -1
  349. package/lib/library/ExportPropertyLibraryPlugin.js +9 -0
  350. package/lib/library/JsonpLibraryPlugin.js +8 -0
  351. package/lib/library/ModuleLibraryPlugin.js +12 -1
  352. package/lib/library/SystemLibraryPlugin.js +8 -0
  353. package/lib/library/UmdLibraryPlugin.js +16 -0
  354. package/lib/logging/Logger.js +17 -0
  355. package/lib/logging/createConsoleLogger.js +7 -0
  356. package/lib/logging/runtime.js +2 -0
  357. package/lib/logging/truncateArgs.js +2 -0
  358. package/lib/node/CommonJsChunkLoadingPlugin.js +5 -1
  359. package/lib/node/NodeEnvironmentPlugin.js +3 -1
  360. package/lib/node/NodeSourcePlugin.js +1 -1
  361. package/lib/node/NodeTargetPlugin.js +2 -1
  362. package/lib/node/NodeTemplatePlugin.js +3 -1
  363. package/lib/node/NodeWatchFileSystem.js +2 -0
  364. package/lib/node/ReadFileChunkLoadingRuntimeModule.js +3 -0
  365. package/lib/node/ReadFileCompileAsyncWasmPlugin.js +4 -1
  366. package/lib/node/ReadFileCompileWasmPlugin.js +4 -1
  367. package/lib/node/RequireChunkLoadingRuntimeModule.js +3 -0
  368. package/lib/node/nodeConsole.js +3 -0
  369. package/lib/optimize/AggressiveMergingPlugin.js +3 -1
  370. package/lib/optimize/AggressiveSplittingPlugin.js +6 -1
  371. package/lib/optimize/ConcatenatedModule.js +11 -0
  372. package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -1
  373. package/lib/optimize/FlagIncludedChunksPlugin.js +2 -1
  374. package/lib/optimize/InnerGraph.js +15 -0
  375. package/lib/optimize/InnerGraphPlugin.js +3 -1
  376. package/lib/optimize/LimitChunkCountPlugin.js +9 -0
  377. package/lib/optimize/MangleExportsPlugin.js +5 -1
  378. package/lib/optimize/MergeDuplicateChunksPlugin.js +2 -0
  379. package/lib/optimize/MinChunkSizePlugin.js +2 -1
  380. package/lib/optimize/MinMaxSizeWarning.js +1 -0
  381. package/lib/optimize/ModuleConcatenationPlugin.js +21 -1
  382. package/lib/optimize/RealContentHashPlugin.js +16 -1
  383. package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -1
  384. package/lib/optimize/RemoveParentModulesPlugin.js +3 -1
  385. package/lib/optimize/RuntimeChunkPlugin.js +2 -1
  386. package/lib/optimize/SideEffectsFlagPlugin.js +7 -1
  387. package/lib/optimize/SplitChunksPlugin.js +49 -1
  388. package/lib/performance/AssetsOverSizeLimitWarning.js +1 -0
  389. package/lib/performance/EntrypointsOverSizeLimitWarning.js +1 -0
  390. package/lib/performance/SizeLimitsPlugin.js +7 -1
  391. package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +1 -0
  392. package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +6 -0
  393. package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +1 -0
  394. package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +1 -0
  395. package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +1 -0
  396. package/lib/rules/BasicEffectRulePlugin.js +3 -0
  397. package/lib/rules/BasicMatcherRulePlugin.js +3 -0
  398. package/lib/rules/ObjectMatcherRulePlugin.js +3 -0
  399. package/lib/rules/RuleSetCompiler.js +18 -0
  400. package/lib/rules/UseEffectRulePlugin.js +6 -0
  401. package/lib/runtime/AsyncModuleRuntimeModule.js +1 -0
  402. package/lib/runtime/AutoPublicPathRuntimeModule.js +1 -0
  403. package/lib/runtime/BaseUriRuntimeModule.js +1 -0
  404. package/lib/runtime/ChunkNameRuntimeModule.js +1 -0
  405. package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +1 -0
  406. package/lib/runtime/CompatRuntimeModule.js +2 -0
  407. package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +1 -0
  408. package/lib/runtime/CreateScriptRuntimeModule.js +1 -0
  409. package/lib/runtime/CreateScriptUrlRuntimeModule.js +1 -0
  410. package/lib/runtime/DefinePropertyGettersRuntimeModule.js +1 -0
  411. package/lib/runtime/EnsureChunkRuntimeModule.js +1 -0
  412. package/lib/runtime/GetChunkFilenameRuntimeModule.js +1 -0
  413. package/lib/runtime/GetFullHashRuntimeModule.js +1 -0
  414. package/lib/runtime/GetMainFilenameRuntimeModule.js +1 -0
  415. package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +1 -0
  416. package/lib/runtime/GlobalRuntimeModule.js +1 -0
  417. package/lib/runtime/HasOwnPropertyRuntimeModule.js +1 -0
  418. package/lib/runtime/HelperRuntimeModule.js +5 -0
  419. package/lib/runtime/LoadScriptRuntimeModule.js +1 -0
  420. package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +2 -0
  421. package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +1 -0
  422. package/lib/runtime/NonceRuntimeModule.js +1 -0
  423. package/lib/runtime/OnChunksLoadedRuntimeModule.js +1 -0
  424. package/lib/runtime/PublicPathRuntimeModule.js +1 -0
  425. package/lib/runtime/RelativeUrlRuntimeModule.js +1 -0
  426. package/lib/runtime/RuntimeIdRuntimeModule.js +1 -0
  427. package/lib/runtime/StartupChunkDependenciesPlugin.js +13 -1
  428. package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +1 -0
  429. package/lib/runtime/StartupEntrypointRuntimeModule.js +1 -0
  430. package/lib/runtime/SystemContextRuntimeModule.js +1 -0
  431. package/lib/runtime/ToBinaryRuntimeModule.js +1 -0
  432. package/lib/schemes/DataUriPlugin.js +1 -1
  433. package/lib/schemes/FileUriPlugin.js +1 -1
  434. package/lib/schemes/HttpUriPlugin.js +43 -1
  435. package/lib/schemes/VirtualUrlPlugin.js +6 -1
  436. package/lib/serialization/AggregateErrorSerializer.js +2 -0
  437. package/lib/serialization/ArraySerializer.js +2 -0
  438. package/lib/serialization/BinaryMiddleware.js +20 -1
  439. package/lib/serialization/DateObjectSerializer.js +2 -0
  440. package/lib/serialization/ErrorObjectSerializer.js +3 -0
  441. package/lib/serialization/FileMiddleware.js +21 -0
  442. package/lib/serialization/MapObjectSerializer.js +2 -0
  443. package/lib/serialization/NullPrototypeObjectSerializer.js +2 -0
  444. package/lib/serialization/ObjectMiddleware.js +23 -0
  445. package/lib/serialization/PlainObjectSerializer.js +7 -0
  446. package/lib/serialization/RegExpObjectSerializer.js +2 -0
  447. package/lib/serialization/Serializer.js +5 -0
  448. package/lib/serialization/SerializerMiddleware.js +12 -0
  449. package/lib/serialization/SetObjectSerializer.js +2 -0
  450. package/lib/serialization/SingleItemMiddleware.js +3 -0
  451. package/lib/sharing/ConsumeSharedFallbackDependency.js +1 -0
  452. package/lib/sharing/ConsumeSharedModule.js +15 -0
  453. package/lib/sharing/ConsumeSharedPlugin.js +6 -1
  454. package/lib/sharing/ConsumeSharedRuntimeModule.js +1 -0
  455. package/lib/sharing/ProvideForSharedDependency.js +1 -0
  456. package/lib/sharing/ProvideSharedDependency.js +4 -0
  457. package/lib/sharing/ProvideSharedModule.js +11 -0
  458. package/lib/sharing/ProvideSharedModuleFactory.js +1 -0
  459. package/lib/sharing/ProvideSharedPlugin.js +4 -1
  460. package/lib/sharing/SharePlugin.js +2 -1
  461. package/lib/sharing/ShareRuntimeModule.js +1 -0
  462. package/lib/sharing/resolveMatchedConfigs.js +3 -0
  463. package/lib/sharing/utils.js +8 -0
  464. package/lib/stats/DefaultStatsFactoryPlugin.js +56 -1
  465. package/lib/stats/DefaultStatsPresetPlugin.js +11 -1
  466. package/lib/stats/DefaultStatsPrinterPlugin.js +37 -1
  467. package/lib/stats/StatsFactory.js +12 -0
  468. package/lib/stats/StatsPrinter.js +7 -0
  469. package/lib/url/URLParserPlugin.js +6 -0
  470. package/lib/util/AppendOnlyStackedSet.js +15 -0
  471. package/lib/util/ArrayHelpers.js +1 -0
  472. package/lib/util/ArrayQueue.js +10 -5
  473. package/lib/util/AsyncQueue.js +20 -0
  474. package/lib/util/IterableHelpers.js +3 -0
  475. package/lib/util/LazyBucketSortedSet.js +21 -0
  476. package/lib/util/LazySet.js +39 -0
  477. package/lib/util/ParallelismFactorCalculator.js +1 -0
  478. package/lib/util/Queue.js +6 -3
  479. package/lib/util/Semaphore.js +14 -1
  480. package/lib/util/SetHelpers.js +3 -0
  481. package/lib/util/SortableSet.js +6 -0
  482. package/lib/util/StackedCacheMap.js +20 -3
  483. package/lib/util/StackedMap.js +45 -0
  484. package/lib/util/StringXor.js +1 -1
  485. package/lib/util/TupleQueue.js +7 -3
  486. package/lib/util/TupleSet.js +13 -0
  487. package/lib/util/URLAbsoluteSpecifier.js +1 -0
  488. package/lib/util/WeakTupleMap.js +33 -0
  489. package/lib/util/binarySearchBounds.js +1 -0
  490. package/lib/util/cleverMerge.js +17 -0
  491. package/lib/util/comparators.js +31 -0
  492. package/lib/util/compileBooleanMatcher.js +9 -0
  493. package/lib/util/concatenate.js +6 -0
  494. package/lib/util/conventions.js +4 -0
  495. package/lib/util/dataURL.js +1 -0
  496. package/lib/util/deprecation.js +19 -0
  497. package/lib/util/deterministicGrouping.js +20 -0
  498. package/lib/util/extractSourceMap.js +1 -0
  499. package/lib/util/extractUrlAndGlobal.js +1 -0
  500. package/lib/util/findGraphRoots.js +5 -0
  501. package/lib/util/fs.js +63 -0
  502. package/lib/util/generateDebugId.js +1 -0
  503. package/lib/util/hash/BatchedHash.js +1 -0
  504. package/lib/util/hash/BulkUpdateHash.js +1 -0
  505. package/lib/util/hash/hash-digest.js +8 -0
  506. package/lib/util/hash/wasm-hash.js +5 -0
  507. package/lib/util/identifier.js +19 -0
  508. package/lib/util/magicComment.js +1 -0
  509. package/lib/util/makeSerializable.js +6 -0
  510. package/lib/util/memoize.js +2 -0
  511. package/lib/util/mimeTypes.js +176 -0
  512. package/lib/util/nonNumericOnlyHash.js +1 -0
  513. package/lib/util/parseJson.js +112 -0
  514. package/lib/util/processAsyncTree.js +8 -0
  515. package/lib/util/property.js +1 -0
  516. package/lib/util/registerExternalSerializer.js +20 -0
  517. package/lib/util/removeBOM.js +1 -0
  518. package/lib/util/runtime.js +32 -0
  519. package/lib/util/semver.js +15 -0
  520. package/lib/util/serialization.js +2 -0
  521. package/lib/util/smartGrouping.js +8 -0
  522. package/lib/util/source.js +2 -0
  523. package/lib/validateSchema.js +1 -0
  524. package/lib/wasm/EnableWasmLoadingPlugin.js +15 -1
  525. package/lib/wasm-async/AsyncWasmCompileRuntimeModule.js +1 -0
  526. package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +1 -0
  527. package/lib/wasm-async/AsyncWebAssemblyGenerator.js +6 -0
  528. package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +5 -0
  529. package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +10 -1
  530. package/lib/wasm-async/AsyncWebAssemblyParser.js +1 -0
  531. package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +12 -1
  532. package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +1 -0
  533. package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +1 -0
  534. package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +1 -1
  535. package/lib/wasm-sync/WebAssemblyGenerator.js +26 -1
  536. package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +2 -0
  537. package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +4 -0
  538. package/lib/wasm-sync/WebAssemblyModulesPlugin.js +10 -1
  539. package/lib/wasm-sync/WebAssemblyParser.js +2 -0
  540. package/lib/wasm-sync/WebAssemblyUtils.js +2 -0
  541. package/lib/web/FetchCompileAsyncWasmPlugin.js +10 -1
  542. package/lib/web/FetchCompileWasmPlugin.js +13 -1
  543. package/lib/web/JsonpChunkLoadingPlugin.js +11 -1
  544. package/lib/web/JsonpChunkLoadingRuntimeModule.js +1 -0
  545. package/lib/web/JsonpTemplatePlugin.js +2 -1
  546. package/lib/webpack.js +10 -0
  547. package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +10 -1
  548. package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +1 -0
  549. package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
  550. package/package.json +12 -14
  551. package/schemas/WebpackOptions.check.js +1 -1
  552. package/schemas/WebpackOptions.json +44 -55
  553. package/types.d.ts +4594 -331
@@ -75,6 +75,7 @@ const { register } = require("./util/serialization");
75
75
  /** @typedef {ImportDependencyMeta | CssImportDependencyMeta | AssetDependencyMeta} DependencyMeta */
76
76
 
77
77
  /**
78
+ * Defines the source data type used by this module.
78
79
  * @typedef {object} SourceData
79
80
  * @property {boolean=} iife
80
81
  * @property {string=} init
@@ -98,6 +99,7 @@ const RUNTIME_REQUIREMENTS_FOR_MODULE = new Set([
98
99
  const EMPTY_RUNTIME_REQUIREMENTS = new Set();
99
100
 
100
101
  /**
102
+ * Gets source for global variable external.
101
103
  * @param {string | string[]} variableName the variable name or path
102
104
  * @param {string} type the module system
103
105
  * @returns {SourceData} the generated source
@@ -121,6 +123,7 @@ const getSourceForGlobalVariableExternal = (variableName, type) => {
121
123
  /** @typedef {string | string[]} ModuleAndSpecifiers */
122
124
 
123
125
  /**
126
+ * Gets source for common js external.
124
127
  * @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
125
128
  * @returns {SourceData} the generated source
126
129
  */
@@ -140,6 +143,7 @@ const getSourceForCommonJsExternal = (moduleAndSpecifiers) => {
140
143
  };
141
144
 
142
145
  /**
146
+ * Gets external module node commonjs init fragment.
143
147
  * @param {RuntimeTemplate} runtimeTemplate the runtime template
144
148
  * @returns {InitFragment<ChunkRenderContext>} code
145
149
  */
@@ -157,6 +161,7 @@ const getExternalModuleNodeCommonjsInitFragment = (runtimeTemplate) => {
157
161
  };
158
162
 
159
163
  /**
164
+ * Gets source for common js external in node module.
160
165
  * @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
161
166
  * @param {RuntimeTemplate} runtimeTemplate the runtime template
162
167
  * @returns {SourceData} the generated source
@@ -186,6 +191,7 @@ const getSourceForCommonJsExternalInNodeModule = (
186
191
  };
187
192
 
188
193
  /**
194
+ * Gets source for import external.
189
195
  * @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
190
196
  * @param {RuntimeTemplate} runtimeTemplate the runtime template
191
197
  * @param {ImportDependencyMeta=} dependencyMeta the dependency meta
@@ -240,6 +246,7 @@ const getSourceForImportExternal = (
240
246
  };
241
247
 
242
248
  /**
249
+ * Import assertion replacer.
243
250
  * @param {string} key key
244
251
  * @param {ImportAttributes | string | boolean | undefined} value value
245
252
  * @returns {ImportAttributes | string | boolean | undefined} replaced value
@@ -253,10 +260,12 @@ const importAssertionReplacer = (key, value) => {
253
260
  };
254
261
 
255
262
  /**
263
+ * Represents ModuleExternalInitFragment.
256
264
  * @extends {InitFragment<GenerateContext>}
257
265
  */
258
266
  class ModuleExternalInitFragment extends InitFragment {
259
267
  /**
268
+ * Creates an instance of ModuleExternalInitFragment.
260
269
  * @param {string} request import source
261
270
  * @param {Imported} imported the imported specifiers
262
271
  * @param {string=} ident recomputed ident
@@ -294,6 +303,7 @@ class ModuleExternalInitFragment extends InitFragment {
294
303
  }
295
304
 
296
305
  /**
306
+ * Returns imported.
297
307
  * @returns {Imported} imported
298
308
  */
299
309
  getImported() {
@@ -301,6 +311,7 @@ class ModuleExternalInitFragment extends InitFragment {
301
311
  }
302
312
 
303
313
  /**
314
+ * Updates imported using the provided imported.
304
315
  * @param {Imported} imported imported
305
316
  */
306
317
  setImported(imported) {
@@ -308,6 +319,7 @@ class ModuleExternalInitFragment extends InitFragment {
308
319
  }
309
320
 
310
321
  /**
322
+ * Returns the source code that will be included as initialization code.
311
323
  * @param {GenerateContext} context context
312
324
  * @returns {string | Source | undefined} the source code that will be included as initialization code
313
325
  */
@@ -355,6 +367,7 @@ class ModuleExternalInitFragment extends InitFragment {
355
367
  }
356
368
 
357
369
  /**
370
+ * Returns identifier.
358
371
  * @param {string} ident ident
359
372
  * @returns {string} identifier
360
373
  */
@@ -363,6 +376,7 @@ class ModuleExternalInitFragment extends InitFragment {
363
376
  }
364
377
 
365
378
  /**
379
+ * Returns normalized imported.
366
380
  * @param {Imported} imported imported
367
381
  * @returns {Imported} normalized imported
368
382
  */
@@ -395,6 +409,7 @@ register(
395
409
  );
396
410
 
397
411
  /**
412
+ * Generates module remapping.
398
413
  * @param {string} input input
399
414
  * @param {ExportsInfo} exportsInfo the exports info
400
415
  * @param {RuntimeSpec=} runtime the runtime
@@ -437,6 +452,7 @@ const generateModuleRemapping = (
437
452
  };
438
453
 
439
454
  /**
455
+ * Gets source for module external.
440
456
  * @param {ModuleAndSpecifiers} moduleAndSpecifiers the module request
441
457
  * @param {ExportsInfo} exportsInfo exports info of this module
442
458
  * @param {RuntimeSpec} runtime the runtime
@@ -530,6 +546,7 @@ const getSourceForModuleExternal = (
530
546
  };
531
547
 
532
548
  /**
549
+ * Gets source for script external.
533
550
  * @param {string | string[]} urlAndGlobal the script request
534
551
  * @param {RuntimeTemplate} runtimeTemplate the runtime template
535
552
  * @returns {SourceData} the generated source
@@ -567,6 +584,7 @@ const getSourceForScriptExternal = (urlAndGlobal, runtimeTemplate) => {
567
584
  };
568
585
 
569
586
  /**
587
+ * Checks external variable.
570
588
  * @param {string} variableName the variable name to check
571
589
  * @param {string} request the request path
572
590
  * @param {RuntimeTemplate} runtimeTemplate the runtime template
@@ -578,6 +596,7 @@ const checkExternalVariable = (variableName, request, runtimeTemplate) =>
578
596
  )} }\n`;
579
597
 
580
598
  /**
599
+ * Gets source for amd or umd external.
581
600
  * @param {ModuleId | string} id the module id
582
601
  * @param {boolean} optional true, if the module is optional
583
602
  * @param {string | string[]} request the request path
@@ -606,6 +625,7 @@ const getSourceForAmdOrUmdExternal = (
606
625
  };
607
626
 
608
627
  /**
628
+ * Gets source for default case.
609
629
  * @param {boolean} optional true, if the module is optional
610
630
  * @param {string | string[]} request the request path
611
631
  * @param {RuntimeTemplate} runtimeTemplate the runtime template
@@ -631,6 +651,7 @@ const getSourceForDefaultCase = (optional, request, runtimeTemplate) => {
631
651
  /** @typedef {string | string[] | RequestRecord} ExternalModuleRequest */
632
652
 
633
653
  /**
654
+ * Defines the external module hooks type used by this module.
634
655
  * @typedef {object} ExternalModuleHooks
635
656
  * @property {SyncBailHook<[Chunk, Compilation], boolean>} chunkCondition
636
657
  */
@@ -640,6 +661,7 @@ const compilationHooksMap = new WeakMap();
640
661
 
641
662
  class ExternalModule extends Module {
642
663
  /**
664
+ * Creates an instance of ExternalModule.
643
665
  * @param {ExternalModuleRequest} request request
644
666
  * @param {ExternalsType} type type
645
667
  * @param {string} userRequest user request
@@ -660,6 +682,7 @@ class ExternalModule extends Module {
660
682
  }
661
683
 
662
684
  /**
685
+ * Returns the attached hooks.
663
686
  * @param {Compilation} compilation the compilation
664
687
  * @returns {ExternalModuleHooks} the attached hooks
665
688
  */
@@ -675,6 +698,7 @@ class ExternalModule extends Module {
675
698
  }
676
699
 
677
700
  /**
701
+ * Returns the source types this module can generate.
678
702
  * @returns {SourceTypes} types available (do not mutate)
679
703
  */
680
704
  getSourceTypes() {
@@ -693,6 +717,7 @@ class ExternalModule extends Module {
693
717
  }
694
718
 
695
719
  /**
720
+ * Gets the library identifier.
696
721
  * @param {LibIdentOptions} options options
697
722
  * @returns {LibIdent | null} an identifier for library inclusion
698
723
  */
@@ -701,6 +726,7 @@ class ExternalModule extends Module {
701
726
  }
702
727
 
703
728
  /**
729
+ * Returns true if the module can be placed in the chunk.
704
730
  * @param {Chunk} chunk the chunk which condition should be checked
705
731
  * @param {Compilation} compilation the compilation
706
732
  * @returns {boolean} true if the module can be placed in the chunk
@@ -721,6 +747,7 @@ class ExternalModule extends Module {
721
747
  }
722
748
 
723
749
  /**
750
+ * Returns the unique identifier used to reference this module.
724
751
  * @returns {string} a unique identifier of the module
725
752
  */
726
753
  identifier() {
@@ -728,6 +755,7 @@ class ExternalModule extends Module {
728
755
  }
729
756
 
730
757
  /**
758
+ * Returns a human-readable identifier for this module.
731
759
  * @param {RequestShortener} requestShortener the request shortener
732
760
  * @returns {string} a user readable identifier of the module
733
761
  */
@@ -736,6 +764,7 @@ class ExternalModule extends Module {
736
764
  }
737
765
 
738
766
  /**
767
+ * Checks whether the module needs to be rebuilt for the current build state.
739
768
  * @param {NeedBuildContext} context context info
740
769
  * @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
741
770
  * @returns {void}
@@ -745,6 +774,7 @@ class ExternalModule extends Module {
745
774
  }
746
775
 
747
776
  /**
777
+ * Builds the module using the provided compilation context.
748
778
  * @param {WebpackOptions} options webpack options
749
779
  * @param {Compilation} compilation the compilation
750
780
  * @param {ResolverWithOptions} resolver the resolver
@@ -838,6 +868,7 @@ class ExternalModule extends Module {
838
868
  }
839
869
 
840
870
  /**
871
+ * Returns the reason this module cannot be concatenated, when one exists.
841
872
  * @param {ConcatenationBailoutReasonContext} context context
842
873
  * @returns {string | undefined} reason why this module can't be concatenated, undefined when it can be concatenated
843
874
  */
@@ -855,6 +886,7 @@ class ExternalModule extends Module {
855
886
  }
856
887
 
857
888
  /**
889
+ * Get request and external type.
858
890
  * @private
859
891
  * @returns {{ request: string | string[], externalType: ExternalsType }} the request and external type
860
892
  */
@@ -901,6 +933,7 @@ class ExternalModule extends Module {
901
933
  }
902
934
 
903
935
  /**
936
+ * Returns the source data.
904
937
  * @private
905
938
  * @param {string | string[]} request request
906
939
  * @param {ExternalsType} externalType the external type
@@ -1007,6 +1040,7 @@ class ExternalModule extends Module {
1007
1040
  }
1008
1041
 
1009
1042
  /**
1043
+ * Generates code and runtime requirements for this module.
1010
1044
  * @param {CodeGenerationContext} context context for code generation
1011
1045
  * @returns {CodeGenerationResult} result
1012
1046
  */
@@ -1143,6 +1177,7 @@ class ExternalModule extends Module {
1143
1177
  }
1144
1178
 
1145
1179
  /**
1180
+ * Returns the estimated size for the requested source type.
1146
1181
  * @param {string=} type the source type for which the size should be estimated
1147
1182
  * @returns {number} the estimated size of the module (must be non-zero)
1148
1183
  */
@@ -1151,6 +1186,7 @@ class ExternalModule extends Module {
1151
1186
  }
1152
1187
 
1153
1188
  /**
1189
+ * Updates the hash with the data contributed by this instance.
1154
1190
  * @param {Hash} hash the hash used to track dependencies
1155
1191
  * @param {UpdateHashContext} context context
1156
1192
  * @returns {void}
@@ -1166,6 +1202,7 @@ class ExternalModule extends Module {
1166
1202
  }
1167
1203
 
1168
1204
  /**
1205
+ * Serializes this instance into the provided serializer context.
1169
1206
  * @param {ObjectSerializerContext} context context
1170
1207
  */
1171
1208
  serialize(context) {
@@ -1180,6 +1217,7 @@ class ExternalModule extends Module {
1180
1217
  }
1181
1218
 
1182
1219
  /**
1220
+ * Restores this instance from the provided deserializer context.
1183
1221
  * @param {ObjectDeserializerContext} context context
1184
1222
  */
1185
1223
  deserialize(context) {
@@ -33,6 +33,7 @@ const { cachedSetProperty, resolveByProperty } = require("./util/cleverMerge");
33
33
  /** @typedef {(options?: ResolveOptions) => ExternalItemFunctionDataGetResolveCallbackResult | ExternalItemFunctionDataGetResolveResult} ExternalItemFunctionDataGetResolve */
34
34
 
35
35
  /**
36
+ * Defines the external item function data type used by this module.
36
37
  * @typedef {object} ExternalItemFunctionData
37
38
  * @property {string} context the directory in which the request is placed
38
39
  * @property {ModuleFactoryCreateDataContextInfo} contextInfo contextual information
@@ -50,6 +51,7 @@ const EMPTY_RESOLVE_OPTIONS = {};
50
51
  // TODO webpack 6 remove this
51
52
  const callDeprecatedExternals = util.deprecate(
52
53
  /**
54
+ * Handles the callback logic for this hook.
53
55
  * @param {EXPECTED_FUNCTION} externalsFunction externals function
54
56
  * @param {string} context context
55
57
  * @param {string} request request
@@ -67,6 +69,7 @@ const callDeprecatedExternals = util.deprecate(
67
69
  /** @typedef {ExternalItemObjectKnown & ExternalItemObjectUnknown} ExternalItemObject */
68
70
 
69
71
  /**
72
+ * Defines the external weak cache type used by this module.
70
73
  * @template {ExternalItemObject} T
71
74
  * @typedef {WeakMap<T, Map<IssuerLayer, Omit<T, "byLayer">>>} ExternalWeakCache
72
75
  */
@@ -75,6 +78,7 @@ const callDeprecatedExternals = util.deprecate(
75
78
  const cache = new WeakMap();
76
79
 
77
80
  /**
81
+ * Returns result.
78
82
  * @param {ExternalItemObject} obj obj
79
83
  * @param {IssuerLayer} layer layer
80
84
  * @returns {Omit<ExternalItemObject, "byLayer">} result
@@ -99,6 +103,7 @@ const PLUGIN_NAME = "ExternalModuleFactoryPlugin";
99
103
 
100
104
  class ExternalModuleFactoryPlugin {
101
105
  /**
106
+ * Creates an instance of ExternalModuleFactoryPlugin.
102
107
  * @param {ExternalsType | ((dependency: Dependency) => ExternalsType)} type default external type
103
108
  * @param {Externals} externals externals config
104
109
  */
@@ -108,6 +113,7 @@ class ExternalModuleFactoryPlugin {
108
113
  }
109
114
 
110
115
  /**
116
+ * Applies the plugin by registering its hooks on the compiler.
111
117
  * @param {NormalModuleFactory} normalModuleFactory the normal module factory
112
118
  * @returns {void}
113
119
  */
@@ -124,6 +130,7 @@ class ExternalModuleFactoryPlugin {
124
130
  /** @typedef {(err?: Error | null, externalModule?: ExternalModule) => void} HandleExternalCallback */
125
131
 
126
132
  /**
133
+ * Processes the provided value.
127
134
  * @param {ExternalValue} value the external config
128
135
  * @param {ExternalsType | undefined} type type of external
129
136
  * @param {HandleExternalCallback} callback callback
@@ -215,6 +222,7 @@ class ExternalModuleFactoryPlugin {
215
222
  };
216
223
 
217
224
  /**
225
+ * Processes the provided external.
218
226
  * @param {Externals} externals externals config
219
227
  * @param {HandleExternalCallback} callback callback
220
228
  * @returns {void}
@@ -230,6 +238,7 @@ class ExternalModuleFactoryPlugin {
230
238
  /** @type {boolean | undefined} */
231
239
  let asyncFlag;
232
240
  /**
241
+ * Handle externals and callback.
233
242
  * @param {(Error | null)=} err err
234
243
  * @param {ExternalModule=} module module
235
244
  * @returns {void}
@@ -262,6 +271,7 @@ class ExternalModuleFactoryPlugin {
262
271
  }
263
272
  } else if (typeof externals === "function") {
264
273
  /**
274
+ * Processes the provided err.
265
275
  * @param {Error | null | undefined} err err
266
276
  * @param {ExternalValue=} value value
267
277
  * @param {ExternalsType=} type type
@@ -19,6 +19,7 @@ const PLUGIN_NAME = "ExternalsPlugin";
19
19
 
20
20
  class ExternalsPlugin {
21
21
  /**
22
+ * Creates an instance of ExternalsPlugin.
22
23
  * @param {ExternalsType | ((dependency: Dependency) => ExternalsType)} type default external type
23
24
  * @param {Externals} externals externals config
24
25
  */
@@ -28,7 +29,7 @@ class ExternalsPlugin {
28
29
  }
29
30
 
30
31
  /**
31
- * Apply the plugin
32
+ * Applies the plugin by registering its hooks on the compiler.
32
33
  * @param {Compiler} compiler the compiler instance
33
34
  * @returns {void}
34
35
  */