@take-out/cli 0.0.51 → 0.0.57
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/cjs/cli.cjs +3 -1
- package/dist/cjs/cli.js +3 -1
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/commands/run-all.cjs +69 -0
- package/dist/cjs/commands/run-all.js +59 -0
- package/dist/cjs/commands/run-all.js.map +6 -0
- package/dist/cjs/commands/run.cjs +2 -2
- package/dist/cjs/commands/run.js +2 -2
- package/dist/cjs/commands/run.js.map +1 -1
- package/dist/cjs/commands/script.cjs +8 -83
- package/dist/cjs/commands/script.js +8 -85
- package/dist/cjs/commands/script.js.map +1 -1
- package/dist/cjs/commands/script.native.js.map +1 -1
- package/dist/cjs/utils/script-listing.cjs +9 -9
- package/dist/cjs/utils/script-listing.js +8 -8
- package/dist/cjs/utils/script-listing.js.map +1 -1
- package/dist/cjs/utils/script-utils.cjs +91 -0
- package/dist/cjs/utils/script-utils.js +87 -0
- package/dist/cjs/utils/script-utils.js.map +6 -0
- package/dist/cjs/utils/script-utils.native.js +126 -0
- package/dist/cjs/utils/script-utils.native.js.map +6 -0
- package/dist/esm/cli.js +3 -0
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/cli.mjs +3 -1
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/commands/run-all.js +46 -0
- package/dist/esm/commands/run-all.js.map +6 -0
- package/dist/esm/commands/run-all.mjs +46 -0
- package/dist/esm/commands/run-all.mjs.map +1 -0
- package/dist/esm/commands/run.js +2 -2
- package/dist/esm/commands/run.js.map +1 -1
- package/dist/esm/commands/run.mjs +2 -2
- package/dist/esm/commands/run.mjs.map +1 -1
- package/dist/esm/commands/script.js +6 -84
- package/dist/esm/commands/script.js.map +1 -1
- package/dist/esm/commands/script.mjs +7 -79
- package/dist/esm/commands/script.mjs.map +1 -1
- package/dist/esm/utils/script-listing.js +1 -5
- package/dist/esm/utils/script-listing.js.map +1 -1
- package/dist/esm/utils/script-listing.mjs +1 -1
- package/dist/esm/utils/script-listing.mjs.map +1 -1
- package/dist/esm/utils/script-utils.js +80 -0
- package/dist/esm/utils/script-utils.js.map +6 -0
- package/dist/esm/utils/script-utils.mjs +66 -0
- package/dist/esm/utils/script-utils.mjs.map +1 -0
- package/dist/esm/utils/script-utils.native.js +112 -0
- package/dist/esm/utils/script-utils.native.js.map +6 -0
- package/package.json +7 -7
- package/scripts/seed.ts +12 -4
- package/src/cli.ts +3 -0
- package/src/commands/run-all.ts +62 -0
- package/src/commands/run.ts +3 -2
- package/src/commands/script.ts +9 -159
- package/src/utils/script-listing.ts +1 -6
- package/src/utils/script-utils.ts +153 -0
- package/types/utils/script-utils.d.ts +13 -0
- package/types/utils/script-utils.d.ts.map +1 -0
package/dist/cjs/cli.cjs
CHANGED
|
@@ -7,6 +7,7 @@ var import_node_fs = require("node:fs"),
|
|
|
7
7
|
import_env_setup = require("./commands/env-setup.cjs"),
|
|
8
8
|
import_onboard = require("./commands/onboard.cjs"),
|
|
9
9
|
import_run = require("./commands/run.cjs"),
|
|
10
|
+
import_run_all = require("./commands/run-all.cjs"),
|
|
10
11
|
import_script = require("./commands/script.cjs"),
|
|
11
12
|
import_sync = require("./commands/sync.cjs"),
|
|
12
13
|
import_script_listing = require("./utils/script-listing.cjs");
|
|
@@ -47,7 +48,7 @@ const isShorthand = process.argv[1]?.endsWith("tko") || process.argv[1]?.include
|
|
|
47
48
|
if (isShorthand) {
|
|
48
49
|
const firstArg = process.argv[2],
|
|
49
50
|
secondArg = process.argv[3];
|
|
50
|
-
firstArg && !["docs", "onboard", "run", "script", "env:setup", "sync", "changed", "--help", "-h", "--version", "-v"].includes(firstArg) && (isScriptCategory(firstArg) ? (secondArg && !secondArg.startsWith("-") && process.argv.splice(2, 2, `${firstArg}/${secondArg}`), process.argv.splice(2, 0, "run")) : firstArg?.includes("/") || isLocalScript(firstArg) || isBuiltInScript(firstArg) ? process.argv.splice(2, 0, "run") : process.argv.splice(2, 0, "script"));
|
|
51
|
+
firstArg && !["docs", "onboard", "run", "run-all", "script", "env:setup", "sync", "changed", "--help", "-h", "--version", "-v"].includes(firstArg) && (isScriptCategory(firstArg) ? (secondArg && !secondArg.startsWith("-") && process.argv.splice(2, 2, `${firstArg}/${secondArg}`), process.argv.splice(2, 0, "run")) : firstArg?.includes("/") || isLocalScript(firstArg) || isBuiltInScript(firstArg) ? process.argv.splice(2, 0, "run") : process.argv.splice(2, 0, "script"));
|
|
51
52
|
}
|
|
52
53
|
const main = (0, import_citty.defineCommand)({
|
|
53
54
|
meta: {
|
|
@@ -60,6 +61,7 @@ const main = (0, import_citty.defineCommand)({
|
|
|
60
61
|
docs: import_docs.docsCommand,
|
|
61
62
|
"env:setup": import_env_setup.envSetupCommand,
|
|
62
63
|
run: import_run.runCommand,
|
|
64
|
+
"run-all": import_run_all.runAllCommand,
|
|
63
65
|
script: import_script.scriptCommand,
|
|
64
66
|
sync: import_sync.syncCommand,
|
|
65
67
|
changed: import_changed.changedCommand
|
package/dist/cjs/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
var import_node_fs = require("node:fs"), import_node_path = require("node:path"), import_citty = require("citty"), import_changed = require("./commands/changed"), import_docs = require("./commands/docs"), import_env_setup = require("./commands/env-setup"), import_onboard = require("./commands/onboard"), import_run = require("./commands/run"), import_script = require("./commands/script"), import_sync = require("./commands/sync"), import_script_listing = require("./utils/script-listing");
|
|
2
|
+
var import_node_fs = require("node:fs"), import_node_path = require("node:path"), import_citty = require("citty"), import_changed = require("./commands/changed"), import_docs = require("./commands/docs"), import_env_setup = require("./commands/env-setup"), import_onboard = require("./commands/onboard"), import_run = require("./commands/run"), import_run_all = require("./commands/run-all"), import_script = require("./commands/script"), import_sync = require("./commands/sync"), import_script_listing = require("./utils/script-listing");
|
|
3
3
|
const import_meta = {};
|
|
4
4
|
function isScriptCategory(name) {
|
|
5
5
|
const scriptsDir = (0, import_node_path.join)(process.cwd(), "scripts"), categoryPath = (0, import_node_path.join)(scriptsDir, name);
|
|
@@ -37,6 +37,7 @@ if (isShorthand) {
|
|
|
37
37
|
"docs",
|
|
38
38
|
"onboard",
|
|
39
39
|
"run",
|
|
40
|
+
"run-all",
|
|
40
41
|
"script",
|
|
41
42
|
"env:setup",
|
|
42
43
|
"sync",
|
|
@@ -58,6 +59,7 @@ const main = (0, import_citty.defineCommand)({
|
|
|
58
59
|
docs: import_docs.docsCommand,
|
|
59
60
|
"env:setup": import_env_setup.envSetupCommand,
|
|
60
61
|
run: import_run.runCommand,
|
|
62
|
+
"run-all": import_run_all.runAllCommand,
|
|
61
63
|
script: import_script.scriptCommand,
|
|
62
64
|
sync: import_sync.syncCommand,
|
|
63
65
|
changed: import_changed.changedCommand
|
package/dist/cjs/cli.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/cli.ts"],
|
|
4
|
-
"mappings": ";AAOA,qBAAqC,oBACrC,mBAAqB,sBAErB,eAAuC,kBAEvC,iBAA+B,+BAC/B,cAA4B,4BAC5B,mBAAgC,iCAChC,iBAA+B,+BAC/B,aAA2B,2BAC3B,gBAA8B,8BAC9B,cAA4B,4BAC5B,wBAA+B;
|
|
4
|
+
"mappings": ";AAOA,qBAAqC,oBACrC,mBAAqB,sBAErB,eAAuC,kBAEvC,iBAA+B,+BAC/B,cAA4B,4BAC5B,mBAAgC,iCAChC,iBAA+B,+BAC/B,aAA2B,2BAC3B,iBAA8B,+BAC9B,gBAA8B,8BAC9B,cAA4B,4BAC5B,wBAA+B;AApB/B;AAuBA,SAAS,iBAAiB,MAAuB;AAC/C,QAAM,iBAAa,uBAAK,QAAQ,IAAI,GAAG,SAAS,GAC1C,mBAAe,uBAAK,YAAY,IAAI;AAE1C,MAAI;AACF,eAAO,2BAAW,YAAY,SAAK,yBAAS,YAAY,EAAE,YAAY;AAAA,EACxE,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAGA,SAAS,cAAc,MAAuB;AAC5C,QAAM,iBAAa,uBAAK,QAAQ,IAAI,GAAG,SAAS,GAC1C,iBAAiB,KAAK,QAAQ,MAAM,GAAG;AAE7C,aAAW,OAAO,CAAC,OAAO,OAAO,EAAE,GAAG;AACpC,UAAM,iBAAa,uBAAK,YAAY,GAAG,cAAc,GAAG,GAAG,EAAE;AAC7D,YAAI,2BAAW,UAAU;AACvB,aAAO;AAAA,EAEX;AAEA,SAAO;AACT;AAGA,SAAS,gBAAgB,MAAuB;AAC9C,MAAI;AACF,UAAM,WAAW,YAAY,QAAQ,gCAAgC,GAC/D,kBAAkB,IAAI,IAAI,QAAQ,EAAE,UACpC,kBAAc,uBAAK,iBAAiB,IAAI,GACxC,cAAU,uBAAK,aAAa,KAAK,GAGjC,iBAAiB,KAAK,QAAQ,MAAM,GAAG;AAG7C,eAAW,OAAO,CAAC,OAAO,OAAO,EAAE,GAAG;AACpC,YAAM,iBAAa,uBAAK,SAAS,GAAG,cAAc,GAAG,GAAG,EAAE;AAC1D,cAAI,2BAAW,UAAU;AACvB,eAAO;AAAA,IAEX;AAAA,EACF,QAAQ;AAAA,EAER;AAEA,SAAO;AACT;AAGA,MAAM,cACJ,QAAQ,KAAK,CAAC,GAAG,SAAS,KAAK,KAAK,QAAQ,KAAK,CAAC,GAAG,SAAS,WAAW;AAE3E,IAAI,aAAa;AAEf,QAAM,WAAW,QAAQ,KAAK,CAAC,GACzB,YAAY,QAAQ,KAAK,CAAC;AAgBhC,EAAI,YAAY,CAfQ;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,EAEiC,SAAS,QAAQ,MAG5C,iBAAiB,QAAQ,KAGvB,aAAa,CAAC,UAAU,WAAW,GAAG,KAExC,QAAQ,KAAK,OAAO,GAAG,GAAG,GAAG,QAAQ,IAAI,SAAS,EAAE,GAGtD,QAAQ,KAAK,OAAO,GAAG,GAAG,KAAK,KACtB,UAAU,SAAS,GAAG,KAGtB,cAAc,QAAQ,KAAK,gBAAgB,QAAQ,IAD5D,QAAQ,KAAK,OAAO,GAAG,GAAG,KAAK,IAO/B,QAAQ,KAAK,OAAO,GAAG,GAAG,QAAQ;AAGxC;AAEA,MAAM,WAAO,4BAAc;AAAA,EACzB,MAAM;AAAA,IACJ,MAAM,cAAc,QAAQ;AAAA,IAC5B,SAAS;AAAA,IACT,aAAa;AAAA,EACf;AAAA,EACA,aAAa;AAAA,IACX,SAAS;AAAA,IACT,MAAM;AAAA,IACN,aAAa;AAAA,IACb,KAAK;AAAA,IACL,WAAW;AAAA,IACX,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAIJ,IADgB,QAAQ,KAAK,SAAS,SAEpC,sCAAe;AAAA,EAEnB;AACF,CAAC;AAAA,IAED,sBAAQ,IAAI;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: !0
|
|
9
|
+
});
|
|
10
|
+
},
|
|
11
|
+
__copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
13
|
+
get: () => from[key],
|
|
14
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
|
+
});
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
+
value: !0
|
|
20
|
+
}), mod);
|
|
21
|
+
var run_all_exports = {};
|
|
22
|
+
__export(run_all_exports, {
|
|
23
|
+
runAllCommand: () => runAllCommand
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(run_all_exports);
|
|
26
|
+
var import_node_child_process = require("node:child_process"),
|
|
27
|
+
import_node_fs = require("node:fs"),
|
|
28
|
+
import_node_path = require("node:path"),
|
|
29
|
+
import_citty = require("citty");
|
|
30
|
+
const runAllCommand = (0, import_citty.defineCommand)({
|
|
31
|
+
meta: {
|
|
32
|
+
name: "run-all",
|
|
33
|
+
description: "Run multiple package.json scripts in parallel"
|
|
34
|
+
},
|
|
35
|
+
args: {
|
|
36
|
+
scripts: {
|
|
37
|
+
type: "positional",
|
|
38
|
+
description: "Scripts to run in parallel",
|
|
39
|
+
required: !1
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
run: async () => {
|
|
43
|
+
const scriptArgs = process.argv.slice(3);
|
|
44
|
+
let currentDir = process.cwd(),
|
|
45
|
+
projectRoot = "";
|
|
46
|
+
for (; currentDir !== (0, import_node_path.parse)(currentDir).root;) {
|
|
47
|
+
const packageJsonPath = (0, import_node_path.resolve)(currentDir, "package.json");
|
|
48
|
+
if ((0, import_node_fs.existsSync)(packageJsonPath)) try {
|
|
49
|
+
const pkg = JSON.parse((0, import_node_fs.readFileSync)(packageJsonPath, "utf8"));
|
|
50
|
+
if (pkg.workspaces || pkg.takeout) {
|
|
51
|
+
projectRoot = currentDir;
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
} catch {}
|
|
55
|
+
currentDir = (0, import_node_path.resolve)(currentDir, "..");
|
|
56
|
+
}
|
|
57
|
+
projectRoot || (console.error("Could not find project root"), process.exit(1));
|
|
58
|
+
const localScriptsPath = (0, import_node_path.resolve)(projectRoot, "packages/scripts/src/run.ts"),
|
|
59
|
+
scriptPath = (0, import_node_fs.existsSync)(localScriptsPath) ? localScriptsPath : (0, import_node_path.resolve)(projectRoot, "node_modules/@take-out/scripts/src/run.ts"),
|
|
60
|
+
child = (0, import_node_child_process.spawn)("bun", [scriptPath, ...scriptArgs], {
|
|
61
|
+
stdio: "inherit",
|
|
62
|
+
shell: !1
|
|
63
|
+
}),
|
|
64
|
+
code = await new Promise(resolve2 => {
|
|
65
|
+
child.on("exit", code2 => resolve2(code2 || 0));
|
|
66
|
+
});
|
|
67
|
+
process.exit(code);
|
|
68
|
+
}
|
|
69
|
+
});
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
8
|
+
}, __copyProps = (to, from, except, desc) => {
|
|
9
|
+
if (from && typeof from == "object" || typeof from == "function")
|
|
10
|
+
for (let key of __getOwnPropNames(from))
|
|
11
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
15
|
+
var run_all_exports = {};
|
|
16
|
+
__export(run_all_exports, {
|
|
17
|
+
runAllCommand: () => runAllCommand
|
|
18
|
+
});
|
|
19
|
+
module.exports = __toCommonJS(run_all_exports);
|
|
20
|
+
var import_node_child_process = require("node:child_process"), import_node_fs = require("node:fs"), import_node_path = require("node:path"), import_citty = require("citty");
|
|
21
|
+
const runAllCommand = (0, import_citty.defineCommand)({
|
|
22
|
+
meta: {
|
|
23
|
+
name: "run-all",
|
|
24
|
+
description: "Run multiple package.json scripts in parallel"
|
|
25
|
+
},
|
|
26
|
+
args: {
|
|
27
|
+
scripts: {
|
|
28
|
+
type: "positional",
|
|
29
|
+
description: "Scripts to run in parallel",
|
|
30
|
+
required: !1
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
run: async () => {
|
|
34
|
+
const scriptArgs = process.argv.slice(3);
|
|
35
|
+
let currentDir = process.cwd(), projectRoot = "";
|
|
36
|
+
for (; currentDir !== (0, import_node_path.parse)(currentDir).root; ) {
|
|
37
|
+
const packageJsonPath = (0, import_node_path.resolve)(currentDir, "package.json");
|
|
38
|
+
if ((0, import_node_fs.existsSync)(packageJsonPath))
|
|
39
|
+
try {
|
|
40
|
+
const pkg = JSON.parse((0, import_node_fs.readFileSync)(packageJsonPath, "utf8"));
|
|
41
|
+
if (pkg.workspaces || pkg.takeout) {
|
|
42
|
+
projectRoot = currentDir;
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
} catch {
|
|
46
|
+
}
|
|
47
|
+
currentDir = (0, import_node_path.resolve)(currentDir, "..");
|
|
48
|
+
}
|
|
49
|
+
projectRoot || (console.error("Could not find project root"), process.exit(1));
|
|
50
|
+
const localScriptsPath = (0, import_node_path.resolve)(projectRoot, "packages/scripts/src/run.ts"), scriptPath = (0, import_node_fs.existsSync)(localScriptsPath) ? localScriptsPath : (0, import_node_path.resolve)(projectRoot, "node_modules/@take-out/scripts/src/run.ts"), child = (0, import_node_child_process.spawn)("bun", [scriptPath, ...scriptArgs], {
|
|
51
|
+
stdio: "inherit",
|
|
52
|
+
shell: !1
|
|
53
|
+
}), code = await new Promise((resolve2) => {
|
|
54
|
+
child.on("exit", (code2) => resolve2(code2 || 0));
|
|
55
|
+
});
|
|
56
|
+
process.exit(code);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
//# sourceMappingURL=run-all.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/commands/run-all.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAAsB,+BACtB,iBAAyC,oBACzC,mBAA+B,sBAE/B,eAA8B;AAEvB,MAAM,oBAAgB,4BAAc;AAAA,EACzC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,EACF;AAAA,EACA,KAAK,YAAY;AAEf,UAAM,aAAa,QAAQ,KAAK,MAAM,CAAC;AAGvC,QAAI,aAAa,QAAQ,IAAI,GACzB,cAAc;AAElB,WAAO,mBAAe,wBAAM,UAAU,EAAE,QAAM;AAC5C,YAAM,sBAAkB,0BAAQ,YAAY,cAAc;AAC1D,cAAI,2BAAW,eAAe;AAC5B,YAAI;AACF,gBAAM,MAAM,KAAK,UAAM,6BAAa,iBAAiB,MAAM,CAAC;AAC5D,cAAI,IAAI,cAAc,IAAI,SAAS;AACjC,0BAAc;AACd;AAAA,UACF;AAAA,QACF,QAAQ;AAAA,QAAC;AAEX,uBAAa,0BAAQ,YAAY,IAAI;AAAA,IACvC;AAEA,IAAK,gBACH,QAAQ,MAAM,6BAA6B,GAC3C,QAAQ,KAAK,CAAC;AAIhB,UAAM,uBAAmB,0BAAQ,aAAa,6BAA6B,GACrE,iBAAa,2BAAW,gBAAgB,IAC1C,uBACA,0BAAQ,aAAa,2CAA2C,GAE9D,YAAQ,iCAAM,OAAO,CAAC,YAAY,GAAG,UAAU,GAAG;AAAA,MACtD,OAAO;AAAA,MACP,OAAO;AAAA,IACT,CAAC,GAEK,OAAO,MAAM,IAAI,QAAgB,CAACA,aAAY;AAClD,YAAM,GAAG,QAAQ,CAACC,UAASD,SAAQC,SAAQ,CAAC,CAAC;AAAA,IAC/C,CAAC;AACD,YAAQ,KAAK,IAAI;AAAA,EACnB;AACF,CAAC;",
|
|
5
|
+
"names": ["resolve", "code"]
|
|
6
|
+
}
|
|
@@ -61,7 +61,7 @@ const runCommand = (0, import_citty.defineCommand)({
|
|
|
61
61
|
if (secondArg === "--all") {
|
|
62
62
|
const {
|
|
63
63
|
discoverScripts: discoverScripts2
|
|
64
|
-
} = await import("
|
|
64
|
+
} = await import("../utils/script-utils"),
|
|
65
65
|
{
|
|
66
66
|
runScriptsInParallel
|
|
67
67
|
} = await import("../utils/parallel-runner"),
|
|
@@ -83,7 +83,7 @@ const runCommand = (0, import_citty.defineCommand)({
|
|
|
83
83
|
const {
|
|
84
84
|
discoverScripts,
|
|
85
85
|
getScriptMetadata
|
|
86
|
-
} = await import("
|
|
86
|
+
} = await import("../utils/script-utils"),
|
|
87
87
|
pc = (await import("picocolors")).default,
|
|
88
88
|
categoryScripts = discoverScripts(categoryPath);
|
|
89
89
|
if (categoryScripts.size > 0) {
|
package/dist/cjs/commands/run.js
CHANGED
|
@@ -44,7 +44,7 @@ const runCommand = (0, import_citty.defineCommand)({
|
|
|
44
44
|
const localDir = (0, import_node_path.join)(process.cwd(), "scripts"), categoryPath = (0, import_node_path.join)(localDir, firstArg);
|
|
45
45
|
if ((0, import_node_fs.existsSync)(categoryPath) && (0, import_node_fs.statSync)(categoryPath).isDirectory()) {
|
|
46
46
|
if (secondArg === "--all") {
|
|
47
|
-
const { discoverScripts: discoverScripts2 } = await import("
|
|
47
|
+
const { discoverScripts: discoverScripts2 } = await import("../utils/script-utils"), { runScriptsInParallel } = await import("../utils/parallel-runner"), pc2 = (await import("picocolors")).default, categoryScripts2 = discoverScripts2(categoryPath);
|
|
48
48
|
if (categoryScripts2.size === 0) {
|
|
49
49
|
console.info(pc2.yellow(`No scripts found in ${firstArg}/`));
|
|
50
50
|
return;
|
|
@@ -60,7 +60,7 @@ const runCommand = (0, import_citty.defineCommand)({
|
|
|
60
60
|
});
|
|
61
61
|
return;
|
|
62
62
|
}
|
|
63
|
-
const { discoverScripts, getScriptMetadata } = await import("
|
|
63
|
+
const { discoverScripts, getScriptMetadata } = await import("../utils/script-utils"), pc = (await import("picocolors")).default, categoryScripts = discoverScripts(categoryPath);
|
|
64
64
|
if (categoryScripts.size > 0) {
|
|
65
65
|
console.info(), console.info(pc.bold(pc.cyan(`\u{1F4C1} ${firstArg} Scripts`))), console.info();
|
|
66
66
|
for (const [name, path] of categoryScripts) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/commands/run.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAAsB,+BACtB,iBAAmD,oBACnD,mBAAqC,sBAErC,eAA8B;AAEvB,MAAM,iBAAa,4BAAc;AAAA,EACtC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,EACF;AAAA,EACA,KAAK,YAAY;AAEf,UAAM,aAAa,QAAQ,KAAK,MAAM,CAAC,GACjC,WAAW,WAAW,CAAC,GACvB,YAAY,WAAW,CAAC;AAG9B,QAAI,UAAU;AACZ,YAAM,eAAW,uBAAK,QAAQ,IAAI,GAAG,SAAS,GACxC,mBAAe,uBAAK,UAAU,QAAQ;AAG5C,cAAI,2BAAW,YAAY,SAAK,yBAAS,YAAY,EAAE,YAAY,GAAG;AAIpE,YAFmB,cAAc,SAEjB;AAEd,gBAAM,EAAE,iBAAAA,iBAAgB,IAAI,MAAM,OAAO,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["discoverScripts", "pc", "categoryScripts", "scriptPath", "child", "code", "resolve"]
|
|
6
6
|
}
|
|
@@ -32,28 +32,23 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
32
32
|
var script_exports = {};
|
|
33
33
|
__export(script_exports, {
|
|
34
34
|
createShorthandCommand: () => createShorthandCommand,
|
|
35
|
-
discoverScripts: () => discoverScripts,
|
|
36
35
|
findScript: () => findScript,
|
|
37
36
|
formatScriptList: () => import_script_listing2.formatScriptList,
|
|
38
|
-
getLocalScriptsDir: () => getLocalScriptsDir,
|
|
39
|
-
getScriptMetadata: () => getScriptMetadata,
|
|
40
37
|
listAllScripts: () => import_script_listing2.listAllScripts,
|
|
41
38
|
listCategoryScripts: () => import_script_listing2.listCategoryScripts,
|
|
42
39
|
scriptCommand: () => scriptCommand
|
|
43
40
|
});
|
|
44
41
|
module.exports = __toCommonJS(script_exports);
|
|
45
42
|
var import_node_fs = require("node:fs"),
|
|
46
|
-
import_node_os = require("node:os"),
|
|
47
43
|
import_node_path = require("node:path"),
|
|
48
44
|
import_node_url = require("node:url"),
|
|
49
45
|
import_citty = require("citty"),
|
|
50
46
|
import_picocolors = __toESM(require("picocolors"), 1),
|
|
51
47
|
import_script_listing = require("../utils/script-listing.cjs"),
|
|
48
|
+
import_script_utils = require("../utils/script-utils.cjs"),
|
|
52
49
|
import_sync = require("../utils/sync.cjs"),
|
|
53
50
|
import_script_listing2 = require("../utils/script-listing.cjs");
|
|
54
|
-
const import_meta = {}
|
|
55
|
-
CACHE_DIR = (0, import_node_path.join)((0, import_node_os.homedir)(), ".takeout"),
|
|
56
|
-
CACHE_FILE = (0, import_node_path.join)(CACHE_DIR, "script-cache.json");
|
|
51
|
+
const import_meta = {};
|
|
57
52
|
function findScriptsPackageRoot() {
|
|
58
53
|
try {
|
|
59
54
|
const resolved = import_meta.resolve("@take-out/scripts/package.json"),
|
|
@@ -64,68 +59,9 @@ function findScriptsPackageRoot() {
|
|
|
64
59
|
} catch {}
|
|
65
60
|
return null;
|
|
66
61
|
}
|
|
67
|
-
function getLocalScriptsDir() {
|
|
68
|
-
return (0, import_node_path.join)(process.cwd(), "scripts");
|
|
69
|
-
}
|
|
70
|
-
function extractMetadata(filePath) {
|
|
71
|
-
try {
|
|
72
|
-
const lines = (0, import_node_fs.readFileSync)(filePath, "utf-8").split(`
|
|
73
|
-
`).slice(0, 20),
|
|
74
|
-
metadata = {};
|
|
75
|
-
for (const line of lines) {
|
|
76
|
-
const descMatch = line.match(/@description\s+(.+)/);
|
|
77
|
-
descMatch && descMatch[1] && (metadata.description = descMatch[1].trim());
|
|
78
|
-
const argsMatch = line.match(/@args\s+(.+)/);
|
|
79
|
-
argsMatch && argsMatch[1] && (metadata.args = argsMatch[1].split(",").map(a => a.trim()));
|
|
80
|
-
}
|
|
81
|
-
const stat = (0, import_node_fs.statSync)(filePath);
|
|
82
|
-
return metadata.mtime = stat.mtimeMs, metadata;
|
|
83
|
-
} catch {
|
|
84
|
-
return {};
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
function loadCache() {
|
|
88
|
-
try {
|
|
89
|
-
if ((0, import_node_fs.existsSync)(CACHE_FILE)) return JSON.parse((0, import_node_fs.readFileSync)(CACHE_FILE, "utf-8"));
|
|
90
|
-
} catch {}
|
|
91
|
-
return {};
|
|
92
|
-
}
|
|
93
|
-
function saveCache(cache) {
|
|
94
|
-
try {
|
|
95
|
-
(0, import_node_fs.existsSync)(CACHE_DIR) || (0, import_node_fs.mkdirSync)(CACHE_DIR, {
|
|
96
|
-
recursive: !0
|
|
97
|
-
}), (0, import_node_fs.writeFileSync)(CACHE_FILE, JSON.stringify(cache, null, 2));
|
|
98
|
-
} catch {}
|
|
99
|
-
}
|
|
100
|
-
function getScriptMetadata(filePath) {
|
|
101
|
-
const cache = loadCache(),
|
|
102
|
-
stat = (0, import_node_fs.statSync)(filePath);
|
|
103
|
-
if (cache[filePath] && cache[filePath].mtime === stat.mtimeMs) return cache[filePath];
|
|
104
|
-
const metadata = extractMetadata(filePath);
|
|
105
|
-
return cache[filePath] = metadata, saveCache(cache), metadata;
|
|
106
|
-
}
|
|
107
|
-
function discoverScripts(dir, baseDir = dir, depth = 0, maxDepth = 1) {
|
|
108
|
-
const scripts = /* @__PURE__ */new Map();
|
|
109
|
-
if (!(0, import_node_fs.existsSync)(dir)) return scripts;
|
|
110
|
-
try {
|
|
111
|
-
const entries = (0, import_node_fs.readdirSync)(dir);
|
|
112
|
-
for (const entry of entries) {
|
|
113
|
-
const fullPath = (0, import_node_path.join)(dir, entry);
|
|
114
|
-
if ((0, import_node_fs.statSync)(fullPath).isDirectory()) {
|
|
115
|
-
if (entry === "helpers" || depth >= maxDepth) continue;
|
|
116
|
-
const subScripts = discoverScripts(fullPath, baseDir, depth + 1, maxDepth);
|
|
117
|
-
for (const [name, path] of subScripts) scripts.set(name, path);
|
|
118
|
-
} else if (entry.endsWith(".ts") || entry.endsWith(".js")) {
|
|
119
|
-
const scriptName = (0, import_node_path.relative)(baseDir, fullPath).split("\\").join("/").replace(/\.(ts|js)$/, "");
|
|
120
|
-
scripts.set(scriptName, fullPath);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
} catch {}
|
|
124
|
-
return scripts;
|
|
125
|
-
}
|
|
126
62
|
function findScript(name) {
|
|
127
63
|
const normalizedName = name.replace(/:/g, "/"),
|
|
128
|
-
localDir = getLocalScriptsDir();
|
|
64
|
+
localDir = (0, import_script_utils.getLocalScriptsDir)();
|
|
129
65
|
for (const ext of [".ts", ".js", ""]) {
|
|
130
66
|
const localPath = (0, import_node_path.join)(localDir, `${normalizedName}${ext}`);
|
|
131
67
|
if ((0, import_node_fs.existsSync)(localPath)) return localPath;
|
|
@@ -164,7 +100,7 @@ const newCommand = (0, import_citty.defineCommand)({
|
|
|
164
100
|
args
|
|
165
101
|
}) {
|
|
166
102
|
const scriptPath = args.path,
|
|
167
|
-
localDir = getLocalScriptsDir(),
|
|
103
|
+
localDir = (0, import_script_utils.getLocalScriptsDir)(),
|
|
168
104
|
fullPath = (0, import_node_path.join)(localDir, `${scriptPath}.ts`),
|
|
169
105
|
dir = (0, import_node_path.dirname)(fullPath);
|
|
170
106
|
(0, import_node_fs.existsSync)(dir) || (0, import_node_fs.mkdirSync)(dir, {
|
|
@@ -177,29 +113,18 @@ const newCommand = (0, import_citty.defineCommand)({
|
|
|
177
113
|
* @args --verbose, --dry-run
|
|
178
114
|
*/
|
|
179
115
|
|
|
180
|
-
import {
|
|
116
|
+
import { args } from '@take-out/scripts/helpers/args'
|
|
181
117
|
|
|
182
|
-
const {
|
|
183
|
-
args: process.argv.slice(2),
|
|
184
|
-
options: {
|
|
185
|
-
verbose: {
|
|
186
|
-
type: 'boolean',
|
|
187
|
-
short: 'v',
|
|
188
|
-
},
|
|
189
|
-
'dry-run': {
|
|
190
|
-
type: 'boolean',
|
|
191
|
-
},
|
|
192
|
-
},
|
|
193
|
-
})
|
|
118
|
+
const { verbose, dryRun } = args('--verbose boolean --dry-run boolean')
|
|
194
119
|
|
|
195
120
|
async function main() {
|
|
196
121
|
console.info('Running ${(0, import_node_path.basename)(scriptPath)}...')
|
|
197
122
|
|
|
198
|
-
if (
|
|
123
|
+
if (verbose) {
|
|
199
124
|
console.info('Verbose mode enabled')
|
|
200
125
|
}
|
|
201
126
|
|
|
202
|
-
if (
|
|
127
|
+
if (dryRun) {
|
|
203
128
|
console.info('Dry run mode - no changes will be made')
|
|
204
129
|
}
|
|
205
130
|
|
|
@@ -23,18 +23,15 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
23
23
|
var script_exports = {};
|
|
24
24
|
__export(script_exports, {
|
|
25
25
|
createShorthandCommand: () => createShorthandCommand,
|
|
26
|
-
discoverScripts: () => discoverScripts,
|
|
27
26
|
findScript: () => findScript,
|
|
28
27
|
formatScriptList: () => import_script_listing2.formatScriptList,
|
|
29
|
-
getLocalScriptsDir: () => getLocalScriptsDir,
|
|
30
|
-
getScriptMetadata: () => getScriptMetadata,
|
|
31
28
|
listAllScripts: () => import_script_listing2.listAllScripts,
|
|
32
29
|
listCategoryScripts: () => import_script_listing2.listCategoryScripts,
|
|
33
30
|
scriptCommand: () => scriptCommand
|
|
34
31
|
});
|
|
35
32
|
module.exports = __toCommonJS(script_exports);
|
|
36
|
-
var import_node_fs = require("node:fs"),
|
|
37
|
-
const import_meta = {}
|
|
33
|
+
var import_node_fs = require("node:fs"), import_node_path = require("node:path"), import_node_url = require("node:url"), import_citty = require("citty"), import_picocolors = __toESM(require("picocolors"), 1), import_script_listing = require("../utils/script-listing"), import_script_utils = require("../utils/script-utils"), import_sync = require("../utils/sync"), import_script_listing2 = require("../utils/script-listing");
|
|
34
|
+
const import_meta = {};
|
|
38
35
|
function findScriptsPackageRoot() {
|
|
39
36
|
try {
|
|
40
37
|
const resolved = import_meta.resolve("@take-out/scripts/package.json"), packageJsonPath = (0, import_node_url.fileURLToPath)(new URL(resolved)), packageRoot = (0, import_node_path.join)(packageJsonPath, ".."), srcPath = (0, import_node_path.join)(packageRoot, "src");
|
|
@@ -44,71 +41,8 @@ function findScriptsPackageRoot() {
|
|
|
44
41
|
}
|
|
45
42
|
return null;
|
|
46
43
|
}
|
|
47
|
-
function getLocalScriptsDir() {
|
|
48
|
-
return (0, import_node_path.join)(process.cwd(), "scripts");
|
|
49
|
-
}
|
|
50
|
-
function extractMetadata(filePath) {
|
|
51
|
-
try {
|
|
52
|
-
const lines = (0, import_node_fs.readFileSync)(filePath, "utf-8").split(`
|
|
53
|
-
`).slice(0, 20), metadata = {};
|
|
54
|
-
for (const line of lines) {
|
|
55
|
-
const descMatch = line.match(/@description\s+(.+)/);
|
|
56
|
-
descMatch && descMatch[1] && (metadata.description = descMatch[1].trim());
|
|
57
|
-
const argsMatch = line.match(/@args\s+(.+)/);
|
|
58
|
-
argsMatch && argsMatch[1] && (metadata.args = argsMatch[1].split(",").map((a) => a.trim()));
|
|
59
|
-
}
|
|
60
|
-
const stat = (0, import_node_fs.statSync)(filePath);
|
|
61
|
-
return metadata.mtime = stat.mtimeMs, metadata;
|
|
62
|
-
} catch {
|
|
63
|
-
return {};
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
function loadCache() {
|
|
67
|
-
try {
|
|
68
|
-
if ((0, import_node_fs.existsSync)(CACHE_FILE))
|
|
69
|
-
return JSON.parse((0, import_node_fs.readFileSync)(CACHE_FILE, "utf-8"));
|
|
70
|
-
} catch {
|
|
71
|
-
}
|
|
72
|
-
return {};
|
|
73
|
-
}
|
|
74
|
-
function saveCache(cache) {
|
|
75
|
-
try {
|
|
76
|
-
(0, import_node_fs.existsSync)(CACHE_DIR) || (0, import_node_fs.mkdirSync)(CACHE_DIR, { recursive: !0 }), (0, import_node_fs.writeFileSync)(CACHE_FILE, JSON.stringify(cache, null, 2));
|
|
77
|
-
} catch {
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
function getScriptMetadata(filePath) {
|
|
81
|
-
const cache = loadCache(), stat = (0, import_node_fs.statSync)(filePath);
|
|
82
|
-
if (cache[filePath] && cache[filePath].mtime === stat.mtimeMs)
|
|
83
|
-
return cache[filePath];
|
|
84
|
-
const metadata = extractMetadata(filePath);
|
|
85
|
-
return cache[filePath] = metadata, saveCache(cache), metadata;
|
|
86
|
-
}
|
|
87
|
-
function discoverScripts(dir, baseDir = dir, depth = 0, maxDepth = 1) {
|
|
88
|
-
const scripts = /* @__PURE__ */ new Map();
|
|
89
|
-
if (!(0, import_node_fs.existsSync)(dir))
|
|
90
|
-
return scripts;
|
|
91
|
-
try {
|
|
92
|
-
const entries = (0, import_node_fs.readdirSync)(dir);
|
|
93
|
-
for (const entry of entries) {
|
|
94
|
-
const fullPath = (0, import_node_path.join)(dir, entry);
|
|
95
|
-
if ((0, import_node_fs.statSync)(fullPath).isDirectory()) {
|
|
96
|
-
if (entry === "helpers" || depth >= maxDepth)
|
|
97
|
-
continue;
|
|
98
|
-
const subScripts = discoverScripts(fullPath, baseDir, depth + 1, maxDepth);
|
|
99
|
-
for (const [name, path] of subScripts)
|
|
100
|
-
scripts.set(name, path);
|
|
101
|
-
} else if (entry.endsWith(".ts") || entry.endsWith(".js")) {
|
|
102
|
-
const scriptName = (0, import_node_path.relative)(baseDir, fullPath).split("\\").join("/").replace(/\.(ts|js)$/, "");
|
|
103
|
-
scripts.set(scriptName, fullPath);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
} catch {
|
|
107
|
-
}
|
|
108
|
-
return scripts;
|
|
109
|
-
}
|
|
110
44
|
function findScript(name) {
|
|
111
|
-
const normalizedName = name.replace(/:/g, "/"), localDir = getLocalScriptsDir();
|
|
45
|
+
const normalizedName = name.replace(/:/g, "/"), localDir = (0, import_script_utils.getLocalScriptsDir)();
|
|
112
46
|
for (const ext of [".ts", ".js", ""]) {
|
|
113
47
|
const localPath = (0, import_node_path.join)(localDir, `${normalizedName}${ext}`);
|
|
114
48
|
if ((0, import_node_fs.existsSync)(localPath))
|
|
@@ -145,7 +79,7 @@ const newCommand = (0, import_citty.defineCommand)({
|
|
|
145
79
|
}
|
|
146
80
|
},
|
|
147
81
|
async run({ args }) {
|
|
148
|
-
const scriptPath = args.path, localDir = getLocalScriptsDir(), fullPath = (0, import_node_path.join)(localDir, `${scriptPath}.ts`), dir = (0, import_node_path.dirname)(fullPath);
|
|
82
|
+
const scriptPath = args.path, localDir = (0, import_script_utils.getLocalScriptsDir)(), fullPath = (0, import_node_path.join)(localDir, `${scriptPath}.ts`), dir = (0, import_node_path.dirname)(fullPath);
|
|
149
83
|
(0, import_node_fs.existsSync)(dir) || (0, import_node_fs.mkdirSync)(dir, { recursive: !0 }), (0, import_node_fs.existsSync)(fullPath) && (console.error(
|
|
150
84
|
import_picocolors.default.red(`\u2717 Script already exists: ${(0, import_node_path.relative)(process.cwd(), fullPath)}`)
|
|
151
85
|
), process.exit(1));
|
|
@@ -156,29 +90,18 @@ const newCommand = (0, import_citty.defineCommand)({
|
|
|
156
90
|
* @args --verbose, --dry-run
|
|
157
91
|
*/
|
|
158
92
|
|
|
159
|
-
import {
|
|
93
|
+
import { args } from '@take-out/scripts/helpers/args'
|
|
160
94
|
|
|
161
|
-
const {
|
|
162
|
-
args: process.argv.slice(2),
|
|
163
|
-
options: {
|
|
164
|
-
verbose: {
|
|
165
|
-
type: 'boolean',
|
|
166
|
-
short: 'v',
|
|
167
|
-
},
|
|
168
|
-
'dry-run': {
|
|
169
|
-
type: 'boolean',
|
|
170
|
-
},
|
|
171
|
-
},
|
|
172
|
-
})
|
|
95
|
+
const { verbose, dryRun } = args('--verbose boolean --dry-run boolean')
|
|
173
96
|
|
|
174
97
|
async function main() {
|
|
175
98
|
console.info('Running ${(0, import_node_path.basename)(scriptPath)}...')
|
|
176
99
|
|
|
177
|
-
if (
|
|
100
|
+
if (verbose) {
|
|
178
101
|
console.info('Verbose mode enabled')
|
|
179
102
|
}
|
|
180
103
|
|
|
181
|
-
if (
|
|
104
|
+
if (dryRun) {
|
|
182
105
|
console.info('Dry run mode - no changes will be made')
|
|
183
106
|
}
|
|
184
107
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/commands/script.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["import_script_listing", "pc"]
|
|
6
6
|
}
|