@plugjs/plug 0.0.20 → 0.0.22
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/dist/plugs/mocha/runner.cjs +12 -2
- package/dist/plugs/mocha/runner.cjs.map +2 -2
- package/dist/plugs/mocha/runner.mjs +13 -3
- package/dist/plugs/mocha/runner.mjs.map +2 -2
- package/dist/plugs/mocha.cjs.map +1 -1
- package/dist/plugs/mocha.d.ts +2 -0
- package/dist/plugs/mocha.mjs.map +1 -1
- package/dist/plugs/tsc/options.cjs +1 -0
- package/dist/plugs/tsc/options.cjs.map +1 -1
- package/dist/plugs/tsc/options.mjs +1 -0
- package/dist/plugs/tsc/options.mjs.map +1 -1
- package/dist/plugs/tsc/runner.cjs +10 -1
- package/dist/plugs/tsc/runner.cjs.map +1 -1
- package/dist/plugs/tsc/runner.mjs +10 -1
- package/dist/plugs/tsc/runner.mjs.map +1 -1
- package/dist/plugs/tsc.cjs +15 -0
- package/dist/plugs/tsc.cjs.map +1 -1
- package/dist/plugs/tsc.d.ts +18 -6
- package/dist/plugs/tsc.mjs +1 -11
- package/dist/plugs/tsc.mjs.map +1 -1
- package/package.json +1 -1
- package/src/plugs/mocha/runner.ts +17 -3
- package/src/plugs/mocha.ts +2 -0
- package/src/plugs/tsc/options.ts +1 -0
- package/src/plugs/tsc/runner.ts +18 -3
- package/src/plugs/tsc.ts +19 -6
|
@@ -30,8 +30,10 @@ __export(runner_exports, {
|
|
|
30
30
|
});
|
|
31
31
|
module.exports = __toCommonJS(runner_exports);
|
|
32
32
|
var import_mocha = __toESM(require("mocha"));
|
|
33
|
+
var import_assert = require("../../assert.cjs");
|
|
33
34
|
var import_failure = require("../../failure.cjs");
|
|
34
35
|
var import_log = require("../../log.cjs");
|
|
36
|
+
var import_paths = require("../../paths.cjs");
|
|
35
37
|
var import_reporter = require("./reporter.cjs");
|
|
36
38
|
var Mocha = class {
|
|
37
39
|
constructor(_options = {}) {
|
|
@@ -40,12 +42,20 @@ var Mocha = class {
|
|
|
40
42
|
async pipe(files, context) {
|
|
41
43
|
context.log.notice("");
|
|
42
44
|
context.log.enter(import_log.NOTICE, (0, import_log.$wht)("Starting Mocha"));
|
|
45
|
+
const { require: require2, ...options } = this._options;
|
|
46
|
+
if (require2) {
|
|
47
|
+
const requiredFile = context.resolve(require2);
|
|
48
|
+
const scriptFile = (0, import_paths.resolveFile)(requiredFile);
|
|
49
|
+
(0, import_assert.assert)(scriptFile, `Mocha setup file ${(0, import_log.$p)(requiredFile)} not found`);
|
|
50
|
+
context.log.debug(`Importing setup script ${(0, import_log.$p)(requiredFile)}`);
|
|
51
|
+
await import(scriptFile);
|
|
52
|
+
}
|
|
43
53
|
const mocha = new import_mocha.default({
|
|
44
54
|
diff: true,
|
|
45
55
|
reporter: import_reporter.PlugReporter,
|
|
46
|
-
...
|
|
56
|
+
...options,
|
|
47
57
|
reporterOptions: {
|
|
48
|
-
...
|
|
58
|
+
...options.reporterOptions,
|
|
49
59
|
[import_reporter.logSymbol]: context.log
|
|
50
60
|
},
|
|
51
61
|
allowUncaught: false,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/mocha/runner.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsB;
|
|
5
|
-
"names": ["RealMocha"]
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsB;AACtB,oBAAuB;AAEvB,qBAA6B;AAE7B,iBAAiC;AACjC,mBAA4B;AAG5B,sBAAwC;AAGxC,IAAqB,QAArB,MAAiD;AAAA,EAE/C,YAA6B,WAAyB,CAAC,GAAG;AAA7B;AAAA,EAA8B;AAAA,EAE3D,MAAM,KAAK,OAAc,SAAiC;AAGxD,YAAQ,IAAI,OAAO,EAAE;AACrB,YAAQ,IAAI,MAAM,uBAAQ,iBAAK,gBAAgB,CAAC;AAGhD,UAAM,EAAE,SAAAA,aAAY,QAAQ,IAAI,KAAK;AAGrC,QAAIA,UAAS;AACX,YAAM,eAAe,QAAQ,QAAQA,QAAO;AAC5C,YAAM,iBAAa,0BAAY,YAAY;AAC3C,gCAAO,YAAY,wBAAoB,eAAG,YAAY,aAAa;AACnE,cAAQ,IAAI,MAAM,8BAA0B,eAAG,YAAY,GAAG;AAC9D,YAAM,OAAO;AAAA,IACf;AAGA,UAAM,QAAQ,IAAI,aAAAC,QAAU;AAAA,MAC1B,MAAM;AAAA,MACN,UAAU;AAAA,MACV,GAAG;AAAA,MACH,iBAAiB;AAAA,QACf,GAAG,QAAQ;AAAA,QACX,CAAC,4BAAY,QAAQ;AAAA,MACvB;AAAA,MACA,eAAe;AAAA,MACf,OAAO;AAAA,IACT,CAAC;AAGD,eAAW,QAAQ,MAAM,cAAc;AAAG,YAAM,QAAQ,IAAI;AAE5D,UAAM,MAAM,eAAe;AAG3B,WAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,UAAI;AACF,cAAM,IAAI,CAAC,aAAa;AACtB,cAAI;AAAU,mBAAO,4BAAa,KAAK,CAAC;AACxC,kBAAQ,MAAS;AAAA,QACnB,CAAC;AAAA,MACH,SAAS,OAAP;AACA,eAAO,KAAK;AAAA,MACd;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
|
|
5
|
+
"names": ["require", "RealMocha"]
|
|
6
6
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
// plugs/mocha/runner.ts
|
|
2
2
|
import RealMocha from "mocha";
|
|
3
|
+
import { assert } from "../../assert.mjs";
|
|
3
4
|
import { BuildFailure } from "../../failure.mjs";
|
|
4
|
-
import { $wht, NOTICE } from "../../log.mjs";
|
|
5
|
+
import { $p, $wht, NOTICE } from "../../log.mjs";
|
|
6
|
+
import { resolveFile } from "../../paths.mjs";
|
|
5
7
|
import { logSymbol, PlugReporter } from "./reporter.mjs";
|
|
6
8
|
var Mocha = class {
|
|
7
9
|
constructor(_options = {}) {
|
|
@@ -10,12 +12,20 @@ var Mocha = class {
|
|
|
10
12
|
async pipe(files, context) {
|
|
11
13
|
context.log.notice("");
|
|
12
14
|
context.log.enter(NOTICE, $wht("Starting Mocha"));
|
|
15
|
+
const { require: require2, ...options } = this._options;
|
|
16
|
+
if (require2) {
|
|
17
|
+
const requiredFile = context.resolve(require2);
|
|
18
|
+
const scriptFile = resolveFile(requiredFile);
|
|
19
|
+
assert(scriptFile, `Mocha setup file ${$p(requiredFile)} not found`);
|
|
20
|
+
context.log.debug(`Importing setup script ${$p(requiredFile)}`);
|
|
21
|
+
await import(scriptFile);
|
|
22
|
+
}
|
|
13
23
|
const mocha = new RealMocha({
|
|
14
24
|
diff: true,
|
|
15
25
|
reporter: PlugReporter,
|
|
16
|
-
...
|
|
26
|
+
...options,
|
|
17
27
|
reporterOptions: {
|
|
18
|
-
...
|
|
28
|
+
...options.reporterOptions,
|
|
19
29
|
[logSymbol]: context.log
|
|
20
30
|
},
|
|
21
31
|
allowUncaught: false,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/mocha/runner.ts"],
|
|
4
|
-
"mappings": ";AAAA,OAAO,eAAe;
|
|
5
|
-
"names": []
|
|
4
|
+
"mappings": ";AAAA,OAAO,eAAe;AACtB,SAAS,cAAc;AAEvB,SAAS,oBAAoB;AAE7B,SAAS,IAAI,MAAM,cAAc;AACjC,SAAS,mBAAmB;AAG5B,SAAS,WAAW,oBAAoB;AAGxC,IAAqB,QAArB,MAAiD;AAAA,EAE/C,YAA6B,WAAyB,CAAC,GAAG;AAA7B;AAAA,EAA8B;AAAA,EAE3D,MAAM,KAAK,OAAc,SAAiC;AAGxD,YAAQ,IAAI,OAAO,EAAE;AACrB,YAAQ,IAAI,MAAM,QAAQ,KAAK,gBAAgB,CAAC;AAGhD,UAAM,EAAE,SAAAA,aAAY,QAAQ,IAAI,KAAK;AAGrC,QAAIA,UAAS;AACX,YAAM,eAAe,QAAQ,QAAQA,QAAO;AAC5C,YAAM,aAAa,YAAY,YAAY;AAC3C,aAAO,YAAY,oBAAoB,GAAG,YAAY,aAAa;AACnE,cAAQ,IAAI,MAAM,0BAA0B,GAAG,YAAY,GAAG;AAC9D,YAAM,OAAO;AAAA,IACf;AAGA,UAAM,QAAQ,IAAI,UAAU;AAAA,MAC1B,MAAM;AAAA,MACN,UAAU;AAAA,MACV,GAAG;AAAA,MACH,iBAAiB;AAAA,QACf,GAAG,QAAQ;AAAA,QACX,CAAC,YAAY,QAAQ;AAAA,MACvB;AAAA,MACA,eAAe;AAAA,MACf,OAAO;AAAA,IACT,CAAC;AAGD,eAAW,QAAQ,MAAM,cAAc;AAAG,YAAM,QAAQ,IAAI;AAE5D,UAAM,MAAM,eAAe;AAG3B,WAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,UAAI;AACF,cAAM,IAAI,CAAC,aAAa;AACtB,cAAI;AAAU,mBAAO,aAAa,KAAK,CAAC;AACxC,kBAAQ,MAAS;AAAA,QACnB,CAAC;AAAA,MACH,SAAS,OAAP;AACA,eAAO,KAAK;AAAA,MACd;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
|
|
5
|
+
"names": ["require"]
|
|
6
6
|
}
|
package/dist/plugs/mocha.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/plugs/mocha.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,kBAA+B;AAC/B,mBAA+B;AAAA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,kBAA+B;AAC/B,mBAA+B;AAAA,IAyC/B,4BAAe,aAAS,6BAAe,YAAW,gBAAgB,CAAC;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/plugs/mocha.d.ts
CHANGED
package/dist/plugs/mocha.mjs.map
CHANGED
|
@@ -70,6 +70,7 @@ async function getCompilerOptions(file, ...override) {
|
|
|
70
70
|
if (override.length) {
|
|
71
71
|
const [overrides, overridesFile, overridesDir] = override;
|
|
72
72
|
const options = import_typescript.default.convertCompilerOptionsFromJson(overrides, overridesDir, overridesFile);
|
|
73
|
+
delete options.options.configFilePath;
|
|
73
74
|
result = mergeResults(result, options);
|
|
74
75
|
}
|
|
75
76
|
return result;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/tsc/options.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAe;AAEf,mBAAqE;AACrE,qBAAyB;AAWzB,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,UAAM,gCAAkB,IAAI;AAGlC,QAAM,OAAO,UAAM,yBAAS,MAAM,OAAO;AACzC,QAAM,EAAE,QAAQ,MAAM,IAAI,kBAAAA,QAAG,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,kBAAAA,QAAG,+BAA+B,iBAAiB,KAAK,IAAI;AAC3E,MAAI,OAAO,OAAO;AAAQ,WAAO;AAGjC,MAAI,CAAC;AAAa,WAAO;AAGzB,QAAM,UAAM,kCAAoB,KAAK,WAAW;AAGhD,MAAI,MAAM,SAAS,GAAG,GAAG;AACvB,WAAO,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAE;AAAA,MAC9B,aAAa,wCAAwC;AAAA,MACrD,UAAU,kBAAAA,QAAG,mBAAmB;AAAA,MAChC,MAAM;AAAA,MACN,MAAM,kBAAAA,QAAG,iBAAiB,MAAM,MAAM,kBAAAA,QAAG,aAAa,MAAM,OAAO,kBAAAA,QAAG,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,kBAAAA,QAAG,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,kBAAAA,QAAG,+BAA+B,WAAW,cAAc,aAAa;AACxF,aAAS,aAAa,QAAQ,OAAO;AAAA,EACvC;AAGA,SAAO;AACT;",
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAe;AAEf,mBAAqE;AACrE,qBAAyB;AAWzB,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,UAAM,gCAAkB,IAAI;AAGlC,QAAM,OAAO,UAAM,yBAAS,MAAM,OAAO;AACzC,QAAM,EAAE,QAAQ,MAAM,IAAI,kBAAAA,QAAG,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,kBAAAA,QAAG,+BAA+B,iBAAiB,KAAK,IAAI;AAC3E,MAAI,OAAO,OAAO;AAAQ,WAAO;AAGjC,MAAI,CAAC;AAAa,WAAO;AAGzB,QAAM,UAAM,kCAAoB,KAAK,WAAW;AAGhD,MAAI,MAAM,SAAS,GAAG,GAAG;AACvB,WAAO,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAE;AAAA,MAC9B,aAAa,wCAAwC;AAAA,MACrD,UAAU,kBAAAA,QAAG,mBAAmB;AAAA,MAChC,MAAM;AAAA,MACN,MAAM,kBAAAA,QAAG,iBAAiB,MAAM,MAAM,kBAAAA,QAAG,aAAa,MAAM,OAAO,kBAAAA,QAAG,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,kBAAAA,QAAG,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,kBAAAA,QAAG,+BAA+B,WAAW,cAAc,aAAa;AACxF,WAAO,QAAQ,QAAQ;AACvB,aAAS,aAAa,QAAQ,OAAO;AAAA,EACvC;AAGA,SAAO;AACT;",
|
|
5
5
|
"names": ["ts"]
|
|
6
6
|
}
|
|
@@ -40,6 +40,7 @@ async function getCompilerOptions(file, ...override) {
|
|
|
40
40
|
if (override.length) {
|
|
41
41
|
const [overrides, overridesFile, overridesDir] = override;
|
|
42
42
|
const options = ts.convertCompilerOptionsFromJson(overrides, overridesDir, overridesFile);
|
|
43
|
+
delete options.options.configFilePath;
|
|
43
44
|
result = mergeResults(result, options);
|
|
44
45
|
}
|
|
45
46
|
return result;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/tsc/options.ts"],
|
|
4
|
-
"mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAuB,mBAAmB,2BAA2B;AACrE,SAAS,gBAAgB;AAWzB,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,aAAS,aAAa,QAAQ,OAAO;AAAA,EACvC;AAGA,SAAO;AACT;",
|
|
4
|
+
"mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAuB,mBAAmB,2BAA2B;AACrE,SAAS,gBAAgB;AAWzB,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
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -39,6 +39,7 @@ var import_options = require("../../utils/options.cjs");
|
|
|
39
39
|
var import_compiler = require("./compiler.cjs");
|
|
40
40
|
var import_options2 = require("./options.cjs");
|
|
41
41
|
var import_report = require("./report.cjs");
|
|
42
|
+
var import_walk = require("../../utils/walk.cjs");
|
|
42
43
|
var Tsc = class {
|
|
43
44
|
_tsconfig;
|
|
44
45
|
_options;
|
|
@@ -50,7 +51,7 @@ var Tsc = class {
|
|
|
50
51
|
async pipe(files, context) {
|
|
51
52
|
const baseDir = context.resolve(".");
|
|
52
53
|
const report = context.log.report("TypeScript Report");
|
|
53
|
-
const overrides = { ...this._options };
|
|
54
|
+
const { extraTypesDir, ...overrides } = { ...this._options };
|
|
54
55
|
const sourcesConfig = (0, import_paths.resolveFile)(files.directory, "tsconfig.json");
|
|
55
56
|
const tsconfig = this._tsconfig ? context.resolve(this._tsconfig) : sourcesConfig || (0, import_paths.resolveFile)(context.resolve("tsconfig.json"));
|
|
56
57
|
let rootDir;
|
|
@@ -83,6 +84,14 @@ var Tsc = class {
|
|
|
83
84
|
for (const path of paths)
|
|
84
85
|
import_log.log.trace(`Compiling "${(0, import_log.$p)(path)}"`);
|
|
85
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
|
+
}
|
|
86
95
|
import_log.log.debug("Compliation options", options);
|
|
87
96
|
const host = new import_compiler.TypeScriptHost(rootDir);
|
|
88
97
|
const program = import_typescript.default.createProgram(paths, options, host, void 0, errors);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/tsc/runner.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAe;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["import_options", "ts"]
|
|
6
6
|
}
|
|
@@ -9,6 +9,7 @@ import { parseOptions } from "../../utils/options.mjs";
|
|
|
9
9
|
import { TypeScriptHost } from "./compiler.mjs";
|
|
10
10
|
import { getCompilerOptions } from "./options.mjs";
|
|
11
11
|
import { updateReport } from "./report.mjs";
|
|
12
|
+
import { walk } from "../../utils/walk.mjs";
|
|
12
13
|
var Tsc = class {
|
|
13
14
|
_tsconfig;
|
|
14
15
|
_options;
|
|
@@ -20,7 +21,7 @@ var Tsc = class {
|
|
|
20
21
|
async pipe(files, context) {
|
|
21
22
|
const baseDir = context.resolve(".");
|
|
22
23
|
const report = context.log.report("TypeScript Report");
|
|
23
|
-
const overrides = { ...this._options };
|
|
24
|
+
const { extraTypesDir, ...overrides } = { ...this._options };
|
|
24
25
|
const sourcesConfig = resolveFile(files.directory, "tsconfig.json");
|
|
25
26
|
const tsconfig = this._tsconfig ? context.resolve(this._tsconfig) : sourcesConfig || resolveFile(context.resolve("tsconfig.json"));
|
|
26
27
|
let rootDir;
|
|
@@ -53,6 +54,14 @@ var Tsc = class {
|
|
|
53
54
|
for (const path of paths)
|
|
54
55
|
log.trace(`Compiling "${$p(path)}"`);
|
|
55
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
|
+
}
|
|
56
65
|
log.debug("Compliation options", options);
|
|
57
66
|
const host = new TypeScriptHost(rootDir);
|
|
58
67
|
const program = ts.createProgram(paths, options, host, void 0, errors);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/tsc/runner.ts"],
|
|
4
|
-
"mappings": ";AAAA,OAAO,QAAQ;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/plugs/tsc.cjs
CHANGED
|
@@ -1,6 +1,21 @@
|
|
|
1
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 __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
2
15
|
|
|
3
16
|
// plugs/tsc.ts
|
|
17
|
+
var tsc_exports = {};
|
|
18
|
+
module.exports = __toCommonJS(tsc_exports);
|
|
4
19
|
var import_fork = require("../fork.cjs");
|
|
5
20
|
var import_paths = require("../paths.cjs");
|
|
6
21
|
(0, import_fork.installForking)("tsc", (0, import_paths.requireResolve)(__filename, "./tsc/runner"));
|
package/dist/plugs/tsc.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/plugs/tsc.ts"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAEA,kBAA+B;AAC/B,mBAA+B;AAAA,IAsD/B,4BAAe,WAAO,6BAAe,YAAW,cAAc,CAAC;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/plugs/tsc.d.ts
CHANGED
|
@@ -1,4 +1,16 @@
|
|
|
1
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
|
+
}
|
|
2
14
|
declare module '../pipe' {
|
|
3
15
|
interface Pipe {
|
|
4
16
|
/**
|
|
@@ -18,19 +30,19 @@ declare module '../pipe' {
|
|
|
18
30
|
* over the input source files, using the default `tsconfig.json` file
|
|
19
31
|
* and overriding some options
|
|
20
32
|
*
|
|
21
|
-
* @param options {@link
|
|
22
|
-
*
|
|
33
|
+
* @param options {@link ExtendedCompilerOptions | Options} overriding
|
|
34
|
+
* the contents of the default `tsconfig.json`.
|
|
23
35
|
*/
|
|
24
|
-
tsc(options:
|
|
36
|
+
tsc(options: ExtendedCompilerOptions): Pipe;
|
|
25
37
|
/**
|
|
26
38
|
* Run the {@link https://www.typescriptlang.org/ TypeScript Compiler}
|
|
27
39
|
* over the input source files, specifying the `tsconfig.json` file
|
|
28
40
|
* and overriding some options
|
|
29
41
|
*
|
|
30
42
|
* @param configFile The `tsconfig.json` file to use.
|
|
31
|
-
* @param options {@link
|
|
32
|
-
*
|
|
43
|
+
* @param options {@link ExtendedCompilerOptions | Options} overriding
|
|
44
|
+
* the contents of the specified `tsconfig.json`.
|
|
33
45
|
*/
|
|
34
|
-
tsc(configFile: string, options:
|
|
46
|
+
tsc(configFile: string, options: ExtendedCompilerOptions): Pipe;
|
|
35
47
|
}
|
|
36
48
|
}
|
package/dist/plugs/tsc.mjs
CHANGED
|
@@ -1,15 +1,5 @@
|
|
|
1
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
2
|
-
var __commonJS = (cb, mod) => function __require() {
|
|
3
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
4
|
-
};
|
|
5
|
-
|
|
6
1
|
// plugs/tsc.ts
|
|
7
2
|
import { installForking } from "../fork.mjs";
|
|
8
3
|
import { requireResolve } from "../paths.mjs";
|
|
9
|
-
|
|
10
|
-
"plugs/tsc.ts"() {
|
|
11
|
-
installForking("tsc", requireResolve(import.meta.url, "./tsc/runner"));
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
export default require_tsc();
|
|
4
|
+
installForking("tsc", requireResolve(import.meta.url, "./tsc/runner"));
|
|
15
5
|
//# sourceMappingURL=tsc.mjs.map
|
package/dist/plugs/tsc.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/plugs/tsc.ts"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": ";AAEA,SAAS,sBAAsB;AAC/B,SAAS,sBAAsB;AAsD/B,eAAe,OAAO,eAAe,iBAAW,cAAc,CAAC;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import RealMocha from 'mocha' // Mocha types pollute the global scope!
|
|
2
|
+
import { assert } from '../../assert'
|
|
2
3
|
|
|
3
4
|
import { BuildFailure } from '../../failure'
|
|
4
5
|
import { Files } from '../../files'
|
|
5
|
-
import { $wht, NOTICE } from '../../log'
|
|
6
|
+
import { $p, $wht, NOTICE } from '../../log'
|
|
7
|
+
import { resolveFile } from '../../paths'
|
|
6
8
|
import { Context, PipeParameters, Plug } from '../../pipe'
|
|
7
9
|
import { MochaOptions } from '../mocha'
|
|
8
10
|
import { logSymbol, PlugReporter } from './reporter'
|
|
@@ -18,13 +20,25 @@ export default class Mocha implements Plug<void> {
|
|
|
18
20
|
context.log.notice('') // empty line
|
|
19
21
|
context.log.enter(NOTICE, $wht('Starting Mocha'))
|
|
20
22
|
|
|
23
|
+
// Expand our options
|
|
24
|
+
const { require, ...options } = this._options
|
|
25
|
+
|
|
26
|
+
// See if we require a setup script...
|
|
27
|
+
if (require) {
|
|
28
|
+
const requiredFile = context.resolve(require)
|
|
29
|
+
const scriptFile = resolveFile(requiredFile)
|
|
30
|
+
assert(scriptFile, `Mocha setup file ${$p(requiredFile)} not found`)
|
|
31
|
+
context.log.debug(`Importing setup script ${$p(requiredFile)}`)
|
|
32
|
+
await import(scriptFile)
|
|
33
|
+
}
|
|
34
|
+
|
|
21
35
|
// Create the mocha runner
|
|
22
36
|
const mocha = new RealMocha({
|
|
23
37
|
diff: true, // by defaut enable diffs
|
|
24
38
|
reporter: PlugReporter, // default to our reporter
|
|
25
|
-
...
|
|
39
|
+
...options, // override defaults with all other options
|
|
26
40
|
reporterOptions: {
|
|
27
|
-
...
|
|
41
|
+
...options.reporterOptions,
|
|
28
42
|
[logSymbol]: context.log, // always force a log
|
|
29
43
|
},
|
|
30
44
|
allowUncaught: false, // never allow uncaught exceptions
|
package/src/plugs/mocha.ts
CHANGED
package/src/plugs/tsc/options.ts
CHANGED
|
@@ -89,6 +89,7 @@ export async function getCompilerOptions(
|
|
|
89
89
|
if (override.length) {
|
|
90
90
|
const [ overrides, overridesFile, overridesDir ] = override
|
|
91
91
|
const options = ts.convertCompilerOptionsFromJson(overrides, overridesDir, overridesFile)
|
|
92
|
+
delete options.options.configFilePath // remove build file name...
|
|
92
93
|
result = mergeResults(result, options)
|
|
93
94
|
}
|
|
94
95
|
|
package/src/plugs/tsc/runner.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import ts from 'typescript' // TypeScript does NOT support ESM modules
|
|
2
2
|
|
|
3
|
+
import type { ExtendedCompilerOptions } from '../tsc'
|
|
4
|
+
|
|
3
5
|
import { assertPromises } from '../../assert'
|
|
4
6
|
import { BuildFailure } from '../../failure'
|
|
5
7
|
import { Files } from '../../files'
|
|
@@ -10,6 +12,7 @@ import { parseOptions } from '../../utils/options'
|
|
|
10
12
|
import { TypeScriptHost } from './compiler'
|
|
11
13
|
import { getCompilerOptions } from './options'
|
|
12
14
|
import { updateReport } from './report'
|
|
15
|
+
import { walk } from '../../utils/walk'
|
|
13
16
|
|
|
14
17
|
/* ========================================================================== *
|
|
15
18
|
* WORKER PLUG *
|
|
@@ -17,7 +20,7 @@ import { updateReport } from './report'
|
|
|
17
20
|
|
|
18
21
|
export default class Tsc implements Plug<Files> {
|
|
19
22
|
private readonly _tsconfig?: string
|
|
20
|
-
private readonly _options:
|
|
23
|
+
private readonly _options: ExtendedCompilerOptions
|
|
21
24
|
|
|
22
25
|
constructor(...args: PipeParameters<'tsc'>) {
|
|
23
26
|
const { params: [ tsconfig ], options } = parseOptions(args, {})
|
|
@@ -28,7 +31,7 @@ export default class Tsc implements Plug<Files> {
|
|
|
28
31
|
async pipe(files: Files, context: Context): Promise<Files> {
|
|
29
32
|
const baseDir = context.resolve('.') // "this" directory, base of all relative paths
|
|
30
33
|
const report = context.log.report('TypeScript Report') // report used throughout
|
|
31
|
-
const overrides = { ...this._options } // clone our options
|
|
34
|
+
const { extraTypesDir, ...overrides } = { ...this._options } // clone our options
|
|
32
35
|
|
|
33
36
|
/*
|
|
34
37
|
* The "tsconfig" file is either specified, or (if existing) first checked
|
|
@@ -76,8 +79,20 @@ export default class Tsc implements Plug<Files> {
|
|
|
76
79
|
/* Prep for compilation */
|
|
77
80
|
const paths = [ ...files.absolutePaths() ]
|
|
78
81
|
for (const path of paths) log.trace(`Compiling "${$p(path)}"`)
|
|
79
|
-
|
|
80
82
|
log.info('Compiling', paths.length, 'files')
|
|
83
|
+
|
|
84
|
+
/* If we have an extra types directory, add all the .d.ts files in there */
|
|
85
|
+
if (extraTypesDir) {
|
|
86
|
+
const directory = context.resolve(extraTypesDir)
|
|
87
|
+
|
|
88
|
+
for await (const file of walk(directory, [ '**/*.d.ts' ])) {
|
|
89
|
+
const path = resolveAbsolutePath(directory, file)
|
|
90
|
+
log.debug(`Including extra type file "${$p(path)}"`)
|
|
91
|
+
paths.push(path)
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/* Log out what we'll be our final compilation options */
|
|
81
96
|
log.debug('Compliation options', options)
|
|
82
97
|
|
|
83
98
|
/* Typescript host, create program and compile */
|
package/src/plugs/tsc.ts
CHANGED
|
@@ -3,6 +3,19 @@ import type { CompilerOptions } from 'typescript'
|
|
|
3
3
|
import { installForking } from '../fork'
|
|
4
4
|
import { requireResolve } from '../paths'
|
|
5
5
|
|
|
6
|
+
/** TypeScript Compiler options with some additional properties */
|
|
7
|
+
export interface ExtendedCompilerOptions extends CompilerOptions {
|
|
8
|
+
/**
|
|
9
|
+
* An additional directory containing a set of `.d.ts` files which will
|
|
10
|
+
* be part of the compilation input, but not of the output.
|
|
11
|
+
*
|
|
12
|
+
* This can be useful when requiring (or fixing) specific types while
|
|
13
|
+
* compiling a project, but the definition of those types does not affect
|
|
14
|
+
* the resulting files (e.g. used only internally).
|
|
15
|
+
*/
|
|
16
|
+
extraTypesDir?: string | undefined
|
|
17
|
+
}
|
|
18
|
+
|
|
6
19
|
declare module '../pipe' {
|
|
7
20
|
export interface Pipe {
|
|
8
21
|
/**
|
|
@@ -24,10 +37,10 @@ declare module '../pipe' {
|
|
|
24
37
|
* over the input source files, using the default `tsconfig.json` file
|
|
25
38
|
* and overriding some options
|
|
26
39
|
*
|
|
27
|
-
* @param options {@link
|
|
28
|
-
*
|
|
40
|
+
* @param options {@link ExtendedCompilerOptions | Options} overriding
|
|
41
|
+
* the contents of the default `tsconfig.json`.
|
|
29
42
|
*/
|
|
30
|
-
tsc(options:
|
|
43
|
+
tsc(options: ExtendedCompilerOptions): Pipe
|
|
31
44
|
|
|
32
45
|
/**
|
|
33
46
|
* Run the {@link https://www.typescriptlang.org/ TypeScript Compiler}
|
|
@@ -35,10 +48,10 @@ declare module '../pipe' {
|
|
|
35
48
|
* and overriding some options
|
|
36
49
|
*
|
|
37
50
|
* @param configFile The `tsconfig.json` file to use.
|
|
38
|
-
* @param options {@link
|
|
39
|
-
*
|
|
51
|
+
* @param options {@link ExtendedCompilerOptions | Options} overriding
|
|
52
|
+
* the contents of the specified `tsconfig.json`.
|
|
40
53
|
*/
|
|
41
|
-
tsc(configFile: string, options:
|
|
54
|
+
tsc(configFile: string, options: ExtendedCompilerOptions): Pipe
|
|
42
55
|
}
|
|
43
56
|
}
|
|
44
57
|
|