@plugjs/plug 0.0.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.
- package/LICENSE.md +211 -0
- package/NOTICE.md +13 -0
- package/README.md +7 -0
- package/dist/assert.cjs +72 -0
- package/dist/assert.cjs.map +6 -0
- package/dist/assert.mjs +41 -0
- package/dist/assert.mjs.map +6 -0
- package/dist/async.cjs +58 -0
- package/dist/async.cjs.map +6 -0
- package/dist/async.mjs +30 -0
- package/dist/async.mjs.map +6 -0
- package/dist/build.cjs +136 -0
- package/dist/build.cjs.map +6 -0
- package/dist/build.mjs +110 -0
- package/dist/build.mjs.map +6 -0
- package/dist/files.cjs +113 -0
- package/dist/files.cjs.map +6 -0
- package/dist/files.mjs +88 -0
- package/dist/files.mjs.map +6 -0
- package/dist/fork.cjs +177 -0
- package/dist/fork.cjs.map +6 -0
- package/dist/fork.mjs +151 -0
- package/dist/fork.mjs.map +6 -0
- package/dist/helpers.cjs +129 -0
- package/dist/helpers.cjs.map +6 -0
- package/dist/helpers.mjs +97 -0
- package/dist/helpers.mjs.map +6 -0
- package/dist/index.cjs +25 -0
- package/dist/index.cjs.map +6 -0
- package/dist/index.mjs +7 -0
- package/dist/index.mjs.map +6 -0
- package/dist/log/colors.cjs +129 -0
- package/dist/log/colors.cjs.map +6 -0
- package/dist/log/colors.mjs +93 -0
- package/dist/log/colors.mjs.map +6 -0
- package/dist/log/emit.cjs +109 -0
- package/dist/log/emit.cjs.map +6 -0
- package/dist/log/emit.mjs +83 -0
- package/dist/log/emit.mjs.map +6 -0
- package/dist/log/levels.cjs +75 -0
- package/dist/log/levels.cjs.map +6 -0
- package/dist/log/levels.mjs +41 -0
- package/dist/log/levels.mjs.map +6 -0
- package/dist/log/logger.cjs +129 -0
- package/dist/log/logger.cjs.map +6 -0
- package/dist/log/logger.mjs +104 -0
- package/dist/log/logger.mjs.map +6 -0
- package/dist/log/options.cjs +149 -0
- package/dist/log/options.cjs.map +6 -0
- package/dist/log/options.mjs +124 -0
- package/dist/log/options.mjs.map +6 -0
- package/dist/log/report.cjs +284 -0
- package/dist/log/report.cjs.map +6 -0
- package/dist/log/report.mjs +259 -0
- package/dist/log/report.mjs.map +6 -0
- package/dist/log/spinner.cjs +83 -0
- package/dist/log/spinner.cjs.map +6 -0
- package/dist/log/spinner.mjs +57 -0
- package/dist/log/spinner.mjs.map +6 -0
- package/dist/log.cjs +71 -0
- package/dist/log.cjs.map +6 -0
- package/dist/log.mjs +45 -0
- package/dist/log.mjs.map +6 -0
- package/dist/paths.cjs +158 -0
- package/dist/paths.cjs.map +6 -0
- package/dist/paths.mjs +122 -0
- package/dist/paths.mjs.map +6 -0
- package/dist/pipe.cjs +71 -0
- package/dist/pipe.cjs.map +6 -0
- package/dist/pipe.mjs +44 -0
- package/dist/pipe.mjs.map +6 -0
- package/dist/plugs/copy.cjs +95 -0
- package/dist/plugs/copy.cjs.map +6 -0
- package/dist/plugs/copy.mjs +64 -0
- package/dist/plugs/copy.mjs.map +6 -0
- package/dist/plugs/coverage/analysis.cjs +229 -0
- package/dist/plugs/coverage/analysis.cjs.map +6 -0
- package/dist/plugs/coverage/analysis.mjs +202 -0
- package/dist/plugs/coverage/analysis.mjs.map +6 -0
- package/dist/plugs/coverage/report.cjs +215 -0
- package/dist/plugs/coverage/report.cjs.map +6 -0
- package/dist/plugs/coverage/report.mjs +200 -0
- package/dist/plugs/coverage/report.mjs.map +6 -0
- package/dist/plugs/coverage.cjs +142 -0
- package/dist/plugs/coverage.cjs.map +6 -0
- package/dist/plugs/coverage.mjs +117 -0
- package/dist/plugs/coverage.mjs.map +6 -0
- package/dist/plugs/debug.cjs +50 -0
- package/dist/plugs/debug.cjs.map +6 -0
- package/dist/plugs/debug.mjs +25 -0
- package/dist/plugs/debug.mjs.map +6 -0
- package/dist/plugs/esbuild/bundle-locals.cjs +51 -0
- package/dist/plugs/esbuild/bundle-locals.cjs.map +6 -0
- package/dist/plugs/esbuild/bundle-locals.mjs +26 -0
- package/dist/plugs/esbuild/bundle-locals.mjs.map +6 -0
- package/dist/plugs/esbuild/check-dependencies.cjs +140 -0
- package/dist/plugs/esbuild/check-dependencies.cjs.map +6 -0
- package/dist/plugs/esbuild/check-dependencies.mjs +115 -0
- package/dist/plugs/esbuild/check-dependencies.mjs.map +6 -0
- package/dist/plugs/esbuild/fix-extensions.cjs +91 -0
- package/dist/plugs/esbuild/fix-extensions.cjs.map +6 -0
- package/dist/plugs/esbuild/fix-extensions.mjs +60 -0
- package/dist/plugs/esbuild/fix-extensions.mjs.map +6 -0
- package/dist/plugs/esbuild.cjs +109 -0
- package/dist/plugs/esbuild.cjs.map +6 -0
- package/dist/plugs/esbuild.mjs +83 -0
- package/dist/plugs/esbuild.mjs.map +6 -0
- package/dist/plugs/eslint/runner.cjs +91 -0
- package/dist/plugs/eslint/runner.cjs.map +6 -0
- package/dist/plugs/eslint/runner.mjs +68 -0
- package/dist/plugs/eslint/runner.mjs.map +6 -0
- package/dist/plugs/exec.cjs +128 -0
- package/dist/plugs/exec.cjs.map +6 -0
- package/dist/plugs/exec.mjs +96 -0
- package/dist/plugs/exec.mjs.map +6 -0
- package/dist/plugs/filter.cjs +59 -0
- package/dist/plugs/filter.cjs.map +6 -0
- package/dist/plugs/filter.mjs +34 -0
- package/dist/plugs/filter.mjs.map +6 -0
- package/dist/plugs/mocha/reporter.cjs +140 -0
- package/dist/plugs/mocha/reporter.cjs.map +6 -0
- package/dist/plugs/mocha/reporter.mjs +107 -0
- package/dist/plugs/mocha/reporter.mjs.map +6 -0
- package/dist/plugs/mocha/runner.cjs +73 -0
- package/dist/plugs/mocha/runner.cjs.map +6 -0
- package/dist/plugs/mocha/runner.mjs +44 -0
- package/dist/plugs/mocha/runner.mjs.map +6 -0
- package/dist/plugs/tsc/compiler.cjs +74 -0
- package/dist/plugs/tsc/compiler.cjs.map +6 -0
- package/dist/plugs/tsc/compiler.mjs +43 -0
- package/dist/plugs/tsc/compiler.mjs.map +6 -0
- package/dist/plugs/tsc/options.cjs +82 -0
- package/dist/plugs/tsc/options.cjs.map +6 -0
- package/dist/plugs/tsc/options.mjs +51 -0
- package/dist/plugs/tsc/options.mjs.map +6 -0
- package/dist/plugs/tsc/report.cjs +90 -0
- package/dist/plugs/tsc/report.cjs.map +6 -0
- package/dist/plugs/tsc/report.mjs +59 -0
- package/dist/plugs/tsc/report.mjs.map +6 -0
- package/dist/plugs/tsc/runner.cjs +101 -0
- package/dist/plugs/tsc/runner.cjs.map +6 -0
- package/dist/plugs/tsc/runner.mjs +72 -0
- package/dist/plugs/tsc/runner.mjs.map +6 -0
- package/dist/plugs.cjs +31 -0
- package/dist/plugs.cjs.map +6 -0
- package/dist/plugs.mjs +13 -0
- package/dist/plugs.mjs.map +6 -0
- package/dist/run.cjs +95 -0
- package/dist/run.cjs.map +6 -0
- package/dist/run.mjs +70 -0
- package/dist/run.mjs.map +6 -0
- package/dist/task.cjs +39 -0
- package/dist/task.cjs.map +6 -0
- package/dist/task.mjs +14 -0
- package/dist/task.mjs.map +6 -0
- package/dist/utils/asyncfs.cjs +143 -0
- package/dist/utils/asyncfs.cjs.map +6 -0
- package/dist/utils/asyncfs.mjs +83 -0
- package/dist/utils/asyncfs.mjs.map +6 -0
- package/dist/utils/caller.cjs +59 -0
- package/dist/utils/caller.cjs.map +6 -0
- package/dist/utils/caller.mjs +34 -0
- package/dist/utils/caller.mjs.map +6 -0
- package/dist/utils/match.cjs +69 -0
- package/dist/utils/match.cjs.map +6 -0
- package/dist/utils/match.mjs +38 -0
- package/dist/utils/match.mjs.map +6 -0
- package/dist/utils/options.cjs +41 -0
- package/dist/utils/options.cjs.map +6 -0
- package/dist/utils/options.mjs +16 -0
- package/dist/utils/options.mjs.map +6 -0
- package/dist/utils/walk.cjs +104 -0
- package/dist/utils/walk.cjs.map +6 -0
- package/dist/utils/walk.mjs +79 -0
- package/dist/utils/walk.mjs.map +6 -0
- package/extra/cli.mjs +212 -0
- package/extra/ts-loader.mjs +214 -0
- package/extra/webassembly.d.ts +11 -0
- package/package.json +57 -0
- package/src/assert.ts +47 -0
- package/src/async.ts +50 -0
- package/src/files.ts +129 -0
- package/src/fork.ts +263 -0
- package/src/helpers.ts +145 -0
- package/src/index.ts +20 -0
- package/src/log/colors.ts +119 -0
- package/src/log/emit.ts +125 -0
- package/src/log/levels.ts +65 -0
- package/src/log/logger.ts +171 -0
- package/src/log/options.ts +199 -0
- package/src/log/report.ts +433 -0
- package/src/log/spinner.ts +70 -0
- package/src/log.ts +68 -0
- package/src/paths.ts +213 -0
- package/src/pipe.ts +231 -0
- package/src/plugs/copy.ts +113 -0
- package/src/plugs/coverage/analysis.ts +395 -0
- package/src/plugs/coverage/report.ts +337 -0
- package/src/plugs/coverage.ts +194 -0
- package/src/plugs/debug.ts +35 -0
- package/src/plugs/esbuild/bundle-locals.ts +33 -0
- package/src/plugs/esbuild/check-dependencies.ts +158 -0
- package/src/plugs/esbuild/fix-extensions.ts +108 -0
- package/src/plugs/esbuild.ts +128 -0
- package/src/plugs/eslint/runner.ts +112 -0
- package/src/plugs/exec.ts +215 -0
- package/src/plugs/filter.ts +56 -0
- package/src/plugs/mocha/reporter.ts +152 -0
- package/src/plugs/mocha/runner.ts +77 -0
- package/src/plugs/tsc/compiler.ts +66 -0
- package/src/plugs/tsc/options.ts +97 -0
- package/src/plugs/tsc/report.ts +74 -0
- package/src/plugs/tsc/runner.ts +100 -0
- package/src/plugs.ts +33 -0
- package/src/run.ts +160 -0
- package/src/task.ts +26 -0
- package/src/utils/asyncfs.ts +82 -0
- package/src/utils/caller.ts +45 -0
- package/src/utils/match.ts +286 -0
- package/src/utils/options.ts +22 -0
- package/src/utils/walk.ts +136 -0
- package/types/assert.d.ts +18 -0
- package/types/async.d.ts +20 -0
- package/types/build.d.ts +56 -0
- package/types/files.d.ts +44 -0
- package/types/fork.d.ts +57 -0
- package/types/helpers.d.ts +49 -0
- package/types/index.d.ts +14 -0
- package/types/log/colors.d.ts +25 -0
- package/types/log/emit.d.ts +14 -0
- package/types/log/levels.d.ts +52 -0
- package/types/log/logger.d.ts +31 -0
- package/types/log/options.d.ts +40 -0
- package/types/log/report.d.ts +64 -0
- package/types/log/spinner.d.ts +2 -0
- package/types/log.d.ts +10 -0
- package/types/paths.d.ts +76 -0
- package/types/pipe.d.ts +152 -0
- package/types/plugs/copy.d.ts +27 -0
- package/types/plugs/coverage/analysis.d.ts +104 -0
- package/types/plugs/coverage/report.d.ts +53 -0
- package/types/plugs/coverage.d.ts +46 -0
- package/types/plugs/debug.d.ts +14 -0
- package/types/plugs/esbuild/bundle-locals.d.ts +6 -0
- package/types/plugs/esbuild/check-dependencies.d.ts +12 -0
- package/types/plugs/esbuild/fix-extensions.d.ts +29 -0
- package/types/plugs/esbuild.d.ts +24 -0
- package/types/plugs/eslint/runner.d.ts +22 -0
- package/types/plugs/exec.d.ts +90 -0
- package/types/plugs/filter.d.ts +23 -0
- package/types/plugs/mocha/reporter.d.ts +8 -0
- package/types/plugs/mocha/runner.d.ts +34 -0
- package/types/plugs/tsc/compiler.d.ts +24 -0
- package/types/plugs/tsc/options.d.ts +8 -0
- package/types/plugs/tsc/report.d.ts +5 -0
- package/types/plugs/tsc/runner.d.ts +13 -0
- package/types/plugs.d.ts +16 -0
- package/types/run.d.ts +89 -0
- package/types/task.d.ts +15 -0
- package/types/utils/asyncfs.d.ts +37 -0
- package/types/utils/caller.d.ts +7 -0
- package/types/utils/match.d.ts +216 -0
- package/types/utils/options.d.ts +15 -0
- package/types/utils/walk.d.ts +28 -0
|
@@ -0,0 +1,59 @@
|
|
|
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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/plugs/tsc/report.ts"],
|
|
4
|
+
"mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAS,OAAO,QAA2C,YAAY;AACvE,SAAuB,2BAA2B;AAElD,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;AAAA,WACZ,GAAG,mBAAmB;AAAO,gBAAQ;AAAO;AAAA,WAC5C,GAAG,mBAAmB;AAAS,gBAAQ;AAAM;AAAA;AACzC,gBAAQ;AAAA;AAInB,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
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
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"), 1);
|
|
33
|
+
var import_assert = require("../../assert.cjs");
|
|
34
|
+
var import_log = require("../../log.cjs");
|
|
35
|
+
var import_paths = require("../../paths.cjs");
|
|
36
|
+
var import_options = require("../../utils/options.cjs");
|
|
37
|
+
var import_compiler = require("./compiler.cjs");
|
|
38
|
+
var import_options2 = require("./options.cjs");
|
|
39
|
+
var import_report = require("./report.cjs");
|
|
40
|
+
var Tsc = class {
|
|
41
|
+
_tsconfig;
|
|
42
|
+
_options;
|
|
43
|
+
constructor(...args) {
|
|
44
|
+
const { params: [tsconfig], options } = (0, import_options.parseOptions)(args, {});
|
|
45
|
+
this._tsconfig = tsconfig;
|
|
46
|
+
this._options = options;
|
|
47
|
+
}
|
|
48
|
+
async pipe(files, run) {
|
|
49
|
+
const tsconfig = this._tsconfig ? run.resolve(this._tsconfig) : (0, import_paths.isFile)(files.directory, "tsconfig.json");
|
|
50
|
+
const overrides = {
|
|
51
|
+
rootDir: files.directory,
|
|
52
|
+
...this._options
|
|
53
|
+
};
|
|
54
|
+
const { errors, options } = await (0, import_options2.getCompilerOptions)(
|
|
55
|
+
tsconfig,
|
|
56
|
+
overrides,
|
|
57
|
+
run.buildFile
|
|
58
|
+
);
|
|
59
|
+
const report = run.report("TypeScript Report");
|
|
60
|
+
(0, import_report.updateReport)(report, errors, (0, import_paths.getCurrentWorkingDirectory)());
|
|
61
|
+
if (report.errors)
|
|
62
|
+
report.done(true);
|
|
63
|
+
const { rootDir, outDir } = options;
|
|
64
|
+
const root = rootDir ? run.resolve(rootDir) : files.directory;
|
|
65
|
+
const out = outDir ? run.resolve(outDir) : root;
|
|
66
|
+
const host = new import_compiler.TypeScriptHost(root);
|
|
67
|
+
const paths = [...files.absolutePaths()];
|
|
68
|
+
for (const path of paths)
|
|
69
|
+
import_log.log.trace(`Compiling "${(0, import_log.$p)(path)}"`);
|
|
70
|
+
import_log.log.info("Compiling", paths.length, "files");
|
|
71
|
+
import_log.log.debug("Compliation options", options);
|
|
72
|
+
const program = import_typescript.default.createProgram(paths, options, host, void 0, errors);
|
|
73
|
+
const diagnostics = import_typescript.default.getPreEmitDiagnostics(program);
|
|
74
|
+
(0, import_report.updateReport)(report, diagnostics, root);
|
|
75
|
+
if (report.errors)
|
|
76
|
+
report.done(true);
|
|
77
|
+
const builder = run.files(out);
|
|
78
|
+
const promises = [];
|
|
79
|
+
const result = program.emit(void 0, (fileName, code) => {
|
|
80
|
+
promises.push(builder.write(fileName, code).then((file) => {
|
|
81
|
+
import_log.log.trace("Written", (0, import_log.$p)(file));
|
|
82
|
+
}).catch((error) => {
|
|
83
|
+
run.log.error("Error writing to", fileName, error);
|
|
84
|
+
throw (0, import_assert.failure)();
|
|
85
|
+
}));
|
|
86
|
+
});
|
|
87
|
+
(0, import_report.updateReport)(report, result.diagnostics, root);
|
|
88
|
+
if (report.errors)
|
|
89
|
+
report.done(true);
|
|
90
|
+
const settlements = await Promise.allSettled(promises);
|
|
91
|
+
const failures = settlements.reduce((failures2, s) => failures2 + s.status === "rejected" ? 1 : 0, 0);
|
|
92
|
+
if (failures)
|
|
93
|
+
throw (0, import_assert.failure)();
|
|
94
|
+
const outputs = builder.build();
|
|
95
|
+
import_log.log.info("TSC produced", outputs.length, "files into", (0, import_log.$p)(outputs.directory));
|
|
96
|
+
return outputs;
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
100
|
+
0 && (module.exports = {});
|
|
101
|
+
//# sourceMappingURL=runner.cjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/plugs/tsc/runner.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAe;AAEf,oBAAwB;AAExB,iBAAwB;AACxB,mBAAmD;AAGnD,qBAA2C;AAC3C,sBAA+B;AAC/B,IAAAA,kBAAmC;AACnC,oBAA6B;AAM7B,IAAqB,MAArB,MAAgD;AAAA,EAC7B;AAAA,EACA;AAAA,EAOjB,eAAe,MAAwC;AACrD,UAAM,EAAE,QAAQ,CAAE,QAAS,GAAG,QAAQ,QAAI,6BAAa,MAAM,CAAC,CAAC;AAC/D,SAAK,YAAY;AACjB,SAAK,WAAW;AAAA,EAClB;AAAA,EAEA,MAAM,KAAK,OAAc,KAA0B;AACjD,UAAM,WAAW,KAAK,YACpB,IAAI,QAAQ,KAAK,SAAS,QAC1B,qBAAO,MAAM,WAAW,eAAe;AAEzC,UAAM,YAAgC;AAAA,MACpC,SAAS,MAAM;AAAA,MACf,GAAG,KAAK;AAAA,IACV;AAEA,UAAM,EAAE,QAAQ,QAAQ,IAAI,UAAM;AAAA,MAC9B;AAAA,MACA;AAAA,MACA,IAAI;AAAA,IAAS;AAEjB,UAAM,SAAS,IAAI,OAAO,mBAAmB;AAG7C,oCAAa,QAAQ,YAAQ,yCAA2B,CAAC;AACzD,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAEnC,UAAM,EAAE,SAAS,OAAO,IAAI;AAC5B,UAAM,OAAO,UAAU,IAAI,QAAQ,OAAO,IAAI,MAAM;AACpD,UAAM,MAAM,SAAS,IAAI,QAAQ,MAAM,IAAI;AAE3C,UAAM,OAAO,IAAI,+BAAe,IAAI;AAEpC,UAAM,QAAQ,CAAE,GAAG,MAAM,cAAc,CAAE;AACzC,eAAW,QAAQ;AAAO,qBAAI,MAAM,kBAAc,eAAG,IAAI,IAAI;AAG7D,mBAAI,KAAK,aAAa,MAAM,QAAQ,OAAO;AAC3C,mBAAI,MAAM,uBAAuB,OAAO;AAExC,UAAM,UAAU,kBAAAC,QAAG,cAAc,OAAO,SAAS,MAAM,QAAW,MAAM;AACxE,UAAM,cAAc,kBAAAA,QAAG,sBAAsB,OAAO;AAGpD,oCAAa,QAAQ,aAAa,IAAI;AACtC,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAEnC,UAAM,UAAU,IAAI,MAAM,GAAG;AAC7B,UAAM,WAA4B,CAAC;AACnC,UAAM,SAAS,QAAQ,KAAK,QAAW,CAAC,UAAU,SAAS;AACzD,eAAS,KAAK,QAAQ,MAAM,UAAU,IAAI,EAAE,KAAK,CAAC,SAAS;AACzD,uBAAI,MAAM,eAAW,eAAG,IAAI,CAAC;AAAA,MAC/B,CAAC,EAAE,MAAM,CAAC,UAAU;AAClB,YAAI,IAAI,MAAM,oBAAoB,UAAU,KAAK;AACjD,kBAAM,uBAAQ;AAAA,MAChB,CAAC,CAAC;AAAA,IACJ,CAAC;AAGD,oCAAa,QAAQ,OAAO,aAAa,IAAI;AAC7C,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAGnC,UAAM,cAAc,MAAM,QAAQ,WAAW,QAAQ;AACrD,UAAM,WAAW,YACZ,OAAO,CAACC,WAAU,MAAMA,YAAW,EAAE,WAAW,aAAa,IAAI,GAAG,CAAC;AAC1E,QAAI;AAAU,gBAAM,uBAAQ;AAG5B,UAAM,UAAU,QAAQ,MAAM;AAC9B,mBAAI,KAAK,gBAAgB,QAAQ,QAAQ,kBAAc,eAAG,QAAQ,SAAS,CAAC;AAC5E,WAAO;AAAA,EACT;AACF;",
|
|
5
|
+
"names": ["import_options", "ts", "failures"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
// plugs/tsc/runner.ts
|
|
2
|
+
import ts from "typescript";
|
|
3
|
+
import { failure } from "../../assert.mjs";
|
|
4
|
+
import { $p, log } from "../../log.mjs";
|
|
5
|
+
import { getCurrentWorkingDirectory, isFile } from "../../paths.mjs";
|
|
6
|
+
import { parseOptions } from "../../utils/options.mjs";
|
|
7
|
+
import { TypeScriptHost } from "./compiler.mjs";
|
|
8
|
+
import { getCompilerOptions } from "./options.mjs";
|
|
9
|
+
import { updateReport } from "./report.mjs";
|
|
10
|
+
var Tsc = class {
|
|
11
|
+
_tsconfig;
|
|
12
|
+
_options;
|
|
13
|
+
constructor(...args) {
|
|
14
|
+
const { params: [tsconfig], options } = parseOptions(args, {});
|
|
15
|
+
this._tsconfig = tsconfig;
|
|
16
|
+
this._options = options;
|
|
17
|
+
}
|
|
18
|
+
async pipe(files, run) {
|
|
19
|
+
const tsconfig = this._tsconfig ? run.resolve(this._tsconfig) : isFile(files.directory, "tsconfig.json");
|
|
20
|
+
const overrides = {
|
|
21
|
+
rootDir: files.directory,
|
|
22
|
+
...this._options
|
|
23
|
+
};
|
|
24
|
+
const { errors, options } = await getCompilerOptions(
|
|
25
|
+
tsconfig,
|
|
26
|
+
overrides,
|
|
27
|
+
run.buildFile
|
|
28
|
+
);
|
|
29
|
+
const report = run.report("TypeScript Report");
|
|
30
|
+
updateReport(report, errors, getCurrentWorkingDirectory());
|
|
31
|
+
if (report.errors)
|
|
32
|
+
report.done(true);
|
|
33
|
+
const { rootDir, outDir } = options;
|
|
34
|
+
const root = rootDir ? run.resolve(rootDir) : files.directory;
|
|
35
|
+
const out = outDir ? run.resolve(outDir) : root;
|
|
36
|
+
const host = new TypeScriptHost(root);
|
|
37
|
+
const paths = [...files.absolutePaths()];
|
|
38
|
+
for (const path of paths)
|
|
39
|
+
log.trace(`Compiling "${$p(path)}"`);
|
|
40
|
+
log.info("Compiling", paths.length, "files");
|
|
41
|
+
log.debug("Compliation options", options);
|
|
42
|
+
const program = ts.createProgram(paths, options, host, void 0, errors);
|
|
43
|
+
const diagnostics = ts.getPreEmitDiagnostics(program);
|
|
44
|
+
updateReport(report, diagnostics, root);
|
|
45
|
+
if (report.errors)
|
|
46
|
+
report.done(true);
|
|
47
|
+
const builder = run.files(out);
|
|
48
|
+
const promises = [];
|
|
49
|
+
const result = program.emit(void 0, (fileName, code) => {
|
|
50
|
+
promises.push(builder.write(fileName, code).then((file) => {
|
|
51
|
+
log.trace("Written", $p(file));
|
|
52
|
+
}).catch((error) => {
|
|
53
|
+
run.log.error("Error writing to", fileName, error);
|
|
54
|
+
throw failure();
|
|
55
|
+
}));
|
|
56
|
+
});
|
|
57
|
+
updateReport(report, result.diagnostics, root);
|
|
58
|
+
if (report.errors)
|
|
59
|
+
report.done(true);
|
|
60
|
+
const settlements = await Promise.allSettled(promises);
|
|
61
|
+
const failures = settlements.reduce((failures2, s) => failures2 + s.status === "rejected" ? 1 : 0, 0);
|
|
62
|
+
if (failures)
|
|
63
|
+
throw failure();
|
|
64
|
+
const outputs = builder.build();
|
|
65
|
+
log.info("TSC produced", outputs.length, "files into", $p(outputs.directory));
|
|
66
|
+
return outputs;
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
export {
|
|
70
|
+
Tsc as default
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=runner.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/plugs/tsc/runner.ts"],
|
|
4
|
+
"mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAS,eAAe;AAExB,SAAS,IAAI,WAAW;AACxB,SAAS,4BAA4B,cAAc;AAGnD,SAAS,oBAAkC;AAC3C,SAAS,sBAAsB;AAC/B,SAAS,0BAA0B;AACnC,SAAS,oBAAoB;AAM7B,IAAqB,MAArB,MAAgD;AAAA,EAC7B;AAAA,EACA;AAAA,EAOjB,eAAe,MAAwC;AACrD,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,KAA0B;AACjD,UAAM,WAAW,KAAK,YACpB,IAAI,QAAQ,KAAK,SAAS,IAC1B,OAAO,MAAM,WAAW,eAAe;AAEzC,UAAM,YAAgC;AAAA,MACpC,SAAS,MAAM;AAAA,MACf,GAAG,KAAK;AAAA,IACV;AAEA,UAAM,EAAE,QAAQ,QAAQ,IAAI,MAAM;AAAA,MAC9B;AAAA,MACA;AAAA,MACA,IAAI;AAAA,IAAS;AAEjB,UAAM,SAAS,IAAI,OAAO,mBAAmB;AAG7C,iBAAa,QAAQ,QAAQ,2BAA2B,CAAC;AACzD,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAEnC,UAAM,EAAE,SAAS,OAAO,IAAI;AAC5B,UAAM,OAAO,UAAU,IAAI,QAAQ,OAAO,IAAI,MAAM;AACpD,UAAM,MAAM,SAAS,IAAI,QAAQ,MAAM,IAAI;AAE3C,UAAM,OAAO,IAAI,eAAe,IAAI;AAEpC,UAAM,QAAQ,CAAE,GAAG,MAAM,cAAc,CAAE;AACzC,eAAW,QAAQ;AAAO,UAAI,MAAM,cAAc,GAAG,IAAI,IAAI;AAG7D,QAAI,KAAK,aAAa,MAAM,QAAQ,OAAO;AAC3C,QAAI,MAAM,uBAAuB,OAAO;AAExC,UAAM,UAAU,GAAG,cAAc,OAAO,SAAS,MAAM,QAAW,MAAM;AACxE,UAAM,cAAc,GAAG,sBAAsB,OAAO;AAGpD,iBAAa,QAAQ,aAAa,IAAI;AACtC,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAEnC,UAAM,UAAU,IAAI,MAAM,GAAG;AAC7B,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,YAAI,IAAI,MAAM,oBAAoB,UAAU,KAAK;AACjD,cAAM,QAAQ;AAAA,MAChB,CAAC,CAAC;AAAA,IACJ,CAAC;AAGD,iBAAa,QAAQ,OAAO,aAAa,IAAI;AAC7C,QAAI,OAAO;AAAQ,aAAO,KAAK,IAAI;AAGnC,UAAM,cAAc,MAAM,QAAQ,WAAW,QAAQ;AACrD,UAAM,WAAW,YACZ,OAAO,CAACA,WAAU,MAAMA,YAAW,EAAE,WAAW,aAAa,IAAI,GAAG,CAAC;AAC1E,QAAI;AAAU,YAAM,QAAQ;AAG5B,UAAM,UAAU,QAAQ,MAAM;AAC9B,QAAI,KAAK,gBAAgB,QAAQ,QAAQ,cAAc,GAAG,QAAQ,SAAS,CAAC;AAC5E,WAAO;AAAA,EACT;AACF;",
|
|
5
|
+
"names": ["failures"]
|
|
6
|
+
}
|
package/dist/plugs.cjs
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
15
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
16
|
+
|
|
17
|
+
// plugs.ts
|
|
18
|
+
var plugs_exports = {};
|
|
19
|
+
module.exports = __toCommonJS(plugs_exports);
|
|
20
|
+
var import_fork = require("./fork.cjs");
|
|
21
|
+
var import_paths = require("./paths.cjs");
|
|
22
|
+
__reExport(plugs_exports, require("./plugs/copy.cjs"), module.exports);
|
|
23
|
+
__reExport(plugs_exports, require("./plugs/coverage.cjs"), module.exports);
|
|
24
|
+
__reExport(plugs_exports, require("./plugs/debug.cjs"), module.exports);
|
|
25
|
+
__reExport(plugs_exports, require("./plugs/esbuild.cjs"), module.exports);
|
|
26
|
+
__reExport(plugs_exports, require("./plugs/exec.cjs"), module.exports);
|
|
27
|
+
__reExport(plugs_exports, require("./plugs/filter.cjs"), module.exports);
|
|
28
|
+
(0, import_fork.installForking)("eslint", (0, import_paths.requireResolve)(__filename, "./plugs/eslint/runner"));
|
|
29
|
+
(0, import_fork.installForking)("mocha", (0, import_paths.requireResolve)(__filename, "./plugs/mocha/runner"));
|
|
30
|
+
(0, import_fork.installForking)("tsc", (0, import_paths.requireResolve)(__filename, "./plugs/tsc/runner"));
|
|
31
|
+
//# sourceMappingURL=plugs.cjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/plugs.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAIA,kBAA+B;AAC/B,mBAA+B;AAsB/B,0BAAc,6BA3Bd;AA4BA,0BAAc,iCA5Bd;AA6BA,0BAAc,8BA7Bd;AA8BA,0BAAc,gCA9Bd;AA+BA,0BAAc,6BA/Bd;AAgCA,0BAAc,+BAhCd;AAAA,IAmBA,4BAAe,cAAU,6BAAe,YAAW,uBAAuB,CAAC;AAAA,IAC3E,4BAAe,aAAS,6BAAe,YAAW,sBAAsB,CAAC;AAAA,IACzE,4BAAe,WAAO,6BAAe,YAAW,oBAAoB,CAAC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/plugs.mjs
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// plugs.ts
|
|
2
|
+
import { installForking } from "./fork.mjs";
|
|
3
|
+
import { requireResolve } from "./paths.mjs";
|
|
4
|
+
export * from "./plugs/copy.mjs";
|
|
5
|
+
export * from "./plugs/coverage.mjs";
|
|
6
|
+
export * from "./plugs/debug.mjs";
|
|
7
|
+
export * from "./plugs/esbuild.mjs";
|
|
8
|
+
export * from "./plugs/exec.mjs";
|
|
9
|
+
export * from "./plugs/filter.mjs";
|
|
10
|
+
installForking("eslint", requireResolve(import.meta.url, "./plugs/eslint/runner"));
|
|
11
|
+
installForking("mocha", requireResolve(import.meta.url, "./plugs/mocha/runner"));
|
|
12
|
+
installForking("tsc", requireResolve(import.meta.url, "./plugs/tsc/runner"));
|
|
13
|
+
//# sourceMappingURL=plugs.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/plugs.ts"],
|
|
4
|
+
"mappings": ";AAIA,SAAS,sBAAsB;AAC/B,SAAS,sBAAsB;AAsB/B,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAbd,eAAe,UAAU,eAAe,iBAAW,uBAAuB,CAAC;AAC3E,eAAe,SAAS,eAAe,iBAAW,sBAAsB,CAAC;AACzE,eAAe,OAAO,eAAe,iBAAW,oBAAoB,CAAC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/run.cjs
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
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
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// run.ts
|
|
21
|
+
var run_exports = {};
|
|
22
|
+
__export(run_exports, {
|
|
23
|
+
RunImpl: () => RunImpl
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(run_exports);
|
|
26
|
+
var import_node_path = require("node:path");
|
|
27
|
+
var import_assert = require("./assert.cjs");
|
|
28
|
+
var import_files = require("./files.cjs");
|
|
29
|
+
var import_log = require("./log.cjs");
|
|
30
|
+
var import_paths = require("./paths.cjs");
|
|
31
|
+
var import_pipe = require("./pipe.cjs");
|
|
32
|
+
var import_options = require("./utils/options.cjs");
|
|
33
|
+
var import_walk = require("./utils/walk.cjs");
|
|
34
|
+
var RunImpl = class {
|
|
35
|
+
taskName;
|
|
36
|
+
buildFile;
|
|
37
|
+
buildDir;
|
|
38
|
+
log;
|
|
39
|
+
constructor({ taskName, buildDir, buildFile, log }) {
|
|
40
|
+
this.taskName = taskName;
|
|
41
|
+
this.buildDir = buildDir;
|
|
42
|
+
this.buildFile = buildFile;
|
|
43
|
+
this.log = log || (0, import_log.getLogger)(taskName);
|
|
44
|
+
}
|
|
45
|
+
setLogLevel(level) {
|
|
46
|
+
this.log.level = (0, import_log.getLevelNumber)(level);
|
|
47
|
+
}
|
|
48
|
+
report(title) {
|
|
49
|
+
return (0, import_log.createReport)(title, this.taskName);
|
|
50
|
+
}
|
|
51
|
+
resolve(...paths) {
|
|
52
|
+
const path = (0, import_node_path.join)(...paths);
|
|
53
|
+
if (!path)
|
|
54
|
+
return this.buildDir;
|
|
55
|
+
if (path.startsWith("@")) {
|
|
56
|
+
const relative = path.substring(1);
|
|
57
|
+
(0, import_assert.assert)(!(0, import_paths.isAbsolutePath)(relative), `Path component of "${path}" is absolute`);
|
|
58
|
+
return (0, import_paths.resolveAbsolutePath)((0, import_paths.getCurrentWorkingDirectory)(), relative);
|
|
59
|
+
}
|
|
60
|
+
if ((0, import_paths.isAbsolutePath)(path))
|
|
61
|
+
return path;
|
|
62
|
+
return (0, import_paths.resolveAbsolutePath)(this.buildDir, path);
|
|
63
|
+
}
|
|
64
|
+
files(first, ...paths) {
|
|
65
|
+
if (typeof first === "string") {
|
|
66
|
+
return import_files.Files.builder(this.resolve(first, ...paths));
|
|
67
|
+
} else if (first) {
|
|
68
|
+
return import_files.Files.builder(first);
|
|
69
|
+
} else {
|
|
70
|
+
return import_files.Files.builder(this.resolve());
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
find(glob, ...args) {
|
|
74
|
+
const { params, options: { directory, ...options } } = (0, import_options.parseOptions)(args, {});
|
|
75
|
+
const promise = Promise.resolve().then(async () => {
|
|
76
|
+
const builder = this.files(directory || ".");
|
|
77
|
+
for await (const file of (0, import_walk.walk)(builder.directory, [glob, ...params], options)) {
|
|
78
|
+
builder.add(file);
|
|
79
|
+
}
|
|
80
|
+
return builder.build();
|
|
81
|
+
});
|
|
82
|
+
return this.pipe(promise);
|
|
83
|
+
}
|
|
84
|
+
pipe(files) {
|
|
85
|
+
return new import_pipe.PipeImpl(files, this);
|
|
86
|
+
}
|
|
87
|
+
call(name) {
|
|
88
|
+
throw new Error(`Unable to call task "${name}"`);
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
92
|
+
0 && (module.exports = {
|
|
93
|
+
RunImpl
|
|
94
|
+
});
|
|
95
|
+
//# sourceMappingURL=run.cjs.map
|
package/dist/run.cjs.map
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/run.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAqB;AACrB,oBAAuB;AACvB,mBAAoC;AACpC,iBAAwF;AACxF,mBAA8F;AAC9F,kBAA+B;AAC/B,qBAA2C;AAC3C,kBAAkC;AAgF3B,IAAM,UAAN,MAA6B;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAIT,YAAY,EAAE,UAAU,UAAU,WAAW,IAAI,GAA2B;AAC1E,SAAK,WAAW;AAChB,SAAK,WAAW;AAChB,SAAK,YAAY;AACjB,SAAK,MAAM,WAAO,sBAAU,QAAQ;AAAA,EACtC;AAAA,EAGA,YAAY,OAA6B;AACvC,SAAK,IAAI,YAAQ,2BAAe,KAAK;AAAA,EACvC;AAAA,EAEA,OAAO,OAAuB;AAC5B,eAAO,yBAAa,OAAO,KAAK,QAAQ;AAAA,EAC1C;AAAA,EAEA,WAAW,OAA+B;AACxC,UAAM,WAAO,uBAAK,GAAG,KAAK;AAC1B,QAAI,CAAE;AAAM,aAAO,KAAK;AAExB,QAAI,KAAK,WAAW,GAAG,GAAG;AACxB,YAAM,WAAW,KAAK,UAAU,CAAC;AACjC,gCAAO,KAAE,6BAAe,QAAQ,GAAG,sBAAsB,mBAAmB;AAC5E,iBAAO,sCAAoB,yCAA2B,GAAG,QAAQ;AAAA,IACnE;AAEA,YAAI,6BAAe,IAAI;AAAG,aAAO;AAEjC,eAAO,kCAAoB,KAAK,UAAU,IAAI;AAAA,EAChD;AAAA,EAIA,MAAM,UAAsC,OAA+B;AACzE,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,mBAAM,QAAQ,KAAK,QAAQ,OAAO,GAAG,KAAK,CAAC;AAAA,IACpD,WAAW,OAAO;AAChB,aAAO,mBAAM,QAAQ,KAAK;AAAA,IAC5B,OAAO;AACL,aAAO,mBAAM,QAAQ,KAAK,QAAQ,CAAC;AAAA,IACrC;AAAA,EACF;AAAA,EAEA,KAAK,SAAiB,MAAwD;AAC5E,UAAM,EAAE,QAAQ,SAAS,EAAE,cAAc,QAAQ,EAAE,QAAI,6BAAa,MAAM,CAAC,CAAC;AAE5E,UAAM,UAAU,QAAQ,QAAQ,EAAE,KAAK,YAAY;AACjD,YAAM,UAAU,KAAK,MAAM,aAAa,GAAG;AAC3C,uBAAiB,YAAQ,kBAAK,QAAQ,WAAW,CAAE,MAAM,GAAG,MAAO,GAAG,OAAO,GAAG;AAC9E,gBAAQ,IAAI,IAAI;AAAA,MAClB;AACA,aAAO,QAAQ,MAAM;AAAA,IACvB,CAAC;AAED,WAAO,KAAK,KAAK,OAAO;AAAA,EAC1B;AAAA,EAEA,KAAK,OAAsD;AACzD,WAAO,IAAI,qBAAS,OAAO,IAAI;AAAA,EACjC;AAAA,EAEA,KAAK,MAA0C;AAC7C,UAAM,IAAI,MAAM,wBAAwB,OAAO;AAAA,EACjD;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/run.mjs
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
// run.ts
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { assert } from "./assert.mjs";
|
|
4
|
+
import { Files } from "./files.mjs";
|
|
5
|
+
import { createReport, getLevelNumber, getLogger } from "./log.mjs";
|
|
6
|
+
import { getCurrentWorkingDirectory, isAbsolutePath, resolveAbsolutePath } from "./paths.mjs";
|
|
7
|
+
import { PipeImpl } from "./pipe.mjs";
|
|
8
|
+
import { parseOptions } from "./utils/options.mjs";
|
|
9
|
+
import { walk } from "./utils/walk.mjs";
|
|
10
|
+
var RunImpl = class {
|
|
11
|
+
taskName;
|
|
12
|
+
buildFile;
|
|
13
|
+
buildDir;
|
|
14
|
+
log;
|
|
15
|
+
constructor({ taskName, buildDir, buildFile, log }) {
|
|
16
|
+
this.taskName = taskName;
|
|
17
|
+
this.buildDir = buildDir;
|
|
18
|
+
this.buildFile = buildFile;
|
|
19
|
+
this.log = log || getLogger(taskName);
|
|
20
|
+
}
|
|
21
|
+
setLogLevel(level) {
|
|
22
|
+
this.log.level = getLevelNumber(level);
|
|
23
|
+
}
|
|
24
|
+
report(title) {
|
|
25
|
+
return createReport(title, this.taskName);
|
|
26
|
+
}
|
|
27
|
+
resolve(...paths) {
|
|
28
|
+
const path = join(...paths);
|
|
29
|
+
if (!path)
|
|
30
|
+
return this.buildDir;
|
|
31
|
+
if (path.startsWith("@")) {
|
|
32
|
+
const relative = path.substring(1);
|
|
33
|
+
assert(!isAbsolutePath(relative), `Path component of "${path}" is absolute`);
|
|
34
|
+
return resolveAbsolutePath(getCurrentWorkingDirectory(), relative);
|
|
35
|
+
}
|
|
36
|
+
if (isAbsolutePath(path))
|
|
37
|
+
return path;
|
|
38
|
+
return resolveAbsolutePath(this.buildDir, path);
|
|
39
|
+
}
|
|
40
|
+
files(first, ...paths) {
|
|
41
|
+
if (typeof first === "string") {
|
|
42
|
+
return Files.builder(this.resolve(first, ...paths));
|
|
43
|
+
} else if (first) {
|
|
44
|
+
return Files.builder(first);
|
|
45
|
+
} else {
|
|
46
|
+
return Files.builder(this.resolve());
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
find(glob, ...args) {
|
|
50
|
+
const { params, options: { directory, ...options } } = parseOptions(args, {});
|
|
51
|
+
const promise = Promise.resolve().then(async () => {
|
|
52
|
+
const builder = this.files(directory || ".");
|
|
53
|
+
for await (const file of walk(builder.directory, [glob, ...params], options)) {
|
|
54
|
+
builder.add(file);
|
|
55
|
+
}
|
|
56
|
+
return builder.build();
|
|
57
|
+
});
|
|
58
|
+
return this.pipe(promise);
|
|
59
|
+
}
|
|
60
|
+
pipe(files) {
|
|
61
|
+
return new PipeImpl(files, this);
|
|
62
|
+
}
|
|
63
|
+
call(name) {
|
|
64
|
+
throw new Error(`Unable to call task "${name}"`);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
export {
|
|
68
|
+
RunImpl
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=run.mjs.map
|
package/dist/run.mjs.map
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/run.ts"],
|
|
4
|
+
"mappings": ";AAAA,SAAS,YAAY;AACrB,SAAS,cAAc;AACvB,SAAS,aAA2B;AACpC,SAAS,cAAc,gBAAgB,iBAAiD;AACxF,SAAuB,4BAA4B,gBAAgB,2BAA2B;AAC9F,SAAe,gBAAgB;AAC/B,SAAuB,oBAAoB;AAC3C,SAAS,YAAyB;AAgF3B,IAAM,UAAN,MAA6B;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAIT,YAAY,EAAE,UAAU,UAAU,WAAW,IAAI,GAA2B;AAC1E,SAAK,WAAW;AAChB,SAAK,WAAW;AAChB,SAAK,YAAY;AACjB,SAAK,MAAM,OAAO,UAAU,QAAQ;AAAA,EACtC;AAAA,EAGA,YAAY,OAA6B;AACvC,SAAK,IAAI,QAAQ,eAAe,KAAK;AAAA,EACvC;AAAA,EAEA,OAAO,OAAuB;AAC5B,WAAO,aAAa,OAAO,KAAK,QAAQ;AAAA,EAC1C;AAAA,EAEA,WAAW,OAA+B;AACxC,UAAM,OAAO,KAAK,GAAG,KAAK;AAC1B,QAAI,CAAE;AAAM,aAAO,KAAK;AAExB,QAAI,KAAK,WAAW,GAAG,GAAG;AACxB,YAAM,WAAW,KAAK,UAAU,CAAC;AACjC,aAAO,CAAE,eAAe,QAAQ,GAAG,sBAAsB,mBAAmB;AAC5E,aAAO,oBAAoB,2BAA2B,GAAG,QAAQ;AAAA,IACnE;AAEA,QAAI,eAAe,IAAI;AAAG,aAAO;AAEjC,WAAO,oBAAoB,KAAK,UAAU,IAAI;AAAA,EAChD;AAAA,EAIA,MAAM,UAAsC,OAA+B;AACzE,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,MAAM,QAAQ,KAAK,QAAQ,OAAO,GAAG,KAAK,CAAC;AAAA,IACpD,WAAW,OAAO;AAChB,aAAO,MAAM,QAAQ,KAAK;AAAA,IAC5B,OAAO;AACL,aAAO,MAAM,QAAQ,KAAK,QAAQ,CAAC;AAAA,IACrC;AAAA,EACF;AAAA,EAEA,KAAK,SAAiB,MAAwD;AAC5E,UAAM,EAAE,QAAQ,SAAS,EAAE,cAAc,QAAQ,EAAE,IAAI,aAAa,MAAM,CAAC,CAAC;AAE5E,UAAM,UAAU,QAAQ,QAAQ,EAAE,KAAK,YAAY;AACjD,YAAM,UAAU,KAAK,MAAM,aAAa,GAAG;AAC3C,uBAAiB,QAAQ,KAAK,QAAQ,WAAW,CAAE,MAAM,GAAG,MAAO,GAAG,OAAO,GAAG;AAC9E,gBAAQ,IAAI,IAAI;AAAA,MAClB;AACA,aAAO,QAAQ,MAAM;AAAA,IACvB,CAAC;AAED,WAAO,KAAK,KAAK,OAAO;AAAA,EAC1B;AAAA,EAEA,KAAK,OAAsD;AACzD,WAAO,IAAI,SAAS,OAAO,IAAI;AAAA,EACjC;AAAA,EAEA,KAAK,MAA0C;AAC7C,UAAM,IAAI,MAAM,wBAAwB,OAAO;AAAA,EACjD;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/task.cjs
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
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
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// task.ts
|
|
21
|
+
var task_exports = {};
|
|
22
|
+
__export(task_exports, {
|
|
23
|
+
TaskImpl: () => TaskImpl
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(task_exports);
|
|
26
|
+
var TaskImpl = class {
|
|
27
|
+
constructor(context, _definition) {
|
|
28
|
+
this.context = context;
|
|
29
|
+
this._definition = _definition;
|
|
30
|
+
}
|
|
31
|
+
async call(self, run) {
|
|
32
|
+
return await this._definition.call(self, self, run) || void 0;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
36
|
+
0 && (module.exports = {
|
|
37
|
+
TaskImpl
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=task.cjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/task.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBO,IAAM,WAAN,MAAkD;AAAA,EACvD,YACa,SACQ,aACnB;AAFW;AACQ;AAAA,EAClB;AAAA,EAEH,MAAM,KAAK,MAAsB,KAAsC;AACrE,WAAQ,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,GAAG,KAAM;AAAA,EAC3D;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/task.mjs
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// task.ts
|
|
2
|
+
var TaskImpl = class {
|
|
3
|
+
constructor(context, _definition) {
|
|
4
|
+
this.context = context;
|
|
5
|
+
this._definition = _definition;
|
|
6
|
+
}
|
|
7
|
+
async call(self, run) {
|
|
8
|
+
return await this._definition.call(self, self, run) || void 0;
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
export {
|
|
12
|
+
TaskImpl
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=task.mjs.map
|