@eriche/webpack 4.47.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 (361) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +784 -0
  3. package/SECURITY.md +9 -0
  4. package/bin/webpack.js +171 -0
  5. package/buildin/amd-define.js +3 -0
  6. package/buildin/amd-options.js +2 -0
  7. package/buildin/global.js +20 -0
  8. package/buildin/harmony-module.js +24 -0
  9. package/buildin/module.js +22 -0
  10. package/buildin/system.js +7 -0
  11. package/declarations/WebpackOptions.d.ts +1466 -0
  12. package/declarations/plugins/BannerPlugin.d.ts +49 -0
  13. package/declarations/plugins/DllPlugin.d.ts +32 -0
  14. package/declarations/plugins/DllReferencePlugin.d.ts +126 -0
  15. package/declarations/plugins/HashedModuleIdsPlugin.d.ts +24 -0
  16. package/declarations/plugins/IgnorePlugin.d.ts +27 -0
  17. package/declarations/plugins/LoaderOptionsPlugin.d.ts +27 -0
  18. package/declarations/plugins/ProgressPlugin.d.ts +42 -0
  19. package/declarations/plugins/SourceMapDevToolPlugin.d.ts +94 -0
  20. package/declarations/plugins/WatchIgnorePlugin.d.ts +10 -0
  21. package/declarations/plugins/debug/ProfilingPlugin.d.ts +12 -0
  22. package/declarations/plugins/optimize/AggressiveSplittingPlugin.d.ts +24 -0
  23. package/declarations/plugins/optimize/LimitChunkCountPlugin.d.ts +16 -0
  24. package/declarations/plugins/optimize/MinChunkSizePlugin.d.ts +12 -0
  25. package/declarations/plugins/optimize/OccurrenceOrderChunkIdsPlugin.d.ts +12 -0
  26. package/declarations/plugins/optimize/OccurrenceOrderModuleIdsPlugin.d.ts +12 -0
  27. package/hot/dev-server.js +61 -0
  28. package/hot/emitter.js +2 -0
  29. package/hot/log-apply-result.js +44 -0
  30. package/hot/log.js +59 -0
  31. package/hot/only-dev-server.js +102 -0
  32. package/hot/poll.js +37 -0
  33. package/hot/signal.js +62 -0
  34. package/lib/APIPlugin.js +84 -0
  35. package/lib/AbstractMethodError.js +43 -0
  36. package/lib/AmdMainTemplatePlugin.js +106 -0
  37. package/lib/AsyncDependenciesBlock.js +110 -0
  38. package/lib/AsyncDependencyToInitialChunkError.js +31 -0
  39. package/lib/AutomaticPrefetchPlugin.js +57 -0
  40. package/lib/BannerPlugin.js +122 -0
  41. package/lib/BasicEvaluatedExpression.js +248 -0
  42. package/lib/CachePlugin.js +100 -0
  43. package/lib/CaseSensitiveModulesWarning.js +67 -0
  44. package/lib/Chunk.js +875 -0
  45. package/lib/ChunkGroup.js +513 -0
  46. package/lib/ChunkRenderError.js +32 -0
  47. package/lib/ChunkTemplate.js +87 -0
  48. package/lib/CommentCompilationWarning.js +32 -0
  49. package/lib/CommonJsStuffPlugin.js +116 -0
  50. package/lib/CompatibilityPlugin.js +70 -0
  51. package/lib/Compilation.js +2327 -0
  52. package/lib/Compiler.js +735 -0
  53. package/lib/ConcurrentCompilationError.js +19 -0
  54. package/lib/ConstPlugin.js +348 -0
  55. package/lib/ContextExclusionPlugin.js +28 -0
  56. package/lib/ContextModule.js +872 -0
  57. package/lib/ContextModuleFactory.js +262 -0
  58. package/lib/ContextReplacementPlugin.js +133 -0
  59. package/lib/DefinePlugin.js +289 -0
  60. package/lib/DelegatedModule.js +114 -0
  61. package/lib/DelegatedModuleFactoryPlugin.js +95 -0
  62. package/lib/DelegatedPlugin.js +39 -0
  63. package/lib/DependenciesBlock.js +124 -0
  64. package/lib/DependenciesBlockVariable.js +72 -0
  65. package/lib/Dependency.js +89 -0
  66. package/lib/DllEntryPlugin.js +54 -0
  67. package/lib/DllModule.js +60 -0
  68. package/lib/DllModuleFactory.js +29 -0
  69. package/lib/DllPlugin.js +49 -0
  70. package/lib/DllReferencePlugin.js +156 -0
  71. package/lib/DynamicEntryPlugin.js +94 -0
  72. package/lib/EntryModuleNotFoundError.js +21 -0
  73. package/lib/EntryOptionPlugin.js +46 -0
  74. package/lib/Entrypoint.js +64 -0
  75. package/lib/EnvironmentPlugin.js +72 -0
  76. package/lib/ErrorHelpers.js +60 -0
  77. package/lib/EvalDevToolModulePlugin.js +27 -0
  78. package/lib/EvalDevToolModuleTemplatePlugin.js +61 -0
  79. package/lib/EvalSourceMapDevToolModuleTemplatePlugin.js +120 -0
  80. package/lib/EvalSourceMapDevToolPlugin.js +41 -0
  81. package/lib/ExportPropertyMainTemplatePlugin.js +53 -0
  82. package/lib/ExtendedAPIPlugin.js +88 -0
  83. package/lib/ExternalModule.js +179 -0
  84. package/lib/ExternalModuleFactoryPlugin.js +110 -0
  85. package/lib/ExternalsPlugin.js +23 -0
  86. package/lib/FlagAllModulesAsUsedPlugin.js +38 -0
  87. package/lib/FlagDependencyExportsPlugin.js +174 -0
  88. package/lib/FlagDependencyUsagePlugin.js +116 -0
  89. package/lib/FlagInitialModulesAsUsedPlugin.js +36 -0
  90. package/lib/FunctionModulePlugin.js +19 -0
  91. package/lib/FunctionModuleTemplatePlugin.js +102 -0
  92. package/lib/Generator.js +60 -0
  93. package/lib/GraphHelpers.js +65 -0
  94. package/lib/HarmonyLinkingError.js +17 -0
  95. package/lib/HashedModuleIdsPlugin.js +63 -0
  96. package/lib/HotModuleReplacement.runtime.js +721 -0
  97. package/lib/HotModuleReplacementPlugin.js +425 -0
  98. package/lib/HotUpdateChunk.js +17 -0
  99. package/lib/HotUpdateChunkTemplate.js +78 -0
  100. package/lib/IgnorePlugin.js +91 -0
  101. package/lib/JavascriptGenerator.js +229 -0
  102. package/lib/JavascriptModulesPlugin.js +185 -0
  103. package/lib/JsonGenerator.js +57 -0
  104. package/lib/JsonModulesPlugin.js +30 -0
  105. package/lib/JsonParser.js +27 -0
  106. package/lib/LibManifestPlugin.js +90 -0
  107. package/lib/LibraryTemplatePlugin.js +186 -0
  108. package/lib/LoaderOptionsPlugin.js +58 -0
  109. package/lib/LoaderTargetPlugin.js +24 -0
  110. package/lib/MainTemplate.js +568 -0
  111. package/lib/MemoryOutputFileSystem.js +5 -0
  112. package/lib/Module.js +435 -0
  113. package/lib/ModuleBuildError.js +52 -0
  114. package/lib/ModuleDependencyError.js +35 -0
  115. package/lib/ModuleDependencyWarning.js +25 -0
  116. package/lib/ModuleError.js +36 -0
  117. package/lib/ModuleFilenameHelpers.js +179 -0
  118. package/lib/ModuleNotFoundError.js +23 -0
  119. package/lib/ModuleParseError.js +67 -0
  120. package/lib/ModuleReason.js +48 -0
  121. package/lib/ModuleTemplate.js +93 -0
  122. package/lib/ModuleWarning.js +36 -0
  123. package/lib/MultiCompiler.js +290 -0
  124. package/lib/MultiEntryPlugin.js +80 -0
  125. package/lib/MultiModule.js +87 -0
  126. package/lib/MultiModuleFactory.js +23 -0
  127. package/lib/MultiStats.js +92 -0
  128. package/lib/MultiWatching.js +50 -0
  129. package/lib/NamedChunksPlugin.js +29 -0
  130. package/lib/NamedModulesPlugin.js +58 -0
  131. package/lib/NoEmitOnErrorsPlugin.js +20 -0
  132. package/lib/NoModeWarning.js +23 -0
  133. package/lib/NodeStuffPlugin.js +118 -0
  134. package/lib/NormalModule.js +582 -0
  135. package/lib/NormalModuleFactory.js +528 -0
  136. package/lib/NormalModuleReplacementPlugin.js +51 -0
  137. package/lib/NullFactory.js +12 -0
  138. package/lib/OptionsApply.js +10 -0
  139. package/lib/OptionsDefaulter.js +141 -0
  140. package/lib/Parser.js +2454 -0
  141. package/lib/ParserHelpers.js +103 -0
  142. package/lib/PrefetchPlugin.js +37 -0
  143. package/lib/ProgressPlugin.js +307 -0
  144. package/lib/ProvidePlugin.js +86 -0
  145. package/lib/RawModule.js +56 -0
  146. package/lib/RecordIdsPlugin.js +236 -0
  147. package/lib/RemovedPluginError.js +11 -0
  148. package/lib/RequestShortener.js +83 -0
  149. package/lib/RequireJsStuffPlugin.js +66 -0
  150. package/lib/ResolverFactory.js +74 -0
  151. package/lib/RuleSet.js +567 -0
  152. package/lib/RuntimeTemplate.js +336 -0
  153. package/lib/SetVarMainTemplatePlugin.js +69 -0
  154. package/lib/SingleEntryPlugin.js +63 -0
  155. package/lib/SizeFormatHelpers.js +24 -0
  156. package/lib/SourceMapDevToolModuleOptionsPlugin.js +49 -0
  157. package/lib/SourceMapDevToolPlugin.js +418 -0
  158. package/lib/Stats.js +1685 -0
  159. package/lib/SystemMainTemplatePlugin.js +137 -0
  160. package/lib/Template.js +291 -0
  161. package/lib/TemplatedPathPlugin.js +188 -0
  162. package/lib/UmdMainTemplatePlugin.js +305 -0
  163. package/lib/UnsupportedFeatureWarning.js +30 -0
  164. package/lib/UseStrictPlugin.js +54 -0
  165. package/lib/WarnCaseSensitiveModulesPlugin.js +37 -0
  166. package/lib/WarnNoModeSetPlugin.js +17 -0
  167. package/lib/WatchIgnorePlugin.js +106 -0
  168. package/lib/Watching.js +211 -0
  169. package/lib/WebpackError.js +31 -0
  170. package/lib/WebpackOptionsApply.js +546 -0
  171. package/lib/WebpackOptionsDefaulter.js +391 -0
  172. package/lib/WebpackOptionsValidationError.js +390 -0
  173. package/lib/buildChunkGraph.js +712 -0
  174. package/lib/compareLocations.js +52 -0
  175. package/lib/debug/ProfilingPlugin.js +442 -0
  176. package/lib/dependencies/AMDDefineDependency.js +137 -0
  177. package/lib/dependencies/AMDDefineDependencyParserPlugin.js +336 -0
  178. package/lib/dependencies/AMDPlugin.js +249 -0
  179. package/lib/dependencies/AMDRequireArrayDependency.js +49 -0
  180. package/lib/dependencies/AMDRequireContextDependency.js +20 -0
  181. package/lib/dependencies/AMDRequireDependenciesBlock.js +47 -0
  182. package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +274 -0
  183. package/lib/dependencies/AMDRequireDependency.js +135 -0
  184. package/lib/dependencies/AMDRequireItemDependency.js +22 -0
  185. package/lib/dependencies/CommonJsPlugin.js +158 -0
  186. package/lib/dependencies/CommonJsRequireContextDependency.js +23 -0
  187. package/lib/dependencies/CommonJsRequireDependency.js +22 -0
  188. package/lib/dependencies/CommonJsRequireDependencyParserPlugin.js +138 -0
  189. package/lib/dependencies/ConstDependency.js +33 -0
  190. package/lib/dependencies/ContextDependency.js +68 -0
  191. package/lib/dependencies/ContextDependencyHelpers.js +232 -0
  192. package/lib/dependencies/ContextDependencyTemplateAsId.js +43 -0
  193. package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +39 -0
  194. package/lib/dependencies/ContextElementDependency.js +21 -0
  195. package/lib/dependencies/CriticalDependencyWarning.js +20 -0
  196. package/lib/dependencies/DelegatedExportsDependency.js +33 -0
  197. package/lib/dependencies/DelegatedSourceDependency.js +18 -0
  198. package/lib/dependencies/DependencyReference.js +64 -0
  199. package/lib/dependencies/DllEntryDependency.js +20 -0
  200. package/lib/dependencies/HarmonyAcceptDependency.js +48 -0
  201. package/lib/dependencies/HarmonyAcceptImportDependency.js +23 -0
  202. package/lib/dependencies/HarmonyCompatibilityDependency.js +31 -0
  203. package/lib/dependencies/HarmonyDetectionParserPlugin.js +96 -0
  204. package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +154 -0
  205. package/lib/dependencies/HarmonyExportExpressionDependency.js +58 -0
  206. package/lib/dependencies/HarmonyExportHeaderDependency.js +30 -0
  207. package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +659 -0
  208. package/lib/dependencies/HarmonyExportSpecifierDependency.js +54 -0
  209. package/lib/dependencies/HarmonyImportDependency.js +109 -0
  210. package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +222 -0
  211. package/lib/dependencies/HarmonyImportSideEffectDependency.js +31 -0
  212. package/lib/dependencies/HarmonyImportSpecifierDependency.js +163 -0
  213. package/lib/dependencies/HarmonyInitDependency.js +60 -0
  214. package/lib/dependencies/HarmonyModulesPlugin.js +143 -0
  215. package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +26 -0
  216. package/lib/dependencies/ImportContextDependency.js +23 -0
  217. package/lib/dependencies/ImportDependenciesBlock.js +18 -0
  218. package/lib/dependencies/ImportDependency.js +34 -0
  219. package/lib/dependencies/ImportEagerDependency.js +32 -0
  220. package/lib/dependencies/ImportParserPlugin.js +248 -0
  221. package/lib/dependencies/ImportPlugin.js +79 -0
  222. package/lib/dependencies/ImportWeakDependency.js +34 -0
  223. package/lib/dependencies/JsonExportsDependency.js +26 -0
  224. package/lib/dependencies/LoaderDependency.js +21 -0
  225. package/lib/dependencies/LoaderPlugin.js +115 -0
  226. package/lib/dependencies/LocalModule.js +23 -0
  227. package/lib/dependencies/LocalModuleDependency.js +28 -0
  228. package/lib/dependencies/LocalModulesHelpers.js +52 -0
  229. package/lib/dependencies/ModuleDependency.js +23 -0
  230. package/lib/dependencies/ModuleDependencyTemplateAsId.js +17 -0
  231. package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +17 -0
  232. package/lib/dependencies/ModuleHotAcceptDependency.js +23 -0
  233. package/lib/dependencies/ModuleHotDeclineDependency.js +23 -0
  234. package/lib/dependencies/MultiEntryDependency.js +25 -0
  235. package/lib/dependencies/NullDependency.js +20 -0
  236. package/lib/dependencies/PrefetchDependency.js +18 -0
  237. package/lib/dependencies/RequireContextDependency.js +22 -0
  238. package/lib/dependencies/RequireContextDependencyParserPlugin.js +56 -0
  239. package/lib/dependencies/RequireContextPlugin.js +143 -0
  240. package/lib/dependencies/RequireEnsureDependenciesBlock.js +33 -0
  241. package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +116 -0
  242. package/lib/dependencies/RequireEnsureDependency.js +58 -0
  243. package/lib/dependencies/RequireEnsureItemDependency.js +21 -0
  244. package/lib/dependencies/RequireEnsurePlugin.js +74 -0
  245. package/lib/dependencies/RequireHeaderDependency.js +26 -0
  246. package/lib/dependencies/RequireIncludeDependency.js +39 -0
  247. package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +23 -0
  248. package/lib/dependencies/RequireIncludePlugin.js +61 -0
  249. package/lib/dependencies/RequireResolveContextDependency.js +23 -0
  250. package/lib/dependencies/RequireResolveDependency.js +22 -0
  251. package/lib/dependencies/RequireResolveDependencyParserPlugin.js +86 -0
  252. package/lib/dependencies/RequireResolveHeaderDependency.js +26 -0
  253. package/lib/dependencies/SingleEntryDependency.js +21 -0
  254. package/lib/dependencies/SystemPlugin.js +122 -0
  255. package/lib/dependencies/UnsupportedDependency.js +27 -0
  256. package/lib/dependencies/WebAssemblyExportImportedDependency.js +31 -0
  257. package/lib/dependencies/WebAssemblyImportDependency.js +54 -0
  258. package/lib/dependencies/WebpackMissingModule.js +20 -0
  259. package/lib/dependencies/getFunctionExpression.js +52 -0
  260. package/lib/formatLocation.js +75 -0
  261. package/lib/logging/Logger.js +128 -0
  262. package/lib/logging/createConsoleLogger.js +210 -0
  263. package/lib/logging/runtime.js +36 -0
  264. package/lib/logging/truncateArgs.js +76 -0
  265. package/lib/node/NodeChunkTemplatePlugin.js +31 -0
  266. package/lib/node/NodeEnvironmentPlugin.js +44 -0
  267. package/lib/node/NodeHotUpdateChunkTemplatePlugin.js +36 -0
  268. package/lib/node/NodeMainTemplate.runtime.js +32 -0
  269. package/lib/node/NodeMainTemplateAsync.runtime.js +50 -0
  270. package/lib/node/NodeMainTemplatePlugin.js +321 -0
  271. package/lib/node/NodeOutputFileSystem.js +22 -0
  272. package/lib/node/NodeSourcePlugin.js +141 -0
  273. package/lib/node/NodeTargetPlugin.js +19 -0
  274. package/lib/node/NodeTemplatePlugin.js +31 -0
  275. package/lib/node/NodeWatchFileSystem.js +109 -0
  276. package/lib/node/ReadFileCompileWasmTemplatePlugin.js +61 -0
  277. package/lib/node/nodeConsole.js +135 -0
  278. package/lib/optimize/AggressiveMergingPlugin.js +87 -0
  279. package/lib/optimize/AggressiveSplittingPlugin.js +294 -0
  280. package/lib/optimize/ChunkModuleIdRangePlugin.js +66 -0
  281. package/lib/optimize/ConcatenatedModule.js +1477 -0
  282. package/lib/optimize/EnsureChunkConditionsPlugin.js +70 -0
  283. package/lib/optimize/FlagIncludedChunksPlugin.js +99 -0
  284. package/lib/optimize/LimitChunkCountPlugin.js +231 -0
  285. package/lib/optimize/MergeDuplicateChunksPlugin.js +78 -0
  286. package/lib/optimize/MinChunkSizePlugin.js +82 -0
  287. package/lib/optimize/MinMaxSizeWarning.js +29 -0
  288. package/lib/optimize/ModuleConcatenationPlugin.js +485 -0
  289. package/lib/optimize/NaturalChunkOrderPlugin.js +41 -0
  290. package/lib/optimize/OccurrenceChunkOrderPlugin.js +66 -0
  291. package/lib/optimize/OccurrenceModuleOrderPlugin.js +112 -0
  292. package/lib/optimize/OccurrenceOrderPlugin.js +135 -0
  293. package/lib/optimize/RemoveEmptyChunksPlugin.js +42 -0
  294. package/lib/optimize/RemoveParentModulesPlugin.js +127 -0
  295. package/lib/optimize/RuntimeChunkPlugin.js +41 -0
  296. package/lib/optimize/SideEffectsFlagPlugin.js +352 -0
  297. package/lib/optimize/SplitChunksPlugin.js +971 -0
  298. package/lib/performance/AssetsOverSizeLimitWarning.js +30 -0
  299. package/lib/performance/EntrypointsOverSizeLimitWarning.js +30 -0
  300. package/lib/performance/NoAsyncChunksWarning.js +21 -0
  301. package/lib/performance/SizeLimitsPlugin.js +125 -0
  302. package/lib/util/LazyBucketSortedSet.js +235 -0
  303. package/lib/util/Queue.js +46 -0
  304. package/lib/util/Semaphore.js +53 -0
  305. package/lib/util/SetHelpers.js +48 -0
  306. package/lib/util/SortableSet.js +140 -0
  307. package/lib/util/StackedSetMap.js +142 -0
  308. package/lib/util/TrackingSet.js +35 -0
  309. package/lib/util/cachedMerge.js +35 -0
  310. package/lib/util/cleverMerge.js +77 -0
  311. package/lib/util/createHash.js +174 -0
  312. package/lib/util/deterministicGrouping.js +274 -0
  313. package/lib/util/hash/BatchedHash.js +71 -0
  314. package/lib/util/hash/md4.js +25 -0
  315. package/lib/util/hash/wasm-hash.js +174 -0
  316. package/lib/util/identifier.js +127 -0
  317. package/lib/util/objectToMap.js +16 -0
  318. package/lib/validateSchema.js +67 -0
  319. package/lib/wasm/UnsupportedWebAssemblyFeatureError.js +17 -0
  320. package/lib/wasm/WasmFinalizeExportsPlugin.js +69 -0
  321. package/lib/wasm/WasmMainTemplatePlugin.js +341 -0
  322. package/lib/wasm/WebAssemblyGenerator.js +458 -0
  323. package/lib/wasm/WebAssemblyInInitialChunkError.js +88 -0
  324. package/lib/wasm/WebAssemblyJavascriptGenerator.js +152 -0
  325. package/lib/wasm/WebAssemblyModulesPlugin.js +128 -0
  326. package/lib/wasm/WebAssemblyParser.js +175 -0
  327. package/lib/wasm/WebAssemblyUtils.js +59 -0
  328. package/lib/web/FetchCompileWasmTemplatePlugin.js +37 -0
  329. package/lib/web/JsonpChunkTemplatePlugin.js +71 -0
  330. package/lib/web/JsonpExportMainTemplatePlugin.js +50 -0
  331. package/lib/web/JsonpHotUpdateChunkTemplatePlugin.js +39 -0
  332. package/lib/web/JsonpMainTemplate.runtime.js +71 -0
  333. package/lib/web/JsonpMainTemplatePlugin.js +615 -0
  334. package/lib/web/JsonpTemplatePlugin.js +23 -0
  335. package/lib/web/WebEnvironmentPlugin.js +18 -0
  336. package/lib/webpack.js +206 -0
  337. package/lib/webpack.web.js +31 -0
  338. package/lib/webworker/WebWorkerChunkTemplatePlugin.js +35 -0
  339. package/lib/webworker/WebWorkerHotUpdateChunkTemplatePlugin.js +40 -0
  340. package/lib/webworker/WebWorkerMainTemplate.runtime.js +73 -0
  341. package/lib/webworker/WebWorkerMainTemplatePlugin.js +192 -0
  342. package/lib/webworker/WebWorkerTemplatePlugin.js +25 -0
  343. package/package.json +211 -0
  344. package/schemas/WebpackOptions.json +2285 -0
  345. package/schemas/ajv.absolutePath.js +57 -0
  346. package/schemas/plugins/BannerPlugin.json +101 -0
  347. package/schemas/plugins/DllPlugin.json +36 -0
  348. package/schemas/plugins/DllReferencePlugin.json +205 -0
  349. package/schemas/plugins/HashedModuleIdsPlugin.json +26 -0
  350. package/schemas/plugins/IgnorePlugin.json +37 -0
  351. package/schemas/plugins/LoaderOptionsPlugin.json +27 -0
  352. package/schemas/plugins/ProgressPlugin.json +52 -0
  353. package/schemas/plugins/SourceMapDevToolPlugin.json +185 -0
  354. package/schemas/plugins/WatchIgnorePlugin.json +18 -0
  355. package/schemas/plugins/debug/ProfilingPlugin.json +13 -0
  356. package/schemas/plugins/optimize/AggressiveSplittingPlugin.json +23 -0
  357. package/schemas/plugins/optimize/LimitChunkCountPlugin.json +16 -0
  358. package/schemas/plugins/optimize/MinChunkSizePlugin.json +12 -0
  359. package/schemas/plugins/optimize/OccurrenceOrderChunkIdsPlugin.json +11 -0
  360. package/schemas/plugins/optimize/OccurrenceOrderModuleIdsPlugin.json +11 -0
  361. package/web_modules/node-libs-browser.js +0 -0
@@ -0,0 +1,143 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const HarmonyCompatibilityDependency = require("./HarmonyCompatibilityDependency");
7
+ const HarmonyInitDependency = require("./HarmonyInitDependency");
8
+ const HarmonyImportSpecifierDependency = require("./HarmonyImportSpecifierDependency");
9
+ const HarmonyImportSideEffectDependency = require("./HarmonyImportSideEffectDependency");
10
+ const HarmonyExportHeaderDependency = require("./HarmonyExportHeaderDependency");
11
+ const HarmonyExportExpressionDependency = require("./HarmonyExportExpressionDependency");
12
+ const HarmonyExportSpecifierDependency = require("./HarmonyExportSpecifierDependency");
13
+ const HarmonyExportImportedSpecifierDependency = require("./HarmonyExportImportedSpecifierDependency");
14
+ const HarmonyAcceptDependency = require("./HarmonyAcceptDependency");
15
+ const HarmonyAcceptImportDependency = require("./HarmonyAcceptImportDependency");
16
+
17
+ const NullFactory = require("../NullFactory");
18
+
19
+ const HarmonyDetectionParserPlugin = require("./HarmonyDetectionParserPlugin");
20
+ const HarmonyImportDependencyParserPlugin = require("./HarmonyImportDependencyParserPlugin");
21
+ const HarmonyExportDependencyParserPlugin = require("./HarmonyExportDependencyParserPlugin");
22
+ const HarmonyTopLevelThisParserPlugin = require("./HarmonyTopLevelThisParserPlugin");
23
+
24
+ class HarmonyModulesPlugin {
25
+ constructor(options) {
26
+ this.options = options;
27
+ }
28
+
29
+ apply(compiler) {
30
+ compiler.hooks.compilation.tap(
31
+ "HarmonyModulesPlugin",
32
+ (compilation, { normalModuleFactory }) => {
33
+ compilation.dependencyFactories.set(
34
+ HarmonyCompatibilityDependency,
35
+ new NullFactory()
36
+ );
37
+ compilation.dependencyTemplates.set(
38
+ HarmonyCompatibilityDependency,
39
+ new HarmonyCompatibilityDependency.Template()
40
+ );
41
+
42
+ compilation.dependencyFactories.set(
43
+ HarmonyInitDependency,
44
+ new NullFactory()
45
+ );
46
+ compilation.dependencyTemplates.set(
47
+ HarmonyInitDependency,
48
+ new HarmonyInitDependency.Template()
49
+ );
50
+
51
+ compilation.dependencyFactories.set(
52
+ HarmonyImportSideEffectDependency,
53
+ normalModuleFactory
54
+ );
55
+ compilation.dependencyTemplates.set(
56
+ HarmonyImportSideEffectDependency,
57
+ new HarmonyImportSideEffectDependency.Template()
58
+ );
59
+
60
+ compilation.dependencyFactories.set(
61
+ HarmonyImportSpecifierDependency,
62
+ normalModuleFactory
63
+ );
64
+ compilation.dependencyTemplates.set(
65
+ HarmonyImportSpecifierDependency,
66
+ new HarmonyImportSpecifierDependency.Template()
67
+ );
68
+
69
+ compilation.dependencyFactories.set(
70
+ HarmonyExportHeaderDependency,
71
+ new NullFactory()
72
+ );
73
+ compilation.dependencyTemplates.set(
74
+ HarmonyExportHeaderDependency,
75
+ new HarmonyExportHeaderDependency.Template()
76
+ );
77
+
78
+ compilation.dependencyFactories.set(
79
+ HarmonyExportExpressionDependency,
80
+ new NullFactory()
81
+ );
82
+ compilation.dependencyTemplates.set(
83
+ HarmonyExportExpressionDependency,
84
+ new HarmonyExportExpressionDependency.Template()
85
+ );
86
+
87
+ compilation.dependencyFactories.set(
88
+ HarmonyExportSpecifierDependency,
89
+ new NullFactory()
90
+ );
91
+ compilation.dependencyTemplates.set(
92
+ HarmonyExportSpecifierDependency,
93
+ new HarmonyExportSpecifierDependency.Template()
94
+ );
95
+
96
+ compilation.dependencyFactories.set(
97
+ HarmonyExportImportedSpecifierDependency,
98
+ normalModuleFactory
99
+ );
100
+ compilation.dependencyTemplates.set(
101
+ HarmonyExportImportedSpecifierDependency,
102
+ new HarmonyExportImportedSpecifierDependency.Template()
103
+ );
104
+
105
+ compilation.dependencyFactories.set(
106
+ HarmonyAcceptDependency,
107
+ new NullFactory()
108
+ );
109
+ compilation.dependencyTemplates.set(
110
+ HarmonyAcceptDependency,
111
+ new HarmonyAcceptDependency.Template()
112
+ );
113
+
114
+ compilation.dependencyFactories.set(
115
+ HarmonyAcceptImportDependency,
116
+ normalModuleFactory
117
+ );
118
+ compilation.dependencyTemplates.set(
119
+ HarmonyAcceptImportDependency,
120
+ new HarmonyAcceptImportDependency.Template()
121
+ );
122
+
123
+ const handler = (parser, parserOptions) => {
124
+ if (parserOptions.harmony !== undefined && !parserOptions.harmony)
125
+ return;
126
+
127
+ new HarmonyDetectionParserPlugin().apply(parser);
128
+ new HarmonyImportDependencyParserPlugin(this.options).apply(parser);
129
+ new HarmonyExportDependencyParserPlugin(this.options).apply(parser);
130
+ new HarmonyTopLevelThisParserPlugin().apply(parser);
131
+ };
132
+
133
+ normalModuleFactory.hooks.parser
134
+ .for("javascript/auto")
135
+ .tap("HarmonyModulesPlugin", handler);
136
+ normalModuleFactory.hooks.parser
137
+ .for("javascript/esm")
138
+ .tap("HarmonyModulesPlugin", handler);
139
+ }
140
+ );
141
+ }
142
+ }
143
+ module.exports = HarmonyModulesPlugin;
@@ -0,0 +1,26 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Florent Cailhol @ooflorent
4
+ */
5
+ "use strict";
6
+
7
+ const ConstDependency = require("./ConstDependency");
8
+
9
+ class HarmonyTopLevelThisParserPlugin {
10
+ apply(parser) {
11
+ parser.hooks.expression
12
+ .for("this")
13
+ .tap("HarmonyTopLevelThisParserPlugin", node => {
14
+ if (!parser.scope.topLevelScope) return;
15
+ const module = parser.state.module;
16
+ const isHarmony = !!(module.buildMeta && module.buildMeta.exportsType);
17
+ if (isHarmony) {
18
+ const dep = new ConstDependency("undefined", node.range, false);
19
+ dep.loc = node.loc;
20
+ parser.state.current.addDependency(dep);
21
+ }
22
+ });
23
+ }
24
+ }
25
+
26
+ module.exports = HarmonyTopLevelThisParserPlugin;
@@ -0,0 +1,23 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const ContextDependency = require("./ContextDependency");
7
+ const ContextDependencyTemplateAsRequireCall = require("./ContextDependencyTemplateAsRequireCall");
8
+
9
+ class ImportContextDependency extends ContextDependency {
10
+ constructor(options, range, valueRange) {
11
+ super(options);
12
+ this.range = range;
13
+ this.valueRange = valueRange;
14
+ }
15
+
16
+ get type() {
17
+ return `import() context ${this.options.mode}`;
18
+ }
19
+ }
20
+
21
+ ImportContextDependency.Template = ContextDependencyTemplateAsRequireCall;
22
+
23
+ module.exports = ImportContextDependency;
@@ -0,0 +1,18 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const AsyncDependenciesBlock = require("../AsyncDependenciesBlock");
7
+ const ImportDependency = require("./ImportDependency");
8
+
9
+ module.exports = class ImportDependenciesBlock extends AsyncDependenciesBlock {
10
+ // TODO webpack 5 reorganize arguments
11
+ constructor(request, range, groupOptions, module, loc, originModule) {
12
+ super(groupOptions, module, loc, request);
13
+ this.range = range;
14
+ const dep = new ImportDependency(request, originModule, this);
15
+ dep.loc = loc;
16
+ this.addDependency(dep);
17
+ }
18
+ };
@@ -0,0 +1,34 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const ModuleDependency = require("./ModuleDependency");
7
+
8
+ class ImportDependency extends ModuleDependency {
9
+ constructor(request, originModule, block) {
10
+ super(request);
11
+ this.originModule = originModule;
12
+ this.block = block;
13
+ }
14
+
15
+ get type() {
16
+ return "import()";
17
+ }
18
+ }
19
+
20
+ ImportDependency.Template = class ImportDependencyTemplate {
21
+ apply(dep, source, runtime) {
22
+ const content = runtime.moduleNamespacePromise({
23
+ block: dep.block,
24
+ module: dep.module,
25
+ request: dep.request,
26
+ strict: dep.originModule.buildMeta.strictHarmonyModule,
27
+ message: "import()"
28
+ });
29
+
30
+ source.replace(dep.block.range[0], dep.block.range[1] - 1, content);
31
+ }
32
+ };
33
+
34
+ module.exports = ImportDependency;
@@ -0,0 +1,32 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const ModuleDependency = require("./ModuleDependency");
7
+
8
+ class ImportEagerDependency extends ModuleDependency {
9
+ constructor(request, originModule, range) {
10
+ super(request);
11
+ this.originModule = originModule;
12
+ this.range = range;
13
+ }
14
+
15
+ get type() {
16
+ return "import() eager";
17
+ }
18
+ }
19
+
20
+ ImportEagerDependency.Template = class ImportEagerDependencyTemplate {
21
+ apply(dep, source, runtime) {
22
+ const content = runtime.moduleNamespacePromise({
23
+ module: dep.module,
24
+ request: dep.request,
25
+ strict: dep.originModule.buildMeta.strictHarmonyModule,
26
+ message: "import() eager"
27
+ });
28
+ source.replace(dep.range[0], dep.range[1] - 1, content);
29
+ }
30
+ };
31
+
32
+ module.exports = ImportEagerDependency;
@@ -0,0 +1,248 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+
7
+ const ImportContextDependency = require("./ImportContextDependency");
8
+ const ImportWeakDependency = require("./ImportWeakDependency");
9
+ const ImportDependenciesBlock = require("./ImportDependenciesBlock");
10
+ const ImportEagerDependency = require("./ImportEagerDependency");
11
+ const ContextDependencyHelpers = require("./ContextDependencyHelpers");
12
+ const UnsupportedFeatureWarning = require("../UnsupportedFeatureWarning");
13
+ const CommentCompilationWarning = require("../CommentCompilationWarning");
14
+
15
+ class ImportParserPlugin {
16
+ constructor(options) {
17
+ this.options = options;
18
+ }
19
+
20
+ apply(parser) {
21
+ parser.hooks.importCall.tap("ImportParserPlugin", expr => {
22
+ if (expr.arguments.length !== 1) {
23
+ throw new Error(
24
+ "Incorrect number of arguments provided to 'import(module: string) -> Promise'."
25
+ );
26
+ }
27
+
28
+ const param = parser.evaluateExpression(expr.arguments[0]);
29
+
30
+ let chunkName = null;
31
+ let mode = "lazy";
32
+ let include = null;
33
+ let exclude = null;
34
+ const groupOptions = {};
35
+
36
+ const {
37
+ options: importOptions,
38
+ errors: commentErrors
39
+ } = parser.parseCommentOptions(expr.range);
40
+
41
+ if (commentErrors) {
42
+ for (const e of commentErrors) {
43
+ const { comment } = e;
44
+ parser.state.module.warnings.push(
45
+ new CommentCompilationWarning(
46
+ `Compilation error while processing magic comment(-s): /*${comment.value}*/: ${e.message}`,
47
+ parser.state.module,
48
+ comment.loc
49
+ )
50
+ );
51
+ }
52
+ }
53
+
54
+ if (importOptions) {
55
+ if (importOptions.webpackIgnore !== undefined) {
56
+ if (typeof importOptions.webpackIgnore !== "boolean") {
57
+ parser.state.module.warnings.push(
58
+ new UnsupportedFeatureWarning(
59
+ parser.state.module,
60
+ `\`webpackIgnore\` expected a boolean, but received: ${importOptions.webpackIgnore}.`,
61
+ expr.loc
62
+ )
63
+ );
64
+ } else {
65
+ // Do not instrument `import()` if `webpackIgnore` is `true`
66
+ if (importOptions.webpackIgnore) {
67
+ return false;
68
+ }
69
+ }
70
+ }
71
+ if (importOptions.webpackChunkName !== undefined) {
72
+ if (typeof importOptions.webpackChunkName !== "string") {
73
+ parser.state.module.warnings.push(
74
+ new UnsupportedFeatureWarning(
75
+ parser.state.module,
76
+ `\`webpackChunkName\` expected a string, but received: ${importOptions.webpackChunkName}.`,
77
+ expr.loc
78
+ )
79
+ );
80
+ } else {
81
+ chunkName = importOptions.webpackChunkName;
82
+ }
83
+ }
84
+ if (importOptions.webpackMode !== undefined) {
85
+ if (typeof importOptions.webpackMode !== "string") {
86
+ parser.state.module.warnings.push(
87
+ new UnsupportedFeatureWarning(
88
+ parser.state.module,
89
+ `\`webpackMode\` expected a string, but received: ${importOptions.webpackMode}.`,
90
+ expr.loc
91
+ )
92
+ );
93
+ } else {
94
+ mode = importOptions.webpackMode;
95
+ }
96
+ }
97
+ if (importOptions.webpackPrefetch !== undefined) {
98
+ if (importOptions.webpackPrefetch === true) {
99
+ groupOptions.prefetchOrder = 0;
100
+ } else if (typeof importOptions.webpackPrefetch === "number") {
101
+ groupOptions.prefetchOrder = importOptions.webpackPrefetch;
102
+ } else {
103
+ parser.state.module.warnings.push(
104
+ new UnsupportedFeatureWarning(
105
+ parser.state.module,
106
+ `\`webpackPrefetch\` expected true or a number, but received: ${importOptions.webpackPrefetch}.`,
107
+ expr.loc
108
+ )
109
+ );
110
+ }
111
+ }
112
+ if (importOptions.webpackPreload !== undefined) {
113
+ if (importOptions.webpackPreload === true) {
114
+ groupOptions.preloadOrder = 0;
115
+ } else if (typeof importOptions.webpackPreload === "number") {
116
+ groupOptions.preloadOrder = importOptions.webpackPreload;
117
+ } else {
118
+ parser.state.module.warnings.push(
119
+ new UnsupportedFeatureWarning(
120
+ parser.state.module,
121
+ `\`webpackPreload\` expected true or a number, but received: ${importOptions.webpackPreload}.`,
122
+ expr.loc
123
+ )
124
+ );
125
+ }
126
+ }
127
+ if (importOptions.webpackInclude !== undefined) {
128
+ if (
129
+ !importOptions.webpackInclude ||
130
+ importOptions.webpackInclude.constructor.name !== "RegExp"
131
+ ) {
132
+ parser.state.module.warnings.push(
133
+ new UnsupportedFeatureWarning(
134
+ parser.state.module,
135
+ `\`webpackInclude\` expected a regular expression, but received: ${importOptions.webpackInclude}.`,
136
+ expr.loc
137
+ )
138
+ );
139
+ } else {
140
+ include = new RegExp(importOptions.webpackInclude);
141
+ }
142
+ }
143
+ if (importOptions.webpackExclude !== undefined) {
144
+ if (
145
+ !importOptions.webpackExclude ||
146
+ importOptions.webpackExclude.constructor.name !== "RegExp"
147
+ ) {
148
+ parser.state.module.warnings.push(
149
+ new UnsupportedFeatureWarning(
150
+ parser.state.module,
151
+ `\`webpackExclude\` expected a regular expression, but received: ${importOptions.webpackExclude}.`,
152
+ expr.loc
153
+ )
154
+ );
155
+ } else {
156
+ exclude = new RegExp(importOptions.webpackExclude);
157
+ }
158
+ }
159
+ }
160
+
161
+ if (param.isString()) {
162
+ if (mode !== "lazy" && mode !== "eager" && mode !== "weak") {
163
+ parser.state.module.warnings.push(
164
+ new UnsupportedFeatureWarning(
165
+ parser.state.module,
166
+ `\`webpackMode\` expected 'lazy', 'eager' or 'weak', but received: ${mode}.`,
167
+ expr.loc
168
+ )
169
+ );
170
+ }
171
+
172
+ if (mode === "eager") {
173
+ const dep = new ImportEagerDependency(
174
+ param.string,
175
+ parser.state.module,
176
+ expr.range
177
+ );
178
+ parser.state.current.addDependency(dep);
179
+ } else if (mode === "weak") {
180
+ const dep = new ImportWeakDependency(
181
+ param.string,
182
+ parser.state.module,
183
+ expr.range
184
+ );
185
+ parser.state.current.addDependency(dep);
186
+ } else {
187
+ const depBlock = new ImportDependenciesBlock(
188
+ param.string,
189
+ expr.range,
190
+ Object.assign(groupOptions, {
191
+ name: chunkName
192
+ }),
193
+ parser.state.module,
194
+ expr.loc,
195
+ parser.state.module
196
+ );
197
+ parser.state.current.addBlock(depBlock);
198
+ }
199
+ return true;
200
+ } else {
201
+ if (
202
+ mode !== "lazy" &&
203
+ mode !== "lazy-once" &&
204
+ mode !== "eager" &&
205
+ mode !== "weak"
206
+ ) {
207
+ parser.state.module.warnings.push(
208
+ new UnsupportedFeatureWarning(
209
+ parser.state.module,
210
+ `\`webpackMode\` expected 'lazy', 'lazy-once', 'eager' or 'weak', but received: ${mode}.`,
211
+ expr.loc
212
+ )
213
+ );
214
+ mode = "lazy";
215
+ }
216
+
217
+ if (mode === "weak") {
218
+ mode = "async-weak";
219
+ }
220
+ const dep = ContextDependencyHelpers.create(
221
+ ImportContextDependency,
222
+ expr.range,
223
+ param,
224
+ expr,
225
+ this.options,
226
+ {
227
+ chunkName,
228
+ groupOptions,
229
+ include,
230
+ exclude,
231
+ mode,
232
+ namespaceObject: parser.state.module.buildMeta.strictHarmonyModule
233
+ ? "strict"
234
+ : true
235
+ },
236
+ parser
237
+ );
238
+ if (!dep) return;
239
+ dep.loc = expr.loc;
240
+ dep.optional = !!parser.scope.inTry;
241
+ parser.state.current.addDependency(dep);
242
+ return true;
243
+ }
244
+ });
245
+ }
246
+ }
247
+
248
+ module.exports = ImportParserPlugin;
@@ -0,0 +1,79 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+
7
+ const ImportDependency = require("./ImportDependency");
8
+ const ImportEagerDependency = require("./ImportEagerDependency");
9
+ const ImportWeakDependency = require("./ImportWeakDependency");
10
+ const ImportContextDependency = require("./ImportContextDependency");
11
+ const ImportParserPlugin = require("./ImportParserPlugin");
12
+
13
+ class ImportPlugin {
14
+ constructor(options) {
15
+ this.options = options;
16
+ }
17
+
18
+ apply(compiler) {
19
+ const options = this.options;
20
+ compiler.hooks.compilation.tap(
21
+ "ImportPlugin",
22
+ (compilation, { contextModuleFactory, normalModuleFactory }) => {
23
+ compilation.dependencyFactories.set(
24
+ ImportDependency,
25
+ normalModuleFactory
26
+ );
27
+ compilation.dependencyTemplates.set(
28
+ ImportDependency,
29
+ new ImportDependency.Template()
30
+ );
31
+
32
+ compilation.dependencyFactories.set(
33
+ ImportEagerDependency,
34
+ normalModuleFactory
35
+ );
36
+ compilation.dependencyTemplates.set(
37
+ ImportEagerDependency,
38
+ new ImportEagerDependency.Template()
39
+ );
40
+
41
+ compilation.dependencyFactories.set(
42
+ ImportWeakDependency,
43
+ normalModuleFactory
44
+ );
45
+ compilation.dependencyTemplates.set(
46
+ ImportWeakDependency,
47
+ new ImportWeakDependency.Template()
48
+ );
49
+
50
+ compilation.dependencyFactories.set(
51
+ ImportContextDependency,
52
+ contextModuleFactory
53
+ );
54
+ compilation.dependencyTemplates.set(
55
+ ImportContextDependency,
56
+ new ImportContextDependency.Template()
57
+ );
58
+
59
+ const handler = (parser, parserOptions) => {
60
+ if (parserOptions.import !== undefined && !parserOptions.import)
61
+ return;
62
+
63
+ new ImportParserPlugin(options).apply(parser);
64
+ };
65
+
66
+ normalModuleFactory.hooks.parser
67
+ .for("javascript/auto")
68
+ .tap("ImportPlugin", handler);
69
+ normalModuleFactory.hooks.parser
70
+ .for("javascript/dynamic")
71
+ .tap("ImportPlugin", handler);
72
+ normalModuleFactory.hooks.parser
73
+ .for("javascript/esm")
74
+ .tap("ImportPlugin", handler);
75
+ }
76
+ );
77
+ }
78
+ }
79
+ module.exports = ImportPlugin;
@@ -0,0 +1,34 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const ModuleDependency = require("./ModuleDependency");
7
+
8
+ class ImportWeakDependency extends ModuleDependency {
9
+ constructor(request, originModule, range) {
10
+ super(request);
11
+ this.originModule = originModule;
12
+ this.range = range;
13
+ this.weak = true;
14
+ }
15
+
16
+ get type() {
17
+ return "import() weak";
18
+ }
19
+ }
20
+
21
+ ImportWeakDependency.Template = class ImportDependencyTemplate {
22
+ apply(dep, source, runtime) {
23
+ const content = runtime.moduleNamespacePromise({
24
+ module: dep.module,
25
+ request: dep.request,
26
+ strict: dep.originModule.buildMeta.strictHarmonyModule,
27
+ message: "import() weak",
28
+ weak: true
29
+ });
30
+ source.replace(dep.range[0], dep.range[1] - 1, content);
31
+ }
32
+ };
33
+
34
+ module.exports = ImportWeakDependency;
@@ -0,0 +1,26 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const NullDependency = require("./NullDependency");
7
+
8
+ class JsonExportsDependency extends NullDependency {
9
+ constructor(exports) {
10
+ super();
11
+ this.exports = exports;
12
+ }
13
+
14
+ get type() {
15
+ return "json exports";
16
+ }
17
+
18
+ getExports() {
19
+ return {
20
+ exports: this.exports,
21
+ dependencies: undefined
22
+ };
23
+ }
24
+ }
25
+
26
+ module.exports = JsonExportsDependency;
@@ -0,0 +1,21 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const ModuleDependency = require("./ModuleDependency");
7
+
8
+ class LoaderDependency extends ModuleDependency {
9
+ /**
10
+ * @param {string} request request string
11
+ */
12
+ constructor(request) {
13
+ super(request);
14
+ }
15
+
16
+ get type() {
17
+ return "loader";
18
+ }
19
+ }
20
+
21
+ module.exports = LoaderDependency;