@plugjs/plug 0.0.27 → 0.1.1

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 (282) hide show
  1. package/dist/{failure.cjs → asserts.cjs} +30 -10
  2. package/dist/asserts.cjs.map +6 -0
  3. package/dist/{failure.d.ts → asserts.d.ts} +4 -1
  4. package/dist/asserts.mjs +51 -0
  5. package/dist/asserts.mjs.map +6 -0
  6. package/dist/async.cjs +2 -2
  7. package/dist/async.cjs.map +1 -1
  8. package/dist/async.mjs +2 -2
  9. package/dist/async.mjs.map +1 -1
  10. package/dist/build.cjs +22 -33
  11. package/dist/build.cjs.map +1 -1
  12. package/dist/build.d.ts +2 -13
  13. package/dist/build.mjs +17 -27
  14. package/dist/build.mjs.map +1 -1
  15. package/dist/files.cjs +7 -11
  16. package/dist/files.cjs.map +1 -1
  17. package/dist/files.mjs +5 -9
  18. package/dist/files.mjs.map +1 -1
  19. package/dist/fork.cjs +35 -30
  20. package/dist/fork.cjs.map +1 -1
  21. package/dist/fork.d.ts +6 -3
  22. package/dist/fork.mjs +18 -13
  23. package/dist/fork.mjs.map +1 -1
  24. package/dist/{utils/asyncfs.cjs → fs.cjs} +6 -6
  25. package/dist/fs.cjs.map +6 -0
  26. package/dist/{utils/asyncfs.d.ts → fs.d.ts} +1 -1
  27. package/dist/{utils/asyncfs.mjs → fs.mjs} +3 -3
  28. package/dist/fs.mjs.map +6 -0
  29. package/dist/helpers.cjs +31 -14
  30. package/dist/helpers.cjs.map +1 -1
  31. package/dist/helpers.d.ts +30 -1
  32. package/dist/helpers.mjs +22 -7
  33. package/dist/helpers.mjs.map +1 -1
  34. package/dist/index.cjs +36 -6
  35. package/dist/index.cjs.map +1 -1
  36. package/dist/index.d.ts +25 -8
  37. package/dist/index.mjs +20 -5
  38. package/dist/index.mjs.map +1 -1
  39. package/dist/{log → logging}/colors.cjs +1 -1
  40. package/dist/{log → logging}/colors.cjs.map +1 -1
  41. package/dist/{log → logging}/colors.d.ts +0 -0
  42. package/dist/{log → logging}/colors.mjs +1 -1
  43. package/dist/{log → logging}/colors.mjs.map +1 -1
  44. package/dist/{log → logging}/emit.cjs +1 -2
  45. package/dist/{log → logging}/emit.cjs.map +2 -2
  46. package/dist/{log → logging}/emit.d.ts +1 -1
  47. package/dist/{log → logging}/emit.mjs +1 -2
  48. package/dist/{log → logging}/emit.mjs.map +2 -2
  49. package/dist/{log → logging}/levels.cjs +1 -1
  50. package/dist/{log → logging}/levels.cjs.map +1 -1
  51. package/dist/{log → logging}/levels.d.ts +6 -6
  52. package/dist/{log → logging}/levels.mjs +1 -1
  53. package/dist/{log → logging}/levels.mjs.map +1 -1
  54. package/dist/{log → logging}/logger.cjs +13 -7
  55. package/dist/logging/logger.cjs.map +6 -0
  56. package/dist/{log → logging}/logger.d.ts +0 -0
  57. package/dist/{log → logging}/logger.mjs +11 -5
  58. package/dist/logging/logger.mjs.map +6 -0
  59. package/dist/{log → logging}/options.cjs +12 -6
  60. package/dist/logging/options.cjs.map +6 -0
  61. package/dist/{log → logging}/options.d.ts +1 -1
  62. package/dist/{log → logging}/options.mjs +12 -6
  63. package/dist/logging/options.mjs.map +6 -0
  64. package/dist/{log → logging}/report.cjs +11 -11
  65. package/dist/logging/report.cjs.map +6 -0
  66. package/dist/{log → logging}/report.d.ts +1 -1
  67. package/dist/{log → logging}/report.mjs +8 -8
  68. package/dist/logging/report.mjs.map +6 -0
  69. package/dist/{log → logging}/spinner.cjs +1 -1
  70. package/dist/{log → logging}/spinner.cjs.map +1 -1
  71. package/dist/{log → logging}/spinner.d.ts +0 -0
  72. package/dist/{log → logging}/spinner.mjs +1 -1
  73. package/dist/{log → logging}/spinner.mjs.map +1 -1
  74. package/dist/{log.cjs → logging.cjs} +13 -16
  75. package/dist/logging.cjs.map +6 -0
  76. package/dist/logging.d.ts +10 -0
  77. package/dist/{log.mjs → logging.mjs} +10 -13
  78. package/dist/logging.mjs.map +6 -0
  79. package/dist/paths.cjs +25 -27
  80. package/dist/paths.cjs.map +1 -1
  81. package/dist/paths.d.ts +8 -8
  82. package/dist/paths.mjs +23 -25
  83. package/dist/paths.mjs.map +1 -1
  84. package/dist/pipe.cjs +10 -13
  85. package/dist/pipe.cjs.map +1 -1
  86. package/dist/pipe.d.ts +13 -19
  87. package/dist/pipe.mjs +6 -9
  88. package/dist/pipe.mjs.map +1 -1
  89. package/dist/plugs/copy.cjs +14 -14
  90. package/dist/plugs/copy.cjs.map +1 -1
  91. package/dist/plugs/copy.d.ts +1 -1
  92. package/dist/plugs/copy.mjs +3 -3
  93. package/dist/plugs/copy.mjs.map +1 -1
  94. package/dist/plugs/debug.cjs +7 -7
  95. package/dist/plugs/debug.cjs.map +1 -1
  96. package/dist/plugs/debug.d.ts +1 -1
  97. package/dist/plugs/debug.mjs +1 -1
  98. package/dist/plugs/edit.cjs +21 -0
  99. package/dist/plugs/edit.cjs.map +6 -0
  100. package/dist/plugs/edit.d.ts +7 -0
  101. package/dist/plugs/edit.mjs +29 -0
  102. package/dist/plugs/edit.mjs.map +6 -0
  103. package/dist/plugs/esbuild/fix-extensions.cjs +7 -8
  104. package/dist/plugs/esbuild/fix-extensions.cjs.map +1 -1
  105. package/dist/plugs/esbuild/fix-extensions.mjs +4 -5
  106. package/dist/plugs/esbuild/fix-extensions.mjs.map +1 -1
  107. package/dist/plugs/esbuild.cjs +19 -14
  108. package/dist/plugs/esbuild.cjs.map +1 -1
  109. package/dist/plugs/esbuild.d.ts +2 -2
  110. package/dist/plugs/esbuild.mjs +8 -3
  111. package/dist/plugs/esbuild.mjs.map +1 -1
  112. package/dist/plugs/exec.cjs +2 -82
  113. package/dist/plugs/exec.cjs.map +2 -2
  114. package/dist/plugs/exec.d.ts +6 -32
  115. package/dist/plugs/exec.mjs +2 -68
  116. package/dist/plugs/exec.mjs.map +1 -1
  117. package/dist/plugs/filter.d.ts +1 -1
  118. package/dist/plugs/rmf.cjs +5 -5
  119. package/dist/plugs/rmf.cjs.map +1 -1
  120. package/dist/plugs/rmf.d.ts +1 -1
  121. package/dist/plugs/rmf.mjs +2 -2
  122. package/dist/plugs/rmf.mjs.map +1 -1
  123. package/dist/plugs.cjs +1 -4
  124. package/dist/plugs.cjs.map +1 -1
  125. package/dist/plugs.d.ts +1 -4
  126. package/dist/plugs.mjs +1 -4
  127. package/dist/plugs.mjs.map +1 -1
  128. package/dist/types.d.ts +8 -8
  129. package/dist/utils/caller.cjs +8 -5
  130. package/dist/utils/caller.cjs.map +1 -1
  131. package/dist/utils/caller.mjs +6 -3
  132. package/dist/utils/caller.mjs.map +1 -1
  133. package/dist/utils/exec.cjs +102 -0
  134. package/dist/utils/exec.cjs.map +6 -0
  135. package/dist/utils/exec.d.ts +15 -0
  136. package/dist/utils/exec.mjs +71 -0
  137. package/dist/utils/exec.mjs.map +6 -0
  138. package/dist/utils/match.d.ts +1 -1
  139. package/dist/utils/options.d.ts +3 -3
  140. package/dist/utils/walk.cjs +7 -7
  141. package/dist/utils/walk.cjs.map +1 -1
  142. package/dist/utils/walk.mjs +2 -2
  143. package/dist/utils/walk.mjs.map +1 -1
  144. package/dist/{plugs/tsc.cjs → utils.cjs} +9 -7
  145. package/dist/utils.cjs.map +6 -0
  146. package/dist/utils.d.ts +4 -0
  147. package/dist/utils.mjs +6 -0
  148. package/dist/utils.mjs.map +6 -0
  149. package/extra/cli.mjs +26 -5
  150. package/extra/ts-loader.mjs +4 -4
  151. package/package.json +101 -20
  152. package/src/{assert.ts → asserts.ts} +36 -1
  153. package/src/async.ts +3 -1
  154. package/src/build.ts +179 -0
  155. package/src/files.ts +5 -5
  156. package/src/fork.ts +19 -11
  157. package/src/{utils/asyncfs.ts → fs.ts} +7 -6
  158. package/src/helpers.ts +56 -8
  159. package/src/index.ts +30 -8
  160. package/src/{log → logging}/colors.ts +0 -0
  161. package/src/{log → logging}/emit.ts +0 -1
  162. package/src/{log → logging}/levels.ts +0 -0
  163. package/src/{log → logging}/logger.ts +13 -4
  164. package/src/{log → logging}/options.ts +11 -7
  165. package/src/{log → logging}/report.ts +10 -9
  166. package/src/{log → logging}/spinner.ts +0 -0
  167. package/src/{log.ts → logging.ts} +7 -7
  168. package/src/paths.ts +36 -41
  169. package/src/pipe.ts +13 -20
  170. package/src/plugs/copy.ts +4 -4
  171. package/src/plugs/debug.ts +2 -2
  172. package/src/plugs/edit.ts +34 -0
  173. package/src/plugs/esbuild/fix-extensions.ts +2 -2
  174. package/src/plugs/esbuild.ts +13 -7
  175. package/src/plugs/exec.ts +8 -129
  176. package/src/plugs/filter.ts +1 -1
  177. package/src/plugs/rmf.ts +3 -3
  178. package/src/plugs.ts +1 -13
  179. package/src/types.ts +1 -1
  180. package/src/utils/caller.ts +6 -3
  181. package/src/utils/exec.ts +112 -0
  182. package/src/utils/walk.ts +3 -3
  183. package/src/utils.ts +4 -0
  184. package/types/{webassembly.d.ts → plugjs.d.ts} +7 -1
  185. package/dist/assert.cjs +0 -52
  186. package/dist/assert.cjs.map +0 -6
  187. package/dist/assert.d.ts +0 -4
  188. package/dist/assert.mjs +0 -26
  189. package/dist/assert.mjs.map +0 -6
  190. package/dist/failure.cjs.map +0 -6
  191. package/dist/failure.mjs +0 -33
  192. package/dist/failure.mjs.map +0 -6
  193. package/dist/log/logger.cjs.map +0 -6
  194. package/dist/log/logger.mjs.map +0 -6
  195. package/dist/log/options.cjs.map +0 -6
  196. package/dist/log/options.mjs.map +0 -6
  197. package/dist/log/report.cjs.map +0 -6
  198. package/dist/log/report.mjs.map +0 -6
  199. package/dist/log.cjs.map +0 -6
  200. package/dist/log.d.ts +0 -10
  201. package/dist/log.mjs.map +0 -6
  202. package/dist/plugs/coverage/analysis.cjs +0 -234
  203. package/dist/plugs/coverage/analysis.cjs.map +0 -6
  204. package/dist/plugs/coverage/analysis.d.ts +0 -104
  205. package/dist/plugs/coverage/analysis.mjs +0 -207
  206. package/dist/plugs/coverage/analysis.mjs.map +0 -6
  207. package/dist/plugs/coverage/report.cjs +0 -235
  208. package/dist/plugs/coverage/report.cjs.map +0 -6
  209. package/dist/plugs/coverage/report.d.ts +0 -59
  210. package/dist/plugs/coverage/report.mjs +0 -220
  211. package/dist/plugs/coverage/report.mjs.map +0 -6
  212. package/dist/plugs/coverage.cjs +0 -140
  213. package/dist/plugs/coverage.cjs.map +0 -6
  214. package/dist/plugs/coverage.d.ts +0 -49
  215. package/dist/plugs/coverage.mjs +0 -123
  216. package/dist/plugs/coverage.mjs.map +0 -6
  217. package/dist/plugs/eslint/runner.cjs +0 -91
  218. package/dist/plugs/eslint/runner.cjs.map +0 -6
  219. package/dist/plugs/eslint/runner.d.ts +0 -8
  220. package/dist/plugs/eslint/runner.mjs +0 -68
  221. package/dist/plugs/eslint/runner.mjs.map +0 -6
  222. package/dist/plugs/eslint.cjs +0 -22
  223. package/dist/plugs/eslint.cjs.map +0 -6
  224. package/dist/plugs/eslint.d.ts +0 -34
  225. package/dist/plugs/eslint.mjs +0 -5
  226. package/dist/plugs/eslint.mjs.map +0 -6
  227. package/dist/plugs/mocha/reporter.cjs +0 -159
  228. package/dist/plugs/mocha/reporter.cjs.map +0 -6
  229. package/dist/plugs/mocha/reporter.d.ts +0 -6
  230. package/dist/plugs/mocha/reporter.mjs +0 -127
  231. package/dist/plugs/mocha/reporter.mjs.map +0 -6
  232. package/dist/plugs/mocha/runner.cjs +0 -82
  233. package/dist/plugs/mocha/runner.cjs.map +0 -6
  234. package/dist/plugs/mocha/runner.d.ts +0 -8
  235. package/dist/plugs/mocha/runner.mjs +0 -53
  236. package/dist/plugs/mocha/runner.mjs.map +0 -6
  237. package/dist/plugs/mocha.cjs +0 -22
  238. package/dist/plugs/mocha.cjs.map +0 -6
  239. package/dist/plugs/mocha.d.ts +0 -37
  240. package/dist/plugs/mocha.mjs +0 -5
  241. package/dist/plugs/mocha.mjs.map +0 -6
  242. package/dist/plugs/tsc/compiler.cjs +0 -74
  243. package/dist/plugs/tsc/compiler.cjs.map +0 -6
  244. package/dist/plugs/tsc/compiler.d.ts +0 -24
  245. package/dist/plugs/tsc/compiler.mjs +0 -43
  246. package/dist/plugs/tsc/compiler.mjs.map +0 -6
  247. package/dist/plugs/tsc/options.cjs +0 -82
  248. package/dist/plugs/tsc/options.cjs.map +0 -6
  249. package/dist/plugs/tsc/options.d.ts +0 -8
  250. package/dist/plugs/tsc/options.mjs +0 -51
  251. package/dist/plugs/tsc/options.mjs.map +0 -6
  252. package/dist/plugs/tsc/report.cjs +0 -90
  253. package/dist/plugs/tsc/report.cjs.map +0 -6
  254. package/dist/plugs/tsc/report.d.ts +0 -5
  255. package/dist/plugs/tsc/report.mjs +0 -59
  256. package/dist/plugs/tsc/report.mjs.map +0 -6
  257. package/dist/plugs/tsc/runner.cjs +0 -124
  258. package/dist/plugs/tsc/runner.cjs.map +0 -6
  259. package/dist/plugs/tsc/runner.d.ts +0 -8
  260. package/dist/plugs/tsc/runner.mjs +0 -95
  261. package/dist/plugs/tsc/runner.mjs.map +0 -6
  262. package/dist/plugs/tsc.cjs.map +0 -6
  263. package/dist/plugs/tsc.d.ts +0 -48
  264. package/dist/plugs/tsc.mjs +0 -5
  265. package/dist/plugs/tsc.mjs.map +0 -6
  266. package/dist/utils/asyncfs.cjs.map +0 -6
  267. package/dist/utils/asyncfs.mjs.map +0 -6
  268. package/src/failure.ts +0 -43
  269. package/src/plugs/coverage/analysis.ts +0 -400
  270. package/src/plugs/coverage/report.ts +0 -368
  271. package/src/plugs/coverage.ts +0 -216
  272. package/src/plugs/eslint/runner.ts +0 -100
  273. package/src/plugs/eslint.ts +0 -42
  274. package/src/plugs/mocha/reporter.ts +0 -178
  275. package/src/plugs/mocha/runner.ts +0 -66
  276. package/src/plugs/mocha.ts +0 -43
  277. package/src/plugs/tsc/compiler.ts +0 -68
  278. package/src/plugs/tsc/options.ts +0 -100
  279. package/src/plugs/tsc/report.ts +0 -77
  280. package/src/plugs/tsc/runner.ts +0 -133
  281. package/src/plugs/tsc.ts +0 -58
  282. package/types/globals.d.ts +0 -15
@@ -1,51 +0,0 @@
1
- // plugs/tsc/options.ts
2
- import ts from "typescript";
3
- import { getAbsoluteParent, resolveAbsolutePath } from "../../paths.mjs";
4
- import { readFile } from "../../utils/asyncfs.mjs";
5
- function mergeResults(base, override) {
6
- return {
7
- options: { ...base.options, ...override.options },
8
- errors: [...base.errors, ...override.errors]
9
- };
10
- }
11
- async function loadOptions(file, stack = [file]) {
12
- const dir = getAbsoluteParent(file);
13
- const data = await readFile(file, "utf-8");
14
- const { config, error } = ts.parseConfigFileTextToJson(file, data);
15
- if (error)
16
- return { options: {}, errors: [error] };
17
- const { compilerOptions = {}, extends: extendsPath } = config;
18
- const result = ts.convertCompilerOptionsFromJson(compilerOptions, dir, file);
19
- if (result.errors.length)
20
- return result;
21
- if (!extendsPath)
22
- return result;
23
- const ext = resolveAbsolutePath(dir, extendsPath);
24
- if (stack.includes(ext)) {
25
- return { options: {}, errors: [{
26
- messageText: `Circularity detected extending from "${ext}"`,
27
- category: ts.DiagnosticCategory.Error,
28
- code: 18e3,
29
- file: ts.createSourceFile(file, data, ts.ScriptTarget.JSON, false, ts.ScriptKind.JSON),
30
- start: void 0,
31
- length: void 0
32
- }] };
33
- }
34
- return mergeResults(await loadOptions(ext, [...stack, ext]), result);
35
- }
36
- async function getCompilerOptions(file, ...override) {
37
- let result = { options: ts.getDefaultCompilerOptions(), errors: [] };
38
- if (file)
39
- result = mergeResults(result, await loadOptions(file));
40
- if (override.length) {
41
- const [overrides, overridesFile, overridesDir] = override;
42
- const options = ts.convertCompilerOptionsFromJson(overrides, overridesDir, overridesFile);
43
- delete options.options.configFilePath;
44
- result = mergeResults(result, options);
45
- }
46
- return result;
47
- }
48
- export {
49
- getCompilerOptions
50
- };
51
- //# sourceMappingURL=options.mjs.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/plugs/tsc/options.ts"],
4
- "mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAS,mBAAmB,2BAA2B;AACvD,SAAS,gBAAgB;AAazB,SAAS,aACL,MACA,UAC6B;AAC/B,SAAO;AAAA,IACL,SAAS,EAAE,GAAG,KAAK,SAAS,GAAG,SAAS,QAAQ;AAAA,IAChD,QAAQ,CAAE,GAAG,KAAK,QAAQ,GAAG,SAAS,MAAO;AAAA,EAC/C;AACF;AAIA,eAAe,YACX,MACA,QAAwB,CAAE,IAAK,GACO;AACxC,QAAM,MAAM,kBAAkB,IAAI;AAGlC,QAAM,OAAO,MAAM,SAAS,MAAM,OAAO;AACzC,QAAM,EAAE,QAAQ,MAAM,IAAI,GAAG,0BAA0B,MAAM,IAAI;AACjE,MAAI;AAAO,WAAO,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAE,KAAM,EAAE;AAGnD,QAAM,EAAE,kBAAkB,CAAC,GAAG,SAAS,YAAY,IAAI;AACvD,QAAM,SAAS,GAAG,+BAA+B,iBAAiB,KAAK,IAAI;AAC3E,MAAI,OAAO,OAAO;AAAQ,WAAO;AAGjC,MAAI,CAAC;AAAa,WAAO;AAGzB,QAAM,MAAM,oBAAoB,KAAK,WAAW;AAGhD,MAAI,MAAM,SAAS,GAAG,GAAG;AACvB,WAAO,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAE;AAAA,MAC9B,aAAa,wCAAwC;AAAA,MACrD,UAAU,GAAG,mBAAmB;AAAA,MAChC,MAAM;AAAA,MACN,MAAM,GAAG,iBAAiB,MAAM,MAAM,GAAG,aAAa,MAAM,OAAO,GAAG,WAAW,IAAI;AAAA,MACrF,OAAO;AAAA,MACP,QAAQ;AAAA,IACV,CAAE,EAAE;AAAA,EACN;AAGA,SAAO,aAAa,MAAM,YAAY,KAAK,CAAE,GAAG,OAAO,GAAI,CAAC,GAAG,MAAM;AACvE;AAgBA,eAAsB,mBAClB,SACG,UACmC;AACxC,MAAI,SAAwC,EAAE,SAAS,GAAG,0BAA0B,GAAG,QAAQ,CAAC,EAAE;AAGlG,MAAI;AAAM,aAAS,aAAa,QAAQ,MAAM,YAAY,IAAI,CAAC;AAG/D,MAAI,SAAS,QAAQ;AACnB,UAAM,CAAE,WAAW,eAAe,YAAa,IAAI;AACnD,UAAM,UAAU,GAAG,+BAA+B,WAAW,cAAc,aAAa;AACxF,WAAO,QAAQ,QAAQ;AACvB,aAAS,aAAa,QAAQ,OAAO;AAAA,EACvC;AAGA,SAAO;AACT;",
5
- "names": []
6
- }
@@ -1,90 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
-
26
- // plugs/tsc/report.ts
27
- var report_exports = {};
28
- __export(report_exports, {
29
- updateReport: () => updateReport
30
- });
31
- module.exports = __toCommonJS(report_exports);
32
- var import_typescript = __toESM(require("typescript"));
33
- var import_log = require("../../log.cjs");
34
- var import_paths = require("../../paths.cjs");
35
- function convertMessageChain(chain, indent = 0) {
36
- const message = `${"".padStart(indent * 2)}${chain.messageText}`;
37
- if (chain.next) {
38
- const next = chain.next.map((c) => convertMessageChain(c, indent + 1));
39
- return [message, ...next.flat(1)];
40
- } else {
41
- return [message];
42
- }
43
- }
44
- function convertDiagnostics(diagnostics, directory) {
45
- return diagnostics.map((diagnostic) => {
46
- let level;
47
- switch (diagnostic.category) {
48
- case import_typescript.default.DiagnosticCategory.Error:
49
- level = import_log.ERROR;
50
- break;
51
- case import_typescript.default.DiagnosticCategory.Warning:
52
- level = import_log.WARN;
53
- break;
54
- default:
55
- level = import_log.NOTICE;
56
- }
57
- let message;
58
- if (typeof diagnostic.messageText === "string") {
59
- message = diagnostic.messageText;
60
- } else {
61
- message = convertMessageChain(diagnostic.messageText);
62
- }
63
- const tags = `TS${diagnostic.code}`;
64
- if (diagnostic.file) {
65
- const { file: sourceFile, start, length } = diagnostic;
66
- const file = (0, import_paths.resolveAbsolutePath)(directory, sourceFile.fileName);
67
- const source = sourceFile.getFullText();
68
- if (start !== void 0) {
69
- const position = sourceFile.getLineAndCharacterOfPosition(start);
70
- let { line, character: column } = position;
71
- column += 1;
72
- line += 1;
73
- return { level, message, tags, file, source, line, column, length };
74
- } else {
75
- return { level, message, tags, file, source };
76
- }
77
- } else {
78
- return { level, message, tags };
79
- }
80
- });
81
- }
82
- function updateReport(report, diagnostics, directory) {
83
- const records = convertDiagnostics(diagnostics, directory);
84
- report.add(...records);
85
- }
86
- // Annotate the CommonJS export names for ESM import in node:
87
- 0 && (module.exports = {
88
- updateReport
89
- });
90
- //# sourceMappingURL=report.cjs.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/plugs/tsc/report.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAe;AAEf,iBAAoC;AACpC,mBAAoC;AAKpC,SAAS,oBAAoB,OAAkC,SAAS,GAAa;AACnF,QAAM,UAAU,GAAG,GAAG,SAAS,SAAS,CAAC,IAAI,MAAM;AAEnD,MAAI,MAAM,MAAM;AACd,UAAM,OAAO,MAAM,KAAK,IAAI,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAAC,CAAC;AACrE,WAAO,CAAE,SAAS,GAAG,KAAK,KAAK,CAAC,CAAE;AAAA,EACpC,OAAO;AACL,WAAO,CAAE,OAAQ;AAAA,EACnB;AACF;AAEA,SAAS,mBACL,aACA,WACc;AAChB,SAAO,YAAY,IAAI,CAAC,eAA6B;AAKnD,QAAI;AACJ,YAAQ,WAAW,UAAU;AAAA,MAC3B,KAAK,kBAAAA,QAAG,mBAAmB;AAAO,gBAAQ;AAAO;AAAA,MACjD,KAAK,kBAAAA,QAAG,mBAAmB;AAAS,gBAAQ;AAAM;AAAA,MAClD;AAAS,gBAAQ;AAAA,IACnB;AAGA,QAAI;AACJ,QAAI,OAAO,WAAW,gBAAgB,UAAU;AAC9C,gBAAU,WAAW;AAAA,IACvB,OAAO;AACL,gBAAU,oBAAoB,WAAW,WAAW;AAAA,IACtD;AAGA,UAAM,OAAO,KAAK,WAAW;AAG7B,QAAI,WAAW,MAAM;AACnB,YAAM,EAAE,MAAM,YAAY,OAAO,OAAO,IAAI;AAC5C,YAAM,WAAO,kCAAoB,WAAW,WAAW,QAAQ;AAC/D,YAAM,SAAS,WAAW,YAAY;AAEtC,UAAI,UAAU,QAAW;AACvB,cAAM,WAAW,WAAW,8BAA8B,KAAK;AAC/D,YAAI,EAAE,MAAM,WAAW,OAAO,IAAI;AAClC,kBAAU;AACV,gBAAQ;AAER,eAAO,EAAE,OAAO,SAAS,MAAM,MAAM,QAAQ,MAAM,QAAQ,OAAO;AAAA,MACpE,OAAO;AACL,eAAO,EAAE,OAAO,SAAS,MAAM,MAAM,OAAO;AAAA,MAC9C;AAAA,IACF,OAAO;AACL,aAAO,EAAE,OAAO,SAAS,KAAK;AAAA,IAChC;AAAA,EACF,CAAC;AACH;AAGO,SAAS,aACZ,QACA,aACA,WACI;AACN,QAAM,UAAU,mBAAmB,aAAa,SAAS;AACzD,SAAO,IAAI,GAAG,OAAO;AACvB;",
5
- "names": ["ts"]
6
- }
@@ -1,5 +0,0 @@
1
- import ts from 'typescript';
2
- import type { Report } from '../../log';
3
- import type { AbsolutePath } from '../../paths';
4
- /** Update a report, adding records from an array of {@link ts.Diagnostic} */
5
- export declare function updateReport(report: Report, diagnostics: readonly ts.Diagnostic[], directory: AbsolutePath): void;
@@ -1,59 +0,0 @@
1
- // plugs/tsc/report.ts
2
- import ts from "typescript";
3
- import { ERROR, NOTICE, WARN } from "../../log.mjs";
4
- import { resolveAbsolutePath } from "../../paths.mjs";
5
- function convertMessageChain(chain, indent = 0) {
6
- const message = `${"".padStart(indent * 2)}${chain.messageText}`;
7
- if (chain.next) {
8
- const next = chain.next.map((c) => convertMessageChain(c, indent + 1));
9
- return [message, ...next.flat(1)];
10
- } else {
11
- return [message];
12
- }
13
- }
14
- function convertDiagnostics(diagnostics, directory) {
15
- return diagnostics.map((diagnostic) => {
16
- let level;
17
- switch (diagnostic.category) {
18
- case ts.DiagnosticCategory.Error:
19
- level = ERROR;
20
- break;
21
- case ts.DiagnosticCategory.Warning:
22
- level = WARN;
23
- break;
24
- default:
25
- level = NOTICE;
26
- }
27
- let message;
28
- if (typeof diagnostic.messageText === "string") {
29
- message = diagnostic.messageText;
30
- } else {
31
- message = convertMessageChain(diagnostic.messageText);
32
- }
33
- const tags = `TS${diagnostic.code}`;
34
- if (diagnostic.file) {
35
- const { file: sourceFile, start, length } = diagnostic;
36
- const file = resolveAbsolutePath(directory, sourceFile.fileName);
37
- const source = sourceFile.getFullText();
38
- if (start !== void 0) {
39
- const position = sourceFile.getLineAndCharacterOfPosition(start);
40
- let { line, character: column } = position;
41
- column += 1;
42
- line += 1;
43
- return { level, message, tags, file, source, line, column, length };
44
- } else {
45
- return { level, message, tags, file, source };
46
- }
47
- } else {
48
- return { level, message, tags };
49
- }
50
- });
51
- }
52
- function updateReport(report, diagnostics, directory) {
53
- const records = convertDiagnostics(diagnostics, directory);
54
- report.add(...records);
55
- }
56
- export {
57
- updateReport
58
- };
59
- //# sourceMappingURL=report.mjs.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/plugs/tsc/report.ts"],
4
- "mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAS,OAAO,QAAQ,YAAY;AACpC,SAAS,2BAA2B;AAKpC,SAAS,oBAAoB,OAAkC,SAAS,GAAa;AACnF,QAAM,UAAU,GAAG,GAAG,SAAS,SAAS,CAAC,IAAI,MAAM;AAEnD,MAAI,MAAM,MAAM;AACd,UAAM,OAAO,MAAM,KAAK,IAAI,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAAC,CAAC;AACrE,WAAO,CAAE,SAAS,GAAG,KAAK,KAAK,CAAC,CAAE;AAAA,EACpC,OAAO;AACL,WAAO,CAAE,OAAQ;AAAA,EACnB;AACF;AAEA,SAAS,mBACL,aACA,WACc;AAChB,SAAO,YAAY,IAAI,CAAC,eAA6B;AAKnD,QAAI;AACJ,YAAQ,WAAW,UAAU;AAAA,MAC3B,KAAK,GAAG,mBAAmB;AAAO,gBAAQ;AAAO;AAAA,MACjD,KAAK,GAAG,mBAAmB;AAAS,gBAAQ;AAAM;AAAA,MAClD;AAAS,gBAAQ;AAAA,IACnB;AAGA,QAAI;AACJ,QAAI,OAAO,WAAW,gBAAgB,UAAU;AAC9C,gBAAU,WAAW;AAAA,IACvB,OAAO;AACL,gBAAU,oBAAoB,WAAW,WAAW;AAAA,IACtD;AAGA,UAAM,OAAO,KAAK,WAAW;AAG7B,QAAI,WAAW,MAAM;AACnB,YAAM,EAAE,MAAM,YAAY,OAAO,OAAO,IAAI;AAC5C,YAAM,OAAO,oBAAoB,WAAW,WAAW,QAAQ;AAC/D,YAAM,SAAS,WAAW,YAAY;AAEtC,UAAI,UAAU,QAAW;AACvB,cAAM,WAAW,WAAW,8BAA8B,KAAK;AAC/D,YAAI,EAAE,MAAM,WAAW,OAAO,IAAI;AAClC,kBAAU;AACV,gBAAQ;AAER,eAAO,EAAE,OAAO,SAAS,MAAM,MAAM,QAAQ,MAAM,QAAQ,OAAO;AAAA,MACpE,OAAO;AACL,eAAO,EAAE,OAAO,SAAS,MAAM,MAAM,OAAO;AAAA,MAC9C;AAAA,IACF,OAAO;AACL,aAAO,EAAE,OAAO,SAAS,KAAK;AAAA,IAChC;AAAA,EACF,CAAC;AACH;AAGO,SAAS,aACZ,QACA,aACA,WACI;AACN,QAAM,UAAU,mBAAmB,aAAa,SAAS;AACzD,SAAO,IAAI,GAAG,OAAO;AACvB;",
5
- "names": []
6
- }
@@ -1,124 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
-
26
- // plugs/tsc/runner.ts
27
- var runner_exports = {};
28
- __export(runner_exports, {
29
- default: () => Tsc
30
- });
31
- module.exports = __toCommonJS(runner_exports);
32
- var import_typescript = __toESM(require("typescript"));
33
- var import_assert = require("../../assert.cjs");
34
- var import_failure = require("../../failure.cjs");
35
- var import_files = require("../../files.cjs");
36
- var import_log = require("../../log.cjs");
37
- var import_paths = require("../../paths.cjs");
38
- var import_options = require("../../utils/options.cjs");
39
- var import_walk = require("../../utils/walk.cjs");
40
- var import_compiler = require("./compiler.cjs");
41
- var import_options2 = require("./options.cjs");
42
- var import_report = require("./report.cjs");
43
- var Tsc = class {
44
- _tsconfig;
45
- _options;
46
- constructor(...args) {
47
- const { params: [tsconfig], options } = (0, import_options.parseOptions)(args, {});
48
- this._tsconfig = tsconfig;
49
- this._options = options;
50
- }
51
- async pipe(files, context) {
52
- const baseDir = context.resolve(".");
53
- const report = context.log.report("TypeScript Report");
54
- const { extraTypesDir, ...overrides } = { ...this._options };
55
- const sourcesConfig = (0, import_paths.resolveFile)(files.directory, "tsconfig.json");
56
- const tsconfig = this._tsconfig ? context.resolve(this._tsconfig) : sourcesConfig || (0, import_paths.resolveFile)(context.resolve("tsconfig.json"));
57
- let rootDir;
58
- if (overrides.rootDir) {
59
- rootDir = overrides.rootDir = context.resolve(overrides.rootDir);
60
- } else {
61
- rootDir = overrides.rootDir = files.directory;
62
- }
63
- let outDir;
64
- if (overrides.outDir) {
65
- outDir = overrides.outDir = context.resolve(overrides.outDir);
66
- } else {
67
- outDir = overrides.outDir = rootDir;
68
- }
69
- if (overrides.rootDirs) {
70
- overrides.rootDirs = overrides.rootDirs.map((dir) => context.resolve(dir));
71
- }
72
- if (overrides.baseUrl)
73
- overrides.baseUrl = context.resolve(overrides.baseUrl);
74
- const { errors, options } = await (0, import_options2.getCompilerOptions)(
75
- tsconfig,
76
- overrides,
77
- context.buildFile,
78
- baseDir
79
- );
80
- (0, import_report.updateReport)(report, errors, baseDir);
81
- if (report.errors)
82
- report.done(true);
83
- const paths = [...files.absolutePaths()];
84
- for (const path of paths)
85
- import_log.log.trace(`Compiling "${(0, import_log.$p)(path)}"`);
86
- import_log.log.info("Compiling", paths.length, "files");
87
- if (extraTypesDir) {
88
- const directory = context.resolve(extraTypesDir);
89
- for await (const file of (0, import_walk.walk)(directory, ["**/*.d.ts"])) {
90
- const path = (0, import_paths.resolveAbsolutePath)(directory, file);
91
- import_log.log.debug(`Including extra type file "${(0, import_log.$p)(path)}"`);
92
- paths.push(path);
93
- }
94
- }
95
- import_log.log.debug("Compliation options", options);
96
- const host = new import_compiler.TypeScriptHost(rootDir);
97
- const program = import_typescript.default.createProgram(paths, options, host, void 0, errors);
98
- const diagnostics = import_typescript.default.getPreEmitDiagnostics(program);
99
- (0, import_report.updateReport)(report, diagnostics, rootDir);
100
- if (report.errors)
101
- report.done(true);
102
- const builder = import_files.Files.builder(outDir);
103
- const promises = [];
104
- const result = program.emit(void 0, (fileName, code) => {
105
- promises.push(builder.write(fileName, code).then((file) => {
106
- import_log.log.trace("Written", (0, import_log.$p)(file));
107
- }).catch((error) => {
108
- const outFile = (0, import_paths.resolveAbsolutePath)(outDir, fileName);
109
- import_log.log.error("Error writing to", (0, import_log.$p)(outFile), error);
110
- throw import_failure.BuildFailure.fail();
111
- }));
112
- });
113
- await (0, import_assert.assertPromises)(promises);
114
- (0, import_report.updateReport)(report, result.diagnostics, rootDir);
115
- if (report.errors)
116
- report.done(true);
117
- const outputs = builder.build();
118
- import_log.log.info("TSC produced", outputs.length, "files into", (0, import_log.$p)(outputs.directory));
119
- return outputs;
120
- }
121
- };
122
- // Annotate the CommonJS export names for ESM import in node:
123
- 0 && (module.exports = {});
124
- //# sourceMappingURL=runner.cjs.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/plugs/tsc/runner.ts"],
4
- "mappings": "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",
5
- "names": ["import_options", "ts"]
6
- }
@@ -1,8 +0,0 @@
1
- import { Files } from '../../files';
2
- import type { Context, PipeParameters, Plug } from '../../pipe';
3
- export default class Tsc implements Plug<Files> {
4
- private readonly _tsconfig?;
5
- private readonly _options;
6
- constructor(...args: PipeParameters<'tsc'>);
7
- pipe(files: Files, context: Context): Promise<Files>;
8
- }
@@ -1,95 +0,0 @@
1
- // plugs/tsc/runner.ts
2
- import ts from "typescript";
3
- import { assertPromises } from "../../assert.mjs";
4
- import { BuildFailure } from "../../failure.mjs";
5
- import { Files } from "../../files.mjs";
6
- import { $p, log } from "../../log.mjs";
7
- import { resolveAbsolutePath, resolveFile } from "../../paths.mjs";
8
- import { parseOptions } from "../../utils/options.mjs";
9
- import { walk } from "../../utils/walk.mjs";
10
- import { TypeScriptHost } from "./compiler.mjs";
11
- import { getCompilerOptions } from "./options.mjs";
12
- import { updateReport } from "./report.mjs";
13
- var Tsc = class {
14
- _tsconfig;
15
- _options;
16
- constructor(...args) {
17
- const { params: [tsconfig], options } = parseOptions(args, {});
18
- this._tsconfig = tsconfig;
19
- this._options = options;
20
- }
21
- async pipe(files, context) {
22
- const baseDir = context.resolve(".");
23
- const report = context.log.report("TypeScript Report");
24
- const { extraTypesDir, ...overrides } = { ...this._options };
25
- const sourcesConfig = resolveFile(files.directory, "tsconfig.json");
26
- const tsconfig = this._tsconfig ? context.resolve(this._tsconfig) : sourcesConfig || resolveFile(context.resolve("tsconfig.json"));
27
- let rootDir;
28
- if (overrides.rootDir) {
29
- rootDir = overrides.rootDir = context.resolve(overrides.rootDir);
30
- } else {
31
- rootDir = overrides.rootDir = files.directory;
32
- }
33
- let outDir;
34
- if (overrides.outDir) {
35
- outDir = overrides.outDir = context.resolve(overrides.outDir);
36
- } else {
37
- outDir = overrides.outDir = rootDir;
38
- }
39
- if (overrides.rootDirs) {
40
- overrides.rootDirs = overrides.rootDirs.map((dir) => context.resolve(dir));
41
- }
42
- if (overrides.baseUrl)
43
- overrides.baseUrl = context.resolve(overrides.baseUrl);
44
- const { errors, options } = await getCompilerOptions(
45
- tsconfig,
46
- overrides,
47
- context.buildFile,
48
- baseDir
49
- );
50
- updateReport(report, errors, baseDir);
51
- if (report.errors)
52
- report.done(true);
53
- const paths = [...files.absolutePaths()];
54
- for (const path of paths)
55
- log.trace(`Compiling "${$p(path)}"`);
56
- log.info("Compiling", paths.length, "files");
57
- if (extraTypesDir) {
58
- const directory = context.resolve(extraTypesDir);
59
- for await (const file of walk(directory, ["**/*.d.ts"])) {
60
- const path = resolveAbsolutePath(directory, file);
61
- log.debug(`Including extra type file "${$p(path)}"`);
62
- paths.push(path);
63
- }
64
- }
65
- log.debug("Compliation options", options);
66
- const host = new TypeScriptHost(rootDir);
67
- const program = ts.createProgram(paths, options, host, void 0, errors);
68
- const diagnostics = ts.getPreEmitDiagnostics(program);
69
- updateReport(report, diagnostics, rootDir);
70
- if (report.errors)
71
- report.done(true);
72
- const builder = Files.builder(outDir);
73
- const promises = [];
74
- const result = program.emit(void 0, (fileName, code) => {
75
- promises.push(builder.write(fileName, code).then((file) => {
76
- log.trace("Written", $p(file));
77
- }).catch((error) => {
78
- const outFile = resolveAbsolutePath(outDir, fileName);
79
- log.error("Error writing to", $p(outFile), error);
80
- throw BuildFailure.fail();
81
- }));
82
- });
83
- await assertPromises(promises);
84
- updateReport(report, result.diagnostics, rootDir);
85
- if (report.errors)
86
- report.done(true);
87
- const outputs = builder.build();
88
- log.info("TSC produced", outputs.length, "files into", $p(outputs.directory));
89
- return outputs;
90
- }
91
- };
92
- export {
93
- Tsc as default
94
- };
95
- //# sourceMappingURL=runner.mjs.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/plugs/tsc/runner.ts"],
4
- "mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAS,sBAAsB;AAC/B,SAAS,oBAAoB;AAC7B,SAAS,aAAa;AACtB,SAAS,IAAI,WAAW;AACxB,SAAS,qBAAqB,mBAAmB;AACjD,SAAS,oBAAoB;AAC7B,SAAS,YAAY;AACrB,SAAS,sBAAsB;AAC/B,SAAS,0BAA0B;AACnC,SAAS,oBAAoB;AAU7B,IAAqB,MAArB,MAAgD;AAAA,EAC7B;AAAA,EACA;AAAA,EAEjB,eAAe,MAA6B;AAC1C,UAAM,EAAE,QAAQ,CAAE,QAAS,GAAG,QAAQ,IAAI,aAAa,MAAM,CAAC,CAAC;AAC/D,SAAK,YAAY;AACjB,SAAK,WAAW;AAAA,EAClB;AAAA,EAEA,MAAM,KAAK,OAAc,SAAkC;AACzD,UAAM,UAAU,QAAQ,QAAQ,GAAG;AACnC,UAAM,SAAS,QAAQ,IAAI,OAAO,mBAAmB;AACrD,UAAM,EAAE,kBAAkB,UAAU,IAAI,EAAE,GAAG,KAAK,SAAS;AAM3D,UAAM,gBAAgB,YAAY,MAAM,WAAW,eAAe;AAClE,UAAM,WAAW,KAAK,YAAY,QAAQ,QAAQ,KAAK,SAAS,IAC9D,iBAAiB,YAAY,QAAQ,QAAQ,eAAe,CAAC;AAG/D,QAAI;AACJ,QAAI,UAAU,SAAS;AACrB,gBAAU,UAAU,UAAU,QAAQ,QAAQ,UAAU,OAAO;AAAA,IACjE,OAAO;AACL,gBAAU,UAAU,UAAU,MAAM;AAAA,IACtC;AAGA,QAAI;AACJ,QAAI,UAAU,QAAQ;AACpB,eAAS,UAAU,SAAS,QAAQ,QAAQ,UAAU,MAAM;AAAA,IAC9D,OAAO;AACL,eAAS,UAAU,SAAS;AAAA,IAC9B;AAGA,QAAI,UAAU,UAAU;AACtB,gBAAU,WAAW,UAAU,SAAS,IAAI,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC;AAAA,IAC3E;AAGA,QAAI,UAAU;AAAS,gBAAU,UAAU,QAAQ,QAAQ,UAAU,OAAO;AAG5E,UAAM,EAAE,QAAQ,QAAQ,IAAI,MAAM;AAAA,MAC9B;AAAA,MACA;AAAA,MACA,QAAQ;AAAA,MACR;AAAA,IAAO;AAGX,iBAAa,QAAQ,QAAQ,OAAO;AACpC,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAGnC,UAAM,QAAQ,CAAE,GAAG,MAAM,cAAc,CAAE;AACzC,eAAW,QAAQ;AAAO,UAAI,MAAM,cAAc,GAAG,IAAI,IAAI;AAC7D,QAAI,KAAK,aAAa,MAAM,QAAQ,OAAO;AAG3C,QAAI,eAAe;AACjB,YAAM,YAAY,QAAQ,QAAQ,aAAa;AAE/C,uBAAiB,QAAQ,KAAK,WAAW,CAAE,WAAY,CAAC,GAAG;AACzD,cAAM,OAAO,oBAAoB,WAAW,IAAI;AAChD,YAAI,MAAM,8BAA8B,GAAG,IAAI,IAAI;AACnD,cAAM,KAAK,IAAI;AAAA,MACjB;AAAA,IACF;AAGA,QAAI,MAAM,uBAAuB,OAAO;AAGxC,UAAM,OAAO,IAAI,eAAe,OAAO;AACvC,UAAM,UAAU,GAAG,cAAc,OAAO,SAAS,MAAM,QAAW,MAAM;AACxE,UAAM,cAAc,GAAG,sBAAsB,OAAO;AAGpD,iBAAa,QAAQ,aAAa,OAAO;AACzC,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAGnC,UAAM,UAAU,MAAM,QAAQ,MAAM;AACpC,UAAM,WAA4B,CAAC;AACnC,UAAM,SAAS,QAAQ,KAAK,QAAW,CAAC,UAAU,SAAS;AACzD,eAAS,KAAK,QAAQ,MAAM,UAAU,IAAI,EAAE,KAAK,CAAC,SAAS;AACzD,YAAI,MAAM,WAAW,GAAG,IAAI,CAAC;AAAA,MAC/B,CAAC,EAAE,MAAM,CAAC,UAAU;AAClB,cAAM,UAAU,oBAAoB,QAAQ,QAAQ;AACpD,YAAI,MAAM,oBAAoB,GAAG,OAAO,GAAG,KAAK;AAChD,cAAM,aAAa,KAAK;AAAA,MAC1B,CAAC,CAAC;AAAA,IACJ,CAAC;AAGD,UAAM,eAAe,QAAQ;AAG7B,iBAAa,QAAQ,OAAO,aAAa,OAAO;AAChD,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAGnC,UAAM,UAAU,QAAQ,MAAM;AAC9B,QAAI,KAAK,gBAAgB,QAAQ,QAAQ,cAAc,GAAG,QAAQ,SAAS,CAAC;AAC5E,WAAO;AAAA,EACT;AACF;",
5
- "names": []
6
- }
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/plugs/tsc.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,kBAA+B;AAC/B,mBAA+B;AAAA,IAwD/B,4BAAe,WAAO,6BAAe,YAAW,cAAc,CAAC;",
5
- "names": []
6
- }
@@ -1,48 +0,0 @@
1
- import type { CompilerOptions } from 'typescript';
2
- /** TypeScript Compiler options with some additional properties */
3
- export interface ExtendedCompilerOptions extends CompilerOptions {
4
- /**
5
- * An additional directory containing a set of `.d.ts` files which will
6
- * be part of the compilation input, but not of the output.
7
- *
8
- * This can be useful when requiring (or fixing) specific types while
9
- * compiling a project, but the definition of those types does not affect
10
- * the resulting files (e.g. used only internally).
11
- */
12
- extraTypesDir?: string | undefined;
13
- }
14
- declare module '../pipe' {
15
- interface Pipe {
16
- /**
17
- * Run the {@link https://www.typescriptlang.org/ TypeScript Compiler}
18
- * over the input source files, using the default `tsconfig.json` file.
19
- */
20
- tsc(): Pipe;
21
- /**
22
- * Run the {@link https://www.typescriptlang.org/ TypeScript Compiler}
23
- * over the input source files, specifying the `tsconfig.json` file.
24
- *
25
- * @param configFile The `tsconfig.json` file to use.
26
- */
27
- tsc(configFile: string): Pipe;
28
- /**
29
- * Run the {@link https://www.typescriptlang.org/ TypeScript Compiler}
30
- * over the input source files, using the default `tsconfig.json` file
31
- * and overriding some options
32
- *
33
- * @param options {@link ExtendedCompilerOptions | Options} overriding
34
- * the contents of the default `tsconfig.json`.
35
- */
36
- tsc(options: ExtendedCompilerOptions): Pipe;
37
- /**
38
- * Run the {@link https://www.typescriptlang.org/ TypeScript Compiler}
39
- * over the input source files, specifying the `tsconfig.json` file
40
- * and overriding some options
41
- *
42
- * @param configFile The `tsconfig.json` file to use.
43
- * @param options {@link ExtendedCompilerOptions | Options} overriding
44
- * the contents of the specified `tsconfig.json`.
45
- */
46
- tsc(configFile: string, options: ExtendedCompilerOptions): Pipe;
47
- }
48
- }
@@ -1,5 +0,0 @@
1
- // plugs/tsc.ts
2
- import { installForking } from "../fork.mjs";
3
- import { requireResolve } from "../paths.mjs";
4
- installForking("tsc", requireResolve(import.meta.url, "./tsc/runner"));
5
- //# sourceMappingURL=tsc.mjs.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/plugs/tsc.ts"],
4
- "mappings": ";AAAA,SAAS,sBAAsB;AAC/B,SAAS,sBAAsB;AAwD/B,eAAe,OAAO,eAAe,iBAAW,cAAc,CAAC;",
5
- "names": []
6
- }
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/utils/asyncfs.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA0B;AAC1B,sBAAgB;AA0BhB,IAAM,KAAK,OAAO,QAAQ,gBAAAA,OAAU,EAAE,OAAO,CAACC,KAAI,CAAE,KAAK,GAAI,MAAM;AACjE,MAAI,OAAO,QAAQ,YAAY;AAE7B,UAAM,IAAI,YAAY,MAAkB;AAEtC,aAAO,IAAI,MAAM,gBAAAD,SAAK,IAAI,EAAE,MAAM,CAAC,UAAe;AAEhD,cAAM,kBAAkB,KAAK;AAC7B,cAAM;AAAA,MACR,CAAC;AAAA,IACH;AAGA,WAAO,eAAe,GAAG,QAAQ,EAAE,OAAO,IAAI,CAAC;AAE/C,IAAAC,IAAG,OAAO;AAAA,EACZ;AAGA,SAAOA;AACT,GAAG,CAAC,CAAQ;AAIL,IAAM,SAAS,GAAG;AAClB,IAAM,WAAW,GAAG;AACpB,IAAM,KAAK,GAAG;AACd,IAAM,OAAO,GAAG;AAChB,IAAM,UAAU,GAAG;AACnB,IAAM,SAAS,GAAG;AAClB,IAAM,WAAW,GAAG;AACpB,IAAM,KAAK,GAAG;AACd,IAAM,QAAQ,GAAG;AACjB,IAAM,QAAQ,GAAG;AACjB,IAAM,UAAU,GAAG;AACnB,IAAM,WAAW,GAAG;AACpB,IAAM,UAAU,GAAG;AACnB,IAAM,QAAQ,GAAG;AACjB,IAAM,OAAO,GAAG;AAChB,IAAM,OAAO,GAAG;AAChB,IAAM,SAAS,GAAG;AAClB,IAAM,QAAQ,GAAG;AACjB,IAAM,SAAS,GAAG;AAClB,IAAM,SAAS,GAAG;AAClB,IAAM,QAAQ,GAAG;AACjB,IAAM,SAAS,GAAG;AAClB,IAAM,UAAU,GAAG;AACnB,IAAM,WAAW,GAAG;AACpB,IAAM,UAAU,GAAG;AACnB,IAAM,YAAY,GAAG;AACrB,IAAM,aAAa,GAAG;AACtB,IAAM,WAAW,GAAG;AACpB,IAAM,QAAQ,GAAG;AAGjB,IAAM,cAAc;",
5
- "names": ["fsp", "fs"]
6
- }
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/utils/asyncfs.ts"],
4
- "mappings": ";AAAA,SAAS,iBAAiB;AAC1B,OAAO,SAAS;AA0BhB,IAAM,KAAK,OAAO,QAAQ,GAAU,EAAE,OAAO,CAACA,KAAI,CAAE,KAAK,GAAI,MAAM;AACjE,MAAI,OAAO,QAAQ,YAAY;AAE7B,UAAM,IAAI,YAAY,MAAkB;AAEtC,aAAO,IAAI,MAAM,KAAK,IAAI,EAAE,MAAM,CAAC,UAAe;AAEhD,cAAM,kBAAkB,KAAK;AAC7B,cAAM;AAAA,MACR,CAAC;AAAA,IACH;AAGA,WAAO,eAAe,GAAG,QAAQ,EAAE,OAAO,IAAI,CAAC;AAE/C,IAAAA,IAAG,OAAO;AAAA,EACZ;AAGA,SAAOA;AACT,GAAG,CAAC,CAAQ;AAIL,IAAM,SAAS,GAAG;AAClB,IAAM,WAAW,GAAG;AACpB,IAAM,KAAK,GAAG;AACd,IAAM,OAAO,GAAG;AAChB,IAAM,UAAU,GAAG;AACnB,IAAM,SAAS,GAAG;AAClB,IAAM,WAAW,GAAG;AACpB,IAAM,KAAK,GAAG;AACd,IAAM,QAAQ,GAAG;AACjB,IAAM,QAAQ,GAAG;AACjB,IAAM,UAAU,GAAG;AACnB,IAAM,WAAW,GAAG;AACpB,IAAM,UAAU,GAAG;AACnB,IAAM,QAAQ,GAAG;AACjB,IAAM,OAAO,GAAG;AAChB,IAAM,OAAO,GAAG;AAChB,IAAM,SAAS,GAAG;AAClB,IAAM,QAAQ,GAAG;AACjB,IAAM,SAAS,GAAG;AAClB,IAAM,SAAS,GAAG;AAClB,IAAM,QAAQ,GAAG;AACjB,IAAM,SAAS,GAAG;AAClB,IAAM,UAAU,GAAG;AACnB,IAAM,WAAW,GAAG;AACpB,IAAM,UAAU,GAAG;AACnB,IAAM,YAAY,GAAG;AACrB,IAAM,aAAa,GAAG;AACtB,IAAM,WAAW,GAAG;AACpB,IAAM,QAAQ,GAAG;AAGjB,IAAM,cAAc;",
5
- "names": ["fs"]
6
- }
package/src/failure.ts DELETED
@@ -1,43 +0,0 @@
1
- /** A symbol marking {@link BuildFailure} instances */
2
- const buildFailure = Symbol.for('plugjs:buildFailure')
3
-
4
- /** Check if the specified argument is a {@link BuildFailure} */
5
- export function isBuildFailure(arg: any): arg is BuildFailure {
6
- return arg && arg[buildFailure] === buildFailure
7
- }
8
-
9
- /** A {@link BuildFailure} represents an error _already logged_ in our build. */
10
- export class BuildFailure extends Error {
11
- readonly errors!: readonly any[]
12
- logged: boolean
13
-
14
- /** Construct a {@link BuildFailure} */
15
- private constructor(message: string | undefined, errors: any[]) {
16
- super(message || '')
17
-
18
- /* Filter out any previously logged build failure */
19
- errors = errors.filter((e) => ! (isBuildFailure(e) && e.logged))
20
-
21
- /* Basic error setup, stack and marker */
22
- Error.captureStackTrace(this, BuildFailure)
23
- Object.defineProperties(this, {
24
- 'errors': { value: Object.freeze(errors) },
25
- [buildFailure]: { value: buildFailure },
26
- })
27
-
28
- /* Request logging only if we have a message or some errors */
29
- this.logged = ! (message || errors.length)
30
- }
31
-
32
- static fail(): BuildFailure {
33
- return new BuildFailure(undefined, [])
34
- }
35
-
36
- static withMessage(message: string): BuildFailure {
37
- return new BuildFailure(message || undefined, [])
38
- }
39
-
40
- static withErrors(errors: any[]): BuildFailure {
41
- return new BuildFailure(undefined, errors)
42
- }
43
- }