@base44-preview/cli 0.0.37-pr.357.e36d383 → 0.0.37-pr.360.194aaef
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/cli/index.js +12 -126
- package/dist/cli/index.js.map +4 -5
- package/package.json +1 -1
- package/dist/deno-runtime/exec.js +0 -30
- package/dist/deno-runtime/exec.js.map +0 -10
package/dist/cli/index.js
CHANGED
|
@@ -210244,7 +210244,7 @@ var require_dist5 = __commonJS((exports, module) => {
|
|
|
210244
210244
|
});
|
|
210245
210245
|
module.exports = __toCommonJS(src_exports);
|
|
210246
210246
|
var import_promises19 = __require("node:fs/promises");
|
|
210247
|
-
var
|
|
210247
|
+
var import_node_fs19 = __require("node:fs");
|
|
210248
210248
|
var DEVIN_LOCAL_PATH = "/opt/.devin";
|
|
210249
210249
|
var CURSOR2 = "cursor";
|
|
210250
210250
|
var CURSOR_CLI = "cursor-cli";
|
|
@@ -210301,7 +210301,7 @@ var require_dist5 = __commonJS((exports, module) => {
|
|
|
210301
210301
|
return { isAgent: true, agent: { name: REPLIT } };
|
|
210302
210302
|
}
|
|
210303
210303
|
try {
|
|
210304
|
-
await (0, import_promises19.access)(DEVIN_LOCAL_PATH,
|
|
210304
|
+
await (0, import_promises19.access)(DEVIN_LOCAL_PATH, import_node_fs19.constants.F_OK);
|
|
210305
210305
|
return { isAgent: true, agent: { name: DEVIN } };
|
|
210306
210306
|
} catch (error48) {}
|
|
210307
210307
|
return { isAgent: false, agent: undefined };
|
|
@@ -244352,121 +244352,8 @@ function getDevCommand(context) {
|
|
|
244352
244352
|
});
|
|
244353
244353
|
}
|
|
244354
244354
|
|
|
244355
|
-
// src/cli/commands/exec.ts
|
|
244356
|
-
import { spawn as spawn3, spawnSync as spawnSync3 } from "node:child_process";
|
|
244357
|
-
import { copyFileSync, unlinkSync, writeFileSync as writeFileSync2 } from "node:fs";
|
|
244358
|
-
import { tmpdir as tmpdir2 } from "node:os";
|
|
244359
|
-
import { dirname as dirname12, join as join16, resolve as resolve6 } from "node:path";
|
|
244360
|
-
import { fileURLToPath as fileURLToPath8 } from "node:url";
|
|
244361
|
-
var __dirname6 = dirname12(fileURLToPath8(import.meta.url));
|
|
244362
|
-
var EXEC_WRAPPER_PATH = join16(__dirname6, "../deno-runtime/exec.js");
|
|
244363
|
-
function verifyDenoIsInstalled() {
|
|
244364
|
-
const result = spawnSync3("deno", ["--version"]);
|
|
244365
|
-
if (result.error) {
|
|
244366
|
-
throw new DependencyNotFoundError("Deno is required to run scripts with exec", {
|
|
244367
|
-
hints: [
|
|
244368
|
-
{
|
|
244369
|
-
message: "Install Deno: https://docs.deno.com/runtime/getting-started/installation/"
|
|
244370
|
-
}
|
|
244371
|
-
]
|
|
244372
|
-
});
|
|
244373
|
-
}
|
|
244374
|
-
}
|
|
244375
|
-
function readStdin() {
|
|
244376
|
-
return new Promise((resolve7, reject) => {
|
|
244377
|
-
let data = "";
|
|
244378
|
-
process.stdin.setEncoding("utf-8");
|
|
244379
|
-
process.stdin.on("data", (chunk) => {
|
|
244380
|
-
data += chunk;
|
|
244381
|
-
});
|
|
244382
|
-
process.stdin.on("end", () => resolve7(data));
|
|
244383
|
-
process.stdin.on("error", reject);
|
|
244384
|
-
});
|
|
244385
|
-
}
|
|
244386
|
-
async function execAction(scriptArg, options8, extraArgs) {
|
|
244387
|
-
verifyDenoIsInstalled();
|
|
244388
|
-
let scriptPath;
|
|
244389
|
-
let tempFile = null;
|
|
244390
|
-
const hasFile = scriptArg !== undefined;
|
|
244391
|
-
const hasEval = options8.eval !== undefined;
|
|
244392
|
-
const isStdinPipe = !hasFile && !hasEval && !process.stdin.isTTY;
|
|
244393
|
-
if (hasFile && hasEval) {
|
|
244394
|
-
throw new InvalidInputError("Cannot use both a file path and -e flag. Provide only one input mode.");
|
|
244395
|
-
}
|
|
244396
|
-
if (!hasFile && !hasEval && !isStdinPipe) {
|
|
244397
|
-
throw new InvalidInputError("No script provided. Pass a file path, use -e for inline code, or pipe from stdin.", {
|
|
244398
|
-
hints: [
|
|
244399
|
-
{ message: "File: base44 exec ./script.ts" },
|
|
244400
|
-
{ message: 'Eval: base44 exec -e "console.log(1)"' },
|
|
244401
|
-
{ message: "Stdin: echo 'code' | base44 exec" }
|
|
244402
|
-
]
|
|
244403
|
-
});
|
|
244404
|
-
}
|
|
244405
|
-
if (hasFile) {
|
|
244406
|
-
scriptPath = `file://${resolve6(scriptArg)}`;
|
|
244407
|
-
} else {
|
|
244408
|
-
const code2 = hasEval ? options8.eval : await readStdin();
|
|
244409
|
-
tempFile = join16(tmpdir2(), `base44-exec-${Date.now()}.ts`);
|
|
244410
|
-
writeFileSync2(tempFile, code2, "utf-8");
|
|
244411
|
-
scriptPath = `file://${tempFile}`;
|
|
244412
|
-
}
|
|
244413
|
-
const appConfig = getAppConfig();
|
|
244414
|
-
let appUserToken;
|
|
244415
|
-
try {
|
|
244416
|
-
const response = await getAppClient().get("auth/token").json();
|
|
244417
|
-
appUserToken = response.token;
|
|
244418
|
-
} catch (error48) {
|
|
244419
|
-
throw await ApiError.fromHttpError(error48, "exchanging platform token for app user token");
|
|
244420
|
-
}
|
|
244421
|
-
const tempWrapper = join16(tmpdir2(), `base44-exec-wrapper-${Date.now()}.js`);
|
|
244422
|
-
copyFileSync(EXEC_WRAPPER_PATH, tempWrapper);
|
|
244423
|
-
try {
|
|
244424
|
-
const exitCode = await new Promise((resolvePromise) => {
|
|
244425
|
-
const child = spawn3("deno", [
|
|
244426
|
-
"run",
|
|
244427
|
-
"--allow-all",
|
|
244428
|
-
"--node-modules-dir=auto",
|
|
244429
|
-
tempWrapper,
|
|
244430
|
-
...extraArgs
|
|
244431
|
-
], {
|
|
244432
|
-
env: {
|
|
244433
|
-
...process.env,
|
|
244434
|
-
SCRIPT_PATH: scriptPath,
|
|
244435
|
-
BASE44_APP_ID: appConfig.id,
|
|
244436
|
-
BASE44_ACCESS_TOKEN: appUserToken,
|
|
244437
|
-
BASE44_API_URL: getBase44ApiUrl()
|
|
244438
|
-
},
|
|
244439
|
-
stdio: "inherit"
|
|
244440
|
-
});
|
|
244441
|
-
child.on("close", (code2) => {
|
|
244442
|
-
resolvePromise(code2 ?? 1);
|
|
244443
|
-
});
|
|
244444
|
-
});
|
|
244445
|
-
if (exitCode !== 0) {
|
|
244446
|
-
process.exitCode = exitCode;
|
|
244447
|
-
}
|
|
244448
|
-
} finally {
|
|
244449
|
-
for (const f7 of [tempFile, tempWrapper]) {
|
|
244450
|
-
if (f7) {
|
|
244451
|
-
try {
|
|
244452
|
-
unlinkSync(f7);
|
|
244453
|
-
} catch {}
|
|
244454
|
-
}
|
|
244455
|
-
}
|
|
244456
|
-
}
|
|
244457
|
-
return {};
|
|
244458
|
-
}
|
|
244459
|
-
function getExecCommand(context) {
|
|
244460
|
-
const cmd = new Command("exec").description("Run a script with the Base44 SDK pre-authenticated as the current user").argument("[script]", "Path to a .ts or .js script file").option("-e, --eval <code>", "Evaluate inline code").allowUnknownOption(true).action(async (script, options8) => {
|
|
244461
|
-
const dashIndex = process.argv.indexOf("--");
|
|
244462
|
-
const extraArgs = dashIndex !== -1 ? process.argv.slice(dashIndex + 1) : [];
|
|
244463
|
-
await runCommand(() => execAction(script, options8, extraArgs), { requireAuth: true }, context);
|
|
244464
|
-
});
|
|
244465
|
-
return cmd;
|
|
244466
|
-
}
|
|
244467
|
-
|
|
244468
244355
|
// src/cli/commands/project/eject.ts
|
|
244469
|
-
import { resolve as
|
|
244356
|
+
import { resolve as resolve6 } from "node:path";
|
|
244470
244357
|
var import_lodash2 = __toESM(require_lodash(), 1);
|
|
244471
244358
|
async function eject(options8) {
|
|
244472
244359
|
const projects = await listProjects();
|
|
@@ -244515,7 +244402,7 @@ async function eject(options8) {
|
|
|
244515
244402
|
Ne("Operation cancelled.");
|
|
244516
244403
|
throw new CLIExitError(0);
|
|
244517
244404
|
}
|
|
244518
|
-
const resolvedPath =
|
|
244405
|
+
const resolvedPath = resolve6(selectedPath);
|
|
244519
244406
|
await runTask("Downloading your project's code...", async (updateMessage) => {
|
|
244520
244407
|
await createProjectFilesForExistingProject({
|
|
244521
244408
|
projectId,
|
|
@@ -244581,7 +244468,6 @@ function createProgram(context) {
|
|
|
244581
244468
|
program2.addCommand(getSecretsCommand(context));
|
|
244582
244469
|
program2.addCommand(getSiteCommand(context));
|
|
244583
244470
|
program2.addCommand(getTypesCommand(context));
|
|
244584
|
-
program2.addCommand(getExecCommand(context));
|
|
244585
244471
|
program2.addCommand(getDevCommand(context), { hidden: true });
|
|
244586
244472
|
program2.addCommand(getLogsCommand(context), { hidden: true });
|
|
244587
244473
|
return program2;
|
|
@@ -244592,7 +244478,7 @@ var import_detect_agent = __toESM(require_dist5(), 1);
|
|
|
244592
244478
|
import { release, type } from "node:os";
|
|
244593
244479
|
|
|
244594
244480
|
// node_modules/posthog-node/dist/extensions/error-tracking/modifiers/module.node.mjs
|
|
244595
|
-
import { dirname as
|
|
244481
|
+
import { dirname as dirname12, posix, sep } from "path";
|
|
244596
244482
|
function createModulerModifier() {
|
|
244597
244483
|
const getModuleFromFileName = createGetModuleFromFilename();
|
|
244598
244484
|
return async (frames) => {
|
|
@@ -244601,7 +244487,7 @@ function createModulerModifier() {
|
|
|
244601
244487
|
return frames;
|
|
244602
244488
|
};
|
|
244603
244489
|
}
|
|
244604
|
-
function createGetModuleFromFilename(basePath = process.argv[1] ?
|
|
244490
|
+
function createGetModuleFromFilename(basePath = process.argv[1] ? dirname12(process.argv[1]) : process.cwd(), isWindows4 = sep === "\\") {
|
|
244605
244491
|
const normalizedBase = isWindows4 ? normalizeWindowsPath2(basePath) : basePath;
|
|
244606
244492
|
return (filename) => {
|
|
244607
244493
|
if (!filename)
|
|
@@ -246879,14 +246765,14 @@ async function addSourceContext(frames) {
|
|
|
246879
246765
|
return frames;
|
|
246880
246766
|
}
|
|
246881
246767
|
function getContextLinesFromFile(path19, ranges, output) {
|
|
246882
|
-
return new Promise((
|
|
246768
|
+
return new Promise((resolve7) => {
|
|
246883
246769
|
const stream = createReadStream2(path19);
|
|
246884
246770
|
const lineReaded = createInterface2({
|
|
246885
246771
|
input: stream
|
|
246886
246772
|
});
|
|
246887
246773
|
function destroyStreamAndResolve() {
|
|
246888
246774
|
stream.destroy();
|
|
246889
|
-
|
|
246775
|
+
resolve7();
|
|
246890
246776
|
}
|
|
246891
246777
|
let lineNumber = 0;
|
|
246892
246778
|
let currentRangeIndex = 0;
|
|
@@ -247998,15 +247884,15 @@ class PostHogBackendClient extends PostHogCoreStateless {
|
|
|
247998
247884
|
return true;
|
|
247999
247885
|
if (this.featureFlagsPoller === undefined)
|
|
248000
247886
|
return false;
|
|
248001
|
-
return new Promise((
|
|
247887
|
+
return new Promise((resolve7) => {
|
|
248002
247888
|
const timeout3 = setTimeout(() => {
|
|
248003
247889
|
cleanup();
|
|
248004
|
-
|
|
247890
|
+
resolve7(false);
|
|
248005
247891
|
}, timeoutMs);
|
|
248006
247892
|
const cleanup = this._events.on("localEvaluationFlagsLoaded", (count2) => {
|
|
248007
247893
|
clearTimeout(timeout3);
|
|
248008
247894
|
cleanup();
|
|
248009
|
-
|
|
247895
|
+
resolve7(count2 > 0);
|
|
248010
247896
|
});
|
|
248011
247897
|
});
|
|
248012
247898
|
}
|
|
@@ -248819,4 +248705,4 @@ export {
|
|
|
248819
248705
|
CLIExitError
|
|
248820
248706
|
};
|
|
248821
248707
|
|
|
248822
|
-
//# debugId=
|
|
248708
|
+
//# debugId=CFB8EF6734B8E58D64756E2164756E21
|