@plugjs/plug 0.0.14 → 0.0.15

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 (212) hide show
  1. package/dist/async.cjs +20 -19
  2. package/dist/async.cjs.map +1 -1
  3. package/dist/async.d.ts +9 -9
  4. package/dist/async.mjs +18 -17
  5. package/dist/async.mjs.map +1 -1
  6. package/dist/build.cjs +144 -110
  7. package/dist/build.cjs.map +2 -2
  8. package/dist/build.d.ts +12 -56
  9. package/dist/build.mjs +146 -112
  10. package/dist/build.mjs.map +2 -2
  11. package/dist/files.cjs +2 -16
  12. package/dist/files.cjs.map +1 -1
  13. package/dist/files.d.ts +3 -10
  14. package/dist/files.mjs +3 -17
  15. package/dist/files.mjs.map +1 -1
  16. package/dist/fork.cjs +28 -40
  17. package/dist/fork.cjs.map +1 -1
  18. package/dist/fork.d.ts +6 -27
  19. package/dist/fork.mjs +29 -40
  20. package/dist/fork.mjs.map +1 -1
  21. package/dist/helpers.cjs +61 -63
  22. package/dist/helpers.cjs.map +2 -2
  23. package/dist/helpers.d.ts +15 -37
  24. package/dist/helpers.mjs +61 -64
  25. package/dist/helpers.mjs.map +2 -2
  26. package/dist/index.cjs +3 -2
  27. package/dist/index.cjs.map +1 -1
  28. package/dist/index.d.ts +9 -13
  29. package/dist/index.mjs +3 -2
  30. package/dist/index.mjs.map +1 -1
  31. package/dist/log/colors.cjs +3 -1
  32. package/dist/log/colors.cjs.map +1 -1
  33. package/dist/log/colors.d.ts +2 -2
  34. package/dist/log/colors.mjs +3 -1
  35. package/dist/log/colors.mjs.map +1 -1
  36. package/dist/log/emit.d.ts +1 -1
  37. package/dist/log/logger.cjs +4 -0
  38. package/dist/log/logger.cjs.map +1 -1
  39. package/dist/log/logger.d.ts +4 -1
  40. package/dist/log/logger.mjs +4 -0
  41. package/dist/log/logger.mjs.map +1 -1
  42. package/dist/log/options.d.ts +1 -1
  43. package/dist/log/report.cjs +2 -11
  44. package/dist/log/report.cjs.map +1 -1
  45. package/dist/log/report.d.ts +36 -4
  46. package/dist/log/report.mjs +1 -10
  47. package/dist/log/report.mjs.map +1 -1
  48. package/dist/log.cjs +1 -1
  49. package/dist/log.cjs.map +1 -1
  50. package/dist/log.d.ts +6 -6
  51. package/dist/log.mjs +2 -2
  52. package/dist/log.mjs.map +1 -1
  53. package/dist/pipe.cjs +41 -34
  54. package/dist/pipe.cjs.map +1 -1
  55. package/dist/pipe.d.ts +149 -119
  56. package/dist/pipe.mjs +38 -32
  57. package/dist/pipe.mjs.map +1 -1
  58. package/dist/plugs/copy.cjs +15 -25
  59. package/dist/plugs/copy.cjs.map +2 -2
  60. package/dist/plugs/copy.d.ts +14 -13
  61. package/dist/plugs/copy.mjs +15 -17
  62. package/dist/plugs/copy.mjs.map +2 -2
  63. package/dist/plugs/coverage/analysis.d.ts +2 -2
  64. package/dist/plugs/coverage/report.cjs +1 -1
  65. package/dist/plugs/coverage/report.cjs.map +1 -1
  66. package/dist/plugs/coverage/report.d.ts +3 -3
  67. package/dist/plugs/coverage/report.mjs +1 -1
  68. package/dist/plugs/coverage/report.mjs.map +1 -1
  69. package/dist/plugs/coverage.cjs +19 -25
  70. package/dist/plugs/coverage.cjs.map +1 -1
  71. package/dist/plugs/coverage.d.ts +33 -30
  72. package/dist/plugs/coverage.mjs +20 -18
  73. package/dist/plugs/coverage.mjs.map +1 -1
  74. package/dist/plugs/debug.cjs +8 -37
  75. package/dist/plugs/debug.cjs.map +1 -1
  76. package/dist/plugs/debug.d.ts +4 -11
  77. package/dist/plugs/debug.mjs +24 -20
  78. package/dist/plugs/debug.mjs.map +1 -1
  79. package/dist/plugs/esbuild/fix-extensions.mjs +1 -1
  80. package/dist/plugs/esbuild/fix-extensions.mjs.map +1 -1
  81. package/dist/plugs/esbuild.cjs +14 -25
  82. package/dist/plugs/esbuild.cjs.map +1 -1
  83. package/dist/plugs/esbuild.d.ts +11 -16
  84. package/dist/plugs/esbuild.mjs +14 -17
  85. package/dist/plugs/esbuild.mjs.map +1 -1
  86. package/dist/plugs/eslint/runner.cjs +5 -6
  87. package/dist/plugs/eslint/runner.cjs.map +1 -1
  88. package/dist/plugs/eslint/runner.d.ts +6 -20
  89. package/dist/plugs/eslint/runner.mjs +6 -7
  90. package/dist/plugs/eslint/runner.mjs.map +1 -1
  91. package/dist/{task.cjs → plugs/eslint.cjs} +7 -24
  92. package/dist/plugs/eslint.cjs.map +6 -0
  93. package/dist/plugs/eslint.d.ts +34 -0
  94. package/dist/plugs/eslint.mjs +5 -0
  95. package/dist/plugs/eslint.mjs.map +6 -0
  96. package/dist/plugs/exec.cjs +20 -24
  97. package/dist/plugs/exec.cjs.map +1 -1
  98. package/dist/plugs/exec.d.ts +53 -53
  99. package/dist/plugs/exec.mjs +20 -23
  100. package/dist/plugs/exec.mjs.map +1 -1
  101. package/dist/plugs/filter.cjs +9 -19
  102. package/dist/plugs/filter.cjs.map +1 -1
  103. package/dist/plugs/filter.d.ts +21 -15
  104. package/dist/plugs/filter.mjs +10 -12
  105. package/dist/plugs/filter.mjs.map +1 -1
  106. package/dist/plugs/mocha/reporter.cjs +12 -6
  107. package/dist/plugs/mocha/reporter.cjs.map +1 -1
  108. package/dist/plugs/mocha/reporter.d.ts +0 -2
  109. package/dist/plugs/mocha/reporter.mjs +11 -4
  110. package/dist/plugs/mocha/reporter.mjs.map +1 -1
  111. package/dist/plugs/mocha/runner.cjs +4 -5
  112. package/dist/plugs/mocha/runner.cjs.map +1 -1
  113. package/dist/plugs/mocha/runner.d.ts +5 -31
  114. package/dist/plugs/mocha/runner.mjs +5 -6
  115. package/dist/plugs/mocha/runner.mjs.map +1 -1
  116. package/dist/plugs/mocha.cjs +22 -0
  117. package/dist/plugs/mocha.cjs.map +6 -0
  118. package/dist/plugs/mocha.d.ts +35 -0
  119. package/dist/plugs/mocha.mjs +5 -0
  120. package/dist/plugs/mocha.mjs.map +6 -0
  121. package/dist/plugs/rmf.cjs +4 -32
  122. package/dist/plugs/rmf.cjs.map +1 -1
  123. package/dist/plugs/rmf.d.ts +8 -12
  124. package/dist/plugs/rmf.mjs +25 -20
  125. package/dist/plugs/rmf.mjs.map +1 -1
  126. package/dist/plugs/tsc/compiler.d.ts +1 -1
  127. package/dist/plugs/tsc/options.d.ts +1 -1
  128. package/dist/plugs/tsc/report.d.ts +2 -2
  129. package/dist/plugs/tsc/runner.cjs +12 -11
  130. package/dist/plugs/tsc/runner.cjs.map +1 -1
  131. package/dist/plugs/tsc/runner.d.ts +4 -9
  132. package/dist/plugs/tsc/runner.mjs +12 -11
  133. package/dist/plugs/tsc/runner.mjs.map +1 -1
  134. package/dist/plugs/tsc.cjs +7 -0
  135. package/dist/plugs/tsc.cjs.map +6 -0
  136. package/dist/plugs/tsc.d.ts +36 -0
  137. package/dist/plugs/tsc.mjs +15 -0
  138. package/dist/plugs/tsc.mjs.map +6 -0
  139. package/dist/plugs.cjs +3 -5
  140. package/dist/plugs.cjs.map +1 -1
  141. package/dist/plugs.d.ts +10 -17
  142. package/dist/plugs.mjs +3 -5
  143. package/dist/plugs.mjs.map +1 -1
  144. package/dist/types.cjs +19 -0
  145. package/dist/types.cjs.map +6 -0
  146. package/dist/types.d.ts +72 -0
  147. package/dist/types.mjs +1 -0
  148. package/dist/types.mjs.map +6 -0
  149. package/dist/utils/caller.cjs +8 -11
  150. package/dist/utils/caller.cjs.map +2 -2
  151. package/dist/utils/caller.d.ts +2 -7
  152. package/dist/utils/caller.mjs +8 -11
  153. package/dist/utils/caller.mjs.map +2 -2
  154. package/dist/utils/options.cjs +4 -6
  155. package/dist/utils/options.cjs.map +1 -1
  156. package/dist/utils/options.d.ts +16 -15
  157. package/dist/utils/options.mjs +4 -6
  158. package/dist/utils/options.mjs.map +1 -1
  159. package/dist/utils/walk.d.ts +2 -2
  160. package/extra/cli.mjs +31 -20
  161. package/extra/ts-loader.mjs +6 -5
  162. package/package.json +6 -6
  163. package/src/async.ts +27 -19
  164. package/src/files.ts +6 -30
  165. package/src/fork.ts +35 -76
  166. package/src/helpers.ts +89 -101
  167. package/src/index.ts +10 -15
  168. package/src/log/colors.ts +4 -3
  169. package/src/log/emit.ts +4 -4
  170. package/src/log/logger.ts +12 -4
  171. package/src/log/options.ts +1 -1
  172. package/src/log/report.ts +8 -22
  173. package/src/log/spinner.ts +3 -3
  174. package/src/log.ts +9 -9
  175. package/src/paths.ts +1 -1
  176. package/src/pipe.ts +191 -178
  177. package/src/plugs/copy.ts +40 -31
  178. package/src/plugs/coverage/analysis.ts +4 -4
  179. package/src/plugs/coverage/report.ts +6 -5
  180. package/src/plugs/coverage.ts +64 -53
  181. package/src/plugs/debug.ts +22 -27
  182. package/src/plugs/esbuild/fix-extensions.ts +2 -2
  183. package/src/plugs/esbuild.ts +42 -46
  184. package/src/plugs/eslint/runner.ts +16 -31
  185. package/src/plugs/eslint.ts +42 -0
  186. package/src/plugs/exec.ts +93 -82
  187. package/src/plugs/filter.ts +42 -27
  188. package/src/plugs/mocha/reporter.ts +10 -5
  189. package/src/plugs/mocha/runner.ts +12 -38
  190. package/src/plugs/mocha.ts +41 -0
  191. package/src/plugs/rmf.ts +21 -25
  192. package/src/plugs/tsc/compiler.ts +1 -1
  193. package/src/plugs/tsc/options.ts +2 -2
  194. package/src/plugs/tsc/report.ts +2 -2
  195. package/src/plugs/tsc/runner.ts +24 -30
  196. package/src/plugs/tsc.ts +45 -0
  197. package/src/plugs.ts +10 -25
  198. package/src/types.ts +123 -0
  199. package/src/utils/caller.ts +11 -22
  200. package/src/utils/options.ts +49 -17
  201. package/src/utils/walk.ts +4 -4
  202. package/dist/run.cjs +0 -90
  203. package/dist/run.cjs.map +0 -6
  204. package/dist/run.d.ts +0 -89
  205. package/dist/run.mjs +0 -65
  206. package/dist/run.mjs.map +0 -6
  207. package/dist/task.cjs.map +0 -6
  208. package/dist/task.d.ts +0 -15
  209. package/dist/task.mjs +0 -14
  210. package/dist/task.mjs.map +0 -6
  211. package/src/run.ts +0 -159
  212. package/src/task.ts +0 -26
@@ -3,10 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
6
  var __copyProps = (to, from, except, desc) => {
11
7
  if (from && typeof from === "object" || typeof from === "function") {
12
8
  for (let key of __getOwnPropNames(from))
@@ -19,57 +15,55 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
15
 
20
16
  // plugs/copy.ts
21
17
  var copy_exports = {};
22
- __export(copy_exports, {
23
- Copy: () => Copy
24
- });
25
18
  module.exports = __toCommonJS(copy_exports);
26
19
  var import_assert = require("../assert.cjs");
20
+ var import_files = require("../files.cjs");
27
21
  var import_log = require("../log.cjs");
28
22
  var import_paths = require("../paths.cjs");
29
23
  var import_pipe = require("../pipe.cjs");
30
24
  var import_asyncfs = require("../utils/asyncfs.cjs");
31
- var Copy = class {
25
+ (0, import_pipe.install)("copy", class Copy {
32
26
  constructor(_directory, _options = {}) {
33
27
  this._directory = _directory;
34
28
  this._options = _options;
35
29
  }
36
- async pipe(files, run) {
30
+ async pipe(files, context) {
37
31
  const { mode, dirMode, overwrite, rename = (s) => s } = this._options;
38
32
  const flags = overwrite ? import_asyncfs.fsConstants.COPYFILE_EXCL : 0;
39
33
  const dmode = parseMode(dirMode);
40
34
  const fmode = parseMode(mode);
41
- const builder = run.files(this._directory);
35
+ const directory = context.resolve(this._directory);
36
+ const builder = import_files.Files.builder(directory);
42
37
  for (const [relative, absolute] of files.pathMappings()) {
43
38
  const target = (0, import_paths.resolveAbsolutePath)(builder.directory, rename(relative));
44
39
  if (target === absolute) {
45
- run.log.warn("Cowardly refusing to copy same file", (0, import_log.$p)(absolute));
40
+ context.log.warn("Cowardly refusing to copy same file", (0, import_log.$p)(absolute));
46
41
  continue;
47
42
  }
48
- const directory = (0, import_paths.getAbsoluteParent)(target);
49
- const firstParent = await (0, import_asyncfs.mkdir)(directory, { recursive: true });
43
+ const directory2 = (0, import_paths.getAbsoluteParent)(target);
44
+ const firstParent = await (0, import_asyncfs.mkdir)(directory2, { recursive: true });
50
45
  if (firstParent && dmode !== void 0) {
51
46
  (0, import_paths.assertAbsolutePath)(firstParent);
52
- for (let dir = directory; ; dir = (0, import_paths.getAbsoluteParent)(dir)) {
53
- run.log.trace(`Setting mode ${stringifyMode(dmode)} for directory`, (0, import_log.$p)(dir));
47
+ for (let dir = directory2; ; dir = (0, import_paths.getAbsoluteParent)(dir)) {
48
+ context.log.trace(`Setting mode ${stringifyMode(dmode)} for directory`, (0, import_log.$p)(dir));
54
49
  await (0, import_asyncfs.chmod)(dir, dmode);
55
50
  if (dir === firstParent)
56
51
  break;
57
52
  }
58
53
  }
59
- run.log.trace(`Copying "${(0, import_log.$p)(absolute)}" to "${(0, import_log.$p)(target)}"`);
54
+ context.log.trace(`Copying "${(0, import_log.$p)(absolute)}" to "${(0, import_log.$p)(target)}"`);
60
55
  await (0, import_asyncfs.copyFile)(absolute, target, flags);
61
56
  if (fmode !== void 0) {
62
- run.log.trace(`Setting mode ${stringifyMode(fmode)} for file`, (0, import_log.$p)(target));
57
+ context.log.trace(`Setting mode ${stringifyMode(fmode)} for file`, (0, import_log.$p)(target));
63
58
  await (0, import_asyncfs.chmod)(target, fmode);
64
59
  }
65
- builder.unchecked(relative);
60
+ builder.add(relative);
66
61
  }
67
62
  const result = builder.build();
68
- run.log.info("Copied", result.length, "files to", (0, import_log.$p)(builder.directory));
63
+ context.log.info("Copied", result.length, "files to", (0, import_log.$p)(builder.directory));
69
64
  return result;
70
65
  }
71
- };
72
- (0, import_pipe.install)("copy", Copy);
66
+ });
73
67
  function parseMode(mode) {
74
68
  if (mode === void 0)
75
69
  return void 0;
@@ -82,8 +76,4 @@ function parseMode(mode) {
82
76
  function stringifyMode(mode) {
83
77
  return mode.toString(8).padStart(4, "0");
84
78
  }
85
- // Annotate the CommonJS export names for ESM import in node:
86
- 0 && (module.exports = {
87
- Copy
88
- });
89
79
  //# sourceMappingURL=copy.cjs.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/plugs/copy.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAuB;AAEvB,iBAAmB;AACnB,mBAA2E;AAC3E,kBAA8B;AAE9B,qBAAoD;AAe7C,IAAM,OAAN,MAAkC;AAAA,EAEvC,YACqB,YACA,WAAwB,CAAC,GAC5C;AAFmB;AACA;AAAA,EAClB;AAAA,EAEH,MAAM,KAAK,OAAc,KAA0B;AAEjD,UAAM,EAAE,MAAM,SAAS,WAAW,SAAS,CAAC,MAAc,EAAE,IAAI,KAAK;AACrE,UAAM,QAAQ,YAAY,2BAAY,gBAAgB;AACtD,UAAM,QAAQ,UAAU,OAAO;AAC/B,UAAM,QAAQ,UAAU,IAAI;AAG5B,UAAM,UAAU,IAAI,MAAM,KAAK,UAAU;AAGzC,eAAW,CAAE,UAAU,QAAS,KAAK,MAAM,aAAa,GAAG;AAGzD,YAAM,aAAS,kCAAoB,QAAQ,WAAW,OAAO,QAAQ,CAAC;AAGtE,UAAI,WAAW,UAAU;AACvB,YAAI,IAAI,KAAK,2CAAuC,eAAG,QAAQ,CAAC;AAChE;AAAA,MACF;AAGA,YAAM,gBAAY,gCAAkB,MAAM;AAC1C,YAAM,cAAc,UAAM,sBAAM,WAAW,EAAE,WAAW,KAAK,CAAC;AAG9D,UAAI,eAAgB,UAAU,QAAY;AACxC,6CAAmB,WAAW;AAC9B,iBAAS,MAAM,aAAa,UAAM,gCAAkB,GAAG,GAAG;AACxD,cAAI,IAAI,MAAM,gBAAgB,cAAc,KAAK,uBAAmB,eAAG,GAAG,CAAC;AAC3E,oBAAM,sBAAM,KAAK,KAAK;AACtB,cAAI,QAAQ;AAAa;AAAA,QAC3B;AAAA,MACF;AAGA,UAAI,IAAI,MAAM,gBAAY,eAAG,QAAQ,cAAU,eAAG,MAAM,IAAI;AAC5D,gBAAM,yBAAS,UAAU,QAAQ,KAAK;AAGtC,UAAI,UAAU,QAAW;AACvB,YAAI,IAAI,MAAM,gBAAgB,cAAc,KAAK,kBAAc,eAAG,MAAM,CAAC;AACzE,kBAAM,sBAAM,QAAQ,KAAK;AAAA,MAC3B;AAGA,cAAQ,UAAU,QAAQ;AAAA,IAC5B;AAEA,UAAM,SAAS,QAAQ,MAAM;AAC7B,QAAI,IAAI,KAAK,UAAU,OAAO,QAAQ,gBAAY,eAAG,QAAQ,SAAS,CAAC;AACvE,WAAO;AAAA,EACT;AACF;AAAA,IAMA,qBAAQ,QAAQ,IAAI;AAapB,SAAS,UAAU,MAAuD;AACxE,MAAI,SAAS;AAAW,WAAO;AAC/B,MAAI,OAAO,SAAS;AAAU,WAAO;AACrC,QAAM,SAAS,SAAS,MAAM,CAAC;AAC/B,4BAAO,CAAE,MAAM,MAAM,GAAG,iBAAiB,OAAO;AAChD,SAAO;AACT;AAEA,SAAS,cAAc,MAAsB;AAC3C,SAAO,KAAK,SAAS,CAAC,EAAE,SAAS,GAAG,GAAG;AACzC;",
5
- "names": []
4
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,oBAAuB;AACvB,mBAAsB;AACtB,iBAAmB;AACnB,mBAA2E;AAC3E,kBAAuD;AACvD,qBAAoD;AAAA,IAqCpD,qBAAQ,QAAQ,MAAM,KAA4B;AAAA,EAEhD,YACqB,YACA,WAAwB,CAAC,GAC5C;AAFmB;AACA;AAAA,EAClB;AAAA,EAEH,MAAM,KAAK,OAAc,SAAkC;AAEzD,UAAM,EAAE,MAAM,SAAS,WAAW,SAAS,CAAC,MAAc,EAAE,IAAI,KAAK;AACrE,UAAM,QAAQ,YAAY,2BAAY,gBAAgB;AACtD,UAAM,QAAQ,UAAU,OAAO;AAC/B,UAAM,QAAQ,UAAU,IAAI;AAG5B,UAAM,YAAY,QAAQ,QAAQ,KAAK,UAAU;AACjD,UAAM,UAAU,mBAAM,QAAQ,SAAS;AAGvC,eAAW,CAAE,UAAU,QAAS,KAAK,MAAM,aAAa,GAAG;AAGzD,YAAM,aAAS,kCAAoB,QAAQ,WAAW,OAAO,QAAQ,CAAC;AAGtE,UAAI,WAAW,UAAU;AACvB,gBAAQ,IAAI,KAAK,2CAAuC,eAAG,QAAQ,CAAC;AACpE;AAAA,MACF;AAGA,YAAMA,iBAAY,gCAAkB,MAAM;AAC1C,YAAM,cAAc,UAAM,sBAAMA,YAAW,EAAE,WAAW,KAAK,CAAC;AAG9D,UAAI,eAAgB,UAAU,QAAY;AACxC,6CAAmB,WAAW;AAC9B,iBAAS,MAAMA,cAAa,UAAM,gCAAkB,GAAG,GAAG;AACxD,kBAAQ,IAAI,MAAM,gBAAgB,cAAc,KAAK,uBAAmB,eAAG,GAAG,CAAC;AAC/E,oBAAM,sBAAM,KAAK,KAAK;AACtB,cAAI,QAAQ;AAAa;AAAA,QAC3B;AAAA,MACF;AAGA,cAAQ,IAAI,MAAM,gBAAY,eAAG,QAAQ,cAAU,eAAG,MAAM,IAAI;AAChE,gBAAM,yBAAS,UAAU,QAAQ,KAAK;AAGtC,UAAI,UAAU,QAAW;AACvB,gBAAQ,IAAI,MAAM,gBAAgB,cAAc,KAAK,kBAAc,eAAG,MAAM,CAAC;AAC7E,kBAAM,sBAAM,QAAQ,KAAK;AAAA,MAC3B;AAGA,cAAQ,IAAI,QAAQ;AAAA,IACtB;AAEA,UAAM,SAAS,QAAQ,MAAM;AAC7B,YAAQ,IAAI,KAAK,UAAU,OAAO,QAAQ,gBAAY,eAAG,QAAQ,SAAS,CAAC;AAC3E,WAAO;AAAA,EACT;AACF,CAAC;AAMD,SAAS,UAAU,MAAuD;AACxE,MAAI,SAAS;AAAW,WAAO;AAC/B,MAAI,OAAO,SAAS;AAAU,WAAO;AACrC,QAAM,SAAS,SAAS,MAAM,CAAC;AAC/B,4BAAO,CAAE,MAAM,MAAM,GAAG,iBAAiB,OAAO;AAChD,SAAO;AACT;AAEA,SAAS,cAAc,MAAsB;AAC3C,SAAO,KAAK,SAAS,CAAC,EAAE,SAAS,GAAG,GAAG;AACzC;",
5
+ "names": ["directory"]
6
6
  }
@@ -1,6 +1,3 @@
1
- import { Files } from '../files.js';
2
- import { Plug } from '../pipe.js';
3
- import { Run } from '../run.js';
4
1
  /** Options for copying files */
5
2
  export interface CopyOptions {
6
3
  /** Whether to allow overwriting or not (default `false`). */
@@ -12,16 +9,20 @@ export interface CopyOptions {
12
9
  /** If specified, this function will be invoked to rename files. */
13
10
  rename?: (relative: string) => string;
14
11
  }
15
- /** Copy the curent {@link Files} to a different directory */
16
- export declare class Copy implements Plug<Files> {
17
- private readonly _directory;
18
- private readonly _options;
19
- constructor(directory: string, options?: CopyOptions);
20
- pipe(files: Files, run: Run): Promise<Files>;
21
- }
22
- declare module '../pipe.js' {
12
+ declare module '../pipe' {
23
13
  interface Pipe {
24
- /** Copy the curent {@link Files} to a different directory */
25
- copy: PipeExtension<typeof Copy>;
14
+ /**
15
+ * Copy the curent {@link Files} to a different directory
16
+ *
17
+ * @param directory The target directory where files will be copied to
18
+ */
19
+ copy(directory: string): Pipe;
20
+ /**
21
+ * Copy the curent {@link Files} to a different directory
22
+ *
23
+ * @param directory The target directory where files will be copied to
24
+ * @param options Extra {@link CopyOptions | options} for the copy operation
25
+ */
26
+ copy(directory: string, options: CopyOptions): Pipe;
26
27
  }
27
28
  }
@@ -1,51 +1,52 @@
1
1
  // plugs/copy.ts
2
2
  import { assert } from "../assert.mjs";
3
+ import { Files } from "../files.mjs";
3
4
  import { $p } from "../log.mjs";
4
5
  import { assertAbsolutePath, getAbsoluteParent, resolveAbsolutePath } from "../paths.mjs";
5
6
  import { install } from "../pipe.mjs";
6
7
  import { chmod, copyFile, fsConstants, mkdir } from "../utils/asyncfs.mjs";
7
- var Copy = class {
8
+ install("copy", class Copy {
8
9
  constructor(_directory, _options = {}) {
9
10
  this._directory = _directory;
10
11
  this._options = _options;
11
12
  }
12
- async pipe(files, run) {
13
+ async pipe(files, context) {
13
14
  const { mode, dirMode, overwrite, rename = (s) => s } = this._options;
14
15
  const flags = overwrite ? fsConstants.COPYFILE_EXCL : 0;
15
16
  const dmode = parseMode(dirMode);
16
17
  const fmode = parseMode(mode);
17
- const builder = run.files(this._directory);
18
+ const directory = context.resolve(this._directory);
19
+ const builder = Files.builder(directory);
18
20
  for (const [relative, absolute] of files.pathMappings()) {
19
21
  const target = resolveAbsolutePath(builder.directory, rename(relative));
20
22
  if (target === absolute) {
21
- run.log.warn("Cowardly refusing to copy same file", $p(absolute));
23
+ context.log.warn("Cowardly refusing to copy same file", $p(absolute));
22
24
  continue;
23
25
  }
24
- const directory = getAbsoluteParent(target);
25
- const firstParent = await mkdir(directory, { recursive: true });
26
+ const directory2 = getAbsoluteParent(target);
27
+ const firstParent = await mkdir(directory2, { recursive: true });
26
28
  if (firstParent && dmode !== void 0) {
27
29
  assertAbsolutePath(firstParent);
28
- for (let dir = directory; ; dir = getAbsoluteParent(dir)) {
29
- run.log.trace(`Setting mode ${stringifyMode(dmode)} for directory`, $p(dir));
30
+ for (let dir = directory2; ; dir = getAbsoluteParent(dir)) {
31
+ context.log.trace(`Setting mode ${stringifyMode(dmode)} for directory`, $p(dir));
30
32
  await chmod(dir, dmode);
31
33
  if (dir === firstParent)
32
34
  break;
33
35
  }
34
36
  }
35
- run.log.trace(`Copying "${$p(absolute)}" to "${$p(target)}"`);
37
+ context.log.trace(`Copying "${$p(absolute)}" to "${$p(target)}"`);
36
38
  await copyFile(absolute, target, flags);
37
39
  if (fmode !== void 0) {
38
- run.log.trace(`Setting mode ${stringifyMode(fmode)} for file`, $p(target));
40
+ context.log.trace(`Setting mode ${stringifyMode(fmode)} for file`, $p(target));
39
41
  await chmod(target, fmode);
40
42
  }
41
- builder.unchecked(relative);
43
+ builder.add(relative);
42
44
  }
43
45
  const result = builder.build();
44
- run.log.info("Copied", result.length, "files to", $p(builder.directory));
46
+ context.log.info("Copied", result.length, "files to", $p(builder.directory));
45
47
  return result;
46
48
  }
47
- };
48
- install("copy", Copy);
49
+ });
49
50
  function parseMode(mode) {
50
51
  if (mode === void 0)
51
52
  return void 0;
@@ -58,7 +59,4 @@ function parseMode(mode) {
58
59
  function stringifyMode(mode) {
59
60
  return mode.toString(8).padStart(4, "0");
60
61
  }
61
- export {
62
- Copy
63
- };
64
62
  //# sourceMappingURL=copy.mjs.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/plugs/copy.ts"],
4
- "mappings": ";AAAA,SAAS,cAAc;AAEvB,SAAS,UAAU;AACnB,SAAS,oBAAoB,mBAAmB,2BAA2B;AAC3E,SAAS,eAAqB;AAE9B,SAAS,OAAO,UAAU,aAAa,aAAa;AAe7C,IAAM,OAAN,MAAkC;AAAA,EAEvC,YACqB,YACA,WAAwB,CAAC,GAC5C;AAFmB;AACA;AAAA,EAClB;AAAA,EAEH,MAAM,KAAK,OAAc,KAA0B;AAEjD,UAAM,EAAE,MAAM,SAAS,WAAW,SAAS,CAAC,MAAc,EAAE,IAAI,KAAK;AACrE,UAAM,QAAQ,YAAY,YAAY,gBAAgB;AACtD,UAAM,QAAQ,UAAU,OAAO;AAC/B,UAAM,QAAQ,UAAU,IAAI;AAG5B,UAAM,UAAU,IAAI,MAAM,KAAK,UAAU;AAGzC,eAAW,CAAE,UAAU,QAAS,KAAK,MAAM,aAAa,GAAG;AAGzD,YAAM,SAAS,oBAAoB,QAAQ,WAAW,OAAO,QAAQ,CAAC;AAGtE,UAAI,WAAW,UAAU;AACvB,YAAI,IAAI,KAAK,uCAAuC,GAAG,QAAQ,CAAC;AAChE;AAAA,MACF;AAGA,YAAM,YAAY,kBAAkB,MAAM;AAC1C,YAAM,cAAc,MAAM,MAAM,WAAW,EAAE,WAAW,KAAK,CAAC;AAG9D,UAAI,eAAgB,UAAU,QAAY;AACxC,2BAAmB,WAAW;AAC9B,iBAAS,MAAM,aAAa,MAAM,kBAAkB,GAAG,GAAG;AACxD,cAAI,IAAI,MAAM,gBAAgB,cAAc,KAAK,mBAAmB,GAAG,GAAG,CAAC;AAC3E,gBAAM,MAAM,KAAK,KAAK;AACtB,cAAI,QAAQ;AAAa;AAAA,QAC3B;AAAA,MACF;AAGA,UAAI,IAAI,MAAM,YAAY,GAAG,QAAQ,UAAU,GAAG,MAAM,IAAI;AAC5D,YAAM,SAAS,UAAU,QAAQ,KAAK;AAGtC,UAAI,UAAU,QAAW;AACvB,YAAI,IAAI,MAAM,gBAAgB,cAAc,KAAK,cAAc,GAAG,MAAM,CAAC;AACzE,cAAM,MAAM,QAAQ,KAAK;AAAA,MAC3B;AAGA,cAAQ,UAAU,QAAQ;AAAA,IAC5B;AAEA,UAAM,SAAS,QAAQ,MAAM;AAC7B,QAAI,IAAI,KAAK,UAAU,OAAO,QAAQ,YAAY,GAAG,QAAQ,SAAS,CAAC;AACvE,WAAO;AAAA,EACT;AACF;AAMA,QAAQ,QAAQ,IAAI;AAapB,SAAS,UAAU,MAAuD;AACxE,MAAI,SAAS;AAAW,WAAO;AAC/B,MAAI,OAAO,SAAS;AAAU,WAAO;AACrC,QAAM,SAAS,SAAS,MAAM,CAAC;AAC/B,SAAO,CAAE,MAAM,MAAM,GAAG,iBAAiB,OAAO;AAChD,SAAO;AACT;AAEA,SAAS,cAAc,MAAsB;AAC3C,SAAO,KAAK,SAAS,CAAC,EAAE,SAAS,GAAG,GAAG;AACzC;",
5
- "names": []
4
+ "mappings": ";AAAA,SAAS,cAAc;AACvB,SAAS,aAAa;AACtB,SAAS,UAAU;AACnB,SAAS,oBAAoB,mBAAmB,2BAA2B;AAC3E,SAAS,eAA8C;AACvD,SAAS,OAAO,UAAU,aAAa,aAAa;AAqCpD,QAAQ,QAAQ,MAAM,KAA4B;AAAA,EAEhD,YACqB,YACA,WAAwB,CAAC,GAC5C;AAFmB;AACA;AAAA,EAClB;AAAA,EAEH,MAAM,KAAK,OAAc,SAAkC;AAEzD,UAAM,EAAE,MAAM,SAAS,WAAW,SAAS,CAAC,MAAc,EAAE,IAAI,KAAK;AACrE,UAAM,QAAQ,YAAY,YAAY,gBAAgB;AACtD,UAAM,QAAQ,UAAU,OAAO;AAC/B,UAAM,QAAQ,UAAU,IAAI;AAG5B,UAAM,YAAY,QAAQ,QAAQ,KAAK,UAAU;AACjD,UAAM,UAAU,MAAM,QAAQ,SAAS;AAGvC,eAAW,CAAE,UAAU,QAAS,KAAK,MAAM,aAAa,GAAG;AAGzD,YAAM,SAAS,oBAAoB,QAAQ,WAAW,OAAO,QAAQ,CAAC;AAGtE,UAAI,WAAW,UAAU;AACvB,gBAAQ,IAAI,KAAK,uCAAuC,GAAG,QAAQ,CAAC;AACpE;AAAA,MACF;AAGA,YAAMA,aAAY,kBAAkB,MAAM;AAC1C,YAAM,cAAc,MAAM,MAAMA,YAAW,EAAE,WAAW,KAAK,CAAC;AAG9D,UAAI,eAAgB,UAAU,QAAY;AACxC,2BAAmB,WAAW;AAC9B,iBAAS,MAAMA,cAAa,MAAM,kBAAkB,GAAG,GAAG;AACxD,kBAAQ,IAAI,MAAM,gBAAgB,cAAc,KAAK,mBAAmB,GAAG,GAAG,CAAC;AAC/E,gBAAM,MAAM,KAAK,KAAK;AACtB,cAAI,QAAQ;AAAa;AAAA,QAC3B;AAAA,MACF;AAGA,cAAQ,IAAI,MAAM,YAAY,GAAG,QAAQ,UAAU,GAAG,MAAM,IAAI;AAChE,YAAM,SAAS,UAAU,QAAQ,KAAK;AAGtC,UAAI,UAAU,QAAW;AACvB,gBAAQ,IAAI,MAAM,gBAAgB,cAAc,KAAK,cAAc,GAAG,MAAM,CAAC;AAC7E,cAAM,MAAM,QAAQ,KAAK;AAAA,MAC3B;AAGA,cAAQ,IAAI,QAAQ;AAAA,IACtB;AAEA,UAAM,SAAS,QAAQ,MAAM;AAC7B,YAAQ,IAAI,KAAK,UAAU,OAAO,QAAQ,YAAY,GAAG,QAAQ,SAAS,CAAC;AAC3E,WAAO;AAAA,EACT;AACF,CAAC;AAMD,SAAS,UAAU,MAAuD;AACxE,MAAI,SAAS;AAAW,WAAO;AAC/B,MAAI,OAAO,SAAS;AAAU,WAAO;AACrC,QAAM,SAAS,SAAS,MAAM,CAAC;AAC/B,SAAO,CAAE,MAAM,MAAM,GAAG,iBAAiB,OAAO;AAChD,SAAO;AACT;AAEA,SAAS,cAAc,MAAsB;AAC3C,SAAO,KAAK,SAAS,CAAC,EAAE,SAAS,GAAG,GAAG;AACzC;",
5
+ "names": ["directory"]
6
6
  }
@@ -1,6 +1,6 @@
1
1
  import { RawSourceMap } from 'source-map';
2
- import { Logger } from '../../log.js';
3
- import { AbsolutePath } from '../../paths.js';
2
+ import { Logger } from '../../log';
3
+ import { AbsolutePath } from '../../paths';
4
4
  /** Coverage range */
5
5
  export interface V8CoveredRange {
6
6
  /** The offset in the script of the first character covered */
@@ -25,8 +25,8 @@ __export(report_exports, {
25
25
  coverageReport: () => coverageReport
26
26
  });
27
27
  module.exports = __toCommonJS(report_exports);
28
- var import_parser = require("@babel/parser");
29
28
  var import_types = require("@babel/types");
29
+ var import_parser = require("@babel/parser");
30
30
  var import_node_url = require("node:url");
31
31
  var import_log = require("../../log.cjs");
32
32
  var import_asyncfs = require("../../utils/asyncfs.cjs");
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/plugs/coverage/report.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,6 +1,6 @@
1
- import { Logger } from '../../log.js';
2
- import { AbsolutePath } from '../../paths.js';
3
- import { CoverageAnalyser } from './analysis.js';
1
+ import { Logger } from '../../log';
2
+ import { AbsolutePath } from '../../paths';
3
+ import { CoverageAnalyser } from './analysis';
4
4
  /**
5
5
  * A constant indicating that coverage was skipped (is irrelevant, for e.g.
6
6
  * comment or typescript definition nodes)
@@ -1,5 +1,4 @@
1
1
  // plugs/coverage/report.ts
2
- import { parse } from "@babel/parser";
3
2
  import {
4
3
  isDeclaration,
5
4
  isExportDeclaration,
@@ -13,6 +12,7 @@ import {
13
12
  isTypeScript,
14
13
  VISITOR_KEYS
15
14
  } from "@babel/types";
15
+ import { parse } from "@babel/parser";
16
16
  import { pathToFileURL } from "node:url";
17
17
  import { $p } from "../../log.mjs";
18
18
  import { readFile } from "../../utils/asyncfs.mjs";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/plugs/coverage/report.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -3,10 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
6
  var __copyProps = (to, from, except, desc) => {
11
7
  if (from && typeof from === "object" || typeof from === "function") {
12
8
  for (let key of __getOwnPropNames(from))
@@ -19,41 +15,43 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
15
 
20
16
  // plugs/coverage.ts
21
17
  var coverage_exports = {};
22
- __export(coverage_exports, {
23
- Coverage: () => Coverage
24
- });
25
18
  module.exports = __toCommonJS(coverage_exports);
26
19
  var import_cov8_html = require("@plugjs/cov8-html");
27
20
  var import_node_path = require("node:path");
28
21
  var import_assert = require("../assert.cjs");
22
+ var import_files = require("../files.cjs");
29
23
  var import_log = require("../log.cjs");
24
+ var import_paths = require("../paths.cjs");
30
25
  var import_pipe = require("../pipe.cjs");
26
+ var import_walk = require("../utils/walk.cjs");
31
27
  var import_analysis = require("./coverage/analysis.cjs");
32
28
  var import_report = require("./coverage/report.cjs");
33
- var Coverage = class {
29
+ (0, import_pipe.install)("coverage", class Coverage {
34
30
  constructor(_coverageDir, _options = {}) {
35
31
  this._coverageDir = _coverageDir;
36
32
  this._options = _options;
37
33
  }
38
- async pipe(files, run) {
39
- const coverageFiles = await run.find("coverage-*.json", {
40
- directory: this._coverageDir
41
- });
34
+ async pipe(files, context) {
35
+ const coverageDir = context.resolve(this._coverageDir);
36
+ const coverageFiles = [];
37
+ for await (const file of (0, import_walk.walk)(coverageDir, ["coverage-*.json"])) {
38
+ coverageFiles.push((0, import_paths.resolveAbsolutePath)(coverageDir, file));
39
+ }
42
40
  if (coverageFiles.length === 0) {
43
- (0, import_assert.fail)(`No coverage files found in ${(0, import_log.$p)(coverageFiles.directory)}`);
41
+ (0, import_assert.fail)(`No coverage files found in ${(0, import_log.$p)(coverageDir)}`);
44
42
  }
45
43
  const sourceFiles = [...files.absolutePaths()];
46
44
  const ms1 = Date.now();
47
45
  const analyser = await (0, import_analysis.createAnalyser)(
48
46
  sourceFiles,
49
- [...coverageFiles.absolutePaths()],
47
+ coverageFiles,
50
48
  this._options.sourceMapBias || "least_upper_bound",
51
- run.log
49
+ context.log
52
50
  );
53
- run.log.info("Parsed", coverageFiles.length, "coverage files", (0, import_log.$ms)(Date.now() - ms1));
51
+ context.log.info("Parsed", coverageFiles.length, "coverage files", (0, import_log.$ms)(Date.now() - ms1));
54
52
  const ms2 = Date.now();
55
- const report = await (0, import_report.coverageReport)(analyser, sourceFiles, run.log);
56
- run.log.info("Analysed", sourceFiles.length, "source files", (0, import_log.$ms)(Date.now() - ms2));
53
+ const report = await (0, import_report.coverageReport)(analyser, sourceFiles, context.log);
54
+ context.log.info("Analysed", sourceFiles.length, "source files", (0, import_log.$ms)(Date.now() - ms2));
57
55
  analyser.destroy();
58
56
  const {
59
57
  minimumCoverage = 50,
@@ -73,7 +71,7 @@ var Coverage = class {
73
71
  }
74
72
  let fileErrors = 0;
75
73
  let fileWarnings = 0;
76
- const _report = run.report("Coverage report");
74
+ const _report = context.log.report("Coverage report");
77
75
  for (const [_file, result] of Object.entries(report.results)) {
78
76
  const { coverage, totalNodes } = result.nodeCoverage;
79
77
  const file = _file;
@@ -106,7 +104,8 @@ var Coverage = class {
106
104
  }
107
105
  if (this._options.reportDir == null)
108
106
  return _report.done(false);
109
- const builder = run.files(this._options.reportDir);
107
+ const reportDir = context.resolve(this._options.reportDir);
108
+ const builder = import_files.Files.builder(reportDir);
110
109
  const date = new Date().toISOString();
111
110
  const thresholds = {
112
111
  minimumCoverage,
@@ -135,10 +134,5 @@ var Coverage = class {
135
134
  _report.done(false);
136
135
  return builder.build();
137
136
  }
138
- };
139
- (0, import_pipe.install)("coverage", Coverage);
140
- // Annotate the CommonJS export names for ESM import in node:
141
- 0 && (module.exports = {
142
- Coverage
143
137
  });
144
138
  //# sourceMappingURL=coverage.cjs.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/plugs/coverage.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,46 +1,49 @@
1
- import { Files } from '../files.js';
2
- import { Plug } from '../pipe.js';
3
- import { Run } from '../run.js';
4
- import { SourceMapBias } from './coverage/analysis.js';
1
+ import { SourceMapBias } from './coverage/analysis';
5
2
  /** Options to analyse coverage reports */
6
3
  export interface CoverageOptions {
7
4
  /** The bias for source map analisys (defaults to `greatest_lower_bound`) */
8
5
  sourceMapBias?: SourceMapBias;
9
- /** Minimum _overall_ coverage (as a percentage) */
6
+ /** Minimum _overall_ coverage (as a percentage, defaults to 50) */
10
7
  minimumCoverage?: number;
11
- /** Optimal _overall_ coverage (as a percentage) */
8
+ /** Optimal _overall_ coverage (as a percentage, defaults to 50) */
12
9
  optimalCoverage?: number;
13
- /** Minimum _per-file_ coverage (as a percentage) */
10
+ /** Minimum _per-file_ coverage (as a percentage, defaults to 75) */
14
11
  minimumFileCoverage?: number;
15
- /** Optimal _per-file_ coverage (as a percentage) */
12
+ /** Optimal _per-file_ coverage (as a percentage, defaults to 75) */
16
13
  optimalFileCoverage?: number;
17
14
  }
18
15
  export interface CoverageReportOptions extends CoverageOptions {
19
16
  /** If specified, a JSON and HTML report will be written to this directory */
20
17
  reportDir: string;
21
18
  }
22
- /**
23
- * The {@link Coverage} plug type is inferred from the constructor, so this
24
- * type helps to declare the correct types as we can't really infer them from
25
- * `typeof Coverage`...
26
- */
27
- declare type CoverageConstructor = {
28
- new (coverageDir: string): Coverage<CoverageOptions>;
29
- new (coverageDir: string, options: CoverageOptions): Coverage<CoverageOptions>;
30
- new (coverageDir: string, options: CoverageReportOptions): Coverage<CoverageReportOptions>;
31
- };
32
- /** Analyse coverage using files generated by V8/NodeJS. */
33
- export declare class Coverage<T extends CoverageOptions | CoverageReportOptions> implements Plug<T extends CoverageReportOptions ? Files : undefined> {
34
- private readonly _coverageDir;
35
- private readonly _options;
36
- constructor(coverageDir: string);
37
- constructor(coverageDir: string, options?: T);
38
- pipe(files: Files, run: Run): Promise<T extends CoverageReportOptions ? Files : undefined>;
39
- }
40
- declare module '../pipe.js' {
19
+ declare module '../pipe' {
41
20
  interface Pipe {
42
- /** Analyse coverage using files generated by V8/NodeJS. */
43
- coverage: PipeExtension<CoverageConstructor>;
21
+ /**
22
+ * Analyse coverage using files generated by V8/NodeJS.
23
+ *
24
+ * @param coverageDir The directory where the `coverage-XXX.json` files
25
+ * generated by V8/NodeJS can be found.
26
+ */
27
+ coverage(coverageDir: string): Promise<undefined>;
28
+ /**
29
+ * Analyse coverage using files generated by V8/NodeJS.
30
+ *
31
+ * @param coverageDir The directory where the `coverage-XXX.json` files
32
+ * generated by V8/NodeJS can be found.
33
+ * @param options Extra {@link CoverageOptions | options} allowing to
34
+ * specify coverage thresholds.
35
+ */
36
+ coverage(coverageDir: string, options: CoverageOptions): Promise<undefined>;
37
+ /**
38
+ * Analyse coverage using files generated by V8/NodeJS and produce an HTML
39
+ * report in the directory specified in `options`.
40
+ *
41
+ * @param coverageDir The directory where the `coverage-XXX.json` files
42
+ * generated by V8/NodeJS can be found.
43
+ * @param options Extra {@link CoverageOptions | options} allowing to
44
+ * specify coverage thresholds where the HTML report should
45
+ * be written to.
46
+ */
47
+ coverage(coverageDir: string, options: CoverageReportOptions): Pipe;
44
48
  }
45
49
  }
46
- export {};
@@ -2,34 +2,39 @@
2
2
  import { html, initFunction } from "@plugjs/cov8-html";
3
3
  import { sep } from "node:path";
4
4
  import { fail } from "../assert.mjs";
5
+ import { Files } from "../files.mjs";
5
6
  import { $gry, $ms, $p, $red, $ylw, ERROR, NOTICE, WARN } from "../log.mjs";
7
+ import { resolveAbsolutePath } from "../paths.mjs";
6
8
  import { install } from "../pipe.mjs";
9
+ import { walk } from "../utils/walk.mjs";
7
10
  import { createAnalyser } from "./coverage/analysis.mjs";
8
11
  import { coverageReport } from "./coverage/report.mjs";
9
- var Coverage = class {
12
+ install("coverage", class Coverage {
10
13
  constructor(_coverageDir, _options = {}) {
11
14
  this._coverageDir = _coverageDir;
12
15
  this._options = _options;
13
16
  }
14
- async pipe(files, run) {
15
- const coverageFiles = await run.find("coverage-*.json", {
16
- directory: this._coverageDir
17
- });
17
+ async pipe(files, context) {
18
+ const coverageDir = context.resolve(this._coverageDir);
19
+ const coverageFiles = [];
20
+ for await (const file of walk(coverageDir, ["coverage-*.json"])) {
21
+ coverageFiles.push(resolveAbsolutePath(coverageDir, file));
22
+ }
18
23
  if (coverageFiles.length === 0) {
19
- fail(`No coverage files found in ${$p(coverageFiles.directory)}`);
24
+ fail(`No coverage files found in ${$p(coverageDir)}`);
20
25
  }
21
26
  const sourceFiles = [...files.absolutePaths()];
22
27
  const ms1 = Date.now();
23
28
  const analyser = await createAnalyser(
24
29
  sourceFiles,
25
- [...coverageFiles.absolutePaths()],
30
+ coverageFiles,
26
31
  this._options.sourceMapBias || "least_upper_bound",
27
- run.log
32
+ context.log
28
33
  );
29
- run.log.info("Parsed", coverageFiles.length, "coverage files", $ms(Date.now() - ms1));
34
+ context.log.info("Parsed", coverageFiles.length, "coverage files", $ms(Date.now() - ms1));
30
35
  const ms2 = Date.now();
31
- const report = await coverageReport(analyser, sourceFiles, run.log);
32
- run.log.info("Analysed", sourceFiles.length, "source files", $ms(Date.now() - ms2));
36
+ const report = await coverageReport(analyser, sourceFiles, context.log);
37
+ context.log.info("Analysed", sourceFiles.length, "source files", $ms(Date.now() - ms2));
33
38
  analyser.destroy();
34
39
  const {
35
40
  minimumCoverage = 50,
@@ -49,7 +54,7 @@ var Coverage = class {
49
54
  }
50
55
  let fileErrors = 0;
51
56
  let fileWarnings = 0;
52
- const _report = run.report("Coverage report");
57
+ const _report = context.log.report("Coverage report");
53
58
  for (const [_file, result] of Object.entries(report.results)) {
54
59
  const { coverage, totalNodes } = result.nodeCoverage;
55
60
  const file = _file;
@@ -82,7 +87,8 @@ var Coverage = class {
82
87
  }
83
88
  if (this._options.reportDir == null)
84
89
  return _report.done(false);
85
- const builder = run.files(this._options.reportDir);
90
+ const reportDir = context.resolve(this._options.reportDir);
91
+ const builder = Files.builder(reportDir);
86
92
  const date = new Date().toISOString();
87
93
  const thresholds = {
88
94
  minimumCoverage,
@@ -111,9 +117,5 @@ var Coverage = class {
111
117
  _report.done(false);
112
118
  return builder.build();
113
119
  }
114
- };
115
- install("coverage", Coverage);
116
- export {
117
- Coverage
118
- };
120
+ });
119
121
  //# sourceMappingURL=coverage.mjs.map