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
@@ -36,6 +36,7 @@ const makeSerializable = require("../util/makeSerializable");
36
36
 
37
37
  class RawDataUrlModule extends Module {
38
38
  /**
39
+ * Creates an instance of RawDataUrlModule.
39
40
  * @param {string} url raw url
40
41
  * @param {string} identifier unique identifier
41
42
  * @param {string=} readableIdentifier readable identifier
@@ -53,6 +54,7 @@ class RawDataUrlModule extends Module {
53
54
  }
54
55
 
55
56
  /**
57
+ * Returns the source types this module can generate.
56
58
  * @returns {SourceTypes} types available (do not mutate)
57
59
  */
58
60
  getSourceTypes() {
@@ -60,6 +62,7 @@ class RawDataUrlModule extends Module {
60
62
  }
61
63
 
62
64
  /**
65
+ * Returns the unique identifier used to reference this module.
63
66
  * @returns {string} a unique identifier of the module
64
67
  */
65
68
  identifier() {
@@ -67,6 +70,7 @@ class RawDataUrlModule extends Module {
67
70
  }
68
71
 
69
72
  /**
73
+ * Returns the estimated size for the requested source type.
70
74
  * @param {string=} type the source type for which the size should be estimated
71
75
  * @returns {number} the estimated size of the module (must be non-zero)
72
76
  */
@@ -78,6 +82,7 @@ class RawDataUrlModule extends Module {
78
82
  }
79
83
 
80
84
  /**
85
+ * Returns a human-readable identifier for this module.
81
86
  * @param {RequestShortener} requestShortener the request shortener
82
87
  * @returns {string} a user readable identifier of the module
83
88
  */
@@ -88,6 +93,7 @@ class RawDataUrlModule extends Module {
88
93
  }
89
94
 
90
95
  /**
96
+ * Checks whether the module needs to be rebuilt for the current build state.
91
97
  * @param {NeedBuildContext} context context info
92
98
  * @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
93
99
  * @returns {void}
@@ -97,6 +103,7 @@ class RawDataUrlModule extends Module {
97
103
  }
98
104
 
99
105
  /**
106
+ * Builds the module using the provided compilation context.
100
107
  * @param {WebpackOptions} options webpack options
101
108
  * @param {Compilation} compilation the compilation
102
109
  * @param {ResolverWithOptions} resolver the resolver
@@ -113,6 +120,7 @@ class RawDataUrlModule extends Module {
113
120
  }
114
121
 
115
122
  /**
123
+ * Generates code and runtime requirements for this module.
116
124
  * @param {CodeGenerationContext} context context for code generation
117
125
  * @returns {CodeGenerationResult} result
118
126
  */
@@ -138,6 +146,7 @@ class RawDataUrlModule extends Module {
138
146
  }
139
147
 
140
148
  /**
149
+ * Updates the hash with the data contributed by this instance.
141
150
  * @param {Hash} hash the hash used to track dependencies
142
151
  * @param {UpdateHashContext} context context
143
152
  * @returns {void}
@@ -148,6 +157,7 @@ class RawDataUrlModule extends Module {
148
157
  }
149
158
 
150
159
  /**
160
+ * Serializes this instance into the provided serializer context.
151
161
  * @param {ObjectSerializerContext} context context
152
162
  */
153
163
  serialize(context) {
@@ -161,6 +171,7 @@ class RawDataUrlModule extends Module {
161
171
  }
162
172
 
163
173
  /**
174
+ * Restores this instance from the provided deserializer context.
164
175
  * @param {ObjectDeserializerContext} context context
165
176
  */
166
177
  deserialize(context) {
@@ -13,6 +13,7 @@ const HarmonyImportDependency = require("../dependencies/HarmonyImportDependency
13
13
  /** @typedef {Set<Module>} Modules */
14
14
 
15
15
  /**
16
+ * Gets outgoing async modules.
16
17
  * @param {ModuleGraph} moduleGraph module graph
17
18
  * @param {Module} module module
18
19
  * @returns {Modules} set of modules
@@ -15,10 +15,12 @@ const Template = require("../Template");
15
15
  /** @typedef {Map<string, string>} Dependencies */
16
16
 
17
17
  /**
18
+ * Represents AwaitDependenciesInitFragment.
18
19
  * @extends {InitFragment<GenerateContext>}
19
20
  */
20
21
  class AwaitDependenciesInitFragment extends InitFragment {
21
22
  /**
23
+ * Creates an instance of AwaitDependenciesInitFragment.
22
24
  * @param {Dependencies} dependencies maps an import var to an async module that needs to be awaited
23
25
  */
24
26
  constructor(dependencies) {
@@ -33,6 +35,7 @@ class AwaitDependenciesInitFragment extends InitFragment {
33
35
  }
34
36
 
35
37
  /**
38
+ * Merges another await-dependencies fragment into this fragment.
36
39
  * @param {AwaitDependenciesInitFragment} other other AwaitDependenciesInitFragment
37
40
  * @returns {AwaitDependenciesInitFragment} AwaitDependenciesInitFragment
38
41
  */
@@ -45,6 +48,7 @@ class AwaitDependenciesInitFragment extends InitFragment {
45
48
  }
46
49
 
47
50
  /**
51
+ * Returns the source code that will be included as initialization code.
48
52
  * @param {GenerateContext} context context
49
53
  * @returns {string | Source | undefined} the source code that will be included as initialization code
50
54
  */
@@ -14,7 +14,7 @@ const PLUGIN_NAME = "InferAsyncModulesPlugin";
14
14
 
15
15
  class InferAsyncModulesPlugin {
16
16
  /**
17
- * Apply the plugin
17
+ * Applies the plugin by registering its hooks on the compiler.
18
18
  * @param {Compiler} compiler the compiler instance
19
19
  * @returns {void}
20
20
  */
@@ -24,6 +24,7 @@ const { getEntryRuntime, mergeRuntime } = require("./util/runtime");
24
24
  /** @typedef {import("./util/runtime").RuntimeSpec} RuntimeSpec */
25
25
 
26
26
  /**
27
+ * Defines the queue item type used by this module.
27
28
  * @typedef {object} QueueItem
28
29
  * @property {number} action
29
30
  * @property {DependenciesBlock} block
@@ -34,6 +35,7 @@ const { getEntryRuntime, mergeRuntime } = require("./util/runtime");
34
35
  */
35
36
 
36
37
  /**
38
+ * Defines the chunk group info type used by this module.
37
39
  * @typedef {object} ChunkGroupInfo
38
40
  * @property {ChunkGroup} chunkGroup the chunk group
39
41
  * @property {RuntimeSpec} runtime the runtimes
@@ -55,6 +57,7 @@ const { getEntryRuntime, mergeRuntime } = require("./util/runtime");
55
57
  */
56
58
 
57
59
  /**
60
+ * Defines the block chunk group connection type used by this module.
58
61
  * @typedef {object} BlockChunkGroupConnection
59
62
  * @property {ChunkGroupInfo} originChunkGroupInfo origin chunk group
60
63
  * @property {ChunkGroup} chunkGroup referenced chunk group
@@ -74,6 +77,7 @@ const ZERO_BIGINT = BigInt(0);
74
77
  const ONE_BIGINT = BigInt(1);
75
78
 
76
79
  /**
80
+ * Checks whether this object is ordinal set in mask.
77
81
  * @param {bigint} mask The mask to test
78
82
  * @param {number} ordinal The ordinal of the bit to test
79
83
  * @returns {boolean} If the ordinal-th bit is set in the mask
@@ -82,6 +86,7 @@ const isOrdinalSetInMask = (mask, ordinal) =>
82
86
  BigInt.asUintN(1, mask >> BigInt(ordinal)) !== ZERO_BIGINT;
83
87
 
84
88
  /**
89
+ * Gets active state of connections.
85
90
  * @param {ModuleGraphConnection[]} connections list of connections
86
91
  * @param {RuntimeSpec} runtime for which runtime
87
92
  * @returns {ConnectionState} connection state
@@ -101,6 +106,7 @@ const getActiveStateOfConnections = (connections, runtime) => {
101
106
  };
102
107
 
103
108
  /**
109
+ * Extract block modules.
104
110
  * @param {Module} module module
105
111
  * @param {ModuleGraph} moduleGraph module graph
106
112
  * @param {RuntimeSpec} runtime runtime
@@ -237,6 +243,7 @@ const extractBlockModules = (module, moduleGraph, runtime, blockModulesMap) => {
237
243
  };
238
244
 
239
245
  /**
246
+ * Processes the provided logger.
240
247
  * @param {Logger} logger a logger
241
248
  * @param {Compilation} compilation the compilation
242
249
  * @param {InputEntrypointsAndModules} inputEntrypointsAndModules chunk groups which are processed with the modules
@@ -268,6 +275,7 @@ const visitModules = (
268
275
  const ordinalByModule = new Map();
269
276
 
270
277
  /**
278
+ * Gets module ordinal.
271
279
  * @param {Module} module The module to look up
272
280
  * @returns {number} The ordinal of the module in masks
273
281
  */
@@ -289,6 +297,7 @@ const visitModules = (
289
297
  }
290
298
 
291
299
  /**
300
+ * Gets block modules.
292
301
  * @param {DependenciesBlock} block block
293
302
  * @param {RuntimeSpec} runtime runtime
294
303
  * @returns {BlockModulesInFlattenTuples | undefined} block modules in flatten tuples
@@ -493,6 +502,7 @@ const visitModules = (
493
502
 
494
503
  // For each async Block in graph
495
504
  /**
505
+ * Processes the provided b.
496
506
  * @param {AsyncDependenciesBlock} b iterating over each Async DepBlock
497
507
  * @returns {void}
498
508
  */
@@ -699,6 +709,7 @@ const visitModules = (
699
709
  };
700
710
 
701
711
  /**
712
+ * Processes the provided block.
702
713
  * @param {DependenciesBlock} block the block
703
714
  * @returns {void}
704
715
  */
@@ -791,6 +802,7 @@ const visitModules = (
791
802
  };
792
803
 
793
804
  /**
805
+ * Process entry block.
794
806
  * @param {DependenciesBlock} block the block
795
807
  * @returns {void}
796
808
  */
@@ -918,6 +930,7 @@ const visitModules = (
918
930
  };
919
931
 
920
932
  /**
933
+ * Calculate resulting available modules.
921
934
  * @param {ChunkGroupInfo} chunkGroupInfo The info object for the chunk group
922
935
  * @returns {bigint} The mask of available modules after the chunk group
923
936
  */
@@ -1193,6 +1206,7 @@ const visitModules = (
1193
1206
  let preOrderIndex = 0;
1194
1207
  let postOrderIndex = 0;
1195
1208
  /**
1209
+ * Processes the provided current.
1196
1210
  * @param {DependenciesBlock} current current
1197
1211
  * @param {BlocksWithNestedBlocks} visited visited dependencies blocks
1198
1212
  */
@@ -1240,6 +1254,7 @@ const visitModules = (
1240
1254
  };
1241
1255
 
1242
1256
  /**
1257
+ * Connects chunk groups.
1243
1258
  * @param {Compilation} compilation the compilation
1244
1259
  * @param {BlocksWithNestedBlocks} blocksWithNestedBlocks flag for blocks that have nested blocks
1245
1260
  * @param {BlockConnections} blockConnections connection for blocks
@@ -11,6 +11,7 @@ const PLUGIN_NAME = "AddBuildDependenciesPlugin";
11
11
 
12
12
  class AddBuildDependenciesPlugin {
13
13
  /**
14
+ * Creates an instance of AddBuildDependenciesPlugin.
14
15
  * @param {Iterable<string>} buildDependencies list of build dependencies
15
16
  */
16
17
  constructor(buildDependencies) {
@@ -18,7 +19,7 @@ class AddBuildDependenciesPlugin {
18
19
  }
19
20
 
20
21
  /**
21
- * Apply the plugin
22
+ * Applies the plugin by registering its hooks on the compiler.
22
23
  * @param {Compiler} compiler the compiler instance
23
24
  * @returns {void}
24
25
  */
@@ -9,6 +9,7 @@
9
9
 
10
10
  class AddManagedPathsPlugin {
11
11
  /**
12
+ * Creates an instance of AddManagedPathsPlugin.
12
13
  * @param {Iterable<string | RegExp>} managedPaths list of managed paths
13
14
  * @param {Iterable<string | RegExp>} immutablePaths list of immutable paths
14
15
  * @param {Iterable<string | RegExp>} unmanagedPaths list of unmanaged paths
@@ -20,7 +21,7 @@ class AddManagedPathsPlugin {
20
21
  }
21
22
 
22
23
  /**
23
- * Apply the plugin
24
+ * Applies the plugin by registering its hooks on the compiler.
24
25
  * @param {Compiler} compiler the compiler instance
25
26
  * @returns {void}
26
27
  */
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "IdleFileCachePlugin";
16
16
 
17
17
  class IdleFileCachePlugin {
18
18
  /**
19
+ * Creates an instance of IdleFileCachePlugin.
19
20
  * @param {PackFileCacheStrategy} strategy cache strategy
20
21
  * @param {number} idleTimeout timeout
21
22
  * @param {number} idleTimeoutForInitialStore initial timeout
@@ -34,7 +35,7 @@ class IdleFileCachePlugin {
34
35
  }
35
36
 
36
37
  /**
37
- * Apply the plugin
38
+ * Applies the plugin by registering its hooks on the compiler.
38
39
  * @param {Compiler} compiler the compiler instance
39
40
  * @returns {void}
40
41
  */
@@ -13,7 +13,7 @@ const Cache = require("../Cache");
13
13
 
14
14
  class MemoryCachePlugin {
15
15
  /**
16
- * Apply the plugin
16
+ * Applies the plugin by registering its hooks on the compiler.
17
17
  * @param {Compiler} compiler the compiler instance
18
18
  * @returns {void}
19
19
  */
@@ -12,6 +12,7 @@ const Cache = require("../Cache");
12
12
  /** @typedef {import("../Compiler")} Compiler */
13
13
 
14
14
  /**
15
+ * Defines the memory with gc cache plugin options type used by this module.
15
16
  * @typedef {object} MemoryWithGcCachePluginOptions
16
17
  * @property {number} maxGenerations max generations
17
18
  */
@@ -20,6 +21,7 @@ const PLUGIN_NAME = "MemoryWithGcCachePlugin";
20
21
 
21
22
  class MemoryWithGcCachePlugin {
22
23
  /**
24
+ * Creates an instance of MemoryWithGcCachePlugin.
23
25
  * @param {MemoryWithGcCachePluginOptions} options options
24
26
  */
25
27
  constructor({ maxGenerations }) {
@@ -27,7 +29,7 @@ class MemoryWithGcCachePlugin {
27
29
  }
28
30
 
29
31
  /**
30
- * Apply the plugin
32
+ * Applies the plugin by registering its hooks on the compiler.
31
33
  * @param {Compiler} compiler the compiler instance
32
34
  * @returns {void}
33
35
  */
@@ -37,6 +37,7 @@ const {
37
37
 
38
38
  class PackContainer {
39
39
  /**
40
+ * Creates an instance of PackContainer.
40
41
  * @param {Pack} data stored data
41
42
  * @param {string} version version identifier
42
43
  * @param {Snapshot} buildSnapshot snapshot of all build dependencies
@@ -67,6 +68,7 @@ class PackContainer {
67
68
  }
68
69
 
69
70
  /**
71
+ * Serializes this instance into the provided serializer context.
70
72
  * @param {ObjectSerializerContext} context context
71
73
  */
72
74
  serialize({ write, writeLazy }) {
@@ -80,6 +82,7 @@ class PackContainer {
80
82
  }
81
83
 
82
84
  /**
85
+ * Restores this instance from the provided deserializer context.
83
86
  * @param {ObjectDeserializerContext} context context
84
87
  */
85
88
  deserialize({ read }) {
@@ -106,6 +109,7 @@ const MAX_TIME_IN_FRESH_PACK = 1 * 60 * 1000; // 1 min
106
109
 
107
110
  class PackItemInfo {
108
111
  /**
112
+ * Creates an instance of PackItemInfo.
109
113
  * @param {string} identifier identifier of item
110
114
  * @param {string | null | undefined} etag etag of item
111
115
  * @param {Data} value fresh value of item
@@ -126,6 +130,7 @@ class PackItemInfo {
126
130
 
127
131
  class Pack {
128
132
  /**
133
+ * Creates an instance of Pack.
129
134
  * @param {Logger} logger a logger
130
135
  * @param {number} maxAge max age of cache items
131
136
  */
@@ -149,6 +154,7 @@ class Pack {
149
154
  }
150
155
 
151
156
  /**
157
+ * Adds the provided identifier to the pack.
152
158
  * @param {string} identifier identifier
153
159
  */
154
160
  _addRequest(identifier) {
@@ -170,6 +176,7 @@ class Pack {
170
176
  }
171
177
 
172
178
  /**
179
+ * Returns cached content.
173
180
  * @param {string} identifier unique name for the resource
174
181
  * @param {string | null} etag etag of the resource
175
182
  * @returns {Data} cached content
@@ -193,6 +200,7 @@ class Pack {
193
200
  }
194
201
 
195
202
  /**
203
+ * Updates value using the provided identifier.
196
204
  * @param {string} identifier unique name for the resource
197
205
  * @param {string | null} etag etag of the resource
198
206
  * @param {Data} data cached content
@@ -244,6 +252,7 @@ class Pack {
244
252
  }
245
253
 
246
254
  /**
255
+ * Returns new location of data entries.
247
256
  * @returns {number} new location of data entries
248
257
  */
249
258
  _findLocation() {
@@ -254,6 +263,7 @@ class Pack {
254
263
  }
255
264
 
256
265
  /**
266
+ * Gc and update location.
257
267
  * @private
258
268
  * @param {Items} items items
259
269
  * @param {Items} usedItems used items
@@ -604,6 +614,7 @@ class Pack {
604
614
  }
605
615
 
606
616
  /**
617
+ * Serializes this instance into the provided serializer context.
607
618
  * @param {ObjectSerializerContext} context context
608
619
  */
609
620
  serialize({ write, writeSeparate }) {
@@ -637,6 +648,7 @@ class Pack {
637
648
  }
638
649
 
639
650
  /**
651
+ * Restores this instance from the provided deserializer context.
640
652
  * @param {ObjectDeserializerContext & { logger: Logger }} context context
641
653
  */
642
654
  deserialize({ read, logger }) {
@@ -694,6 +706,7 @@ makeSerializable(Pack, "webpack/lib/cache/PackFileCacheStrategy", "Pack");
694
706
 
695
707
  class PackContentItems {
696
708
  /**
709
+ * Creates an instance of PackContentItems.
697
710
  * @param {Content} map items
698
711
  */
699
712
  constructor(map) {
@@ -701,6 +714,7 @@ class PackContentItems {
701
714
  }
702
715
 
703
716
  /**
717
+ * Serializes this instance into the provided serializer context.
704
718
  * @param {ObjectSerializerContext & { logger: Logger, profile: boolean | undefined }} context context
705
719
  */
706
720
  serialize({ write, snapshot, rollback, logger, profile }) {
@@ -778,6 +792,7 @@ class PackContentItems {
778
792
  }
779
793
 
780
794
  /**
795
+ * Restores this instance from the provided deserializer context.
781
796
  * @param {ObjectDeserializerContext & { logger: Logger, profile: boolean | undefined }} context context
782
797
  */
783
798
  deserialize({ read, logger, profile }) {
@@ -851,6 +866,7 @@ class PackContent {
851
866
  */
852
867
 
853
868
  /**
869
+ * Creates an instance of PackContent.
854
870
  * @param {Items} items keys
855
871
  * @param {Items} usedItems used keys
856
872
  * @param {PackContentItems | (() => Promise<PackContentItems>)} dataOrFn sync or async content
@@ -875,6 +891,7 @@ class PackContent {
875
891
  }
876
892
 
877
893
  /**
894
+ * Returns result.
878
895
  * @param {string} identifier identifier
879
896
  * @returns {string | Promise<string>} result
880
897
  */
@@ -927,6 +944,7 @@ class PackContent {
927
944
  }
928
945
 
929
946
  /**
947
+ * Returns maybe a promise if lazy.
930
948
  * @param {string} reason explanation why unpack is necessary
931
949
  * @returns {void | Promise<void>} maybe a promise if lazy
932
950
  */
@@ -971,6 +989,7 @@ class PackContent {
971
989
  }
972
990
 
973
991
  /**
992
+ * Returns the estimated size for the requested source type.
974
993
  * @returns {number} size of the content or -1 if not known
975
994
  */
976
995
  getSize() {
@@ -985,6 +1004,7 @@ class PackContent {
985
1004
  }
986
1005
 
987
1006
  /**
1007
+ * Processes the provided identifier.
988
1008
  * @param {string} identifier identifier
989
1009
  */
990
1010
  delete(identifier) {
@@ -994,6 +1014,7 @@ class PackContent {
994
1014
  }
995
1015
 
996
1016
  /**
1017
+ * Processes the provided write.
997
1018
  * @param {(lazy: LazyFunction) => (() => PackContentItems | Promise<PackContentItems>)} write write function
998
1019
  * @returns {void}
999
1020
  */
@@ -1086,6 +1107,7 @@ class PackContent {
1086
1107
  }
1087
1108
 
1088
1109
  /**
1110
+ * Allow collecting memory.
1089
1111
  * @param {Buffer} buf buffer
1090
1112
  * @returns {Buffer} buffer that can be collected
1091
1113
  */
@@ -1099,6 +1121,7 @@ const allowCollectingMemory = (buf) => {
1099
1121
 
1100
1122
  class PackFileCacheStrategy {
1101
1123
  /**
1124
+ * Creates an instance of PackFileCacheStrategy.
1102
1125
  * @param {object} options options
1103
1126
  * @param {Compiler} options.compiler the compiler
1104
1127
  * @param {IntermediateFileSystem} options.fs the filesystem
@@ -1186,6 +1209,7 @@ class PackFileCacheStrategy {
1186
1209
  }
1187
1210
 
1188
1211
  /**
1212
+ * Returns pack.
1189
1213
  * @returns {Promise<Pack>} pack
1190
1214
  */
1191
1215
  _getPack() {
@@ -1196,6 +1220,7 @@ class PackFileCacheStrategy {
1196
1220
  }
1197
1221
 
1198
1222
  /**
1223
+ * Returns the pack.
1199
1224
  * @returns {Promise<Pack>} the pack
1200
1225
  */
1201
1226
  _openPack() {
@@ -1362,6 +1387,7 @@ class PackFileCacheStrategy {
1362
1387
  }
1363
1388
 
1364
1389
  /**
1390
+ * Returns promise.
1365
1391
  * @param {string} identifier unique name for the resource
1366
1392
  * @param {Etag | null} etag etag of the resource
1367
1393
  * @param {Data} data cached content
@@ -1376,6 +1402,7 @@ class PackFileCacheStrategy {
1376
1402
  }
1377
1403
 
1378
1404
  /**
1405
+ * Returns promise to the cached content.
1379
1406
  * @param {string} identifier unique name for the resource
1380
1407
  * @param {Etag | null} etag etag of the resource
1381
1408
  * @returns {Promise<Data>} promise to the cached content
@@ -1396,6 +1423,7 @@ class PackFileCacheStrategy {
1396
1423
  }
1397
1424
 
1398
1425
  /**
1426
+ * Stores build dependencies.
1399
1427
  * @param {FileSystemDependencies | Iterable<string>} dependencies dependencies to store
1400
1428
  */
1401
1429
  storeBuildDependencies(dependencies) {
@@ -1429,6 +1457,7 @@ class PackFileCacheStrategy {
1429
1457
  );
1430
1458
  promise = new Promise(
1431
1459
  /**
1460
+ * Handles the callback logic for this hook.
1432
1461
  * @param {(value?: undefined) => void} resolve resolve
1433
1462
  * @param {(reason?: Error) => void} reject reject
1434
1463
  */
@@ -22,6 +22,7 @@ const makeSerializable = require("../util/makeSerializable");
22
22
  /** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */
23
23
 
24
24
  /**
25
+ * Defines the sync hook type used by this module.
25
26
  * @template T
26
27
  * @typedef {import("tapable").SyncHook<T>} SyncHook
27
28
  */
@@ -30,6 +31,7 @@ const makeSerializable = require("../util/makeSerializable");
30
31
 
31
32
  class CacheEntry {
32
33
  /**
34
+ * Creates an instance of CacheEntry.
33
35
  * @param {ResolveRequest} result result
34
36
  * @param {Snapshot} snapshot snapshot
35
37
  */
@@ -39,6 +41,7 @@ class CacheEntry {
39
41
  }
40
42
 
41
43
  /**
44
+ * Serializes this instance into the provided serializer context.
42
45
  * @param {ObjectSerializerContext} context context
43
46
  */
44
47
  serialize({ write }) {
@@ -47,6 +50,7 @@ class CacheEntry {
47
50
  }
48
51
 
49
52
  /**
53
+ * Restores this instance from the provided deserializer context.
50
54
  * @param {ObjectDeserializerContext} context context
51
55
  */
52
56
  deserialize({ read }) {
@@ -58,6 +62,7 @@ class CacheEntry {
58
62
  makeSerializable(CacheEntry, "webpack/lib/cache/ResolverCachePlugin");
59
63
 
60
64
  /**
65
+ * Adds the provided set to the cache entry.
61
66
  * @template T
62
67
  * @param {Set<T> | LazySet<T>} set set to add items to
63
68
  * @param {Set<T> | LazySet<T> | Iterable<T>} otherSet set to add items from
@@ -74,6 +79,7 @@ const addAllToSet = (set, otherSet) => {
74
79
  };
75
80
 
76
81
  /**
82
+ * Returns stringified version.
77
83
  * @template {object} T
78
84
  * @param {T} object an object
79
85
  * @param {boolean} excludeContext if true, context is not included in string
@@ -98,7 +104,7 @@ const PLUGIN_NAME = "ResolverCachePlugin";
98
104
 
99
105
  class ResolverCachePlugin {
100
106
  /**
101
- * Apply the plugin
107
+ * Applies the plugin by registering its hooks on the compiler.
102
108
  * @param {Compiler} compiler the compiler instance
103
109
  * @returns {void}
104
110
  */
@@ -135,6 +141,7 @@ class ResolverCachePlugin {
135
141
  /** @typedef {ResolveRequest & { _ResolverCachePluginCacheMiss: true }} ResolveRequestWithCacheMiss */
136
142
 
137
143
  /**
144
+ * Processes the provided item cache.
138
145
  * @param {ItemCacheFacade} itemCache cache
139
146
  * @param {Resolver} resolver the resolver
140
147
  * @param {ResolveContext} resolveContext context for resolving meta info
@@ -175,6 +182,7 @@ class ResolverCachePlugin {
175
182
  (yieldResult).push(obj);
176
183
  }
177
184
  /**
185
+ * Processes the provided key.
178
186
  * @param {"fileDependencies" | "contextDependencies" | "missingDependencies"} key key
179
187
  */
180
188
  const propagate = (key) => {
@@ -375,6 +383,7 @@ class ResolverCachePlugin {
375
383
  }
376
384
  };
377
385
  /**
386
+ * Process cache result.
378
387
  * @param {(Error | null)=} err error if any
379
388
  * @param {(CacheEntry | null)=} cacheEntry cache entry
380
389
  * @returns {void}
@@ -13,12 +13,14 @@ const createHash = require("../util/createHash");
13
13
  /** @typedef {import("../util/Hash").HashFunction} HashFunction */
14
14
 
15
15
  /**
16
+ * Represents the lazy hashed etag runtime component.
16
17
  * @typedef {object} HashableObject
17
18
  * @property {(hash: Hash) => void} updateHash
18
19
  */
19
20
 
20
21
  class LazyHashedEtag {
21
22
  /**
23
+ * Creates an instance of LazyHashedEtag.
22
24
  * @param {HashableObject} obj object with updateHash method
23
25
  * @param {HashFunction} hashFunction the hash function to use
24
26
  */
@@ -32,6 +34,7 @@ class LazyHashedEtag {
32
34
  }
33
35
 
34
36
  /**
37
+ * Returns a string representation.
35
38
  * @returns {string} hash of object
36
39
  */
37
40
  toString() {
@@ -53,6 +56,7 @@ const mapStrings = new Map();
53
56
  const mapObjects = new WeakMap();
54
57
 
55
58
  /**
59
+ * Returns etag.
56
60
  * @param {HashableObject} obj object with updateHash method
57
61
  * @param {HashFunction=} hashFunction the hash function to use
58
62
  * @returns {LazyHashedEtag} etag
@@ -9,6 +9,7 @@
9
9
 
10
10
  class MergedEtag {
11
11
  /**
12
+ * Creates an instance of MergedEtag.
12
13
  * @param {Etag} a first
13
14
  * @param {Etag} b second
14
15
  */
@@ -28,6 +29,7 @@ const dualObjectMap = new WeakMap();
28
29
  const objectStringMap = new WeakMap();
29
30
 
30
31
  /**
32
+ * Merges the provided values into a single result.
31
33
  * @param {Etag} a first
32
34
  * @param {Etag} b second
33
35
  * @returns {string | MergedEtag} result