@plugjs/plug 0.0.5 → 0.0.8
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/files.cjs +5 -8
- package/dist/files.cjs.map +1 -1
- package/dist/files.mjs +5 -8
- package/dist/files.mjs.map +1 -1
- package/dist/log/report.cjs +16 -7
- package/dist/log/report.cjs.map +1 -1
- package/dist/log/report.mjs +17 -8
- package/dist/log/report.mjs.map +1 -1
- package/dist/paths.cjs +1 -1
- package/dist/paths.cjs.map +1 -1
- package/dist/paths.mjs +2 -2
- package/dist/paths.mjs.map +1 -1
- package/dist/plugs/copy.cjs +6 -12
- package/dist/plugs/copy.cjs.map +2 -2
- package/dist/plugs/copy.mjs +6 -6
- package/dist/plugs/copy.mjs.map +1 -1
- package/dist/plugs/esbuild.cjs +0 -1
- package/dist/plugs/esbuild.cjs.map +1 -1
- package/dist/plugs/esbuild.mjs +0 -1
- package/dist/plugs/esbuild.mjs.map +1 -1
- package/dist/plugs/tsc/options.cjs +1 -2
- package/dist/plugs/tsc/options.cjs.map +1 -1
- package/dist/plugs/tsc/options.mjs +1 -2
- package/dist/plugs/tsc/options.mjs.map +1 -1
- package/dist/plugs/tsc/runner.cjs +31 -17
- package/dist/plugs/tsc/runner.cjs.map +1 -1
- package/dist/plugs/tsc/runner.mjs +32 -18
- package/dist/plugs/tsc/runner.mjs.map +1 -1
- package/dist/run.cjs +3 -2
- package/dist/run.cjs.map +1 -1
- package/dist/run.mjs +4 -3
- package/dist/run.mjs.map +1 -1
- package/dist/utils/asyncfs.cjs +4 -8
- package/dist/utils/asyncfs.cjs.map +2 -2
- package/dist/utils/asyncfs.mjs +3 -7
- package/dist/utils/asyncfs.mjs.map +2 -2
- package/dist/utils/walk.cjs +7 -4
- package/dist/utils/walk.cjs.map +1 -1
- package/dist/utils/walk.mjs +8 -5
- package/dist/utils/walk.mjs.map +1 -1
- package/package.json +4 -4
- package/src/files.ts +9 -12
- package/src/log/report.ts +22 -11
- package/src/paths.ts +2 -2
- package/src/plugs/copy.ts +6 -7
- package/src/plugs/esbuild.ts +0 -1
- package/src/plugs/tsc/options.ts +3 -3
- package/src/plugs/tsc/runner.ts +52 -28
- package/src/run.ts +4 -3
- package/src/utils/asyncfs.ts +9 -8
- package/src/utils/walk.ts +10 -5
- package/types/files.d.ts +1 -5
- package/types/plugs/esbuild.d.ts +0 -1
- package/types/plugs/tsc/options.d.ts +1 -1
- package/types/utils/asyncfs.d.ts +2 -5
- package/dist/plugs/esbuild/check-dependencies.cjs +0 -140
- package/dist/plugs/esbuild/check-dependencies.cjs.map +0 -6
- package/dist/plugs/esbuild/check-dependencies.mjs +0 -115
- package/dist/plugs/esbuild/check-dependencies.mjs.map +0 -6
- package/src/plugs/esbuild/check-dependencies.ts +0 -158
- package/types/plugs/esbuild/check-dependencies.d.ts +0 -12
|
@@ -46,35 +46,49 @@ var Tsc = class {
|
|
|
46
46
|
this._options = options;
|
|
47
47
|
}
|
|
48
48
|
async pipe(files, run) {
|
|
49
|
-
const
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
const baseDir = run.resolve(".");
|
|
50
|
+
const report = run.report("TypeScript Report");
|
|
51
|
+
const overrides = { ...this._options };
|
|
52
|
+
const sourcesConfig = (0, import_paths.isFile)(files.directory, "tsconfig.json");
|
|
53
|
+
const tsconfig = this._tsconfig ? run.resolve(this._tsconfig) : sourcesConfig || (0, import_paths.isFile)(run.resolve("tsconfig.json"));
|
|
54
|
+
let rootDir;
|
|
55
|
+
if (overrides.rootDir) {
|
|
56
|
+
rootDir = overrides.rootDir = run.resolve(overrides.rootDir);
|
|
57
|
+
} else {
|
|
58
|
+
rootDir = overrides.rootDir = files.directory;
|
|
59
|
+
}
|
|
60
|
+
let outDir;
|
|
61
|
+
if (overrides.outDir) {
|
|
62
|
+
outDir = overrides.outDir = run.resolve(overrides.outDir);
|
|
63
|
+
} else {
|
|
64
|
+
outDir = overrides.outDir = rootDir;
|
|
65
|
+
}
|
|
66
|
+
if (overrides.rootDirs) {
|
|
67
|
+
overrides.rootDirs = overrides.rootDirs.map((dir) => run.resolve(dir));
|
|
68
|
+
}
|
|
69
|
+
if (overrides.baseUrl)
|
|
70
|
+
overrides.baseUrl = run.resolve(overrides.baseUrl);
|
|
54
71
|
const { errors, options } = await (0, import_options2.getCompilerOptions)(
|
|
55
72
|
tsconfig,
|
|
56
73
|
overrides,
|
|
57
|
-
run.buildFile
|
|
74
|
+
run.buildFile,
|
|
75
|
+
baseDir
|
|
58
76
|
);
|
|
59
|
-
|
|
60
|
-
(0, import_report.updateReport)(report, errors, (0, import_paths.getCurrentWorkingDirectory)());
|
|
77
|
+
(0, import_report.updateReport)(report, errors, baseDir);
|
|
61
78
|
if (report.errors)
|
|
62
79
|
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
80
|
const paths = [...files.absolutePaths()];
|
|
68
81
|
for (const path of paths)
|
|
69
82
|
import_log.log.trace(`Compiling "${(0, import_log.$p)(path)}"`);
|
|
70
83
|
import_log.log.info("Compiling", paths.length, "files");
|
|
71
84
|
import_log.log.debug("Compliation options", options);
|
|
85
|
+
const host = new import_compiler.TypeScriptHost(rootDir);
|
|
72
86
|
const program = import_typescript.default.createProgram(paths, options, host, void 0, errors);
|
|
73
87
|
const diagnostics = import_typescript.default.getPreEmitDiagnostics(program);
|
|
74
|
-
(0, import_report.updateReport)(report, diagnostics,
|
|
88
|
+
(0, import_report.updateReport)(report, diagnostics, rootDir);
|
|
75
89
|
if (report.errors)
|
|
76
90
|
report.done(true);
|
|
77
|
-
const builder = run.files(
|
|
91
|
+
const builder = run.files(outDir);
|
|
78
92
|
const promises = [];
|
|
79
93
|
const result = program.emit(void 0, (fileName, code) => {
|
|
80
94
|
promises.push(builder.write(fileName, code).then((file) => {
|
|
@@ -84,13 +98,13 @@ var Tsc = class {
|
|
|
84
98
|
throw (0, import_assert.failure)();
|
|
85
99
|
}));
|
|
86
100
|
});
|
|
87
|
-
(0, import_report.updateReport)(report, result.diagnostics, root);
|
|
88
|
-
if (report.errors)
|
|
89
|
-
report.done(true);
|
|
90
101
|
const settlements = await Promise.allSettled(promises);
|
|
91
102
|
const failures = settlements.reduce((failures2, s) => failures2 + s.status === "rejected" ? 1 : 0, 0);
|
|
92
103
|
if (failures)
|
|
93
104
|
throw (0, import_assert.failure)();
|
|
105
|
+
(0, import_report.updateReport)(report, result.diagnostics, rootDir);
|
|
106
|
+
if (report.errors)
|
|
107
|
+
report.done(true);
|
|
94
108
|
const outputs = builder.build();
|
|
95
109
|
import_log.log.info("TSC produced", outputs.length, "files into", (0, import_log.$p)(outputs.directory));
|
|
96
110
|
return outputs;
|
|
@@ -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;AAEf,oBAAwB;AAExB,iBAAwB;AACxB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["import_options", "ts", "failures"]
|
|
6
6
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import ts from "typescript";
|
|
3
3
|
import { failure } from "../../assert.mjs";
|
|
4
4
|
import { $p, log } from "../../log.mjs";
|
|
5
|
-
import {
|
|
5
|
+
import { isFile } from "../../paths.mjs";
|
|
6
6
|
import { parseOptions } from "../../utils/options.mjs";
|
|
7
7
|
import { TypeScriptHost } from "./compiler.mjs";
|
|
8
8
|
import { getCompilerOptions } from "./options.mjs";
|
|
@@ -16,35 +16,49 @@ var Tsc = class {
|
|
|
16
16
|
this._options = options;
|
|
17
17
|
}
|
|
18
18
|
async pipe(files, run) {
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
const baseDir = run.resolve(".");
|
|
20
|
+
const report = run.report("TypeScript Report");
|
|
21
|
+
const overrides = { ...this._options };
|
|
22
|
+
const sourcesConfig = isFile(files.directory, "tsconfig.json");
|
|
23
|
+
const tsconfig = this._tsconfig ? run.resolve(this._tsconfig) : sourcesConfig || isFile(run.resolve("tsconfig.json"));
|
|
24
|
+
let rootDir;
|
|
25
|
+
if (overrides.rootDir) {
|
|
26
|
+
rootDir = overrides.rootDir = run.resolve(overrides.rootDir);
|
|
27
|
+
} else {
|
|
28
|
+
rootDir = overrides.rootDir = files.directory;
|
|
29
|
+
}
|
|
30
|
+
let outDir;
|
|
31
|
+
if (overrides.outDir) {
|
|
32
|
+
outDir = overrides.outDir = run.resolve(overrides.outDir);
|
|
33
|
+
} else {
|
|
34
|
+
outDir = overrides.outDir = rootDir;
|
|
35
|
+
}
|
|
36
|
+
if (overrides.rootDirs) {
|
|
37
|
+
overrides.rootDirs = overrides.rootDirs.map((dir) => run.resolve(dir));
|
|
38
|
+
}
|
|
39
|
+
if (overrides.baseUrl)
|
|
40
|
+
overrides.baseUrl = run.resolve(overrides.baseUrl);
|
|
24
41
|
const { errors, options } = await getCompilerOptions(
|
|
25
42
|
tsconfig,
|
|
26
43
|
overrides,
|
|
27
|
-
run.buildFile
|
|
44
|
+
run.buildFile,
|
|
45
|
+
baseDir
|
|
28
46
|
);
|
|
29
|
-
|
|
30
|
-
updateReport(report, errors, getCurrentWorkingDirectory());
|
|
47
|
+
updateReport(report, errors, baseDir);
|
|
31
48
|
if (report.errors)
|
|
32
49
|
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
50
|
const paths = [...files.absolutePaths()];
|
|
38
51
|
for (const path of paths)
|
|
39
52
|
log.trace(`Compiling "${$p(path)}"`);
|
|
40
53
|
log.info("Compiling", paths.length, "files");
|
|
41
54
|
log.debug("Compliation options", options);
|
|
55
|
+
const host = new TypeScriptHost(rootDir);
|
|
42
56
|
const program = ts.createProgram(paths, options, host, void 0, errors);
|
|
43
57
|
const diagnostics = ts.getPreEmitDiagnostics(program);
|
|
44
|
-
updateReport(report, diagnostics,
|
|
58
|
+
updateReport(report, diagnostics, rootDir);
|
|
45
59
|
if (report.errors)
|
|
46
60
|
report.done(true);
|
|
47
|
-
const builder = run.files(
|
|
61
|
+
const builder = run.files(outDir);
|
|
48
62
|
const promises = [];
|
|
49
63
|
const result = program.emit(void 0, (fileName, code) => {
|
|
50
64
|
promises.push(builder.write(fileName, code).then((file) => {
|
|
@@ -54,13 +68,13 @@ var Tsc = class {
|
|
|
54
68
|
throw failure();
|
|
55
69
|
}));
|
|
56
70
|
});
|
|
57
|
-
updateReport(report, result.diagnostics, root);
|
|
58
|
-
if (report.errors)
|
|
59
|
-
report.done(true);
|
|
60
71
|
const settlements = await Promise.allSettled(promises);
|
|
61
72
|
const failures = settlements.reduce((failures2, s) => failures2 + s.status === "rejected" ? 1 : 0, 0);
|
|
62
73
|
if (failures)
|
|
63
74
|
throw failure();
|
|
75
|
+
updateReport(report, result.diagnostics, rootDir);
|
|
76
|
+
if (report.errors)
|
|
77
|
+
report.done(true);
|
|
64
78
|
const outputs = builder.build();
|
|
65
79
|
log.info("TSC produced", outputs.length, "files into", $p(outputs.directory));
|
|
66
80
|
return outputs;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/tsc/runner.ts"],
|
|
4
|
-
"mappings": ";AAAA,OAAO,QAAQ;AAEf,SAAS,eAAe;AAExB,SAAS,IAAI,WAAW;AACxB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["failures"]
|
|
6
6
|
}
|
package/dist/run.cjs
CHANGED
|
@@ -53,8 +53,9 @@ var RunImpl = class {
|
|
|
53
53
|
if (!path)
|
|
54
54
|
return this.buildDir;
|
|
55
55
|
if (path.startsWith("@")) {
|
|
56
|
-
const
|
|
57
|
-
|
|
56
|
+
const components = (0, import_node_path.normalize)(path.substring(1)).split(import_node_path.sep);
|
|
57
|
+
const relative = (0, import_node_path.join)(...components);
|
|
58
|
+
(0, import_assert.assert)(!(0, import_paths.isAbsolutePath)(relative), `Path "${path.substring(1)}" is absolute`);
|
|
58
59
|
return (0, import_paths.resolveAbsolutePath)(this.buildDir, relative);
|
|
59
60
|
}
|
|
60
61
|
if ((0, import_paths.isAbsolutePath)(path))
|
package/dist/run.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/run.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAqC;AACrC,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,iBAAa,4BAAU,KAAK,UAAU,CAAC,CAAC,EAAE,MAAM,oBAAG;AACzD,YAAM,eAAW,uBAAK,GAAG,UAAU;AACnC,gCAAO,KAAE,6BAAe,QAAQ,GAAG,SAAS,KAAK,UAAU,CAAC,gBAAgB;AAC5E,iBAAO,kCAAoB,KAAK,UAAU,QAAQ;AAAA,IACpD;AAEA,YAAI,6BAAe,IAAI;AAAG,aAAO;AAEjC,eAAO,sCAAoB,yCAA2B,GAAG,IAAI;AAAA,EAC/D;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,UAAU,IAAI;AAAA,MACxB;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
5
|
"names": []
|
|
6
6
|
}
|
package/dist/run.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// run.ts
|
|
2
|
-
import { join } from "node:path";
|
|
2
|
+
import { join, normalize, sep } from "node:path";
|
|
3
3
|
import { assert } from "./assert.mjs";
|
|
4
4
|
import { Files } from "./files.mjs";
|
|
5
5
|
import { createReport, getLevelNumber, getLogger } from "./log.mjs";
|
|
@@ -29,8 +29,9 @@ var RunImpl = class {
|
|
|
29
29
|
if (!path)
|
|
30
30
|
return this.buildDir;
|
|
31
31
|
if (path.startsWith("@")) {
|
|
32
|
-
const
|
|
33
|
-
|
|
32
|
+
const components = normalize(path.substring(1)).split(sep);
|
|
33
|
+
const relative = join(...components);
|
|
34
|
+
assert(!isAbsolutePath(relative), `Path "${path.substring(1)}" is absolute`);
|
|
34
35
|
return resolveAbsolutePath(this.buildDir, relative);
|
|
35
36
|
}
|
|
36
37
|
if (isAbsolutePath(path))
|
package/dist/run.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/run.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,
|
|
4
|
+
"mappings": ";AAAA,SAAS,MAAM,WAAW,WAAW;AACrC,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,aAAa,UAAU,KAAK,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG;AACzD,YAAM,WAAW,KAAK,GAAG,UAAU;AACnC,aAAO,CAAE,eAAe,QAAQ,GAAG,SAAS,KAAK,UAAU,CAAC,gBAAgB;AAC5E,aAAO,oBAAoB,KAAK,UAAU,QAAQ;AAAA,IACpD;AAEA,QAAI,eAAe,IAAI;AAAG,aAAO;AAEjC,WAAO,oBAAoB,2BAA2B,GAAG,IAAI;AAAA,EAC/D;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,UAAU,IAAI;AAAA,MACxB;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
5
|
"names": []
|
|
6
6
|
}
|
package/dist/utils/asyncfs.cjs
CHANGED
|
@@ -30,10 +30,9 @@ __export(asyncfs_exports, {
|
|
|
30
30
|
appendFile: () => appendFile,
|
|
31
31
|
chmod: () => chmod,
|
|
32
32
|
chown: () => chown,
|
|
33
|
-
constants: () => import_node_fs2.constants,
|
|
34
33
|
copyFile: () => copyFile,
|
|
35
34
|
cp: () => cp,
|
|
36
|
-
|
|
35
|
+
fsConstants: () => fsConstants,
|
|
37
36
|
lchmod: () => lchmod,
|
|
38
37
|
lchown: () => lchown,
|
|
39
38
|
link: () => link,
|
|
@@ -61,7 +60,6 @@ __export(asyncfs_exports, {
|
|
|
61
60
|
module.exports = __toCommonJS(asyncfs_exports);
|
|
62
61
|
var import_node_fs = require("node:fs");
|
|
63
62
|
var import_promises = __toESM(require("node:fs/promises"));
|
|
64
|
-
var import_node_fs2 = require("node:fs");
|
|
65
63
|
var fs = Object.entries(import_promises.default).reduce((fs2, [key, val]) => {
|
|
66
64
|
if (typeof val === "function") {
|
|
67
65
|
const f = function(...args) {
|
|
@@ -72,12 +70,9 @@ var fs = Object.entries(import_promises.default).reduce((fs2, [key, val]) => {
|
|
|
72
70
|
};
|
|
73
71
|
Object.defineProperty(f, "name", { value: key });
|
|
74
72
|
fs2[key] = f;
|
|
75
|
-
} else {
|
|
76
|
-
fs2[key] = val;
|
|
77
73
|
}
|
|
78
74
|
return fs2;
|
|
79
|
-
}, {
|
|
80
|
-
var asyncfs_default = fs;
|
|
75
|
+
}, {});
|
|
81
76
|
var access = fs.access;
|
|
82
77
|
var copyFile = fs.copyFile;
|
|
83
78
|
var cp = fs.cp;
|
|
@@ -107,15 +102,16 @@ var writeFile = fs.writeFile;
|
|
|
107
102
|
var appendFile = fs.appendFile;
|
|
108
103
|
var readFile = fs.readFile;
|
|
109
104
|
var watch = fs.watch;
|
|
105
|
+
var fsConstants = import_node_fs.constants;
|
|
110
106
|
// Annotate the CommonJS export names for ESM import in node:
|
|
111
107
|
0 && (module.exports = {
|
|
112
108
|
access,
|
|
113
109
|
appendFile,
|
|
114
110
|
chmod,
|
|
115
111
|
chown,
|
|
116
|
-
constants,
|
|
117
112
|
copyFile,
|
|
118
113
|
cp,
|
|
114
|
+
fsConstants,
|
|
119
115
|
lchmod,
|
|
120
116
|
lchown,
|
|
121
117
|
link,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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
|
|
5
|
-
"names": ["
|
|
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
6
|
}
|
package/dist/utils/asyncfs.mjs
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
// utils/asyncfs.ts
|
|
2
2
|
import { constants } from "node:fs";
|
|
3
3
|
import fsp from "node:fs/promises";
|
|
4
|
-
import { constants as constants2 } from "node:fs";
|
|
5
4
|
var fs = Object.entries(fsp).reduce((fs2, [key, val]) => {
|
|
6
5
|
if (typeof val === "function") {
|
|
7
6
|
const f = function(...args) {
|
|
@@ -12,12 +11,9 @@ var fs = Object.entries(fsp).reduce((fs2, [key, val]) => {
|
|
|
12
11
|
};
|
|
13
12
|
Object.defineProperty(f, "name", { value: key });
|
|
14
13
|
fs2[key] = f;
|
|
15
|
-
} else {
|
|
16
|
-
fs2[key] = val;
|
|
17
14
|
}
|
|
18
15
|
return fs2;
|
|
19
|
-
}, {
|
|
20
|
-
var asyncfs_default = fs;
|
|
16
|
+
}, {});
|
|
21
17
|
var access = fs.access;
|
|
22
18
|
var copyFile = fs.copyFile;
|
|
23
19
|
var cp = fs.cp;
|
|
@@ -47,15 +43,15 @@ var writeFile = fs.writeFile;
|
|
|
47
43
|
var appendFile = fs.appendFile;
|
|
48
44
|
var readFile = fs.readFile;
|
|
49
45
|
var watch = fs.watch;
|
|
46
|
+
var fsConstants = constants;
|
|
50
47
|
export {
|
|
51
48
|
access,
|
|
52
49
|
appendFile,
|
|
53
50
|
chmod,
|
|
54
51
|
chown,
|
|
55
|
-
constants2 as constants,
|
|
56
52
|
copyFile,
|
|
57
53
|
cp,
|
|
58
|
-
|
|
54
|
+
fsConstants,
|
|
59
55
|
lchmod,
|
|
60
56
|
lchown,
|
|
61
57
|
link,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/utils/asyncfs.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,iBAAiB;AAC1B,OAAO,SAAS;
|
|
5
|
-
"names": ["
|
|
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
6
|
}
|
package/dist/utils/walk.cjs
CHANGED
|
@@ -71,13 +71,16 @@ async function* walker(args) {
|
|
|
71
71
|
if (!onDirectory(dir))
|
|
72
72
|
return;
|
|
73
73
|
import_log.log.trace("Reading directory", (0, import_log.$p)(dir));
|
|
74
|
-
|
|
74
|
+
let dirents;
|
|
75
|
+
try {
|
|
76
|
+
dirents = await (0, import_asyncfs.opendir)(dir);
|
|
77
|
+
} catch (error) {
|
|
75
78
|
if (error.code !== "ENOENT")
|
|
76
79
|
throw error;
|
|
77
80
|
import_log.log.warn("Directory", (0, import_log.$p)(dir), "not found");
|
|
78
|
-
return
|
|
79
|
-
}
|
|
80
|
-
for (const dirent of dirents) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
for await (const dirent of dirents) {
|
|
81
84
|
const path = (0, import_node_path.join)(relative, dirent.name);
|
|
82
85
|
if (dirent.isFile() && positiveMatcher(path))
|
|
83
86
|
yield path;
|
package/dist/utils/walk.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/utils/walk.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,uBAA+B;AAC/B,iBAAwB;AACxB,mBAAkD;AAClD,qBAA8B;AAC9B,mBAAoC;AA8B7B,SAAS,KACZ,WACA,OACA,UAAuB,CAAC,GACU;AACpC,QAAM;AAAA,IACJ,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,OAChB;AAAA,EACL,IAAI;AAGJ,QAAM,cAAc,CAAC,QAA+B;AAGlD,QAAI,QAAQ;AAAW,aAAO;AAC9B,UAAM,WAAO,2BAAS,GAAG;AACzB,QAAI,SAAS;AAAgB,aAAO,CAAC,CAAC;AACtC,QAAI,KAAK,WAAW,GAAG;AAAG,aAAO,CAAC,CAAC,KAAK;AACxC,WAAO;AAAA,EACT;AAGA,QAAM,sBAAkB,oBAAM,OAAO,IAAI;AAGzC,iBAAI,MAAM,yBAAqB,eAAG,SAAS,GAAG,EAAE,OAAO,QAAQ,CAAC;AAChE,SAAO,OAAO;AAAA,IACZ;AAAA,IACA,UAAU;AAAA,IACV,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,EACT,CAAC;AACH;AAiBA,gBAAgB,OAAO,MAA2D;AAChF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAGJ,QAAM,UAAM,kCAAoB,WAAW,QAAQ;AACnD,MAAI,CAAE,YAAY,GAAG;AAAG;AACxB,iBAAI,MAAM,yBAAqB,eAAG,GAAG,CAAC;AAEtC,MAAI;AACJ,MAAI;AACF,cAAU,UAAM,wBAAQ,GAAG;AAAA,EAC7B,SAAS,OAAP;AACA,QAAI,MAAM,SAAS;AAAU,YAAM;AACnC,mBAAI,KAAK,iBAAa,eAAG,GAAG,GAAG,WAAW;AAC1C;AAAA,EACF;AAGA,mBAAiB,UAAU,SAAS;AAClC,UAAM,WAAO,uBAAK,UAAU,OAAO,IAAI;AAGvC,QAAI,OAAO,OAAO,KAAK,gBAAgB,IAAI;AAAG,YAAM;AAAA,aAG3C,OAAO,YAAY,KAAM,QAAQ,UAAW;AACnD,YAAM,WAAW,OAAO,EAAE,GAAG,MAAM,UAAU,MAAM,OAAO,QAAQ,EAAE,CAAC;AACrE,uBAAiB,SAAS;AAAU,cAAM;AAAA,IAG5C,WAAW,OAAO,eAAe,KAAK,gBAAgB;AACpD,YAAM,OAAO,UAAM,yBAAK,uBAAK,WAAW,IAAI,CAAC;AAG7C,UAAI,KAAK,OAAO,KAAK,gBAAgB,IAAI;AAAG,cAAM;AAAA,eAGzC,KAAK,YAAY,KAAM,QAAQ,UAAW;AACjD,cAAM,WAAW,OAAO,EAAE,GAAG,MAAM,UAAU,MAAM,OAAO,QAAQ,EAAE,CAAC;AACrE,yBAAiB,SAAS;AAAU,gBAAM;AAAA,MAC5C;AAAA,IACF;AAAA,EACF;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/utils/walk.mjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { basename, join } from "node:path";
|
|
3
3
|
import { $p, log } from "../log.mjs";
|
|
4
4
|
import { resolveAbsolutePath } from "../paths.mjs";
|
|
5
|
-
import {
|
|
5
|
+
import { opendir, stat } from "./asyncfs.mjs";
|
|
6
6
|
import { match } from "./match.mjs";
|
|
7
7
|
function walk(directory, globs, options = {}) {
|
|
8
8
|
const {
|
|
@@ -47,13 +47,16 @@ async function* walker(args) {
|
|
|
47
47
|
if (!onDirectory(dir))
|
|
48
48
|
return;
|
|
49
49
|
log.trace("Reading directory", $p(dir));
|
|
50
|
-
|
|
50
|
+
let dirents;
|
|
51
|
+
try {
|
|
52
|
+
dirents = await opendir(dir);
|
|
53
|
+
} catch (error) {
|
|
51
54
|
if (error.code !== "ENOENT")
|
|
52
55
|
throw error;
|
|
53
56
|
log.warn("Directory", $p(dir), "not found");
|
|
54
|
-
return
|
|
55
|
-
}
|
|
56
|
-
for (const dirent of dirents) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
for await (const dirent of dirents) {
|
|
57
60
|
const path = join(relative, dirent.name);
|
|
58
61
|
if (dirent.isFile() && positiveMatcher(path))
|
|
59
62
|
yield path;
|
package/dist/utils/walk.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/utils/walk.ts"],
|
|
4
|
-
"mappings": ";
|
|
4
|
+
"mappings": ";AACA,SAAS,UAAU,YAAY;AAC/B,SAAS,IAAI,WAAW;AACxB,SAAuB,2BAA2B;AAClD,SAAS,SAAS,YAAY;AAC9B,SAAS,aAA2B;AA8B7B,SAAS,KACZ,WACA,OACA,UAAuB,CAAC,GACU;AACpC,QAAM;AAAA,IACJ,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,OAChB;AAAA,EACL,IAAI;AAGJ,QAAM,cAAc,CAAC,QAA+B;AAGlD,QAAI,QAAQ;AAAW,aAAO;AAC9B,UAAM,OAAO,SAAS,GAAG;AACzB,QAAI,SAAS;AAAgB,aAAO,CAAC,CAAC;AACtC,QAAI,KAAK,WAAW,GAAG;AAAG,aAAO,CAAC,CAAC,KAAK;AACxC,WAAO;AAAA,EACT;AAGA,QAAM,kBAAkB,MAAM,OAAO,IAAI;AAGzC,MAAI,MAAM,qBAAqB,GAAG,SAAS,GAAG,EAAE,OAAO,QAAQ,CAAC;AAChE,SAAO,OAAO;AAAA,IACZ;AAAA,IACA,UAAU;AAAA,IACV,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,EACT,CAAC;AACH;AAiBA,gBAAgB,OAAO,MAA2D;AAChF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAGJ,QAAM,MAAM,oBAAoB,WAAW,QAAQ;AACnD,MAAI,CAAE,YAAY,GAAG;AAAG;AACxB,MAAI,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAEtC,MAAI;AACJ,MAAI;AACF,cAAU,MAAM,QAAQ,GAAG;AAAA,EAC7B,SAAS,OAAP;AACA,QAAI,MAAM,SAAS;AAAU,YAAM;AACnC,QAAI,KAAK,aAAa,GAAG,GAAG,GAAG,WAAW;AAC1C;AAAA,EACF;AAGA,mBAAiB,UAAU,SAAS;AAClC,UAAM,OAAO,KAAK,UAAU,OAAO,IAAI;AAGvC,QAAI,OAAO,OAAO,KAAK,gBAAgB,IAAI;AAAG,YAAM;AAAA,aAG3C,OAAO,YAAY,KAAM,QAAQ,UAAW;AACnD,YAAM,WAAW,OAAO,EAAE,GAAG,MAAM,UAAU,MAAM,OAAO,QAAQ,EAAE,CAAC;AACrE,uBAAiB,SAAS;AAAU,cAAM;AAAA,IAG5C,WAAW,OAAO,eAAe,KAAK,gBAAgB;AACpD,YAAM,OAAO,MAAM,KAAK,KAAK,WAAW,IAAI,CAAC;AAG7C,UAAI,KAAK,OAAO,KAAK,gBAAgB,IAAI;AAAG,cAAM;AAAA,eAGzC,KAAK,YAAY,KAAM,QAAQ,UAAW;AACjD,cAAM,WAAW,OAAO,EAAE,GAAG,MAAM,UAAU,MAAM,OAAO,QAAQ,EAAE,CAAC;AACrE,yBAAiB,SAAS;AAAU,gBAAM;AAAA,MAC5C;AAAA,IACF;AAAA,EACF;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plugjs/plug",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.8",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./dist/index.cjs",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
},
|
|
23
23
|
"scripts": {
|
|
24
24
|
"bootstrap": "./bootstrap.sh",
|
|
25
|
-
"build": "
|
|
25
|
+
"build": "./runme.sh",
|
|
26
26
|
"dev": "npx nodemon -e .ts -w ./test -w ./src -x ./runme.sh"
|
|
27
27
|
},
|
|
28
28
|
"author": "",
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
"@babel/parser": "^7.18.11",
|
|
32
32
|
"@babel/types": "^7.18.10",
|
|
33
33
|
"@plugjs/cov8-html": "^0.0.1",
|
|
34
|
+
"@types/node": "<17",
|
|
34
35
|
"diff": "^5.1.0",
|
|
35
36
|
"esbuild": "^0.15.5",
|
|
36
37
|
"eslint": "^8.22.0",
|
|
@@ -43,10 +44,9 @@
|
|
|
43
44
|
"devDependencies": {
|
|
44
45
|
"@types/chai": "^4.3.3",
|
|
45
46
|
"@types/diff": "^5.0.2",
|
|
46
|
-
"@types/eslint": "^8.4.
|
|
47
|
+
"@types/eslint": "^8.4.6",
|
|
47
48
|
"@types/mocha": "^9.1.1",
|
|
48
49
|
"@types/ms": "^0.7.31",
|
|
49
|
-
"@types/node": "<17",
|
|
50
50
|
"@types/picomatch": "^2.3.0",
|
|
51
51
|
"@types/yargs-parser": "^21.0.0",
|
|
52
52
|
"@typescript-eslint/eslint-plugin": "^5.33.1",
|
package/src/files.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { inspect } from 'node:util'
|
|
2
1
|
import { assert } from './assert.js'
|
|
3
2
|
import { AbsolutePath, assertRelativeChildPath, getAbsoluteParent, isFile, resolveAbsolutePath } from './paths.js'
|
|
4
3
|
import { mkdir, writeFile } from './utils/asyncfs.js'
|
|
@@ -27,7 +26,7 @@ export interface FilesBuilder {
|
|
|
27
26
|
merge(...files: Files[]): this
|
|
28
27
|
|
|
29
28
|
/** Write a file and add it to the {@link Files} instance being built */
|
|
30
|
-
write(file: string, content: string |
|
|
29
|
+
write(file: string, content: string | Uint8Array): Promise<AbsolutePath>
|
|
31
30
|
|
|
32
31
|
/** Build and return a {@link Files} instance */
|
|
33
32
|
build(): Files
|
|
@@ -48,6 +47,13 @@ export class Files {
|
|
|
48
47
|
constructor(directory: AbsolutePath) {
|
|
49
48
|
this._directory = directory
|
|
50
49
|
this._files = []
|
|
50
|
+
|
|
51
|
+
// Nicety for "console.log" / "util.inspect"...
|
|
52
|
+
const inspect = Symbol.for('nodejs.util.inspect.custom')
|
|
53
|
+
Object.defineProperty(this, inspect, { value: () => ({
|
|
54
|
+
directory: this._directory,
|
|
55
|
+
files: [ ...this._files ],
|
|
56
|
+
}) })
|
|
51
57
|
}
|
|
52
58
|
|
|
53
59
|
/** Return the _directory_ where this {@link Files} is rooted */
|
|
@@ -75,15 +81,6 @@ export class Files {
|
|
|
75
81
|
for (const file of this) yield [ file, resolveAbsolutePath(this._directory, file) ]
|
|
76
82
|
}
|
|
77
83
|
|
|
78
|
-
/* Nicety for logging */
|
|
79
|
-
[inspect.custom](): any {
|
|
80
|
-
const self = this
|
|
81
|
-
return new class Files {
|
|
82
|
-
directory = self._directory
|
|
83
|
-
files = [ ...self._files ]
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
84
|
/** Create a new {@link FilesBuilder} creating {@link Files} instances. */
|
|
88
85
|
static builder(files: Files): FilesBuilder
|
|
89
86
|
static builder(directory: AbsolutePath): FilesBuilder
|
|
@@ -136,7 +133,7 @@ export class Files {
|
|
|
136
133
|
return this
|
|
137
134
|
},
|
|
138
135
|
|
|
139
|
-
async write(file: string, content: string |
|
|
136
|
+
async write(file: string, content: string | Uint8Array): Promise<AbsolutePath> {
|
|
140
137
|
const relative = assertRelativeChildPath(instance.directory, file)
|
|
141
138
|
const absolute = resolveAbsolutePath(instance.directory, relative)
|
|
142
139
|
const directory = getAbsoluteParent(absolute)
|
package/src/log/report.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { AbsolutePath } from '../paths.js'
|
|
|
3
3
|
import { readFile } from '../utils/asyncfs.js'
|
|
4
4
|
import { $blu, $cyn, $gry, $red, $und, $wht, $ylw } from './colors.js'
|
|
5
5
|
import { emitColor, emitPlain, LogEmitter } from './emit.js'
|
|
6
|
-
import { ERROR,
|
|
6
|
+
import { ERROR, LogLevels, NOTICE, WARN } from './levels.js'
|
|
7
7
|
import { logOptions } from './options.js'
|
|
8
8
|
|
|
9
9
|
/* ========================================================================== */
|
|
@@ -288,6 +288,9 @@ class ReportImpl implements Report {
|
|
|
288
288
|
let lPad = 0
|
|
289
289
|
let cPad = 0
|
|
290
290
|
|
|
291
|
+
/* Skip report all together if empty! */
|
|
292
|
+
if ((this._annotations.size === 0) && (this._records.size === 0)) return this
|
|
293
|
+
|
|
291
294
|
/* This is GIANT: sort and convert our data for easy reporting */
|
|
292
295
|
const entries = [ ...this._annotations.keys(), ...this._records.keys() ]
|
|
293
296
|
// dedupe
|
|
@@ -334,12 +337,11 @@ class ReportImpl implements Report {
|
|
|
334
337
|
cPad = cPad.toString().length
|
|
335
338
|
|
|
336
339
|
/* Basic emit options */
|
|
337
|
-
const options = { taskName: this._task, level:
|
|
340
|
+
const options = { taskName: this._task, level: NOTICE }
|
|
338
341
|
|
|
339
342
|
this._emitter(options, [ '' ])
|
|
340
343
|
this._emitter(options, [ $und($wht(this._title)) ])
|
|
341
344
|
|
|
342
|
-
|
|
343
345
|
/* Iterate through all our [file,reports] tuple */
|
|
344
346
|
for (let f = 0; f < entries.length; f ++) {
|
|
345
347
|
const { file, records, annotation } = entries[f]
|
|
@@ -418,16 +420,25 @@ class ReportImpl implements Report {
|
|
|
418
420
|
}
|
|
419
421
|
}
|
|
420
422
|
|
|
421
|
-
/* Our totals */
|
|
422
|
-
const eLabel = this.errors === 1 ? 'error' : 'errors'
|
|
423
|
-
const wLabel = this.warnings === 1 ? 'warning' : 'warnings'
|
|
424
|
-
const eNumber = this.errors ? $red(this.errors) : 'no'
|
|
425
|
-
const wNumber = this.warnings ? $ylw(this.warnings) : 'no'
|
|
426
|
-
|
|
427
|
-
this._emitter(options, [ '' ])
|
|
428
|
-
this._emitter(options, [ 'Found', eNumber, eLabel, 'and', wNumber, wLabel ])
|
|
423
|
+
/* Our totals (if any) */
|
|
429
424
|
this._emitter(options, [ '' ])
|
|
430
425
|
|
|
426
|
+
const status: any[] = [ 'Found' ]
|
|
427
|
+
if (this.errors) {
|
|
428
|
+
status.push($red(this.errors), this.errors === 1 ? 'error' : 'errors' )
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
if (this.warnings) {
|
|
432
|
+
if (this.errors) status.push('and')
|
|
433
|
+
status.push($ylw(this.warnings), this.warnings === 1 ? 'warning' : 'warnings' )
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
if (this.errors || this.warnings) {
|
|
437
|
+
this._emitter(options, status)
|
|
438
|
+
this._emitter(options, [ '' ])
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
/* Done! */
|
|
431
442
|
return this
|
|
432
443
|
}
|
|
433
444
|
}
|