webpack 5.106.1 → 5.107.0

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 (600) hide show
  1. package/README.md +2 -2
  2. package/lib/APIPlugin.js +4 -2
  3. package/lib/AsyncDependenciesBlock.js +3 -0
  4. package/lib/AutomaticPrefetchPlugin.js +6 -1
  5. package/lib/BannerPlugin.js +10 -1
  6. package/lib/Cache.js +27 -5
  7. package/lib/CacheFacade.js +26 -0
  8. package/lib/Chunk.js +46 -0
  9. package/lib/ChunkGraph.js +111 -0
  10. package/lib/ChunkGroup.js +57 -13
  11. package/lib/ChunkTemplate.js +9 -0
  12. package/lib/CleanPlugin.js +14 -1
  13. package/lib/CodeGenerationResults.js +19 -0
  14. package/lib/CompatibilityPlugin.js +23 -8
  15. package/lib/Compilation.js +161 -27
  16. package/lib/Compiler.js +41 -17
  17. package/lib/ConcatenationScope.js +24 -1
  18. package/lib/ConditionalInitFragment.js +6 -0
  19. package/lib/ConstPlugin.js +4 -1
  20. package/lib/ContextExclusionPlugin.js +2 -1
  21. package/lib/ContextModule.js +14 -2
  22. package/lib/ContextModuleFactory.js +10 -0
  23. package/lib/ContextReplacementPlugin.js +4 -1
  24. package/lib/DefinePlugin.js +22 -9
  25. package/lib/DependenciesBlock.js +6 -1
  26. package/lib/Dependency.js +48 -4
  27. package/lib/DependencyTemplate.js +7 -1
  28. package/lib/DependencyTemplates.js +4 -0
  29. package/lib/DotenvPlugin.js +3 -0
  30. package/lib/DynamicEntryPlugin.js +3 -1
  31. package/lib/EntryOptionPlugin.js +3 -0
  32. package/lib/EntryPlugin.js +2 -1
  33. package/lib/Entrypoint.js +4 -0
  34. package/lib/EnvironmentPlugin.js +3 -2
  35. package/lib/ErrorHelpers.js +7 -0
  36. package/lib/EvalDevToolModulePlugin.js +3 -1
  37. package/lib/EvalSourceMapDevToolPlugin.js +11 -10
  38. package/lib/ExportsInfo.js +56 -2
  39. package/lib/ExportsInfoApiPlugin.js +2 -1
  40. package/lib/ExternalModule.js +114 -15
  41. package/lib/ExternalModuleFactoryPlugin.js +15 -0
  42. package/lib/ExternalsPlugin.js +2 -1
  43. package/lib/FileSystemInfo.js +291 -71
  44. package/lib/FlagAllModulesAsUsedPlugin.js +2 -1
  45. package/lib/FlagDependencyExportsPlugin.js +4 -1
  46. package/lib/FlagDependencyUsagePlugin.js +5 -1
  47. package/lib/FlagEntryExportAsUsedPlugin.js +2 -1
  48. package/lib/Generator.js +16 -3
  49. package/lib/HotModuleReplacementPlugin.js +35 -9
  50. package/lib/IgnorePlugin.js +4 -2
  51. package/lib/IgnoreWarningsPlugin.js +2 -1
  52. package/lib/InitFragment.js +10 -0
  53. package/lib/JavascriptMetaInfoPlugin.js +2 -1
  54. package/lib/LibraryTemplatePlugin.js +2 -1
  55. package/lib/LoaderOptionsPlugin.js +3 -1
  56. package/lib/LoaderTargetPlugin.js +2 -1
  57. package/lib/MainTemplate.js +15 -0
  58. package/lib/ManifestPlugin.js +9 -2
  59. package/lib/Module.js +101 -19
  60. package/lib/ModuleFactory.js +6 -1
  61. package/lib/ModuleFilenameHelpers.js +3 -0
  62. package/lib/ModuleGraph.js +66 -0
  63. package/lib/ModuleGraphConnection.js +9 -0
  64. package/lib/ModuleInfoHeaderPlugin.js +5 -0
  65. package/lib/ModuleSourceTypeConstants.js +32 -1
  66. package/lib/ModuleTemplate.js +8 -0
  67. package/lib/ModuleTypeConstants.js +12 -3
  68. package/lib/MultiCompiler.js +30 -2
  69. package/lib/MultiStats.js +8 -0
  70. package/lib/MultiWatching.js +3 -0
  71. package/lib/NoEmitOnErrorsPlugin.js +1 -1
  72. package/lib/NodeStuffPlugin.js +11 -2
  73. package/lib/NormalModule.js +43 -33
  74. package/lib/NormalModuleFactory.js +35 -2
  75. package/lib/NormalModuleReplacementPlugin.js +1 -1
  76. package/lib/NullFactory.js +1 -0
  77. package/lib/OptionsApply.js +1 -0
  78. package/lib/Parser.js +3 -1
  79. package/lib/PlatformPlugin.js +2 -1
  80. package/lib/PrefetchPlugin.js +2 -1
  81. package/lib/ProgressPlugin.js +158 -68
  82. package/lib/ProvidePlugin.js +3 -1
  83. package/lib/RawModule.js +12 -0
  84. package/lib/RecordIdsPlugin.js +8 -0
  85. package/lib/RequestShortener.js +8 -0
  86. package/lib/ResolverFactory.js +5 -0
  87. package/lib/RuntimeGlobals.js +6 -5
  88. package/lib/RuntimeModule.js +22 -7
  89. package/lib/RuntimePlugin.js +13 -0
  90. package/lib/RuntimeTemplate.js +35 -1
  91. package/lib/SelfModuleFactory.js +2 -0
  92. package/lib/SourceMapDevToolModuleOptionsPlugin.js +2 -0
  93. package/lib/SourceMapDevToolPlugin.js +3 -1
  94. package/lib/Stats.js +5 -0
  95. package/lib/Template.js +20 -0
  96. package/lib/TemplatedPathPlugin.js +10 -3
  97. package/lib/UseStrictPlugin.js +2 -1
  98. package/lib/WarnCaseSensitiveModulesPlugin.js +71 -3
  99. package/lib/WarnDeprecatedOptionPlugin.js +2 -2
  100. package/lib/WarnNoModeSetPlugin.js +17 -2
  101. package/lib/WatchIgnorePlugin.js +4 -1
  102. package/lib/Watching.js +16 -3
  103. package/lib/WebpackError.js +3 -74
  104. package/lib/WebpackIsIncludedPlugin.js +3 -1
  105. package/lib/WebpackOptionsApply.js +14 -1
  106. package/lib/WebpackOptionsDefaulter.js +1 -0
  107. package/lib/asset/AssetBytesGenerator.js +12 -2
  108. package/lib/asset/AssetBytesParser.js +1 -0
  109. package/lib/asset/AssetGenerator.js +42 -10
  110. package/lib/asset/AssetModulesPlugin.js +7 -2
  111. package/lib/asset/AssetParser.js +2 -0
  112. package/lib/asset/AssetSourceGenerator.js +12 -2
  113. package/lib/asset/AssetSourceParser.js +1 -0
  114. package/lib/asset/RawDataUrlModule.js +11 -0
  115. package/lib/async-modules/AsyncModuleHelpers.js +1 -0
  116. package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -0
  117. package/lib/async-modules/InferAsyncModulesPlugin.js +1 -1
  118. package/lib/buildChunkGraph.js +19 -6
  119. package/lib/cache/AddBuildDependenciesPlugin.js +2 -1
  120. package/lib/cache/AddManagedPathsPlugin.js +2 -1
  121. package/lib/cache/IdleFileCachePlugin.js +2 -1
  122. package/lib/cache/MemoryCachePlugin.js +1 -1
  123. package/lib/cache/MemoryWithGcCachePlugin.js +3 -1
  124. package/lib/cache/PackFileCacheStrategy.js +33 -4
  125. package/lib/cache/ResolverCachePlugin.js +10 -1
  126. package/lib/cache/getLazyHashedEtag.js +4 -0
  127. package/lib/cache/mergeEtags.js +2 -0
  128. package/lib/cli.js +33 -1
  129. package/lib/config/browserslistTargetHandler.js +2 -0
  130. package/lib/config/defaults.js +232 -12
  131. package/lib/config/normalization.js +15 -1
  132. package/lib/config/target.js +11 -0
  133. package/lib/container/ContainerEntryDependency.js +2 -0
  134. package/lib/container/ContainerEntryModule.js +12 -0
  135. package/lib/container/ContainerEntryModuleFactory.js +1 -0
  136. package/lib/container/ContainerExposedDependency.js +4 -0
  137. package/lib/container/ContainerPlugin.js +2 -1
  138. package/lib/container/ContainerReferencePlugin.js +2 -1
  139. package/lib/container/FallbackDependency.js +4 -0
  140. package/lib/container/FallbackItemDependency.js +1 -0
  141. package/lib/container/FallbackModule.js +12 -0
  142. package/lib/container/FallbackModuleFactory.js +1 -0
  143. package/lib/container/ModuleFederationPlugin.js +3 -1
  144. package/lib/container/RemoteModule.js +13 -0
  145. package/lib/container/RemoteRuntimeModule.js +1 -0
  146. package/lib/container/RemoteToExternalDependency.js +1 -0
  147. package/lib/container/options.js +7 -0
  148. package/lib/css/CssGenerator.js +336 -100
  149. package/lib/css/CssInjectStyleRuntimeModule.js +45 -42
  150. package/lib/css/CssLoadingRuntimeModule.js +23 -4
  151. package/lib/{CssModule.js → css/CssModule.js} +21 -15
  152. package/lib/css/CssModulesPlugin.js +235 -89
  153. package/lib/css/CssParser.js +616 -261
  154. package/lib/css/walkCssTokens.js +179 -2
  155. package/lib/debug/ProfilingPlugin.js +19 -1
  156. package/lib/dependencies/AMDDefineDependency.js +7 -0
  157. package/lib/dependencies/AMDDefineDependencyParserPlugin.js +12 -0
  158. package/lib/dependencies/AMDPlugin.js +4 -1
  159. package/lib/dependencies/AMDRequireArrayDependency.js +6 -0
  160. package/lib/dependencies/AMDRequireContextDependency.js +3 -0
  161. package/lib/dependencies/AMDRequireDependenciesBlock.js +1 -0
  162. package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +14 -1
  163. package/lib/dependencies/AMDRequireDependency.js +4 -0
  164. package/lib/dependencies/AMDRequireItemDependency.js +1 -0
  165. package/lib/dependencies/AMDRuntimeModules.js +3 -0
  166. package/lib/dependencies/CachedConstDependency.js +6 -1
  167. package/lib/dependencies/CommonJsDependencyHelpers.js +64 -0
  168. package/lib/dependencies/CommonJsExportRequireDependency.js +62 -10
  169. package/lib/dependencies/CommonJsExportsDependency.js +4 -0
  170. package/lib/dependencies/CommonJsExportsParserPlugin.js +9 -1
  171. package/lib/dependencies/CommonJsFullRequireDependency.js +36 -9
  172. package/lib/dependencies/CommonJsImportsParserPlugin.js +24 -3
  173. package/lib/dependencies/CommonJsPlugin.js +4 -1
  174. package/lib/dependencies/CommonJsRequireContextDependency.js +3 -0
  175. package/lib/dependencies/CommonJsRequireDependency.js +70 -4
  176. package/lib/dependencies/CommonJsSelfReferenceDependency.js +5 -0
  177. package/lib/dependencies/ConstDependency.js +6 -1
  178. package/lib/dependencies/ContextDependency.js +9 -2
  179. package/lib/dependencies/ContextDependencyHelpers.js +4 -1
  180. package/lib/dependencies/ContextDependencyTemplateAsId.js +1 -0
  181. package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +1 -0
  182. package/lib/dependencies/ContextElementDependency.js +4 -0
  183. package/lib/dependencies/CreateRequireParserPlugin.js +7 -1
  184. package/lib/dependencies/CreateScriptUrlDependency.js +4 -0
  185. package/lib/dependencies/CriticalDependencyWarning.js +2 -1
  186. package/lib/dependencies/CssIcssExportDependency.js +339 -66
  187. package/lib/dependencies/CssIcssImportDependency.js +53 -8
  188. package/lib/dependencies/CssIcssSymbolDependency.js +16 -4
  189. package/lib/dependencies/CssImportDependency.js +12 -0
  190. package/lib/dependencies/CssUrlDependency.js +32 -0
  191. package/lib/dependencies/DelegatedSourceDependency.js +1 -0
  192. package/lib/dependencies/DllEntryDependency.js +3 -0
  193. package/lib/dependencies/DynamicExports.js +5 -0
  194. package/lib/dependencies/EntryDependency.js +1 -0
  195. package/lib/dependencies/ExportsInfoDependency.js +6 -0
  196. package/lib/dependencies/ExternalModuleDependency.js +5 -0
  197. package/lib/dependencies/ExternalModuleInitFragment.js +3 -0
  198. package/lib/dependencies/ExternalModuleInitFragmentDependency.js +4 -0
  199. package/lib/dependencies/HarmonyAcceptDependency.js +6 -0
  200. package/lib/dependencies/HarmonyAcceptImportDependency.js +1 -0
  201. package/lib/dependencies/HarmonyCompatibilityDependency.js +1 -0
  202. package/lib/dependencies/HarmonyDetectionParserPlugin.js +4 -1
  203. package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +4 -0
  204. package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +10 -7
  205. package/lib/dependencies/HarmonyExportExpressionDependency.js +27 -14
  206. package/lib/dependencies/HarmonyExportHeaderDependency.js +4 -0
  207. package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +143 -5
  208. package/lib/dependencies/HarmonyExportInitFragment.js +6 -0
  209. package/lib/dependencies/HarmonyExportSpecifierDependency.js +5 -0
  210. package/lib/dependencies/HarmonyExports.js +2 -0
  211. package/lib/dependencies/HarmonyImportDependency.js +21 -2
  212. package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +31 -1
  213. package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -0
  214. package/lib/dependencies/HarmonyImportSpecifierDependency.js +18 -3
  215. package/lib/{HarmonyLinkingError.js → dependencies/HarmonyLinkingError.js} +5 -3
  216. package/lib/dependencies/HarmonyModulesPlugin.js +4 -1
  217. package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -0
  218. package/lib/dependencies/HtmlInlineScriptDependency.js +133 -0
  219. package/lib/dependencies/HtmlInlineStyleDependency.js +101 -0
  220. package/lib/dependencies/HtmlScriptSrcDependency.js +318 -0
  221. package/lib/dependencies/HtmlSourceDependency.js +127 -0
  222. package/lib/dependencies/ImportContextDependency.js +4 -0
  223. package/lib/dependencies/ImportDependency.js +5 -0
  224. package/lib/dependencies/ImportEagerDependency.js +2 -0
  225. package/lib/dependencies/ImportMetaContextDependency.js +1 -0
  226. package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +4 -1
  227. package/lib/dependencies/ImportMetaContextPlugin.js +2 -1
  228. package/lib/dependencies/ImportMetaHotAcceptDependency.js +1 -0
  229. package/lib/dependencies/ImportMetaHotDeclineDependency.js +1 -0
  230. package/lib/dependencies/ImportMetaPlugin.js +6 -0
  231. package/lib/dependencies/ImportParserPlugin.js +9 -2
  232. package/lib/dependencies/ImportPhase.js +7 -3
  233. package/lib/dependencies/ImportPlugin.js +2 -1
  234. package/lib/dependencies/ImportWeakDependency.js +2 -0
  235. package/lib/dependencies/JsonExportsDependency.js +6 -1
  236. package/lib/dependencies/LoaderDependency.js +2 -0
  237. package/lib/dependencies/LoaderImportDependency.js +2 -0
  238. package/lib/dependencies/LoaderPlugin.js +4 -1
  239. package/lib/dependencies/LocalModule.js +4 -0
  240. package/lib/dependencies/LocalModuleDependency.js +4 -0
  241. package/lib/dependencies/LocalModulesHelpers.js +3 -0
  242. package/lib/dependencies/ModuleDecoratorDependency.js +7 -1
  243. package/lib/dependencies/ModuleDependency.js +7 -0
  244. package/lib/dependencies/ModuleDependencyTemplateAsId.js +1 -0
  245. package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +1 -0
  246. package/lib/dependencies/ModuleHotAcceptDependency.js +1 -0
  247. package/lib/dependencies/ModuleHotDeclineDependency.js +1 -0
  248. package/lib/dependencies/ModuleInitFragmentDependency.js +4 -0
  249. package/lib/dependencies/NullDependency.js +2 -0
  250. package/lib/dependencies/PrefetchDependency.js +1 -0
  251. package/lib/dependencies/ProvidedDependency.js +6 -1
  252. package/lib/dependencies/PureExpressionDependency.js +7 -1
  253. package/lib/dependencies/RequireContextDependency.js +1 -0
  254. package/lib/dependencies/RequireContextDependencyParserPlugin.js +1 -0
  255. package/lib/dependencies/RequireContextPlugin.js +2 -1
  256. package/lib/dependencies/RequireEnsureDependenciesBlock.js +1 -0
  257. package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +1 -0
  258. package/lib/dependencies/RequireEnsureDependency.js +4 -0
  259. package/lib/dependencies/RequireEnsureItemDependency.js +1 -0
  260. package/lib/dependencies/RequireEnsurePlugin.js +2 -1
  261. package/lib/dependencies/RequireHeaderDependency.js +4 -0
  262. package/lib/dependencies/RequireIncludeDependency.js +2 -0
  263. package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +4 -1
  264. package/lib/dependencies/RequireIncludePlugin.js +2 -1
  265. package/lib/{RequireJsStuffPlugin.js → dependencies/RequireJsStuffPlugin.js} +9 -8
  266. package/lib/dependencies/RequireResolveContextDependency.js +3 -0
  267. package/lib/dependencies/RequireResolveDependency.js +1 -0
  268. package/lib/dependencies/RequireResolveHeaderDependency.js +5 -0
  269. package/lib/dependencies/RuntimeRequirementsDependency.js +5 -1
  270. package/lib/dependencies/StaticExportsDependency.js +3 -0
  271. package/lib/dependencies/SystemPlugin.js +5 -2
  272. package/lib/dependencies/SystemRuntimeModule.js +1 -0
  273. package/lib/dependencies/URLContextDependency.js +3 -0
  274. package/lib/dependencies/URLDependency.js +6 -0
  275. package/lib/dependencies/URLPlugin.js +2 -0
  276. package/lib/dependencies/UnsupportedDependency.js +4 -0
  277. package/lib/dependencies/WebAssemblyExportImportedDependency.js +4 -0
  278. package/lib/dependencies/WebAssemblyImportDependency.js +5 -2
  279. package/lib/dependencies/WebpackIsIncludedDependency.js +2 -0
  280. package/lib/dependencies/WorkerDependency.js +6 -1
  281. package/lib/dependencies/WorkerPlugin.js +11 -3
  282. package/lib/dependencies/getFunctionExpression.js +1 -0
  283. package/lib/dependencies/processExportInfo.js +1 -0
  284. package/lib/{DelegatedModule.js → dll/DelegatedModule.js} +44 -31
  285. package/lib/{DelegatedModuleFactoryPlugin.js → dll/DelegatedModuleFactoryPlugin.js} +7 -4
  286. package/lib/{DelegatedPlugin.js → dll/DelegatedPlugin.js} +4 -3
  287. package/lib/{DllEntryPlugin.js → dll/DllEntryPlugin.js} +6 -5
  288. package/lib/{DllModule.js → dll/DllModule.js} +35 -24
  289. package/lib/{DllModuleFactory.js → dll/DllModuleFactory.js} +5 -4
  290. package/lib/{DllPlugin.js → dll/DllPlugin.js} +8 -6
  291. package/lib/{DllReferencePlugin.js → dll/DllReferencePlugin.js} +23 -18
  292. package/lib/{LibManifestPlugin.js → dll/LibManifestPlugin.js} +13 -10
  293. package/lib/electron/ElectronTargetPlugin.js +2 -1
  294. package/lib/{AbstractMethodError.js → errors/AbstractMethodError.js} +10 -1
  295. package/lib/{AsyncDependencyToInitialChunkError.js → errors/AsyncDependencyToInitialChunkError.js} +8 -3
  296. package/lib/errors/BuildCycleError.js +1 -1
  297. package/lib/{ChunkRenderError.js → errors/ChunkRenderError.js} +1 -1
  298. package/lib/{CodeGenerationError.js → errors/CodeGenerationError.js} +1 -1
  299. package/lib/{CommentCompilationWarning.js → errors/CommentCompilationWarning.js} +9 -3
  300. package/lib/{ConcurrentCompilationError.js → errors/ConcurrentCompilationError.js} +4 -2
  301. package/lib/{EnvironmentNotSupportAsyncWarning.js → errors/EnvironmentNotSupportAsyncWarning.js} +4 -4
  302. package/lib/{HookWebpackError.js → errors/HookWebpackError.js} +11 -5
  303. package/lib/{IgnoreErrorModuleFactory.js → errors/IgnoreErrorModuleFactory.js} +6 -4
  304. package/lib/{InvalidDependenciesModuleWarning.js → errors/InvalidDependenciesModuleWarning.js} +4 -3
  305. package/lib/errors/JSONParseError.js +114 -0
  306. package/lib/{ModuleBuildError.js → errors/ModuleBuildError.js} +8 -5
  307. package/lib/{ModuleDependencyError.js → errors/ModuleDependencyError.js} +2 -2
  308. package/lib/{ModuleDependencyWarning.js → errors/ModuleDependencyWarning.js} +5 -4
  309. package/lib/{ModuleError.js → errors/ModuleError.js} +7 -5
  310. package/lib/{ModuleHashingError.js → errors/ModuleHashingError.js} +1 -1
  311. package/lib/{ModuleNotFoundError.js → errors/ModuleNotFoundError.js} +3 -2
  312. package/lib/{ModuleParseError.js → errors/ModuleParseError.js} +11 -6
  313. package/lib/{ModuleRestoreError.js → errors/ModuleRestoreError.js} +2 -1
  314. package/lib/{ModuleStoreError.js → errors/ModuleStoreError.js} +2 -1
  315. package/lib/{ModuleWarning.js → errors/ModuleWarning.js} +8 -5
  316. package/lib/{NodeStuffInWebError.js → errors/NodeStuffInWebError.js} +5 -4
  317. package/lib/errors/NonErrorEmittedError.js +28 -0
  318. package/lib/{UnhandledSchemeError.js → errors/UnhandledSchemeError.js} +8 -2
  319. package/lib/{UnsupportedFeatureWarning.js → errors/UnsupportedFeatureWarning.js} +4 -3
  320. package/lib/errors/WebpackError.js +84 -0
  321. package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -0
  322. package/lib/esm/ModuleChunkFormatPlugin.js +5 -1
  323. package/lib/esm/ModuleChunkLoadingPlugin.js +3 -1
  324. package/lib/esm/ModuleChunkLoadingRuntimeModule.js +5 -0
  325. package/lib/hmr/HotModuleReplacementRuntimeModule.js +1 -0
  326. package/lib/hmr/JavascriptHotModuleReplacementHelper.js +1 -0
  327. package/lib/hmr/LazyCompilationPlugin.js +20 -1
  328. package/lib/hmr/lazyCompilationBackend.js +2 -0
  329. package/lib/html/HtmlGenerator.js +379 -0
  330. package/lib/html/HtmlModulesPlugin.js +433 -0
  331. package/lib/html/HtmlParser.js +1489 -0
  332. package/lib/html/walkHtmlTokens.js +2733 -0
  333. package/lib/ids/ChunkModuleIdRangePlugin.js +3 -1
  334. package/lib/ids/DeterministicChunkIdsPlugin.js +3 -1
  335. package/lib/ids/DeterministicModuleIdsPlugin.js +3 -1
  336. package/lib/ids/HashedModuleIdsPlugin.js +2 -1
  337. package/lib/ids/IdHelpers.js +22 -1
  338. package/lib/ids/NamedChunkIdsPlugin.js +3 -1
  339. package/lib/ids/NamedModuleIdsPlugin.js +3 -1
  340. package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
  341. package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
  342. package/lib/ids/OccurrenceChunkIdsPlugin.js +2 -1
  343. package/lib/ids/OccurrenceModuleIdsPlugin.js +4 -1
  344. package/lib/ids/SyncModuleIdsPlugin.js +3 -1
  345. package/lib/index.js +39 -15
  346. package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +1 -1
  347. package/lib/javascript/BasicEvaluatedExpression.js +4 -2
  348. package/lib/javascript/ChunkFormatHelpers.js +2 -1
  349. package/lib/javascript/ChunkHelpers.js +1 -0
  350. package/lib/javascript/CommonJsChunkFormatPlugin.js +1 -1
  351. package/lib/javascript/EnableChunkLoadingPlugin.js +5 -1
  352. package/lib/javascript/JavascriptGenerator.js +10 -0
  353. package/lib/javascript/JavascriptModulesPlugin.js +112 -9
  354. package/lib/javascript/JavascriptParser.js +360 -16
  355. package/lib/javascript/JavascriptParserHelpers.js +7 -1
  356. package/lib/javascript/StartupHelpers.js +5 -0
  357. package/lib/json/JsonData.js +5 -0
  358. package/lib/json/JsonGenerator.js +21 -0
  359. package/lib/json/JsonModulesPlugin.js +1 -1
  360. package/lib/json/JsonParser.js +14 -25
  361. package/lib/library/AbstractLibraryPlugin.js +17 -2
  362. package/lib/library/AmdLibraryPlugin.js +8 -0
  363. package/lib/library/AssignLibraryPlugin.js +16 -0
  364. package/lib/library/EnableLibraryPlugin.js +8 -2
  365. package/lib/library/ExportPropertyLibraryPlugin.js +9 -0
  366. package/lib/{FalseIIFEUmdWarning.js → library/FalseIIFEUmdWarning.js} +1 -1
  367. package/lib/library/JsonpLibraryPlugin.js +8 -0
  368. package/lib/library/ModuleLibraryPlugin.js +86 -1
  369. package/lib/library/SystemLibraryPlugin.js +8 -0
  370. package/lib/library/UmdLibraryPlugin.js +16 -0
  371. package/lib/logging/Logger.js +17 -0
  372. package/lib/logging/createConsoleLogger.js +7 -0
  373. package/lib/logging/runtime.js +2 -0
  374. package/lib/logging/truncateArgs.js +2 -0
  375. package/lib/node/CommonJsChunkLoadingPlugin.js +5 -1
  376. package/lib/node/NodeEnvironmentPlugin.js +7 -3
  377. package/lib/node/NodeSourcePlugin.js +1 -1
  378. package/lib/node/NodeTargetPlugin.js +2 -1
  379. package/lib/node/NodeTemplatePlugin.js +3 -1
  380. package/lib/node/NodeWatchFileSystem.js +2 -0
  381. package/lib/node/ReadFileChunkLoadingRuntimeModule.js +3 -0
  382. package/lib/node/ReadFileCompileAsyncWasmPlugin.js +4 -1
  383. package/lib/node/ReadFileCompileWasmPlugin.js +4 -1
  384. package/lib/node/RequireChunkLoadingRuntimeModule.js +3 -0
  385. package/lib/node/nodeConsole.js +116 -64
  386. package/lib/optimize/AggressiveMergingPlugin.js +3 -1
  387. package/lib/optimize/AggressiveSplittingPlugin.js +6 -1
  388. package/lib/optimize/ConcatenatedModule.js +62 -6
  389. package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -1
  390. package/lib/optimize/FlagIncludedChunksPlugin.js +2 -1
  391. package/lib/optimize/InnerGraph.js +16 -1
  392. package/lib/optimize/InnerGraphPlugin.js +14 -2
  393. package/lib/optimize/LimitChunkCountPlugin.js +9 -0
  394. package/lib/optimize/MangleExportsPlugin.js +5 -1
  395. package/lib/optimize/MergeDuplicateChunksPlugin.js +2 -0
  396. package/lib/optimize/MinChunkSizePlugin.js +2 -1
  397. package/lib/optimize/MinMaxSizeWarning.js +5 -4
  398. package/lib/optimize/ModuleConcatenationPlugin.js +36 -8
  399. package/lib/optimize/RealContentHashPlugin.js +104 -26
  400. package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -1
  401. package/lib/optimize/RemoveParentModulesPlugin.js +3 -1
  402. package/lib/optimize/RuntimeChunkPlugin.js +2 -1
  403. package/lib/optimize/SideEffectsFlagPlugin.js +118 -4
  404. package/lib/optimize/SplitChunksPlugin.js +50 -2
  405. package/lib/performance/AssetsOverSizeLimitWarning.js +3 -2
  406. package/lib/performance/EntrypointsOverSizeLimitWarning.js +3 -2
  407. package/lib/performance/NoAsyncChunksWarning.js +5 -3
  408. package/lib/performance/SizeLimitsPlugin.js +8 -2
  409. package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +1 -0
  410. package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +6 -0
  411. package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +1 -0
  412. package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +5 -1
  413. package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +1 -0
  414. package/lib/rules/BasicEffectRulePlugin.js +3 -0
  415. package/lib/rules/BasicMatcherRulePlugin.js +3 -0
  416. package/lib/rules/ObjectMatcherRulePlugin.js +3 -0
  417. package/lib/rules/RuleSetCompiler.js +18 -0
  418. package/lib/rules/UseEffectRulePlugin.js +10 -3
  419. package/lib/runtime/AsyncModuleRuntimeModule.js +1 -0
  420. package/lib/runtime/AutoPublicPathRuntimeModule.js +1 -0
  421. package/lib/runtime/BaseUriRuntimeModule.js +1 -0
  422. package/lib/runtime/ChunkNameRuntimeModule.js +1 -0
  423. package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +1 -0
  424. package/lib/runtime/CompatRuntimeModule.js +2 -0
  425. package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +1 -0
  426. package/lib/runtime/CreateScriptRuntimeModule.js +1 -0
  427. package/lib/runtime/CreateScriptUrlRuntimeModule.js +1 -0
  428. package/lib/runtime/DefinePropertyGettersRuntimeModule.js +1 -0
  429. package/lib/runtime/EnsureChunkRuntimeModule.js +1 -0
  430. package/lib/runtime/GetChunkFilenameRuntimeModule.js +1 -0
  431. package/lib/runtime/GetFullHashRuntimeModule.js +1 -0
  432. package/lib/runtime/GetMainFilenameRuntimeModule.js +1 -0
  433. package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +1 -0
  434. package/lib/runtime/GlobalRuntimeModule.js +1 -0
  435. package/lib/runtime/HasOwnPropertyRuntimeModule.js +1 -0
  436. package/lib/runtime/HelperRuntimeModule.js +5 -0
  437. package/lib/runtime/LoadScriptRuntimeModule.js +1 -0
  438. package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +121 -13
  439. package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +1 -0
  440. package/lib/runtime/NonceRuntimeModule.js +1 -0
  441. package/lib/runtime/OnChunksLoadedRuntimeModule.js +1 -0
  442. package/lib/runtime/PublicPathRuntimeModule.js +1 -0
  443. package/lib/runtime/RelativeUrlRuntimeModule.js +1 -0
  444. package/lib/runtime/RuntimeIdRuntimeModule.js +1 -0
  445. package/lib/runtime/SetAnonymousDefaultNameRuntimeModule.js +35 -0
  446. package/lib/runtime/StartupChunkDependenciesPlugin.js +13 -1
  447. package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +1 -0
  448. package/lib/runtime/StartupEntrypointRuntimeModule.js +1 -0
  449. package/lib/runtime/SystemContextRuntimeModule.js +1 -0
  450. package/lib/runtime/ToBinaryRuntimeModule.js +1 -0
  451. package/lib/schemes/DataUriPlugin.js +14 -2
  452. package/lib/schemes/FileUriPlugin.js +1 -1
  453. package/lib/schemes/HttpUriPlugin.js +43 -1
  454. package/lib/schemes/VirtualUrlPlugin.js +7 -2
  455. package/lib/serialization/AggregateErrorSerializer.js +2 -0
  456. package/lib/serialization/ArraySerializer.js +2 -0
  457. package/lib/serialization/BinaryMiddleware.js +20 -1
  458. package/lib/serialization/DateObjectSerializer.js +2 -0
  459. package/lib/serialization/ErrorObjectSerializer.js +3 -0
  460. package/lib/serialization/FileMiddleware.js +21 -0
  461. package/lib/serialization/MapObjectSerializer.js +2 -0
  462. package/lib/serialization/NullPrototypeObjectSerializer.js +2 -0
  463. package/lib/serialization/ObjectMiddleware.js +23 -0
  464. package/lib/serialization/PlainObjectSerializer.js +7 -0
  465. package/lib/serialization/RegExpObjectSerializer.js +2 -0
  466. package/lib/serialization/Serializer.js +5 -0
  467. package/lib/serialization/SerializerMiddleware.js +14 -2
  468. package/lib/serialization/SetObjectSerializer.js +2 -0
  469. package/lib/serialization/SingleItemMiddleware.js +3 -0
  470. package/lib/sharing/ConsumeSharedFallbackDependency.js +1 -0
  471. package/lib/sharing/ConsumeSharedModule.js +15 -0
  472. package/lib/sharing/ConsumeSharedPlugin.js +8 -3
  473. package/lib/sharing/ConsumeSharedRuntimeModule.js +9 -4
  474. package/lib/sharing/ProvideForSharedDependency.js +1 -0
  475. package/lib/sharing/ProvideSharedDependency.js +4 -0
  476. package/lib/sharing/ProvideSharedModule.js +12 -1
  477. package/lib/sharing/ProvideSharedModuleFactory.js +1 -0
  478. package/lib/sharing/ProvideSharedPlugin.js +5 -2
  479. package/lib/sharing/SharePlugin.js +2 -1
  480. package/lib/sharing/ShareRuntimeModule.js +1 -0
  481. package/lib/sharing/resolveMatchedConfigs.js +4 -1
  482. package/lib/sharing/utils.js +8 -0
  483. package/lib/stats/DefaultStatsFactoryPlugin.js +58 -3
  484. package/lib/stats/DefaultStatsPresetPlugin.js +12 -2
  485. package/lib/stats/DefaultStatsPrinterPlugin.js +38 -2
  486. package/lib/stats/StatsFactory.js +13 -1
  487. package/lib/stats/StatsPrinter.js +7 -0
  488. package/lib/typescript/TypeScriptPlugin.js +210 -0
  489. package/lib/url/URLParserPlugin.js +8 -2
  490. package/lib/util/AppendOnlyStackedSet.js +15 -0
  491. package/lib/util/ArrayHelpers.js +1 -0
  492. package/lib/util/ArrayQueue.js +10 -5
  493. package/lib/util/AsyncQueue.js +22 -2
  494. package/lib/util/Hash.js +2 -2
  495. package/lib/util/IterableHelpers.js +3 -0
  496. package/lib/util/LazyBucketSortedSet.js +21 -0
  497. package/lib/util/LazySet.js +39 -0
  498. package/lib/util/LocConverter.js +53 -0
  499. package/lib/util/ParallelismFactorCalculator.js +1 -0
  500. package/lib/util/Queue.js +6 -3
  501. package/lib/util/Semaphore.js +14 -1
  502. package/lib/util/SetHelpers.js +3 -0
  503. package/lib/util/SortableSet.js +7 -1
  504. package/lib/util/StackedCacheMap.js +20 -3
  505. package/lib/util/StackedMap.js +45 -0
  506. package/lib/util/StringXor.js +1 -1
  507. package/lib/util/TupleQueue.js +7 -3
  508. package/lib/util/TupleSet.js +13 -0
  509. package/lib/util/URLAbsoluteSpecifier.js +1 -0
  510. package/lib/util/WeakTupleMap.js +33 -0
  511. package/lib/util/binarySearchBounds.js +1 -0
  512. package/lib/util/cleverMerge.js +19 -2
  513. package/lib/util/comparators.js +34 -3
  514. package/lib/util/compileBooleanMatcher.js +9 -0
  515. package/lib/util/concatenate.js +9 -3
  516. package/lib/util/conventions.js +46 -1
  517. package/lib/util/createMappings.js +118 -0
  518. package/lib/util/dataURL.js +1 -0
  519. package/lib/util/deprecation.js +19 -0
  520. package/lib/util/deterministicGrouping.js +20 -0
  521. package/lib/util/extractSourceMap.js +1 -0
  522. package/lib/util/extractUrlAndGlobal.js +1 -0
  523. package/lib/util/findGraphRoots.js +5 -0
  524. package/lib/{formatLocation.js → util/formatLocation.js} +4 -2
  525. package/lib/{SizeFormatHelpers.js → util/formatSize.js} +4 -1
  526. package/lib/util/fs.js +71 -8
  527. package/lib/util/generateDebugId.js +1 -0
  528. package/lib/util/hash/BatchedHash.js +1 -0
  529. package/lib/util/hash/BulkUpdateHash.js +1 -0
  530. package/lib/util/hash/hash-digest.js +8 -0
  531. package/lib/util/hash/md4.js +1 -1
  532. package/lib/util/hash/wasm-hash.js +5 -0
  533. package/lib/util/hash/xxhash64.js +1 -1
  534. package/lib/util/identifier.js +67 -0
  535. package/lib/util/internalSerializables.js +35 -19
  536. package/lib/util/magicComment.js +10 -6
  537. package/lib/util/makeSerializable.js +6 -0
  538. package/lib/util/memoize.js +2 -0
  539. package/lib/util/mimeTypes.js +176 -0
  540. package/lib/util/nonNumericOnlyHash.js +1 -0
  541. package/lib/util/parseJson.js +41 -0
  542. package/lib/util/processAsyncTree.js +8 -0
  543. package/lib/util/property.js +1 -0
  544. package/lib/util/registerExternalSerializer.js +20 -0
  545. package/lib/util/removeBOM.js +1 -0
  546. package/lib/util/runtime.js +32 -0
  547. package/lib/util/semver.js +15 -0
  548. package/lib/util/serialization.js +2 -0
  549. package/lib/util/smartGrouping.js +8 -0
  550. package/lib/util/source.js +23 -0
  551. package/lib/util/topologicalSort.js +69 -0
  552. package/lib/validateSchema.js +1 -0
  553. package/lib/wasm/EnableWasmLoadingPlugin.js +15 -1
  554. package/lib/wasm-async/AsyncWasmCompileRuntimeModule.js +1 -0
  555. package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +1 -0
  556. package/lib/wasm-async/AsyncWebAssemblyGenerator.js +6 -0
  557. package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +5 -0
  558. package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +12 -3
  559. package/lib/wasm-async/AsyncWebAssemblyParser.js +2 -1
  560. package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +12 -1
  561. package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +6 -3
  562. package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +1 -0
  563. package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +2 -2
  564. package/lib/wasm-sync/WebAssemblyGenerator.js +26 -1
  565. package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +7 -3
  566. package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +4 -0
  567. package/lib/wasm-sync/WebAssemblyModulesPlugin.js +10 -1
  568. package/lib/wasm-sync/WebAssemblyParser.js +2 -0
  569. package/lib/wasm-sync/WebAssemblyUtils.js +2 -0
  570. package/lib/web/FetchCompileAsyncWasmPlugin.js +10 -1
  571. package/lib/web/FetchCompileWasmPlugin.js +13 -1
  572. package/lib/web/JsonpChunkLoadingPlugin.js +11 -1
  573. package/lib/web/JsonpChunkLoadingRuntimeModule.js +1 -0
  574. package/lib/web/JsonpTemplatePlugin.js +2 -1
  575. package/lib/webpack.js +13 -1
  576. package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +10 -1
  577. package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +1 -0
  578. package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
  579. package/package.json +31 -31
  580. package/schemas/WebpackOptions.check.js +1 -1
  581. package/schemas/WebpackOptions.json +161 -57
  582. package/schemas/plugins/{DllPlugin.check.d.ts → HtmlGeneratorOptions.check.d.ts} +1 -1
  583. package/schemas/plugins/HtmlGeneratorOptions.check.js +6 -0
  584. package/schemas/plugins/HtmlGeneratorOptions.json +3 -0
  585. package/schemas/plugins/ProgressPlugin.check.js +1 -1
  586. package/schemas/plugins/ProgressPlugin.json +22 -0
  587. package/schemas/plugins/{DllReferencePlugin.check.d.ts → css/CssAutoOrModuleParserOptions.check.d.ts} +1 -1
  588. package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +6 -0
  589. package/schemas/plugins/css/CssAutoOrModuleParserOptions.json +3 -0
  590. package/schemas/plugins/dll/DllPlugin.check.d.ts +7 -0
  591. package/schemas/plugins/dll/DllReferencePlugin.check.d.ts +7 -0
  592. package/types.d.ts +5325 -353
  593. package/lib/CaseSensitiveModulesWarning.js +0 -72
  594. package/lib/GraphHelpers.js +0 -46
  595. package/lib/NoModeWarning.js +0 -23
  596. package/lib/css/CssMergeStyleSheetsRuntimeModule.js +0 -56
  597. /package/schemas/plugins/{DllPlugin.check.js → dll/DllPlugin.check.js} +0 -0
  598. /package/schemas/plugins/{DllPlugin.json → dll/DllPlugin.json} +0 -0
  599. /package/schemas/plugins/{DllReferencePlugin.check.js → dll/DllReferencePlugin.check.js} +0 -0
  600. /package/schemas/plugins/{DllReferencePlugin.json → dll/DllReferencePlugin.json} +0 -0
@@ -25,6 +25,7 @@ const NullDependency = require("./NullDependency");
25
25
 
26
26
  class PureExpressionDependency extends NullDependency {
27
27
  /**
28
+ * Creates an instance of PureExpressionDependency.
28
29
  * @param {Range} range the source range
29
30
  */
30
31
  constructor(range) {
@@ -35,6 +36,7 @@ class PureExpressionDependency extends NullDependency {
35
36
  }
36
37
 
37
38
  /**
39
+ * Get runtime condition.
38
40
  * @param {ModuleGraph} moduleGraph module graph
39
41
  * @param {RuntimeSpec} runtime current runtimes
40
42
  * @returns {boolean | RuntimeSpec} runtime condition
@@ -60,7 +62,7 @@ class PureExpressionDependency extends NullDependency {
60
62
  }
61
63
 
62
64
  /**
63
- * Update the hash
65
+ * Updates the hash with the data contributed by this instance.
64
66
  * @param {Hash} hash hash to be updated
65
67
  * @param {UpdateHashContext} context context
66
68
  * @returns {void}
@@ -85,6 +87,7 @@ class PureExpressionDependency extends NullDependency {
85
87
  }
86
88
 
87
89
  /**
90
+ * Gets module evaluation side effects state.
88
91
  * @param {ModuleGraph} moduleGraph the module graph
89
92
  * @returns {ConnectionState} how this dependency connects the module to referencing modules
90
93
  */
@@ -93,6 +96,7 @@ class PureExpressionDependency extends NullDependency {
93
96
  }
94
97
 
95
98
  /**
99
+ * Serializes this instance into the provided serializer context.
96
100
  * @param {ObjectSerializerContext} context context
97
101
  */
98
102
  serialize(context) {
@@ -103,6 +107,7 @@ class PureExpressionDependency extends NullDependency {
103
107
  }
104
108
 
105
109
  /**
110
+ * Restores this instance from the provided deserializer context.
106
111
  * @param {ObjectDeserializerContext} context context
107
112
  */
108
113
  deserialize(context) {
@@ -122,6 +127,7 @@ PureExpressionDependency.Template = class PureExpressionDependencyTemplate exten
122
127
  NullDependency.Template
123
128
  ) {
124
129
  /**
130
+ * Applies the plugin by registering its hooks on the compiler.
125
131
  * @param {Dependency} dependency the dependency for which the template should be applied
126
132
  * @param {ReplaceSource} source the current replace source which can be modified
127
133
  * @param {DependencyTemplateContext} templateContext the context object
@@ -14,6 +14,7 @@ const ModuleDependencyTemplateAsRequireId = require("./ModuleDependencyTemplateA
14
14
 
15
15
  class RequireContextDependency extends ContextDependency {
16
16
  /**
17
+ * Creates an instance of RequireContextDependency.
17
18
  * @param {ContextDependencyOptions} options options
18
19
  * @param {Range} range range
19
20
  */
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "RequireContextDependencyParserPlugin";
16
16
 
17
17
  module.exports = class RequireContextDependencyParserPlugin {
18
18
  /**
19
+ * Applies the plugin by registering its hooks on the compiler.
19
20
  * @param {JavascriptParser} parser the parser
20
21
  * @returns {void}
21
22
  */
@@ -26,7 +26,7 @@ const PLUGIN_NAME = "RequireContextPlugin";
26
26
 
27
27
  class RequireContextPlugin {
28
28
  /**
29
- * Apply the plugin
29
+ * Applies the plugin by registering its hooks on the compiler.
30
30
  * @param {Compiler} compiler the compiler instance
31
31
  * @returns {void}
32
32
  */
@@ -49,6 +49,7 @@ class RequireContextPlugin {
49
49
  );
50
50
 
51
51
  /**
52
+ * Handles the hook callback for this code path.
52
53
  * @param {Parser} parser parser parser
53
54
  * @param {JavascriptParserOptions} parserOptions parserOptions
54
55
  * @returns {void}
@@ -13,6 +13,7 @@ const makeSerializable = require("../util/makeSerializable");
13
13
 
14
14
  class RequireEnsureDependenciesBlock extends AsyncDependenciesBlock {
15
15
  /**
16
+ * Creates an instance of RequireEnsureDependenciesBlock.
16
17
  * @param {GroupOptions | string | null} chunkName chunk name
17
18
  * @param {(DependencyLocation | null)=} loc location info
18
19
  */
@@ -23,6 +23,7 @@ const PLUGIN_NAME = "RequireEnsureDependenciesBlockParserPlugin";
23
23
 
24
24
  module.exports = class RequireEnsureDependenciesBlockParserPlugin {
25
25
  /**
26
+ * Applies the plugin by registering its hooks on the compiler.
26
27
  * @param {JavascriptParser} parser the parser
27
28
  * @returns {void}
28
29
  */
@@ -19,6 +19,7 @@ const NullDependency = require("./NullDependency");
19
19
 
20
20
  class RequireEnsureDependency extends NullDependency {
21
21
  /**
22
+ * Creates an instance of RequireEnsureDependency.
22
23
  * @param {Range} range range
23
24
  * @param {Range} contentRange content range
24
25
  * @param {Range | false} errorHandlerRange error handler range
@@ -36,6 +37,7 @@ class RequireEnsureDependency extends NullDependency {
36
37
  }
37
38
 
38
39
  /**
40
+ * Serializes this instance into the provided serializer context.
39
41
  * @param {ObjectSerializerContext} context context
40
42
  */
41
43
  serialize(context) {
@@ -49,6 +51,7 @@ class RequireEnsureDependency extends NullDependency {
49
51
  }
50
52
 
51
53
  /**
54
+ * Restores this instance from the provided deserializer context.
52
55
  * @param {ObjectDeserializerContext} context context
53
56
  */
54
57
  deserialize(context) {
@@ -71,6 +74,7 @@ RequireEnsureDependency.Template = class RequireEnsureDependencyTemplate extends
71
74
  NullDependency.Template
72
75
  ) {
73
76
  /**
77
+ * Applies the plugin by registering its hooks on the compiler.
74
78
  * @param {Dependency} dependency the dependency for which the template should be applied
75
79
  * @param {ReplaceSource} source the current replace source which can be modified
76
80
  * @param {DependencyTemplateContext} templateContext the context object
@@ -11,6 +11,7 @@ const NullDependency = require("./NullDependency");
11
11
 
12
12
  class RequireEnsureItemDependency extends ModuleDependency {
13
13
  /**
14
+ * Creates an instance of RequireEnsureItemDependency.
14
15
  * @param {string} request the request string
15
16
  */
16
17
  constructor(request) {
@@ -25,7 +25,7 @@ const PLUGIN_NAME = "RequireEnsurePlugin";
25
25
 
26
26
  class RequireEnsurePlugin {
27
27
  /**
28
- * Apply the plugin
28
+ * Applies the plugin by registering its hooks on the compiler.
29
29
  * @param {Compiler} compiler the compiler instance
30
30
  * @returns {void}
31
31
  */
@@ -48,6 +48,7 @@ class RequireEnsurePlugin {
48
48
  );
49
49
 
50
50
  /**
51
+ * Handles the hook callback for this code path.
51
52
  * @param {Parser} parser parser parser
52
53
  * @param {JavascriptParserOptions} parserOptions parserOptions
53
54
  * @returns {void}
@@ -18,6 +18,7 @@ const NullDependency = require("./NullDependency");
18
18
 
19
19
  class RequireHeaderDependency extends NullDependency {
20
20
  /**
21
+ * Creates an instance of RequireHeaderDependency.
21
22
  * @param {Range} range range
22
23
  */
23
24
  constructor(range) {
@@ -27,6 +28,7 @@ class RequireHeaderDependency extends NullDependency {
27
28
  }
28
29
 
29
30
  /**
31
+ * Serializes this instance into the provided serializer context.
30
32
  * @param {ObjectSerializerContext} context context
31
33
  */
32
34
  serialize(context) {
@@ -36,6 +38,7 @@ class RequireHeaderDependency extends NullDependency {
36
38
  }
37
39
 
38
40
  /**
41
+ * Restores this instance from the provided deserializer context.
39
42
  * @param {ObjectDeserializerContext} context context
40
43
  * @returns {RequireHeaderDependency} RequireHeaderDependency
41
44
  */
@@ -55,6 +58,7 @@ RequireHeaderDependency.Template = class RequireHeaderDependencyTemplate extends
55
58
  NullDependency.Template
56
59
  ) {
57
60
  /**
61
+ * Applies the plugin by registering its hooks on the compiler.
58
62
  * @param {Dependency} dependency the dependency for which the template should be applied
59
63
  * @param {ReplaceSource} source the current replace source which can be modified
60
64
  * @param {DependencyTemplateContext} templateContext the context object
@@ -19,6 +19,7 @@ const ModuleDependency = require("./ModuleDependency");
19
19
 
20
20
  class RequireIncludeDependency extends ModuleDependency {
21
21
  /**
22
+ * Creates an instance of RequireIncludeDependency.
22
23
  * @param {string} request the request string
23
24
  * @param {Range} range location in source code
24
25
  */
@@ -57,6 +58,7 @@ RequireIncludeDependency.Template = class RequireIncludeDependencyTemplate exten
57
58
  ModuleDependency.Template
58
59
  ) {
59
60
  /**
61
+ * Applies the plugin by registering its hooks on the compiler.
60
62
  * @param {Dependency} dependency the dependency for which the template should be applied
61
63
  * @param {ReplaceSource} source the current replace source which can be modified
62
64
  * @param {DependencyTemplateContext} templateContext the context object
@@ -5,7 +5,7 @@
5
5
 
6
6
  "use strict";
7
7
 
8
- const WebpackError = require("../WebpackError");
8
+ const WebpackError = require("../errors/WebpackError");
9
9
  const {
10
10
  evaluateToString,
11
11
  toConstantDependency
@@ -21,6 +21,7 @@ const PLUGIN_NAME = "RequireIncludeDependencyParserPlugin";
21
21
 
22
22
  module.exports = class RequireIncludeDependencyParserPlugin {
23
23
  /**
24
+ * Creates an instance of RequireIncludeDependencyParserPlugin.
24
25
  * @param {boolean} warn true: warn about deprecation, false: don't warn
25
26
  */
26
27
  constructor(warn) {
@@ -28,6 +29,7 @@ module.exports = class RequireIncludeDependencyParserPlugin {
28
29
  }
29
30
 
30
31
  /**
32
+ * Applies the plugin by registering its hooks on the compiler.
31
33
  * @param {JavascriptParser} parser the parser
32
34
  * @returns {void}
33
35
  */
@@ -82,6 +84,7 @@ module.exports = class RequireIncludeDependencyParserPlugin {
82
84
 
83
85
  class RequireIncludeDeprecationWarning extends WebpackError {
84
86
  /**
87
+ * Creates an instance of RequireIncludeDeprecationWarning.
85
88
  * @param {DependencyLocation} loc location
86
89
  */
87
90
  constructor(loc) {
@@ -20,7 +20,7 @@ const PLUGIN_NAME = "RequireIncludePlugin";
20
20
 
21
21
  class RequireIncludePlugin {
22
22
  /**
23
- * Apply the plugin
23
+ * Applies the plugin by registering its hooks on the compiler.
24
24
  * @param {Compiler} compiler the compiler instance
25
25
  * @returns {void}
26
26
  */
@@ -38,6 +38,7 @@ class RequireIncludePlugin {
38
38
  );
39
39
 
40
40
  /**
41
+ * Handles the hook callback for this code path.
41
42
  * @param {Parser} parser parser parser
42
43
  * @param {JavascriptParserOptions} parserOptions parserOptions
43
44
  * @returns {void}
@@ -8,22 +8,22 @@
8
8
  const {
9
9
  JAVASCRIPT_MODULE_TYPE_AUTO,
10
10
  JAVASCRIPT_MODULE_TYPE_DYNAMIC
11
- } = require("./ModuleTypeConstants");
12
- const RuntimeGlobals = require("./RuntimeGlobals");
13
- const ConstDependency = require("./dependencies/ConstDependency");
11
+ } = require("../ModuleTypeConstants");
12
+ const RuntimeGlobals = require("../RuntimeGlobals");
14
13
  const {
15
14
  toConstantDependency
16
- } = require("./javascript/JavascriptParserHelpers");
15
+ } = require("../javascript/JavascriptParserHelpers");
16
+ const ConstDependency = require("./ConstDependency");
17
17
 
18
- /** @typedef {import("../declarations/WebpackOptions").JavascriptParserOptions} JavascriptParserOptions */
19
- /** @typedef {import("./Compiler")} Compiler */
20
- /** @typedef {import("./javascript/JavascriptParser")} JavascriptParser */
18
+ /** @typedef {import("../../declarations/WebpackOptions").JavascriptParserOptions} JavascriptParserOptions */
19
+ /** @typedef {import("../Compiler")} Compiler */
20
+ /** @typedef {import("../javascript/JavascriptParser")} JavascriptParser */
21
21
 
22
22
  const PLUGIN_NAME = "RequireJsStuffPlugin";
23
23
 
24
24
  module.exports = class RequireJsStuffPlugin {
25
25
  /**
26
- * Apply the plugin
26
+ * Applies the plugin by registering its hooks on the compiler.
27
27
  * @param {Compiler} compiler the compiler instance
28
28
  * @returns {void}
29
29
  */
@@ -36,6 +36,7 @@ module.exports = class RequireJsStuffPlugin {
36
36
  new ConstDependency.Template()
37
37
  );
38
38
  /**
39
+ * Handles the hook callback for this code path.
39
40
  * @param {JavascriptParser} parser the parser
40
41
  * @param {JavascriptParserOptions} parserOptions options
41
42
  * @returns {void}
@@ -16,6 +16,7 @@ const ContextDependencyTemplateAsId = require("./ContextDependencyTemplateAsId")
16
16
 
17
17
  class RequireResolveContextDependency extends ContextDependency {
18
18
  /**
19
+ * Creates an instance of RequireResolveContextDependency.
19
20
  * @param {ContextDependencyOptions} options options
20
21
  * @param {Range} range range
21
22
  * @param {Range} valueRange value range
@@ -33,6 +34,7 @@ class RequireResolveContextDependency extends ContextDependency {
33
34
  }
34
35
 
35
36
  /**
37
+ * Serializes this instance into the provided serializer context.
36
38
  * @param {ObjectSerializerContext} context context
37
39
  */
38
40
  serialize(context) {
@@ -45,6 +47,7 @@ class RequireResolveContextDependency extends ContextDependency {
45
47
  }
46
48
 
47
49
  /**
50
+ * Restores this instance from the provided deserializer context.
48
51
  * @param {ObjectDeserializerContext} context context
49
52
  */
50
53
  deserialize(context) {
@@ -17,6 +17,7 @@ const ModuleDependencyAsId = require("./ModuleDependencyTemplateAsId");
17
17
 
18
18
  class RequireResolveDependency extends ModuleDependency {
19
19
  /**
20
+ * Creates an instance of RequireResolveDependency.
20
21
  * @param {string} request the request string
21
22
  * @param {Range} range location in source code
22
23
  * @param {string=} context context
@@ -17,6 +17,7 @@ const NullDependency = require("./NullDependency");
17
17
 
18
18
  class RequireResolveHeaderDependency extends NullDependency {
19
19
  /**
20
+ * Creates an instance of RequireResolveHeaderDependency.
20
21
  * @param {Range} range range
21
22
  */
22
23
  constructor(range) {
@@ -28,6 +29,7 @@ class RequireResolveHeaderDependency extends NullDependency {
28
29
  }
29
30
 
30
31
  /**
32
+ * Serializes this instance into the provided serializer context.
31
33
  * @param {ObjectSerializerContext} context context
32
34
  */
33
35
  serialize(context) {
@@ -39,6 +41,7 @@ class RequireResolveHeaderDependency extends NullDependency {
39
41
  }
40
42
 
41
43
  /**
44
+ * Restores this instance from the provided deserializer context.
42
45
  * @param {ObjectDeserializerContext} context context
43
46
  * @returns {RequireResolveHeaderDependency} RequireResolveHeaderDependency
44
47
  */
@@ -58,6 +61,7 @@ RequireResolveHeaderDependency.Template = class RequireResolveHeaderDependencyTe
58
61
  NullDependency.Template
59
62
  ) {
60
63
  /**
64
+ * Applies the plugin by registering its hooks on the compiler.
61
65
  * @param {Dependency} dependency the dependency for which the template should be applied
62
66
  * @param {ReplaceSource} source the current replace source which can be modified
63
67
  * @param {DependencyTemplateContext} templateContext the context object
@@ -69,6 +73,7 @@ RequireResolveHeaderDependency.Template = class RequireResolveHeaderDependencyTe
69
73
  }
70
74
 
71
75
  /**
76
+ * Apply as template argument.
72
77
  * @param {string} name name
73
78
  * @param {RequireResolveHeaderDependency} dep dependency
74
79
  * @param {ReplaceSource} source source
@@ -19,6 +19,7 @@ const NullDependency = require("./NullDependency");
19
19
 
20
20
  class RuntimeRequirementsDependency extends NullDependency {
21
21
  /**
22
+ * Creates an instance of RuntimeRequirementsDependency.
22
23
  * @param {RawRuntimeRequirements} runtimeRequirements runtime requirements
23
24
  */
24
25
  constructor(runtimeRequirements) {
@@ -29,7 +30,7 @@ class RuntimeRequirementsDependency extends NullDependency {
29
30
  }
30
31
 
31
32
  /**
32
- * Update the hash
33
+ * Updates the hash with the data contributed by this instance.
33
34
  * @param {Hash} hash hash to be updated
34
35
  * @param {UpdateHashContext} context context
35
36
  * @returns {void}
@@ -42,6 +43,7 @@ class RuntimeRequirementsDependency extends NullDependency {
42
43
  }
43
44
 
44
45
  /**
46
+ * Serializes this instance into the provided serializer context.
45
47
  * @param {ObjectSerializerContext} context context
46
48
  */
47
49
  serialize(context) {
@@ -51,6 +53,7 @@ class RuntimeRequirementsDependency 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) {
@@ -69,6 +72,7 @@ RuntimeRequirementsDependency.Template = class RuntimeRequirementsDependencyTemp
69
72
  NullDependency.Template
70
73
  ) {
71
74
  /**
75
+ * Applies the plugin by registering its hooks on the compiler.
72
76
  * @param {Dependency} dependency the dependency for which the template should be applied
73
77
  * @param {ReplaceSource} source the current replace source which can be modified
74
78
  * @param {DependencyTemplateContext} templateContext the context object
@@ -17,6 +17,7 @@ const NullDependency = require("./NullDependency");
17
17
 
18
18
  class StaticExportsDependency extends NullDependency {
19
19
  /**
20
+ * Creates an instance of StaticExportsDependency.
20
21
  * @param {Exports} exports export names
21
22
  * @param {boolean} canMangle true, if mangling exports names is allowed
22
23
  */
@@ -44,6 +45,7 @@ class StaticExportsDependency extends NullDependency {
44
45
  }
45
46
 
46
47
  /**
48
+ * Serializes this instance into the provided serializer context.
47
49
  * @param {ObjectSerializerContext} context context
48
50
  */
49
51
  serialize(context) {
@@ -54,6 +56,7 @@ class StaticExportsDependency extends NullDependency {
54
56
  }
55
57
 
56
58
  /**
59
+ * Restores this instance from the provided deserializer context.
57
60
  * @param {ObjectDeserializerContext} context context
58
61
  */
59
62
  deserialize(context) {
@@ -10,7 +10,7 @@ const {
10
10
  JAVASCRIPT_MODULE_TYPE_DYNAMIC
11
11
  } = require("../ModuleTypeConstants");
12
12
  const RuntimeGlobals = require("../RuntimeGlobals");
13
- const WebpackError = require("../WebpackError");
13
+ const WebpackError = require("../errors/WebpackError");
14
14
  const {
15
15
  evaluateToString,
16
16
  expressionIsUnsupported,
@@ -30,7 +30,7 @@ const PLUGIN_NAME = "SystemPlugin";
30
30
 
31
31
  class SystemPlugin {
32
32
  /**
33
- * Apply the plugin
33
+ * Applies the plugin by registering its hooks on the compiler.
34
34
  * @param {Compiler} compiler the compiler instance
35
35
  * @returns {void}
36
36
  */
@@ -51,6 +51,7 @@ class SystemPlugin {
51
51
  });
52
52
 
53
53
  /**
54
+ * Handles the hook callback for this code path.
54
55
  * @param {Parser} parser parser parser
55
56
  * @param {JavascriptParserOptions} parserOptions parserOptions
56
57
  * @returns {void}
@@ -61,6 +62,7 @@ class SystemPlugin {
61
62
  }
62
63
 
63
64
  /**
65
+ * Sets not supported.
64
66
  * @param {string} name name
65
67
  */
66
68
  const setNotSupported = (name) => {
@@ -144,6 +146,7 @@ class SystemPlugin {
144
146
 
145
147
  class SystemImportDeprecationWarning extends WebpackError {
146
148
  /**
149
+ * Creates an instance of SystemImportDeprecationWarning.
147
150
  * @param {DependencyLocation} loc location
148
151
  */
149
152
  constructor(loc) {
@@ -15,6 +15,7 @@ class SystemRuntimeModule extends RuntimeModule {
15
15
  }
16
16
 
17
17
  /**
18
+ * Generates runtime code for this runtime module.
18
19
  * @returns {string | null} runtime code
19
20
  */
20
21
  generate() {
@@ -18,6 +18,7 @@ const ContextDependencyTemplateAsRequireCall = require("./ContextDependencyTempl
18
18
 
19
19
  class URLContextDependency extends ContextDependency {
20
20
  /**
21
+ * Creates an instance of URLContextDependency.
21
22
  * @param {ContextDependencyOptions} options options
22
23
  * @param {Range} range range
23
24
  * @param {Range} valueRange value range
@@ -37,6 +38,7 @@ class URLContextDependency extends ContextDependency {
37
38
  }
38
39
 
39
40
  /**
41
+ * Serializes this instance into the provided serializer context.
40
42
  * @param {ObjectSerializerContext} context context
41
43
  */
42
44
  serialize(context) {
@@ -46,6 +48,7 @@ class URLContextDependency extends ContextDependency {
46
48
  }
47
49
 
48
50
  /**
51
+ * Restores this instance from the provided deserializer context.
49
52
  * @param {ObjectDeserializerContext} context context
50
53
  */
51
54
  deserialize(context) {
@@ -31,6 +31,7 @@ const getIgnoredRawDataUrlModule = memoize(
31
31
 
32
32
  class URLDependency extends ModuleDependency {
33
33
  /**
34
+ * Creates an instance of URLDependency.
34
35
  * @param {string} request request
35
36
  * @param {Range} range range of the arguments of new URL( |> ... <| )
36
37
  * @param {Range} outerRange range of the full |> new URL(...) <|
@@ -54,6 +55,7 @@ class URLDependency extends ModuleDependency {
54
55
  }
55
56
 
56
57
  /**
58
+ * Returns function to determine if the connection is active.
57
59
  * @param {ModuleGraph} moduleGraph module graph
58
60
  * @returns {null | false | GetConditionFn} function to determine if the connection is active
59
61
  */
@@ -66,6 +68,7 @@ class URLDependency extends ModuleDependency {
66
68
  }
67
69
 
68
70
  /**
71
+ * Creates an ignored module.
69
72
  * @param {string} context context directory
70
73
  * @returns {Module} ignored module
71
74
  */
@@ -74,6 +77,7 @@ class URLDependency extends ModuleDependency {
74
77
  }
75
78
 
76
79
  /**
80
+ * Serializes this instance into the provided serializer context.
77
81
  * @param {ObjectSerializerContext} context context
78
82
  */
79
83
  serialize(context) {
@@ -85,6 +89,7 @@ class URLDependency extends ModuleDependency {
85
89
  }
86
90
 
87
91
  /**
92
+ * Restores this instance from the provided deserializer context.
88
93
  * @param {ObjectDeserializerContext} context context
89
94
  */
90
95
  deserialize(context) {
@@ -100,6 +105,7 @@ URLDependency.Template = class URLDependencyTemplate extends (
100
105
  ModuleDependency.Template
101
106
  ) {
102
107
  /**
108
+ * Applies the plugin by registering its hooks on the compiler.
103
109
  * @param {Dependency} dependency the dependency for which the template should be applied
104
110
  * @param {ReplaceSource} source the current replace source which can be modified
105
111
  * @param {DependencyTemplateContext} templateContext the context object
@@ -22,6 +22,7 @@ const PLUGIN_NAME = "URLPlugin";
22
22
 
23
23
  class URLPlugin {
24
24
  /**
25
+ * Applies the plugin by registering its hooks on the compiler.
25
26
  * @param {Compiler} compiler compiler
26
27
  */
27
28
  apply(compiler) {
@@ -43,6 +44,7 @@ class URLPlugin {
43
44
  );
44
45
 
45
46
  /**
47
+ * Handles the hook callback for this code path.
46
48
  * @param {JavascriptParser} parser parser parser
47
49
  * @param {JavascriptParserOptions} parserOptions parserOptions
48
50
  * @returns {void}
@@ -17,6 +17,7 @@ const NullDependency = require("./NullDependency");
17
17
 
18
18
  class UnsupportedDependency extends NullDependency {
19
19
  /**
20
+ * Creates an instance of UnsupportedDependency.
20
21
  * @param {string} request the request string
21
22
  * @param {Range} range location in source code
22
23
  */
@@ -28,6 +29,7 @@ class UnsupportedDependency extends NullDependency {
28
29
  }
29
30
 
30
31
  /**
32
+ * Serializes this instance into the provided serializer context.
31
33
  * @param {ObjectSerializerContext} context context
32
34
  */
33
35
  serialize(context) {
@@ -40,6 +42,7 @@ class UnsupportedDependency extends NullDependency {
40
42
  }
41
43
 
42
44
  /**
45
+ * Restores this instance from the provided deserializer context.
43
46
  * @param {ObjectDeserializerContext} context context
44
47
  */
45
48
  deserialize(context) {
@@ -61,6 +64,7 @@ UnsupportedDependency.Template = class UnsupportedDependencyTemplate extends (
61
64
  NullDependency.Template
62
65
  ) {
63
66
  /**
67
+ * Applies the plugin by registering its hooks on the compiler.
64
68
  * @param {Dependency} dependency the dependency for which the template should be applied
65
69
  * @param {ReplaceSource} source the current replace source which can be modified
66
70
  * @param {DependencyTemplateContext} templateContext the context object
@@ -18,6 +18,7 @@ const ModuleDependency = require("./ModuleDependency");
18
18
 
19
19
  class WebAssemblyExportImportedDependency extends ModuleDependency {
20
20
  /**
21
+ * Creates an instance of WebAssemblyExportImportedDependency.
21
22
  * @param {string} exportName export name
22
23
  * @param {string} request request
23
24
  * @param {string} name name
@@ -34,6 +35,7 @@ class WebAssemblyExportImportedDependency extends ModuleDependency {
34
35
  }
35
36
 
36
37
  /**
38
+ * Could affect referencing module.
37
39
  * @returns {boolean | TRANSITIVE} true, when changes to the referenced module could affect the referencing module; TRANSITIVE, when changes to the referenced module could affect referencing modules of the referencing module
38
40
  */
39
41
  couldAffectReferencingModule() {
@@ -59,6 +61,7 @@ class WebAssemblyExportImportedDependency extends ModuleDependency {
59
61
  }
60
62
 
61
63
  /**
64
+ * Serializes this instance into the provided serializer context.
62
65
  * @param {ObjectSerializerContext} context context
63
66
  */
64
67
  serialize(context) {
@@ -72,6 +75,7 @@ class WebAssemblyExportImportedDependency extends ModuleDependency {
72
75
  }
73
76
 
74
77
  /**
78
+ * Restores this instance from the provided deserializer context.
75
79
  * @param {ObjectDeserializerContext} context context
76
80
  */
77
81
  deserialize(context) {