@base44-preview/cli 0.0.9-pr.72.51ce257 → 0.0.9-pr.74.8755bae
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 +28 -21
- package/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -26187,10 +26187,21 @@ async function getUserInfo(accessToken) {
|
|
|
26187
26187
|
return result.data;
|
|
26188
26188
|
}
|
|
26189
26189
|
|
|
26190
|
+
//#endregion
|
|
26191
|
+
//#region src/cli/utils/consts.ts
|
|
26192
|
+
/**
|
|
26193
|
+
* Brand colors used throughout the CLI
|
|
26194
|
+
*/
|
|
26195
|
+
const ORANGE = source_default.hex("#E86B3C");
|
|
26196
|
+
const CYAN = source_default.hex("#00D4FF");
|
|
26197
|
+
const GOLD = source_default.hex("#FFD700");
|
|
26198
|
+
/**
|
|
26199
|
+
* Background color for the Base44 intro tag
|
|
26200
|
+
*/
|
|
26201
|
+
const BASE44_BG = source_default.bgHex("#E86B3C");
|
|
26202
|
+
|
|
26190
26203
|
//#endregion
|
|
26191
26204
|
//#region src/cli/utils/animate.ts
|
|
26192
|
-
const orange$2 = source_default.hex("#E86B3C");
|
|
26193
|
-
const gold = source_default.hex("#FFD700");
|
|
26194
26205
|
/**
|
|
26195
26206
|
* Sleep for a specified number of milliseconds.
|
|
26196
26207
|
*/
|
|
@@ -26207,13 +26218,13 @@ async function animateLineReveal(line, duration$2) {
|
|
|
26207
26218
|
const progress = step / steps;
|
|
26208
26219
|
const revealIndex = Math.floor(progress * line.length);
|
|
26209
26220
|
let output = "";
|
|
26210
|
-
for (let i$1 = 0; i$1 < line.length; i$1++) if (i$1 < revealIndex) output +=
|
|
26211
|
-
else if (i$1 === revealIndex) output +=
|
|
26221
|
+
for (let i$1 = 0; i$1 < line.length; i$1++) if (i$1 < revealIndex) output += ORANGE(line[i$1]);
|
|
26222
|
+
else if (i$1 === revealIndex) output += GOLD(line[i$1]);
|
|
26212
26223
|
else output += source_default.dim(line[i$1]);
|
|
26213
26224
|
process.stdout.write(`\r${output}`);
|
|
26214
26225
|
await sleep(stepDuration);
|
|
26215
26226
|
}
|
|
26216
|
-
process.stdout.write(`\r${
|
|
26227
|
+
process.stdout.write(`\r${ORANGE(line)}\n`);
|
|
26217
26228
|
}
|
|
26218
26229
|
/**
|
|
26219
26230
|
* Quick shimmer pass over the entire banner.
|
|
@@ -26230,15 +26241,15 @@ async function shimmerPass(lines, duration$2) {
|
|
|
26230
26241
|
let output = "";
|
|
26231
26242
|
for (let i$1 = 0; i$1 < line.length; i$1++) {
|
|
26232
26243
|
const dist = Math.abs(i$1 - shimmerPos);
|
|
26233
|
-
if (dist < 3) output += dist === 0 ? source_default.white(line[i$1]) :
|
|
26234
|
-
else output +=
|
|
26244
|
+
if (dist < 3) output += dist === 0 ? source_default.white(line[i$1]) : GOLD(line[i$1]);
|
|
26245
|
+
else output += ORANGE(line[i$1]);
|
|
26235
26246
|
}
|
|
26236
26247
|
console.log(output);
|
|
26237
26248
|
}
|
|
26238
26249
|
await sleep(stepDuration);
|
|
26239
26250
|
}
|
|
26240
26251
|
process.stdout.write(moveUp);
|
|
26241
|
-
for (const line of lines) console.log(
|
|
26252
|
+
for (const line of lines) console.log(ORANGE(line));
|
|
26242
26253
|
}
|
|
26243
26254
|
/**
|
|
26244
26255
|
* Animate the output with a smooth line-by-line reveal.
|
|
@@ -26258,7 +26269,6 @@ async function printAnimatedLines(lines) {
|
|
|
26258
26269
|
|
|
26259
26270
|
//#endregion
|
|
26260
26271
|
//#region src/cli/utils/banner.ts
|
|
26261
|
-
const orange$1 = source_default.hex("#E86B3C");
|
|
26262
26272
|
const BANNER_LINES = [
|
|
26263
26273
|
"██████╗ █████╗ ███████╗███████╗ ██╗ ██╗██╗ ██╗",
|
|
26264
26274
|
"██╔══██╗██╔══██╗██╔════╝██╔════╝ ██║ ██║██║ ██║",
|
|
@@ -26273,12 +26283,11 @@ const BANNER_LINES = [
|
|
|
26273
26283
|
*/
|
|
26274
26284
|
async function printBanner() {
|
|
26275
26285
|
if (process.stdout.isTTY) await printAnimatedLines(BANNER_LINES);
|
|
26276
|
-
else console.log(
|
|
26286
|
+
else console.log(ORANGE(BANNER_LINES.join("\n")));
|
|
26277
26287
|
}
|
|
26278
26288
|
|
|
26279
26289
|
//#endregion
|
|
26280
26290
|
//#region src/cli/utils/runCommand.ts
|
|
26281
|
-
const base44Color = source_default.bgHex("#E86B3C");
|
|
26282
26291
|
/**
|
|
26283
26292
|
* Wraps a command function with the Base44 intro/outro and error handling.
|
|
26284
26293
|
* All CLI commands should use this utility to ensure consistent branding.
|
|
@@ -26322,7 +26331,7 @@ async function runCommand(commandFn, options) {
|
|
|
26322
26331
|
if (options?.fullBanner) {
|
|
26323
26332
|
await printBanner();
|
|
26324
26333
|
Ie("");
|
|
26325
|
-
} else Ie(
|
|
26334
|
+
} else Ie(BASE44_BG(" Base 44 "));
|
|
26326
26335
|
await loadProjectEnv();
|
|
26327
26336
|
try {
|
|
26328
26337
|
if (options?.requireAuth) {
|
|
@@ -32112,7 +32121,7 @@ const green = format(32, 39);
|
|
|
32112
32121
|
const yellow = format(33, 39);
|
|
32113
32122
|
const blue = format(34, 39);
|
|
32114
32123
|
const magenta = format(35, 39);
|
|
32115
|
-
const cyan
|
|
32124
|
+
const cyan = format(36, 39);
|
|
32116
32125
|
const white = format(37, 39);
|
|
32117
32126
|
const gray = format(90, 39);
|
|
32118
32127
|
const bgBlack = format(40, 49);
|
|
@@ -38156,8 +38165,6 @@ var require_lodash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
38156
38165
|
//#endregion
|
|
38157
38166
|
//#region src/cli/commands/project/create.ts
|
|
38158
38167
|
var import_lodash = /* @__PURE__ */ __toESM(require_lodash(), 1);
|
|
38159
|
-
const orange = source_default.hex("#E86B3C");
|
|
38160
|
-
const cyan = source_default.hex("#00D4FF");
|
|
38161
38168
|
const DEFAULT_TEMPLATE_ID = "backend-only";
|
|
38162
38169
|
async function getDefaultTemplate() {
|
|
38163
38170
|
const template = (await listTemplates()).find((t) => t.id === DEFAULT_TEMPLATE_ID);
|
|
@@ -38237,7 +38244,7 @@ async function executeCreate({ template, name: rawName, description, projectPath
|
|
|
38237
38244
|
template
|
|
38238
38245
|
});
|
|
38239
38246
|
}, {
|
|
38240
|
-
successMessage:
|
|
38247
|
+
successMessage: ORANGE("Project created successfully"),
|
|
38241
38248
|
errorMessage: "Failed to create project"
|
|
38242
38249
|
});
|
|
38243
38250
|
await loadProjectEnv(resolvedPath);
|
|
@@ -38252,7 +38259,7 @@ async function executeCreate({ template, name: rawName, description, projectPath
|
|
|
38252
38259
|
if (shouldPushEntities) await runTask(`Pushing ${entities.length} entities to Base44...`, async () => {
|
|
38253
38260
|
await pushEntities(entities);
|
|
38254
38261
|
}, {
|
|
38255
|
-
successMessage:
|
|
38262
|
+
successMessage: ORANGE("Entities pushed successfully"),
|
|
38256
38263
|
errorMessage: "Failed to push entities"
|
|
38257
38264
|
});
|
|
38258
38265
|
}
|
|
@@ -38277,16 +38284,16 @@ async function executeCreate({ template, name: rawName, description, projectPath
|
|
|
38277
38284
|
updateMessage("Deploying site...");
|
|
38278
38285
|
return await deploySite(join(resolvedPath, outputDirectory));
|
|
38279
38286
|
}, {
|
|
38280
|
-
successMessage:
|
|
38287
|
+
successMessage: ORANGE("Site deployed successfully"),
|
|
38281
38288
|
errorMessage: "Failed to deploy site"
|
|
38282
38289
|
});
|
|
38283
38290
|
finalAppUrl = appUrl;
|
|
38284
38291
|
}
|
|
38285
38292
|
}
|
|
38286
38293
|
const dashboardUrl = `${getBase44ApiUrl()}/apps/${projectId}/editor/preview`;
|
|
38287
|
-
M.message(`${source_default.dim("Project")}: ${
|
|
38288
|
-
M.message(`${source_default.dim("Dashboard")}: ${
|
|
38289
|
-
if (finalAppUrl) M.message(`${source_default.dim("Site")}: ${
|
|
38294
|
+
M.message(`${source_default.dim("Project")}: ${ORANGE(name$1)}`);
|
|
38295
|
+
M.message(`${source_default.dim("Dashboard")}: ${CYAN(dashboardUrl)}`);
|
|
38296
|
+
if (finalAppUrl) M.message(`${source_default.dim("Site")}: ${CYAN(finalAppUrl)}`);
|
|
38290
38297
|
return { outroMessage: "Your project is set and ready to use" };
|
|
38291
38298
|
}
|
|
38292
38299
|
const createCommand = new Command("create").description("Create a new Base44 project").option("-n, --name <name>", "Project name").option("-d, --description <description>", "Project description").option("-p, --path <path>", "Path where to create the project").option("--deploy", "Build and deploy the site").hook("preAction", validateNonInteractiveFlags).action(async (options) => {
|
package/package.json
CHANGED