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
@@ -38,11 +38,13 @@ const MAX_REDIRECTS = 5;
38
38
  /** @typedef {(url: URL, requestOptions: RequestOptions, callback: (incomingMessage: IncomingMessage) => void) => EventEmitter} Fetch */
39
39
 
40
40
  /**
41
+ * Defines the events map type used by this module.
41
42
  * @typedef {object} EventsMap
42
43
  * @property {[Error]} error
43
44
  */
44
45
 
45
46
  /**
47
+ * Returns fn.
46
48
  * @param {typeof import("http") | typeof import("https")} request request
47
49
  * @param {string | URL | undefined} proxy proxy
48
50
  * @returns {Fetch} fn
@@ -52,6 +54,7 @@ const proxyFetch = (request, proxy) => (url, options, callback) => {
52
54
  const eventEmitter = new EventEmitter();
53
55
 
54
56
  /**
57
+ * Processes the provided socket.
55
58
  * @param {Socket=} socket socket
56
59
  * @returns {void}
57
60
  */
@@ -105,6 +108,7 @@ const proxyFetch = (request, proxy) => (url, options, callback) => {
105
108
  let inProgressWrite;
106
109
 
107
110
  /**
111
+ * Returns safe path.
108
112
  * @param {string} str path
109
113
  * @returns {string} safe path
110
114
  */
@@ -112,6 +116,7 @@ const toSafePath = (str) =>
112
116
  str.replace(/^[^a-z0-9]+|[^a-z0-9]+$/gi, "").replace(/[^a-z0-9._-]+/gi, "_");
113
117
 
114
118
  /**
119
+ * Returns integrity.
115
120
  * @param {Buffer} content content
116
121
  * @returns {string} integrity
117
122
  */
@@ -123,6 +128,7 @@ const computeIntegrity = (content) => {
123
128
  };
124
129
 
125
130
  /**
131
+ * Returns true, if integrity matches.
126
132
  * @param {Buffer} content content
127
133
  * @param {string} integrity integrity
128
134
  * @returns {boolean} true, if integrity matches
@@ -133,6 +139,7 @@ const verifyIntegrity = (content, integrity) => {
133
139
  };
134
140
 
135
141
  /**
142
+ * Parses key value pairs.
136
143
  * @param {string} str input
137
144
  * @returns {Record<string, string>} parsed
138
145
  */
@@ -155,6 +162,7 @@ const parseKeyValuePairs = (str) => {
155
162
  };
156
163
 
157
164
  /**
165
+ * Parses cache control.
158
166
  * @param {string | undefined} cacheControl Cache-Control header
159
167
  * @param {number} requestTime timestamp of request
160
168
  * @returns {{ storeCache: boolean, storeLock: boolean, validUntil: number }} Logic for storing in cache and lockfile cache
@@ -182,6 +190,7 @@ const parseCacheControl = (cacheControl, requestTime) => {
182
190
  };
183
191
 
184
192
  /**
193
+ * Defines the lockfile entry type used by this module.
185
194
  * @typedef {object} LockfileEntry
186
195
  * @property {string} resolved
187
196
  * @property {string} integrity
@@ -189,6 +198,7 @@ const parseCacheControl = (cacheControl, requestTime) => {
189
198
  */
190
199
 
191
200
  /**
201
+ * Are lockfile entries equal.
192
202
  * @param {LockfileEntry} a first lockfile entry
193
203
  * @param {LockfileEntry} b second lockfile entry
194
204
  * @returns {boolean} true when equal, otherwise false
@@ -199,6 +209,7 @@ const areLockfileEntriesEqual = (a, b) =>
199
209
  a.contentType === b.contentType;
200
210
 
201
211
  /**
212
+ * Returns , integrity: ${string}, contentType: ${string}`} stringified entry.
202
213
  * @param {LockfileEntry} entry lockfile entry
203
214
  * @returns {`resolved: ${string}, integrity: ${string}, contentType: ${string}`} stringified entry
204
215
  */
@@ -230,6 +241,7 @@ class Lockfile {
230
241
  }
231
242
 
232
243
  /**
244
+ * Parses the provided source and updates the parser state.
233
245
  * @param {string} content content of the lockfile
234
246
  * @returns {Lockfile} lockfile
235
247
  */
@@ -257,6 +269,7 @@ class Lockfile {
257
269
  }
258
270
 
259
271
  /**
272
+ * Returns a string representation.
260
273
  * @returns {string} stringified lockfile
261
274
  */
262
275
  toString() {
@@ -281,16 +294,19 @@ class Lockfile {
281
294
  }
282
295
 
283
296
  /**
297
+ * Defines the fn without key callback type used by this module.
284
298
  * @template R
285
299
  * @typedef {(err: Error | null, result?: R) => void} FnWithoutKeyCallback
286
300
  */
287
301
 
288
302
  /**
303
+ * Defines the fn without key type used by this module.
289
304
  * @template R
290
305
  * @typedef {(callback: FnWithoutKeyCallback<R>) => void} FnWithoutKey
291
306
  */
292
307
 
293
308
  /**
309
+ * Caches d without key.
294
310
  * @template R
295
311
  * @param {FnWithoutKey<R>} fn function
296
312
  * @returns {FnWithoutKey<R>} cached function
@@ -324,17 +340,20 @@ const cachedWithoutKey = (fn) => {
324
340
  };
325
341
 
326
342
  /**
343
+ * Defines the fn with key callback type used by this module.
327
344
  * @template R
328
345
  * @typedef {(err: Error | null, result?: R) => void} FnWithKeyCallback
329
346
  */
330
347
 
331
348
  /**
349
+ * Defines the fn with key type used by this module.
332
350
  * @template T
333
351
  * @template R
334
352
  * @typedef {(item: T, callback: FnWithKeyCallback<R>) => void} FnWithKey
335
353
  */
336
354
 
337
355
  /**
356
+ * Returns } cached function.
338
357
  * @template T
339
358
  * @template R
340
359
  * @param {FnWithKey<T, R>} fn function
@@ -343,12 +362,14 @@ const cachedWithoutKey = (fn) => {
343
362
  */
344
363
  const cachedWithKey = (fn, forceFn = fn) => {
345
364
  /**
365
+ * Defines the cache entry type used by this module.
346
366
  * @template R
347
367
  * @typedef {{ result?: R, error?: Error, callbacks?: FnWithKeyCallback<R>[], force?: true }} CacheEntry
348
368
  */
349
369
  /** @type {Map<T, CacheEntry<R>>} */
350
370
  const cache = new Map();
351
371
  /**
372
+ * Processes the provided arg.
352
373
  * @param {T} arg arg
353
374
  * @param {FnWithKeyCallback<R>} callback callback
354
375
  * @returns {void}
@@ -381,6 +402,7 @@ const cachedWithKey = (fn, forceFn = fn) => {
381
402
  });
382
403
  };
383
404
  /**
405
+ * Processes the provided arg.
384
406
  * @param {T} arg arg
385
407
  * @param {FnWithKeyCallback<R>} callback callback
386
408
  * @returns {void}
@@ -417,12 +439,14 @@ const cachedWithKey = (fn, forceFn = fn) => {
417
439
  };
418
440
 
419
441
  /**
442
+ * Defines the lockfile cache type used by this module.
420
443
  * @typedef {object} LockfileCache
421
444
  * @property {Lockfile} lockfile lockfile
422
445
  * @property {Snapshot} snapshot snapshot
423
446
  */
424
447
 
425
448
  /**
449
+ * Defines the resolve content result type used by this module.
426
450
  * @typedef {object} ResolveContentResult
427
451
  * @property {LockfileEntry} entry lockfile entry
428
452
  * @property {Buffer} content content
@@ -440,6 +464,7 @@ const PLUGIN_NAME = "HttpUriPlugin";
440
464
 
441
465
  class HttpUriPlugin {
442
466
  /**
467
+ * Creates an instance of HttpUriPlugin.
443
468
  * @param {HttpUriPluginOptions} options options
444
469
  */
445
470
  constructor(options) {
@@ -448,7 +473,7 @@ class HttpUriPlugin {
448
473
  }
449
474
 
450
475
  /**
451
- * Apply the plugin
476
+ * Applies the plugin by registering its hooks on the compiler.
452
477
  * @param {Compiler} compiler the compiler instance
453
478
  * @returns {void}
454
479
  */
@@ -519,6 +544,7 @@ class HttpUriPlugin {
519
544
  /** @type {Map<string, string>} */
520
545
  const cacheKeyCache = new Map();
521
546
  /**
547
+ * Returns the key.
522
548
  * @param {string} url the url
523
549
  * @returns {string} the key
524
550
  */
@@ -531,6 +557,7 @@ class HttpUriPlugin {
531
557
  };
532
558
 
533
559
  /**
560
+ * Returns the key.
534
561
  * @param {string} url the url
535
562
  * @returns {string} the key
536
563
  */
@@ -552,6 +579,7 @@ class HttpUriPlugin {
552
579
 
553
580
  const getLockfile = cachedWithoutKey(
554
581
  /**
582
+ * Handles the callback logic for this hook.
555
583
  * @param {(err: Error | null, lockfile?: Lockfile) => void} callback callback
556
584
  * @returns {void}
557
585
  */
@@ -604,6 +632,7 @@ class HttpUriPlugin {
604
632
  let lockfileUpdates;
605
633
 
606
634
  /**
635
+ * Stores the provided lockfile.
607
636
  * @param {Lockfile} lockfile lockfile instance
608
637
  * @param {string} url url to store
609
638
  * @param {LockfileEntry | "ignore" | "no-cache"} entry lockfile entry
@@ -643,6 +672,7 @@ class HttpUriPlugin {
643
672
  };
644
673
 
645
674
  /**
675
+ * Stores the provided lockfile.
646
676
  * @param {Lockfile} lockfile lockfile
647
677
  * @param {string} url url
648
678
  * @param {ResolveContentResult} result result
@@ -672,6 +702,7 @@ class HttpUriPlugin {
672
702
 
673
703
  for (const { scheme, fetch } of schemes) {
674
704
  /**
705
+ * Validate redirect location.
675
706
  * @param {string} location Location header value (relative or absolute)
676
707
  * @param {string} base current absolute URL
677
708
  * @returns {string} absolute, validated redirect target
@@ -702,6 +733,7 @@ class HttpUriPlugin {
702
733
  return nextUrl.href;
703
734
  };
704
735
  /**
736
+ * Processes the provided url.
705
737
  * @param {string} url URL
706
738
  * @param {string | null} integrity integrity
707
739
  * @param {(err: Error | null, resolveContentResult?: ResolveContentResult) => void} callback callback
@@ -714,6 +746,7 @@ class HttpUriPlugin {
714
746
  redirectCount = 0
715
747
  ) => {
716
748
  /**
749
+ * Processes the provided err.
717
750
  * @param {Error | null} err error
718
751
  * @param {FetchResult=} _result fetch result
719
752
  * @returns {void}
@@ -772,6 +805,7 @@ class HttpUriPlugin {
772
805
  };
773
806
 
774
807
  /**
808
+ * Processes the provided url.
775
809
  * @param {string} url URL
776
810
  * @param {FetchResult | RedirectFetchResult | undefined} cachedResult result from cache
777
811
  * @param {(err: Error | null, fetchResult?: FetchResult) => void} callback callback
@@ -798,6 +832,7 @@ class HttpUriPlugin {
798
832
  requestTime
799
833
  );
800
834
  /**
835
+ * Processes the provided partial result.
801
836
  * @param {Partial<Pick<FetchResultMeta, "fresh">> & (Pick<RedirectFetchResult, "location"> | Pick<ContentFetchResult, "content" | "entry">)} partialResult result
802
837
  * @returns {void}
803
838
  */
@@ -914,6 +949,7 @@ class HttpUriPlugin {
914
949
  stream.on(
915
950
  "data",
916
951
  /**
952
+ * Handles the callback logic for this hook.
917
953
  * @param {Buffer} chunk chunk
918
954
  */
919
955
  (chunk) => {
@@ -957,6 +993,7 @@ class HttpUriPlugin {
957
993
 
958
994
  const fetchContent = cachedWithKey(
959
995
  /**
996
+ * Handles the callback logic for this hook.
960
997
  * @param {string} url URL
961
998
  * @param {(err: Error | null, result?: FetchResult) => void} callback callback
962
999
  * @returns {void}
@@ -975,6 +1012,7 @@ class HttpUriPlugin {
975
1012
  );
976
1013
 
977
1014
  /**
1015
+ * Checks whether this http uri plugin is allowed.
978
1016
  * @param {string} uri uri
979
1017
  * @returns {boolean} true when allowed, otherwise false
980
1018
  */
@@ -1013,6 +1051,7 @@ class HttpUriPlugin {
1013
1051
 
1014
1052
  const getInfo = cachedWithKey(
1015
1053
  /**
1054
+ * Processes the provided url.
1016
1055
  * @param {string} url the url
1017
1056
  * @param {(err: Error | null, info?: Info) => void} callback callback
1018
1057
  * @returns {void}
@@ -1085,6 +1124,7 @@ Remove this line from the lockfile to force upgrading.`
1085
1124
  }
1086
1125
  let entry = entryOrString;
1087
1126
  /**
1127
+ * Processes the provided locked content.
1088
1128
  * @param {Buffer=} lockedContent locked content
1089
1129
  */
1090
1130
  const doFetch = (lockedContent) => {
@@ -1165,6 +1205,7 @@ Remove this line from the lockfile to force upgrading.`
1165
1205
  }
1166
1206
  const content = /** @type {Buffer} */ (result);
1167
1207
  /**
1208
+ * Continue with cached content.
1168
1209
  * @param {Buffer | undefined} _result result
1169
1210
  * @returns {void}
1170
1211
  */
@@ -1262,6 +1303,7 @@ Run build with un-frozen lockfile to automatically fix lockfile.`
1262
1303
  );
1263
1304
 
1264
1305
  /**
1306
+ * Respond with url module.
1265
1307
  * @param {URL} url url
1266
1308
  * @param {ResourceDataWithData} resourceData resource data
1267
1309
  * @param {(err: Error | null, result: true | void) => void} callback callback
@@ -17,6 +17,7 @@ const DEFAULT_SCHEME = "virtual";
17
17
  const PLUGIN_NAME = "VirtualUrlPlugin";
18
18
 
19
19
  /**
20
+ * Defines the compiler type used by this module.
20
21
  * @typedef {import("../Compiler")} Compiler
21
22
  * @typedef {import("../../declarations/plugins/schemes/VirtualUrlPlugin").VirtualModule} VirtualModuleConfig
22
23
  * @typedef {import("../../declarations/plugins/schemes/VirtualUrlPlugin").VirtualModuleContent} VirtualModuleInput
@@ -28,6 +29,7 @@ const PLUGIN_NAME = "VirtualUrlPlugin";
28
29
  /** @typedef {{ [key: string]: VirtualModuleInput }} VirtualModules */
29
30
 
30
31
  /**
32
+ * Defines the loader context type used by this module.
31
33
  * @template T
32
34
  * @typedef {import("../../declarations/LoaderContext").LoaderContext<T>} LoaderContext
33
35
  */
@@ -103,6 +105,7 @@ function toCacheKey(id, scheme) {
103
105
 
104
106
  class VirtualUrlPlugin {
105
107
  /**
108
+ * Creates an instance of VirtualUrlPlugin.
106
109
  * @param {VirtualModules} modules The virtual modules
107
110
  * @param {Omit<VirtualUrlOptions, "modules"> | string=} schemeOrOptions The URL scheme to use
108
111
  */
@@ -124,7 +127,7 @@ class VirtualUrlPlugin {
124
127
  }
125
128
 
126
129
  /**
127
- * Apply the plugin
130
+ * Applies the plugin by registering its hooks on the compiler.
128
131
  * @param {Compiler} compiler the compiler instance
129
132
  * @returns {void}
130
133
  */
@@ -156,6 +159,7 @@ class VirtualUrlPlugin {
156
159
  (path, data) => {
157
160
  if (data.filename && this.modules[data.filename]) {
158
161
  /**
162
+ * Returns safe path.
159
163
  * @param {string} str path
160
164
  * @returns {string} safe path
161
165
  */
@@ -261,6 +265,7 @@ class VirtualUrlPlugin {
261
265
  }
262
266
 
263
267
  /**
268
+ * Finds virtual module config by id.
264
269
  * @param {string} id The module id
265
270
  * @returns {VirtualModuleConfig} The virtual module config
266
271
  */
@@ -11,6 +11,7 @@
11
11
 
12
12
  class AggregateErrorSerializer {
13
13
  /**
14
+ * Serializes this instance into the provided serializer context.
14
15
  * @param {AggregateError} obj error
15
16
  * @param {ObjectSerializerContext} context context
16
17
  */
@@ -22,6 +23,7 @@ class AggregateErrorSerializer {
22
23
  }
23
24
 
24
25
  /**
26
+ * Restores this instance from the provided deserializer context.
25
27
  * @param {ObjectDeserializerContext} context context
26
28
  * @returns {AggregateError} error
27
29
  */
@@ -9,6 +9,7 @@
9
9
 
10
10
  class ArraySerializer {
11
11
  /**
12
+ * Serializes this instance into the provided serializer context.
12
13
  * @template T
13
14
  * @param {T[]} array array
14
15
  * @param {ObjectSerializerContext} context context
@@ -19,6 +20,7 @@ class ArraySerializer {
19
20
  }
20
21
 
21
22
  /**
23
+ * Restores this instance from the provided deserializer context.
22
24
  * @template T
23
25
  * @param {ObjectDeserializerContext} context context
24
26
  * @returns {T[]} array
@@ -114,6 +114,7 @@ const MEASURE_END_OPERATION = Symbol("MEASURE_END_OPERATION");
114
114
  /** @typedef {typeof MEASURE_END_OPERATION} MEASURE_END_OPERATION_TYPE */
115
115
 
116
116
  /**
117
+ * Returns type of number for serialization.
117
118
  * @param {number} n number
118
119
  * @returns {0 | 1 | 2} type of number for serialization
119
120
  */
@@ -126,6 +127,7 @@ const identifyNumber = (n) => {
126
127
  };
127
128
 
128
129
  /**
130
+ * Returns type of bigint for serialization.
129
131
  * @param {bigint} n bigint
130
132
  * @returns {0 | 1 | 2} type of bigint for serialization
131
133
  */
@@ -140,16 +142,19 @@ const identifyBigInt = (n) => {
140
142
  /** @typedef {{ retainedBuffer?: (x: Buffer) => Buffer }} Context} */
141
143
 
142
144
  /**
145
+ * Defines the lazy function type used by this module.
143
146
  * @template LazyInputValue
144
147
  * @template LazyOutputValue
145
148
  * @typedef {import("./SerializerMiddleware").LazyFunction<LazyInputValue, LazyOutputValue, BinaryMiddleware, undefined>} LazyFunction
146
149
  */
147
150
 
148
151
  /**
152
+ * Represents BinaryMiddleware.
149
153
  * @extends {SerializerMiddleware<DeserializedType, SerializedType, Context>}
150
154
  */
151
155
  class BinaryMiddleware extends SerializerMiddleware {
152
156
  /**
157
+ * Serializes this instance into the provided serializer context.
153
158
  * @param {DeserializedType} data data
154
159
  * @param {Context} context context object
155
160
  * @returns {SerializedType | Promise<SerializedType> | null} serialized data
@@ -159,6 +164,7 @@ class BinaryMiddleware extends SerializerMiddleware {
159
164
  }
160
165
 
161
166
  /**
167
+ * Returns new lazy.
162
168
  * @param {LazyFunction<DeserializedType, SerializedType>} fn lazy function
163
169
  * @param {Context} context serialize function
164
170
  * @returns {LazyFunction<SerializedType, DeserializedType>} new lazy
@@ -170,6 +176,7 @@ class BinaryMiddleware extends SerializerMiddleware {
170
176
  }
171
177
 
172
178
  /**
179
+ * Returns serialized data.
173
180
  * @param {DeserializedType} data data
174
181
  * @param {Context} context context object
175
182
  * @param {{ leftOverBuffer: Buffer | null, allocationSize: number, increaseCounter: number }} allocationScope allocation scope
@@ -196,6 +203,7 @@ class BinaryMiddleware extends SerializerMiddleware {
196
203
  currentBuffer = Buffer.allocUnsafe(allocationScope.allocationSize);
197
204
  }
198
205
  /**
206
+ * Processes the provided bytes needed.
199
207
  * @param {number} bytesNeeded bytes needed
200
208
  */
201
209
  const allocate = (bytesNeeded) => {
@@ -246,6 +254,7 @@ class BinaryMiddleware extends SerializerMiddleware {
246
254
  }
247
255
  };
248
256
  /**
257
+ * Processes the provided byte.
249
258
  * @param {number} byte byte
250
259
  */
251
260
  const writeU8 = (byte) => {
@@ -253,6 +262,7 @@ class BinaryMiddleware extends SerializerMiddleware {
253
262
  (currentBuffer).writeUInt8(byte, currentPosition++);
254
263
  };
255
264
  /**
265
+ * Processes the provided ui32.
256
266
  * @param {number} ui32 ui32
257
267
  */
258
268
  const writeU32 = (ui32) => {
@@ -266,6 +276,7 @@ class BinaryMiddleware extends SerializerMiddleware {
266
276
  measureStack.push(buffers.length, currentPosition);
267
277
  };
268
278
  /**
279
+ * Returns size.
269
280
  * @returns {number} size
270
281
  */
271
282
  const measureEnd = () => {
@@ -653,6 +664,7 @@ class BinaryMiddleware extends SerializerMiddleware {
653
664
  }
654
665
 
655
666
  /**
667
+ * Restores this instance from the provided deserializer context.
656
668
  * @param {SerializedType} data data
657
669
  * @param {Context} context context object
658
670
  * @returns {DeserializedType | Promise<DeserializedType>} deserialized data
@@ -662,6 +674,7 @@ class BinaryMiddleware extends SerializerMiddleware {
662
674
  }
663
675
 
664
676
  /**
677
+ * Create lazy deserialized.
665
678
  * @private
666
679
  * @param {SerializedType} content content
667
680
  * @param {Context} context context object
@@ -677,6 +690,7 @@ class BinaryMiddleware extends SerializerMiddleware {
677
690
  }
678
691
 
679
692
  /**
693
+ * Returns new lazy.
680
694
  * @private
681
695
  * @param {LazyFunction<SerializedType, DeserializedType>} fn lazy function
682
696
  * @param {Context} context context object
@@ -689,6 +703,7 @@ class BinaryMiddleware extends SerializerMiddleware {
689
703
  }
690
704
 
691
705
  /**
706
+ * Returns deserialized data.
692
707
  * @param {SerializedType} data data
693
708
  * @param {Context} context context object
694
709
  * @returns {DeserializedType} deserialized data
@@ -712,6 +727,7 @@ class BinaryMiddleware extends SerializerMiddleware {
712
727
  }
713
728
  };
714
729
  /**
730
+ * Checks whether this binary middleware is in current buffer.
715
731
  * @param {number} n n
716
732
  * @returns {boolean} true when in current buffer, otherwise false
717
733
  */
@@ -728,7 +744,7 @@ class BinaryMiddleware extends SerializerMiddleware {
728
744
  }
729
745
  };
730
746
  /**
731
- * Reads n bytes
747
+ * Returns buffer with bytes.
732
748
  * @param {number} n amount of bytes to read
733
749
  * @returns {Buffer} buffer with bytes
734
750
  */
@@ -779,6 +795,7 @@ class BinaryMiddleware extends SerializerMiddleware {
779
795
  return res;
780
796
  };
781
797
  /**
798
+ * Returns u8.
782
799
  * @returns {number} U8
783
800
  */
784
801
  const readU8 = () => {
@@ -795,10 +812,12 @@ class BinaryMiddleware extends SerializerMiddleware {
795
812
  return byte;
796
813
  };
797
814
  /**
815
+ * Returns u32.
798
816
  * @returns {number} U32
799
817
  */
800
818
  const readU32 = () => read(I32_SIZE).readUInt32LE(0);
801
819
  /**
820
+ * Processes the provided data.
802
821
  * @param {number} data data
803
822
  * @param {number} n n
804
823
  */
@@ -9,6 +9,7 @@
9
9
 
10
10
  class DateObjectSerializer {
11
11
  /**
12
+ * Serializes this instance into the provided serializer context.
12
13
  * @param {Date} obj date
13
14
  * @param {ObjectSerializerContext} context context
14
15
  */
@@ -17,6 +18,7 @@ class DateObjectSerializer {
17
18
  }
18
19
 
19
20
  /**
21
+ * Restores this instance from the provided deserializer context.
20
22
  * @param {ObjectDeserializerContext} context context
21
23
  * @returns {Date} date
22
24
  */
@@ -11,6 +11,7 @@
11
11
 
12
12
  class ErrorObjectSerializer {
13
13
  /**
14
+ * Creates an instance of ErrorObjectSerializer.
14
15
  * @param {ErrorConstructor | EvalErrorConstructor | RangeErrorConstructor | ReferenceErrorConstructor | SyntaxErrorConstructor | TypeErrorConstructor} Type error type
15
16
  */
16
17
  constructor(Type) {
@@ -18,6 +19,7 @@ class ErrorObjectSerializer {
18
19
  }
19
20
 
20
21
  /**
22
+ * Serializes this instance into the provided serializer context.
21
23
  * @param {Error | EvalError | RangeError | ReferenceError | SyntaxError | TypeError} obj error
22
24
  * @param {ObjectSerializerContext} context context
23
25
  */
@@ -31,6 +33,7 @@ class ErrorObjectSerializer {
31
33
  }
32
34
 
33
35
  /**
36
+ * Restores this instance from the provided deserializer context.
34
37
  * @param {ObjectDeserializerContext} context context
35
38
  * @returns {Error | EvalError | RangeError | ReferenceError | SyntaxError | TypeError} error
36
39
  */