@base44-preview/cli 0.0.21-pr.112.26ce2e2 → 0.0.21-pr.112.3b6cf1a
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/index.js +297 -183
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { EventEmitter, addAbortListener, on, once, setMaxListeners } from "node:
|
|
|
3
3
|
import childProcess, { ChildProcess, execFile, spawn, spawnSync } from "node:child_process";
|
|
4
4
|
import path, { basename, dirname, join, posix, resolve, win32 } from "node:path";
|
|
5
5
|
import fs, { appendFileSync, createReadStream, createWriteStream, readFileSync, statSync, writeFileSync } from "node:fs";
|
|
6
|
-
import
|
|
6
|
+
import y, { execArgv, execPath, hrtime, platform, stdin, stdout } from "node:process";
|
|
7
7
|
import { aborted, callbackify, debuglog, inspect, promisify, stripVTControlCharacters } from "node:util";
|
|
8
8
|
import * as g from "node:readline";
|
|
9
9
|
import O from "node:readline";
|
|
@@ -893,7 +893,7 @@ var require_command = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
893
893
|
const childProcess$1 = __require("node:child_process");
|
|
894
894
|
const path$15 = __require("node:path");
|
|
895
895
|
const fs$10 = __require("node:fs");
|
|
896
|
-
const process$
|
|
896
|
+
const process$3 = __require("node:process");
|
|
897
897
|
const { Argument, humanReadableArgName } = require_argument();
|
|
898
898
|
const { CommanderError } = require_error$1();
|
|
899
899
|
const { Help } = require_help();
|
|
@@ -944,10 +944,10 @@ var require_command = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
944
944
|
this._showHelpAfterError = false;
|
|
945
945
|
this._showSuggestionAfterError = true;
|
|
946
946
|
this._outputConfiguration = {
|
|
947
|
-
writeOut: (str) => process$
|
|
948
|
-
writeErr: (str) => process$
|
|
949
|
-
getOutHelpWidth: () => process$
|
|
950
|
-
getErrHelpWidth: () => process$
|
|
947
|
+
writeOut: (str) => process$3.stdout.write(str),
|
|
948
|
+
writeErr: (str) => process$3.stderr.write(str),
|
|
949
|
+
getOutHelpWidth: () => process$3.stdout.isTTY ? process$3.stdout.columns : void 0,
|
|
950
|
+
getErrHelpWidth: () => process$3.stderr.isTTY ? process$3.stderr.columns : void 0,
|
|
951
951
|
outputError: (str, write) => write(str)
|
|
952
952
|
};
|
|
953
953
|
this._hidden = false;
|
|
@@ -1301,7 +1301,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
1301
1301
|
*/
|
|
1302
1302
|
_exit(exitCode, code$1, message) {
|
|
1303
1303
|
if (this._exitCallback) this._exitCallback(new CommanderError(exitCode, code$1, message));
|
|
1304
|
-
process$
|
|
1304
|
+
process$3.exit(exitCode);
|
|
1305
1305
|
}
|
|
1306
1306
|
/**
|
|
1307
1307
|
* Register callback `fn` for the command.
|
|
@@ -1640,11 +1640,11 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
1640
1640
|
if (argv !== void 0 && !Array.isArray(argv)) throw new Error("first parameter to parse must be array or undefined");
|
|
1641
1641
|
parseOptions = parseOptions || {};
|
|
1642
1642
|
if (argv === void 0 && parseOptions.from === void 0) {
|
|
1643
|
-
if (process$
|
|
1644
|
-
const execArgv$1 = process$
|
|
1643
|
+
if (process$3.versions?.electron) parseOptions.from = "electron";
|
|
1644
|
+
const execArgv$1 = process$3.execArgv ?? [];
|
|
1645
1645
|
if (execArgv$1.includes("-e") || execArgv$1.includes("--eval") || execArgv$1.includes("-p") || execArgv$1.includes("--print")) parseOptions.from = "eval";
|
|
1646
1646
|
}
|
|
1647
|
-
if (argv === void 0) argv = process$
|
|
1647
|
+
if (argv === void 0) argv = process$3.argv;
|
|
1648
1648
|
this.rawArgs = argv.slice();
|
|
1649
1649
|
let userArgs;
|
|
1650
1650
|
switch (parseOptions.from) {
|
|
@@ -1654,7 +1654,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
1654
1654
|
userArgs = argv.slice(2);
|
|
1655
1655
|
break;
|
|
1656
1656
|
case "electron":
|
|
1657
|
-
if (process$
|
|
1657
|
+
if (process$3.defaultApp) {
|
|
1658
1658
|
this._scriptPath = argv[1];
|
|
1659
1659
|
userArgs = argv.slice(2);
|
|
1660
1660
|
} else userArgs = argv.slice(1);
|
|
@@ -1768,15 +1768,15 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
1768
1768
|
}
|
|
1769
1769
|
launchWithNode = sourceExt.includes(path$15.extname(executableFile));
|
|
1770
1770
|
let proc$1;
|
|
1771
|
-
if (process$
|
|
1771
|
+
if (process$3.platform !== "win32") if (launchWithNode) {
|
|
1772
1772
|
args.unshift(executableFile);
|
|
1773
|
-
args = incrementNodeInspectorPort(process$
|
|
1774
|
-
proc$1 = childProcess$1.spawn(process$
|
|
1773
|
+
args = incrementNodeInspectorPort(process$3.execArgv).concat(args);
|
|
1774
|
+
proc$1 = childProcess$1.spawn(process$3.argv[0], args, { stdio: "inherit" });
|
|
1775
1775
|
} else proc$1 = childProcess$1.spawn(executableFile, args, { stdio: "inherit" });
|
|
1776
1776
|
else {
|
|
1777
1777
|
args.unshift(executableFile);
|
|
1778
|
-
args = incrementNodeInspectorPort(process$
|
|
1779
|
-
proc$1 = childProcess$1.spawn(process$
|
|
1778
|
+
args = incrementNodeInspectorPort(process$3.execArgv).concat(args);
|
|
1779
|
+
proc$1 = childProcess$1.spawn(process$3.execPath, args, { stdio: "inherit" });
|
|
1780
1780
|
}
|
|
1781
1781
|
if (!proc$1.killed) [
|
|
1782
1782
|
"SIGUSR1",
|
|
@@ -1785,14 +1785,14 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
1785
1785
|
"SIGINT",
|
|
1786
1786
|
"SIGHUP"
|
|
1787
1787
|
].forEach((signal) => {
|
|
1788
|
-
process$
|
|
1788
|
+
process$3.on(signal, () => {
|
|
1789
1789
|
if (proc$1.killed === false && proc$1.exitCode === null) proc$1.kill(signal);
|
|
1790
1790
|
});
|
|
1791
1791
|
});
|
|
1792
1792
|
const exitCallback = this._exitCallback;
|
|
1793
1793
|
proc$1.on("close", (code$1) => {
|
|
1794
1794
|
code$1 = code$1 ?? 1;
|
|
1795
|
-
if (!exitCallback) process$
|
|
1795
|
+
if (!exitCallback) process$3.exit(code$1);
|
|
1796
1796
|
else exitCallback(new CommanderError(code$1, "commander.executeSubCommandAsync", "(close)"));
|
|
1797
1797
|
});
|
|
1798
1798
|
proc$1.on("error", (err) => {
|
|
@@ -1804,7 +1804,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
1804
1804
|
- ${executableDirMessage}`;
|
|
1805
1805
|
throw new Error(executableMissing);
|
|
1806
1806
|
} else if (err.code === "EACCES") throw new Error(`'${executableFile}' not executable`);
|
|
1807
|
-
if (!exitCallback) process$
|
|
1807
|
+
if (!exitCallback) process$3.exit(1);
|
|
1808
1808
|
else {
|
|
1809
1809
|
const wrappedError = new CommanderError(1, "commander.executeSubCommandAsync", "(error)");
|
|
1810
1810
|
wrappedError.nestedError = err;
|
|
@@ -2210,13 +2210,13 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
2210
2210
|
*/
|
|
2211
2211
|
_parseOptionsEnv() {
|
|
2212
2212
|
this.options.forEach((option) => {
|
|
2213
|
-
if (option.envVar && option.envVar in process$
|
|
2213
|
+
if (option.envVar && option.envVar in process$3.env) {
|
|
2214
2214
|
const optionKey = option.attributeName();
|
|
2215
2215
|
if (this.getOptionValue(optionKey) === void 0 || [
|
|
2216
2216
|
"default",
|
|
2217
2217
|
"config",
|
|
2218
2218
|
"env"
|
|
2219
|
-
].includes(this.getOptionValueSource(optionKey))) if (option.required || option.optional) this.emit(`optionEnv:${option.name()}`, process$
|
|
2219
|
+
].includes(this.getOptionValueSource(optionKey))) if (option.required || option.optional) this.emit(`optionEnv:${option.name()}`, process$3.env[option.envVar]);
|
|
2220
2220
|
else this.emit(`optionEnv:${option.name()}`);
|
|
2221
2221
|
}
|
|
2222
2222
|
});
|
|
@@ -2595,7 +2595,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
|
|
|
2595
2595
|
*/
|
|
2596
2596
|
help(contextOptions) {
|
|
2597
2597
|
this.outputHelp(contextOptions);
|
|
2598
|
-
let exitCode = process$
|
|
2598
|
+
let exitCode = process$3.exitCode || 0;
|
|
2599
2599
|
if (exitCode === 0 && contextOptions && typeof contextOptions !== "function" && contextOptions.error) exitCode = 1;
|
|
2600
2600
|
this._exit(exitCode, "commander.help", "(outputHelp)");
|
|
2601
2601
|
}
|
|
@@ -2711,16 +2711,16 @@ var require_src = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
2711
2711
|
const CSI = `${ESC}[`;
|
|
2712
2712
|
const beep = "\x07";
|
|
2713
2713
|
const cursor = {
|
|
2714
|
-
to(x$2, y$
|
|
2715
|
-
if (!y$
|
|
2716
|
-
return `${CSI}${y$
|
|
2714
|
+
to(x$2, y$2) {
|
|
2715
|
+
if (!y$2) return `${CSI}${x$2 + 1}G`;
|
|
2716
|
+
return `${CSI}${y$2 + 1};${x$2 + 1}H`;
|
|
2717
2717
|
},
|
|
2718
|
-
move(x$2, y$
|
|
2718
|
+
move(x$2, y$2) {
|
|
2719
2719
|
let ret = "";
|
|
2720
2720
|
if (x$2 < 0) ret += `${CSI}${-x$2}D`;
|
|
2721
2721
|
else if (x$2 > 0) ret += `${CSI}${x$2}C`;
|
|
2722
|
-
if (y$
|
|
2723
|
-
else if (y$
|
|
2722
|
+
if (y$2 < 0) ret += `${CSI}${-y$2}A`;
|
|
2723
|
+
else if (y$2 > 0) ret += `${CSI}${y$2}B`;
|
|
2724
2724
|
return ret;
|
|
2725
2725
|
},
|
|
2726
2726
|
up: (count$1 = 1) => `${CSI}${count$1}A`,
|
|
@@ -3030,13 +3030,13 @@ function rD() {
|
|
|
3030
3030
|
}
|
|
3031
3031
|
}), r;
|
|
3032
3032
|
}
|
|
3033
|
-
const ED = rD(), d$1 = new Set(["\x1B", ""]), oD = 39, y = "\x07", V$1 = "[", nD = "]", G$1 = "m", _$1 = `${nD}8;;`, z = (e$1) => `${d$1.values().next().value}${V$1}${e$1}${G$1}`, K$1 = (e$1) => `${d$1.values().next().value}${_$1}${e$1}${y}`, aD = (e$1) => e$1.split(" ").map((u$2) => p(u$2)), k$1 = (e$1, u$2, t) => {
|
|
3033
|
+
const ED = rD(), d$1 = new Set(["\x1B", ""]), oD = 39, y$1 = "\x07", V$1 = "[", nD = "]", G$1 = "m", _$1 = `${nD}8;;`, z = (e$1) => `${d$1.values().next().value}${V$1}${e$1}${G$1}`, K$1 = (e$1) => `${d$1.values().next().value}${_$1}${e$1}${y$1}`, aD = (e$1) => e$1.split(" ").map((u$2) => p(u$2)), k$1 = (e$1, u$2, t) => {
|
|
3034
3034
|
const F$1 = [...u$2];
|
|
3035
3035
|
let s = !1, i$1 = !1, D$1 = p(P$1(e$1[e$1.length - 1]));
|
|
3036
3036
|
for (const [C$1, n$1] of F$1.entries()) {
|
|
3037
3037
|
const E = p(n$1);
|
|
3038
3038
|
if (D$1 + E <= t ? e$1[e$1.length - 1] += n$1 : (e$1.push(n$1), D$1 = 0), d$1.has(n$1) && (s = !0, i$1 = F$1.slice(C$1 + 1).join("").startsWith(_$1)), s) {
|
|
3039
|
-
i$1 ? n$1 === y && (s = !1, i$1 = !1) : n$1 === G$1 && (s = !1);
|
|
3039
|
+
i$1 ? n$1 === y$1 && (s = !1, i$1 = !1) : n$1 === G$1 && (s = !1);
|
|
3040
3040
|
continue;
|
|
3041
3041
|
}
|
|
3042
3042
|
D$1 += E, D$1 === t && C$1 < F$1.length - 1 && (e$1.push(""), D$1 = 0);
|
|
@@ -3078,7 +3078,7 @@ const ED = rD(), d$1 = new Set(["\x1B", ""]), oD = 39, y = "\x07", V$1 = "[",
|
|
|
3078
3078
|
`)];
|
|
3079
3079
|
for (const [E, a$1] of n$1.entries()) {
|
|
3080
3080
|
if (F$1 += a$1, d$1.has(a$1)) {
|
|
3081
|
-
const { groups: c$1 } = (/* @__PURE__ */ new RegExp(`(?:\\${V$1}(?<code>\\d+)m|\\${_$1}(?<uri>.*)${y})`)).exec(n$1.slice(E).join("")) || { groups: {} };
|
|
3081
|
+
const { groups: c$1 } = (/* @__PURE__ */ new RegExp(`(?:\\${V$1}(?<code>\\d+)m|\\${_$1}(?<uri>.*)${y$1})`)).exec(n$1.slice(E).join("")) || { groups: {} };
|
|
3082
3082
|
if (c$1.code !== void 0) {
|
|
3083
3083
|
const f = Number.parseFloat(c$1.code);
|
|
3084
3084
|
s = f === oD ? void 0 : f;
|
|
@@ -3479,7 +3479,7 @@ var RD = class extends x$1 {
|
|
|
3479
3479
|
//#endregion
|
|
3480
3480
|
//#region node_modules/@clack/prompts/dist/index.mjs
|
|
3481
3481
|
function ce() {
|
|
3482
|
-
return
|
|
3482
|
+
return y.platform !== "win32" ? y.env.TERM !== "linux" : !!y.env.CI || !!y.env.WT_SESSION || !!y.env.TERMINUS_SUBLIME || y.env.ConEmuTask === "{cmd::Cmder}" || y.env.TERM_PROGRAM === "Terminus-Sublime" || y.env.TERM_PROGRAM === "vscode" || y.env.TERM === "xterm-256color" || y.env.TERM === "alacritty" || y.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
3483
3483
|
}
|
|
3484
3484
|
const V = ce(), u$1 = (t, n$1) => V ? t : n$1, le = u$1("◆", "*"), L = u$1("■", "x"), W = u$1("▲", "x"), C = u$1("◇", "o"), ue = u$1("┌", "T"), o$1 = u$1("│", "|"), d = u$1("└", "—"), k = u$1("●", ">"), P = u$1("○", " "), A = u$1("◻", "[•]"), T = u$1("◼", "[+]"), F = u$1("◻", "[ ]"), $e = u$1("▪", "•"), _ = u$1("─", "-"), me = u$1("╮", "+"), de = u$1("├", "+"), pe = u$1("╯", "+"), q = u$1("●", "•"), D = u$1("◆", "*"), U = u$1("▲", "!"), K = u$1("■", "x"), b = (t) => {
|
|
3485
3485
|
switch (t) {
|
|
@@ -5818,6 +5818,97 @@ function handleTupleResult(result, final, index) {
|
|
|
5818
5818
|
if (result.issues.length) final.issues.push(...prefixIssues(index, result.issues));
|
|
5819
5819
|
final.value[index] = result.value;
|
|
5820
5820
|
}
|
|
5821
|
+
const $ZodRecord = /* @__PURE__ */ $constructor("$ZodRecord", (inst, def) => {
|
|
5822
|
+
$ZodType.init(inst, def);
|
|
5823
|
+
inst._zod.parse = (payload, ctx) => {
|
|
5824
|
+
const input = payload.value;
|
|
5825
|
+
if (!isPlainObject$1(input)) {
|
|
5826
|
+
payload.issues.push({
|
|
5827
|
+
expected: "record",
|
|
5828
|
+
code: "invalid_type",
|
|
5829
|
+
input,
|
|
5830
|
+
inst
|
|
5831
|
+
});
|
|
5832
|
+
return payload;
|
|
5833
|
+
}
|
|
5834
|
+
const proms = [];
|
|
5835
|
+
const values = def.keyType._zod.values;
|
|
5836
|
+
if (values) {
|
|
5837
|
+
payload.value = {};
|
|
5838
|
+
const recordKeys = /* @__PURE__ */ new Set();
|
|
5839
|
+
for (const key of values) if (typeof key === "string" || typeof key === "number" || typeof key === "symbol") {
|
|
5840
|
+
recordKeys.add(typeof key === "number" ? key.toString() : key);
|
|
5841
|
+
const result = def.valueType._zod.run({
|
|
5842
|
+
value: input[key],
|
|
5843
|
+
issues: []
|
|
5844
|
+
}, ctx);
|
|
5845
|
+
if (result instanceof Promise) proms.push(result.then((result$1) => {
|
|
5846
|
+
if (result$1.issues.length) payload.issues.push(...prefixIssues(key, result$1.issues));
|
|
5847
|
+
payload.value[key] = result$1.value;
|
|
5848
|
+
}));
|
|
5849
|
+
else {
|
|
5850
|
+
if (result.issues.length) payload.issues.push(...prefixIssues(key, result.issues));
|
|
5851
|
+
payload.value[key] = result.value;
|
|
5852
|
+
}
|
|
5853
|
+
}
|
|
5854
|
+
let unrecognized;
|
|
5855
|
+
for (const key in input) if (!recordKeys.has(key)) {
|
|
5856
|
+
unrecognized = unrecognized ?? [];
|
|
5857
|
+
unrecognized.push(key);
|
|
5858
|
+
}
|
|
5859
|
+
if (unrecognized && unrecognized.length > 0) payload.issues.push({
|
|
5860
|
+
code: "unrecognized_keys",
|
|
5861
|
+
input,
|
|
5862
|
+
inst,
|
|
5863
|
+
keys: unrecognized
|
|
5864
|
+
});
|
|
5865
|
+
} else {
|
|
5866
|
+
payload.value = {};
|
|
5867
|
+
for (const key of Reflect.ownKeys(input)) {
|
|
5868
|
+
if (key === "__proto__") continue;
|
|
5869
|
+
let keyResult = def.keyType._zod.run({
|
|
5870
|
+
value: key,
|
|
5871
|
+
issues: []
|
|
5872
|
+
}, ctx);
|
|
5873
|
+
if (keyResult instanceof Promise) throw new Error("Async schemas not supported in object keys currently");
|
|
5874
|
+
if (typeof key === "string" && number$1.test(key) && keyResult.issues.length && keyResult.issues.some((iss) => iss.code === "invalid_type" && iss.expected === "number")) {
|
|
5875
|
+
const retryResult = def.keyType._zod.run({
|
|
5876
|
+
value: Number(key),
|
|
5877
|
+
issues: []
|
|
5878
|
+
}, ctx);
|
|
5879
|
+
if (retryResult instanceof Promise) throw new Error("Async schemas not supported in object keys currently");
|
|
5880
|
+
if (retryResult.issues.length === 0) keyResult = retryResult;
|
|
5881
|
+
}
|
|
5882
|
+
if (keyResult.issues.length) {
|
|
5883
|
+
if (def.mode === "loose") payload.value[key] = input[key];
|
|
5884
|
+
else payload.issues.push({
|
|
5885
|
+
code: "invalid_key",
|
|
5886
|
+
origin: "record",
|
|
5887
|
+
issues: keyResult.issues.map((iss) => finalizeIssue(iss, ctx, config())),
|
|
5888
|
+
input: key,
|
|
5889
|
+
path: [key],
|
|
5890
|
+
inst
|
|
5891
|
+
});
|
|
5892
|
+
continue;
|
|
5893
|
+
}
|
|
5894
|
+
const result = def.valueType._zod.run({
|
|
5895
|
+
value: input[key],
|
|
5896
|
+
issues: []
|
|
5897
|
+
}, ctx);
|
|
5898
|
+
if (result instanceof Promise) proms.push(result.then((result$1) => {
|
|
5899
|
+
if (result$1.issues.length) payload.issues.push(...prefixIssues(key, result$1.issues));
|
|
5900
|
+
payload.value[keyResult.value] = result$1.value;
|
|
5901
|
+
}));
|
|
5902
|
+
else {
|
|
5903
|
+
if (result.issues.length) payload.issues.push(...prefixIssues(key, result.issues));
|
|
5904
|
+
payload.value[keyResult.value] = result.value;
|
|
5905
|
+
}
|
|
5906
|
+
}
|
|
5907
|
+
}
|
|
5908
|
+
if (proms.length) return Promise.all(proms).then(() => payload);
|
|
5909
|
+
return payload;
|
|
5910
|
+
};
|
|
5911
|
+
});
|
|
5821
5912
|
const $ZodEnum = /* @__PURE__ */ $constructor("$ZodEnum", (inst, def) => {
|
|
5822
5913
|
$ZodType.init(inst, def);
|
|
5823
5914
|
const values = getEnumValues(def.entries);
|
|
@@ -6653,7 +6744,7 @@ function initializeContext(params) {
|
|
|
6653
6744
|
external: params?.external ?? void 0
|
|
6654
6745
|
};
|
|
6655
6746
|
}
|
|
6656
|
-
function process$
|
|
6747
|
+
function process$2(schema, ctx, _params = {
|
|
6657
6748
|
path: [],
|
|
6658
6749
|
schemaPath: []
|
|
6659
6750
|
}) {
|
|
@@ -6690,7 +6781,7 @@ function process$3(schema, ctx, _params = {
|
|
|
6690
6781
|
const parent = schema._zod.parent;
|
|
6691
6782
|
if (parent) {
|
|
6692
6783
|
if (!result.ref) result.ref = parent;
|
|
6693
|
-
process$
|
|
6784
|
+
process$2(parent, ctx, params);
|
|
6694
6785
|
ctx.seen.get(parent).isParent = true;
|
|
6695
6786
|
}
|
|
6696
6787
|
}
|
|
@@ -6902,7 +6993,7 @@ const createToJSONSchemaMethod = (schema, processors = {}) => (params) => {
|
|
|
6902
6993
|
...params,
|
|
6903
6994
|
processors
|
|
6904
6995
|
});
|
|
6905
|
-
process$
|
|
6996
|
+
process$2(schema, ctx);
|
|
6906
6997
|
extractDefs(ctx, schema);
|
|
6907
6998
|
return finalize(ctx, schema);
|
|
6908
6999
|
};
|
|
@@ -6914,7 +7005,7 @@ const createStandardJSONSchemaMethod = (schema, io, processors = {}) => (params)
|
|
|
6914
7005
|
io,
|
|
6915
7006
|
processors
|
|
6916
7007
|
});
|
|
6917
|
-
process$
|
|
7008
|
+
process$2(schema, ctx);
|
|
6918
7009
|
extractDefs(ctx, schema);
|
|
6919
7010
|
return finalize(ctx, schema);
|
|
6920
7011
|
};
|
|
@@ -7001,7 +7092,7 @@ const arrayProcessor = (schema, ctx, _json, params) => {
|
|
|
7001
7092
|
if (typeof minimum === "number") json.minItems = minimum;
|
|
7002
7093
|
if (typeof maximum === "number") json.maxItems = maximum;
|
|
7003
7094
|
json.type = "array";
|
|
7004
|
-
json.items = process$
|
|
7095
|
+
json.items = process$2(def.element, ctx, {
|
|
7005
7096
|
...params,
|
|
7006
7097
|
path: [...params.path, "items"]
|
|
7007
7098
|
});
|
|
@@ -7012,7 +7103,7 @@ const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
7012
7103
|
json.type = "object";
|
|
7013
7104
|
json.properties = {};
|
|
7014
7105
|
const shape = def.shape;
|
|
7015
|
-
for (const key in shape) json.properties[key] = process$
|
|
7106
|
+
for (const key in shape) json.properties[key] = process$2(shape[key], ctx, {
|
|
7016
7107
|
...params,
|
|
7017
7108
|
path: [
|
|
7018
7109
|
...params.path,
|
|
@@ -7030,7 +7121,7 @@ const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
7030
7121
|
if (def.catchall?._zod.def.type === "never") json.additionalProperties = false;
|
|
7031
7122
|
else if (!def.catchall) {
|
|
7032
7123
|
if (ctx.io === "output") json.additionalProperties = false;
|
|
7033
|
-
} else if (def.catchall) json.additionalProperties = process$
|
|
7124
|
+
} else if (def.catchall) json.additionalProperties = process$2(def.catchall, ctx, {
|
|
7034
7125
|
...params,
|
|
7035
7126
|
path: [...params.path, "additionalProperties"]
|
|
7036
7127
|
});
|
|
@@ -7038,7 +7129,7 @@ const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
7038
7129
|
const unionProcessor = (schema, ctx, json, params) => {
|
|
7039
7130
|
const def = schema._zod.def;
|
|
7040
7131
|
const isExclusive = def.inclusive === false;
|
|
7041
|
-
const options = def.options.map((x$2, i$1) => process$
|
|
7132
|
+
const options = def.options.map((x$2, i$1) => process$2(x$2, ctx, {
|
|
7042
7133
|
...params,
|
|
7043
7134
|
path: [
|
|
7044
7135
|
...params.path,
|
|
@@ -7051,7 +7142,7 @@ const unionProcessor = (schema, ctx, json, params) => {
|
|
|
7051
7142
|
};
|
|
7052
7143
|
const intersectionProcessor = (schema, ctx, json, params) => {
|
|
7053
7144
|
const def = schema._zod.def;
|
|
7054
|
-
const a$1 = process$
|
|
7145
|
+
const a$1 = process$2(def.left, ctx, {
|
|
7055
7146
|
...params,
|
|
7056
7147
|
path: [
|
|
7057
7148
|
...params.path,
|
|
@@ -7059,7 +7150,7 @@ const intersectionProcessor = (schema, ctx, json, params) => {
|
|
|
7059
7150
|
0
|
|
7060
7151
|
]
|
|
7061
7152
|
});
|
|
7062
|
-
const b$2 = process$
|
|
7153
|
+
const b$2 = process$2(def.right, ctx, {
|
|
7063
7154
|
...params,
|
|
7064
7155
|
path: [
|
|
7065
7156
|
...params.path,
|
|
@@ -7076,7 +7167,7 @@ const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
7076
7167
|
json.type = "array";
|
|
7077
7168
|
const prefixPath$1 = ctx.target === "draft-2020-12" ? "prefixItems" : "items";
|
|
7078
7169
|
const restPath = ctx.target === "draft-2020-12" ? "items" : ctx.target === "openapi-3.0" ? "items" : "additionalItems";
|
|
7079
|
-
const prefixItems = def.items.map((x$2, i$1) => process$
|
|
7170
|
+
const prefixItems = def.items.map((x$2, i$1) => process$2(x$2, ctx, {
|
|
7080
7171
|
...params,
|
|
7081
7172
|
path: [
|
|
7082
7173
|
...params.path,
|
|
@@ -7084,7 +7175,7 @@ const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
7084
7175
|
i$1
|
|
7085
7176
|
]
|
|
7086
7177
|
}));
|
|
7087
|
-
const rest = def.rest ? process$
|
|
7178
|
+
const rest = def.rest ? process$2(def.rest, ctx, {
|
|
7088
7179
|
...params,
|
|
7089
7180
|
path: [
|
|
7090
7181
|
...params.path,
|
|
@@ -7108,9 +7199,42 @@ const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
7108
7199
|
if (typeof minimum === "number") json.minItems = minimum;
|
|
7109
7200
|
if (typeof maximum === "number") json.maxItems = maximum;
|
|
7110
7201
|
};
|
|
7202
|
+
const recordProcessor = (schema, ctx, _json, params) => {
|
|
7203
|
+
const json = _json;
|
|
7204
|
+
const def = schema._zod.def;
|
|
7205
|
+
json.type = "object";
|
|
7206
|
+
const keyType = def.keyType;
|
|
7207
|
+
const patterns = keyType._zod.bag?.patterns;
|
|
7208
|
+
if (def.mode === "loose" && patterns && patterns.size > 0) {
|
|
7209
|
+
const valueSchema = process$2(def.valueType, ctx, {
|
|
7210
|
+
...params,
|
|
7211
|
+
path: [
|
|
7212
|
+
...params.path,
|
|
7213
|
+
"patternProperties",
|
|
7214
|
+
"*"
|
|
7215
|
+
]
|
|
7216
|
+
});
|
|
7217
|
+
json.patternProperties = {};
|
|
7218
|
+
for (const pattern of patterns) json.patternProperties[pattern.source] = valueSchema;
|
|
7219
|
+
} else {
|
|
7220
|
+
if (ctx.target === "draft-07" || ctx.target === "draft-2020-12") json.propertyNames = process$2(def.keyType, ctx, {
|
|
7221
|
+
...params,
|
|
7222
|
+
path: [...params.path, "propertyNames"]
|
|
7223
|
+
});
|
|
7224
|
+
json.additionalProperties = process$2(def.valueType, ctx, {
|
|
7225
|
+
...params,
|
|
7226
|
+
path: [...params.path, "additionalProperties"]
|
|
7227
|
+
});
|
|
7228
|
+
}
|
|
7229
|
+
const keyValues = keyType._zod.values;
|
|
7230
|
+
if (keyValues) {
|
|
7231
|
+
const validKeyValues = [...keyValues].filter((v$1) => typeof v$1 === "string" || typeof v$1 === "number");
|
|
7232
|
+
if (validKeyValues.length > 0) json.required = validKeyValues;
|
|
7233
|
+
}
|
|
7234
|
+
};
|
|
7111
7235
|
const nullableProcessor = (schema, ctx, json, params) => {
|
|
7112
7236
|
const def = schema._zod.def;
|
|
7113
|
-
const inner = process$
|
|
7237
|
+
const inner = process$2(def.innerType, ctx, params);
|
|
7114
7238
|
const seen = ctx.seen.get(schema);
|
|
7115
7239
|
if (ctx.target === "openapi-3.0") {
|
|
7116
7240
|
seen.ref = def.innerType;
|
|
@@ -7119,27 +7243,27 @@ const nullableProcessor = (schema, ctx, json, params) => {
|
|
|
7119
7243
|
};
|
|
7120
7244
|
const nonoptionalProcessor = (schema, ctx, _json, params) => {
|
|
7121
7245
|
const def = schema._zod.def;
|
|
7122
|
-
process$
|
|
7246
|
+
process$2(def.innerType, ctx, params);
|
|
7123
7247
|
const seen = ctx.seen.get(schema);
|
|
7124
7248
|
seen.ref = def.innerType;
|
|
7125
7249
|
};
|
|
7126
7250
|
const defaultProcessor = (schema, ctx, json, params) => {
|
|
7127
7251
|
const def = schema._zod.def;
|
|
7128
|
-
process$
|
|
7252
|
+
process$2(def.innerType, ctx, params);
|
|
7129
7253
|
const seen = ctx.seen.get(schema);
|
|
7130
7254
|
seen.ref = def.innerType;
|
|
7131
7255
|
json.default = JSON.parse(JSON.stringify(def.defaultValue));
|
|
7132
7256
|
};
|
|
7133
7257
|
const prefaultProcessor = (schema, ctx, json, params) => {
|
|
7134
7258
|
const def = schema._zod.def;
|
|
7135
|
-
process$
|
|
7259
|
+
process$2(def.innerType, ctx, params);
|
|
7136
7260
|
const seen = ctx.seen.get(schema);
|
|
7137
7261
|
seen.ref = def.innerType;
|
|
7138
7262
|
if (ctx.io === "input") json._prefault = JSON.parse(JSON.stringify(def.defaultValue));
|
|
7139
7263
|
};
|
|
7140
7264
|
const catchProcessor = (schema, ctx, json, params) => {
|
|
7141
7265
|
const def = schema._zod.def;
|
|
7142
|
-
process$
|
|
7266
|
+
process$2(def.innerType, ctx, params);
|
|
7143
7267
|
const seen = ctx.seen.get(schema);
|
|
7144
7268
|
seen.ref = def.innerType;
|
|
7145
7269
|
let catchValue;
|
|
@@ -7153,20 +7277,20 @@ const catchProcessor = (schema, ctx, json, params) => {
|
|
|
7153
7277
|
const pipeProcessor = (schema, ctx, _json, params) => {
|
|
7154
7278
|
const def = schema._zod.def;
|
|
7155
7279
|
const innerType = ctx.io === "input" ? def.in._zod.def.type === "transform" ? def.out : def.in : def.out;
|
|
7156
|
-
process$
|
|
7280
|
+
process$2(innerType, ctx, params);
|
|
7157
7281
|
const seen = ctx.seen.get(schema);
|
|
7158
7282
|
seen.ref = innerType;
|
|
7159
7283
|
};
|
|
7160
7284
|
const readonlyProcessor = (schema, ctx, json, params) => {
|
|
7161
7285
|
const def = schema._zod.def;
|
|
7162
|
-
process$
|
|
7286
|
+
process$2(def.innerType, ctx, params);
|
|
7163
7287
|
const seen = ctx.seen.get(schema);
|
|
7164
7288
|
seen.ref = def.innerType;
|
|
7165
7289
|
json.readOnly = true;
|
|
7166
7290
|
};
|
|
7167
7291
|
const optionalProcessor = (schema, ctx, _json, params) => {
|
|
7168
7292
|
const def = schema._zod.def;
|
|
7169
|
-
process$
|
|
7293
|
+
process$2(def.innerType, ctx, params);
|
|
7170
7294
|
const seen = ctx.seen.get(schema);
|
|
7171
7295
|
seen.ref = def.innerType;
|
|
7172
7296
|
};
|
|
@@ -7637,6 +7761,21 @@ function tuple(items, _paramsOrRest, _params) {
|
|
|
7637
7761
|
...normalizeParams(params)
|
|
7638
7762
|
});
|
|
7639
7763
|
}
|
|
7764
|
+
const ZodRecord = /* @__PURE__ */ $constructor("ZodRecord", (inst, def) => {
|
|
7765
|
+
$ZodRecord.init(inst, def);
|
|
7766
|
+
ZodType.init(inst, def);
|
|
7767
|
+
inst._zod.processJSONSchema = (ctx, json, params) => recordProcessor(inst, ctx, json, params);
|
|
7768
|
+
inst.keyType = def.keyType;
|
|
7769
|
+
inst.valueType = def.valueType;
|
|
7770
|
+
});
|
|
7771
|
+
function record(keyType, valueType, params) {
|
|
7772
|
+
return new ZodRecord({
|
|
7773
|
+
type: "record",
|
|
7774
|
+
keyType,
|
|
7775
|
+
valueType,
|
|
7776
|
+
...normalizeParams(params)
|
|
7777
|
+
});
|
|
7778
|
+
}
|
|
7640
7779
|
const ZodEnum = /* @__PURE__ */ $constructor("ZodEnum", (inst, def) => {
|
|
7641
7780
|
$ZodEnum.init(inst, def);
|
|
7642
7781
|
ZodType.init(inst, def);
|
|
@@ -7899,15 +8038,6 @@ var AuthValidationError = class extends Error {
|
|
|
7899
8038
|
this.name = "AuthValidationError";
|
|
7900
8039
|
}
|
|
7901
8040
|
};
|
|
7902
|
-
/**
|
|
7903
|
-
* Formats an API error response into a human-readable string.
|
|
7904
|
-
* Prefers `message` (human-readable) over `detail`.
|
|
7905
|
-
*/
|
|
7906
|
-
function formatApiError(errorJson) {
|
|
7907
|
-
const error = errorJson;
|
|
7908
|
-
const content = error?.message ?? error?.detail ?? errorJson;
|
|
7909
|
-
return typeof content === "string" ? content : JSON.stringify(content, null, 2);
|
|
7910
|
-
}
|
|
7911
8041
|
|
|
7912
8042
|
//#endregion
|
|
7913
8043
|
//#region src/core/consts.ts
|
|
@@ -16205,7 +16335,7 @@ const createIgnorePredicate = (patterns, cwd, baseDir) => {
|
|
|
16205
16335
|
};
|
|
16206
16336
|
const normalizeOptions$2 = (options = {}) => {
|
|
16207
16337
|
const ignoreOption = options.ignore ? Array.isArray(options.ignore) ? options.ignore : [options.ignore] : [];
|
|
16208
|
-
const cwd = toPath$1(options.cwd) ??
|
|
16338
|
+
const cwd = toPath$1(options.cwd) ?? y.cwd();
|
|
16209
16339
|
const deep = typeof options.deep === "number" ? Math.max(0, options.deep) + 1 : Number.POSITIVE_INFINITY;
|
|
16210
16340
|
return {
|
|
16211
16341
|
cwd,
|
|
@@ -16302,7 +16432,7 @@ const getDirectoryGlob = ({ directoryPath, files, extensions }) => {
|
|
|
16302
16432
|
const extensionGlob = extensions?.length > 0 ? `.${extensions.length > 1 ? `{${extensions.join(",")}}` : extensions[0]}` : "";
|
|
16303
16433
|
return files ? files.map((file) => path.posix.join(directoryPath, `**/${path.extname(file) ? file : `${file}${extensionGlob}`}`)) : [path.posix.join(directoryPath, `**${extensionGlob ? `/*${extensionGlob}` : ""}`)];
|
|
16304
16434
|
};
|
|
16305
|
-
const directoryToGlob = async (directoryPaths, { cwd =
|
|
16435
|
+
const directoryToGlob = async (directoryPaths, { cwd = y.cwd(), files, extensions, fs: fsImplementation } = {}) => {
|
|
16306
16436
|
return (await Promise.all(directoryPaths.map(async (directoryPath) => {
|
|
16307
16437
|
if (shouldExpandGlobstarDirectory(isNegativePattern(directoryPath) ? directoryPath.slice(1) : directoryPath)) return getDirectoryGlob({
|
|
16308
16438
|
directoryPath,
|
|
@@ -16316,7 +16446,7 @@ const directoryToGlob = async (directoryPaths, { cwd = process$1.cwd(), files, e
|
|
|
16316
16446
|
}) : directoryPath;
|
|
16317
16447
|
}))).flat();
|
|
16318
16448
|
};
|
|
16319
|
-
const directoryToGlobSync = (directoryPaths, { cwd =
|
|
16449
|
+
const directoryToGlobSync = (directoryPaths, { cwd = y.cwd(), files, extensions, fs: fsImplementation } = {}) => directoryPaths.flatMap((directoryPath) => {
|
|
16320
16450
|
if (shouldExpandGlobstarDirectory(isNegativePattern(directoryPath) ? directoryPath.slice(1) : directoryPath)) return getDirectoryGlob({
|
|
16321
16451
|
directoryPath,
|
|
16322
16452
|
files,
|
|
@@ -16412,7 +16542,7 @@ const applyIgnoreFilesAndGetFilterSync = (options) => {
|
|
|
16412
16542
|
};
|
|
16413
16543
|
const createFilterFunction = (isIgnored, cwd) => {
|
|
16414
16544
|
const seen = /* @__PURE__ */ new Set();
|
|
16415
|
-
const basePath = cwd ||
|
|
16545
|
+
const basePath = cwd || y.cwd();
|
|
16416
16546
|
const pathCache = /* @__PURE__ */ new Map();
|
|
16417
16547
|
return (fastGlobResult) => {
|
|
16418
16548
|
const pathKey$1 = path.normalize(fastGlobResult.path ?? fastGlobResult);
|
|
@@ -16547,9 +16677,7 @@ const SyncEntitiesResponseSchema = object({
|
|
|
16547
16677
|
//#region src/core/resources/entity/config.ts
|
|
16548
16678
|
async function readEntityFile(entityPath) {
|
|
16549
16679
|
const parsed = await readJsonFile(entityPath);
|
|
16550
|
-
|
|
16551
|
-
if (!result.success) throw new Error(`Invalid entity configuration in ${entityPath}: ${result.error.issues.map((e$1) => e$1.message).join(", ")}`);
|
|
16552
|
-
return result.data;
|
|
16680
|
+
return EntitySchema.parse(parsed);
|
|
16553
16681
|
}
|
|
16554
16682
|
async function readAllEntities(entitiesDir) {
|
|
16555
16683
|
if (!await pathExists(entitiesDir)) return [];
|
|
@@ -16696,39 +16824,13 @@ const functionResource = {
|
|
|
16696
16824
|
|
|
16697
16825
|
//#endregion
|
|
16698
16826
|
//#region src/core/resources/agent/schema.ts
|
|
16699
|
-
const
|
|
16700
|
-
entity_name: string().min(1),
|
|
16701
|
-
allowed_operations: array(_enum([
|
|
16702
|
-
"read",
|
|
16703
|
-
"create",
|
|
16704
|
-
"update",
|
|
16705
|
-
"delete"
|
|
16706
|
-
])).default([])
|
|
16707
|
-
});
|
|
16708
|
-
const BackendFunctionToolConfigSchema = object({
|
|
16709
|
-
function_name: string().min(1),
|
|
16710
|
-
description: string().default("agent backend function")
|
|
16711
|
-
});
|
|
16712
|
-
const ToolConfigSchema = union([EntityToolConfigSchema, BackendFunctionToolConfigSchema]);
|
|
16713
|
-
const AgentConfigSchema = object({
|
|
16714
|
-
name: string().regex(/^[a-z0-9_]+$/, "Agent name must be lowercase alphanumeric with underscores").min(1).max(100),
|
|
16715
|
-
description: string().min(1, "Agent description cannot be empty"),
|
|
16716
|
-
instructions: string().min(1, "Agent instructions cannot be empty"),
|
|
16717
|
-
tool_configs: array(ToolConfigSchema).default([]),
|
|
16718
|
-
whatsapp_greeting: string().nullable().optional()
|
|
16719
|
-
});
|
|
16827
|
+
const AgentConfigSchema = looseObject({ name: string().regex(/^[a-z0-9_]+$/, "Agent name must be lowercase alphanumeric with underscores").min(1).max(100) });
|
|
16720
16828
|
const SyncAgentsResponseSchema = object({
|
|
16721
16829
|
created: array(string()),
|
|
16722
16830
|
updated: array(string()),
|
|
16723
16831
|
deleted: array(string())
|
|
16724
16832
|
});
|
|
16725
|
-
const AgentConfigApiResponseSchema =
|
|
16726
|
-
name: string(),
|
|
16727
|
-
description: string(),
|
|
16728
|
-
instructions: string(),
|
|
16729
|
-
tool_configs: array(ToolConfigSchema).default([]),
|
|
16730
|
-
whatsapp_greeting: string().nullable().optional()
|
|
16731
|
-
});
|
|
16833
|
+
const AgentConfigApiResponseSchema = looseObject({ name: string() });
|
|
16732
16834
|
const ListAgentsResponseSchema = object({
|
|
16733
16835
|
items: array(AgentConfigApiResponseSchema),
|
|
16734
16836
|
total: number()
|
|
@@ -16738,9 +16840,7 @@ const ListAgentsResponseSchema = object({
|
|
|
16738
16840
|
//#region src/core/resources/agent/config.ts
|
|
16739
16841
|
async function readAgentFile(agentPath) {
|
|
16740
16842
|
const parsed = await readJsonFile(agentPath);
|
|
16741
|
-
|
|
16742
|
-
if (!result.success) throw new Error(`Invalid agent configuration in ${agentPath}: ${result.error.issues.map((e$1) => e$1.message).join(", ")}`);
|
|
16743
|
-
return result.data;
|
|
16843
|
+
return AgentConfigSchema.parse(parsed);
|
|
16744
16844
|
}
|
|
16745
16845
|
async function readAllAgents(agentsDir) {
|
|
16746
16846
|
if (!await pathExists(agentsDir)) return [];
|
|
@@ -16756,20 +16856,20 @@ async function readAllAgents(agentsDir) {
|
|
|
16756
16856
|
}
|
|
16757
16857
|
return agents;
|
|
16758
16858
|
}
|
|
16759
|
-
async function writeAgents(agentsDir,
|
|
16859
|
+
async function writeAgents(agentsDir, remoteAgents) {
|
|
16760
16860
|
const existingAgents = await readAllAgents(agentsDir);
|
|
16761
|
-
const newNames = new Set(
|
|
16861
|
+
const newNames = new Set(remoteAgents.map((a$1) => a$1.name));
|
|
16762
16862
|
const toDelete = existingAgents.filter((a$1) => !newNames.has(a$1.name));
|
|
16763
|
-
for (const agent of toDelete)
|
|
16764
|
-
|
|
16765
|
-
|
|
16766
|
-
|
|
16767
|
-
|
|
16768
|
-
|
|
16769
|
-
|
|
16770
|
-
});
|
|
16863
|
+
for (const agent of toDelete) {
|
|
16864
|
+
const files = await globby(`${agent.name}.${CONFIG_FILE_EXTENSION_GLOB}`, {
|
|
16865
|
+
cwd: agentsDir,
|
|
16866
|
+
absolute: true
|
|
16867
|
+
});
|
|
16868
|
+
for (const filePath of files) await deleteFile(filePath);
|
|
16869
|
+
}
|
|
16870
|
+
for (const agent of remoteAgents) await writeJsonFile(join(agentsDir, `${agent.name}.${CONFIG_FILE_EXTENSION}`), agent);
|
|
16771
16871
|
return {
|
|
16772
|
-
written:
|
|
16872
|
+
written: remoteAgents.map((a$1) => a$1.name),
|
|
16773
16873
|
deleted: toDelete.map((a$1) => a$1.name)
|
|
16774
16874
|
};
|
|
16775
16875
|
}
|
|
@@ -16777,16 +16877,8 @@ async function writeAgents(agentsDir, agents) {
|
|
|
16777
16877
|
//#endregion
|
|
16778
16878
|
//#region src/core/resources/agent/api.ts
|
|
16779
16879
|
async function pushAgents(agents) {
|
|
16780
|
-
const
|
|
16781
|
-
|
|
16782
|
-
name: agent.name,
|
|
16783
|
-
description: agent.description,
|
|
16784
|
-
instructions: agent.instructions,
|
|
16785
|
-
tool_configs: agent.tool_configs,
|
|
16786
|
-
whatsapp_greeting: agent.whatsapp_greeting ?? null
|
|
16787
|
-
}));
|
|
16788
|
-
const response = await appClient.put("agent-configs", {
|
|
16789
|
-
json: payload,
|
|
16880
|
+
const response = await getAppClient().put("agent-configs", {
|
|
16881
|
+
json: agents,
|
|
16790
16882
|
throwHttpErrors: false
|
|
16791
16883
|
});
|
|
16792
16884
|
if (!response.ok) {
|
|
@@ -30602,6 +30694,11 @@ async function readAppConfig(projectRoot) {
|
|
|
30602
30694
|
* Authenticated HTTP client for Base44 API.
|
|
30603
30695
|
* Automatically handles token refresh and retry on 401 responses.
|
|
30604
30696
|
*/
|
|
30697
|
+
function formatApiError(errorJson) {
|
|
30698
|
+
const error = errorJson;
|
|
30699
|
+
const content = error?.message ?? error?.detail ?? errorJson;
|
|
30700
|
+
return typeof content === "string" ? content : JSON.stringify(content, null, 2);
|
|
30701
|
+
}
|
|
30605
30702
|
const retriedRequests = /* @__PURE__ */ new WeakSet();
|
|
30606
30703
|
/**
|
|
30607
30704
|
* Handles 401 responses by refreshing the token and retrying the request.
|
|
@@ -30655,6 +30752,19 @@ function getAppClient() {
|
|
|
30655
30752
|
return base44Client.extend({ prefixUrl: new URL(`/api/apps/${id}/`, getBase44ApiUrl()).href });
|
|
30656
30753
|
}
|
|
30657
30754
|
|
|
30755
|
+
//#endregion
|
|
30756
|
+
//#region src/core/clients/schemas.ts
|
|
30757
|
+
const ApiErrorSchema = object({
|
|
30758
|
+
error_type: string().optional(),
|
|
30759
|
+
message: union([string(), record(string(), unknown())]).optional(),
|
|
30760
|
+
detail: union([
|
|
30761
|
+
string(),
|
|
30762
|
+
record(string(), unknown()),
|
|
30763
|
+
array(unknown())
|
|
30764
|
+
]).optional(),
|
|
30765
|
+
traceback: string().optional()
|
|
30766
|
+
});
|
|
30767
|
+
|
|
30658
30768
|
//#endregion
|
|
30659
30769
|
//#region src/core/auth/api.ts
|
|
30660
30770
|
async function generateDeviceCode() {
|
|
@@ -30904,13 +31014,13 @@ var ansi_styles_default = ansiStyles;
|
|
|
30904
31014
|
|
|
30905
31015
|
//#endregion
|
|
30906
31016
|
//#region node_modules/chalk/source/vendor/supports-color/index.js
|
|
30907
|
-
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args :
|
|
31017
|
+
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : y.argv) {
|
|
30908
31018
|
const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
|
|
30909
31019
|
const position = argv.indexOf(prefix + flag);
|
|
30910
31020
|
const terminatorPosition = argv.indexOf("--");
|
|
30911
31021
|
return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
|
|
30912
31022
|
}
|
|
30913
|
-
const { env } =
|
|
31023
|
+
const { env } = y;
|
|
30914
31024
|
let flagForceColor;
|
|
30915
31025
|
if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) flagForceColor = 0;
|
|
30916
31026
|
else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) flagForceColor = 1;
|
|
@@ -30943,7 +31053,7 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
30943
31053
|
if (haveStream && !streamIsTTY && forceColor === void 0) return 0;
|
|
30944
31054
|
const min = forceColor || 0;
|
|
30945
31055
|
if (env.TERM === "dumb") return min;
|
|
30946
|
-
if (
|
|
31056
|
+
if (y.platform === "win32") {
|
|
30947
31057
|
const osRelease = os.release().split(".");
|
|
30948
31058
|
if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) return Number(osRelease[2]) >= 14931 ? 3 : 2;
|
|
30949
31059
|
return 1;
|
|
@@ -31482,57 +31592,61 @@ async function pushEntitiesAction() {
|
|
|
31482
31592
|
if (result.created.length > 0) M.success(`Created: ${result.created.join(", ")}`);
|
|
31483
31593
|
if (result.updated.length > 0) M.success(`Updated: ${result.updated.join(", ")}`);
|
|
31484
31594
|
if (result.deleted.length > 0) M.warn(`Deleted: ${result.deleted.join(", ")}`);
|
|
31485
|
-
return {};
|
|
31595
|
+
return { outroMessage: "Entities pushed to Base44" };
|
|
31486
31596
|
}
|
|
31487
31597
|
const entitiesPushCommand = new Command("entities").description("Manage project entities").addCommand(new Command("push").description("Push local entities to Base44").action(async () => {
|
|
31488
31598
|
await runCommand(pushEntitiesAction, { requireAuth: true });
|
|
31489
31599
|
}));
|
|
31490
31600
|
|
|
31601
|
+
//#endregion
|
|
31602
|
+
//#region src/cli/commands/agents/push.ts
|
|
31603
|
+
async function pushAgentsAction() {
|
|
31604
|
+
const { agents } = await readProjectConfig();
|
|
31605
|
+
M.info(agents.length === 0 ? "No local agents found - this will delete all remote agents" : `Found ${agents.length} agents to push`);
|
|
31606
|
+
const result = await runTask("Pushing agents to Base44", async () => {
|
|
31607
|
+
return await pushAgents(agents);
|
|
31608
|
+
}, {
|
|
31609
|
+
successMessage: "Agents pushed successfully",
|
|
31610
|
+
errorMessage: "Failed to push agents"
|
|
31611
|
+
});
|
|
31612
|
+
if (result.created.length > 0) M.success(`Created: ${result.created.join(", ")}`);
|
|
31613
|
+
if (result.updated.length > 0) M.success(`Updated: ${result.updated.join(", ")}`);
|
|
31614
|
+
if (result.deleted.length > 0) M.warn(`Deleted: ${result.deleted.join(", ")}`);
|
|
31615
|
+
return { outroMessage: "Agents pushed to Base44" };
|
|
31616
|
+
}
|
|
31617
|
+
const agentsPushCommand = new Command("push").description("Push local agents to Base44 (replaces all remote agent configs)").action(async () => {
|
|
31618
|
+
await runCommand(pushAgentsAction, { requireAuth: true });
|
|
31619
|
+
});
|
|
31620
|
+
|
|
31491
31621
|
//#endregion
|
|
31492
31622
|
//#region src/cli/commands/agents/pull.ts
|
|
31493
31623
|
async function pullAgentsAction() {
|
|
31494
31624
|
const { project } = await readProjectConfig();
|
|
31495
31625
|
const agentsDir = join(dirname(project.configPath), project.agentsDir);
|
|
31496
|
-
const
|
|
31626
|
+
const remoteAgents = await runTask("Fetching agents from Base44", async () => {
|
|
31497
31627
|
return await fetchAgents();
|
|
31498
31628
|
}, {
|
|
31499
31629
|
successMessage: "Agents fetched successfully",
|
|
31500
31630
|
errorMessage: "Failed to fetch agents"
|
|
31501
31631
|
});
|
|
31502
|
-
if (
|
|
31632
|
+
if (remoteAgents.items.length === 0) return { outroMessage: "No agents found on Base44" };
|
|
31503
31633
|
const { written, deleted } = await runTask("Writing agent files", async () => {
|
|
31504
|
-
return await writeAgents(agentsDir,
|
|
31634
|
+
return await writeAgents(agentsDir, remoteAgents.items);
|
|
31505
31635
|
}, {
|
|
31506
31636
|
successMessage: "Agent files written successfully",
|
|
31507
31637
|
errorMessage: "Failed to write agent files"
|
|
31508
31638
|
});
|
|
31509
31639
|
if (written.length > 0) M.success(`Written: ${written.join(", ")}`);
|
|
31510
31640
|
if (deleted.length > 0) M.warn(`Deleted: ${deleted.join(", ")}`);
|
|
31511
|
-
return { outroMessage: `Pulled ${
|
|
31641
|
+
return { outroMessage: `Pulled ${remoteAgents.total} agents to ${agentsDir}` };
|
|
31512
31642
|
}
|
|
31513
31643
|
const agentsPullCommand = new Command("pull").description("Pull agents from Base44 to local files (replaces all local agent configs)").action(async () => {
|
|
31514
31644
|
await runCommand(pullAgentsAction, { requireAuth: true });
|
|
31515
31645
|
});
|
|
31516
31646
|
|
|
31517
31647
|
//#endregion
|
|
31518
|
-
//#region src/cli/commands/agents/
|
|
31519
|
-
|
|
31520
|
-
const { agents } = await readProjectConfig();
|
|
31521
|
-
M.info(agents.length === 0 ? "No local agents found - this will delete all remote agents" : `Found ${agents.length} agents to push`);
|
|
31522
|
-
const result = await runTask("Pushing agents to Base44", async () => {
|
|
31523
|
-
return await pushAgents(agents);
|
|
31524
|
-
}, {
|
|
31525
|
-
successMessage: "Agents pushed successfully",
|
|
31526
|
-
errorMessage: "Failed to push agents"
|
|
31527
|
-
});
|
|
31528
|
-
if (result.created.length > 0) M.success(`Created: ${result.created.join(", ")}`);
|
|
31529
|
-
if (result.updated.length > 0) M.success(`Updated: ${result.updated.join(", ")}`);
|
|
31530
|
-
if (result.deleted.length > 0) M.warn(`Deleted: ${result.deleted.join(", ")}`);
|
|
31531
|
-
return {};
|
|
31532
|
-
}
|
|
31533
|
-
const agentsCommand = new Command("agents").description("Manage project agents").addCommand(new Command("push").description("Push local agents to Base44 (replaces all remote agent configs)").action(async () => {
|
|
31534
|
-
await runCommand(pushAgentsAction, { requireAuth: true });
|
|
31535
|
-
})).addCommand(agentsPullCommand);
|
|
31648
|
+
//#region src/cli/commands/agents/index.ts
|
|
31649
|
+
const agentsCommand = new Command("agents").description("Manage project agents").addCommand(agentsPushCommand).addCommand(agentsPullCommand);
|
|
31536
31650
|
|
|
31537
31651
|
//#endregion
|
|
31538
31652
|
//#region src/cli/commands/functions/deploy.ts
|
|
@@ -31552,7 +31666,7 @@ async function deployFunctionsAction() {
|
|
|
31552
31666
|
const errorMessages = result.errors.map((e$1) => `'${e$1.name}' function: ${e$1.message}`).join("\n");
|
|
31553
31667
|
throw new Error(`Function deployment errors:\n${errorMessages}`);
|
|
31554
31668
|
}
|
|
31555
|
-
return {};
|
|
31669
|
+
return { outroMessage: "Functions deployed to Base44" };
|
|
31556
31670
|
}
|
|
31557
31671
|
const functionsDeployCommand = new Command("functions").description("Manage project functions").addCommand(new Command("deploy").description("Deploy local functions to Base44").action(async () => {
|
|
31558
31672
|
await runCommand(deployFunctionsAction, { requireAuth: true });
|
|
@@ -31728,9 +31842,9 @@ const getSubprocessResult = ({ stdout: stdout$1 }) => {
|
|
|
31728
31842
|
//#region node_modules/execa/lib/utils/standard-stream.js
|
|
31729
31843
|
const isStandardStream = (stream) => STANDARD_STREAMS.includes(stream);
|
|
31730
31844
|
const STANDARD_STREAMS = [
|
|
31731
|
-
|
|
31732
|
-
|
|
31733
|
-
|
|
31845
|
+
y.stdin,
|
|
31846
|
+
y.stdout,
|
|
31847
|
+
y.stderr
|
|
31734
31848
|
];
|
|
31735
31849
|
const STANDARD_STREAMS_ALIASES = [
|
|
31736
31850
|
"stdin",
|
|
@@ -31855,9 +31969,9 @@ const NO_ESCAPE_REGEXP = /^[\w./-]+$/;
|
|
|
31855
31969
|
//#endregion
|
|
31856
31970
|
//#region node_modules/is-unicode-supported/index.js
|
|
31857
31971
|
function isUnicodeSupported() {
|
|
31858
|
-
const { env: env$1 } =
|
|
31972
|
+
const { env: env$1 } = y;
|
|
31859
31973
|
const { TERM, TERM_PROGRAM } = env$1;
|
|
31860
|
-
if (
|
|
31974
|
+
if (y.platform !== "win32") return TERM !== "linux";
|
|
31861
31975
|
return Boolean(env$1.WT_SESSION) || Boolean(env$1.TERMINUS_SUBLIME) || env$1.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env$1.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
31862
31976
|
}
|
|
31863
31977
|
|
|
@@ -32784,7 +32898,7 @@ const TEN_MEGABYTES_IN_BYTES = 10 * 1024 * 1024;
|
|
|
32784
32898
|
|
|
32785
32899
|
//#endregion
|
|
32786
32900
|
//#region node_modules/npm-run-path/index.js
|
|
32787
|
-
const npmRunPath = ({ cwd =
|
|
32901
|
+
const npmRunPath = ({ cwd = y.cwd(), path: pathOption = y.env[pathKey()], preferLocal = true, execPath: execPath$1 = y.execPath, addExecPath = true } = {}) => {
|
|
32788
32902
|
const cwdPath = path.resolve(toPath(cwd));
|
|
32789
32903
|
const result = [];
|
|
32790
32904
|
const pathParts = pathOption.split(path.delimiter);
|
|
@@ -32802,7 +32916,7 @@ const applyExecPath = (result, pathParts, execPath$1, cwdPath) => {
|
|
|
32802
32916
|
const pathPart = path.resolve(cwdPath, toPath(execPath$1), "..");
|
|
32803
32917
|
if (!pathParts.includes(pathPart)) result.push(pathPart);
|
|
32804
32918
|
};
|
|
32805
|
-
const npmRunPathEnv = ({ env: env$1 =
|
|
32919
|
+
const npmRunPathEnv = ({ env: env$1 = y.env, ...options } = {}) => {
|
|
32806
32920
|
env$1 = { ...env$1 };
|
|
32807
32921
|
const pathName = pathKey({ env: env$1 });
|
|
32808
32922
|
options.path = env$1[pathName];
|
|
@@ -33937,7 +34051,7 @@ const normalizeCwd = (cwd = getDefaultCwd()) => {
|
|
|
33937
34051
|
};
|
|
33938
34052
|
const getDefaultCwd = () => {
|
|
33939
34053
|
try {
|
|
33940
|
-
return
|
|
34054
|
+
return y.cwd();
|
|
33941
34055
|
} catch (error) {
|
|
33942
34056
|
error.message = `The current directory does not exist.\n${error.message}`;
|
|
33943
34057
|
throw error;
|
|
@@ -33972,7 +34086,7 @@ const normalizeOptions = (filePath, rawArguments, rawOptions) => {
|
|
|
33972
34086
|
options.killSignal = normalizeKillSignal(options.killSignal);
|
|
33973
34087
|
options.forceKillAfterDelay = normalizeForceKillAfterDelay(options.forceKillAfterDelay);
|
|
33974
34088
|
options.lines = options.lines.map((lines, fdNumber) => lines && !BINARY_ENCODINGS.has(options.encoding) && options.buffer[fdNumber]);
|
|
33975
|
-
if (
|
|
34089
|
+
if (y.platform === "win32" && path.basename(file, ".exe") === "cmd") commandArguments.unshift("/q");
|
|
33976
34090
|
return {
|
|
33977
34091
|
file,
|
|
33978
34092
|
commandArguments,
|
|
@@ -33999,7 +34113,7 @@ const addDefaultOptions = ({ extendEnv = true, preferLocal = false, cwd, localDi
|
|
|
33999
34113
|
});
|
|
34000
34114
|
const getEnv = ({ env: envOption, extendEnv, preferLocal, node, localDirectory, nodePath }) => {
|
|
34001
34115
|
const env$1 = extendEnv ? {
|
|
34002
|
-
...
|
|
34116
|
+
...y.env,
|
|
34003
34117
|
...envOption
|
|
34004
34118
|
} : envOption;
|
|
34005
34119
|
if (preferLocal || node) return npmRunPathEnv({
|
|
@@ -34999,12 +35113,12 @@ const guessStreamDirection = {
|
|
|
34999
35113
|
}
|
|
35000
35114
|
};
|
|
35001
35115
|
const getStandardStreamDirection = (value) => {
|
|
35002
|
-
if ([0,
|
|
35116
|
+
if ([0, y.stdin].includes(value)) return "input";
|
|
35003
35117
|
if ([
|
|
35004
35118
|
1,
|
|
35005
35119
|
2,
|
|
35006
|
-
|
|
35007
|
-
|
|
35120
|
+
y.stdout,
|
|
35121
|
+
y.stderr
|
|
35008
35122
|
].includes(value)) return "output";
|
|
35009
35123
|
};
|
|
35010
35124
|
const DEFAULT_DIRECTION = "output";
|
|
@@ -36068,9 +36182,9 @@ const addIpcMethods = (subprocess, { ipc }) => {
|
|
|
36068
36182
|
Object.assign(subprocess, getIpcMethods(subprocess, false, ipc));
|
|
36069
36183
|
};
|
|
36070
36184
|
const getIpcExport = () => {
|
|
36071
|
-
const anyProcess =
|
|
36185
|
+
const anyProcess = y;
|
|
36072
36186
|
const isSubprocess = true;
|
|
36073
|
-
const ipc =
|
|
36187
|
+
const ipc = y.channel !== void 0;
|
|
36074
36188
|
return {
|
|
36075
36189
|
...getIpcMethods(anyProcess, isSubprocess, ipc),
|
|
36076
36190
|
getCancelSignal: getCancelSignal$1.bind(void 0, {
|
|
@@ -36312,7 +36426,7 @@ if (process.platform === "linux") signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SI
|
|
|
36312
36426
|
|
|
36313
36427
|
//#endregion
|
|
36314
36428
|
//#region node_modules/signal-exit/dist/mjs/index.js
|
|
36315
|
-
const processOk = (process$
|
|
36429
|
+
const processOk = (process$4) => !!process$4 && typeof process$4 === "object" && typeof process$4.removeListener === "function" && typeof process$4.emit === "function" && typeof process$4.reallyExit === "function" && typeof process$4.listeners === "function" && typeof process$4.kill === "function" && typeof process$4.pid === "number" && typeof process$4.on === "function";
|
|
36316
36430
|
const kExitEmitter = Symbol.for("signal-exit emitter");
|
|
36317
36431
|
const global$1 = globalThis;
|
|
36318
36432
|
const ObjectDefineProperty = Object.defineProperty.bind(Object);
|
|
@@ -36380,7 +36494,7 @@ var SignalExitFallback = class extends SignalExitBase {
|
|
|
36380
36494
|
};
|
|
36381
36495
|
var SignalExit = class extends SignalExitBase {
|
|
36382
36496
|
/* c8 ignore start */
|
|
36383
|
-
#hupSig = process$
|
|
36497
|
+
#hupSig = process$1.platform === "win32" ? "SIGINT" : "SIGHUP";
|
|
36384
36498
|
/* c8 ignore stop */
|
|
36385
36499
|
#emitter = new Emitter();
|
|
36386
36500
|
#process;
|
|
@@ -36388,15 +36502,15 @@ var SignalExit = class extends SignalExitBase {
|
|
|
36388
36502
|
#originalProcessReallyExit;
|
|
36389
36503
|
#sigListeners = {};
|
|
36390
36504
|
#loaded = false;
|
|
36391
|
-
constructor(process$
|
|
36505
|
+
constructor(process$4) {
|
|
36392
36506
|
super();
|
|
36393
|
-
this.#process = process$
|
|
36507
|
+
this.#process = process$4;
|
|
36394
36508
|
this.#sigListeners = {};
|
|
36395
36509
|
for (const sig of signals) this.#sigListeners[sig] = () => {
|
|
36396
36510
|
const listeners = this.#process.listeners(sig);
|
|
36397
36511
|
let { count: count$1 } = this.#emitter;
|
|
36398
36512
|
/* c8 ignore start */
|
|
36399
|
-
const p$1 = process$
|
|
36513
|
+
const p$1 = process$4;
|
|
36400
36514
|
if (typeof p$1.__signal_exit_emitter__ === "object" && typeof p$1.__signal_exit_emitter__.count === "number") count$1 += p$1.__signal_exit_emitter__.count;
|
|
36401
36515
|
/* c8 ignore stop */
|
|
36402
36516
|
if (listeners.length === count$1) {
|
|
@@ -36404,11 +36518,11 @@ var SignalExit = class extends SignalExitBase {
|
|
|
36404
36518
|
const ret = this.#emitter.emit("exit", null, sig);
|
|
36405
36519
|
/* c8 ignore start */
|
|
36406
36520
|
const s = sig === "SIGHUP" ? this.#hupSig : sig;
|
|
36407
|
-
if (!ret) process$
|
|
36521
|
+
if (!ret) process$4.kill(process$4.pid, s);
|
|
36408
36522
|
}
|
|
36409
36523
|
};
|
|
36410
|
-
this.#originalProcessReallyExit = process$
|
|
36411
|
-
this.#originalProcessEmit = process$
|
|
36524
|
+
this.#originalProcessReallyExit = process$4.reallyExit;
|
|
36525
|
+
this.#originalProcessEmit = process$4.emit;
|
|
36412
36526
|
}
|
|
36413
36527
|
onExit(cb, opts) {
|
|
36414
36528
|
/* c8 ignore start */
|
|
@@ -36475,8 +36589,8 @@ var SignalExit = class extends SignalExitBase {
|
|
|
36475
36589
|
} else return og.call(this.#process, ev, ...args);
|
|
36476
36590
|
}
|
|
36477
36591
|
};
|
|
36478
|
-
const process$
|
|
36479
|
-
const { onExit, load, unload } = signalExitWrap(processOk(process$
|
|
36592
|
+
const process$1 = globalThis.process;
|
|
36593
|
+
const { onExit, load, unload } = signalExitWrap(processOk(process$1) ? new SignalExit(process$1) : new SignalExitFallback());
|
|
36480
36594
|
|
|
36481
36595
|
//#endregion
|
|
36482
36596
|
//#region node_modules/execa/lib/terminate/cleanup.js
|
|
@@ -38430,7 +38544,7 @@ function isInsideContainer() {
|
|
|
38430
38544
|
//#endregion
|
|
38431
38545
|
//#region node_modules/is-wsl/index.js
|
|
38432
38546
|
const isWsl = () => {
|
|
38433
|
-
if (
|
|
38547
|
+
if (y.platform !== "linux") return false;
|
|
38434
38548
|
if (os.release().toLowerCase().includes("microsoft")) {
|
|
38435
38549
|
if (isInsideContainer()) return false;
|
|
38436
38550
|
return true;
|
|
@@ -38441,12 +38555,12 @@ const isWsl = () => {
|
|
|
38441
38555
|
return false;
|
|
38442
38556
|
}
|
|
38443
38557
|
};
|
|
38444
|
-
var is_wsl_default =
|
|
38558
|
+
var is_wsl_default = y.env.__IS_WSL_TEST__ ? isWsl : isWsl();
|
|
38445
38559
|
|
|
38446
38560
|
//#endregion
|
|
38447
38561
|
//#region node_modules/powershell-utils/index.js
|
|
38448
38562
|
const execFile$2 = promisify(childProcess.execFile);
|
|
38449
|
-
const powerShellPath$1 = () => `${
|
|
38563
|
+
const powerShellPath$1 = () => `${y.env.SYSTEMROOT || y.env.windir || String.raw`C:\Windows`}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`;
|
|
38450
38564
|
const executePowerShell = async (command, options = {}) => {
|
|
38451
38565
|
const { powerShellPath: psPath, ...execFileOptions } = options;
|
|
38452
38566
|
const encodedCommand = executePowerShell.encodeCommand(command);
|
|
@@ -38557,7 +38671,7 @@ function defineLazyProperty(object$1, propertyName, valueGetter) {
|
|
|
38557
38671
|
//#region node_modules/default-browser-id/index.js
|
|
38558
38672
|
const execFileAsync$3 = promisify(execFile);
|
|
38559
38673
|
async function defaultBrowserId() {
|
|
38560
|
-
if (
|
|
38674
|
+
if (y.platform !== "darwin") throw new Error("macOS only");
|
|
38561
38675
|
const { stdout: stdout$1 } = await execFileAsync$3("defaults", [
|
|
38562
38676
|
"read",
|
|
38563
38677
|
"com.apple.LaunchServices/com.apple.launchservices.secure",
|
|
@@ -38572,7 +38686,7 @@ async function defaultBrowserId() {
|
|
|
38572
38686
|
//#region node_modules/run-applescript/index.js
|
|
38573
38687
|
const execFileAsync$2 = promisify(execFile);
|
|
38574
38688
|
async function runAppleScript(script, { humanReadableOutput = true, signal } = {}) {
|
|
38575
|
-
if (
|
|
38689
|
+
if (y.platform !== "darwin") throw new Error("macOS only");
|
|
38576
38690
|
const outputArguments = humanReadableOutput ? [] : ["-ss"];
|
|
38577
38691
|
const execOptions = {};
|
|
38578
38692
|
if (signal) execOptions.signal = signal;
|
|
@@ -38681,14 +38795,14 @@ async function defaultBrowser$1(_execFileAsync = execFileAsync$1) {
|
|
|
38681
38795
|
const execFileAsync = promisify(execFile);
|
|
38682
38796
|
const titleize = (string$2) => string$2.toLowerCase().replaceAll(/(?:^|\s|-)\S/g, (x$2) => x$2.toUpperCase());
|
|
38683
38797
|
async function defaultBrowser() {
|
|
38684
|
-
if (
|
|
38798
|
+
if (y.platform === "darwin") {
|
|
38685
38799
|
const id = await defaultBrowserId();
|
|
38686
38800
|
return {
|
|
38687
38801
|
name: await bundleName(id),
|
|
38688
38802
|
id
|
|
38689
38803
|
};
|
|
38690
38804
|
}
|
|
38691
|
-
if (
|
|
38805
|
+
if (y.platform === "linux") {
|
|
38692
38806
|
const { stdout: stdout$1 } = await execFileAsync("xdg-mime", [
|
|
38693
38807
|
"query",
|
|
38694
38808
|
"default",
|
|
@@ -38700,13 +38814,13 @@ async function defaultBrowser() {
|
|
|
38700
38814
|
id
|
|
38701
38815
|
};
|
|
38702
38816
|
}
|
|
38703
|
-
if (
|
|
38817
|
+
if (y.platform === "win32") return defaultBrowser$1();
|
|
38704
38818
|
throw new Error("Only macOS, Linux, and Windows are supported");
|
|
38705
38819
|
}
|
|
38706
38820
|
|
|
38707
38821
|
//#endregion
|
|
38708
38822
|
//#region node_modules/is-in-ssh/index.js
|
|
38709
|
-
const isInSsh = Boolean(
|
|
38823
|
+
const isInSsh = Boolean(y.env.SSH_CONNECTION || y.env.SSH_CLIENT || y.env.SSH_TTY);
|
|
38710
38824
|
var is_in_ssh_default = isInSsh;
|
|
38711
38825
|
|
|
38712
38826
|
//#endregion
|
|
@@ -38714,7 +38828,7 @@ var is_in_ssh_default = isInSsh;
|
|
|
38714
38828
|
const fallbackAttemptSymbol = Symbol("fallbackAttempt");
|
|
38715
38829
|
const __dirname = import.meta.url ? path.dirname(fileURLToPath(import.meta.url)) : "";
|
|
38716
38830
|
const localXdgOpenPath = path.join(__dirname, "xdg-open");
|
|
38717
|
-
const { platform: platform$1, arch } =
|
|
38831
|
+
const { platform: platform$1, arch } = y;
|
|
38718
38832
|
const tryEachApp = async (apps$1, opener) => {
|
|
38719
38833
|
if (apps$1.length === 0) return;
|
|
38720
38834
|
const errors = [];
|
|
@@ -38827,7 +38941,7 @@ const baseOpen = async (options) => {
|
|
|
38827
38941
|
await fs$1.access(localXdgOpenPath, constants$1.X_OK);
|
|
38828
38942
|
exeLocalXdgOpen = true;
|
|
38829
38943
|
} catch {}
|
|
38830
|
-
command =
|
|
38944
|
+
command = y.versions.electron ?? (platform$1 === "android" || isBundled || !exeLocalXdgOpen) ? "xdg-open" : localXdgOpenPath;
|
|
38831
38945
|
}
|
|
38832
38946
|
if (appArguments.length > 0) cliArguments.push(...appArguments);
|
|
38833
38947
|
if (!options.wait) {
|