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
@@ -25,6 +25,7 @@ const { getUndoPath } = require("../util/identifier");
25
25
  /** @typedef {import("../Module").ReadOnlyRuntimeRequirements} ReadOnlyRuntimeRequirements */
26
26
 
27
27
  /**
28
+ * Defines the jsonp compilation plugin hooks type used by this module.
28
29
  * @typedef {object} JsonpCompilationPluginHooks
29
30
  * @property {SyncWaterfallHook<[string, Chunk]>} linkPreload
30
31
  * @property {SyncWaterfallHook<[string, Chunk]>} linkPrefetch
@@ -35,6 +36,7 @@ const compilationHooksMap = new WeakMap();
35
36
 
36
37
  class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
37
38
  /**
39
+ * Returns hooks.
38
40
  * @param {Compilation} compilation the compilation
39
41
  * @returns {JsonpCompilationPluginHooks} hooks
40
42
  */
@@ -56,6 +58,7 @@ class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
56
58
  }
57
59
 
58
60
  /**
61
+ * Creates an instance of ModuleChunkLoadingRuntimeModule.
59
62
  * @param {ReadOnlyRuntimeRequirements} runtimeRequirements runtime requirements
60
63
  */
61
64
  constructor(runtimeRequirements) {
@@ -65,6 +68,7 @@ class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
65
68
  }
66
69
 
67
70
  /**
71
+ * Returns generated code.
68
72
  * @private
69
73
  * @param {Chunk} chunk chunk
70
74
  * @param {string} rootOutputDir root output directory
@@ -85,6 +89,7 @@ class ModuleChunkLoadingRuntimeModule extends RuntimeModule {
85
89
  }
86
90
 
87
91
  /**
92
+ * Generates runtime code for this runtime module.
88
93
  * @returns {string | null} runtime code
89
94
  */
90
95
  generate() {
@@ -9,6 +9,7 @@
9
9
  /** @typedef {import("./Dependency").SourcePosition} SourcePosition */
10
10
 
11
11
  /**
12
+ * Returns formatted position.
12
13
  * @param {SourcePosition} pos position
13
14
  * @returns {string} formatted position
14
15
  */
@@ -24,6 +25,7 @@ const formatPosition = (pos) => {
24
25
  };
25
26
 
26
27
  /**
28
+ * Returns formatted location.
27
29
  * @param {DependencyLocation} loc location
28
30
  * @returns {string} formatted location
29
31
  */
@@ -15,6 +15,7 @@ class HotModuleReplacementRuntimeModule extends RuntimeModule {
15
15
  }
16
16
 
17
17
  /**
18
+ * Generates runtime code for this runtime module.
18
19
  * @returns {string | null} runtime code
19
20
  */
20
21
  generate() {
@@ -10,6 +10,7 @@ const RuntimeGlobals = require("../RuntimeGlobals");
10
10
  const Template = require("../Template");
11
11
 
12
12
  /**
13
+ * Generates javascript hmr.
13
14
  * @param {string} type unique identifier used for HMR runtime properties
14
15
  * @returns {string} HMR runtime code
15
16
  */
@@ -46,6 +46,7 @@ const { registerNotSerializable } = require("../util/serialization");
46
46
  /** @typedef {{ client: string, data: string, active: boolean }} ModuleResult */
47
47
 
48
48
  /**
49
+ * Defines the backend api type used by this module.
49
50
  * @typedef {object} BackendApi
50
51
  * @property {(callback: (err?: (Error | null)) => void) => void} dispose
51
52
  * @property {(module: Module) => ModuleResult} module
@@ -59,6 +60,7 @@ const HMR_DEPENDENCY_TYPES = new Set([
59
60
  ]);
60
61
 
61
62
  /**
63
+ * Checks true, if the module should be selected.
62
64
  * @param {Options["test"]} test test option
63
65
  * @param {Module} module the module
64
66
  * @returns {boolean | null | string} true, if the module should be selected
@@ -81,6 +83,7 @@ const checkTest = (test, module) => {
81
83
 
82
84
  class LazyCompilationDependency extends Dependency {
83
85
  /**
86
+ * Creates an instance of LazyCompilationDependency.
84
87
  * @param {LazyCompilationProxyModule} proxyModule proxy module
85
88
  */
86
89
  constructor(proxyModule) {
@@ -97,6 +100,7 @@ class LazyCompilationDependency extends Dependency {
97
100
  }
98
101
 
99
102
  /**
103
+ * Returns an identifier to merge equal requests.
100
104
  * @returns {string | null} an identifier to merge equal requests
101
105
  */
102
106
  getResourceIdentifier() {
@@ -108,6 +112,7 @@ registerNotSerializable(LazyCompilationDependency);
108
112
 
109
113
  class LazyCompilationProxyModule extends Module {
110
114
  /**
115
+ * Creates an instance of LazyCompilationProxyModule.
111
116
  * @param {string} context context
112
117
  * @param {Module} originalModule an original module
113
118
  * @param {string} request request
@@ -129,6 +134,7 @@ class LazyCompilationProxyModule extends Module {
129
134
  }
130
135
 
131
136
  /**
137
+ * Returns the unique identifier used to reference this module.
132
138
  * @returns {string} a unique identifier of the module
133
139
  */
134
140
  identifier() {
@@ -136,6 +142,7 @@ class LazyCompilationProxyModule extends Module {
136
142
  }
137
143
 
138
144
  /**
145
+ * Returns a human-readable identifier for this module.
139
146
  * @param {RequestShortener} requestShortener the request shortener
140
147
  * @returns {string} a user readable identifier of the module
141
148
  */
@@ -163,6 +170,7 @@ class LazyCompilationProxyModule extends Module {
163
170
  }
164
171
 
165
172
  /**
173
+ * Gets the library identifier.
166
174
  * @param {LibIdentOptions} options options
167
175
  * @returns {LibIdent | null} an identifier for library inclusion
168
176
  */
@@ -173,6 +181,7 @@ class LazyCompilationProxyModule extends Module {
173
181
  }
174
182
 
175
183
  /**
184
+ * Checks whether the module needs to be rebuilt for the current build state.
176
185
  * @param {NeedBuildContext} context context info
177
186
  * @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
178
187
  * @returns {void}
@@ -182,6 +191,7 @@ class LazyCompilationProxyModule extends Module {
182
191
  }
183
192
 
184
193
  /**
194
+ * Builds the module using the provided compilation context.
185
195
  * @param {WebpackOptions} options webpack options
186
196
  * @param {Compilation} compilation the compilation
187
197
  * @param {ResolverWithOptions} resolver the resolver
@@ -208,6 +218,7 @@ class LazyCompilationProxyModule extends Module {
208
218
  }
209
219
 
210
220
  /**
221
+ * Returns the source types this module can generate.
211
222
  * @returns {SourceTypes} types available (do not mutate)
212
223
  */
213
224
  getSourceTypes() {
@@ -215,6 +226,7 @@ class LazyCompilationProxyModule extends Module {
215
226
  }
216
227
 
217
228
  /**
229
+ * Returns the estimated size for the requested source type.
218
230
  * @param {string=} type the source type for which the size should be estimated
219
231
  * @returns {number} the estimated size of the module (must be non-zero)
220
232
  */
@@ -223,6 +235,7 @@ class LazyCompilationProxyModule extends Module {
223
235
  }
224
236
 
225
237
  /**
238
+ * Generates code and runtime requirements for this module.
226
239
  * @param {CodeGenerationContext} context context for code generation
227
240
  * @returns {CodeGenerationResult} result
228
241
  */
@@ -304,6 +317,7 @@ class LazyCompilationProxyModule extends Module {
304
317
  }
305
318
 
306
319
  /**
320
+ * Updates the hash with the data contributed by this instance.
307
321
  * @param {Hash} hash the hash used to track dependencies
308
322
  * @param {UpdateHashContext} context context
309
323
  * @returns {void}
@@ -323,6 +337,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
323
337
  }
324
338
 
325
339
  /**
340
+ * Processes the provided data.
326
341
  * @param {ModuleFactoryCreateData} data data object
327
342
  * @param {ModuleFactoryCallback} callback callback
328
343
  * @returns {void}
@@ -338,6 +353,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
338
353
  }
339
354
 
340
355
  /**
356
+ * Defines the backend handler callback.
341
357
  * @callback BackendHandler
342
358
  * @param {Compiler} compiler compiler
343
359
  * @param {(err: Error | null, backendApi?: BackendApi) => void} callback callback
@@ -345,6 +361,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
345
361
  */
346
362
 
347
363
  /**
364
+ * Defines the promise backend handler callback.
348
365
  * @callback PromiseBackendHandler
349
366
  * @param {Compiler} compiler compiler
350
367
  * @returns {Promise<BackendApi>} backend
@@ -355,6 +372,7 @@ class LazyCompilationDependencyFactory extends ModuleFactory {
355
372
  /** @typedef {(module: Module) => boolean} TestFn */
356
373
 
357
374
  /**
375
+ * Defines the options type used by this module.
358
376
  * @typedef {object} Options options
359
377
  * @property {BackEnd} backend the backend
360
378
  * @property {boolean=} entries
@@ -366,6 +384,7 @@ const PLUGIN_NAME = "LazyCompilationPlugin";
366
384
 
367
385
  class LazyCompilationPlugin {
368
386
  /**
387
+ * Creates an instance of LazyCompilationPlugin.
369
388
  * @param {Options} options options
370
389
  */
371
390
  constructor({ backend, entries, imports, test }) {
@@ -376,7 +395,7 @@ class LazyCompilationPlugin {
376
395
  }
377
396
 
378
397
  /**
379
- * Apply the plugin
398
+ * Applies the plugin by registering its hooks on the compiler.
380
399
  * @param {Compiler} compiler the compiler instance
381
400
  * @returns {void}
382
401
  */
@@ -19,6 +19,7 @@
19
19
  /** @typedef {() => Server} CreateServerFunction */
20
20
 
21
21
  /**
22
+ * Returns backend.
22
23
  * @param {Omit<LazyCompilationDefaultBackendOptions, "client"> & { client: NonNullable<LazyCompilationDefaultBackendOptions["client"]> }} options additional options for the backend
23
24
  * @returns {BackendHandler} backend
24
25
  */
@@ -118,6 +119,7 @@ module.exports = (options) => (compiler, callback) => {
118
119
  server.on(
119
120
  "listening",
120
121
  /**
122
+ * Handles the callback logic for this hook.
121
123
  * @param {Error} err error
122
124
  * @returns {void}
123
125
  */
@@ -16,6 +16,7 @@ const {
16
16
  /** @typedef {import("../ChunkGraph").ModuleComparator} ModuleComparator */
17
17
 
18
18
  /**
19
+ * Defines the chunk module id range plugin options type used by this module.
19
20
  * @typedef {object} ChunkModuleIdRangePluginOptions
20
21
  * @property {string} name the chunk name
21
22
  * @property {("index" | "index2" | "preOrderIndex" | "postOrderIndex")=} order order
@@ -27,6 +28,7 @@ const PLUGIN_NAME = "ChunkModuleIdRangePlugin";
27
28
 
28
29
  class ChunkModuleIdRangePlugin {
29
30
  /**
31
+ * Creates an instance of ChunkModuleIdRangePlugin.
30
32
  * @param {ChunkModuleIdRangePluginOptions} options options object
31
33
  */
32
34
  constructor(options) {
@@ -35,7 +37,7 @@ class ChunkModuleIdRangePlugin {
35
37
  }
36
38
 
37
39
  /**
38
- * Apply the plugin
40
+ * Applies the plugin by registering its hooks on the compiler.
39
41
  * @param {Compiler} compiler the compiler instance
40
42
  * @returns {void}
41
43
  */
@@ -15,6 +15,7 @@ const {
15
15
  /** @typedef {import("../Compiler")} Compiler */
16
16
 
17
17
  /**
18
+ * Defines the deterministic chunk ids plugin options type used by this module.
18
19
  * @typedef {object} DeterministicChunkIdsPluginOptions
19
20
  * @property {string=} context context for ids
20
21
  * @property {number=} maxLength maximum length of ids
@@ -24,6 +25,7 @@ const PLUGIN_NAME = "DeterministicChunkIdsPlugin";
24
25
 
25
26
  class DeterministicChunkIdsPlugin {
26
27
  /**
28
+ * Creates an instance of DeterministicChunkIdsPlugin.
27
29
  * @param {DeterministicChunkIdsPluginOptions=} options options
28
30
  */
29
31
  constructor(options = {}) {
@@ -32,7 +34,7 @@ class DeterministicChunkIdsPlugin {
32
34
  }
33
35
 
34
36
  /**
35
- * Apply the plugin
37
+ * Applies the plugin by registering its hooks on the compiler.
36
38
  * @param {Compiler} compiler the compiler instance
37
39
  * @returns {void}
38
40
  */
@@ -18,6 +18,7 @@ const {
18
18
  /** @typedef {import("../Module")} Module */
19
19
 
20
20
  /**
21
+ * Defines the deterministic module ids plugin options type used by this module.
21
22
  * @typedef {object} DeterministicModuleIdsPluginOptions
22
23
  * @property {string=} context context relative to which module identifiers are computed
23
24
  * @property {((module: Module) => boolean)=} test selector function for modules
@@ -31,6 +32,7 @@ const PLUGIN_NAME = "DeterministicModuleIdsPlugin";
31
32
 
32
33
  class DeterministicModuleIdsPlugin {
33
34
  /**
35
+ * Creates an instance of DeterministicModuleIdsPlugin.
34
36
  * @param {DeterministicModuleIdsPluginOptions=} options options
35
37
  */
36
38
  constructor(options = {}) {
@@ -39,7 +41,7 @@ class DeterministicModuleIdsPlugin {
39
41
  }
40
42
 
41
43
  /**
42
- * Apply the plugin
44
+ * Applies the plugin by registering its hooks on the compiler.
43
45
  * @param {Compiler} compiler the compiler instance
44
46
  * @returns {void}
45
47
  */
@@ -22,6 +22,7 @@ const PLUGIN_NAME = "HashedModuleIdsPlugin";
22
22
 
23
23
  class HashedModuleIdsPlugin {
24
24
  /**
25
+ * Creates an instance of HashedModuleIdsPlugin.
25
26
  * @param {HashedModuleIdsPluginOptions=} options options object
26
27
  */
27
28
  constructor(options = {}) {
@@ -30,7 +31,7 @@ class HashedModuleIdsPlugin {
30
31
  }
31
32
 
32
33
  /**
33
- * Apply the plugin
34
+ * Applies the plugin by registering its hooks on the compiler.
34
35
  * @param {Compiler} compiler the compiler instance
35
36
  * @returns {void}
36
37
  */
@@ -18,6 +18,7 @@ const numberHash = require("../util/numberHash");
18
18
  /** @typedef {import("../Module").BuildMeta} BuildMeta */
19
19
 
20
20
  /**
21
+ * Returns hash.
21
22
  * @param {string} str string to hash
22
23
  * @param {number} len max length of the hash
23
24
  * @param {HashFunction} hashFunction hash function to use
@@ -31,6 +32,7 @@ const getHash = (str, len, hashFunction) => {
31
32
  };
32
33
 
33
34
  /**
35
+ * Returns string prefixed by an underscore if it is a number.
34
36
  * @param {string} str the string
35
37
  * @returns {string} string prefixed by an underscore if it is a number
36
38
  */
@@ -52,6 +54,7 @@ const avoidNumber = (str) => {
52
54
  };
53
55
 
54
56
  /**
57
+ * Returns id representation.
55
58
  * @param {string} request the request
56
59
  * @returns {string} id representation
57
60
  */
@@ -59,6 +62,7 @@ const requestToId = (request) =>
59
62
  request.replace(/^(\.\.?\/)+/, "").replace(/(^[.-]|[^a-z0-9_-])+/gi, "_");
60
63
 
61
64
  /**
65
+ * Shorten long string.
62
66
  * @param {string} string the string
63
67
  * @param {string} delimiter separator for string and hash
64
68
  * @param {HashFunction} hashFunction hash function to use
@@ -74,6 +78,7 @@ const shortenLongString = (string, delimiter, hashFunction) => {
74
78
  };
75
79
 
76
80
  /**
81
+ * Gets short module name.
77
82
  * @param {Module} module the module
78
83
  * @param {string} context context directory
79
84
  * @param {AssociatedObjectForCache=} associatedObjectForCache an object to which the cache will be attached
@@ -92,6 +97,7 @@ const getShortModuleName = (module, context, associatedObjectForCache) => {
92
97
  };
93
98
 
94
99
  /**
100
+ * Gets long module name.
95
101
  * @param {string} shortName the short name
96
102
  * @param {Module} module the module
97
103
  * @param {string} context context directory
@@ -111,6 +117,7 @@ const getLongModuleName = (
111
117
  };
112
118
 
113
119
  /**
120
+ * Gets full module name.
114
121
  * @param {Module} module the module
115
122
  * @param {string} context context directory
116
123
  * @param {AssociatedObjectForCache=} associatedObjectForCache an object to which the cache will be attached
@@ -120,6 +127,7 @@ const getFullModuleName = (module, context, associatedObjectForCache) =>
120
127
  makePathsRelative(context, module.identifier(), associatedObjectForCache);
121
128
 
122
129
  /**
130
+ * Gets short chunk name.
123
131
  * @param {Chunk} chunk the chunk
124
132
  * @param {ChunkGraph} chunkGraph the chunk graph
125
133
  * @param {string} context context directory
@@ -148,6 +156,7 @@ const getShortChunkName = (
148
156
  };
149
157
 
150
158
  /**
159
+ * Gets long chunk name.
151
160
  * @param {Chunk} chunk the chunk
152
161
  * @param {ChunkGraph} chunkGraph the chunk graph
153
162
  * @param {string} context context directory
@@ -185,6 +194,7 @@ const getLongChunkName = (
185
194
  };
186
195
 
187
196
  /**
197
+ * Gets full chunk name.
188
198
  * @param {Chunk} chunk the chunk
189
199
  * @param {ChunkGraph} chunkGraph the chunk graph
190
200
  * @param {string} context context directory
@@ -206,6 +216,7 @@ const getFullChunkName = (
206
216
  };
207
217
 
208
218
  /**
219
+ * Adds to map of items.
209
220
  * @template K
210
221
  * @template V
211
222
  * @param {Map<K, V[]>} map a map from key to values
@@ -225,6 +236,7 @@ const addToMapOfItems = (map, key, value) => {
225
236
  /** @typedef {Set<string>} UsedModuleIds */
226
237
 
227
238
  /**
239
+ * Gets used module ids and modules.
228
240
  * @param {Compilation} compilation the compilation
229
241
  * @param {((module: Module) => boolean)=} filter filter modules
230
242
  * @returns {[UsedModuleIds, Module[]]} used module ids as strings and modules without id matching the filter
@@ -263,6 +275,7 @@ const getUsedModuleIdsAndModules = (compilation, filter) => {
263
275
  /** @typedef {Set<string>} UsedChunkIds */
264
276
 
265
277
  /**
278
+ * Gets used chunk ids.
266
279
  * @param {Compilation} compilation the compilation
267
280
  * @returns {UsedChunkIds} used chunk ids as strings
268
281
  */
@@ -286,6 +299,7 @@ const getUsedChunkIds = (compilation) => {
286
299
  };
287
300
 
288
301
  /**
302
+ * Returns list of items without a name.
289
303
  * @template T
290
304
  * @param {Iterable<T>} items list of items to be named
291
305
  * @param {(item: T) => string} getShortName get a short name for an item
@@ -304,6 +318,7 @@ const assignNames = (
304
318
  assignName
305
319
  ) => {
306
320
  /**
321
+ * Defines the map to item type used by this module.
307
322
  * @template T
308
323
  * @typedef {Map<string, T[]>} MapToItem
309
324
  */
@@ -358,6 +373,7 @@ const assignNames = (
358
373
  };
359
374
 
360
375
  /**
376
+ * Assign deterministic ids.
361
377
  * @template T
362
378
  * @param {T[]} items list of items to be named
363
379
  * @param {(item: T) => string} getName get a name for an item
@@ -412,6 +428,7 @@ const assignDeterministicIds = (
412
428
  };
413
429
 
414
430
  /**
431
+ * Assign ascending module ids.
415
432
  * @param {UsedModuleIds} usedIds used ids
416
433
  * @param {Iterable<Module>} modules the modules
417
434
  * @param {Compilation} compilation the compilation
@@ -425,6 +442,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
425
442
  let assignId;
426
443
  if (usedIds.size > 0) {
427
444
  /**
445
+ * Processes the provided module.
428
446
  * @param {Module} module the module
429
447
  */
430
448
  assignId = (module) => {
@@ -435,6 +453,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
435
453
  };
436
454
  } else {
437
455
  /**
456
+ * Processes the provided module.
438
457
  * @param {Module} module the module
439
458
  */
440
459
  assignId = (module) => {
@@ -449,6 +468,7 @@ const assignAscendingModuleIds = (usedIds, modules, compilation) => {
449
468
  };
450
469
 
451
470
  /**
471
+ * Assign ascending chunk ids.
452
472
  * @param {Iterable<Chunk>} chunks the chunks
453
473
  * @param {Compilation} compilation the compilation
454
474
  * @returns {void}
@@ -17,6 +17,7 @@ const {
17
17
  /** @typedef {import("../Compiler")} Compiler */
18
18
 
19
19
  /**
20
+ * Defines the named chunk ids plugin options type used by this module.
20
21
  * @typedef {object} NamedChunkIdsPluginOptions
21
22
  * @property {string=} context context
22
23
  * @property {string=} delimiter delimiter
@@ -26,6 +27,7 @@ const PLUGIN_NAME = "NamedChunkIdsPlugin";
26
27
 
27
28
  class NamedChunkIdsPlugin {
28
29
  /**
30
+ * Creates an instance of NamedChunkIdsPlugin.
29
31
  * @param {NamedChunkIdsPluginOptions=} options options
30
32
  */
31
33
  constructor(options = {}) {
@@ -34,7 +36,7 @@ class NamedChunkIdsPlugin {
34
36
  }
35
37
 
36
38
  /**
37
- * Apply the plugin
39
+ * Applies the plugin by registering its hooks on the compiler.
38
40
  * @param {Compiler} compiler the compiler instance
39
41
  * @returns {void}
40
42
  */
@@ -17,6 +17,7 @@ const {
17
17
  /** @typedef {import("../Compiler")} Compiler */
18
18
 
19
19
  /**
20
+ * Defines the named module ids plugin options type used by this module.
20
21
  * @typedef {object} NamedModuleIdsPluginOptions
21
22
  * @property {string=} context context
22
23
  */
@@ -25,6 +26,7 @@ const PLUGIN_NAME = "NamedModuleIdsPlugin";
25
26
 
26
27
  class NamedModuleIdsPlugin {
27
28
  /**
29
+ * Creates an instance of NamedModuleIdsPlugin.
28
30
  * @param {NamedModuleIdsPluginOptions=} options options
29
31
  */
30
32
  constructor(options = {}) {
@@ -33,7 +35,7 @@ class NamedModuleIdsPlugin {
33
35
  }
34
36
 
35
37
  /**
36
- * Apply the plugin
38
+ * Applies the plugin by registering its hooks on the compiler.
37
39
  * @param {Compiler} compiler the compiler instance
38
40
  * @returns {void}
39
41
  */
@@ -15,7 +15,7 @@ const PLUGIN_NAME = "NaturalChunkIdsPlugin";
15
15
 
16
16
  class NaturalChunkIdsPlugin {
17
17
  /**
18
- * Apply the plugin
18
+ * Applies the plugin by registering its hooks on the compiler.
19
19
  * @param {Compiler} compiler the compiler instance
20
20
  * @returns {void}
21
21
  */
@@ -19,7 +19,7 @@ const PLUGIN_NAME = "NaturalModuleIdsPlugin";
19
19
 
20
20
  class NaturalModuleIdsPlugin {
21
21
  /**
22
- * Apply the plugin
22
+ * Applies the plugin by registering its hooks on the compiler.
23
23
  * @param {Compiler} compiler the compiler instance
24
24
  * @returns {void}
25
25
  */
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "OccurrenceChunkIdsPlugin";
16
16
 
17
17
  class OccurrenceChunkIdsPlugin {
18
18
  /**
19
+ * Creates an instance of OccurrenceChunkIdsPlugin.
19
20
  * @param {OccurrenceChunkIdsPluginOptions=} options options object
20
21
  */
21
22
  constructor(options = {}) {
@@ -24,7 +25,7 @@ class OccurrenceChunkIdsPlugin {
24
25
  }
25
26
 
26
27
  /**
27
- * Apply the plugin
28
+ * Applies the plugin by registering its hooks on the compiler.
28
29
  * @param {Compiler} compiler the compiler instance
29
30
  * @returns {void}
30
31
  */
@@ -21,6 +21,7 @@ const PLUGIN_NAME = "OccurrenceModuleIdsPlugin";
21
21
 
22
22
  class OccurrenceModuleIdsPlugin {
23
23
  /**
24
+ * Creates an instance of OccurrenceModuleIdsPlugin.
24
25
  * @param {OccurrenceModuleIdsPluginOptions=} options options object
25
26
  */
26
27
  constructor(options = {}) {
@@ -29,7 +30,7 @@ class OccurrenceModuleIdsPlugin {
29
30
  }
30
31
 
31
32
  /**
32
- * Apply the plugin
33
+ * Applies the plugin by registering its hooks on the compiler.
33
34
  * @param {Compiler} compiler the compiler instance
34
35
  * @returns {void}
35
36
  */
@@ -79,6 +80,7 @@ class OccurrenceModuleIdsPlugin {
79
80
  }
80
81
 
81
82
  /**
83
+ * Count occurs in entry.
82
84
  * @param {Module} module module
83
85
  * @returns {number} count of occurs
84
86
  */
@@ -96,6 +98,7 @@ class OccurrenceModuleIdsPlugin {
96
98
  };
97
99
 
98
100
  /**
101
+ * Returns count of occurs.
99
102
  * @param {Module} module module
100
103
  * @returns {number} count of occurs
101
104
  */
@@ -18,6 +18,7 @@ const { getUsedModuleIdsAndModules } = require("./IdHelpers");
18
18
  const plugin = "SyncModuleIdsPlugin";
19
19
 
20
20
  /**
21
+ * Represents the sync module ids plugin runtime component.
21
22
  * @typedef {object} SyncModuleIdsPluginOptions
22
23
  * @property {string} path path to file
23
24
  * @property {string=} context context for module names
@@ -27,6 +28,7 @@ const plugin = "SyncModuleIdsPlugin";
27
28
 
28
29
  class SyncModuleIdsPlugin {
29
30
  /**
31
+ * Creates an instance of SyncModuleIdsPlugin.
30
32
  * @param {SyncModuleIdsPluginOptions} options options
31
33
  */
32
34
  constructor(options) {
@@ -35,7 +37,7 @@ class SyncModuleIdsPlugin {
35
37
  }
36
38
 
37
39
  /**
38
- * Apply the plugin
40
+ * Applies the plugin by registering its hooks on the compiler.
39
41
  * @param {Compiler} compiler the compiler instance
40
42
  * @returns {void}
41
43
  */
package/lib/index.js CHANGED
@@ -85,6 +85,7 @@ const memoize = require("./util/memoize");
85
85
  /** @typedef {import("./util/fs").OutputFileSystem} OutputFileSystem */
86
86
 
87
87
  /**
88
+ * Returns function.
88
89
  * @template {EXPECTED_FUNCTION} T
89
90
  * @param {() => T} factory factory function
90
91
  * @returns {T} function
@@ -93,6 +94,7 @@ const lazyFunction = (factory) => {
93
94
  const fac = memoize(factory);
94
95
  const f = /** @type {unknown} */ (
95
96
  /**
97
+ * Handles the callback logic for this hook.
96
98
  * @param {...EXPECTED_ANY} args args
97
99
  * @returns {T} result
98
100
  */
@@ -102,6 +104,7 @@ const lazyFunction = (factory) => {
102
104
  };
103
105
 
104
106
  /**
107
+ * Merges the provided values into a single result.
105
108
  * @template A
106
109
  * @template B
107
110
  * @param {A} obj input a
@@ -142,6 +145,7 @@ module.exports = mergeExports(fn, {
142
145
  return require("./webpack");
143
146
  },
144
147
  /**
148
+ * Returns validate fn.
145
149
  * @returns {(configuration: Configuration | MultiConfiguration) => void} validate fn
146
150
  */
147
151
  get validate() {
@@ -151,6 +155,7 @@ module.exports = mergeExports(fn, {
151
155
 
152
156
  const getRealValidate = memoize(
153
157
  /**
158
+ * Handles the callback logic for this hook.
154
159
  * @returns {(configuration: Configuration | MultiConfiguration) => void} validate fn
155
160
  */
156
161
  () => {
@@ -23,7 +23,7 @@ const PLUGIN_NAME = "ArrayPushCallbackChunkFormatPlugin";
23
23
 
24
24
  class ArrayPushCallbackChunkFormatPlugin {
25
25
  /**
26
- * Apply the plugin
26
+ * Applies the plugin by registering its hooks on the compiler.
27
27
  * @param {Compiler} compiler the compiler instance
28
28
  * @returns {void}
29
29
  */