webpack 5.106.0 → 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 -4
  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 +71 -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 +11 -3
  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 +14 -5
  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
@@ -6,6 +6,7 @@
6
6
  "use strict";
7
7
 
8
8
  /**
9
+ * Defines the css token callbacks type used by this module.
9
10
  * @typedef {object} CssTokenCallbacks
10
11
  * @property {((input: string, start: number, end: number) => number)=} comment
11
12
  * @property {((input: string, start: number, end: number) => number)=} whitespace
@@ -111,6 +112,7 @@ const consumeSpace = (input, pos, callbacks) => {
111
112
  // Replace any U+000D CARRIAGE RETURN (CR) code points, U+000C FORM FEED (FF) code points, or pairs of U+000D CARRIAGE RETURN (CR) followed by U+000A LINE FEED (LF) in input by a single U+000A LINE FEED (LF) code point.
112
113
 
113
114
  /**
115
+ * Checks whether newline true, if cc is a newline.
114
116
  * @param {number} cc char code
115
117
  * @returns {boolean} true, if cc is a newline
116
118
  */
@@ -118,6 +120,7 @@ const _isNewline = (cc) =>
118
120
  cc === CC_LINE_FEED || cc === CC_CARRIAGE_RETURN || cc === CC_FORM_FEED;
119
121
 
120
122
  /**
123
+ * Consume extra newline.
121
124
  * @param {number} cc char code
122
125
  * @param {string} input input
123
126
  * @param {number} pos position
@@ -132,12 +135,14 @@ const consumeExtraNewline = (cc, input, pos) => {
132
135
  };
133
136
 
134
137
  /**
138
+ * Checks whether space true, if cc is a space (U+0009 CHARACTER TABULATION or U+0020 SPACE).
135
139
  * @param {number} cc char code
136
140
  * @returns {boolean} true, if cc is a space (U+0009 CHARACTER TABULATION or U+0020 SPACE)
137
141
  */
138
142
  const _isSpace = (cc) => cc === CC_TAB || cc === CC_SPACE;
139
143
 
140
144
  /**
145
+ * Checks whether white space true, if cc is a whitespace.
141
146
  * @param {number} cc char code
142
147
  * @returns {boolean} true, if cc is a whitespace
143
148
  */
@@ -207,6 +212,7 @@ const consumeComments = (input, pos, callbacks) => {
207
212
  };
208
213
 
209
214
  /**
215
+ * Checks whether hex digit true, if cc is a hex digit.
210
216
  * @param {number} cc char code
211
217
  * @returns {boolean} true, if cc is a hex digit
212
218
  */
@@ -216,6 +222,7 @@ const _isHexDigit = (cc) =>
216
222
  (cc >= CC_LOWER_A && cc <= CC_LOWER_F);
217
223
 
218
224
  /**
225
+ * Consume an escaped code point.
219
226
  * @param {string} input input
220
227
  * @param {number} pos position
221
228
  * @returns {number} position
@@ -339,6 +346,7 @@ const consumeAStringToken = (input, pos, callbacks) => {
339
346
  };
340
347
 
341
348
  /**
349
+ * Checks whether this object is non ascii code point.
342
350
  * @param {number} cc char code
343
351
  * @param {number} q char code
344
352
  * @returns {boolean} is non-ASCII code point
@@ -348,6 +356,7 @@ const isNonASCIICodePoint = (cc, q) =>
348
356
  cc > 0x80;
349
357
 
350
358
  /**
359
+ * Checks whether this object is letter.
351
360
  * @param {number} cc char code
352
361
  * @returns {boolean} is letter
353
362
  */
@@ -356,6 +365,7 @@ const isLetter = (cc) =>
356
365
  (cc >= CC_UPPER_A && cc <= CC_UPPER_Z);
357
366
 
358
367
  /**
368
+ * Is ident start code point.
359
369
  * @param {number} cc char code
360
370
  * @param {number} q char code
361
371
  * @returns {boolean} is identifier start code
@@ -364,6 +374,7 @@ const _isIdentStartCodePoint = (cc, q) =>
364
374
  isLetter(cc) || isNonASCIICodePoint(cc, q) || cc === CC_LOW_LINE;
365
375
 
366
376
  /**
377
+ * Is ident code point.
367
378
  * @param {number} cc char code
368
379
  * @param {number} q char code
369
380
  * @returns {boolean} is identifier code
@@ -371,12 +382,14 @@ const _isIdentStartCodePoint = (cc, q) =>
371
382
  const _isIdentCodePoint = (cc, q) =>
372
383
  _isIdentStartCodePoint(cc, q) || _isDigit(cc) || cc === CC_HYPHEN_MINUS;
373
384
  /**
385
+ * Checks whether digit is digit.
374
386
  * @param {number} cc char code
375
387
  * @returns {boolean} is digit
376
388
  */
377
389
  const _isDigit = (cc) => cc >= CC_0 && cc <= CC_9;
378
390
 
379
391
  /**
392
+ * If two code points are valid escape.
380
393
  * @param {string} input input
381
394
  * @param {number} pos position
382
395
  * @param {number=} f first code point
@@ -401,6 +414,7 @@ const _ifTwoCodePointsAreValidEscape = (input, pos, f, s) => {
401
414
  };
402
415
 
403
416
  /**
417
+ * If three code points would start an ident sequence.
404
418
  * @param {string} input input
405
419
  * @param {number} pos position
406
420
  * @param {number=} f first
@@ -453,6 +467,7 @@ const _ifThreeCodePointsWouldStartAnIdentSequence = (input, pos, f, s, t) => {
453
467
  };
454
468
 
455
469
  /**
470
+ * If three code points would start a number.
456
471
  * @param {string} input input
457
472
  * @param {number} pos position
458
473
  * @param {number=} f first
@@ -873,6 +888,7 @@ const _consumeAnIdentSequence = (input, pos) => {
873
888
  };
874
889
 
875
890
  /**
891
+ * Is non printable code point.
876
892
  * @param {number} cc char code
877
893
  * @returns {boolean} true, when cc is the non-printable code point, otherwise false
878
894
  */
@@ -883,6 +899,7 @@ const _isNonPrintableCodePoint = (cc) =>
883
899
  cc === 0x7f;
884
900
 
885
901
  /**
902
+ * Consume the remnants of a bad url.
886
903
  * @param {string} input input
887
904
  * @param {number} pos position
888
905
  * @returns {number} position
@@ -924,6 +941,7 @@ const consumeTheRemnantsOfABadUrl = (input, pos) => {
924
941
  };
925
942
 
926
943
  /**
944
+ * Consume a url token.
927
945
  * @param {string} input input
928
946
  * @param {number} pos position
929
947
  * @param {number} fnStart start
@@ -1285,6 +1303,7 @@ const consumeAToken = (input, pos, callbacks) => {
1285
1303
  };
1286
1304
 
1287
1305
  /**
1306
+ * Returns pos.
1288
1307
  * @param {string} input input css
1289
1308
  * @param {number=} pos pos
1290
1309
  * @param {CssTokenCallbacks=} callbacks callbacks
@@ -1309,6 +1328,7 @@ module.exports = (input, pos = 0, callbacks = {}) => {
1309
1328
  };
1310
1329
 
1311
1330
  /**
1331
+ * Returns pos.
1312
1332
  * @param {string} input input css
1313
1333
  * @param {number} pos pos
1314
1334
  * @param {CssTokenCallbacks} callbacks callbacks
@@ -1411,6 +1431,7 @@ const consumeUntil = (input, pos, callbacks, additional, options = {}) => {
1411
1431
  };
1412
1432
 
1413
1433
  /**
1434
+ * Returns position after comments.
1414
1435
  * @param {string} input input
1415
1436
  * @param {number} pos position
1416
1437
  * @returns {number} position after comments
@@ -1428,6 +1449,7 @@ const eatComments = (input, pos) => {
1428
1449
  };
1429
1450
 
1430
1451
  /**
1452
+ * Returns position after whitespace.
1431
1453
  * @param {string} input input
1432
1454
  * @param {number} pos position
1433
1455
  * @returns {number} position after whitespace
@@ -1441,6 +1463,7 @@ const eatWhitespace = (input, pos) => {
1441
1463
  };
1442
1464
 
1443
1465
  /**
1466
+ * Eat whitespace and comments.
1444
1467
  * @param {string} input input
1445
1468
  * @param {number} pos position
1446
1469
  * @returns {[number, boolean]} position after whitespace and comments
@@ -1466,6 +1489,7 @@ const eatWhitespaceAndComments = (input, pos) => {
1466
1489
  };
1467
1490
 
1468
1491
  /**
1492
+ * Returns position after whitespace.
1469
1493
  * @param {string} input input
1470
1494
  * @param {number} pos position
1471
1495
  * @returns {number} position after whitespace
@@ -1486,6 +1510,7 @@ const eatWhiteLine = (input, pos) => {
1486
1510
  };
1487
1511
 
1488
1512
  /**
1513
+ * Skip comments and eat ident sequence.
1489
1514
  * @param {string} input input
1490
1515
  * @param {number} pos position
1491
1516
  * @returns {[number, number] | undefined} positions of ident sequence
@@ -1511,6 +1536,7 @@ const skipCommentsAndEatIdentSequence = (input, pos) => {
1511
1536
  };
1512
1537
 
1513
1538
  /**
1539
+ * Returns positions of ident sequence.
1514
1540
  * @param {string} input input
1515
1541
  * @param {number} pos position
1516
1542
  * @returns {[number, number] | undefined} positions of ident sequence
@@ -1531,6 +1557,7 @@ const eatString = (input, pos) => {
1531
1557
  };
1532
1558
 
1533
1559
  /**
1560
+ * Eat image set strings.
1534
1561
  * @param {string} input input
1535
1562
  * @param {number} pos position
1536
1563
  * @param {CssTokenCallbacks} cbs callbacks
@@ -1601,6 +1628,7 @@ const eatImageSetStrings = (input, pos, cbs) => {
1601
1628
  };
1602
1629
 
1603
1630
  /**
1631
+ * Returns positions of top level tokens.
1604
1632
  * @param {string} input input
1605
1633
  * @param {number} pos position
1606
1634
  * @param {CssTokenCallbacks} cbs callbacks
@@ -1744,6 +1772,7 @@ const eatImportTokens = (input, pos, cbs) => {
1744
1772
  };
1745
1773
 
1746
1774
  /**
1775
+ * Eat ident sequence.
1747
1776
  * @param {string} input input
1748
1777
  * @param {number} pos position
1749
1778
  * @returns {[number, number] | undefined} positions of ident sequence
@@ -1769,6 +1798,7 @@ const eatIdentSequence = (input, pos) => {
1769
1798
  };
1770
1799
 
1771
1800
  /**
1801
+ * Eat ident sequence or string.
1772
1802
  * @param {string} input input
1773
1803
  * @param {number} pos position
1774
1804
  * @returns {[number, number, boolean] | undefined} positions of ident sequence or string
@@ -1799,6 +1829,7 @@ const eatIdentSequenceOrString = (input, pos) => {
1799
1829
  };
1800
1830
 
1801
1831
  /**
1832
+ * Returns function to eat characters.
1802
1833
  * @param {string} chars characters
1803
1834
  * @returns {(input: string, pos: number) => number} function to eat characters
1804
1835
  */
@@ -23,21 +23,25 @@ const { dirname, mkdirpSync } = require("../util/fs");
23
23
  /** @typedef {import("../util/fs").IntermediateFileSystem} IntermediateFileSystem */
24
24
 
25
25
  /**
26
+ * Defines the hook type used by this module.
26
27
  * @template T, R
27
28
  * @typedef {import("tapable").Hook<T, R>} Hook
28
29
  */
29
30
 
30
31
  /**
32
+ * Defines the fake hook type used by this module.
31
33
  * @template T
32
34
  * @typedef {import("../util/deprecation").FakeHook<T>} FakeHook
33
35
  */
34
36
 
35
37
  /**
38
+ * Defines the hook map type used by this module.
36
39
  * @template T
37
40
  * @typedef {import("tapable").HookMap<T>} HookMap
38
41
  */
39
42
 
40
43
  /**
44
+ * Defines the hook interceptor type used by this module.
41
45
  * @template T, R
42
46
  * @typedef {import("tapable").HookInterceptor<T, R>} HookInterceptor
43
47
  */
@@ -57,6 +61,7 @@ try {
57
61
 
58
62
  class Profiler {
59
63
  /**
64
+ * Creates an instance of Profiler.
60
65
  * @param {Inspector} inspector inspector
61
66
  */
62
67
  constructor(inspector) {
@@ -97,6 +102,7 @@ class Profiler {
97
102
  }
98
103
 
99
104
  /**
105
+ * Returns promise for the result.
100
106
  * @param {string} method method name
101
107
  * @param {EXPECTED_OBJECT=} params params
102
108
  * @returns {Promise<EXPECTED_ANY | void>} Promise for the result
@@ -127,6 +133,7 @@ class Profiler {
127
133
  }
128
134
 
129
135
  /**
136
+ * Returns }>} profile result.
130
137
  * @returns {Promise<{ profile: { startTime: number, endTime: number } }>} profile result
131
138
  */
132
139
  stopProfiling() {
@@ -161,6 +168,7 @@ class Profiler {
161
168
  */
162
169
 
163
170
  /**
171
+ * Creates a trace from the provided f.
164
172
  * @param {IntermediateFileSystem} fs filesystem used for output
165
173
  * @param {string} outputPath The location where to write the log.
166
174
  * @returns {Trace} The trace object
@@ -229,6 +237,7 @@ const PLUGIN_NAME = "ProfilingPlugin";
229
237
 
230
238
  class ProfilingPlugin {
231
239
  /**
240
+ * Creates an instance of ProfilingPlugin.
232
241
  * @param {ProfilingPluginOptions=} options options object
233
242
  */
234
243
  constructor(options = {}) {
@@ -237,7 +246,7 @@ class ProfilingPlugin {
237
246
  }
238
247
 
239
248
  /**
240
- * Apply the plugin
249
+ * Applies the plugin by registering its hooks on the compiler.
241
250
  * @param {Compiler} compiler the compiler instance
242
251
  * @returns {void}
243
252
  */
@@ -376,6 +385,7 @@ class ProfilingPlugin {
376
385
  /** @typedef {Record<string, Hook<EXPECTED_ANY, EXPECTED_ANY> | FakeHook<EXPECTED_ANY> | HookMap<EXPECTED_ANY>>} Hooks */
377
386
 
378
387
  /**
388
+ * Intercept all hooks for.
379
389
  * @param {EXPECTED_OBJECT & { hooks?: Hooks }} instance instance
380
390
  * @param {Trace} tracer tracer
381
391
  * @param {string} logLabel log label
@@ -393,6 +403,7 @@ const interceptAllHooksFor = (instance, tracer, logLabel) => {
393
403
  };
394
404
 
395
405
  /**
406
+ * Intercept all parser hooks.
396
407
  * @param {NormalModuleFactory} moduleFactory normal module factory
397
408
  * @param {Trace} tracer tracer
398
409
  */
@@ -414,6 +425,7 @@ const interceptAllParserHooks = (moduleFactory, tracer) => {
414
425
  };
415
426
 
416
427
  /**
428
+ * Intercept all generator hooks.
417
429
  * @param {NormalModuleFactory} moduleFactory normal module factory
418
430
  * @param {Trace} tracer tracer
419
431
  */
@@ -435,6 +447,7 @@ const interceptAllGeneratorHooks = (moduleFactory, tracer) => {
435
447
  };
436
448
 
437
449
  /**
450
+ * Intercept all javascript modules plugin hooks.
438
451
  * @param {Compilation} compilation compilation
439
452
  * @param {Trace} tracer tracer
440
453
  */
@@ -452,6 +465,7 @@ const interceptAllJavascriptModulesPluginHooks = (compilation, tracer) => {
452
465
  };
453
466
 
454
467
  /**
468
+ * Intercept all css modules plugin hooks.
455
469
  * @param {Compilation} compilation compilation
456
470
  * @param {Trace} tracer tracer
457
471
  */
@@ -468,6 +482,7 @@ const interceptAllCssModulesPluginHooks = (compilation, tracer) => {
468
482
  /** @typedef {(...args: EXPECTED_ANY[]) => EXPECTED_ANY | Promise<(...args: EXPECTED_ANY[]) => EXPECTED_ANY>} PluginFunction */
469
483
 
470
484
  /**
485
+ * Creates interceptor for.
471
486
  * @template T
472
487
  * @param {string} instance instance
473
488
  * @param {Trace} tracer tracer
@@ -475,6 +490,7 @@ const interceptAllCssModulesPluginHooks = (compilation, tracer) => {
475
490
  */
476
491
  const makeInterceptorFor = (instance, tracer) => (hookName) => ({
477
492
  /**
493
+ * Returns modified full tap.
478
494
  * @param {FullTap} tapInfo tap info
479
495
  * @returns {FullTap} modified full tap
480
496
  */
@@ -494,6 +510,7 @@ const makeInterceptorFor = (instance, tracer) => (hookName) => ({
494
510
  });
495
511
 
496
512
  /**
513
+ * Creates new profiled tap fn.
497
514
  * @param {string} hookName Name of the hook to profile.
498
515
  * @param {Trace} tracer The trace object.
499
516
  * @param {object} options Options for the profiled fn.
@@ -538,6 +555,7 @@ const makeNewProfiledTapFn = (hookName, tracer, { name, type, fn }) => {
538
555
  fn(
539
556
  ...args,
540
557
  /**
558
+ * Handles the cat callback for this hook.
541
559
  * @param {...EXPECTED_ANY[]} r result
542
560
  */
543
561
  (...r) => {
@@ -108,6 +108,7 @@ const DEFINITIONS = {
108
108
 
109
109
  class AMDDefineDependency extends NullDependency {
110
110
  /**
111
+ * Creates an instance of AMDDefineDependency.
111
112
  * @param {Range} range range
112
113
  * @param {Range | null} arrayRange array range
113
114
  * @param {Range | null} functionRange function range
@@ -130,6 +131,7 @@ class AMDDefineDependency extends NullDependency {
130
131
  }
131
132
 
132
133
  /**
134
+ * Serializes this instance into the provided serializer context.
133
135
  * @param {ObjectSerializerContext} context context
134
136
  */
135
137
  serialize(context) {
@@ -144,6 +146,7 @@ class AMDDefineDependency extends NullDependency {
144
146
  }
145
147
 
146
148
  /**
149
+ * Restores this instance from the provided deserializer context.
147
150
  * @param {ObjectDeserializerContext} context context
148
151
  */
149
152
  deserialize(context) {
@@ -167,6 +170,7 @@ AMDDefineDependency.Template = class AMDDefineDependencyTemplate extends (
167
170
  NullDependency.Template
168
171
  ) {
169
172
  /**
173
+ * Applies the plugin by registering its hooks on the compiler.
170
174
  * @param {Dependency} dependency the dependency for which the template should be applied
171
175
  * @param {ReplaceSource} source the current replace source which can be modified
172
176
  * @param {DependencyTemplateContext} templateContext the context object
@@ -183,6 +187,7 @@ AMDDefineDependency.Template = class AMDDefineDependencyTemplate extends (
183
187
  }
184
188
 
185
189
  /**
190
+ * Returns variable name.
186
191
  * @param {AMDDefineDependency} dependency dependency
187
192
  * @returns {string | false | null} variable name
188
193
  */
@@ -195,6 +200,7 @@ AMDDefineDependency.Template = class AMDDefineDependencyTemplate extends (
195
200
  }
196
201
 
197
202
  /**
203
+ * Returns branch.
198
204
  * @param {AMDDefineDependency} dependency dependency
199
205
  * @returns {string} branch
200
206
  */
@@ -207,6 +213,7 @@ AMDDefineDependency.Template = class AMDDefineDependencyTemplate extends (
207
213
  }
208
214
 
209
215
  /**
216
+ * Processes the provided dependency.
210
217
  * @param {AMDDefineDependency} dependency dependency
211
218
  * @param {ReplaceSource} source source
212
219
  * @param {string} definition definition
@@ -35,6 +35,7 @@ const { addLocalModule, getLocalModule } = require("./LocalModulesHelpers");
35
35
  /** @typedef {import("./LocalModule")} LocalModule */
36
36
 
37
37
  /**
38
+ * Checks whether this object is bound function expression.
38
39
  * @param {Expression | SpreadElement} expr expression
39
40
  * @returns {expr is CallExpression} true if it's a bound function expression
40
41
  */
@@ -51,6 +52,7 @@ const isBoundFunctionExpression = (expr) => {
51
52
  /** @typedef {FunctionExpression | ArrowFunctionExpression} UnboundFunctionExpression */
52
53
 
53
54
  /**
55
+ * Checks whether this object is unbound function expression.
54
56
  * @param {Expression | SpreadElement} expr expression
55
57
  * @returns {expr is FunctionExpression | ArrowFunctionExpression} true when unbound function expression
56
58
  */
@@ -61,6 +63,7 @@ const isUnboundFunctionExpression = (expr) => {
61
63
  };
62
64
 
63
65
  /**
66
+ * Checks whether this object is callable.
64
67
  * @param {Expression | SpreadElement} expr expression
65
68
  * @returns {expr is FunctionExpression | ArrowFunctionExpression | CallExpression} true when callable
66
69
  */
@@ -76,6 +79,7 @@ const PLUGIN_NAME = "AMDDefineDependencyParserPlugin";
76
79
 
77
80
  class AMDDefineDependencyParserPlugin {
78
81
  /**
82
+ * Creates an instance of AMDDefineDependencyParserPlugin.
79
83
  * @param {JavascriptParserOptions} options parserOptions
80
84
  */
81
85
  constructor(options) {
@@ -83,6 +87,7 @@ class AMDDefineDependencyParserPlugin {
83
87
  }
84
88
 
85
89
  /**
90
+ * Applies the plugin by registering its hooks on the compiler.
86
91
  * @param {JavascriptParser} parser the parser
87
92
  * @returns {void}
88
93
  */
@@ -93,6 +98,7 @@ class AMDDefineDependencyParserPlugin {
93
98
  }
94
99
 
95
100
  /**
101
+ * Processes the provided parser.
96
102
  * @param {JavascriptParser} parser the parser
97
103
  * @param {CallExpression} expr call expression
98
104
  * @param {BasicEvaluatedExpression} param param
@@ -160,6 +166,7 @@ class AMDDefineDependencyParserPlugin {
160
166
  }
161
167
 
162
168
  /**
169
+ * Processes the provided parser.
163
170
  * @param {JavascriptParser} parser the parser
164
171
  * @param {CallExpression} expr call expression
165
172
  * @param {BasicEvaluatedExpression} param param
@@ -226,6 +233,7 @@ class AMDDefineDependencyParserPlugin {
226
233
  }
227
234
 
228
235
  /**
236
+ * Processes the provided parser.
229
237
  * @param {JavascriptParser} parser the parser
230
238
  * @param {CallExpression} expr call expression
231
239
  * @param {BasicEvaluatedExpression} param param
@@ -251,6 +259,7 @@ class AMDDefineDependencyParserPlugin {
251
259
  }
252
260
 
253
261
  /**
262
+ * Process call define.
254
263
  * @param {JavascriptParser} parser the parser
255
264
  * @param {CallExpression} expr call expression
256
265
  * @returns {boolean | undefined} result
@@ -464,6 +473,7 @@ class AMDDefineDependencyParserPlugin {
464
473
  }
465
474
 
466
475
  /**
476
+ * New define dependency.
467
477
  * @param {Range} range range
468
478
  * @param {Range | null} arrayRange array range
469
479
  * @param {Range | null} functionRange function range
@@ -488,6 +498,7 @@ class AMDDefineDependencyParserPlugin {
488
498
  }
489
499
 
490
500
  /**
501
+ * New require array dependency.
491
502
  * @param {(string | LocalModuleDependency | AMDRequireItemDependency)[]} depsArray deps array
492
503
  * @param {Range} range range
493
504
  * @returns {AMDRequireArrayDependency} AMDRequireArrayDependency
@@ -497,6 +508,7 @@ class AMDDefineDependencyParserPlugin {
497
508
  }
498
509
 
499
510
  /**
511
+ * New require item dependency.
500
512
  * @param {string} request request
501
513
  * @param {Range=} range range
502
514
  * @returns {AMDRequireItemDependency} AMDRequireItemDependency
@@ -46,6 +46,7 @@ const PLUGIN_NAME = "AMDPlugin";
46
46
 
47
47
  class AMDPlugin {
48
48
  /**
49
+ * Creates an instance of AMDPlugin.
49
50
  * @param {AmdOptions} amdOptions the AMD options
50
51
  */
51
52
  constructor(amdOptions) {
@@ -53,7 +54,7 @@ class AMDPlugin {
53
54
  }
54
55
 
55
56
  /**
56
- * Apply the plugin
57
+ * Applies the plugin by registering its hooks on the compiler.
57
58
  * @param {Compiler} compiler the compiler instance
58
59
  * @returns {void}
59
60
  */
@@ -133,6 +134,7 @@ class AMDPlugin {
133
134
  });
134
135
 
135
136
  /**
137
+ * Handles the hook callback for this code path.
136
138
  * @param {Parser} parser parser parser
137
139
  * @param {JavascriptParserOptions} parserOptions parserOptions
138
140
  * @returns {void}
@@ -141,6 +143,7 @@ class AMDPlugin {
141
143
  if (parserOptions.amd !== undefined && !parserOptions.amd) return;
142
144
 
143
145
  /**
146
+ * Processes the provided option expr.
144
147
  * @param {string} optionExpr option expression
145
148
  * @param {string} rootName root name
146
149
  * @param {GetMembers} getMembers callback
@@ -20,6 +20,7 @@ const NullDependency = require("./NullDependency");
20
20
 
21
21
  class AMDRequireArrayDependency extends NullDependency {
22
22
  /**
23
+ * Creates an instance of AMDRequireArrayDependency.
23
24
  * @param {(string | LocalModuleDependency | AMDRequireItemDependency)[]} depsArray deps array
24
25
  * @param {Range} range range
25
26
  */
@@ -39,6 +40,7 @@ class AMDRequireArrayDependency extends NullDependency {
39
40
  }
40
41
 
41
42
  /**
43
+ * Serializes this instance into the provided serializer context.
42
44
  * @param {ObjectSerializerContext} context context
43
45
  */
44
46
  serialize(context) {
@@ -51,6 +53,7 @@ class AMDRequireArrayDependency extends NullDependency {
51
53
  }
52
54
 
53
55
  /**
56
+ * Restores this instance from the provided deserializer context.
54
57
  * @param {ObjectDeserializerContext} context context
55
58
  */
56
59
  deserialize(context) {
@@ -72,6 +75,7 @@ AMDRequireArrayDependency.Template = class AMDRequireArrayDependencyTemplate ext
72
75
  DependencyTemplate
73
76
  ) {
74
77
  /**
78
+ * Applies the plugin by registering its hooks on the compiler.
75
79
  * @param {Dependency} dependency the dependency for which the template should be applied
76
80
  * @param {ReplaceSource} source the current replace source which can be modified
77
81
  * @param {DependencyTemplateContext} templateContext the context object
@@ -84,6 +88,7 @@ AMDRequireArrayDependency.Template = class AMDRequireArrayDependencyTemplate ext
84
88
  }
85
89
 
86
90
  /**
91
+ * Returns content.
87
92
  * @param {AMDRequireArrayDependency} dep the dependency for which the template should be applied
88
93
  * @param {DependencyTemplateContext} templateContext the context object
89
94
  * @returns {string} content
@@ -96,6 +101,7 @@ AMDRequireArrayDependency.Template = class AMDRequireArrayDependencyTemplate ext
96
101
  }
97
102
 
98
103
  /**
104
+ * Content for dependency.
99
105
  * @param {string | LocalModuleDependency | AMDRequireItemDependency} dep the dependency for which the template should be applied
100
106
  * @param {DependencyTemplateContext} templateContext the context object
101
107
  * @returns {string} content
@@ -15,6 +15,7 @@ const ContextDependency = require("./ContextDependency");
15
15
 
16
16
  class AMDRequireContextDependency extends ContextDependency {
17
17
  /**
18
+ * Creates an instance of AMDRequireContextDependency.
18
19
  * @param {ContextDependencyOptions} options options
19
20
  * @param {Range} range range
20
21
  * @param {Range} valueRange value range
@@ -35,6 +36,7 @@ class AMDRequireContextDependency extends ContextDependency {
35
36
  }
36
37
 
37
38
  /**
39
+ * Serializes this instance into the provided serializer context.
38
40
  * @param {ObjectSerializerContext} context context
39
41
  */
40
42
  serialize(context) {
@@ -47,6 +49,7 @@ class AMDRequireContextDependency extends ContextDependency {
47
49
  }
48
50
 
49
51
  /**
52
+ * Restores this instance from the provided deserializer context.
50
53
  * @param {ObjectDeserializerContext} context context
51
54
  */
52
55
  deserialize(context) {
@@ -12,6 +12,7 @@ const makeSerializable = require("../util/makeSerializable");
12
12
 
13
13
  class AMDRequireDependenciesBlock extends AsyncDependenciesBlock {
14
14
  /**
15
+ * Creates an instance of AMDRequireDependenciesBlock.
15
16
  * @param {DependencyLocation} loc location info
16
17
  * @param {string=} request request
17
18
  */