@zenstackhq/cli 3.3.0-beta.3 → 3.3.0-beta.5
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.cjs +42 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +43 -12
- package/dist/index.js.map +1 -1
- package/package.json +12 -10
package/dist/index.cjs
CHANGED
|
@@ -28,6 +28,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
));
|
|
29
29
|
|
|
30
30
|
// src/index.ts
|
|
31
|
+
var import_config = require("dotenv/config");
|
|
31
32
|
var import_language5 = require("@zenstackhq/language");
|
|
32
33
|
var import_colors10 = __toESM(require("colors"), 1);
|
|
33
34
|
var import_commander = require("commander");
|
|
@@ -243,7 +244,7 @@ function execPrisma(args, options) {
|
|
|
243
244
|
execPackage(`prisma ${args}`, _options);
|
|
244
245
|
return;
|
|
245
246
|
}
|
|
246
|
-
execSync(`node ${prismaPath} ${args}`, _options);
|
|
247
|
+
execSync(`node "${prismaPath}" ${args}`, _options);
|
|
247
248
|
}
|
|
248
249
|
__name(execPrisma, "execPrisma");
|
|
249
250
|
|
|
@@ -930,20 +931,23 @@ function handleSubProcessError2(err) {
|
|
|
930
931
|
__name(handleSubProcessError2, "handleSubProcessError");
|
|
931
932
|
|
|
932
933
|
// src/actions/proxy.ts
|
|
933
|
-
var import_ast3 = require("@zenstackhq/language/ast");
|
|
934
934
|
var import_language4 = require("@zenstackhq/language");
|
|
935
|
+
var import_ast3 = require("@zenstackhq/language/ast");
|
|
935
936
|
var import_utils2 = require("@zenstackhq/language/utils");
|
|
936
|
-
var import_sqlite = require("@zenstackhq/orm/dialects/sqlite");
|
|
937
|
-
var import_postgres = require("@zenstackhq/orm/dialects/postgres");
|
|
938
|
-
var import_better_sqlite3 = __toESM(require("better-sqlite3"), 1);
|
|
939
|
-
var import_pg = require("pg");
|
|
940
|
-
var import_node_path9 = __toESM(require("path"), 1);
|
|
941
937
|
var import_orm = require("@zenstackhq/orm");
|
|
938
|
+
var import_mysql = require("@zenstackhq/orm/dialects/mysql");
|
|
939
|
+
var import_postgres = require("@zenstackhq/orm/dialects/postgres");
|
|
940
|
+
var import_sqlite = require("@zenstackhq/orm/dialects/sqlite");
|
|
942
941
|
var import_api = require("@zenstackhq/server/api");
|
|
943
942
|
var import_express = require("@zenstackhq/server/express");
|
|
944
|
-
var
|
|
943
|
+
var import_better_sqlite3 = __toESM(require("better-sqlite3"), 1);
|
|
945
944
|
var import_colors9 = __toESM(require("colors"), 1);
|
|
945
|
+
var import_cors = __toESM(require("cors"), 1);
|
|
946
|
+
var import_express2 = __toESM(require("express"), 1);
|
|
946
947
|
var import_jiti2 = require("jiti");
|
|
948
|
+
var import_mysql2 = require("mysql2");
|
|
949
|
+
var import_node_path9 = __toESM(require("path"), 1);
|
|
950
|
+
var import_pg = require("pg");
|
|
947
951
|
|
|
948
952
|
// src/utils/version-utils.ts
|
|
949
953
|
var import_colors8 = __toESM(require("colors"), 1);
|
|
@@ -995,7 +999,6 @@ async function getLatestVersion() {
|
|
|
995
999
|
__name(getLatestVersion, "getLatestVersion");
|
|
996
1000
|
|
|
997
1001
|
// src/actions/proxy.ts
|
|
998
|
-
var import_cors = __toESM(require("cors"), 1);
|
|
999
1002
|
var import_meta3 = {};
|
|
1000
1003
|
async function run9(options) {
|
|
1001
1004
|
const schemaFile = getSchemaFile(options.schema);
|
|
@@ -1057,6 +1060,21 @@ function evaluateUrl(value) {
|
|
|
1057
1060
|
}
|
|
1058
1061
|
}
|
|
1059
1062
|
__name(evaluateUrl, "evaluateUrl");
|
|
1063
|
+
function redactDatabaseUrl(url) {
|
|
1064
|
+
try {
|
|
1065
|
+
const parsedUrl = new URL(url);
|
|
1066
|
+
if (parsedUrl.password) {
|
|
1067
|
+
parsedUrl.password = "***";
|
|
1068
|
+
}
|
|
1069
|
+
if (parsedUrl.username) {
|
|
1070
|
+
parsedUrl.username = "***";
|
|
1071
|
+
}
|
|
1072
|
+
return parsedUrl.toString();
|
|
1073
|
+
} catch {
|
|
1074
|
+
return url;
|
|
1075
|
+
}
|
|
1076
|
+
}
|
|
1077
|
+
__name(redactDatabaseUrl, "redactDatabaseUrl");
|
|
1060
1078
|
function createDialect(provider, databaseUrl, outputPath) {
|
|
1061
1079
|
switch (provider) {
|
|
1062
1080
|
case "sqlite": {
|
|
@@ -1073,12 +1091,17 @@ function createDialect(provider, databaseUrl, outputPath) {
|
|
|
1073
1091
|
});
|
|
1074
1092
|
}
|
|
1075
1093
|
case "postgresql":
|
|
1076
|
-
console.log(import_colors9.default.gray(`Connecting to PostgreSQL database at: ${databaseUrl}`));
|
|
1094
|
+
console.log(import_colors9.default.gray(`Connecting to PostgreSQL database at: ${redactDatabaseUrl(databaseUrl)}`));
|
|
1077
1095
|
return new import_postgres.PostgresDialect({
|
|
1078
1096
|
pool: new import_pg.Pool({
|
|
1079
1097
|
connectionString: databaseUrl
|
|
1080
1098
|
})
|
|
1081
1099
|
});
|
|
1100
|
+
case "mysql":
|
|
1101
|
+
console.log(import_colors9.default.gray(`Connecting to MySQL database at: ${redactDatabaseUrl(databaseUrl)}`));
|
|
1102
|
+
return new import_mysql.MysqlDialect({
|
|
1103
|
+
pool: (0, import_mysql2.createPool)(databaseUrl)
|
|
1104
|
+
});
|
|
1082
1105
|
default:
|
|
1083
1106
|
throw new CliError(`Unsupported database provider: ${provider}`);
|
|
1084
1107
|
}
|
|
@@ -1110,6 +1133,14 @@ function startServer(client, schema, options) {
|
|
|
1110
1133
|
console.log(`ZenStack proxy server is running on port: ${options.port}`);
|
|
1111
1134
|
console.log(`You can visit ZenStack Studio at: ${import_colors9.default.blue("https://studio.zenstack.dev")}`);
|
|
1112
1135
|
});
|
|
1136
|
+
server.on("error", (err) => {
|
|
1137
|
+
if (err.code === "EADDRINUSE") {
|
|
1138
|
+
console.error(import_colors9.default.red(`Port ${options.port} is already in use. Please choose a different port using -p option.`));
|
|
1139
|
+
} else {
|
|
1140
|
+
throw new CliError(`Failed to start the server: ${err.message}`);
|
|
1141
|
+
}
|
|
1142
|
+
process.exit(1);
|
|
1143
|
+
});
|
|
1113
1144
|
process.on("SIGTERM", async () => {
|
|
1114
1145
|
server.close(() => {
|
|
1115
1146
|
console.log("\nZenStack proxy server closed");
|
|
@@ -1427,7 +1458,7 @@ Arguments following -- are passed to the seed script. E.g.: "zen db seed -- --us
|
|
|
1427
1458
|
program.command("init").description("Initialize an existing project for ZenStack").argument("[path]", "project path", ".").addOption(noVersionCheckOption).action(initAction);
|
|
1428
1459
|
program.command("check").description("Check a ZModel schema for syntax or semantic errors").addOption(schemaOption).addOption(noVersionCheckOption).action(checkAction);
|
|
1429
1460
|
program.command("format").description("Format a ZModel schema file").addOption(schemaOption).addOption(noVersionCheckOption).action(formatAction);
|
|
1430
|
-
program.command("proxy").alias("studio").description("Start the ZenStack proxy server").addOption(schemaOption).addOption(new import_commander.Option("-p, --port <port>", "port to run the proxy server on").default(
|
|
1461
|
+
program.command("proxy").alias("studio").description("Start the ZenStack proxy server").addOption(schemaOption).addOption(new import_commander.Option("-p, --port <port>", "port to run the proxy server on").default(2311)).addOption(new import_commander.Option("-o, --output <path>", "output directory for `zen generate` command")).addOption(new import_commander.Option("-d, --databaseUrl <url>", "database connection URL")).addOption(new import_commander.Option("-l, --logLevel <level>", "Query log levels (e.g., query, error)")).addOption(noVersionCheckOption).action(proxyAction);
|
|
1431
1462
|
program.addHelpCommand("help [command]", "Display help for a command");
|
|
1432
1463
|
program.hook("preAction", async (_thisCommand, actionCommand) => {
|
|
1433
1464
|
if (actionCommand.getOptionValue("versionCheck") !== false) {
|