@base44-preview/cli 0.0.17-pr.111.e15ffa8 → 0.0.17-pr.112.5eda23e
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 +273 -103
- 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 process$1, { 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$4 = __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$4.stdout.write(str),
|
|
948
|
+
writeErr: (str) => process$4.stderr.write(str),
|
|
949
|
+
getOutHelpWidth: () => process$4.stdout.isTTY ? process$4.stdout.columns : void 0,
|
|
950
|
+
getErrHelpWidth: () => process$4.stderr.isTTY ? process$4.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$4.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$4.versions?.electron) parseOptions.from = "electron";
|
|
1644
|
+
const execArgv$1 = process$4.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$4.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$4.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$4.platform !== "win32") if (launchWithNode) {
|
|
1772
1772
|
args.unshift(executableFile);
|
|
1773
|
-
args = incrementNodeInspectorPort(process$
|
|
1774
|
-
proc$1 = childProcess$1.spawn(process$
|
|
1773
|
+
args = incrementNodeInspectorPort(process$4.execArgv).concat(args);
|
|
1774
|
+
proc$1 = childProcess$1.spawn(process$4.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$4.execArgv).concat(args);
|
|
1779
|
+
proc$1 = childProcess$1.spawn(process$4.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$4.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$4.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$4.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$4.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$4.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$4.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$1) {
|
|
2715
|
+
if (!y$1) return `${CSI}${x$2 + 1}G`;
|
|
2716
|
+
return `${CSI}${y$1 + 1};${x$2 + 1}H`;
|
|
2717
2717
|
},
|
|
2718
|
-
move(x$2, y$
|
|
2718
|
+
move(x$2, y$1) {
|
|
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$1 < 0) ret += `${CSI}${-y$1}A`;
|
|
2723
|
+
else if (y$1 > 0) ret += `${CSI}${y$1}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
|
|
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) => {
|
|
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
|
|
3039
|
+
i$1 ? n$1 === y && (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$1 = "\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
|
|
3081
|
+
const { groups: c$1 } = (/* @__PURE__ */ new RegExp(`(?:\\${V$1}(?<code>\\d+)m|\\${_$1}(?<uri>.*)${y})`)).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 process$1.platform !== "win32" ? process$1.env.TERM !== "linux" : !!process$1.env.CI || !!process$1.env.WT_SESSION || !!process$1.env.TERMINUS_SUBLIME || process$1.env.ConEmuTask === "{cmd::Cmder}" || process$1.env.TERM_PROGRAM === "Terminus-Sublime" || process$1.env.TERM_PROGRAM === "vscode" || process$1.env.TERM === "xterm-256color" || process$1.env.TERM === "alacritty" || process$1.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) {
|
|
@@ -6653,7 +6653,7 @@ function initializeContext(params) {
|
|
|
6653
6653
|
external: params?.external ?? void 0
|
|
6654
6654
|
};
|
|
6655
6655
|
}
|
|
6656
|
-
function process$
|
|
6656
|
+
function process$3(schema, ctx, _params = {
|
|
6657
6657
|
path: [],
|
|
6658
6658
|
schemaPath: []
|
|
6659
6659
|
}) {
|
|
@@ -6690,7 +6690,7 @@ function process$2(schema, ctx, _params = {
|
|
|
6690
6690
|
const parent = schema._zod.parent;
|
|
6691
6691
|
if (parent) {
|
|
6692
6692
|
if (!result.ref) result.ref = parent;
|
|
6693
|
-
process$
|
|
6693
|
+
process$3(parent, ctx, params);
|
|
6694
6694
|
ctx.seen.get(parent).isParent = true;
|
|
6695
6695
|
}
|
|
6696
6696
|
}
|
|
@@ -6902,7 +6902,7 @@ const createToJSONSchemaMethod = (schema, processors = {}) => (params) => {
|
|
|
6902
6902
|
...params,
|
|
6903
6903
|
processors
|
|
6904
6904
|
});
|
|
6905
|
-
process$
|
|
6905
|
+
process$3(schema, ctx);
|
|
6906
6906
|
extractDefs(ctx, schema);
|
|
6907
6907
|
return finalize(ctx, schema);
|
|
6908
6908
|
};
|
|
@@ -6914,7 +6914,7 @@ const createStandardJSONSchemaMethod = (schema, io, processors = {}) => (params)
|
|
|
6914
6914
|
io,
|
|
6915
6915
|
processors
|
|
6916
6916
|
});
|
|
6917
|
-
process$
|
|
6917
|
+
process$3(schema, ctx);
|
|
6918
6918
|
extractDefs(ctx, schema);
|
|
6919
6919
|
return finalize(ctx, schema);
|
|
6920
6920
|
};
|
|
@@ -7001,7 +7001,7 @@ const arrayProcessor = (schema, ctx, _json, params) => {
|
|
|
7001
7001
|
if (typeof minimum === "number") json.minItems = minimum;
|
|
7002
7002
|
if (typeof maximum === "number") json.maxItems = maximum;
|
|
7003
7003
|
json.type = "array";
|
|
7004
|
-
json.items = process$
|
|
7004
|
+
json.items = process$3(def.element, ctx, {
|
|
7005
7005
|
...params,
|
|
7006
7006
|
path: [...params.path, "items"]
|
|
7007
7007
|
});
|
|
@@ -7012,7 +7012,7 @@ const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
7012
7012
|
json.type = "object";
|
|
7013
7013
|
json.properties = {};
|
|
7014
7014
|
const shape = def.shape;
|
|
7015
|
-
for (const key in shape) json.properties[key] = process$
|
|
7015
|
+
for (const key in shape) json.properties[key] = process$3(shape[key], ctx, {
|
|
7016
7016
|
...params,
|
|
7017
7017
|
path: [
|
|
7018
7018
|
...params.path,
|
|
@@ -7030,7 +7030,7 @@ const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
7030
7030
|
if (def.catchall?._zod.def.type === "never") json.additionalProperties = false;
|
|
7031
7031
|
else if (!def.catchall) {
|
|
7032
7032
|
if (ctx.io === "output") json.additionalProperties = false;
|
|
7033
|
-
} else if (def.catchall) json.additionalProperties = process$
|
|
7033
|
+
} else if (def.catchall) json.additionalProperties = process$3(def.catchall, ctx, {
|
|
7034
7034
|
...params,
|
|
7035
7035
|
path: [...params.path, "additionalProperties"]
|
|
7036
7036
|
});
|
|
@@ -7038,7 +7038,7 @@ const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
7038
7038
|
const unionProcessor = (schema, ctx, json, params) => {
|
|
7039
7039
|
const def = schema._zod.def;
|
|
7040
7040
|
const isExclusive = def.inclusive === false;
|
|
7041
|
-
const options = def.options.map((x$2, i$1) => process$
|
|
7041
|
+
const options = def.options.map((x$2, i$1) => process$3(x$2, ctx, {
|
|
7042
7042
|
...params,
|
|
7043
7043
|
path: [
|
|
7044
7044
|
...params.path,
|
|
@@ -7051,7 +7051,7 @@ const unionProcessor = (schema, ctx, json, params) => {
|
|
|
7051
7051
|
};
|
|
7052
7052
|
const intersectionProcessor = (schema, ctx, json, params) => {
|
|
7053
7053
|
const def = schema._zod.def;
|
|
7054
|
-
const a$1 = process$
|
|
7054
|
+
const a$1 = process$3(def.left, ctx, {
|
|
7055
7055
|
...params,
|
|
7056
7056
|
path: [
|
|
7057
7057
|
...params.path,
|
|
@@ -7059,7 +7059,7 @@ const intersectionProcessor = (schema, ctx, json, params) => {
|
|
|
7059
7059
|
0
|
|
7060
7060
|
]
|
|
7061
7061
|
});
|
|
7062
|
-
const b$2 = process$
|
|
7062
|
+
const b$2 = process$3(def.right, ctx, {
|
|
7063
7063
|
...params,
|
|
7064
7064
|
path: [
|
|
7065
7065
|
...params.path,
|
|
@@ -7076,7 +7076,7 @@ const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
7076
7076
|
json.type = "array";
|
|
7077
7077
|
const prefixPath$1 = ctx.target === "draft-2020-12" ? "prefixItems" : "items";
|
|
7078
7078
|
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$
|
|
7079
|
+
const prefixItems = def.items.map((x$2, i$1) => process$3(x$2, ctx, {
|
|
7080
7080
|
...params,
|
|
7081
7081
|
path: [
|
|
7082
7082
|
...params.path,
|
|
@@ -7084,7 +7084,7 @@ const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
7084
7084
|
i$1
|
|
7085
7085
|
]
|
|
7086
7086
|
}));
|
|
7087
|
-
const rest = def.rest ? process$
|
|
7087
|
+
const rest = def.rest ? process$3(def.rest, ctx, {
|
|
7088
7088
|
...params,
|
|
7089
7089
|
path: [
|
|
7090
7090
|
...params.path,
|
|
@@ -7110,7 +7110,7 @@ const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
7110
7110
|
};
|
|
7111
7111
|
const nullableProcessor = (schema, ctx, json, params) => {
|
|
7112
7112
|
const def = schema._zod.def;
|
|
7113
|
-
const inner = process$
|
|
7113
|
+
const inner = process$3(def.innerType, ctx, params);
|
|
7114
7114
|
const seen = ctx.seen.get(schema);
|
|
7115
7115
|
if (ctx.target === "openapi-3.0") {
|
|
7116
7116
|
seen.ref = def.innerType;
|
|
@@ -7119,27 +7119,27 @@ const nullableProcessor = (schema, ctx, json, params) => {
|
|
|
7119
7119
|
};
|
|
7120
7120
|
const nonoptionalProcessor = (schema, ctx, _json, params) => {
|
|
7121
7121
|
const def = schema._zod.def;
|
|
7122
|
-
process$
|
|
7122
|
+
process$3(def.innerType, ctx, params);
|
|
7123
7123
|
const seen = ctx.seen.get(schema);
|
|
7124
7124
|
seen.ref = def.innerType;
|
|
7125
7125
|
};
|
|
7126
7126
|
const defaultProcessor = (schema, ctx, json, params) => {
|
|
7127
7127
|
const def = schema._zod.def;
|
|
7128
|
-
process$
|
|
7128
|
+
process$3(def.innerType, ctx, params);
|
|
7129
7129
|
const seen = ctx.seen.get(schema);
|
|
7130
7130
|
seen.ref = def.innerType;
|
|
7131
7131
|
json.default = JSON.parse(JSON.stringify(def.defaultValue));
|
|
7132
7132
|
};
|
|
7133
7133
|
const prefaultProcessor = (schema, ctx, json, params) => {
|
|
7134
7134
|
const def = schema._zod.def;
|
|
7135
|
-
process$
|
|
7135
|
+
process$3(def.innerType, ctx, params);
|
|
7136
7136
|
const seen = ctx.seen.get(schema);
|
|
7137
7137
|
seen.ref = def.innerType;
|
|
7138
7138
|
if (ctx.io === "input") json._prefault = JSON.parse(JSON.stringify(def.defaultValue));
|
|
7139
7139
|
};
|
|
7140
7140
|
const catchProcessor = (schema, ctx, json, params) => {
|
|
7141
7141
|
const def = schema._zod.def;
|
|
7142
|
-
process$
|
|
7142
|
+
process$3(def.innerType, ctx, params);
|
|
7143
7143
|
const seen = ctx.seen.get(schema);
|
|
7144
7144
|
seen.ref = def.innerType;
|
|
7145
7145
|
let catchValue;
|
|
@@ -7153,20 +7153,20 @@ const catchProcessor = (schema, ctx, json, params) => {
|
|
|
7153
7153
|
const pipeProcessor = (schema, ctx, _json, params) => {
|
|
7154
7154
|
const def = schema._zod.def;
|
|
7155
7155
|
const innerType = ctx.io === "input" ? def.in._zod.def.type === "transform" ? def.out : def.in : def.out;
|
|
7156
|
-
process$
|
|
7156
|
+
process$3(innerType, ctx, params);
|
|
7157
7157
|
const seen = ctx.seen.get(schema);
|
|
7158
7158
|
seen.ref = innerType;
|
|
7159
7159
|
};
|
|
7160
7160
|
const readonlyProcessor = (schema, ctx, json, params) => {
|
|
7161
7161
|
const def = schema._zod.def;
|
|
7162
|
-
process$
|
|
7162
|
+
process$3(def.innerType, ctx, params);
|
|
7163
7163
|
const seen = ctx.seen.get(schema);
|
|
7164
7164
|
seen.ref = def.innerType;
|
|
7165
7165
|
json.readOnly = true;
|
|
7166
7166
|
};
|
|
7167
7167
|
const optionalProcessor = (schema, ctx, _json, params) => {
|
|
7168
7168
|
const def = schema._zod.def;
|
|
7169
|
-
process$
|
|
7169
|
+
process$3(def.innerType, ctx, params);
|
|
7170
7170
|
const seen = ctx.seen.get(schema);
|
|
7171
7171
|
seen.ref = def.innerType;
|
|
7172
7172
|
};
|
|
@@ -7903,6 +7903,7 @@ var AuthValidationError = class extends Error {
|
|
|
7903
7903
|
//#endregion
|
|
7904
7904
|
//#region src/core/consts.ts
|
|
7905
7905
|
const PROJECT_SUBDIR = "base44";
|
|
7906
|
+
const CONFIG_FILE_EXTENSION = "json";
|
|
7906
7907
|
const CONFIG_FILE_EXTENSION_GLOB = "{json,jsonc}";
|
|
7907
7908
|
const FUNCTION_CONFIG_FILE = `function.${CONFIG_FILE_EXTENSION_GLOB}`;
|
|
7908
7909
|
const APP_CONFIG_PATTERN = `${PROJECT_SUBDIR}/.app.${CONFIG_FILE_EXTENSION_GLOB}`;
|
|
@@ -16192,7 +16193,7 @@ const createIgnorePredicate = (patterns, cwd, baseDir) => {
|
|
|
16192
16193
|
};
|
|
16193
16194
|
const normalizeOptions$2 = (options = {}) => {
|
|
16194
16195
|
const ignoreOption = options.ignore ? Array.isArray(options.ignore) ? options.ignore : [options.ignore] : [];
|
|
16195
|
-
const cwd = toPath$1(options.cwd) ??
|
|
16196
|
+
const cwd = toPath$1(options.cwd) ?? process$1.cwd();
|
|
16196
16197
|
const deep = typeof options.deep === "number" ? Math.max(0, options.deep) + 1 : Number.POSITIVE_INFINITY;
|
|
16197
16198
|
return {
|
|
16198
16199
|
cwd,
|
|
@@ -16289,7 +16290,7 @@ const getDirectoryGlob = ({ directoryPath, files, extensions }) => {
|
|
|
16289
16290
|
const extensionGlob = extensions?.length > 0 ? `.${extensions.length > 1 ? `{${extensions.join(",")}}` : extensions[0]}` : "";
|
|
16290
16291
|
return files ? files.map((file) => path.posix.join(directoryPath, `**/${path.extname(file) ? file : `${file}${extensionGlob}`}`)) : [path.posix.join(directoryPath, `**${extensionGlob ? `/*${extensionGlob}` : ""}`)];
|
|
16291
16292
|
};
|
|
16292
|
-
const directoryToGlob = async (directoryPaths, { cwd =
|
|
16293
|
+
const directoryToGlob = async (directoryPaths, { cwd = process$1.cwd(), files, extensions, fs: fsImplementation } = {}) => {
|
|
16293
16294
|
return (await Promise.all(directoryPaths.map(async (directoryPath) => {
|
|
16294
16295
|
if (shouldExpandGlobstarDirectory(isNegativePattern(directoryPath) ? directoryPath.slice(1) : directoryPath)) return getDirectoryGlob({
|
|
16295
16296
|
directoryPath,
|
|
@@ -16303,7 +16304,7 @@ const directoryToGlob = async (directoryPaths, { cwd = y.cwd(), files, extension
|
|
|
16303
16304
|
}) : directoryPath;
|
|
16304
16305
|
}))).flat();
|
|
16305
16306
|
};
|
|
16306
|
-
const directoryToGlobSync = (directoryPaths, { cwd =
|
|
16307
|
+
const directoryToGlobSync = (directoryPaths, { cwd = process$1.cwd(), files, extensions, fs: fsImplementation } = {}) => directoryPaths.flatMap((directoryPath) => {
|
|
16307
16308
|
if (shouldExpandGlobstarDirectory(isNegativePattern(directoryPath) ? directoryPath.slice(1) : directoryPath)) return getDirectoryGlob({
|
|
16308
16309
|
directoryPath,
|
|
16309
16310
|
files,
|
|
@@ -16399,7 +16400,7 @@ const applyIgnoreFilesAndGetFilterSync = (options) => {
|
|
|
16399
16400
|
};
|
|
16400
16401
|
const createFilterFunction = (isIgnored, cwd) => {
|
|
16401
16402
|
const seen = /* @__PURE__ */ new Set();
|
|
16402
|
-
const basePath = cwd ||
|
|
16403
|
+
const basePath = cwd || process$1.cwd();
|
|
16403
16404
|
const pathCache = /* @__PURE__ */ new Map();
|
|
16404
16405
|
return (fastGlobResult) => {
|
|
16405
16406
|
const pathKey$1 = path.normalize(fastGlobResult.path ?? fastGlobResult);
|
|
@@ -16681,6 +16682,125 @@ const functionResource = {
|
|
|
16681
16682
|
push: pushFunctions
|
|
16682
16683
|
};
|
|
16683
16684
|
|
|
16685
|
+
//#endregion
|
|
16686
|
+
//#region src/core/resources/agent/schema.ts
|
|
16687
|
+
const EntityToolConfigSchema = object({
|
|
16688
|
+
entity_name: string().min(1),
|
|
16689
|
+
allowed_operations: array(_enum([
|
|
16690
|
+
"read",
|
|
16691
|
+
"create",
|
|
16692
|
+
"update",
|
|
16693
|
+
"delete"
|
|
16694
|
+
])).default([])
|
|
16695
|
+
});
|
|
16696
|
+
const BackendFunctionToolConfigSchema = object({
|
|
16697
|
+
function_name: string().min(1),
|
|
16698
|
+
description: string().default("agent backend function")
|
|
16699
|
+
});
|
|
16700
|
+
const ToolConfigSchema = union([EntityToolConfigSchema, BackendFunctionToolConfigSchema]);
|
|
16701
|
+
const AgentConfigSchema = object({
|
|
16702
|
+
name: string().regex(/^[a-z0-9_]+$/, "Agent name must be lowercase alphanumeric with underscores").min(1).max(100),
|
|
16703
|
+
description: string().min(1, "Agent description cannot be empty"),
|
|
16704
|
+
instructions: string().min(1, "Agent instructions cannot be empty"),
|
|
16705
|
+
tool_configs: array(ToolConfigSchema).default([]),
|
|
16706
|
+
whatsapp_greeting: string().nullable().optional()
|
|
16707
|
+
});
|
|
16708
|
+
const SyncAgentsResponseSchema = object({
|
|
16709
|
+
created: array(string()),
|
|
16710
|
+
updated: array(string()),
|
|
16711
|
+
deleted: array(string())
|
|
16712
|
+
});
|
|
16713
|
+
const AgentConfigApiResponseSchema = object({
|
|
16714
|
+
name: string(),
|
|
16715
|
+
description: string(),
|
|
16716
|
+
instructions: string(),
|
|
16717
|
+
tool_configs: array(ToolConfigSchema).default([]),
|
|
16718
|
+
whatsapp_greeting: string().nullable().optional()
|
|
16719
|
+
});
|
|
16720
|
+
const ListAgentsResponseSchema = object({
|
|
16721
|
+
items: array(AgentConfigApiResponseSchema),
|
|
16722
|
+
total: number()
|
|
16723
|
+
});
|
|
16724
|
+
|
|
16725
|
+
//#endregion
|
|
16726
|
+
//#region src/core/resources/agent/config.ts
|
|
16727
|
+
async function readAgentFile(agentPath) {
|
|
16728
|
+
const parsed = await readJsonFile(agentPath);
|
|
16729
|
+
const result = AgentConfigSchema.safeParse(parsed);
|
|
16730
|
+
if (!result.success) throw new Error(`Invalid agent configuration in ${agentPath}: ${result.error.issues.map((e$1) => e$1.message).join(", ")}`);
|
|
16731
|
+
return result.data;
|
|
16732
|
+
}
|
|
16733
|
+
async function readAllAgents(agentsDir) {
|
|
16734
|
+
if (!await pathExists(agentsDir)) return [];
|
|
16735
|
+
const files = await globby(`*.${CONFIG_FILE_EXTENSION_GLOB}`, {
|
|
16736
|
+
cwd: agentsDir,
|
|
16737
|
+
absolute: true
|
|
16738
|
+
});
|
|
16739
|
+
const agents = await Promise.all(files.map((filePath) => readAgentFile(filePath)));
|
|
16740
|
+
const names = /* @__PURE__ */ new Set();
|
|
16741
|
+
for (const agent of agents) {
|
|
16742
|
+
if (names.has(agent.name)) throw new Error(`Duplicate agent name "${agent.name}"`);
|
|
16743
|
+
names.add(agent.name);
|
|
16744
|
+
}
|
|
16745
|
+
return agents;
|
|
16746
|
+
}
|
|
16747
|
+
async function writeAgents(agentsDir, agents) {
|
|
16748
|
+
const existingAgents = await readAllAgents(agentsDir);
|
|
16749
|
+
const newNames = new Set(agents.map((a$1) => a$1.name));
|
|
16750
|
+
const toDelete = existingAgents.filter((a$1) => !newNames.has(a$1.name));
|
|
16751
|
+
for (const agent of toDelete) await deleteFile(join(agentsDir, `${agent.name}.${CONFIG_FILE_EXTENSION}`));
|
|
16752
|
+
for (const agent of agents) await writeJsonFile(join(agentsDir, `${agent.name}.${CONFIG_FILE_EXTENSION}`), {
|
|
16753
|
+
name: agent.name,
|
|
16754
|
+
description: agent.description,
|
|
16755
|
+
instructions: agent.instructions,
|
|
16756
|
+
tool_configs: agent.tool_configs,
|
|
16757
|
+
whatsapp_greeting: agent.whatsapp_greeting ?? null
|
|
16758
|
+
});
|
|
16759
|
+
return {
|
|
16760
|
+
written: agents.map((a$1) => a$1.name),
|
|
16761
|
+
deleted: toDelete.map((a$1) => a$1.name)
|
|
16762
|
+
};
|
|
16763
|
+
}
|
|
16764
|
+
|
|
16765
|
+
//#endregion
|
|
16766
|
+
//#region src/core/resources/agent/api.ts
|
|
16767
|
+
async function pushAgents(agents) {
|
|
16768
|
+
const appClient = getAppClient();
|
|
16769
|
+
const payload = { configs: agents.map((agent) => ({
|
|
16770
|
+
name: agent.name,
|
|
16771
|
+
description: agent.description,
|
|
16772
|
+
instructions: agent.instructions,
|
|
16773
|
+
tool_configs: agent.tool_configs,
|
|
16774
|
+
whatsapp_greeting: agent.whatsapp_greeting ?? null
|
|
16775
|
+
})) };
|
|
16776
|
+
const response = await appClient.put("agent-configs", {
|
|
16777
|
+
json: payload,
|
|
16778
|
+
throwHttpErrors: false
|
|
16779
|
+
});
|
|
16780
|
+
if (!response.ok) {
|
|
16781
|
+
const errorJson = await response.json();
|
|
16782
|
+
const errorMessage = errorJson.detail || errorJson.message || "Unknown error";
|
|
16783
|
+
throw new Error(`Error occurred while syncing agents: ${errorMessage}`);
|
|
16784
|
+
}
|
|
16785
|
+
return SyncAgentsResponseSchema.parse(await response.json());
|
|
16786
|
+
}
|
|
16787
|
+
async function fetchAgents() {
|
|
16788
|
+
const response = await getAppClient().get("agent-configs", { throwHttpErrors: false });
|
|
16789
|
+
if (!response.ok) {
|
|
16790
|
+
const errorJson = await response.json();
|
|
16791
|
+
const errorMessage = errorJson.detail || errorJson.message || "Unknown error";
|
|
16792
|
+
throw new Error(`Error occurred while fetching agents: ${errorMessage}`);
|
|
16793
|
+
}
|
|
16794
|
+
return ListAgentsResponseSchema.parse(await response.json());
|
|
16795
|
+
}
|
|
16796
|
+
|
|
16797
|
+
//#endregion
|
|
16798
|
+
//#region src/core/resources/agent/resource.ts
|
|
16799
|
+
const agentResource = {
|
|
16800
|
+
readAll: readAllAgents,
|
|
16801
|
+
push: pushAgents
|
|
16802
|
+
};
|
|
16803
|
+
|
|
16684
16804
|
//#endregion
|
|
16685
16805
|
//#region src/core/project/schema.ts
|
|
16686
16806
|
const TemplateSchema = object({
|
|
@@ -16701,7 +16821,8 @@ const ProjectConfigSchema = object({
|
|
|
16701
16821
|
description: string().optional(),
|
|
16702
16822
|
site: SiteConfigSchema.optional(),
|
|
16703
16823
|
entitiesDir: string().optional().default("entities"),
|
|
16704
|
-
functionsDir: string().optional().default("functions")
|
|
16824
|
+
functionsDir: string().optional().default("functions"),
|
|
16825
|
+
agentsDir: string().optional().default("agents")
|
|
16705
16826
|
});
|
|
16706
16827
|
const AppConfigSchema = object({ id: string().min(1, "id cannot be empty") });
|
|
16707
16828
|
const CreateProjectResponseSchema = looseObject({ id: string() });
|
|
@@ -16773,7 +16894,11 @@ async function readProjectConfig(projectRoot) {
|
|
|
16773
16894
|
if (!result.success) throw new Error(`Invalid project configuration: ${result.error.message}`);
|
|
16774
16895
|
const project = result.data;
|
|
16775
16896
|
const configDir = dirname(configPath);
|
|
16776
|
-
const [entities, functions] = await Promise.all([
|
|
16897
|
+
const [entities, functions, agents] = await Promise.all([
|
|
16898
|
+
entityResource.readAll(join(configDir, project.entitiesDir)),
|
|
16899
|
+
functionResource.readAll(join(configDir, project.functionsDir)),
|
|
16900
|
+
agentResource.readAll(join(configDir, project.agentsDir))
|
|
16901
|
+
]);
|
|
16777
16902
|
return {
|
|
16778
16903
|
project: {
|
|
16779
16904
|
...project,
|
|
@@ -16781,7 +16906,8 @@ async function readProjectConfig(projectRoot) {
|
|
|
16781
16906
|
configPath
|
|
16782
16907
|
},
|
|
16783
16908
|
entities,
|
|
16784
|
-
functions
|
|
16909
|
+
functions,
|
|
16910
|
+
agents
|
|
16785
16911
|
};
|
|
16786
16912
|
}
|
|
16787
16913
|
|
|
@@ -30768,13 +30894,13 @@ var ansi_styles_default = ansiStyles;
|
|
|
30768
30894
|
|
|
30769
30895
|
//#endregion
|
|
30770
30896
|
//#region node_modules/chalk/source/vendor/supports-color/index.js
|
|
30771
|
-
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args :
|
|
30897
|
+
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process$1.argv) {
|
|
30772
30898
|
const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
|
|
30773
30899
|
const position = argv.indexOf(prefix + flag);
|
|
30774
30900
|
const terminatorPosition = argv.indexOf("--");
|
|
30775
30901
|
return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
|
|
30776
30902
|
}
|
|
30777
|
-
const { env } =
|
|
30903
|
+
const { env } = process$1;
|
|
30778
30904
|
let flagForceColor;
|
|
30779
30905
|
if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) flagForceColor = 0;
|
|
30780
30906
|
else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) flagForceColor = 1;
|
|
@@ -30807,7 +30933,7 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
30807
30933
|
if (haveStream && !streamIsTTY && forceColor === void 0) return 0;
|
|
30808
30934
|
const min = forceColor || 0;
|
|
30809
30935
|
if (env.TERM === "dumb") return min;
|
|
30810
|
-
if (
|
|
30936
|
+
if (process$1.platform === "win32") {
|
|
30811
30937
|
const osRelease = os.release().split(".");
|
|
30812
30938
|
if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) return Number(osRelease[2]) >= 14931 ? 3 : 2;
|
|
30813
30939
|
return 1;
|
|
@@ -31352,6 +31478,53 @@ const entitiesPushCommand = new Command("entities").description("Manage project
|
|
|
31352
31478
|
await runCommand(pushEntitiesAction, { requireAuth: true });
|
|
31353
31479
|
}));
|
|
31354
31480
|
|
|
31481
|
+
//#endregion
|
|
31482
|
+
//#region src/cli/commands/agents/pull.ts
|
|
31483
|
+
async function pullAgentsAction() {
|
|
31484
|
+
const { project } = await readProjectConfig();
|
|
31485
|
+
const agentsDir = join(dirname(project.configPath), project.agentsDir);
|
|
31486
|
+
const response = await runTask("Fetching agents from Base44", async () => {
|
|
31487
|
+
return await fetchAgents();
|
|
31488
|
+
}, {
|
|
31489
|
+
successMessage: "Agents fetched successfully",
|
|
31490
|
+
errorMessage: "Failed to fetch agents"
|
|
31491
|
+
});
|
|
31492
|
+
if (response.items.length === 0) return { outroMessage: "No agents found on Base44" };
|
|
31493
|
+
const { written, deleted } = await runTask("Writing agent files", async () => {
|
|
31494
|
+
return await writeAgents(agentsDir, response.items);
|
|
31495
|
+
}, {
|
|
31496
|
+
successMessage: "Agent files written successfully",
|
|
31497
|
+
errorMessage: "Failed to write agent files"
|
|
31498
|
+
});
|
|
31499
|
+
if (written.length > 0) M.success(`Written: ${written.join(", ")}`);
|
|
31500
|
+
if (deleted.length > 0) M.warn(`Deleted: ${deleted.join(", ")}`);
|
|
31501
|
+
return { outroMessage: `Pulled ${response.total} agents to ${agentsDir}` };
|
|
31502
|
+
}
|
|
31503
|
+
const agentsPullCommand = new Command("pull").description("Pull agents from Base44 to local files (replaces all local agent configs)").action(async () => {
|
|
31504
|
+
await runCommand(pullAgentsAction, { requireAuth: true });
|
|
31505
|
+
});
|
|
31506
|
+
|
|
31507
|
+
//#endregion
|
|
31508
|
+
//#region src/cli/commands/agents/push.ts
|
|
31509
|
+
async function pushAgentsAction() {
|
|
31510
|
+
const { agents } = await readProjectConfig();
|
|
31511
|
+
if (agents.length === 0) return { outroMessage: "No agents found in project" };
|
|
31512
|
+
M.info(`Found ${agents.length} agents to push`);
|
|
31513
|
+
const result = await runTask("Pushing agents to Base44", async () => {
|
|
31514
|
+
return await pushAgents(agents);
|
|
31515
|
+
}, {
|
|
31516
|
+
successMessage: "Agents pushed successfully",
|
|
31517
|
+
errorMessage: "Failed to push agents"
|
|
31518
|
+
});
|
|
31519
|
+
if (result.created.length > 0) M.success(`Created: ${result.created.join(", ")}`);
|
|
31520
|
+
if (result.updated.length > 0) M.success(`Updated: ${result.updated.join(", ")}`);
|
|
31521
|
+
if (result.deleted.length > 0) M.warn(`Deleted: ${result.deleted.join(", ")}`);
|
|
31522
|
+
return {};
|
|
31523
|
+
}
|
|
31524
|
+
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 () => {
|
|
31525
|
+
await runCommand(pushAgentsAction, { requireAuth: true });
|
|
31526
|
+
})).addCommand(agentsPullCommand);
|
|
31527
|
+
|
|
31355
31528
|
//#endregion
|
|
31356
31529
|
//#region src/cli/commands/functions/deploy.ts
|
|
31357
31530
|
async function deployFunctionsAction() {
|
|
@@ -31546,9 +31719,9 @@ const getSubprocessResult = ({ stdout: stdout$1 }) => {
|
|
|
31546
31719
|
//#region node_modules/execa/lib/utils/standard-stream.js
|
|
31547
31720
|
const isStandardStream = (stream) => STANDARD_STREAMS.includes(stream);
|
|
31548
31721
|
const STANDARD_STREAMS = [
|
|
31549
|
-
|
|
31550
|
-
|
|
31551
|
-
|
|
31722
|
+
process$1.stdin,
|
|
31723
|
+
process$1.stdout,
|
|
31724
|
+
process$1.stderr
|
|
31552
31725
|
];
|
|
31553
31726
|
const STANDARD_STREAMS_ALIASES = [
|
|
31554
31727
|
"stdin",
|
|
@@ -31673,9 +31846,9 @@ const NO_ESCAPE_REGEXP = /^[\w./-]+$/;
|
|
|
31673
31846
|
//#endregion
|
|
31674
31847
|
//#region node_modules/is-unicode-supported/index.js
|
|
31675
31848
|
function isUnicodeSupported() {
|
|
31676
|
-
const { env: env$1 } =
|
|
31849
|
+
const { env: env$1 } = process$1;
|
|
31677
31850
|
const { TERM, TERM_PROGRAM } = env$1;
|
|
31678
|
-
if (
|
|
31851
|
+
if (process$1.platform !== "win32") return TERM !== "linux";
|
|
31679
31852
|
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";
|
|
31680
31853
|
}
|
|
31681
31854
|
|
|
@@ -32602,7 +32775,7 @@ const TEN_MEGABYTES_IN_BYTES = 10 * 1024 * 1024;
|
|
|
32602
32775
|
|
|
32603
32776
|
//#endregion
|
|
32604
32777
|
//#region node_modules/npm-run-path/index.js
|
|
32605
|
-
const npmRunPath = ({ cwd =
|
|
32778
|
+
const npmRunPath = ({ cwd = process$1.cwd(), path: pathOption = process$1.env[pathKey()], preferLocal = true, execPath: execPath$1 = process$1.execPath, addExecPath = true } = {}) => {
|
|
32606
32779
|
const cwdPath = path.resolve(toPath(cwd));
|
|
32607
32780
|
const result = [];
|
|
32608
32781
|
const pathParts = pathOption.split(path.delimiter);
|
|
@@ -32620,7 +32793,7 @@ const applyExecPath = (result, pathParts, execPath$1, cwdPath) => {
|
|
|
32620
32793
|
const pathPart = path.resolve(cwdPath, toPath(execPath$1), "..");
|
|
32621
32794
|
if (!pathParts.includes(pathPart)) result.push(pathPart);
|
|
32622
32795
|
};
|
|
32623
|
-
const npmRunPathEnv = ({ env: env$1 =
|
|
32796
|
+
const npmRunPathEnv = ({ env: env$1 = process$1.env, ...options } = {}) => {
|
|
32624
32797
|
env$1 = { ...env$1 };
|
|
32625
32798
|
const pathName = pathKey({ env: env$1 });
|
|
32626
32799
|
options.path = env$1[pathName];
|
|
@@ -33755,7 +33928,7 @@ const normalizeCwd = (cwd = getDefaultCwd()) => {
|
|
|
33755
33928
|
};
|
|
33756
33929
|
const getDefaultCwd = () => {
|
|
33757
33930
|
try {
|
|
33758
|
-
return
|
|
33931
|
+
return process$1.cwd();
|
|
33759
33932
|
} catch (error) {
|
|
33760
33933
|
error.message = `The current directory does not exist.\n${error.message}`;
|
|
33761
33934
|
throw error;
|
|
@@ -33790,7 +33963,7 @@ const normalizeOptions = (filePath, rawArguments, rawOptions) => {
|
|
|
33790
33963
|
options.killSignal = normalizeKillSignal(options.killSignal);
|
|
33791
33964
|
options.forceKillAfterDelay = normalizeForceKillAfterDelay(options.forceKillAfterDelay);
|
|
33792
33965
|
options.lines = options.lines.map((lines, fdNumber) => lines && !BINARY_ENCODINGS.has(options.encoding) && options.buffer[fdNumber]);
|
|
33793
|
-
if (
|
|
33966
|
+
if (process$1.platform === "win32" && path.basename(file, ".exe") === "cmd") commandArguments.unshift("/q");
|
|
33794
33967
|
return {
|
|
33795
33968
|
file,
|
|
33796
33969
|
commandArguments,
|
|
@@ -33817,7 +33990,7 @@ const addDefaultOptions = ({ extendEnv = true, preferLocal = false, cwd, localDi
|
|
|
33817
33990
|
});
|
|
33818
33991
|
const getEnv = ({ env: envOption, extendEnv, preferLocal, node, localDirectory, nodePath }) => {
|
|
33819
33992
|
const env$1 = extendEnv ? {
|
|
33820
|
-
...
|
|
33993
|
+
...process$1.env,
|
|
33821
33994
|
...envOption
|
|
33822
33995
|
} : envOption;
|
|
33823
33996
|
if (preferLocal || node) return npmRunPathEnv({
|
|
@@ -34817,12 +34990,12 @@ const guessStreamDirection = {
|
|
|
34817
34990
|
}
|
|
34818
34991
|
};
|
|
34819
34992
|
const getStandardStreamDirection = (value) => {
|
|
34820
|
-
if ([0,
|
|
34993
|
+
if ([0, process$1.stdin].includes(value)) return "input";
|
|
34821
34994
|
if ([
|
|
34822
34995
|
1,
|
|
34823
34996
|
2,
|
|
34824
|
-
|
|
34825
|
-
|
|
34997
|
+
process$1.stdout,
|
|
34998
|
+
process$1.stderr
|
|
34826
34999
|
].includes(value)) return "output";
|
|
34827
35000
|
};
|
|
34828
35001
|
const DEFAULT_DIRECTION = "output";
|
|
@@ -35886,9 +36059,9 @@ const addIpcMethods = (subprocess, { ipc }) => {
|
|
|
35886
36059
|
Object.assign(subprocess, getIpcMethods(subprocess, false, ipc));
|
|
35887
36060
|
};
|
|
35888
36061
|
const getIpcExport = () => {
|
|
35889
|
-
const anyProcess =
|
|
36062
|
+
const anyProcess = process$1;
|
|
35890
36063
|
const isSubprocess = true;
|
|
35891
|
-
const ipc =
|
|
36064
|
+
const ipc = process$1.channel !== void 0;
|
|
35892
36065
|
return {
|
|
35893
36066
|
...getIpcMethods(anyProcess, isSubprocess, ipc),
|
|
35894
36067
|
getCancelSignal: getCancelSignal$1.bind(void 0, {
|
|
@@ -36130,7 +36303,7 @@ if (process.platform === "linux") signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SI
|
|
|
36130
36303
|
|
|
36131
36304
|
//#endregion
|
|
36132
36305
|
//#region node_modules/signal-exit/dist/mjs/index.js
|
|
36133
|
-
const processOk = (process$
|
|
36306
|
+
const processOk = (process$5) => !!process$5 && typeof process$5 === "object" && typeof process$5.removeListener === "function" && typeof process$5.emit === "function" && typeof process$5.reallyExit === "function" && typeof process$5.listeners === "function" && typeof process$5.kill === "function" && typeof process$5.pid === "number" && typeof process$5.on === "function";
|
|
36134
36307
|
const kExitEmitter = Symbol.for("signal-exit emitter");
|
|
36135
36308
|
const global$1 = globalThis;
|
|
36136
36309
|
const ObjectDefineProperty = Object.defineProperty.bind(Object);
|
|
@@ -36198,7 +36371,7 @@ var SignalExitFallback = class extends SignalExitBase {
|
|
|
36198
36371
|
};
|
|
36199
36372
|
var SignalExit = class extends SignalExitBase {
|
|
36200
36373
|
/* c8 ignore start */
|
|
36201
|
-
#hupSig = process$
|
|
36374
|
+
#hupSig = process$2.platform === "win32" ? "SIGINT" : "SIGHUP";
|
|
36202
36375
|
/* c8 ignore stop */
|
|
36203
36376
|
#emitter = new Emitter();
|
|
36204
36377
|
#process;
|
|
@@ -36206,15 +36379,15 @@ var SignalExit = class extends SignalExitBase {
|
|
|
36206
36379
|
#originalProcessReallyExit;
|
|
36207
36380
|
#sigListeners = {};
|
|
36208
36381
|
#loaded = false;
|
|
36209
|
-
constructor(process$
|
|
36382
|
+
constructor(process$5) {
|
|
36210
36383
|
super();
|
|
36211
|
-
this.#process = process$
|
|
36384
|
+
this.#process = process$5;
|
|
36212
36385
|
this.#sigListeners = {};
|
|
36213
36386
|
for (const sig of signals) this.#sigListeners[sig] = () => {
|
|
36214
36387
|
const listeners = this.#process.listeners(sig);
|
|
36215
36388
|
let { count: count$1 } = this.#emitter;
|
|
36216
36389
|
/* c8 ignore start */
|
|
36217
|
-
const p$1 = process$
|
|
36390
|
+
const p$1 = process$5;
|
|
36218
36391
|
if (typeof p$1.__signal_exit_emitter__ === "object" && typeof p$1.__signal_exit_emitter__.count === "number") count$1 += p$1.__signal_exit_emitter__.count;
|
|
36219
36392
|
/* c8 ignore stop */
|
|
36220
36393
|
if (listeners.length === count$1) {
|
|
@@ -36222,11 +36395,11 @@ var SignalExit = class extends SignalExitBase {
|
|
|
36222
36395
|
const ret = this.#emitter.emit("exit", null, sig);
|
|
36223
36396
|
/* c8 ignore start */
|
|
36224
36397
|
const s = sig === "SIGHUP" ? this.#hupSig : sig;
|
|
36225
|
-
if (!ret) process$
|
|
36398
|
+
if (!ret) process$5.kill(process$5.pid, s);
|
|
36226
36399
|
}
|
|
36227
36400
|
};
|
|
36228
|
-
this.#originalProcessReallyExit = process$
|
|
36229
|
-
this.#originalProcessEmit = process$
|
|
36401
|
+
this.#originalProcessReallyExit = process$5.reallyExit;
|
|
36402
|
+
this.#originalProcessEmit = process$5.emit;
|
|
36230
36403
|
}
|
|
36231
36404
|
onExit(cb, opts) {
|
|
36232
36405
|
/* c8 ignore start */
|
|
@@ -36293,8 +36466,8 @@ var SignalExit = class extends SignalExitBase {
|
|
|
36293
36466
|
} else return og.call(this.#process, ev, ...args);
|
|
36294
36467
|
}
|
|
36295
36468
|
};
|
|
36296
|
-
const process$
|
|
36297
|
-
const { onExit, load, unload } = signalExitWrap(processOk(process$
|
|
36469
|
+
const process$2 = globalThis.process;
|
|
36470
|
+
const { onExit, load, unload } = signalExitWrap(processOk(process$2) ? new SignalExit(process$2) : new SignalExitFallback());
|
|
36298
36471
|
|
|
36299
36472
|
//#endregion
|
|
36300
36473
|
//#region node_modules/execa/lib/terminate/cleanup.js
|
|
@@ -38192,11 +38365,7 @@ async function executeCreate({ template, name: rawName, description, projectPath
|
|
|
38192
38365
|
"-y",
|
|
38193
38366
|
"add-skill",
|
|
38194
38367
|
"base44/skills",
|
|
38195
|
-
"-y"
|
|
38196
|
-
"-s",
|
|
38197
|
-
"base44-cli",
|
|
38198
|
-
"-s",
|
|
38199
|
-
"base44-sdk"
|
|
38368
|
+
"-y"
|
|
38200
38369
|
], {
|
|
38201
38370
|
cwd: resolvedPath,
|
|
38202
38371
|
stdio: "inherit"
|
|
@@ -38256,7 +38425,7 @@ function isInsideContainer() {
|
|
|
38256
38425
|
//#endregion
|
|
38257
38426
|
//#region node_modules/is-wsl/index.js
|
|
38258
38427
|
const isWsl = () => {
|
|
38259
|
-
if (
|
|
38428
|
+
if (process$1.platform !== "linux") return false;
|
|
38260
38429
|
if (os.release().toLowerCase().includes("microsoft")) {
|
|
38261
38430
|
if (isInsideContainer()) return false;
|
|
38262
38431
|
return true;
|
|
@@ -38267,12 +38436,12 @@ const isWsl = () => {
|
|
|
38267
38436
|
return false;
|
|
38268
38437
|
}
|
|
38269
38438
|
};
|
|
38270
|
-
var is_wsl_default =
|
|
38439
|
+
var is_wsl_default = process$1.env.__IS_WSL_TEST__ ? isWsl : isWsl();
|
|
38271
38440
|
|
|
38272
38441
|
//#endregion
|
|
38273
38442
|
//#region node_modules/powershell-utils/index.js
|
|
38274
38443
|
const execFile$2 = promisify(childProcess.execFile);
|
|
38275
|
-
const powerShellPath$1 = () => `${
|
|
38444
|
+
const powerShellPath$1 = () => `${process$1.env.SYSTEMROOT || process$1.env.windir || String.raw`C:\Windows`}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`;
|
|
38276
38445
|
const executePowerShell = async (command, options = {}) => {
|
|
38277
38446
|
const { powerShellPath: psPath, ...execFileOptions } = options;
|
|
38278
38447
|
const encodedCommand = executePowerShell.encodeCommand(command);
|
|
@@ -38383,7 +38552,7 @@ function defineLazyProperty(object$1, propertyName, valueGetter) {
|
|
|
38383
38552
|
//#region node_modules/default-browser-id/index.js
|
|
38384
38553
|
const execFileAsync$3 = promisify(execFile);
|
|
38385
38554
|
async function defaultBrowserId() {
|
|
38386
|
-
if (
|
|
38555
|
+
if (process$1.platform !== "darwin") throw new Error("macOS only");
|
|
38387
38556
|
const { stdout: stdout$1 } = await execFileAsync$3("defaults", [
|
|
38388
38557
|
"read",
|
|
38389
38558
|
"com.apple.LaunchServices/com.apple.launchservices.secure",
|
|
@@ -38398,7 +38567,7 @@ async function defaultBrowserId() {
|
|
|
38398
38567
|
//#region node_modules/run-applescript/index.js
|
|
38399
38568
|
const execFileAsync$2 = promisify(execFile);
|
|
38400
38569
|
async function runAppleScript(script, { humanReadableOutput = true, signal } = {}) {
|
|
38401
|
-
if (
|
|
38570
|
+
if (process$1.platform !== "darwin") throw new Error("macOS only");
|
|
38402
38571
|
const outputArguments = humanReadableOutput ? [] : ["-ss"];
|
|
38403
38572
|
const execOptions = {};
|
|
38404
38573
|
if (signal) execOptions.signal = signal;
|
|
@@ -38507,14 +38676,14 @@ async function defaultBrowser$1(_execFileAsync = execFileAsync$1) {
|
|
|
38507
38676
|
const execFileAsync = promisify(execFile);
|
|
38508
38677
|
const titleize = (string$2) => string$2.toLowerCase().replaceAll(/(?:^|\s|-)\S/g, (x$2) => x$2.toUpperCase());
|
|
38509
38678
|
async function defaultBrowser() {
|
|
38510
|
-
if (
|
|
38679
|
+
if (process$1.platform === "darwin") {
|
|
38511
38680
|
const id = await defaultBrowserId();
|
|
38512
38681
|
return {
|
|
38513
38682
|
name: await bundleName(id),
|
|
38514
38683
|
id
|
|
38515
38684
|
};
|
|
38516
38685
|
}
|
|
38517
|
-
if (
|
|
38686
|
+
if (process$1.platform === "linux") {
|
|
38518
38687
|
const { stdout: stdout$1 } = await execFileAsync("xdg-mime", [
|
|
38519
38688
|
"query",
|
|
38520
38689
|
"default",
|
|
@@ -38526,13 +38695,13 @@ async function defaultBrowser() {
|
|
|
38526
38695
|
id
|
|
38527
38696
|
};
|
|
38528
38697
|
}
|
|
38529
|
-
if (
|
|
38698
|
+
if (process$1.platform === "win32") return defaultBrowser$1();
|
|
38530
38699
|
throw new Error("Only macOS, Linux, and Windows are supported");
|
|
38531
38700
|
}
|
|
38532
38701
|
|
|
38533
38702
|
//#endregion
|
|
38534
38703
|
//#region node_modules/is-in-ssh/index.js
|
|
38535
|
-
const isInSsh = Boolean(
|
|
38704
|
+
const isInSsh = Boolean(process$1.env.SSH_CONNECTION || process$1.env.SSH_CLIENT || process$1.env.SSH_TTY);
|
|
38536
38705
|
var is_in_ssh_default = isInSsh;
|
|
38537
38706
|
|
|
38538
38707
|
//#endregion
|
|
@@ -38540,7 +38709,7 @@ var is_in_ssh_default = isInSsh;
|
|
|
38540
38709
|
const fallbackAttemptSymbol = Symbol("fallbackAttempt");
|
|
38541
38710
|
const __dirname = import.meta.url ? path.dirname(fileURLToPath(import.meta.url)) : "";
|
|
38542
38711
|
const localXdgOpenPath = path.join(__dirname, "xdg-open");
|
|
38543
|
-
const { platform: platform$1, arch } =
|
|
38712
|
+
const { platform: platform$1, arch } = process$1;
|
|
38544
38713
|
const tryEachApp = async (apps$1, opener) => {
|
|
38545
38714
|
if (apps$1.length === 0) return;
|
|
38546
38715
|
const errors = [];
|
|
@@ -38653,7 +38822,7 @@ const baseOpen = async (options) => {
|
|
|
38653
38822
|
await fs$1.access(localXdgOpenPath, constants$1.X_OK);
|
|
38654
38823
|
exeLocalXdgOpen = true;
|
|
38655
38824
|
} catch {}
|
|
38656
|
-
command =
|
|
38825
|
+
command = process$1.versions.electron ?? (platform$1 === "android" || isBundled || !exeLocalXdgOpen) ? "xdg-open" : localXdgOpenPath;
|
|
38657
38826
|
}
|
|
38658
38827
|
if (appArguments.length > 0) cliArguments.push(...appArguments);
|
|
38659
38828
|
if (!options.wait) {
|
|
@@ -38951,6 +39120,7 @@ program.addCommand(dashboardCommand);
|
|
|
38951
39120
|
program.addCommand(deployCommand);
|
|
38952
39121
|
program.addCommand(linkCommand);
|
|
38953
39122
|
program.addCommand(entitiesPushCommand);
|
|
39123
|
+
program.addCommand(agentsCommand);
|
|
38954
39124
|
program.addCommand(functionsDeployCommand);
|
|
38955
39125
|
program.addCommand(siteDeployCommand);
|
|
38956
39126
|
|