@actuate-media/cli 0.4.0 → 0.4.2
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/.turbo/turbo-build.log +1 -1
- package/.turbo/turbo-test.log +21 -10
- package/CHANGELOG.md +34 -0
- package/dist/__tests__/deployment-diagnostics.test.js +40 -0
- package/dist/__tests__/deployment-diagnostics.test.js.map +1 -1
- package/dist/__tests__/init.test.js.map +1 -1
- package/dist/__tests__/schema-fragment.test.js +1 -1
- package/dist/__tests__/schema-fragment.test.js.map +1 -1
- package/dist/__tests__/seed.test.js.map +1 -1
- package/dist/commands/db-init.d.ts +2 -2
- package/dist/commands/db-init.d.ts.map +1 -1
- package/dist/commands/db-init.js +32 -32
- package/dist/commands/db-init.js.map +1 -1
- package/dist/commands/db-status.d.ts +1 -1
- package/dist/commands/db-status.d.ts.map +1 -1
- package/dist/commands/db-status.js +33 -33
- package/dist/commands/db-status.js.map +1 -1
- package/dist/commands/doctor.d.ts +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +55 -38
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/export.d.ts +1 -1
- package/dist/commands/export.d.ts.map +1 -1
- package/dist/commands/export.js +32 -32
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/generate.d.ts +1 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +8 -8
- package/dist/commands/generate.js.map +1 -1
- package/dist/commands/import.d.ts +1 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +55 -58
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/migrate.d.ts +1 -1
- package/dist/commands/migrate.d.ts.map +1 -1
- package/dist/commands/migrate.js +18 -24
- package/dist/commands/migrate.js.map +1 -1
- package/dist/commands/seed.d.ts +1 -1
- package/dist/commands/seed.d.ts.map +1 -1
- package/dist/commands/seed.js +156 -157
- package/dist/commands/seed.js.map +1 -1
- package/dist/commands/update-check.d.ts +1 -1
- package/dist/commands/update-check.d.ts.map +1 -1
- package/dist/commands/update-check.js +34 -27
- package/dist/commands/update-check.js.map +1 -1
- package/dist/commands/upgrade.d.ts +1 -1
- package/dist/commands/upgrade.d.ts.map +1 -1
- package/dist/commands/upgrade.js +41 -34
- package/dist/commands/upgrade.js.map +1 -1
- package/dist/deployment/diagnostics.d.ts +2 -0
- package/dist/deployment/diagnostics.d.ts.map +1 -1
- package/dist/deployment/diagnostics.js +50 -1
- package/dist/deployment/diagnostics.js.map +1 -1
- package/dist/index.js +15 -15
- package/dist/index.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +5 -5
- package/dist/utils/logger.js.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/deployment-diagnostics.test.ts +100 -50
- package/src/__tests__/init.test.ts +17 -17
- package/src/__tests__/schema-fragment.test.ts +29 -25
- package/src/__tests__/seed.test.ts +25 -25
- package/src/commands/db-init.ts +59 -59
- package/src/commands/db-status.ts +70 -68
- package/src/commands/doctor.ts +110 -86
- package/src/commands/export.ts +65 -75
- package/src/commands/generate.ts +14 -16
- package/src/commands/import.ts +125 -140
- package/src/commands/init.ts +14 -14
- package/src/commands/migrate.ts +29 -35
- package/src/commands/seed.ts +294 -300
- package/src/commands/update-check.ts +77 -72
- package/src/commands/upgrade.ts +92 -85
- package/src/deployment/diagnostics.ts +124 -61
- package/src/index.ts +30 -30
- package/src/utils/logger.ts +10 -10
package/dist/commands/doctor.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { access, readdir, readFile } from
|
|
2
|
-
import { resolve } from
|
|
3
|
-
import chalk from
|
|
4
|
-
import { buildDeploymentManifest, createDiagnosticReport, detectPackageManager, } from
|
|
1
|
+
import { access, readdir, readFile } from 'node:fs/promises';
|
|
2
|
+
import { resolve } from 'node:path';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import { buildDeploymentManifest, createDiagnosticReport, detectPackageManager, } from '../deployment/diagnostics.js';
|
|
5
5
|
async function fileExists(path) {
|
|
6
6
|
try {
|
|
7
7
|
await access(path);
|
|
@@ -14,7 +14,7 @@ async function fileExists(path) {
|
|
|
14
14
|
async function readSchemaModels(schemaPath) {
|
|
15
15
|
if (!(await fileExists(schemaPath)))
|
|
16
16
|
return new Set();
|
|
17
|
-
const schema = await readFile(schemaPath,
|
|
17
|
+
const schema = await readFile(schemaPath, 'utf-8');
|
|
18
18
|
const models = new Set();
|
|
19
19
|
const modelRegex = /^model\s+(\w+)\s*\{/gm;
|
|
20
20
|
let match;
|
|
@@ -25,8 +25,13 @@ async function readSchemaModels(schemaPath) {
|
|
|
25
25
|
}
|
|
26
26
|
async function readSchemaContent(schemaPath) {
|
|
27
27
|
if (!(await fileExists(schemaPath)))
|
|
28
|
-
return
|
|
29
|
-
return readFile(schemaPath,
|
|
28
|
+
return '';
|
|
29
|
+
return readFile(schemaPath, 'utf-8');
|
|
30
|
+
}
|
|
31
|
+
async function readOptionalFile(path) {
|
|
32
|
+
if (!(await fileExists(path)))
|
|
33
|
+
return '';
|
|
34
|
+
return readFile(path, 'utf-8');
|
|
30
35
|
}
|
|
31
36
|
async function detectProjectPackageManager() {
|
|
32
37
|
const entries = new Set(await readdir(process.cwd()));
|
|
@@ -35,29 +40,36 @@ async function detectProjectPackageManager() {
|
|
|
35
40
|
function printReport(title, report) {
|
|
36
41
|
console.log();
|
|
37
42
|
console.log(chalk.bold(title));
|
|
38
|
-
console.log(chalk.dim(
|
|
43
|
+
console.log(chalk.dim('─────────────────────────────────'));
|
|
39
44
|
for (const check of report.checks) {
|
|
40
|
-
const icon = check.status ===
|
|
45
|
+
const icon = check.status === 'pass'
|
|
46
|
+
? chalk.green('PASS')
|
|
47
|
+
: check.status === 'warn'
|
|
48
|
+
? chalk.yellow('WARN')
|
|
49
|
+
: chalk.red('FAIL');
|
|
41
50
|
console.log(`${icon} ${check.label}: ${check.message}`);
|
|
42
51
|
if (check.fix)
|
|
43
52
|
console.log(chalk.dim(` Fix: ${check.fix}`));
|
|
44
53
|
if (check.docs)
|
|
45
54
|
console.log(chalk.dim(` Docs: ${check.docs}`));
|
|
46
55
|
}
|
|
47
|
-
console.log(chalk.dim(
|
|
56
|
+
console.log(chalk.dim('─────────────────────────────────'));
|
|
48
57
|
console.log(`Status: ${report.status.toUpperCase()}`);
|
|
49
58
|
console.log();
|
|
50
59
|
}
|
|
51
|
-
async function buildReport(schemaPath, mode =
|
|
60
|
+
async function buildReport(schemaPath, configPath, mode = 'doctor') {
|
|
52
61
|
const resolvedSchema = resolve(process.cwd(), schemaPath);
|
|
53
|
-
const
|
|
62
|
+
const resolvedConfig = resolve(process.cwd(), configPath);
|
|
63
|
+
const [schemaModels, schemaContent, configContent, packageManager] = await Promise.all([
|
|
54
64
|
readSchemaModels(resolvedSchema),
|
|
55
65
|
readSchemaContent(resolvedSchema),
|
|
66
|
+
readOptionalFile(resolvedConfig),
|
|
56
67
|
detectProjectPackageManager(),
|
|
57
68
|
]);
|
|
58
69
|
return createDiagnosticReport({
|
|
59
70
|
schemaModels,
|
|
60
71
|
schemaContent,
|
|
72
|
+
configContent,
|
|
61
73
|
env: process.env,
|
|
62
74
|
packageManager,
|
|
63
75
|
schemaPath,
|
|
@@ -66,48 +78,50 @@ async function buildReport(schemaPath, mode = "doctor") {
|
|
|
66
78
|
}
|
|
67
79
|
export function registerDoctorCommand(program) {
|
|
68
80
|
program
|
|
69
|
-
.command(
|
|
70
|
-
.description(
|
|
71
|
-
.option(
|
|
72
|
-
.option(
|
|
81
|
+
.command('doctor')
|
|
82
|
+
.description('Run AI-friendly preflight checks for an Actuate CMS project')
|
|
83
|
+
.option('--schema <path>', 'Path to schema.prisma', 'prisma/schema.prisma')
|
|
84
|
+
.option('--config <path>', 'Path to actuate.config.ts', 'actuate.config.ts')
|
|
85
|
+
.option('--json', 'Print machine-readable JSON')
|
|
73
86
|
.action(async (opts) => {
|
|
74
|
-
const report = await buildReport(opts.schema,
|
|
87
|
+
const report = await buildReport(opts.schema, opts.config, 'doctor');
|
|
75
88
|
if (opts.json) {
|
|
76
89
|
console.log(JSON.stringify(report, null, 2));
|
|
77
90
|
}
|
|
78
91
|
else {
|
|
79
|
-
printReport(
|
|
92
|
+
printReport('Actuate Doctor', report);
|
|
80
93
|
}
|
|
81
|
-
if (report.status ===
|
|
94
|
+
if (report.status === 'fail')
|
|
82
95
|
process.exitCode = 1;
|
|
83
96
|
});
|
|
84
97
|
}
|
|
85
98
|
export function registerDeployCheckCommand(program) {
|
|
86
99
|
program
|
|
87
|
-
.command(
|
|
88
|
-
.description(
|
|
89
|
-
.option(
|
|
90
|
-
.option(
|
|
100
|
+
.command('deploy:check')
|
|
101
|
+
.description('Check production deployment readiness for Actuate CMS')
|
|
102
|
+
.option('--schema <path>', 'Path to schema.prisma', 'prisma/schema.prisma')
|
|
103
|
+
.option('--config <path>', 'Path to actuate.config.ts', 'actuate.config.ts')
|
|
104
|
+
.option('--json', 'Print machine-readable JSON')
|
|
91
105
|
.action(async (opts) => {
|
|
92
|
-
const report = await buildReport(opts.schema,
|
|
106
|
+
const report = await buildReport(opts.schema, opts.config, 'deploy');
|
|
93
107
|
if (opts.json) {
|
|
94
108
|
console.log(JSON.stringify({ ...report, manifest: buildDeploymentManifest() }, null, 2));
|
|
95
109
|
}
|
|
96
110
|
else {
|
|
97
|
-
printReport(
|
|
98
|
-
console.log(chalk.dim(
|
|
111
|
+
printReport('Actuate Deploy Check', report);
|
|
112
|
+
console.log(chalk.dim('Run `actuate verify --full` after deployment succeeds.'));
|
|
99
113
|
}
|
|
100
|
-
if (report.status ===
|
|
114
|
+
if (report.status === 'fail')
|
|
101
115
|
process.exitCode = 1;
|
|
102
116
|
});
|
|
103
117
|
}
|
|
104
118
|
export function registerVerifyCommand(program) {
|
|
105
119
|
program
|
|
106
|
-
.command(
|
|
107
|
-
.description(
|
|
108
|
-
.option(
|
|
109
|
-
.option(
|
|
110
|
-
.option(
|
|
120
|
+
.command('verify')
|
|
121
|
+
.description('Verify an installed or deployed Actuate CMS project')
|
|
122
|
+
.option('--full', 'Run the full verification checklist')
|
|
123
|
+
.option('--url <origin>', 'Deployed site origin to verify, for example https://example.com')
|
|
124
|
+
.option('--json', 'Print the deployment manifest as JSON')
|
|
111
125
|
.action(async (opts) => {
|
|
112
126
|
const manifest = buildDeploymentManifest();
|
|
113
127
|
if (opts.json) {
|
|
@@ -115,20 +129,23 @@ export function registerVerifyCommand(program) {
|
|
|
115
129
|
return;
|
|
116
130
|
}
|
|
117
131
|
console.log();
|
|
118
|
-
console.log(chalk.bold(opts.full ?
|
|
119
|
-
console.log(chalk.dim(
|
|
132
|
+
console.log(chalk.bold(opts.full ? 'Actuate Full Verification' : 'Actuate Verification'));
|
|
133
|
+
console.log(chalk.dim('─────────────────────────────────'));
|
|
120
134
|
console.log(`PASS Manifest generated for ${manifest.packageScope} packages.`);
|
|
121
135
|
if (!opts.url) {
|
|
122
|
-
console.log(
|
|
123
|
-
console.log(chalk.dim(
|
|
136
|
+
console.log('WARN No --url provided, so remote health/admin endpoints were not checked.');
|
|
137
|
+
console.log(chalk.dim('Run `actuate verify --full --url https://your-site.com` after deployment.'));
|
|
124
138
|
console.log();
|
|
125
139
|
return;
|
|
126
140
|
}
|
|
127
|
-
const origin = opts.url.replace(/\/$/,
|
|
141
|
+
const origin = opts.url.replace(/\/$/, '');
|
|
128
142
|
const healthUrl = `${origin}${manifest.routes.apiHealth}`;
|
|
129
143
|
const adminUrl = `${origin}${manifest.routes.adminDefault}`;
|
|
130
144
|
let failed = false;
|
|
131
|
-
for (const [label, url] of [
|
|
145
|
+
for (const [label, url] of [
|
|
146
|
+
['Health', healthUrl],
|
|
147
|
+
['Admin', adminUrl],
|
|
148
|
+
]) {
|
|
132
149
|
try {
|
|
133
150
|
const response = await fetch(url, { method: 'GET' });
|
|
134
151
|
if (response.ok || response.status === 302 || response.status === 401) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA4GnC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAY5D"}
|
package/dist/commands/export.js
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { writeFile } from
|
|
2
|
-
import ora from
|
|
3
|
-
import { logger } from
|
|
1
|
+
import { writeFile } from 'node:fs/promises';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { logger } from '../utils/logger.js';
|
|
4
4
|
function buildOutputPath(options) {
|
|
5
5
|
if (options.output)
|
|
6
6
|
return options.output;
|
|
7
|
-
const timestamp = new Date().toISOString().replace(/[:.]/g,
|
|
8
|
-
const ext = options.format ===
|
|
7
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19);
|
|
8
|
+
const ext = options.format === 'csv' ? 'csv' : 'json';
|
|
9
9
|
return `actuate-export-${timestamp}.${ext}`;
|
|
10
10
|
}
|
|
11
11
|
function jsonToCsv(docs) {
|
|
12
12
|
if (docs.length === 0)
|
|
13
|
-
return
|
|
13
|
+
return '';
|
|
14
14
|
const keySet = new Set();
|
|
15
15
|
for (const doc of docs) {
|
|
16
|
-
keySet.add(
|
|
17
|
-
keySet.add(
|
|
18
|
-
keySet.add(
|
|
19
|
-
keySet.add(
|
|
20
|
-
keySet.add(
|
|
21
|
-
if (doc.data && typeof doc.data ===
|
|
16
|
+
keySet.add('id');
|
|
17
|
+
keySet.add('collection');
|
|
18
|
+
keySet.add('status');
|
|
19
|
+
keySet.add('createdAt');
|
|
20
|
+
keySet.add('updatedAt');
|
|
21
|
+
if (doc.data && typeof doc.data === 'object') {
|
|
22
22
|
for (const key of Object.keys(doc.data)) {
|
|
23
23
|
keySet.add(`data.${key}`);
|
|
24
24
|
}
|
|
@@ -27,9 +27,9 @@ function jsonToCsv(docs) {
|
|
|
27
27
|
const headers = Array.from(keySet);
|
|
28
28
|
const escapeCsvValue = (val) => {
|
|
29
29
|
if (val === null || val === undefined)
|
|
30
|
-
return
|
|
31
|
-
const str = typeof val ===
|
|
32
|
-
if (str.includes(
|
|
30
|
+
return '';
|
|
31
|
+
const str = typeof val === 'object' ? JSON.stringify(val) : String(val);
|
|
32
|
+
if (str.includes(',') || str.includes('"') || str.includes('\n')) {
|
|
33
33
|
return `"${str.replace(/"/g, '""')}"`;
|
|
34
34
|
}
|
|
35
35
|
return str;
|
|
@@ -37,50 +37,50 @@ function jsonToCsv(docs) {
|
|
|
37
37
|
const rows = docs.map((doc) => {
|
|
38
38
|
return headers
|
|
39
39
|
.map((header) => {
|
|
40
|
-
if (header.startsWith(
|
|
40
|
+
if (header.startsWith('data.')) {
|
|
41
41
|
const field = header.slice(5);
|
|
42
42
|
return escapeCsvValue(doc.data?.[field]);
|
|
43
43
|
}
|
|
44
44
|
return escapeCsvValue(doc[header]);
|
|
45
45
|
})
|
|
46
|
-
.join(
|
|
46
|
+
.join(',');
|
|
47
47
|
});
|
|
48
|
-
return [headers.join(
|
|
48
|
+
return [headers.join(','), ...rows].join('\n');
|
|
49
49
|
}
|
|
50
50
|
async function runExport(options) {
|
|
51
|
-
const target = options.collection ??
|
|
51
|
+
const target = options.collection ?? 'all collections';
|
|
52
52
|
const spinner = ora(`Exporting ${target}…`).start();
|
|
53
53
|
try {
|
|
54
|
-
const { getDB } = await import(
|
|
54
|
+
const { getDB } = await import('@actuate-media/cms-core');
|
|
55
55
|
const db = getDB();
|
|
56
56
|
const where = { deletedAt: null };
|
|
57
57
|
if (options.collection) {
|
|
58
58
|
where.collection = options.collection;
|
|
59
59
|
}
|
|
60
60
|
if (!options.includeDrafts) {
|
|
61
|
-
where.status =
|
|
61
|
+
where.status = 'PUBLISHED';
|
|
62
62
|
}
|
|
63
63
|
const docs = await db.document.findMany({
|
|
64
64
|
where,
|
|
65
|
-
orderBy: { createdAt:
|
|
65
|
+
orderBy: { createdAt: 'desc' },
|
|
66
66
|
});
|
|
67
67
|
if (docs.length === 0) {
|
|
68
|
-
spinner.warn(
|
|
68
|
+
spinner.warn('No documents found matching the criteria.');
|
|
69
69
|
return;
|
|
70
70
|
}
|
|
71
71
|
const outputPath = buildOutputPath(options);
|
|
72
72
|
let content;
|
|
73
|
-
if (options.format ===
|
|
73
|
+
if (options.format === 'csv') {
|
|
74
74
|
content = jsonToCsv(docs);
|
|
75
75
|
}
|
|
76
76
|
else {
|
|
77
77
|
content = JSON.stringify(docs, null, 2);
|
|
78
78
|
}
|
|
79
|
-
await writeFile(outputPath, content,
|
|
79
|
+
await writeFile(outputPath, content, 'utf-8');
|
|
80
80
|
spinner.succeed(`Exported ${docs.length} documents to ${outputPath}`);
|
|
81
81
|
}
|
|
82
82
|
catch (err) {
|
|
83
|
-
spinner.fail(
|
|
83
|
+
spinner.fail('Export failed.');
|
|
84
84
|
const message = err instanceof Error ? err.message : String(err);
|
|
85
85
|
logger.error(message);
|
|
86
86
|
process.exit(1);
|
|
@@ -88,12 +88,12 @@ async function runExport(options) {
|
|
|
88
88
|
}
|
|
89
89
|
export function registerExportCommand(program) {
|
|
90
90
|
program
|
|
91
|
-
.command(
|
|
92
|
-
.description(
|
|
93
|
-
.option(
|
|
94
|
-
.option(
|
|
95
|
-
.option(
|
|
96
|
-
.option(
|
|
91
|
+
.command('export')
|
|
92
|
+
.description('Export content to JSON or CSV files')
|
|
93
|
+
.option('-c, --collection <slug>', 'Export only the specified collection (default: all)')
|
|
94
|
+
.option('-f, --format <type>', 'Output format: json or csv', 'json')
|
|
95
|
+
.option('-o, --output <path>', 'Output file path (default: actuate-export-{timestamp}.{format})')
|
|
96
|
+
.option('--include-drafts', 'Include draft documents (default: published only)')
|
|
97
97
|
.action(runExport);
|
|
98
98
|
}
|
|
99
99
|
//# sourceMappingURL=export.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAoBnC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAK9D"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import ora from
|
|
2
|
-
import { logger } from
|
|
1
|
+
import ora from 'ora';
|
|
2
|
+
import { logger } from '../utils/logger.js';
|
|
3
3
|
async function runGenerate() {
|
|
4
|
-
const spinner = ora(
|
|
4
|
+
const spinner = ora('Generating TypeScript types from schema…').start();
|
|
5
5
|
try {
|
|
6
6
|
// Dynamically import the codegen module from cms-core
|
|
7
|
-
const { runCodegen } = await import(
|
|
7
|
+
const { runCodegen } = await import('@actuate-media/cms-core/codegen');
|
|
8
8
|
await runCodegen();
|
|
9
|
-
spinner.succeed(
|
|
9
|
+
spinner.succeed('Type generation complete.');
|
|
10
10
|
}
|
|
11
11
|
catch (err) {
|
|
12
|
-
spinner.fail(
|
|
12
|
+
spinner.fail('Type generation failed.');
|
|
13
13
|
const message = err instanceof Error ? err.message : String(err);
|
|
14
14
|
logger.error(message);
|
|
15
15
|
process.exitCode = 1;
|
|
@@ -17,8 +17,8 @@ async function runGenerate() {
|
|
|
17
17
|
}
|
|
18
18
|
export function registerGenerateCommand(program) {
|
|
19
19
|
program
|
|
20
|
-
.command(
|
|
21
|
-
.description(
|
|
20
|
+
.command('generate')
|
|
21
|
+
.description('Run the TypeScript type generator from the cms-core codegen module')
|
|
22
22
|
.action(runGenerate);
|
|
23
23
|
}
|
|
24
24
|
//# sourceMappingURL=generate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAE3C,KAAK,UAAU,WAAW;IACxB,MAAM,OAAO,GAAG,GAAG,CAAC,0CAA0C,CAAC,CAAC,KAAK,EAAE,CAAA;IAEvE,IAAI,CAAC;QACH,sDAAsD;QACtD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,iCAAiC,CAAC,CAAA;QACtE,MAAM,UAAU,EAAE,CAAA;QAClB,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAC9C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;QACvC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAChE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACrB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;IACtB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,oEAAoE,CAAC;SACjF,MAAM,CAAC,WAAW,CAAC,CAAA;AACxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/commands/import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/commands/import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA0NnC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS5D"}
|