@rspack/core 0.0.21 → 0.0.23

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 (260) hide show
  1. package/LICENSE +2 -1
  2. package/dist/ErrorHelpers.d.ts +8 -0
  3. package/dist/ErrorHelpers.d.ts.map +1 -0
  4. package/dist/ErrorHelpers.js +54 -0
  5. package/dist/ErrorHelpers.js.map +1 -0
  6. package/dist/ResolverFactory.d.ts +1 -1
  7. package/dist/ResolverFactory.d.ts.map +1 -1
  8. package/dist/ResolverFactory.js +9 -4
  9. package/dist/ResolverFactory.js.map +1 -1
  10. package/dist/a.js +30 -0
  11. package/dist/b.js +28 -0
  12. package/dist/bundle.js +1 -0
  13. package/dist/compilation.d.ts +91 -8
  14. package/dist/compilation.d.ts.map +1 -1
  15. package/dist/compilation.js +268 -8
  16. package/dist/compilation.js.map +1 -1
  17. package/dist/compiler.d.ts +26 -13
  18. package/dist/compiler.d.ts.map +1 -1
  19. package/dist/compiler.js +106 -97
  20. package/dist/compiler.js.map +1 -1
  21. package/dist/config/adapter-rule-use.d.ts +75 -0
  22. package/dist/config/adapter-rule-use.d.ts.map +1 -0
  23. package/dist/config/adapter-rule-use.js +463 -0
  24. package/dist/config/adapter-rule-use.js.map +1 -0
  25. package/dist/config/adapter.d.ts +5 -0
  26. package/dist/config/adapter.d.ts.map +1 -0
  27. package/dist/config/adapter.js +235 -0
  28. package/dist/config/adapter.js.map +1 -0
  29. package/dist/config/browserslistTargetHandler.d.ts.map +1 -1
  30. package/dist/config/browserslistTargetHandler.js +9 -4
  31. package/dist/config/browserslistTargetHandler.js.map +1 -1
  32. package/dist/config/builtins.d.ts +40 -10
  33. package/dist/config/builtins.d.ts.map +1 -1
  34. package/dist/config/builtins.js +109 -41
  35. package/dist/config/builtins.js.map +1 -1
  36. package/dist/config/cache.d.ts.map +1 -1
  37. package/dist/config/cache.js +1 -0
  38. package/dist/config/cache.js.map +1 -1
  39. package/dist/config/defaults.d.ts +12 -3
  40. package/dist/config/defaults.d.ts.map +1 -1
  41. package/dist/config/defaults.js +281 -113
  42. package/dist/config/defaults.js.map +1 -1
  43. package/dist/config/devServer.d.ts +2 -30
  44. package/dist/config/devServer.d.ts.map +1 -1
  45. package/dist/config/entry.d.ts +2 -1
  46. package/dist/config/entry.d.ts.map +1 -1
  47. package/dist/config/entry.js +24 -10
  48. package/dist/config/entry.js.map +1 -1
  49. package/dist/config/experiments.d.ts.map +1 -1
  50. package/dist/config/experiments.js +3 -2
  51. package/dist/config/experiments.js.map +1 -1
  52. package/dist/config/index.d.ts +3 -71
  53. package/dist/config/index.d.ts.map +1 -1
  54. package/dist/config/index.js +17 -75
  55. package/dist/config/index.js.map +1 -1
  56. package/dist/config/mode.d.ts +2 -2
  57. package/dist/config/mode.d.ts.map +1 -1
  58. package/dist/config/module.d.ts +19 -22
  59. package/dist/config/module.d.ts.map +1 -1
  60. package/dist/config/module.js +104 -61
  61. package/dist/config/module.js.map +1 -1
  62. package/dist/config/normalization.d.ts +12 -0
  63. package/dist/config/normalization.d.ts.map +1 -0
  64. package/dist/config/normalization.js +181 -0
  65. package/dist/config/normalization.js.map +1 -0
  66. package/dist/config/optimization.d.ts +25 -0
  67. package/dist/config/optimization.d.ts.map +1 -1
  68. package/dist/config/optimization.js +45 -4
  69. package/dist/config/optimization.js.map +1 -1
  70. package/dist/config/plugin.d.ts +1 -1
  71. package/dist/config/plugin.d.ts.map +1 -1
  72. package/dist/config/resolve.d.ts +7 -3
  73. package/dist/config/resolve.d.ts.map +1 -1
  74. package/dist/config/resolve.js +16 -2
  75. package/dist/config/resolve.js.map +1 -1
  76. package/dist/config/snapshot.d.ts +0 -2
  77. package/dist/config/snapshot.d.ts.map +1 -1
  78. package/dist/config/snapshot.js +1 -6
  79. package/dist/config/snapshot.js.map +1 -1
  80. package/dist/config/splitChunks.d.ts +112 -0
  81. package/dist/config/splitChunks.d.ts.map +1 -0
  82. package/dist/config/splitChunks.js +41 -0
  83. package/dist/config/splitChunks.js.map +1 -0
  84. package/dist/config/stats.d.ts +3 -0
  85. package/dist/config/stats.d.ts.map +1 -1
  86. package/dist/config/stats.js +1 -0
  87. package/dist/config/stats.js.map +1 -1
  88. package/dist/config/target.d.ts +138 -6
  89. package/dist/config/target.d.ts.map +1 -1
  90. package/dist/config/target.js +314 -15
  91. package/dist/config/target.js.map +1 -1
  92. package/dist/config/types.d.ts +311 -0
  93. package/dist/config/types.d.ts.map +1 -0
  94. package/dist/config/types.js +12 -0
  95. package/dist/config/types.js.map +1 -0
  96. package/dist/config/watch.d.ts +3 -7
  97. package/dist/config/watch.d.ts.map +1 -1
  98. package/dist/config/watch.js +0 -13
  99. package/dist/config/watch.js.map +1 -1
  100. package/dist/dd.js +1 -0
  101. package/dist/e1.js +11 -0
  102. package/dist/e1~runtime.js +56 -0
  103. package/dist/e2.js +11 -0
  104. package/dist/e2~runtime.js +56 -0
  105. package/dist/error/ConcurrentCompilationError.d.ts +15 -0
  106. package/dist/error/ConcurrentCompilationError.d.ts.map +1 -0
  107. package/dist/error/ConcurrentCompilationError.js +21 -0
  108. package/dist/error/ConcurrentCompilationError.js.map +1 -0
  109. package/dist/fileSystem.d.ts +8 -0
  110. package/dist/fileSystem.d.ts.map +1 -0
  111. package/dist/fileSystem.js +14 -0
  112. package/dist/fileSystem.js.map +1 -0
  113. package/dist/index.d.ts +1 -0
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +1 -0
  116. package/dist/index.js.map +1 -1
  117. package/dist/logging/Logger.d.ts +22 -6
  118. package/dist/logging/Logger.d.ts.map +1 -1
  119. package/dist/logging/Logger.js +9 -10
  120. package/dist/logging/Logger.js.map +1 -1
  121. package/dist/logging/createConsoleLogger.d.ts +9 -0
  122. package/dist/logging/createConsoleLogger.d.ts.map +1 -1
  123. package/dist/logging/createConsoleLogger.js +9 -4
  124. package/dist/logging/createConsoleLogger.js.map +1 -1
  125. package/dist/logging/runtime.d.ts +9 -0
  126. package/dist/logging/runtime.d.ts.map +1 -1
  127. package/dist/logging/runtime.js +17 -6
  128. package/dist/logging/runtime.js.map +1 -1
  129. package/dist/logging/truncateArgs.d.ts +9 -0
  130. package/dist/logging/truncateArgs.d.ts.map +1 -1
  131. package/dist/logging/truncateArgs.js +15 -5
  132. package/dist/logging/truncateArgs.js.map +1 -1
  133. package/dist/main.js +28 -0
  134. package/dist/multiCompiler.d.ts +95 -0
  135. package/dist/multiCompiler.d.ts.map +1 -0
  136. package/dist/multiCompiler.js +455 -0
  137. package/dist/multiCompiler.js.map +1 -0
  138. package/dist/multiStats.d.ts +27 -0
  139. package/dist/multiStats.d.ts.map +1 -0
  140. package/dist/multiStats.js +133 -0
  141. package/dist/multiStats.js.map +1 -0
  142. package/dist/multiWatching.d.ts +36 -0
  143. package/dist/multiWatching.d.ts.map +1 -0
  144. package/dist/multiWatching.js +62 -0
  145. package/dist/multiWatching.js.map +1 -0
  146. package/dist/node/NodeEnvironmentPlugin.d.ts +8 -24
  147. package/dist/node/NodeEnvironmentPlugin.d.ts.map +1 -1
  148. package/dist/node/NodeEnvironmentPlugin.js +26 -29
  149. package/dist/node/NodeEnvironmentPlugin.js.map +1 -1
  150. package/dist/node/NodeTargetPlugin.d.ts +9 -0
  151. package/dist/node/NodeTargetPlugin.d.ts.map +1 -1
  152. package/dist/node/NodeTargetPlugin.js +13 -1
  153. package/dist/node/NodeTargetPlugin.js.map +1 -1
  154. package/dist/node/NodeWatchFileSystem.d.ts +19 -0
  155. package/dist/node/NodeWatchFileSystem.d.ts.map +1 -0
  156. package/dist/node/NodeWatchFileSystem.js +148 -0
  157. package/dist/node/NodeWatchFileSystem.js.map +1 -0
  158. package/dist/node/nodeConsole.d.ts +10 -1
  159. package/dist/node/nodeConsole.d.ts.map +1 -1
  160. package/dist/node/nodeConsole.js +42 -25
  161. package/dist/node/nodeConsole.js.map +1 -1
  162. package/dist/rspack.d.ts +7 -3
  163. package/dist/rspack.d.ts.map +1 -1
  164. package/dist/rspack.js +36 -6
  165. package/dist/rspack.js.map +1 -1
  166. package/dist/rspackOptionsApply.d.ts.map +1 -1
  167. package/dist/rspackOptionsApply.js +32 -8
  168. package/dist/rspackOptionsApply.js.map +1 -1
  169. package/dist/runtime.js +56 -0
  170. package/dist/runtime~e1.js +56 -0
  171. package/dist/runtime~e2.js +56 -0
  172. package/dist/stats.d.ts +18 -12
  173. package/dist/stats.d.ts.map +1 -1
  174. package/dist/stats.js +56 -51
  175. package/dist/stats.js.map +1 -1
  176. package/dist/util/ArrayQueue.d.ts +54 -0
  177. package/dist/util/ArrayQueue.d.ts.map +1 -0
  178. package/dist/util/ArrayQueue.js +109 -0
  179. package/dist/util/ArrayQueue.js.map +1 -0
  180. package/dist/util/cleverMerge.d.ts.map +1 -1
  181. package/dist/util/cleverMerge.js +9 -4
  182. package/dist/util/cleverMerge.js.map +1 -1
  183. package/dist/util/createHash.d.ts +9 -0
  184. package/dist/util/createHash.d.ts.map +1 -1
  185. package/dist/util/createHash.js +9 -4
  186. package/dist/util/createHash.js.map +1 -1
  187. package/dist/util/createSource.d.ts.map +1 -1
  188. package/dist/util/createSource.js +19 -4
  189. package/dist/util/createSource.js.map +1 -1
  190. package/dist/util/fake.d.ts +30 -0
  191. package/dist/util/fake.d.ts.map +1 -0
  192. package/dist/util/fake.js +72 -0
  193. package/dist/util/fake.js.map +1 -0
  194. package/dist/util/fs.d.ts +24 -0
  195. package/dist/util/fs.d.ts.map +1 -0
  196. package/dist/util/fs.js +3 -0
  197. package/dist/util/fs.js.map +1 -0
  198. package/dist/util/hash/BatchedHash.d.ts +2 -2
  199. package/dist/util/hash/BatchedHash.d.ts.map +1 -1
  200. package/dist/util/hash/BatchedHash.js +9 -4
  201. package/dist/util/hash/BatchedHash.js.map +1 -1
  202. package/dist/util/hash/md4.d.ts +1 -1
  203. package/dist/util/hash/md4.js +9 -4
  204. package/dist/util/hash/md4.js.map +1 -1
  205. package/dist/util/hash/wasm-hash.d.ts.map +1 -1
  206. package/dist/util/hash/wasm-hash.js +9 -4
  207. package/dist/util/hash/wasm-hash.js.map +1 -1
  208. package/dist/util/hash/xxhash64.d.ts +1 -1
  209. package/dist/util/hash/xxhash64.js +9 -4
  210. package/dist/util/hash/xxhash64.js.map +1 -1
  211. package/dist/util/identifier.d.ts +8 -8
  212. package/dist/util/identifier.d.ts.map +1 -1
  213. package/dist/util/index.d.ts +2 -0
  214. package/dist/util/index.d.ts.map +1 -1
  215. package/dist/util/index.js +10 -1
  216. package/dist/util/index.js.map +1 -1
  217. package/dist/util/memoize.d.ts.map +1 -1
  218. package/dist/util/memoize.js +3 -0
  219. package/dist/util/memoize.js.map +1 -1
  220. package/dist/watching.d.ts +32 -0
  221. package/dist/watching.d.ts.map +1 -0
  222. package/dist/watching.js +278 -0
  223. package/dist/watching.js.map +1 -0
  224. package/package.json +20 -13
  225. package/dist/utils/createHash.d.ts +0 -7
  226. package/dist/utils/createHash.d.ts.map +0 -1
  227. package/dist/utils/createHash.js +0 -166
  228. package/dist/utils/createHash.js.map +0 -1
  229. package/dist/utils/createSource.d.ts +0 -6
  230. package/dist/utils/createSource.d.ts.map +0 -1
  231. package/dist/utils/createSource.js +0 -48
  232. package/dist/utils/createSource.js.map +0 -1
  233. package/dist/utils/hash/BatchedHash.d.ts +0 -16
  234. package/dist/utils/hash/BatchedHash.d.ts.map +0 -1
  235. package/dist/utils/hash/BatchedHash.js +0 -61
  236. package/dist/utils/hash/BatchedHash.js.map +0 -1
  237. package/dist/utils/hash/index.d.ts +0 -19
  238. package/dist/utils/hash/index.d.ts.map +0 -1
  239. package/dist/utils/hash/index.js +0 -28
  240. package/dist/utils/hash/index.js.map +0 -1
  241. package/dist/utils/hash/md4.d.ts +0 -3
  242. package/dist/utils/hash/md4.d.ts.map +0 -1
  243. package/dist/utils/hash/md4.js +0 -13
  244. package/dist/utils/hash/md4.js.map +0 -1
  245. package/dist/utils/hash/wasm-hash.d.ts +0 -7
  246. package/dist/utils/hash/wasm-hash.d.ts.map +0 -1
  247. package/dist/utils/hash/wasm-hash.js +0 -162
  248. package/dist/utils/hash/wasm-hash.js.map +0 -1
  249. package/dist/utils/hash/xxhash64.d.ts +0 -3
  250. package/dist/utils/hash/xxhash64.d.ts.map +0 -1
  251. package/dist/utils/hash/xxhash64.js +0 -13
  252. package/dist/utils/hash/xxhash64.js.map +0 -1
  253. package/dist/utils/index.d.ts +0 -6
  254. package/dist/utils/index.d.ts.map +0 -1
  255. package/dist/utils/index.js +0 -18
  256. package/dist/utils/index.js.map +0 -1
  257. package/dist/utils/memoize.d.ts +0 -2
  258. package/dist/utils/memoize.d.ts.map +0 -1
  259. package/dist/utils/memoize.js +0 -22
  260. package/dist/utils/memoize.js.map +0 -1
@@ -0,0 +1,36 @@
1
+ /**
2
+ * The following code is modified based on
3
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/MultiWatching.js
4
+ *
5
+ * MIT Licensed
6
+ * Author Tobias Koppers @sokra
7
+ * Copyright (c) JS Foundation and other contributors
8
+ * https://github.com/webpack/webpack/blob/main/LICENSE
9
+ */
10
+ import { MultiCompiler } from "./multiCompiler";
11
+ import Watching from "./watching";
12
+ /** @typedef {import("./multiCompiler")} MultiCompiler */
13
+ /** @typedef {import("./watching")} Watching */
14
+ /**
15
+ * @template T
16
+ * @callback Callback
17
+ * @param {(Error | null)=} err
18
+ * @param {T=} result
19
+ */
20
+ declare class MultiWatching {
21
+ watchings: Watching[];
22
+ compiler: MultiCompiler;
23
+ /**
24
+ * @param {Watching[]} watchings child compilers' watchers
25
+ * @param {MultiCompiler} compiler the compiler
26
+ */
27
+ constructor(watchings: Watching[], compiler: MultiCompiler);
28
+ invalidate(callback: any): void;
29
+ /**
30
+ * @param {Callback<void>} callback signals when the watcher is closed
31
+ * @returns {void}
32
+ */
33
+ close(callback: any): void;
34
+ }
35
+ export default MultiWatching;
36
+ //# sourceMappingURL=multiWatching.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiWatching.d.ts","sourceRoot":"","sources":["../src/multiWatching.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,QAAQ,MAAM,YAAY,CAAC;AAIlC,yDAAyD;AACzD,+CAA+C;AAE/C;;;;;GAKG;AAEH,cAAM,aAAa;IAClB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IAExB;;;OAGG;gBACS,SAAS,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,aAAa;IAK1D,UAAU,CAAC,QAAQ,KAAA;IAcnB;;;OAGG;IAEH,KAAK,CAAC,QAAQ,KAAA;CAed;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ /**
3
+ * The following code is modified based on
4
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/MultiWatching.js
5
+ *
6
+ * MIT Licensed
7
+ * Author Tobias Koppers @sokra
8
+ * Copyright (c) JS Foundation and other contributors
9
+ * https://github.com/webpack/webpack/blob/main/LICENSE
10
+ */
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const neo_async_1 = __importDefault(require("neo-async"));
16
+ /** @typedef {import("./multiCompiler")} MultiCompiler */
17
+ /** @typedef {import("./watching")} Watching */
18
+ /**
19
+ * @template T
20
+ * @callback Callback
21
+ * @param {(Error | null)=} err
22
+ * @param {T=} result
23
+ */
24
+ class MultiWatching {
25
+ /**
26
+ * @param {Watching[]} watchings child compilers' watchers
27
+ * @param {MultiCompiler} compiler the compiler
28
+ */
29
+ constructor(watchings, compiler) {
30
+ this.watchings = watchings;
31
+ this.compiler = compiler;
32
+ }
33
+ // @ts-expect-error
34
+ invalidate(callback) {
35
+ if (callback) {
36
+ neo_async_1.default.each(this.watchings, (watching, callback) => watching.invalidate(callback), callback);
37
+ }
38
+ else {
39
+ for (const watching of this.watchings) {
40
+ watching.invalidate();
41
+ }
42
+ }
43
+ }
44
+ /**
45
+ * @param {Callback<void>} callback signals when the watcher is closed
46
+ * @returns {void}
47
+ */
48
+ // @ts-expect-error
49
+ close(callback) {
50
+ neo_async_1.default.forEach(this.watchings, (watching, finishedCallback) => {
51
+ watching.close(finishedCallback);
52
+ }, err => {
53
+ this.compiler.hooks.watchClose.call();
54
+ if (typeof callback === "function") {
55
+ this.compiler.running = false;
56
+ callback(err);
57
+ }
58
+ });
59
+ }
60
+ }
61
+ exports.default = MultiWatching;
62
+ //# sourceMappingURL=multiWatching.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiWatching.js","sourceRoot":"","sources":["../src/multiWatching.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;AAIH,0DAAiC;AAGjC,yDAAyD;AACzD,+CAA+C;AAE/C;;;;;GAKG;AAEH,MAAM,aAAa;IAIlB;;;OAGG;IACH,YAAY,SAAqB,EAAE,QAAuB;QACzD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IACD,mBAAmB;IACnB,UAAU,CAAC,QAAQ;QAClB,IAAI,QAAQ,EAAE;YACb,mBAAQ,CAAC,IAAI,CACZ,IAAI,CAAC,SAAS,EACd,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EACrD,QAAQ,CACR,CAAC;SACF;aAAM;YACN,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;gBACtC,QAAQ,CAAC,UAAU,EAAE,CAAC;aACtB;SACD;IACF,CAAC;IAED;;;OAGG;IACH,mBAAmB;IACnB,KAAK,CAAC,QAAQ;QACb,mBAAQ,CAAC,OAAO,CACf,IAAI,CAAC,SAAS,EACd,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE;YAC9B,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAClC,CAAC,EACD,GAAG,CAAC,EAAE;YACL,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;gBACnC,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC;aACd;QACF,CAAC,CACD,CAAC;IACH,CAAC;CACD;AAED,kBAAe,aAAa,CAAC"}
@@ -1,27 +1,11 @@
1
- export = NodeEnvironmentPlugin;
2
- /** @typedef {import("../../declarations/WebpackOptions").InfrastructureLogging} InfrastructureLogging */
3
- /** @typedef {import("../compiler").Compiler} Compiler */
4
- declare class NodeEnvironmentPlugin {
5
- /**
6
- * @param {Object} options options
7
- * @param {InfrastructureLogging} options.infrastructureLogging infrastructure logging options
8
- */
9
- constructor(options: {
10
- infrastructureLogging: InfrastructureLogging;
11
- });
12
- options: {
13
- infrastructureLogging: any;
14
- };
15
- /**
16
- * Apply the plugin
17
- * @param {Compiler} compiler the compiler instance
18
- * @returns {void}
19
- */
20
- apply(compiler: Compiler): void;
1
+ import type { InfrastructureLogging } from "../config";
2
+ import type { Compiler } from "..";
3
+ export interface NodeEnvironmentPluginOptions {
4
+ infrastructureLogging: InfrastructureLogging;
21
5
  }
22
- declare namespace NodeEnvironmentPlugin {
23
- export { InfrastructureLogging, Compiler };
6
+ export default class NodeEnvironmentPlugin {
7
+ options: NodeEnvironmentPluginOptions;
8
+ constructor(options: NodeEnvironmentPluginOptions);
9
+ apply(compiler: Compiler): void;
24
10
  }
25
- type Compiler = import("../compiler").Compiler;
26
- type InfrastructureLogging = any;
27
11
  //# sourceMappingURL=NodeEnvironmentPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodeEnvironmentPlugin.d.ts","sourceRoot":"","sources":["../../src/node/NodeEnvironmentPlugin.js"],"names":[],"mappings":";AAaA,yGAAyG;AACzG,yDAAyD;AAEzD;IACC;;;OAGG;IACH;QAF0C,qBAAqB,EAApD,qBAAqB;OAI/B;IADA;;MAAsB;IAGvB;;;;OAIG;IACH,gBAHW,QAAQ,GACN,IAAI,CA4BhB;CACD;;;;gBA3Ca,OAAO,aAAa,EAAE,QAAQ"}
1
+ {"version":3,"file":"NodeEnvironmentPlugin.d.ts","sourceRoot":"","sources":["../../src/node/NodeEnvironmentPlugin.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAEnC,MAAM,WAAW,4BAA4B;IAC5C,qBAAqB,EAAE,qBAAqB,CAAC;CAC7C;AAED,MAAM,CAAC,OAAO,OAAO,qBAAqB;IACzC,OAAO,EAAE,4BAA4B,CAAC;gBAE1B,OAAO,EAAE,4BAA4B;IAIjD,KAAK,CAAC,QAAQ,EAAE,QAAQ;CA2BxB"}
@@ -1,47 +1,44 @@
1
- /*
2
- MIT License http://www.opensource.org/licenses/mit-license.php
3
- Author Tobias Koppers @sokra
4
- */
5
1
  "use strict";
6
- const CachedInputFileSystem = require("enhanced-resolve/lib/CachedInputFileSystem");
7
- const fs = require("graceful-fs");
8
- const createConsoleLogger = require("../logging/createConsoleLogger");
9
- // const NodeWatchFileSystem = require("./NodeWatchFileSystem");
10
- const nodeConsole = require("./nodeConsole");
11
- /** @typedef {import("../../declarations/WebpackOptions").InfrastructureLogging} InfrastructureLogging */
12
- /** @typedef {import("../compiler").Compiler} Compiler */
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /**
7
+ * The following code is modified based on
8
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/node/NodeEnvironmentPlugin.js
9
+ *
10
+ * MIT Licensed
11
+ * Author Tobias Koppers @sokra
12
+ * Copyright (c) JS Foundation and other contributors
13
+ * https://github.com/webpack/webpack/blob/main/LICENSE
14
+ */
15
+ // @ts-expect-error
16
+ const CachedInputFileSystem_1 = __importDefault(require("enhanced-resolve/lib/CachedInputFileSystem"));
17
+ const graceful_fs_1 = __importDefault(require("graceful-fs"));
18
+ const createConsoleLogger_1 = __importDefault(require("../logging/createConsoleLogger"));
19
+ const NodeWatchFileSystem_1 = __importDefault(require("./NodeWatchFileSystem"));
20
+ const nodeConsole_1 = __importDefault(require("./nodeConsole"));
13
21
  class NodeEnvironmentPlugin {
14
- /**
15
- * @param {Object} options options
16
- * @param {InfrastructureLogging} options.infrastructureLogging infrastructure logging options
17
- */
18
22
  constructor(options) {
19
23
  this.options = options;
20
24
  }
21
- /**
22
- * Apply the plugin
23
- * @param {Compiler} compiler the compiler instance
24
- * @returns {void}
25
- */
26
25
  apply(compiler) {
27
26
  const { infrastructureLogging } = this.options;
28
- compiler.infrastructureLogger = createConsoleLogger({
27
+ compiler.infrastructureLogger = (0, createConsoleLogger_1.default)({
29
28
  level: infrastructureLogging.level || "info",
30
29
  debug: infrastructureLogging.debug || false,
31
30
  console: infrastructureLogging.console ||
32
- nodeConsole({
31
+ (0, nodeConsole_1.default)({
33
32
  colors: infrastructureLogging.colors,
34
33
  appendOnly: infrastructureLogging.appendOnly,
35
34
  stream: infrastructureLogging.stream
36
35
  })
37
36
  });
38
- compiler.inputFileSystem = new CachedInputFileSystem(fs, 60000);
37
+ compiler.inputFileSystem = new CachedInputFileSystem_1.default(graceful_fs_1.default, 60000);
39
38
  const inputFileSystem = compiler.inputFileSystem;
40
- compiler.outputFileSystem = fs;
41
- // compiler.intermediateFileSystem = fs;
42
- // compiler.watchFileSystem = new NodeWatchFileSystem(
43
- // compiler.inputFileSystem
44
- // );
39
+ compiler.outputFileSystem = graceful_fs_1.default;
40
+ compiler.intermediateFileSystem = graceful_fs_1.default;
41
+ compiler.watchFileSystem = new NodeWatchFileSystem_1.default(compiler.inputFileSystem);
45
42
  compiler.hooks.beforeRun.tap("NodeEnvironmentPlugin", compiler => {
46
43
  if (compiler.inputFileSystem === inputFileSystem) {
47
44
  compiler.fsStartTime = Date.now();
@@ -50,5 +47,5 @@ class NodeEnvironmentPlugin {
50
47
  });
51
48
  }
52
49
  }
53
- module.exports = NodeEnvironmentPlugin;
50
+ exports.default = NodeEnvironmentPlugin;
54
51
  //# sourceMappingURL=NodeEnvironmentPlugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodeEnvironmentPlugin.js","sourceRoot":"","sources":["../../src/node/NodeEnvironmentPlugin.js"],"names":[],"mappings":"AAAA;;;EAGE;AAEF,YAAY,CAAC;AAEb,MAAM,qBAAqB,GAAG,OAAO,CAAC,4CAA4C,CAAC,CAAC;AACpF,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAClC,MAAM,mBAAmB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAC;AACtE,gEAAgE;AAChE,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAE7C,yGAAyG;AACzG,yDAAyD;AAEzD,MAAM,qBAAqB;IAC1B;;;OAGG;IACH,YAAY,OAAO;QAClB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ;QACb,MAAM,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/C,QAAQ,CAAC,oBAAoB,GAAG,mBAAmB,CAAC;YACnD,KAAK,EAAE,qBAAqB,CAAC,KAAK,IAAI,MAAM;YAC5C,KAAK,EAAE,qBAAqB,CAAC,KAAK,IAAI,KAAK;YAC3C,OAAO,EACN,qBAAqB,CAAC,OAAO;gBAC7B,WAAW,CAAC;oBACX,MAAM,EAAE,qBAAqB,CAAC,MAAM;oBACpC,UAAU,EAAE,qBAAqB,CAAC,UAAU;oBAC5C,MAAM,EAAE,qBAAqB,CAAC,MAAM;iBACpC,CAAC;SACH,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,GAAG,IAAI,qBAAqB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;QACjD,QAAQ,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC/B,wCAAwC;QACxC,sDAAsD;QACtD,4BAA4B;QAC5B,KAAK;QACL,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,EAAE,QAAQ,CAAC,EAAE;YAChE,IAAI,QAAQ,CAAC,eAAe,KAAK,eAAe,EAAE;gBACjD,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAClC,eAAe,CAAC,KAAK,EAAE,CAAC;aACxB;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD;AAED,MAAM,CAAC,OAAO,GAAG,qBAAqB,CAAC"}
1
+ {"version":3,"file":"NodeEnvironmentPlugin.js","sourceRoot":"","sources":["../../src/node/NodeEnvironmentPlugin.ts"],"names":[],"mappings":";;;;;AAAA;;;;;;;;GAQG;AACH,mBAAmB;AACnB,uGAA+E;AAC/E,8DAA6B;AAC7B,yFAAiE;AACjE,gFAAwD;AACxD,gEAAwC;AAQxC,MAAqB,qBAAqB;IAGzC,YAAY,OAAqC;QAChD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,QAAkB;QACvB,MAAM,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/C,QAAQ,CAAC,oBAAoB,GAAG,IAAA,6BAAmB,EAAC;YACnD,KAAK,EAAE,qBAAqB,CAAC,KAAK,IAAI,MAAM;YAC5C,KAAK,EAAE,qBAAqB,CAAC,KAAK,IAAI,KAAK;YAC3C,OAAO,EACN,qBAAqB,CAAC,OAAO;gBAC7B,IAAA,qBAAW,EAAC;oBACX,MAAM,EAAE,qBAAqB,CAAC,MAAM;oBACpC,UAAU,EAAE,qBAAqB,CAAC,UAAU;oBAC5C,MAAM,EAAE,qBAAqB,CAAC,MAAM;iBACpC,CAAC;SACH,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,GAAG,IAAI,+BAAqB,CAAC,qBAAE,EAAE,KAAK,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;QACjD,QAAQ,CAAC,gBAAgB,GAAG,qBAAE,CAAC;QAC/B,QAAQ,CAAC,sBAAsB,GAAG,qBAAE,CAAC;QACrC,QAAQ,CAAC,eAAe,GAAG,IAAI,6BAAmB,CACjD,QAAQ,CAAC,eAAe,CACxB,CAAC;QACF,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,EAAE,QAAQ,CAAC,EAAE;YAChE,IAAI,QAAQ,CAAC,eAAe,KAAK,eAAe,EAAE;gBAChD,QAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC3C,eAAe,CAAC,KAAK,EAAE,CAAC;aACxB;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD;AAlCD,wCAkCC"}
@@ -1,3 +1,12 @@
1
+ /**
2
+ * The following code is modified based on
3
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/node/NodeTargetPlugin.js
4
+ *
5
+ * MIT Licensed
6
+ * Author Tobias Koppers @sokra
7
+ * Copyright (c) JS Foundation and other contributors
8
+ * https://github.com/webpack/webpack/blob/main/LICENSE
9
+ */
1
10
  import { Compiler } from "../compiler";
2
11
  export declare class NodeTargetPlugin {
3
12
  apply(compiler: Compiler): void;
@@ -1 +1 @@
1
- {"version":3,"file":"NodeTargetPlugin.d.ts","sourceRoot":"","sources":["../../src/node/NodeTargetPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA4DvC,qBAAa,gBAAgB;IAC5B,KAAK,CAAC,QAAQ,EAAE,QAAQ;CAOxB"}
1
+ {"version":3,"file":"NodeTargetPlugin.d.ts","sourceRoot":"","sources":["../../src/node/NodeTargetPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA4DvC,qBAAa,gBAAgB;IAC5B,KAAK,CAAC,QAAQ,EAAE,QAAQ;CAWxB"}
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ /**
3
+ * The following code is modified based on
4
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/node/NodeTargetPlugin.js
5
+ *
6
+ * MIT Licensed
7
+ * Author Tobias Koppers @sokra
8
+ * Copyright (c) JS Foundation and other contributors
9
+ * https://github.com/webpack/webpack/blob/main/LICENSE
10
+ */
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.NodeTargetPlugin = void 0;
4
13
  const builtins = [
@@ -60,9 +69,12 @@ const builtins = [
60
69
  class NodeTargetPlugin {
61
70
  apply(compiler) {
62
71
  const externals = Object.fromEntries(builtins.map(x => [x, x]));
72
+ const original = typeof compiler.options.externals === "string"
73
+ ? { [compiler.options.externals]: compiler.options.externals }
74
+ : compiler.options.externals;
63
75
  compiler.options.externals = {
64
76
  ...externals,
65
- ...compiler.options.externals
77
+ ...original
66
78
  };
67
79
  }
68
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NodeTargetPlugin.js","sourceRoot":"","sources":["../../src/node/NodeTargetPlugin.ts"],"names":[],"mappings":";;;AAEA,MAAM,QAAQ,GAAG;IAChB,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,eAAe;IACf,SAAS;IACT,SAAS;IACT,WAAW;IACX,QAAQ;IACR,OAAO;IACP,qBAAqB;IACrB,KAAK;IACL,cAAc;IACd,QAAQ;IACR,QAAQ;IACR,IAAI;IACJ,aAAa;IACb,MAAM;IACN,OAAO;IACP,OAAO;IACP,WAAW;IACX,QAAQ;IACR,KAAK;IACL,IAAI;IACJ,MAAM;IACN,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,SAAS;IACT,UAAU;IACV,aAAa;IACb,UAAU;IACV,MAAM;IACN,QAAQ;IACR,iBAAiB;IACjB,YAAY;IACZ,gBAAgB;IAChB,KAAK;IACL,QAAQ;IACR,iBAAiB;IACjB,KAAK;IACL,cAAc;IACd,KAAK;IACL,KAAK;IACL,MAAM;IACN,YAAY;IACZ,IAAI;IACJ,IAAI;IACJ,MAAM;IACN,gBAAgB;IAChB,MAAM;IACN,YAAY;IAEZ,qBAAqB;IACrB,oCAAoC;IACpC,QAAQ;CACR,CAAC;AAEF,MAAa,gBAAgB;IAC5B,KAAK,CAAC,QAAkB;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,QAAQ,CAAC,OAAO,CAAC,SAAS,GAAG;YAC5B,GAAG,SAAS;YACZ,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS;SAC7B,CAAC;IACH,CAAC;CACD;AARD,4CAQC"}
1
+ {"version":3,"file":"NodeTargetPlugin.js","sourceRoot":"","sources":["../../src/node/NodeTargetPlugin.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIH,MAAM,QAAQ,GAAG;IAChB,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,eAAe;IACf,SAAS;IACT,SAAS;IACT,WAAW;IACX,QAAQ;IACR,OAAO;IACP,qBAAqB;IACrB,KAAK;IACL,cAAc;IACd,QAAQ;IACR,QAAQ;IACR,IAAI;IACJ,aAAa;IACb,MAAM;IACN,OAAO;IACP,OAAO;IACP,WAAW;IACX,QAAQ;IACR,KAAK;IACL,IAAI;IACJ,MAAM;IACN,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,SAAS;IACT,UAAU;IACV,aAAa;IACb,UAAU;IACV,MAAM;IACN,QAAQ;IACR,iBAAiB;IACjB,YAAY;IACZ,gBAAgB;IAChB,KAAK;IACL,QAAQ;IACR,iBAAiB;IACjB,KAAK;IACL,cAAc;IACd,KAAK;IACL,KAAK;IACL,MAAM;IACN,YAAY;IACZ,IAAI;IACJ,IAAI;IACJ,MAAM;IACN,gBAAgB;IAChB,MAAM;IACN,YAAY;IAEZ,qBAAqB;IACrB,oCAAoC;IACpC,QAAQ;CACR,CAAC;AAEF,MAAa,gBAAgB;IAC5B,KAAK,CAAC,QAAkB;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,MAAM,QAAQ,GACb,OAAO,QAAQ,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ;YAC7C,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE;YAC9D,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;QAC/B,QAAQ,CAAC,OAAO,CAAC,SAAS,GAAG;YAC5B,GAAG,SAAS;YACZ,GAAG,QAAQ;SACX,CAAC;IACH,CAAC;CACD;AAZD,4CAYC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * The following code is modified based on
3
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/node/NodeWatchFileSystem.js
4
+ *
5
+ * MIT Licensed
6
+ * Author Tobias Koppers @sokra
7
+ * Copyright (c) JS Foundation and other contributors
8
+ * https://github.com/webpack/webpack/blob/main/LICENSE
9
+ */
10
+ import Watchpack, { WatchOptions } from "watchpack";
11
+ import { FileSystemInfoEntry, Watcher, WatchFileSystem } from "../util/fs";
12
+ export default class NodeWatchFileSystem implements WatchFileSystem {
13
+ inputFileSystem: any;
14
+ watcherOptions: WatchOptions;
15
+ watcher: Watchpack;
16
+ constructor(inputFileSystem: any);
17
+ watch(files: Iterable<string>, directories: Iterable<string>, missing: Iterable<string>, startTime: number, options: WatchOptions, callback: (error: Error, fileTimeInfoEntries: Map<string, FileSystemInfoEntry | "ignore">, contextTimeInfoEntries: Map<string, FileSystemInfoEntry | "ignore">, changedFiles: Set<string>, removedFiles: Set<string>) => void, callbackUndelayed: (fileName: string, changeTime: number) => void): Watcher;
18
+ }
19
+ //# sourceMappingURL=NodeWatchFileSystem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeWatchFileSystem.d.ts","sourceRoot":"","sources":["../../src/node/NodeWatchFileSystem.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,SAAS,EAAE,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE3E,MAAM,CAAC,OAAO,OAAO,mBAAoB,YAAW,eAAe;IAClE,eAAe,EAAE,GAAG,CAAC;IACrB,cAAc,EAAE,YAAY,CAAC;IAC7B,OAAO,EAAE,SAAS,CAAC;gBAEP,eAAe,EAAE,GAAG;IAQhC,KAAK,CACJ,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,EAC7B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,CACT,KAAK,EAAE,KAAK,EACZ,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,GAAG,QAAQ,CAAC,EAChE,sBAAsB,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,GAAG,QAAQ,CAAC,EACnE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,KACrB,IAAI,EACT,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,GAC/D,OAAO;CAuJV"}
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ /**
3
+ * The following code is modified based on
4
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/node/NodeWatchFileSystem.js
5
+ *
6
+ * MIT Licensed
7
+ * Author Tobias Koppers @sokra
8
+ * Copyright (c) JS Foundation and other contributors
9
+ * https://github.com/webpack/webpack/blob/main/LICENSE
10
+ */
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const util_1 = __importDefault(require("util"));
16
+ const watchpack_1 = __importDefault(require("watchpack"));
17
+ class NodeWatchFileSystem {
18
+ constructor(inputFileSystem) {
19
+ this.inputFileSystem = inputFileSystem;
20
+ this.watcherOptions = {
21
+ aggregateTimeout: 0
22
+ };
23
+ this.watcher = new watchpack_1.default(this.watcherOptions);
24
+ }
25
+ watch(files, directories, missing, startTime, options, callback, callbackUndelayed) {
26
+ if (!files || typeof files[Symbol.iterator] !== "function") {
27
+ throw new Error("Invalid arguments: 'files'");
28
+ }
29
+ if (!directories || typeof directories[Symbol.iterator] !== "function") {
30
+ throw new Error("Invalid arguments: 'directories'");
31
+ }
32
+ if (!missing || typeof missing[Symbol.iterator] !== "function") {
33
+ throw new Error("Invalid arguments: 'missing'");
34
+ }
35
+ if (typeof callback !== "function") {
36
+ throw new Error("Invalid arguments: 'callback'");
37
+ }
38
+ if (typeof startTime !== "number" && startTime) {
39
+ throw new Error("Invalid arguments: 'startTime'");
40
+ }
41
+ if (typeof options !== "object") {
42
+ throw new Error("Invalid arguments: 'options'");
43
+ }
44
+ if (typeof callbackUndelayed !== "function" && callbackUndelayed) {
45
+ throw new Error("Invalid arguments: 'callbackUndelayed'");
46
+ }
47
+ const oldWatcher = this.watcher;
48
+ this.watcher = new watchpack_1.default(options);
49
+ if (callbackUndelayed) {
50
+ this.watcher.once("change", callbackUndelayed);
51
+ }
52
+ const fetchTimeInfo = () => {
53
+ const fileTimeInfoEntries = new Map();
54
+ const contextTimeInfoEntries = new Map();
55
+ if (this.watcher) {
56
+ this.watcher.collectTimeInfoEntries(fileTimeInfoEntries, contextTimeInfoEntries);
57
+ }
58
+ return { fileTimeInfoEntries, contextTimeInfoEntries };
59
+ };
60
+ this.watcher.once("aggregated", (changes, removals) => {
61
+ // pause emitting events (avoids clearing aggregated changes and removals on timeout)
62
+ this.watcher.pause();
63
+ if (this.inputFileSystem && this.inputFileSystem.purge) {
64
+ const fs = this.inputFileSystem;
65
+ for (const item of changes) {
66
+ fs.purge(item);
67
+ }
68
+ for (const item of removals) {
69
+ fs.purge(item);
70
+ }
71
+ }
72
+ const { fileTimeInfoEntries, contextTimeInfoEntries } = fetchTimeInfo();
73
+ callback(
74
+ // @ts-expect-error
75
+ null, fileTimeInfoEntries, contextTimeInfoEntries, changes, removals);
76
+ });
77
+ this.watcher.watch({ files, directories, missing, startTime });
78
+ if (oldWatcher) {
79
+ oldWatcher.close();
80
+ }
81
+ return {
82
+ close: () => {
83
+ if (this.watcher) {
84
+ this.watcher.close();
85
+ // @ts-expect-error
86
+ this.watcher = null;
87
+ }
88
+ },
89
+ pause: () => {
90
+ if (this.watcher) {
91
+ this.watcher.pause();
92
+ }
93
+ },
94
+ getAggregatedRemovals: util_1.default.deprecate(() => {
95
+ const items = this.watcher && this.watcher.aggregatedRemovals;
96
+ if (items && this.inputFileSystem && this.inputFileSystem.purge) {
97
+ const fs = this.inputFileSystem;
98
+ for (const item of items) {
99
+ fs.purge(item);
100
+ }
101
+ }
102
+ return items;
103
+ }, "Watcher.getAggregatedRemovals is deprecated in favor of Watcher.getInfo since that's more performant.", "DEP_WEBPACK_WATCHER_GET_AGGREGATED_REMOVALS"),
104
+ getAggregatedChanges: util_1.default.deprecate(() => {
105
+ const items = this.watcher && this.watcher.aggregatedChanges;
106
+ if (items && this.inputFileSystem && this.inputFileSystem.purge) {
107
+ const fs = this.inputFileSystem;
108
+ for (const item of items) {
109
+ fs.purge(item);
110
+ }
111
+ }
112
+ return items;
113
+ }, "Watcher.getAggregatedChanges is deprecated in favor of Watcher.getInfo since that's more performant.", "DEP_WEBPACK_WATCHER_GET_AGGREGATED_CHANGES"),
114
+ getFileTimeInfoEntries: util_1.default.deprecate(() => {
115
+ return fetchTimeInfo().fileTimeInfoEntries;
116
+ }, "Watcher.getFileTimeInfoEntries is deprecated in favor of Watcher.getInfo since that's more performant.", "DEP_WEBPACK_WATCHER_FILE_TIME_INFO_ENTRIES"),
117
+ getContextTimeInfoEntries: util_1.default.deprecate(() => {
118
+ return fetchTimeInfo().contextTimeInfoEntries;
119
+ }, "Watcher.getContextTimeInfoEntries is deprecated in favor of Watcher.getInfo since that's more performant.", "DEP_WEBPACK_WATCHER_CONTEXT_TIME_INFO_ENTRIES"),
120
+ getInfo: () => {
121
+ const removals = this.watcher && this.watcher.aggregatedRemovals;
122
+ const changes = this.watcher && this.watcher.aggregatedChanges;
123
+ if (this.inputFileSystem && this.inputFileSystem.purge) {
124
+ const fs = this.inputFileSystem;
125
+ if (removals) {
126
+ for (const item of removals) {
127
+ fs.purge(item);
128
+ }
129
+ }
130
+ if (changes) {
131
+ for (const item of changes) {
132
+ fs.purge(item);
133
+ }
134
+ }
135
+ }
136
+ const { fileTimeInfoEntries, contextTimeInfoEntries } = fetchTimeInfo();
137
+ return {
138
+ changes,
139
+ removals,
140
+ fileTimeInfoEntries,
141
+ contextTimeInfoEntries
142
+ };
143
+ }
144
+ };
145
+ }
146
+ }
147
+ exports.default = NodeWatchFileSystem;
148
+ //# sourceMappingURL=NodeWatchFileSystem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeWatchFileSystem.js","sourceRoot":"","sources":["../../src/node/NodeWatchFileSystem.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,12 @@
1
+ /**
2
+ * The following code is modified based on
3
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/node/nodeConsole.js
4
+ *
5
+ * MIT Licensed
6
+ * Author Tobias Koppers @sokra
7
+ * Copyright (c) JS Foundation and other contributors
8
+ * https://github.com/webpack/webpack/blob/main/LICENSE
9
+ */
1
10
  declare const _default: ({ colors, appendOnly, stream }: {
2
11
  colors: any;
3
12
  appendOnly: any;
@@ -15,7 +24,7 @@ declare const _default: ({ colors, appendOnly, stream }: {
15
24
  groupEnd: () => void;
16
25
  profile: (name: any) => void;
17
26
  profileEnd: (name: any) => void;
18
- clear: () => void;
27
+ clear: false | (() => void);
19
28
  status: (...args: any[]) => void;
20
29
  };
21
30
  export = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"nodeConsole.d.ts","sourceRoot":"","sources":["../../src/node/nodeConsole.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAQA,kBAoIE"}
1
+ {"version":3,"file":"nodeConsole.d.ts","sourceRoot":"","sources":["../../src/node/nodeConsole.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;AAKH,kBA8IE"}
@@ -1,15 +1,22 @@
1
1
  "use strict";
2
- /*
3
- MIT License http://www.opensource.org/licenses/mit-license.php
4
- Author Tobias Koppers @sokra
5
- */
2
+ /**
3
+ * The following code is modified based on
4
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/node/nodeConsole.js
5
+ *
6
+ * MIT Licensed
7
+ * Author Tobias Koppers @sokra
8
+ * Copyright (c) JS Foundation and other contributors
9
+ * https://github.com/webpack/webpack/blob/main/LICENSE
10
+ */
6
11
  const util = require("util");
7
12
  const truncateArgs = require("../logging/truncateArgs");
8
13
  module.exports = ({ colors, appendOnly, stream }) => {
14
+ // @ts-expect-error
9
15
  let currentStatusMessage = undefined;
10
16
  let hasStatusMessage = false;
11
17
  let currentIndent = "";
12
18
  let currentCollapsed = 0;
19
+ // @ts-expect-error
13
20
  const indent = (str, prefix, colorPrefix, colorSuffix) => {
14
21
  if (str === "")
15
22
  return str;
@@ -31,18 +38,23 @@ module.exports = ({ colors, appendOnly, stream }) => {
31
38
  }
32
39
  };
33
40
  const writeStatusMessage = () => {
41
+ // @ts-expect-error
34
42
  if (!currentStatusMessage)
35
43
  return;
36
44
  const l = stream.columns;
37
45
  const args = l
38
- ? truncateArgs(currentStatusMessage, l - 1)
39
- : currentStatusMessage;
46
+ ? // @ts-ignore
47
+ truncateArgs(currentStatusMessage, l - 1)
48
+ : // @ts-ignore
49
+ currentStatusMessage;
40
50
  const str = args.join(" ");
41
51
  const coloredStr = `\u001b[1m${str}\u001b[39m\u001b[22m`;
42
52
  stream.write(`\x1b[2K\r${coloredStr}`);
43
53
  hasStatusMessage = true;
44
54
  };
55
+ // @ts-expect-error
45
56
  const writeColored = (prefix, colorPrefix, colorSuffix) => {
57
+ // @ts-expect-error
46
58
  return (...args) => {
47
59
  if (currentCollapsed > 0)
48
60
  return;
@@ -62,6 +74,7 @@ module.exports = ({ colors, appendOnly, stream }) => {
62
74
  warn: writeColored("<w> ", "\u001b[1m\u001b[33m", "\u001b[39m\u001b[22m"),
63
75
  error: writeColored("<e> ", "\u001b[1m\u001b[31m", "\u001b[39m\u001b[22m"),
64
76
  logTime: writeColored("<t> ", "\u001b[1m\u001b[35m", "\u001b[39m\u001b[22m"),
77
+ // @ts-expect-error
65
78
  group: (...args) => {
66
79
  writeGroupMessage(...args);
67
80
  if (currentCollapsed > 0) {
@@ -71,6 +84,7 @@ module.exports = ({ colors, appendOnly, stream }) => {
71
84
  currentIndent += " ";
72
85
  }
73
86
  },
87
+ // @ts-expect-error
74
88
  groupCollapsed: (...args) => {
75
89
  writeGroupCollapsedMessage(...args);
76
90
  currentCollapsed++;
@@ -82,8 +96,10 @@ module.exports = ({ colors, appendOnly, stream }) => {
82
96
  currentIndent = currentIndent.slice(0, currentIndent.length - 2);
83
97
  },
84
98
  // eslint-disable-next-line node/no-unsupported-features/node-builtins
99
+ // @ts-expect-error
85
100
  profile: console.profile && (name => console.profile(name)),
86
101
  // eslint-disable-next-line node/no-unsupported-features/node-builtins
102
+ // @ts-expect-error
87
103
  profileEnd: console.profileEnd && (name => console.profileEnd(name)),
88
104
  clear: !appendOnly &&
89
105
  // eslint-disable-next-line node/no-unsupported-features/node-builtins
@@ -96,26 +112,27 @@ module.exports = ({ colors, appendOnly, stream }) => {
96
112
  }),
97
113
  status: appendOnly
98
114
  ? writeColored("<s> ", "", "")
99
- : (name, ...args) => {
100
- args = args.filter(Boolean);
101
- if (name === undefined && args.length === 0) {
102
- clearStatusMessage();
103
- currentStatusMessage = undefined;
115
+ : // @ts-expect-error
116
+ (name, ...args) => {
117
+ args = args.filter(Boolean);
118
+ if (name === undefined && args.length === 0) {
119
+ clearStatusMessage();
120
+ currentStatusMessage = undefined;
121
+ }
122
+ else if (typeof name === "string" &&
123
+ name.startsWith("[webpack.Progress] ")) {
124
+ currentStatusMessage = [name.slice(19), ...args];
125
+ writeStatusMessage();
126
+ }
127
+ else if (name === "[webpack.Progress]") {
128
+ currentStatusMessage = [...args];
129
+ writeStatusMessage();
130
+ }
131
+ else {
132
+ currentStatusMessage = [name, ...args];
133
+ writeStatusMessage();
134
+ }
104
135
  }
105
- else if (typeof name === "string" &&
106
- name.startsWith("[webpack.Progress] ")) {
107
- currentStatusMessage = [name.slice(19), ...args];
108
- writeStatusMessage();
109
- }
110
- else if (name === "[webpack.Progress]") {
111
- currentStatusMessage = [...args];
112
- writeStatusMessage();
113
- }
114
- else {
115
- currentStatusMessage = [name, ...args];
116
- writeStatusMessage();
117
- }
118
- }
119
136
  };
120
137
  };
121
138
  //# sourceMappingURL=nodeConsole.js.map