@codemarc/blt 1.1.0 → 1.3.0
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/README.md +33 -7
- package/dist/blt +10 -6
- package/dist/blt.d.ts.map +1 -1
- package/dist/blt.js.map +1 -1
- package/dist/commands/bucket/download.d.ts +7 -0
- package/dist/commands/bucket/download.d.ts.map +1 -0
- package/dist/commands/bucket/download.js +28 -0
- package/dist/commands/bucket/download.js.map +1 -0
- package/dist/commands/bucket/list.d.ts +9 -0
- package/dist/commands/bucket/list.d.ts.map +1 -0
- package/dist/commands/bucket/list.js +69 -0
- package/dist/commands/bucket/list.js.map +1 -0
- package/dist/commands/bucket/names.d.ts +5 -0
- package/dist/commands/bucket/names.d.ts.map +1 -0
- package/dist/commands/bucket/names.js +53 -0
- package/dist/commands/bucket/names.js.map +1 -0
- package/dist/commands/bucket/upload-folder.d.ts +10 -0
- package/dist/commands/bucket/upload-folder.d.ts.map +1 -0
- package/dist/commands/bucket/upload-folder.js +84 -0
- package/dist/commands/bucket/upload-folder.js.map +1 -0
- package/dist/commands/bucket/upload.d.ts +9 -0
- package/dist/commands/bucket/upload.d.ts.map +1 -0
- package/dist/commands/bucket/upload.js +32 -0
- package/dist/commands/bucket/upload.js.map +1 -0
- package/dist/commands/bucket/url.d.ts +9 -0
- package/dist/commands/bucket/url.d.ts.map +1 -0
- package/dist/commands/bucket/url.js +32 -0
- package/dist/commands/bucket/url.js.map +1 -0
- package/dist/commands/bucket/utils.d.ts +3 -0
- package/dist/commands/bucket/utils.d.ts.map +1 -0
- package/dist/commands/bucket/utils.js +28 -0
- package/dist/commands/bucket/utils.js.map +1 -0
- package/dist/commands/bucket.d.ts +3 -0
- package/dist/commands/bucket.d.ts.map +1 -1
- package/dist/commands/bucket.js +53 -325
- package/dist/commands/bucket.js.map +1 -1
- package/dist/commands/build/data.d.ts +6 -0
- package/dist/commands/build/data.d.ts.map +1 -0
- package/dist/commands/build/data.js +23 -0
- package/dist/commands/build/data.js.map +1 -0
- package/dist/commands/build/schema.d.ts +6 -0
- package/dist/commands/build/schema.d.ts.map +1 -0
- package/dist/commands/build/schema.js +30 -0
- package/dist/commands/build/schema.js.map +1 -0
- package/dist/commands/build copy.d.ts +6 -0
- package/dist/commands/build copy.d.ts.map +1 -0
- package/dist/commands/build copy.js +56 -0
- package/dist/commands/build copy.js.map +1 -0
- package/dist/commands/build.d.ts +6 -0
- package/dist/commands/build.d.ts.map +1 -0
- package/dist/commands/build.js +56 -0
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/cleanup.d.ts +2 -2
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +13 -19
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/data/build.d.ts +11 -0
- package/dist/commands/data/build.d.ts.map +1 -0
- package/dist/commands/data/build.js +69 -0
- package/dist/commands/data/build.js.map +1 -0
- package/dist/commands/data/deploy.d.ts +9 -0
- package/dist/commands/data/deploy.d.ts.map +1 -0
- package/dist/commands/data/deploy.js +38 -0
- package/dist/commands/data/deploy.js.map +1 -0
- package/dist/commands/data/rows.d.ts +5 -0
- package/dist/commands/data/rows.d.ts.map +1 -0
- package/dist/commands/data/rows.js +63 -0
- package/dist/commands/data/rows.js.map +1 -0
- package/dist/commands/data/schema-info.d.ts +10 -0
- package/dist/commands/data/schema-info.d.ts.map +1 -0
- package/dist/commands/data/schema-info.js +64 -0
- package/dist/commands/data/schema-info.js.map +1 -0
- package/dist/commands/data.d.ts +4 -4
- package/dist/commands/data.d.ts.map +1 -1
- package/dist/commands/data.js +7 -195
- package/dist/commands/data.js.map +1 -1
- package/dist/commands/deploy/data.d.ts +6 -0
- package/dist/commands/deploy/data.d.ts.map +1 -0
- package/dist/commands/deploy/data.js +20 -0
- package/dist/commands/deploy/data.js.map +1 -0
- package/dist/commands/deploy/data.ts 21-46-08-256.d.ts +6 -0
- package/dist/commands/deploy/data.ts 21-46-08-256.d.ts.map +1 -0
- package/dist/commands/deploy/data.ts 21-46-08-256.js +20 -0
- package/dist/commands/deploy/data.ts 21-46-08-256.js.map +1 -0
- package/dist/commands/deploy/deploy.d.ts +9 -0
- package/dist/commands/deploy/deploy.d.ts.map +1 -0
- package/dist/commands/deploy/deploy.js +38 -0
- package/dist/commands/deploy/deploy.js.map +1 -0
- package/dist/commands/deploy/schema.d.ts +6 -0
- package/dist/commands/deploy/schema.d.ts.map +1 -0
- package/dist/commands/deploy/schema.js +20 -0
- package/dist/commands/deploy/schema.js.map +1 -0
- package/dist/commands/deploy.d.ts +6 -0
- package/dist/commands/deploy.d.ts.map +1 -0
- package/dist/commands/deploy.js +73 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/image.js +1 -1
- package/dist/commands/image.js.map +1 -1
- package/dist/commands/show/env.d.ts +5 -0
- package/dist/commands/show/env.d.ts.map +1 -0
- package/dist/commands/show/env.js +100 -0
- package/dist/commands/show/env.js.map +1 -0
- package/dist/commands/show/rows.d.ts +5 -0
- package/dist/commands/show/rows.d.ts.map +1 -0
- package/dist/commands/show/rows.js +63 -0
- package/dist/commands/show/rows.js.map +1 -0
- package/dist/commands/show/schema-info.d.ts +10 -0
- package/dist/commands/show/schema-info.d.ts.map +1 -0
- package/dist/commands/show/schema-info.js +64 -0
- package/dist/commands/show/schema-info.js.map +1 -0
- package/dist/commands/show/schema.d.ts +10 -0
- package/dist/commands/show/schema.d.ts.map +1 -0
- package/dist/commands/show/schema.js +64 -0
- package/dist/commands/show/schema.js.map +1 -0
- package/dist/commands/show.d.ts +6 -0
- package/dist/commands/show.d.ts.map +1 -0
- package/dist/commands/show.js +52 -0
- package/dist/commands/show.js.map +1 -0
- package/dist/commands/version/sql.d.ts +6 -0
- package/dist/commands/version/sql.d.ts.map +1 -0
- package/dist/commands/version/sql.js +35 -0
- package/dist/commands/version/sql.js.map +1 -0
- package/dist/commands/version/string.d.ts +13 -0
- package/dist/commands/version/string.d.ts.map +1 -0
- package/dist/commands/version/string.js +52 -0
- package/dist/commands/version/string.js.map +1 -0
- package/dist/commands/version/update.d.ts.map +1 -1
- package/dist/commands/version/update.js +26 -2
- package/dist/commands/version/update.js.map +1 -1
- package/dist/commands/version copy.d.ts +6 -0
- package/dist/commands/version copy.d.ts.map +1 -0
- package/dist/commands/version copy.js +66 -0
- package/dist/commands/version copy.js.map +1 -0
- package/dist/commands/version.d.ts.map +1 -1
- package/dist/commands/version.js +23 -1
- package/dist/commands/version.js.map +1 -1
- package/dist/lib/database-runner.d.ts +1 -1
- package/dist/lib/database-runner.d.ts.map +1 -1
- package/dist/lib/database-runner.js +8 -8
- package/dist/lib/database-runner.js.map +1 -1
- package/dist/lib/instance-discovery.js +2 -2
- package/dist/lib/instance-discovery.js.map +1 -1
- package/dist/lib/schema-discovery.js +2 -2
- package/dist/lib/schema-discovery.js.map +1 -1
- package/dist/utils/supabase.d.ts +1 -1
- package/dist/utils/supabase.d.ts.map +1 -1
- package/dist/utils/supabase.js +3 -3
- package/dist/utils/supabase.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../../src/commands/show/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;GAEG;AACH,SAAS,SAAS,CAAC,KAAa,EAAE,aAAsB,IAAI;IAC1D,IAAI,CAAC,KAAK;QAAE,OAAO,WAAW,CAAC;IAC/B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,SAAS,CAAC;IACnG,CAAC;IACD,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,GAAa,EAAE,SAAmB;IACnD,OAAO,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC9E,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,SAAmB;IACxC,OAAO,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,yBAAyB,QAAQ,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAErF,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;QAErD,4CAA4C;QAC5C,MAAM,OAAO,GAAG;YACd;gBACE,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,4BAA4B;gBACzC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;gBAClC,SAAS,EAAE,KAAK;aACjB;YACD;gBACE,IAAI,EAAE,eAAe;gBACrB,WAAW,EAAE,6BAA6B;gBAC1C,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;gBAChC,SAAS,EAAE,KAAK;aACjB;YACD;gBACE,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE,uBAAuB;gBACpC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;gBACpC,SAAS,EAAE,KAAK;aACjB;YACD;gBACE,IAAI,EAAE,2BAA2B;gBACjC,WAAW,EAAE,2BAA2B;gBACxC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB;gBAC5C,SAAS,EAAE,IAAI;aAChB;YACD;gBACE,IAAI,EAAE,4BAA4B;gBAClC,WAAW,EAAE,qCAAqC;gBAClD,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B;gBAC7C,SAAS,EAAE,IAAI;aAChB;SACF,CAAC;QAEF,oBAAoB;QACpB,MAAM,OAAO,GAAG,CAAC,eAAe,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAe,CAAC,OAAO,CAAC,CAAC;QAExC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS;gBACnC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC/B,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,WAAW,CAAC;YAEhC,SAAS,CAAC,IAAI,CAAC;gBACb,MAAM,CAAC,IAAI;gBACX,MAAM,CAAC,WAAW;gBAClB,YAAY;aACb,CAAC,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAC9D,CAAC;QAEF,cAAc;QACd,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,qBAAqB;QACrB,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QACvD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,aAAa,UAAU,IAAI,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rows.d.ts","sourceRoot":"","sources":["../../../src/commands/show/rows.ts"],"names":[],"mappings":"AAgBA;;GAEG;AACH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAqD9C"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { executeQuery } from "../../lib/database-runner";
|
|
2
|
+
/**
|
|
3
|
+
* Render a table row for ASCII table display
|
|
4
|
+
*/
|
|
5
|
+
function renderRow(row, colWidths) {
|
|
6
|
+
return `| ${row.map((cell, i) => cell.padEnd(colWidths[i])).join(" | ")} |`;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Render a table divider row
|
|
10
|
+
*/
|
|
11
|
+
function renderDivider(colWidths) {
|
|
12
|
+
return `|-${colWidths.map((w) => "-".repeat(w)).join("-|-")}-|`;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Rows command implementation - display row counts for all tables
|
|
16
|
+
*/
|
|
17
|
+
export async function showRows() {
|
|
18
|
+
try {
|
|
19
|
+
console.log("\n📊 Fetching row counts from database...\n");
|
|
20
|
+
const rows = await executeQuery("SELECT * FROM get_row_counts()");
|
|
21
|
+
if (rows.length === 0) {
|
|
22
|
+
console.log("No tables found in the database.");
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
// Build ASCII table
|
|
26
|
+
const headers = ["Table Name", "Row Count"];
|
|
27
|
+
const tableRows = [headers];
|
|
28
|
+
for (const row of rows) {
|
|
29
|
+
// Handle bigint which may come as string from PostgreSQL
|
|
30
|
+
const count = typeof row.row_count === 'string'
|
|
31
|
+
? parseInt(row.row_count, 10).toLocaleString()
|
|
32
|
+
: Number(row.row_count).toLocaleString();
|
|
33
|
+
tableRows.push([
|
|
34
|
+
row.table_name,
|
|
35
|
+
count,
|
|
36
|
+
]);
|
|
37
|
+
}
|
|
38
|
+
// Calculate column widths
|
|
39
|
+
const colWidths = headers.map((_header, i) => Math.max(...tableRows.map((row) => row[i].toString().length)));
|
|
40
|
+
// Print table
|
|
41
|
+
console.log(renderRow(tableRows[0], colWidths));
|
|
42
|
+
console.log(renderDivider(colWidths));
|
|
43
|
+
for (let i = 1; i < tableRows.length; i++) {
|
|
44
|
+
console.log(renderRow(tableRows[i], colWidths));
|
|
45
|
+
}
|
|
46
|
+
console.log("");
|
|
47
|
+
// Calculate and display total
|
|
48
|
+
const total = rows.reduce((sum, row) => {
|
|
49
|
+
const count = typeof row.row_count === 'string'
|
|
50
|
+
? parseInt(row.row_count, 10)
|
|
51
|
+
: Number(row.row_count);
|
|
52
|
+
return sum + count;
|
|
53
|
+
}, 0);
|
|
54
|
+
console.log(`Total rows across all tables: ${total.toLocaleString()}\n`);
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
58
|
+
console.error(`\n❌ Error: ${message}`);
|
|
59
|
+
console.error("\nMake sure the database is accessible and get_row_counts() function exists.");
|
|
60
|
+
process.exit(1);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=rows.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rows.js","sourceRoot":"","sources":["../../../src/commands/show/rows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH,SAAS,SAAS,CAAC,GAAa,EAAE,SAAmB;IACnD,OAAO,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC9E,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,SAAmB;IACxC,OAAO,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ;IAC5B,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,MAAM,YAAY,CAC7B,gCAAgC,CACjC,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,oBAAoB;QACpB,MAAM,OAAO,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAe,CAAC,OAAO,CAAC,CAAC;QACxC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,yDAAyD;YACzD,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;gBAC7C,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,cAAc,EAAE;gBAC9C,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,CAAC;YAC3C,SAAS,CAAC,IAAI,CAAC;gBACb,GAAG,CAAC,UAAU;gBACd,KAAK;aACN,CAAC,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAC9D,CAAC;QAEF,cAAc;QACd,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,8BAA8B;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACrC,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;gBAC7C,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;gBAC7B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC1B,OAAO,GAAG,GAAG,KAAK,CAAC;QACrB,CAAC,EAAE,CAAC,CAAC,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;QAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Logger } from "@caporal/core";
|
|
2
|
+
/**
|
|
3
|
+
* Schema info command implementation
|
|
4
|
+
*/
|
|
5
|
+
export declare function schemaInfoCommand(args: {
|
|
6
|
+
schemaName?: string;
|
|
7
|
+
}, options: {
|
|
8
|
+
format: string;
|
|
9
|
+
}, logger: Logger): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=schema-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-info.d.ts","sourceRoot":"","sources":["../../../src/commands/show/schema-info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAqB5C;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,EAC7B,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EAC3B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAmDf"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { getDefaultSchemaName, getSchemaFileList, getSchemaTableRows, } from "../../lib/schema-discovery";
|
|
2
|
+
/**
|
|
3
|
+
* Render a table row for ASCII table display
|
|
4
|
+
*/
|
|
5
|
+
function renderRow(row, colWidths) {
|
|
6
|
+
return "| " + row.map((cell, i) => cell.padEnd(colWidths[i])).join(" | ") + " |";
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Render a table divider row
|
|
10
|
+
*/
|
|
11
|
+
function renderDivider(colWidths) {
|
|
12
|
+
return "|-" + colWidths.map((w) => "-".repeat(w)).join("-|-") + "-|";
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Schema info command implementation
|
|
16
|
+
*/
|
|
17
|
+
export async function schemaInfoCommand(args, options, logger) {
|
|
18
|
+
const schemaName = args.schemaName || getDefaultSchemaName();
|
|
19
|
+
// JSON format output
|
|
20
|
+
if (options.format === "json") {
|
|
21
|
+
try {
|
|
22
|
+
const files = getSchemaFileList(schemaName);
|
|
23
|
+
console.log(JSON.stringify(files, null, 2));
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
27
|
+
logger.error(message);
|
|
28
|
+
process.exit(1);
|
|
29
|
+
}
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
// Table format output
|
|
33
|
+
let rows;
|
|
34
|
+
try {
|
|
35
|
+
rows = getSchemaTableRows(schemaName);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
39
|
+
logger.error(message);
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
// Build ASCII table
|
|
43
|
+
const headers = ["Name", "Size", "Created At", "Last Modified"];
|
|
44
|
+
const tableRows = [headers];
|
|
45
|
+
for (const row of rows) {
|
|
46
|
+
tableRows.push([
|
|
47
|
+
row.name,
|
|
48
|
+
row.size.toString(),
|
|
49
|
+
row.createdAt,
|
|
50
|
+
row.lastModified,
|
|
51
|
+
]);
|
|
52
|
+
}
|
|
53
|
+
// Calculate column widths
|
|
54
|
+
const colWidths = headers.map((_header, i) => Math.max(...tableRows.map((row) => row[i].toString().length)));
|
|
55
|
+
// Print table
|
|
56
|
+
console.log("");
|
|
57
|
+
console.log(renderRow(tableRows[0], colWidths));
|
|
58
|
+
console.log(renderDivider(colWidths));
|
|
59
|
+
for (let i = 1; i < tableRows.length; i++) {
|
|
60
|
+
console.log(renderRow(tableRows[i], colWidths));
|
|
61
|
+
}
|
|
62
|
+
console.log("");
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=schema-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-info.js","sourceRoot":"","sources":["../../../src/commands/show/schema-info.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Logger } from "@caporal/core";
|
|
2
|
+
/**
|
|
3
|
+
* Show schema command implementation
|
|
4
|
+
*/
|
|
5
|
+
export declare function showSchema(args: {
|
|
6
|
+
schemaName?: string;
|
|
7
|
+
}, options: {
|
|
8
|
+
format: string;
|
|
9
|
+
}, logger: Logger): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/commands/show/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAqB5C;;GAEG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,EAC7B,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EAC3B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAmDf"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { getDefaultSchemaName, getSchemaFileList, getSchemaTableRows, } from "../../lib/schema-discovery";
|
|
2
|
+
/**
|
|
3
|
+
* Render a table row for ASCII table display
|
|
4
|
+
*/
|
|
5
|
+
function renderRow(row, colWidths) {
|
|
6
|
+
return `| ${row.map((cell, i) => cell.padEnd(colWidths[i])).join(" | ")} |`;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Render a table divider row
|
|
10
|
+
*/
|
|
11
|
+
function renderDivider(colWidths) {
|
|
12
|
+
return `|-${colWidths.map((w) => "-".repeat(w)).join("-|-")}-|`;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Show schema command implementation
|
|
16
|
+
*/
|
|
17
|
+
export async function showSchema(args, options, logger) {
|
|
18
|
+
const schemaName = args.schemaName || getDefaultSchemaName();
|
|
19
|
+
// JSON format output
|
|
20
|
+
if (options.format === "json") {
|
|
21
|
+
try {
|
|
22
|
+
const files = getSchemaFileList(schemaName);
|
|
23
|
+
console.log(JSON.stringify(files, null, 2));
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
27
|
+
logger.error(message);
|
|
28
|
+
process.exit(1);
|
|
29
|
+
}
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
// Table format output
|
|
33
|
+
let rows;
|
|
34
|
+
try {
|
|
35
|
+
rows = getSchemaTableRows(schemaName);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
39
|
+
logger.error(message);
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
// Build ASCII table
|
|
43
|
+
const headers = ["Name", "Size", "Created At", "Last Modified"];
|
|
44
|
+
const tableRows = [headers];
|
|
45
|
+
for (const row of rows) {
|
|
46
|
+
tableRows.push([
|
|
47
|
+
row.name,
|
|
48
|
+
row.size.toString(),
|
|
49
|
+
row.createdAt,
|
|
50
|
+
row.lastModified,
|
|
51
|
+
]);
|
|
52
|
+
}
|
|
53
|
+
// Calculate column widths
|
|
54
|
+
const colWidths = headers.map((_header, i) => Math.max(...tableRows.map((row) => row[i].toString().length)));
|
|
55
|
+
// Print table
|
|
56
|
+
console.log("");
|
|
57
|
+
console.log(renderRow(tableRows[0], colWidths));
|
|
58
|
+
console.log(renderDivider(colWidths));
|
|
59
|
+
for (let i = 1; i < tableRows.length; i++) {
|
|
60
|
+
console.log(renderRow(tableRows[i], colWidths));
|
|
61
|
+
}
|
|
62
|
+
console.log("");
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/commands/show/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAU,MAAM,eAAe,CAAC;AAIrD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,OAAO,EAAE,OAAO,QAqDnD"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { showSchema } from "./show/schema";
|
|
2
|
+
import { showRows } from "./show/rows";
|
|
3
|
+
import { showEnv } from "./show/env";
|
|
4
|
+
/**
|
|
5
|
+
* Register show commands with the CLI program
|
|
6
|
+
*/
|
|
7
|
+
export default function showCommand(program) {
|
|
8
|
+
const showHelpText = `
|
|
9
|
+
show utilities
|
|
10
|
+
|
|
11
|
+
Usage:
|
|
12
|
+
blt show <operation>
|
|
13
|
+
|
|
14
|
+
Available operations:
|
|
15
|
+
counts Display row counts for all tables
|
|
16
|
+
schema Get information about the schema
|
|
17
|
+
env Display blt core environment variables
|
|
18
|
+
|
|
19
|
+
Run 'blt show <operation> --help' for more information on a specific command.
|
|
20
|
+
`;
|
|
21
|
+
program
|
|
22
|
+
.command("show", "show utilities")
|
|
23
|
+
.help(showHelpText)
|
|
24
|
+
.action(() => {
|
|
25
|
+
console.log(showHelpText);
|
|
26
|
+
});
|
|
27
|
+
program
|
|
28
|
+
.command("show schema", "Get information about the schema")
|
|
29
|
+
.hide()
|
|
30
|
+
.argument("[schema-name]", "Schema name (e.g., 'core', 'public')")
|
|
31
|
+
.option("-f, --format <format>", "Output format: table or json", {
|
|
32
|
+
default: "table",
|
|
33
|
+
validator: ["table", "json"],
|
|
34
|
+
})
|
|
35
|
+
.action(async ({ args, options, logger }) => {
|
|
36
|
+
await showSchema({ schemaName: args.schemaName }, { format: options.format }, logger);
|
|
37
|
+
});
|
|
38
|
+
// Counts command - display row counts for all tables
|
|
39
|
+
program
|
|
40
|
+
.command("show counts", "Display row counts for all tables")
|
|
41
|
+
.hide()
|
|
42
|
+
.action(async () => {
|
|
43
|
+
await showRows();
|
|
44
|
+
});
|
|
45
|
+
program
|
|
46
|
+
.command("show env", "Display blt core environment variables")
|
|
47
|
+
.hide()
|
|
48
|
+
.action(async () => {
|
|
49
|
+
await showEnv();
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=show.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,OAAgB;IACnD,MAAM,YAAY,GAAG;;;;;;;;;;;;CAYrB,CAAC;IAEA,OAAO;SACJ,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC;SACjC,IAAI,CAAC,YAAY,CAAC;SAClB,MAAM,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,aAAa,EAAE,kCAAkC,CAAC;SAC1D,IAAI,EAAE;SACN,QAAQ,CAAC,eAAe,EAAE,sCAAsC,CAAC;SACjE,MAAM,CAAC,uBAAuB,EAAE,8BAA8B,EAAE;QAC/D,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;KAC7B,CAAC;SACD,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAC1C,MAAM,UAAU,CACd,EAAE,UAAU,EAAE,IAAI,CAAC,UAAgC,EAAE,EACrD,EAAE,MAAM,EAAE,OAAO,CAAC,MAAgB,EAAE,EACpC,MAAM,CACP,CAAC;IACJ,CAAC,CAAC,CAAC;IAGL,qDAAqD;IACrD,OAAO;SACJ,OAAO,CAAC,aAAa,EAAE,mCAAmC,CAAC;SAC3D,IAAI,EAAE;SACN,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,QAAQ,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,UAAU,EAAE,wCAAwC,CAAC;SAC7D,IAAI,EAAE;SACN,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../../src/commands/version/sql.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAiCvD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { readFileSync, existsSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
/**
|
|
4
|
+
* Generate SQL to upsert version.json to settings table
|
|
5
|
+
*/
|
|
6
|
+
export function generateVersionSQL(logger) {
|
|
7
|
+
try {
|
|
8
|
+
const rootDir = process.cwd();
|
|
9
|
+
const versionJsonPath = join(rootDir, "version.json");
|
|
10
|
+
if (!existsSync(versionJsonPath)) {
|
|
11
|
+
logger.error("version.json not found. Run 'blt version update' first.");
|
|
12
|
+
process.exit(1);
|
|
13
|
+
}
|
|
14
|
+
const versionInfo = JSON.parse(readFileSync(versionJsonPath, "utf-8"));
|
|
15
|
+
// Convert version.json to JSON string for SQL
|
|
16
|
+
const propsJson = JSON.stringify(versionInfo);
|
|
17
|
+
// Escape single quotes in JSON for SQL
|
|
18
|
+
const escapedPropsJson = propsJson.replace(/'/g, "''");
|
|
19
|
+
// Generate SQL upsert statement
|
|
20
|
+
// Match format used in other settings INSERT statements (no casts in VALUES)
|
|
21
|
+
const sql = `INSERT INTO settings (id, name, kind, props) VALUES
|
|
22
|
+
('00000000-0000-0000-0000-ffffffffffff', 'version', 'meta', '${escapedPropsJson}'::jsonb)
|
|
23
|
+
ON CONFLICT (id) DO UPDATE SET
|
|
24
|
+
name = COALESCE(EXCLUDED.name, settings.name),
|
|
25
|
+
kind = COALESCE(EXCLUDED.kind, settings.kind),
|
|
26
|
+
props = COALESCE(EXCLUDED.props, settings.props);`;
|
|
27
|
+
console.log(sql);
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
31
|
+
logger.error(`Failed to generate SQL: ${message}`);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=sql.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql.js","sourceRoot":"","sources":["../../../src/commands/version/sql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAEtD,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QAEvE,8CAA8C;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAE9C,uCAAuC;QACvC,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvD,gCAAgC;QAChC,6EAA6E;QAC7E,MAAM,GAAG,GAAG;+DAC+C,gBAAgB;;;;sDAIzB,CAAC;QAEnD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Logger } from "@caporal/core";
|
|
2
|
+
interface StringOptions {
|
|
3
|
+
short?: boolean;
|
|
4
|
+
full?: boolean;
|
|
5
|
+
date?: boolean;
|
|
6
|
+
only?: boolean;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Display version as a formatted string
|
|
10
|
+
*/
|
|
11
|
+
export declare function displayVersionString(options: StringOptions, logger: Logger): void;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=string.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/commands/version/string.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAa5C,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CA+CjF"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { readFileSync, existsSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { format as formatBuildNumber } from 'build-number-generator';
|
|
4
|
+
/**
|
|
5
|
+
* Display version as a formatted string
|
|
6
|
+
*/
|
|
7
|
+
export function displayVersionString(options, logger) {
|
|
8
|
+
try {
|
|
9
|
+
const rootDir = process.cwd();
|
|
10
|
+
const versionJsonPath = join(rootDir, "version.json");
|
|
11
|
+
if (!existsSync(versionJsonPath)) {
|
|
12
|
+
logger.error("version.json not found. Run 'blt version update' first.");
|
|
13
|
+
process.exit(1);
|
|
14
|
+
}
|
|
15
|
+
const versionInfo = JSON.parse(readFileSync(versionJsonPath, "utf-8"));
|
|
16
|
+
// Determine format: default to short, --full overrides to full
|
|
17
|
+
const useFull = options.full === true;
|
|
18
|
+
const useShort = options.short === true;
|
|
19
|
+
const useDate = options.date === true;
|
|
20
|
+
const useOnly = options.only === true;
|
|
21
|
+
let versionString;
|
|
22
|
+
let buildnumString;
|
|
23
|
+
if (useDate) {
|
|
24
|
+
buildnumString = formatBuildNumber(versionInfo.buildnum);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
buildnumString = versionInfo.buildnum;
|
|
28
|
+
}
|
|
29
|
+
if (useFull) {
|
|
30
|
+
// Full format: component vversion.buildnum - branch hash(full-commit)
|
|
31
|
+
versionString = `${versionInfo.component} v${versionInfo.version} ${buildnumString} - ${versionInfo.build.branch} hash(${versionInfo.build.commit})`;
|
|
32
|
+
}
|
|
33
|
+
else if (useShort) {
|
|
34
|
+
versionString = `${versionInfo.component} v${versionInfo.version} ${buildnumString}`;
|
|
35
|
+
}
|
|
36
|
+
else if (useOnly) {
|
|
37
|
+
versionString = buildnumString;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
// defaultShort format: component vversion buildnum - branch (short-commit)
|
|
41
|
+
const shortCommit = versionInfo.build.commit?.substring(0, 7) ?? "";
|
|
42
|
+
versionString = `${versionInfo.component} v${versionInfo.version} ${buildnumString} - ${versionInfo.build.branch} (${shortCommit})`;
|
|
43
|
+
}
|
|
44
|
+
console.log(versionString);
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
48
|
+
logger.error(`Failed to read version.json: ${message}`);
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=string.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.js","sourceRoot":"","sources":["../../../src/commands/version/string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAqBrE;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAsB,EAAE,MAAc;IACzE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAEtD,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,WAAW,GAAgB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QAEpF,+DAA+D;QAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;QACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;QACtC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;QAEtC,IAAI,aAAqB,CAAC;QAC1B,IAAI,cAAsB,CAAC;QAE3B,IAAI,OAAO,EAAE,CAAC;YACZ,cAAc,GAAG,iBAAiB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC;QACxC,CAAC;QAGD,IAAI,OAAO,EAAE,CAAC;YACZ,sEAAsE;YACtE,aAAa,GAAG,GAAG,WAAW,CAAC,SAAS,KAAK,WAAW,CAAC,OAAO,IAAI,cAAc,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,SAAS,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QACvJ,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACpB,aAAa,GAAG,GAAG,WAAW,CAAC,SAAS,KAAK,WAAW,CAAC,OAAO,IAAI,cAAc,EAAE,CAAC;QACvF,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,aAAa,GAAG,cAAc,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,2EAA2E;YAC3E,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpE,aAAa,GAAG,GAAG,WAAW,CAAC,SAAS,KAAK,WAAW,CAAC,OAAO,IAAI,cAAc,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,KAAK,WAAW,GAAG,CAAC;QACtI,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,KAAK,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/version/update.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/version/update.ts"],"names":[],"mappings":";AA8JA;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,MAAsB,GAAG,IAAI,CAiDnE"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { readFileSync, writeFileSync, existsSync } from "node:fs";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { execSync } from "node:child_process";
|
|
5
|
+
import { generate } from "build-number-generator";
|
|
5
6
|
function getGitCommit(rootDir) {
|
|
6
7
|
try {
|
|
7
8
|
return execSync("git rev-parse HEAD", { encoding: "utf-8", cwd: rootDir }).trim();
|
|
@@ -91,6 +92,8 @@ function detectComponentName(packageJson, rootDir) {
|
|
|
91
92
|
return "data";
|
|
92
93
|
if (lastPart === "deploy")
|
|
93
94
|
return "deploy";
|
|
95
|
+
if (lastPart === "gateway")
|
|
96
|
+
return "gateway";
|
|
94
97
|
return lastPart;
|
|
95
98
|
}
|
|
96
99
|
// Fallback to directory name
|
|
@@ -98,11 +101,23 @@ function detectComponentName(packageJson, rootDir) {
|
|
|
98
101
|
const dirName = pathParts[pathParts.length - 1];
|
|
99
102
|
return dirName || "unknown";
|
|
100
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* Generate build number
|
|
106
|
+
*/
|
|
107
|
+
function generateBuildNumber() {
|
|
108
|
+
try {
|
|
109
|
+
return generate();
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
return "";
|
|
113
|
+
}
|
|
114
|
+
}
|
|
101
115
|
/**
|
|
102
116
|
* Create a default version.json structure
|
|
103
117
|
*/
|
|
104
118
|
function createDefaultVersionInfo(packageJson, rootDir) {
|
|
105
119
|
return {
|
|
120
|
+
buildnum: generateBuildNumber(),
|
|
106
121
|
component: detectComponentName(packageJson, rootDir),
|
|
107
122
|
version: packageJson.version || "0.0.0",
|
|
108
123
|
runtime: {
|
|
@@ -152,6 +167,7 @@ export function updateVersion(rootDir = process.cwd()) {
|
|
|
152
167
|
versionInfo = createDefaultVersionInfo(packageJson, rootDir);
|
|
153
168
|
}
|
|
154
169
|
// Update version info
|
|
170
|
+
versionInfo.buildnum = generateBuildNumber();
|
|
155
171
|
versionInfo.version = packageJson.version || "0.0.0";
|
|
156
172
|
versionInfo.runtime.type = getRuntimeType();
|
|
157
173
|
versionInfo.runtime.version = getRuntimeVersion();
|
|
@@ -160,8 +176,16 @@ export function updateVersion(rootDir = process.cwd()) {
|
|
|
160
176
|
versionInfo.build.time = getBuildTime();
|
|
161
177
|
versionInfo.metadata.packageManager = getPackageManager(rootDir);
|
|
162
178
|
versionInfo.metadata.packageManagerVersion = getPackageManagerVersion();
|
|
163
|
-
// Write updated version.json
|
|
164
|
-
|
|
179
|
+
// Write updated version.json with buildnum at the top
|
|
180
|
+
const orderedVersionInfo = {
|
|
181
|
+
buildnum: versionInfo.buildnum,
|
|
182
|
+
component: versionInfo.component,
|
|
183
|
+
version: versionInfo.version,
|
|
184
|
+
runtime: versionInfo.runtime,
|
|
185
|
+
build: versionInfo.build,
|
|
186
|
+
metadata: versionInfo.metadata,
|
|
187
|
+
};
|
|
188
|
+
writeFileSync(versionJsonPath, `${JSON.stringify(orderedVersionInfo, null, 2)}\n`);
|
|
165
189
|
console.log("Updated version.json");
|
|
166
190
|
}
|
|
167
191
|
// Allow running as a script
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/version/update.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/version/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version copy.d.ts","sourceRoot":"","sources":["../../src/commands/version copy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAU,MAAM,eAAe,CAAC;AAKrD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,OAAO,EAAE,OAAO,QA+DtD"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { updateVersion } from "./version/update";
|
|
2
|
+
import { displayVersionString } from "./version/string";
|
|
3
|
+
import { generateVersionSQL } from "./version/sql";
|
|
4
|
+
/**
|
|
5
|
+
* Register version commands with the CLI program
|
|
6
|
+
*/
|
|
7
|
+
export default function versionCommand(program) {
|
|
8
|
+
// Main version command - shows help for subcommands
|
|
9
|
+
const versionHelpText = `
|
|
10
|
+
version management utilities
|
|
11
|
+
|
|
12
|
+
Usage:
|
|
13
|
+
blt version <operation>
|
|
14
|
+
|
|
15
|
+
Available operations:
|
|
16
|
+
update Update version.json with current build information
|
|
17
|
+
string Display version as a formatted string
|
|
18
|
+
sql Generate SQL to upsert version.json to settings table
|
|
19
|
+
|
|
20
|
+
Run 'blt version <operation> --help' for more information on a specific command.
|
|
21
|
+
`;
|
|
22
|
+
program
|
|
23
|
+
.command("version", "version management")
|
|
24
|
+
.help(versionHelpText)
|
|
25
|
+
.action(() => {
|
|
26
|
+
console.log(versionHelpText);
|
|
27
|
+
});
|
|
28
|
+
// Update version.json
|
|
29
|
+
program
|
|
30
|
+
.command("version update", "Update version.json with current build information")
|
|
31
|
+
.hide()
|
|
32
|
+
.action(async ({ logger }) => {
|
|
33
|
+
try {
|
|
34
|
+
// Use current working directory where the command is run
|
|
35
|
+
const rootDir = process.cwd();
|
|
36
|
+
logger.info("Updating version.json...");
|
|
37
|
+
// Call the update function directly
|
|
38
|
+
updateVersion(rootDir);
|
|
39
|
+
logger.info("Version information updated successfully");
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
43
|
+
logger.error(`Failed to update version.json: ${message}`);
|
|
44
|
+
process.exit(1);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
// Display version string
|
|
48
|
+
program
|
|
49
|
+
.command("version string", "Display version as a formatted string")
|
|
50
|
+
.hide()
|
|
51
|
+
.option("-d, --date", "Display buildnum as date", { default: false })
|
|
52
|
+
.option("-o, --only", "Display buildnum as date", { default: false })
|
|
53
|
+
.option("-s, --short", "Display short version (7-char commit hash)", { default: false })
|
|
54
|
+
.option("-f, --full", "Display full version (full commit hash)", { default: false })
|
|
55
|
+
.action(async ({ options, logger }) => {
|
|
56
|
+
displayVersionString(options, logger);
|
|
57
|
+
});
|
|
58
|
+
// Generate SQL to upsert version.json to settings table
|
|
59
|
+
program
|
|
60
|
+
.command("version sql", "Generate SQL to upsert version.json to settings table")
|
|
61
|
+
.hide()
|
|
62
|
+
.action(async ({ logger }) => {
|
|
63
|
+
generateVersionSQL(logger);
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=version%20copy.js.map
|