@plugjs/plug 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/asserts.cjs +1 -1
- package/dist/asserts.cjs.map +1 -1
- package/dist/asserts.mjs +1 -1
- package/dist/asserts.mjs.map +1 -1
- package/dist/build.cjs +6 -8
- package/dist/build.cjs.map +1 -1
- package/dist/build.mjs +6 -8
- package/dist/build.mjs.map +1 -1
- package/dist/files.cjs +4 -8
- package/dist/files.cjs.map +1 -1
- package/dist/files.mjs +4 -8
- package/dist/files.mjs.map +1 -1
- package/dist/fs.cjs.map +1 -1
- package/dist/fs.mjs.map +1 -1
- package/dist/helpers.cjs +10 -0
- package/dist/helpers.cjs.map +1 -1
- package/dist/helpers.d.ts +6 -0
- package/dist/helpers.mjs +9 -0
- package/dist/helpers.mjs.map +1 -1
- package/dist/logging/emit.d.ts +1 -1
- package/dist/logging/levels.d.ts +6 -6
- package/dist/logging/report.cjs +1 -2
- package/dist/logging/report.cjs.map +1 -1
- package/dist/logging/report.d.ts +1 -1
- package/dist/logging/report.mjs +1 -2
- package/dist/logging/report.mjs.map +1 -1
- package/dist/logging.cjs +1 -4
- package/dist/logging.cjs.map +1 -1
- package/dist/logging.d.ts +1 -1
- package/dist/logging.mjs +1 -4
- package/dist/logging.mjs.map +1 -1
- package/dist/paths.cjs +22 -24
- package/dist/paths.cjs.map +1 -1
- package/dist/paths.d.ts +8 -8
- package/dist/paths.mjs +22 -24
- package/dist/paths.mjs.map +1 -1
- package/dist/pipe.d.ts +7 -7
- package/dist/plugs/esbuild/fix-extensions.cjs +3 -4
- package/dist/plugs/esbuild/fix-extensions.cjs.map +1 -1
- package/dist/plugs/esbuild/fix-extensions.mjs +3 -4
- package/dist/plugs/esbuild/fix-extensions.mjs.map +1 -1
- package/dist/plugs/esbuild.d.ts +1 -1
- package/dist/types.d.ts +7 -7
- package/dist/utils/match.d.ts +1 -1
- package/dist/utils/options.d.ts +3 -3
- package/extra/ts-loader.mjs +3 -3
- package/package.json +20 -14
- package/src/asserts.ts +1 -1
- package/src/build.ts +179 -0
- package/src/files.ts +4 -4
- package/src/fs.ts +6 -5
- package/src/helpers.ts +16 -0
- package/src/paths.ts +35 -40
package/dist/logging.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/logging.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,sBAAsB;AAC/B,SAAS,iBAA2B;AACpC,SAAS,oBAAoB;AAE7B,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAOd,aAAa;AAUN,IAAM,OAAoB,MAAmB;AAElD,QAAM,SAAS,
|
|
4
|
+
"mappings": ";AAAA,SAAS,sBAAsB;AAC/B,SAAS,iBAA2B;AACpC,SAAS,oBAAoB;AAE7B,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAOd,aAAa;AAUN,IAAM,OAAoB,MAAmB;AAElD,QAAM,SAAS,MAAY,eAAe,GAAG,OAAO,UAAU;AAG9D,QAAM,UAAe;AAAA,IACnB,SAAS,MAA4B;AACnC,aAAO,EAAE,MAAM,GAAG,IAAI;AACtB,aAAO;AAAA,IACT;AAAA,IAEA,SAAS,MAA4B;AACnC,aAAO,EAAE,MAAM,GAAG,IAAI;AACtB,aAAO;AAAA,IACT;AAAA,IAEA,QAAQ,MAA4B;AAClC,aAAO,EAAE,KAAK,GAAG,IAAI;AACrB,aAAO;AAAA,IACT;AAAA,IAEA,UAAU,MAA4B;AACpC,aAAO,EAAE,OAAO,GAAG,IAAI;AACvB,aAAO;AAAA,IACT;AAAA,IAEA,QAAQ,MAA4B;AAClC,aAAO,EAAE,KAAK,GAAG,IAAI;AACrB,aAAO;AAAA,IACT;AAAA,IAEA,SAAS,MAA4B;AACnC,aAAO,EAAE,MAAM,GAAG,IAAI;AACtB,aAAO;AAAA,IACT;AAAA,IAEA,QAAQ,MAA8B;AACpC,YAAM,OAAO,EAAE,KAAK,GAAG,IAAI;AAAA,IAC7B;AAAA,EACF;AAGA,QAAMA,OAAM,IAAI,SAAgC,KAAK,QAAQ,OAAO,GAAG,IAAI;AAG3E,SAAO,OAAO,OAAOA,MAAK,OAAO;AACnC,GAAG;",
|
|
5
5
|
"names": ["log"]
|
|
6
6
|
}
|
package/dist/paths.cjs
CHANGED
|
@@ -40,12 +40,10 @@ var import_node_path = require("node:path");
|
|
|
40
40
|
var import_node_url = require("node:url");
|
|
41
41
|
var import_asserts = require("./asserts.cjs");
|
|
42
42
|
function resolveAbsolutePath(directory, ...paths) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
return resolved;
|
|
43
|
+
assertAbsolutePath(directory);
|
|
44
|
+
return (0, import_node_path.resolve)(directory, ...paths);
|
|
46
45
|
}
|
|
47
46
|
function resolveRelativeChildPath(directory, ...paths) {
|
|
48
|
-
assertAbsolutePath(directory);
|
|
49
47
|
const abs = resolveAbsolutePath(directory, ...paths);
|
|
50
48
|
const rel = (0, import_node_path.relative)(directory, abs);
|
|
51
49
|
return (0, import_node_path.isAbsolute)(rel) || rel === ".." || rel.startsWith(`..${import_node_path.sep}`) ? void 0 : rel;
|
|
@@ -70,6 +68,25 @@ function getCurrentWorkingDirectory() {
|
|
|
70
68
|
assertAbsolutePath(cwd);
|
|
71
69
|
return cwd;
|
|
72
70
|
}
|
|
71
|
+
function commonPath(path, ...paths) {
|
|
72
|
+
assertAbsolutePath(path);
|
|
73
|
+
const components = (0, import_node_path.normalize)(path).split(import_node_path.sep);
|
|
74
|
+
let length = components.length;
|
|
75
|
+
for (const current of paths) {
|
|
76
|
+
const absolute = resolveAbsolutePath(path, current);
|
|
77
|
+
const parts = absolute.split(import_node_path.sep);
|
|
78
|
+
for (let i = 0; i < length; i++) {
|
|
79
|
+
if (components[i] !== parts[i]) {
|
|
80
|
+
length = i;
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
(0, import_asserts.assert)(length, "No common ancestors amongst paths");
|
|
85
|
+
}
|
|
86
|
+
const common = components.slice(0, length).join(import_node_path.sep);
|
|
87
|
+
assertAbsolutePath(common);
|
|
88
|
+
return common;
|
|
89
|
+
}
|
|
73
90
|
function requireFilename(__fileurl, ...paths) {
|
|
74
91
|
const file = __fileurl.startsWith("file:") ? (0, import_node_url.fileURLToPath)(__fileurl) : __fileurl;
|
|
75
92
|
assertAbsolutePath(file);
|
|
@@ -83,7 +100,7 @@ function requireResolve(__fileurl, module2) {
|
|
|
83
100
|
if (module2.match(/^\.\.?\//)) {
|
|
84
101
|
const url = (0, import_node_url.pathToFileURL)(file);
|
|
85
102
|
const ext = (0, import_node_path.extname)(file);
|
|
86
|
-
const checks =
|
|
103
|
+
const checks = [`${module2}`, `${module2}${ext}`, `${module2}/index${ext}`];
|
|
87
104
|
for (const check of checks) {
|
|
88
105
|
const resolved = (0, import_node_url.fileURLToPath)(new URL(check, url));
|
|
89
106
|
if (resolveFile(resolved)) {
|
|
@@ -97,25 +114,6 @@ function requireResolve(__fileurl, module2) {
|
|
|
97
114
|
assertAbsolutePath(required);
|
|
98
115
|
return required;
|
|
99
116
|
}
|
|
100
|
-
function commonPath(path, ...paths) {
|
|
101
|
-
assertAbsolutePath(path);
|
|
102
|
-
const components = (0, import_node_path.normalize)(path).split(import_node_path.sep);
|
|
103
|
-
let length = components.length;
|
|
104
|
-
for (const current of paths) {
|
|
105
|
-
const absolute = resolveAbsolutePath(path, current);
|
|
106
|
-
const parts = absolute.split(import_node_path.sep);
|
|
107
|
-
for (let i = 0; i < length; i++) {
|
|
108
|
-
if (components[i] !== parts[i]) {
|
|
109
|
-
length = i;
|
|
110
|
-
break;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
(0, import_asserts.assert)(length, "No common ancestors amongst paths");
|
|
114
|
-
}
|
|
115
|
-
const common = components.slice(0, length).join(import_node_path.sep);
|
|
116
|
-
assertAbsolutePath(common);
|
|
117
|
-
return common;
|
|
118
|
-
}
|
|
119
117
|
function resolveFile(path, ...paths) {
|
|
120
118
|
const file = resolveAbsolutePath(path, ...paths);
|
|
121
119
|
try {
|
package/dist/paths.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/paths.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAyB;AACzB,yBAA8B;AAC9B,uBAAsF;AACtF,sBAA6C;AAE7C,qBAAuB;AAUhB,SAAS,oBAAoB,cAA4B,OAA+B;AAC7F,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAyB;AACzB,yBAA8B;AAC9B,uBAAsF;AACtF,sBAA6C;AAE7C,qBAAuB;AAUhB,SAAS,oBAAoB,cAA4B,OAA+B;AAC7F,qBAAmB,SAAS;AAC5B,aAAO,0BAAQ,WAAW,GAAG,KAAK;AACpC;AAcO,SAAS,yBAAyB,cAA4B,OAAqC;AACxG,QAAM,MAAM,oBAAoB,WAAW,GAAG,KAAK;AACnD,QAAM,UAAM,2BAAS,WAAW,GAAG;AACnC,aAAQ,6BAAW,GAAG,KAAM,QAAQ,QAAS,IAAI,WAAW,KAAK,sBAAK,IAAK,SAAY;AACzF;AAMO,SAAS,wBAAwB,cAA4B,OAAyB;AAC3F,QAAMA,YAAW,yBAAyB,WAAW,GAAG,KAAK;AAC7D,6BAAOA,WAAU,aAAS,uBAAK,GAAG,KAAK,uBAAuB,YAAY;AAC1E,SAAOA;AACT;AAGO,SAAS,eAAe,MAAoC;AACjE,aAAO,6BAAW,IAAI;AACxB;AAGO,SAAS,mBAAmB,GAAsC;AACvE,iCAAO,6BAAW,CAAC,GAAG,SAAS,iBAAiB;AAClD;AAGO,SAAS,kBAAkB,MAAkC;AAClE,qBAAmB,IAAI;AACvB,aAAO,0BAAQ,IAAI;AACrB;AAMO,SAAS,6BAA2C;AACzD,QAAM,MAAM,QAAQ,IAAI;AACxB,qBAAmB,GAAG;AACtB,SAAO;AACT;AAQO,SAAS,WAAW,SAAuB,OAA+B;AAC/E,qBAAmB,IAAI;AAKvB,QAAM,iBAAa,4BAAU,IAAI,EAAE,MAAM,oBAAG;AAE5C,MAAI,SAAS,WAAW;AACxB,aAAW,WAAW,OAAO;AAC3B,UAAM,WAAW,oBAAoB,MAAM,OAAO;AAClD,UAAM,QAAQ,SAAS,MAAM,oBAAG;AAChC,aAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAC/B,UAAI,WAAW,OAAO,MAAM,IAAI;AAC9B,iBAAS;AACT;AAAA,MACF;AAAA,IACF;AAEA,+BAAO,QAAQ,mCAAmC;AAAA,EACpD;AAEA,QAAM,SAAS,WAAW,MAAM,GAAG,MAAM,EAAE,KAAK,oBAAG;AACnD,qBAAmB,MAAM;AACzB,SAAO;AACT;AAoBO,SAAS,gBAAgB,cAAsB,OAA+B;AAEnF,QAAM,OAAO,UAAU,WAAW,OAAO,QAAI,+BAAc,SAAS,IAAI;AAGxE,qBAAmB,IAAI;AAGvB,MAAI,CAAE,MAAM;AAAQ,WAAO;AAG3B,QAAM,YAAY,kBAAkB,IAAI;AACxC,SAAO,oBAAoB,WAAW,GAAG,KAAK;AAChD;AAUO,SAAS,eAAe,WAAmBC,SAA8B;AAC9E,QAAM,OAAO,gBAAgB,SAAS;AAGtC,MAAIA,QAAO,MAAM,UAAU,GAAG;AAM5B,UAAM,UAAM,+BAAc,IAAI;AAC9B,UAAM,UAAM,0BAAQ,IAAI;AACxB,UAAM,SAAS,CAAE,GAAGA,WAAU,GAAGA,UAAS,OAAO,GAAGA,gBAAe,KAAM;AAEzE,eAAW,SAAS,QAAQ;AAC1B,YAAM,eAAW,+BAAc,IAAI,IAAI,OAAO,GAAG,CAAC;AAClD,UAAI,YAAY,QAAQ,GAAG;AACzB,QAAAA,UAAS;AACT;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,QAAMC,eAAU,kCAAc,IAAI;AAClC,QAAM,WAAWA,SAAQ,QAAQD,OAAM;AACvC,qBAAmB,QAAQ;AAC3B,SAAO;AACT;AAUO,SAAS,YAAY,SAAuB,OAA2C;AAC5F,QAAM,OAAO,oBAAoB,MAAM,GAAG,KAAK;AAC/C,MAAI;AACF,UAAM,WAAO,yBAAS,IAAI;AAC1B,QAAI,KAAK,OAAO;AAAG,aAAO;AAAA,EAC5B,SAAS,OAAP;AACA,QAAI,MAAM,SAAS;AAAU,YAAM;AAAA,EACrC;AACA,SAAO;AACT;AAMO,SAAS,iBAAiB,SAAuB,OAA2C;AACjG,QAAM,YAAY,oBAAoB,MAAM,GAAG,KAAK;AACpD,MAAI;AACF,UAAM,WAAO,yBAAS,SAAS;AAC/B,QAAI,KAAK,YAAY;AAAG,aAAO;AAAA,EACjC,SAAS,OAAP;AACA,QAAI,MAAM,SAAS;AAAU,YAAM;AAAA,EACrC;AACA,SAAO;AACT;",
|
|
5
5
|
"names": ["relative", "module", "require"]
|
|
6
6
|
}
|
package/dist/paths.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** A _branded_ `string` representing an _absolute_ path name */
|
|
2
|
-
export
|
|
2
|
+
export type AbsolutePath = string & {
|
|
3
3
|
__brand_absolute_path: never;
|
|
4
4
|
};
|
|
5
5
|
/** Resolve a path into an {@link AbsolutePath} */
|
|
@@ -33,6 +33,13 @@ export declare function getAbsoluteParent(path: AbsolutePath): AbsolutePath;
|
|
|
33
33
|
* {@link AbsolutePath}.
|
|
34
34
|
*/
|
|
35
35
|
export declare function getCurrentWorkingDirectory(): AbsolutePath;
|
|
36
|
+
/**
|
|
37
|
+
* Return the _common_ path amongst all specified paths.
|
|
38
|
+
*
|
|
39
|
+
* While the first `path` _must_ be an {@link AbsolutePath}, all other `paths`
|
|
40
|
+
* can be _relative_ and will be resolved against the first `path`.
|
|
41
|
+
*/
|
|
42
|
+
export declare function commonPath(path: AbsolutePath, ...paths: string[]): AbsolutePath;
|
|
36
43
|
/**
|
|
37
44
|
* Return the absolute path of a file relative to the given `__fileurl`, where
|
|
38
45
|
* `__fileurl` is either CommonJS's own `__filename` variable, or EcmaScript's
|
|
@@ -57,13 +64,6 @@ export declare function requireFilename(__fileurl: string, ...paths: string[]):
|
|
|
57
64
|
* (so, `.ts` for `ts-node`, `.mjs` for ESM modules, ...).
|
|
58
65
|
*/
|
|
59
66
|
export declare function requireResolve(__fileurl: string, module: string): AbsolutePath;
|
|
60
|
-
/**
|
|
61
|
-
* Return the _common_ path amongst all specified paths.
|
|
62
|
-
*
|
|
63
|
-
* While the first `path` _must_ be an {@link AbsolutePath}, all other `paths`
|
|
64
|
-
* can be _relative_ and will be resolved against the first `path`.
|
|
65
|
-
*/
|
|
66
|
-
export declare function commonPath(path: AbsolutePath, ...paths: string[]): AbsolutePath;
|
|
67
67
|
/**
|
|
68
68
|
* Resolves the specified path as an {@link AbsolutePath} and checks it is a
|
|
69
69
|
* _file_, returning `undefined` if it is not.
|
package/dist/paths.mjs
CHANGED
|
@@ -5,12 +5,10 @@ import { dirname, extname, isAbsolute, join, normalize, relative, resolve, sep }
|
|
|
5
5
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
6
6
|
import { assert } from "./asserts.mjs";
|
|
7
7
|
function resolveAbsolutePath(directory, ...paths) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
return resolved;
|
|
8
|
+
assertAbsolutePath(directory);
|
|
9
|
+
return resolve(directory, ...paths);
|
|
11
10
|
}
|
|
12
11
|
function resolveRelativeChildPath(directory, ...paths) {
|
|
13
|
-
assertAbsolutePath(directory);
|
|
14
12
|
const abs = resolveAbsolutePath(directory, ...paths);
|
|
15
13
|
const rel = relative(directory, abs);
|
|
16
14
|
return isAbsolute(rel) || rel === ".." || rel.startsWith(`..${sep}`) ? void 0 : rel;
|
|
@@ -35,6 +33,25 @@ function getCurrentWorkingDirectory() {
|
|
|
35
33
|
assertAbsolutePath(cwd);
|
|
36
34
|
return cwd;
|
|
37
35
|
}
|
|
36
|
+
function commonPath(path, ...paths) {
|
|
37
|
+
assertAbsolutePath(path);
|
|
38
|
+
const components = normalize(path).split(sep);
|
|
39
|
+
let length = components.length;
|
|
40
|
+
for (const current of paths) {
|
|
41
|
+
const absolute = resolveAbsolutePath(path, current);
|
|
42
|
+
const parts = absolute.split(sep);
|
|
43
|
+
for (let i = 0; i < length; i++) {
|
|
44
|
+
if (components[i] !== parts[i]) {
|
|
45
|
+
length = i;
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
assert(length, "No common ancestors amongst paths");
|
|
50
|
+
}
|
|
51
|
+
const common = components.slice(0, length).join(sep);
|
|
52
|
+
assertAbsolutePath(common);
|
|
53
|
+
return common;
|
|
54
|
+
}
|
|
38
55
|
function requireFilename(__fileurl, ...paths) {
|
|
39
56
|
const file = __fileurl.startsWith("file:") ? fileURLToPath(__fileurl) : __fileurl;
|
|
40
57
|
assertAbsolutePath(file);
|
|
@@ -48,7 +65,7 @@ function requireResolve(__fileurl, module) {
|
|
|
48
65
|
if (module.match(/^\.\.?\//)) {
|
|
49
66
|
const url = pathToFileURL(file);
|
|
50
67
|
const ext = extname(file);
|
|
51
|
-
const checks =
|
|
68
|
+
const checks = [`${module}`, `${module}${ext}`, `${module}/index${ext}`];
|
|
52
69
|
for (const check of checks) {
|
|
53
70
|
const resolved = fileURLToPath(new URL(check, url));
|
|
54
71
|
if (resolveFile(resolved)) {
|
|
@@ -62,25 +79,6 @@ function requireResolve(__fileurl, module) {
|
|
|
62
79
|
assertAbsolutePath(required);
|
|
63
80
|
return required;
|
|
64
81
|
}
|
|
65
|
-
function commonPath(path, ...paths) {
|
|
66
|
-
assertAbsolutePath(path);
|
|
67
|
-
const components = normalize(path).split(sep);
|
|
68
|
-
let length = components.length;
|
|
69
|
-
for (const current of paths) {
|
|
70
|
-
const absolute = resolveAbsolutePath(path, current);
|
|
71
|
-
const parts = absolute.split(sep);
|
|
72
|
-
for (let i = 0; i < length; i++) {
|
|
73
|
-
if (components[i] !== parts[i]) {
|
|
74
|
-
length = i;
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
assert(length, "No common ancestors amongst paths");
|
|
79
|
-
}
|
|
80
|
-
const common = components.slice(0, length).join(sep);
|
|
81
|
-
assertAbsolutePath(common);
|
|
82
|
-
return common;
|
|
83
|
-
}
|
|
84
82
|
function resolveFile(path, ...paths) {
|
|
85
83
|
const file = resolveAbsolutePath(path, ...paths);
|
|
86
84
|
try {
|
package/dist/paths.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/paths.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,gBAAgB;AACzB,SAAS,qBAAqB;AAC9B,SAAS,SAAS,SAAS,YAAY,MAAM,WAAW,UAAU,SAAS,WAAW;AACtF,SAAS,eAAe,qBAAqB;AAE7C,SAAS,cAAc;AAUhB,SAAS,oBAAoB,cAA4B,OAA+B;AAC7F,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["relative", "require"]
|
|
6
6
|
}
|
package/dist/pipe.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import type { AbsolutePath } from './paths';
|
|
|
4
4
|
import type { Result } from './types';
|
|
5
5
|
import type { Pipe } from './index';
|
|
6
6
|
/** A convenience type indicating what can be returned by a {@link Plug}. */
|
|
7
|
-
export
|
|
7
|
+
export type PlugResult = Files | undefined | void;
|
|
8
8
|
/**
|
|
9
9
|
* The {@link Plug} interface describes _build plugin_.
|
|
10
10
|
*
|
|
@@ -16,7 +16,7 @@ export interface Plug<T extends PlugResult> {
|
|
|
16
16
|
pipe(files: Files, context: Context): T | Promise<T>;
|
|
17
17
|
}
|
|
18
18
|
/** A type identifying a {@link Plug} as a `function` */
|
|
19
|
-
export
|
|
19
|
+
export type PlugFunction<T extends PlugResult> = Plug<T>['pipe'];
|
|
20
20
|
/**
|
|
21
21
|
* The {@link Context} class defines the context in which a {@link Plug}
|
|
22
22
|
* is invoked.
|
|
@@ -84,11 +84,11 @@ export declare class PipeImpl implements Pipe {
|
|
|
84
84
|
plug(plug: PlugFunction<void | undefined>): Promise<undefined>;
|
|
85
85
|
}
|
|
86
86
|
/** The names which can be installed as direct plugs. */
|
|
87
|
-
export
|
|
87
|
+
export type PlugName = string & Exclude<keyof Pipe, 'plug' | keyof Promise<any>>;
|
|
88
88
|
/** The parameters of the plug extension with the given name */
|
|
89
|
-
export
|
|
89
|
+
export type PipeParameters<Name extends PlugName> = PipeOverloads<Name>['args'];
|
|
90
90
|
/** Extract arguments and return types from function overloads. */
|
|
91
|
-
|
|
91
|
+
type PipeOverloads<Name extends PlugName> = Pipe[Name] extends {
|
|
92
92
|
(...args: infer A0): infer R0;
|
|
93
93
|
(...args: infer A1): infer R1;
|
|
94
94
|
(...args: infer A2): infer R2;
|
|
@@ -155,12 +155,12 @@ declare type PipeOverloads<Name extends PlugName> = Pipe[Name] extends {
|
|
|
155
155
|
ret: R0;
|
|
156
156
|
} : never) : never;
|
|
157
157
|
/** The parameters of the plug extension with the given name */
|
|
158
|
-
|
|
158
|
+
type PipeResult<Name extends PlugName> = PipeOverloads<Name>['ret'];
|
|
159
159
|
/**
|
|
160
160
|
* A type defining the correct constructor for a {@link Plug}, inferring
|
|
161
161
|
* argument types and instance type from the definitions in {@link Pipe}.
|
|
162
162
|
*/
|
|
163
|
-
|
|
163
|
+
type PlugConstructor<Name extends PlugName> = PipeResult<Name> extends Pipe ? new (...args: PipeParameters<Name>) => Plug<Files> : PipeResult<Name> extends Promise<undefined> ? new (...args: PipeParameters<Name>) => Plug<void | undefined> : PipeResult<Name> extends (Pipe | Promise<undefined>) ? new (...args: PipeParameters<Name>) => Plug<Files | void | undefined> : never;
|
|
164
164
|
/**
|
|
165
165
|
* Install a {@link Plug} into our {@link Pipe} prototype.
|
|
166
166
|
*
|
|
@@ -36,11 +36,10 @@ function fixExtensions() {
|
|
|
36
36
|
return {
|
|
37
37
|
name: "fix-extensions",
|
|
38
38
|
setup(build) {
|
|
39
|
-
var _a, _b, _c;
|
|
40
39
|
build.initialOptions.bundle = true;
|
|
41
|
-
const cjs =
|
|
42
|
-
const mjs =
|
|
43
|
-
const js =
|
|
40
|
+
const cjs = build.initialOptions.outExtension?.[".cjs"] || ".cjs";
|
|
41
|
+
const mjs = build.initialOptions.outExtension?.[".mjs"] || ".mjs";
|
|
42
|
+
const js = build.initialOptions.outExtension?.[".js"] || ".js";
|
|
44
43
|
const exts = build.initialOptions.resolveExtensions || [".ts", ".js", ".tsx", ".jsx"];
|
|
45
44
|
build.onResolve({ filter: /.*/ }, async (args) => {
|
|
46
45
|
if (!args.importer)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/esbuild/fix-extensions.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAiB;AAEjB,gBAAqB;AACrB,mBAAqE;AA+B9D,SAAS,gBAAwB;AACtC,SAAO;AAAA,IACL,MAAM;AAAA,IAEN,MAAM,OAAa;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAiB;AAEjB,gBAAqB;AACrB,mBAAqE;AA+B9D,SAAS,gBAAwB;AACtC,SAAO;AAAA,IACL,MAAM;AAAA,IAEN,MAAM,OAAa;AAEjB,YAAM,eAAe,SAAS;AAG9B,YAAM,MAAM,MAAM,eAAe,eAAe,WAAW;AAC3D,YAAM,MAAM,MAAM,eAAe,eAAe,WAAW;AAC3D,YAAM,KAAK,MAAM,eAAe,eAAe,UAAU;AAGzD,YAAM,OAAO,MAAM,eAAe,qBAAqB,CAAE,OAAO,OAAO,QAAQ,MAAO;AAGtF,YAAM,UAAU,EAAE,QAAQ,KAAK,GAAG,OAAO,SAAS;AAEhD,YAAI,CAAE,KAAK;AAAU,iBAAO;AAG5B,YAAI,CAAE,KAAK,KAAK,MAAM,UAAU;AAAG,iBAAO,EAAE,UAAU,KAAK;AAG3D,cAAM,aAAa,KAAK;AACxB,6CAAmB,UAAU;AAG7B,cAAM,eAAW,kCAAoB,YAAY,KAAK,IAAI;AAC1D,gBAAI,0BAAY,QAAQ;AAAG,iBAAO,EAAE,MAAM,KAAK,MAAM,UAAU,KAAK;AAOpE,cAAM,QAAQ,KAAK,KAAK,MAAM,kBAAkB;AAChD,YAAI,OAAO;AACT,gBAAM,CAAE,EAAE,MAAM,GAAI,IAAI;AACxB,gBAAM,SAAS,OAAO,IAAK,QAAQ,MAAM,IAAI;AAC7C,gBAAM,aAAS,kCAAoB,YAAY,MAAM;AACrD,kBAAI,0BAAY,MAAM,GAAG;AACvB,kBAAM,SAAS,QAAQ,SAAS,MAAM,QAAQ,SAAS,MAAM;AAC7D,mBAAO,EAAE,MAAM,OAAO,QAAQ,UAAU,KAAK;AAAA,UAC/C;AAAA,QACF;AAGA,mBAAW,OAAO,MAAM;AACtB,gBAAM,WAAW,GAAG,KAAK,OAAO;AAChC,gBAAM,WAAW,iBAAAA,QAAK,QAAQ,KAAK,YAAY,QAAQ;AACvD,gBAAM,SAAS,UAAM,gBAAK,QAAQ,EAAE,KAAK,CAACC,UAASA,MAAK,OAAO,GAAG,CAAC,UAAU,MAAU;AACvF,cAAI;AAAQ,mBAAO,EAAE,MAAM,GAAG,KAAK,OAAO,MAAM,UAAU,KAAK;AAAA,QACjE;AAGA,cAAM,UAAU,iBAAAD,QAAK,QAAQ,KAAK,YAAY,KAAK,IAAI;AACvD,cAAM,QAAQ,UAAM,gBAAK,OAAO,EAAE,KAAK,CAACC,UAASA,MAAK,YAAY,GAAG,CAAC,UAAU,MAAU;AAC1F,YAAI,CAAE;AAAO,iBAAO,EAAE,UAAU,KAAK;AAGrC,mBAAW,OAAO,MAAM;AACtB,gBAAM,WAAW,iBAAAD,QAAK,KAAK,KAAK,MAAM,QAAQ,KAAK;AACnD,gBAAM,WAAW,iBAAAA,QAAK,QAAQ,KAAK,YAAY,QAAQ;AACvD,gBAAM,SAAS,UAAM,gBAAK,QAAQ,EAAE,KAAK,CAACC,UAASA,MAAK,OAAO,GAAG,CAAC,UAAU,MAAU;AACvF,cAAI;AAAQ,mBAAO,EAAE,MAAM,GAAG,KAAK,aAAa,MAAM,UAAU,KAAK;AAAA,QACvE;AAGA,eAAO,EAAE,UAAU,KAAK;AAAA,MAC1B,CAAC;AAAA,IACH;AAAA,EACF;AACF;",
|
|
5
5
|
"names": ["path", "stat"]
|
|
6
6
|
}
|
|
@@ -6,11 +6,10 @@ function fixExtensions() {
|
|
|
6
6
|
return {
|
|
7
7
|
name: "fix-extensions",
|
|
8
8
|
setup(build) {
|
|
9
|
-
var _a, _b, _c;
|
|
10
9
|
build.initialOptions.bundle = true;
|
|
11
|
-
const cjs =
|
|
12
|
-
const mjs =
|
|
13
|
-
const js =
|
|
10
|
+
const cjs = build.initialOptions.outExtension?.[".cjs"] || ".cjs";
|
|
11
|
+
const mjs = build.initialOptions.outExtension?.[".mjs"] || ".mjs";
|
|
12
|
+
const js = build.initialOptions.outExtension?.[".js"] || ".js";
|
|
14
13
|
const exts = build.initialOptions.resolveExtensions || [".ts", ".js", ".tsx", ".jsx"];
|
|
15
14
|
build.onResolve({ filter: /.*/ }, async (args) => {
|
|
16
15
|
if (!args.importer)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugs/esbuild/fix-extensions.ts"],
|
|
4
|
-
"mappings": ";AAAA,OAAO,UAAU;AAEjB,SAAS,YAAY;AACrB,SAAS,oBAAoB,qBAAqB,mBAAmB;AA+B9D,SAAS,gBAAwB;AACtC,SAAO;AAAA,IACL,MAAM;AAAA,IAEN,MAAM,OAAa;
|
|
4
|
+
"mappings": ";AAAA,OAAO,UAAU;AAEjB,SAAS,YAAY;AACrB,SAAS,oBAAoB,qBAAqB,mBAAmB;AA+B9D,SAAS,gBAAwB;AACtC,SAAO;AAAA,IACL,MAAM;AAAA,IAEN,MAAM,OAAa;AAEjB,YAAM,eAAe,SAAS;AAG9B,YAAM,MAAM,MAAM,eAAe,eAAe,WAAW;AAC3D,YAAM,MAAM,MAAM,eAAe,eAAe,WAAW;AAC3D,YAAM,KAAK,MAAM,eAAe,eAAe,UAAU;AAGzD,YAAM,OAAO,MAAM,eAAe,qBAAqB,CAAE,OAAO,OAAO,QAAQ,MAAO;AAGtF,YAAM,UAAU,EAAE,QAAQ,KAAK,GAAG,OAAO,SAAS;AAEhD,YAAI,CAAE,KAAK;AAAU,iBAAO;AAG5B,YAAI,CAAE,KAAK,KAAK,MAAM,UAAU;AAAG,iBAAO,EAAE,UAAU,KAAK;AAG3D,cAAM,aAAa,KAAK;AACxB,2BAAmB,UAAU;AAG7B,cAAM,WAAW,oBAAoB,YAAY,KAAK,IAAI;AAC1D,YAAI,YAAY,QAAQ;AAAG,iBAAO,EAAE,MAAM,KAAK,MAAM,UAAU,KAAK;AAOpE,cAAM,QAAQ,KAAK,KAAK,MAAM,kBAAkB;AAChD,YAAI,OAAO;AACT,gBAAM,CAAE,EAAE,MAAM,GAAI,IAAI;AACxB,gBAAM,SAAS,OAAO,IAAK,QAAQ,MAAM,IAAI;AAC7C,gBAAM,SAAS,oBAAoB,YAAY,MAAM;AACrD,cAAI,YAAY,MAAM,GAAG;AACvB,kBAAM,SAAS,QAAQ,SAAS,MAAM,QAAQ,SAAS,MAAM;AAC7D,mBAAO,EAAE,MAAM,OAAO,QAAQ,UAAU,KAAK;AAAA,UAC/C;AAAA,QACF;AAGA,mBAAW,OAAO,MAAM;AACtB,gBAAM,WAAW,GAAG,KAAK,OAAO;AAChC,gBAAM,WAAW,KAAK,QAAQ,KAAK,YAAY,QAAQ;AACvD,gBAAM,SAAS,MAAM,KAAK,QAAQ,EAAE,KAAK,CAACA,UAASA,MAAK,OAAO,GAAG,CAAC,UAAU,MAAU;AACvF,cAAI;AAAQ,mBAAO,EAAE,MAAM,GAAG,KAAK,OAAO,MAAM,UAAU,KAAK;AAAA,QACjE;AAGA,cAAM,UAAU,KAAK,QAAQ,KAAK,YAAY,KAAK,IAAI;AACvD,cAAM,QAAQ,MAAM,KAAK,OAAO,EAAE,KAAK,CAACA,UAASA,MAAK,YAAY,GAAG,CAAC,UAAU,MAAU;AAC1F,YAAI,CAAE;AAAO,iBAAO,EAAE,UAAU,KAAK;AAGrC,mBAAW,OAAO,MAAM;AACtB,gBAAM,WAAW,KAAK,KAAK,KAAK,MAAM,QAAQ,KAAK;AACnD,gBAAM,WAAW,KAAK,QAAQ,KAAK,YAAY,QAAQ;AACvD,gBAAM,SAAS,MAAM,KAAK,QAAQ,EAAE,KAAK,CAACA,UAASA,MAAK,OAAO,GAAG,CAAC,UAAU,MAAU;AACvF,cAAI;AAAQ,mBAAO,EAAE,MAAM,GAAG,KAAK,aAAa,MAAM,UAAU,KAAK;AAAA,QACvE;AAGA,eAAO,EAAE,UAAU,KAAK;AAAA,MAC1B,CAAC;AAAA,IACH;AAAA,EACF;AACF;",
|
|
5
5
|
"names": ["stat"]
|
|
6
6
|
}
|
package/dist/plugs/esbuild.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BuildOptions } from 'esbuild';
|
|
2
|
-
export
|
|
2
|
+
export type ESBuildOptions = Omit<BuildOptions, 'absWorkingDir' | 'entryPoints' | 'watch'>;
|
|
3
3
|
export * from './esbuild/bundle-locals';
|
|
4
4
|
export * from './esbuild/fix-extensions';
|
|
5
5
|
declare module '../index' {
|
package/dist/types.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import type { Pipe } from './index';
|
|
|
5
5
|
* A type describing the ultimate result of a {@link Plug}, {@link Pipe} or
|
|
6
6
|
* {@link Task}, that is either a {@link Files} instance or `undefined`.
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
8
|
+
export type Result = Files | undefined;
|
|
9
9
|
/**
|
|
10
10
|
* The {@link State} interface defines a component tracking the current
|
|
11
11
|
* _state_ of a build, caching the result of {@link Task}s, and tracking their
|
|
@@ -39,15 +39,15 @@ export interface Task<T extends Result = Result> {
|
|
|
39
39
|
* The {@link TaskResult} type identifies _what_ can be returned by a
|
|
40
40
|
* {@link TaskDef | _task definition_}.
|
|
41
41
|
*/
|
|
42
|
-
export
|
|
42
|
+
export type TaskResult = Pipe | Files | void | undefined;
|
|
43
43
|
/** The {@link TaskDef} type identifies the _definition_ of a task. */
|
|
44
|
-
export
|
|
44
|
+
export type TaskDef<R extends TaskResult = TaskResult> = () => R | Promise<R>;
|
|
45
45
|
/** A type identifying all _properties_ of a {@link Context}. */
|
|
46
|
-
export
|
|
46
|
+
export type Props<D extends BuildDef = BuildDef> = {
|
|
47
47
|
readonly [k in string & keyof D as D[k] extends string ? k : never]: string;
|
|
48
48
|
};
|
|
49
49
|
/** A type identifying all _tasks_ in a {@link Context} */
|
|
50
|
-
export
|
|
50
|
+
export type Tasks<D extends BuildDef = BuildDef> = {
|
|
51
51
|
readonly [k in string & keyof D as D[k] extends TaskDef | Task ? k : never]: D[k] extends TaskDef<infer R> ? R extends void | undefined ? Task<undefined> : R extends Pipe | Files ? Task<Files> : never : D[k] extends Task ? D[k] : never;
|
|
52
52
|
};
|
|
53
53
|
/**
|
|
@@ -61,11 +61,11 @@ export interface BuildDef {
|
|
|
61
61
|
* The type that will be used for `this` when invoking
|
|
62
62
|
* {@link TaskDef | task definitions }.
|
|
63
63
|
*/
|
|
64
|
-
export
|
|
64
|
+
export type ThisBuild<D extends BuildDef> = {
|
|
65
65
|
readonly [k in keyof D]: k extends string ? D[k] extends TaskDef<infer R> ? R extends Promise<undefined> | void | undefined ? () => Promise<undefined> : R extends Pipe | Files ? () => Pipe : never : D[k] extends Task<infer R> ? R extends undefined ? () => Promise<undefined> : R extends Files ? () => Pipe : never : D[k] extends string ? string : never : never;
|
|
66
66
|
};
|
|
67
67
|
/**
|
|
68
68
|
* The {@link Build} type represents the collection of {@link Task}s
|
|
69
69
|
* and _properties_ compiled from a {@link BuildDef | build definition}.
|
|
70
70
|
*/
|
|
71
|
-
export
|
|
71
|
+
export type Build<D extends BuildDef = BuildDef> = Tasks<D> & Props<D>;
|
package/dist/utils/match.d.ts
CHANGED
|
@@ -207,7 +207,7 @@ export interface MatchOptions {
|
|
|
207
207
|
unescape?: boolean;
|
|
208
208
|
}
|
|
209
209
|
/** A _function_ matching a string. */
|
|
210
|
-
export
|
|
210
|
+
export type Matcher = (string: string) => boolean;
|
|
211
211
|
/**
|
|
212
212
|
* Create a {@link Matcher} according to the globs and options specified.
|
|
213
213
|
*
|
package/dist/utils/options.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/** A type extacting string parameters from an arguments array */
|
|
2
|
-
export
|
|
2
|
+
export type ParsedParams<Args extends readonly any[]> = Args extends readonly [infer First, ...infer Rest] ? First extends string ? [First, ...ParsedParams<Rest>] : [] : Args extends readonly [...infer First, infer Rest] ? Rest extends string ? [...ParsedParams<First>, Rest] : [...ParsedParams<First>] : Args extends readonly string[] ? [...Args] : [];
|
|
3
3
|
/** A type extacting the (last) options type from an arguments array */
|
|
4
|
-
export
|
|
4
|
+
export type ParsedOptions<Args extends readonly any[]> = Args extends readonly [...string[], infer Last] ? Last extends object ? Last : never : never;
|
|
5
5
|
/** Parserable arguments: a number of strings, followed by optional options */
|
|
6
|
-
export
|
|
6
|
+
export type ParseOptions<Options extends Record<any, any>> = readonly [...params: string[]] | readonly [...params: string[], options: Options];
|
|
7
7
|
/** The return type from {@link ParseOptions} */
|
|
8
8
|
export interface ParsedResult<Args extends readonly any[], Options, Defaults> {
|
|
9
9
|
params: ParsedParams<Args>;
|
package/extra/ts-loader.mjs
CHANGED
|
@@ -162,12 +162,12 @@ var load = (url, context, nextLoad) => {
|
|
|
162
162
|
if (!ext)
|
|
163
163
|
return nextLoad(url, context);
|
|
164
164
|
if (ext === ".cts")
|
|
165
|
-
return { format: "commonjs" };
|
|
165
|
+
return { format: "commonjs", shortCircuit: true };
|
|
166
166
|
const filename = _url.fileURLToPath(url);
|
|
167
167
|
if (ext === ".ts") {
|
|
168
168
|
const format = _moduleFormat(_path.dirname(filename));
|
|
169
169
|
if (format === CJS)
|
|
170
|
-
return { format: "commonjs" };
|
|
170
|
+
return { format: "commonjs", shortCircuit: true };
|
|
171
171
|
}
|
|
172
172
|
const source = _esbTranpile(filename, ESM);
|
|
173
173
|
return { source, format: "module", shortCircuit: true };
|
|
@@ -220,4 +220,4 @@ export {
|
|
|
220
220
|
load,
|
|
221
221
|
resolve
|
|
222
222
|
};
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plugjs/plug",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./dist/index.cjs",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -102,28 +102,34 @@
|
|
|
102
102
|
},
|
|
103
103
|
"scripts": {
|
|
104
104
|
"bootstrap": "./bootstrap.sh",
|
|
105
|
-
"build": "./extra/cli.mjs",
|
|
105
|
+
"build": "./bootstrap.sh && ./extra/cli.mjs",
|
|
106
106
|
"dev": "./extra/cli.mjs -w ./src -w ./test"
|
|
107
107
|
},
|
|
108
108
|
"author": "",
|
|
109
109
|
"license": "ISC",
|
|
110
110
|
"dependencies": {
|
|
111
|
-
"@types/node": "<
|
|
112
|
-
"esbuild": "^0.15.
|
|
111
|
+
"@types/node": "<19",
|
|
112
|
+
"esbuild": "^0.15.18",
|
|
113
113
|
"picomatch": "^2.3.1",
|
|
114
|
-
"typescript": "^4.
|
|
114
|
+
"typescript": "^4.9.3"
|
|
115
115
|
},
|
|
116
116
|
"devDependencies": {
|
|
117
|
-
"@plugjs/cov8": "^0.1.
|
|
118
|
-
"@plugjs/eslint": "^0.1.
|
|
119
|
-
"@plugjs/eslint-plugin": "^0.1.
|
|
120
|
-
"@plugjs/
|
|
121
|
-
"@plugjs/
|
|
122
|
-
"@plugjs/typescript": "^0.1.0",
|
|
123
|
-
"@types/chai": "^4.3.3",
|
|
117
|
+
"@plugjs/cov8": "^0.1.1",
|
|
118
|
+
"@plugjs/eslint": "^0.1.1",
|
|
119
|
+
"@plugjs/eslint-plugin": "^0.1.1",
|
|
120
|
+
"@plugjs/jasmine": "^0.1.1",
|
|
121
|
+
"@plugjs/typescript": "^0.1.1",
|
|
124
122
|
"@types/picomatch": "^2.3.0",
|
|
125
123
|
"@types/yargs-parser": "^21.0.0",
|
|
126
|
-
"chai": "^4.3.
|
|
124
|
+
"chai": "^4.3.7",
|
|
125
|
+
"chai-as-promised": "^7.1.1",
|
|
127
126
|
"yargs-parser": "^21.1.1"
|
|
128
|
-
}
|
|
127
|
+
},
|
|
128
|
+
"files": [
|
|
129
|
+
"*.md",
|
|
130
|
+
"dist/",
|
|
131
|
+
"extra/*.mjs",
|
|
132
|
+
"src/",
|
|
133
|
+
"types/"
|
|
134
|
+
]
|
|
129
135
|
}
|
package/src/asserts.ts
CHANGED