@memberjunction/cli 3.4.0 → 4.1.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 +172 -832
- package/bin/dev.js +5 -6
- package/bin/run.js +14 -5
- package/dist/commands/ai/actions/list.d.ts +1 -0
- package/dist/commands/ai/actions/list.d.ts.map +1 -0
- package/dist/commands/ai/actions/list.js +14 -19
- package/dist/commands/ai/actions/list.js.map +1 -0
- package/dist/commands/ai/actions/run.d.ts +2 -1
- package/dist/commands/ai/actions/run.d.ts.map +1 -0
- package/dist/commands/ai/actions/run.js +24 -29
- package/dist/commands/ai/actions/run.js.map +1 -0
- package/dist/commands/ai/agents/list.d.ts +1 -0
- package/dist/commands/ai/agents/list.d.ts.map +1 -0
- package/dist/commands/ai/agents/list.js +14 -19
- package/dist/commands/ai/agents/list.js.map +1 -0
- package/dist/commands/ai/agents/run.d.ts +2 -1
- package/dist/commands/ai/agents/run.d.ts.map +1 -0
- package/dist/commands/ai/agents/run.js +20 -25
- package/dist/commands/ai/agents/run.js.map +1 -0
- package/dist/commands/ai/audit/agent-run.d.ts +7 -6
- package/dist/commands/ai/audit/agent-run.d.ts.map +1 -0
- package/dist/commands/ai/audit/agent-run.js +35 -63
- package/dist/commands/ai/audit/agent-run.js.map +1 -0
- package/dist/commands/ai/audit/index.d.ts +1 -0
- package/dist/commands/ai/audit/index.d.ts.map +1 -0
- package/dist/commands/ai/audit/index.js +5 -7
- package/dist/commands/ai/audit/index.js.map +1 -0
- package/dist/commands/ai/index.d.ts +1 -0
- package/dist/commands/ai/index.d.ts.map +1 -0
- package/dist/commands/ai/index.js +5 -7
- package/dist/commands/ai/index.js.map +1 -0
- package/dist/commands/ai/prompts/list.d.ts +1 -0
- package/dist/commands/ai/prompts/list.d.ts.map +1 -0
- package/dist/commands/ai/prompts/list.js +18 -23
- package/dist/commands/ai/prompts/list.js.map +1 -0
- package/dist/commands/ai/prompts/run.d.ts +6 -5
- package/dist/commands/ai/prompts/run.d.ts.map +1 -0
- package/dist/commands/ai/prompts/run.js +22 -27
- package/dist/commands/ai/prompts/run.js.map +1 -0
- package/dist/commands/bump/index.d.ts +2 -1
- package/dist/commands/bump/index.d.ts.map +1 -0
- package/dist/commands/bump/index.js +24 -52
- package/dist/commands/bump/index.js.map +1 -0
- package/dist/commands/clean/index.d.ts +3 -2
- package/dist/commands/clean/index.d.ts.map +1 -0
- package/dist/commands/clean/index.js +16 -22
- package/dist/commands/clean/index.js.map +1 -0
- package/dist/commands/codegen/index.d.ts +3 -2
- package/dist/commands/codegen/index.d.ts.map +1 -0
- package/dist/commands/codegen/index.js +14 -17
- package/dist/commands/codegen/index.js.map +1 -0
- package/dist/commands/codegen/manifest.d.ts +5 -2
- package/dist/commands/codegen/manifest.d.ts.map +1 -0
- package/dist/commands/codegen/manifest.js +35 -24
- package/dist/commands/codegen/manifest.js.map +1 -0
- package/dist/commands/dbdoc/analyze.d.ts +2 -1
- package/dist/commands/dbdoc/analyze.d.ts.map +1 -0
- package/dist/commands/dbdoc/analyze.js +11 -36
- package/dist/commands/dbdoc/analyze.js.map +1 -0
- package/dist/commands/dbdoc/export-sample-queries.d.ts +2 -1
- package/dist/commands/dbdoc/export-sample-queries.d.ts.map +1 -0
- package/dist/commands/dbdoc/export-sample-queries.js +19 -44
- package/dist/commands/dbdoc/export-sample-queries.js.map +1 -0
- package/dist/commands/dbdoc/export.d.ts +3 -2
- package/dist/commands/dbdoc/export.d.ts.map +1 -0
- package/dist/commands/dbdoc/export.js +20 -45
- package/dist/commands/dbdoc/export.js.map +1 -0
- package/dist/commands/dbdoc/generate-queries.d.ts +4 -3
- package/dist/commands/dbdoc/generate-queries.d.ts.map +1 -0
- package/dist/commands/dbdoc/generate-queries.js +14 -39
- package/dist/commands/dbdoc/generate-queries.js.map +1 -0
- package/dist/commands/dbdoc/index.d.ts +1 -0
- package/dist/commands/dbdoc/index.d.ts.map +1 -0
- package/dist/commands/dbdoc/index.js +5 -7
- package/dist/commands/dbdoc/index.js.map +1 -0
- package/dist/commands/dbdoc/init.d.ts +1 -0
- package/dist/commands/dbdoc/init.d.ts.map +1 -0
- package/dist/commands/dbdoc/init.js +7 -32
- package/dist/commands/dbdoc/init.js.map +1 -0
- package/dist/commands/dbdoc/reset.d.ts +1 -0
- package/dist/commands/dbdoc/reset.d.ts.map +1 -0
- package/dist/commands/dbdoc/reset.js +10 -35
- package/dist/commands/dbdoc/reset.js.map +1 -0
- package/dist/commands/dbdoc/status.d.ts +2 -1
- package/dist/commands/dbdoc/status.d.ts.map +1 -0
- package/dist/commands/dbdoc/status.js +10 -35
- package/dist/commands/dbdoc/status.js.map +1 -0
- package/dist/commands/install/index.d.ts +76 -75
- package/dist/commands/install/index.d.ts.map +1 -0
- package/dist/commands/install/index.js +81 -111
- package/dist/commands/install/index.js.map +1 -0
- package/dist/commands/migrate/index.d.ts +4 -3
- package/dist/commands/migrate/index.d.ts.map +1 -0
- package/dist/commands/migrate/index.js +23 -27
- package/dist/commands/migrate/index.js.map +1 -0
- package/dist/commands/querygen/export.d.ts +1 -0
- package/dist/commands/querygen/export.d.ts.map +1 -0
- package/dist/commands/querygen/export.js +15 -17
- package/dist/commands/querygen/export.js.map +1 -0
- package/dist/commands/querygen/generate.d.ts +8 -7
- package/dist/commands/querygen/generate.d.ts.map +1 -0
- package/dist/commands/querygen/generate.js +28 -30
- package/dist/commands/querygen/generate.js.map +1 -0
- package/dist/commands/querygen/validate.d.ts +1 -0
- package/dist/commands/querygen/validate.d.ts.map +1 -0
- package/dist/commands/querygen/validate.js +15 -17
- package/dist/commands/querygen/validate.js.map +1 -0
- package/dist/commands/sync/file-reset.d.ts +3 -2
- package/dist/commands/sync/file-reset.d.ts.map +1 -0
- package/dist/commands/sync/file-reset.js +36 -64
- package/dist/commands/sync/file-reset.js.map +1 -0
- package/dist/commands/sync/init.d.ts +1 -0
- package/dist/commands/sync/init.d.ts.map +1 -0
- package/dist/commands/sync/init.js +16 -21
- package/dist/commands/sync/init.js.map +1 -0
- package/dist/commands/sync/pull.d.ts +7 -6
- package/dist/commands/sync/pull.d.ts.map +1 -0
- package/dist/commands/sync/pull.js +46 -51
- package/dist/commands/sync/pull.js.map +1 -0
- package/dist/commands/sync/push.d.ts +5 -3
- package/dist/commands/sync/push.d.ts.map +1 -0
- package/dist/commands/sync/push.js +49 -49
- package/dist/commands/sync/push.js.map +1 -0
- package/dist/commands/sync/status.d.ts +4 -3
- package/dist/commands/sync/status.d.ts.map +1 -0
- package/dist/commands/sync/status.js +28 -33
- package/dist/commands/sync/status.js.map +1 -0
- package/dist/commands/sync/validate.d.ts +3 -2
- package/dist/commands/sync/validate.d.ts.map +1 -0
- package/dist/commands/sync/validate.js +31 -59
- package/dist/commands/sync/validate.js.map +1 -0
- package/dist/commands/sync/watch.d.ts +3 -2
- package/dist/commands/sync/watch.d.ts.map +1 -0
- package/dist/commands/sync/watch.js +34 -63
- package/dist/commands/sync/watch.js.map +1 -0
- package/dist/commands/test/compare.d.ts +6 -5
- package/dist/commands/test/compare.d.ts.map +1 -0
- package/dist/commands/test/compare.js +20 -22
- package/dist/commands/test/compare.js.map +1 -0
- package/dist/commands/test/history.d.ts +6 -5
- package/dist/commands/test/history.d.ts.map +1 -0
- package/dist/commands/test/history.js +17 -19
- package/dist/commands/test/history.js.map +1 -0
- package/dist/commands/test/index.d.ts +1 -0
- package/dist/commands/test/index.d.ts.map +1 -0
- package/dist/commands/test/index.js +6 -8
- package/dist/commands/test/index.js.map +1 -0
- package/dist/commands/test/list.d.ts +5 -4
- package/dist/commands/test/list.d.ts.map +1 -0
- package/dist/commands/test/list.js +18 -20
- package/dist/commands/test/list.js.map +1 -0
- package/dist/commands/test/run.d.ts +5 -4
- package/dist/commands/test/run.d.ts.map +1 -0
- package/dist/commands/test/run.js +19 -21
- package/dist/commands/test/run.js.map +1 -0
- package/dist/commands/test/suite.d.ts +4 -3
- package/dist/commands/test/suite.d.ts.map +1 -0
- package/dist/commands/test/suite.js +17 -19
- package/dist/commands/test/suite.js.map +1 -0
- package/dist/commands/test/validate.d.ts +4 -3
- package/dist/commands/test/validate.d.ts.map +1 -0
- package/dist/commands/test/validate.js +19 -21
- package/dist/commands/test/validate.js.map +1 -0
- package/dist/config.d.ts +54 -86
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +55 -61
- package/dist/config.js.map +1 -0
- package/dist/hooks/init.d.ts +1 -0
- package/dist/hooks/init.d.ts.map +1 -0
- package/dist/hooks/init.js +5 -29
- package/dist/hooks/init.js.map +1 -0
- package/dist/hooks/prerun.d.ts +1 -0
- package/dist/hooks/prerun.d.ts.map +1 -0
- package/dist/hooks/prerun.js +4 -8
- package/dist/hooks/prerun.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -5
- package/dist/index.js.map +1 -0
- package/oclif.manifest.json +96 -74
- package/package.json +32 -30
|
@@ -1,63 +1,62 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const metadata_sync_1 = require("@memberjunction/metadata-sync");
|
|
11
|
-
const path_1 = __importDefault(require("path"));
|
|
12
|
-
class Push extends core_1.Command {
|
|
13
|
-
static description = 'Push local file changes to the database';
|
|
14
|
-
static examples = [
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import { confirm } from '@inquirer/prompts';
|
|
3
|
+
import ora from 'ora-classic';
|
|
4
|
+
import chalk from 'chalk';
|
|
5
|
+
import { PushService, ValidationService, FormattingService, loadMJConfig, loadSyncConfig, initializeProvider, getSyncEngine, getSystemUser, resetSyncEngine, configManager, } from '@memberjunction/metadata-sync';
|
|
6
|
+
import path from 'path';
|
|
7
|
+
export default class Push extends Command {
|
|
8
|
+
static { this.description = 'Push local file changes to the database'; }
|
|
9
|
+
static { this.examples = [
|
|
15
10
|
`<%= config.bin %> <%= command.id %>`,
|
|
16
11
|
`<%= config.bin %> <%= command.id %> --dry-run`,
|
|
17
12
|
`<%= config.bin %> <%= command.id %> --dir="ai-prompts"`,
|
|
18
13
|
`<%= config.bin %> <%= command.id %> --ci`,
|
|
19
|
-
];
|
|
20
|
-
static flags = {
|
|
21
|
-
dir:
|
|
22
|
-
'dry-run':
|
|
23
|
-
ci:
|
|
24
|
-
verbose:
|
|
25
|
-
'no-validate':
|
|
26
|
-
'
|
|
14
|
+
]; }
|
|
15
|
+
static { this.flags = {
|
|
16
|
+
dir: Flags.string({ description: 'Specific entity directory to push' }),
|
|
17
|
+
'dry-run': Flags.boolean({ description: 'Show what would be pushed without actually pushing' }),
|
|
18
|
+
ci: Flags.boolean({ description: 'CI mode - no prompts, fail on issues' }),
|
|
19
|
+
verbose: Flags.boolean({ char: 'v', description: 'Show detailed field-level output' }),
|
|
20
|
+
'no-validate': Flags.boolean({ description: 'Skip validation before push' }),
|
|
21
|
+
'delete-db-only': Flags.boolean({
|
|
22
|
+
description: 'Delete database-only records that reference records being deleted (prevents FK errors)',
|
|
23
|
+
default: false
|
|
24
|
+
}),
|
|
25
|
+
'parallel-batch-size': Flags.integer({
|
|
27
26
|
description: 'Number of records to process in parallel (default: 10)',
|
|
28
27
|
default: 10,
|
|
29
28
|
min: 1,
|
|
30
29
|
max: 50
|
|
31
30
|
}),
|
|
32
|
-
include:
|
|
31
|
+
include: Flags.string({
|
|
33
32
|
description: 'Only process these directories (comma-separated, supports patterns)',
|
|
34
33
|
multiple: false
|
|
35
34
|
}),
|
|
36
|
-
exclude:
|
|
35
|
+
exclude: Flags.string({
|
|
37
36
|
description: 'Skip these directories (comma-separated, supports patterns)',
|
|
38
37
|
multiple: false
|
|
39
38
|
}),
|
|
40
|
-
};
|
|
39
|
+
}; }
|
|
41
40
|
async run() {
|
|
42
41
|
const { flags } = await this.parse(Push);
|
|
43
|
-
const spinner = (
|
|
42
|
+
const spinner = ora();
|
|
44
43
|
const startTime = Date.now();
|
|
45
44
|
try {
|
|
46
45
|
// Load configurations
|
|
47
46
|
spinner.start('Loading configuration');
|
|
48
|
-
const mjConfig =
|
|
47
|
+
const mjConfig = loadMJConfig();
|
|
49
48
|
if (!mjConfig) {
|
|
50
49
|
this.error('No mj.config.cjs found in current directory or parent directories');
|
|
51
50
|
}
|
|
52
51
|
// Load sync config (currently only used internally by PushService)
|
|
53
|
-
const syncConfigDir = flags.dir ?
|
|
54
|
-
await
|
|
52
|
+
const syncConfigDir = flags.dir ? path.resolve(configManager.getOriginalCwd(), flags.dir) : configManager.getOriginalCwd();
|
|
53
|
+
await loadSyncConfig(syncConfigDir);
|
|
55
54
|
// Stop spinner before provider initialization
|
|
56
55
|
spinner.stop();
|
|
57
56
|
// Initialize data provider
|
|
58
|
-
await
|
|
57
|
+
await initializeProvider(mjConfig);
|
|
59
58
|
// Initialize sync engine
|
|
60
|
-
const syncEngine = await
|
|
59
|
+
const syncEngine = await getSyncEngine(getSystemUser());
|
|
61
60
|
// Show success after initialization
|
|
62
61
|
if (flags.verbose) {
|
|
63
62
|
spinner.succeed('Configuration and metadata loaded');
|
|
@@ -71,13 +70,13 @@ class Push extends core_1.Command {
|
|
|
71
70
|
// Run validation unless disabled
|
|
72
71
|
if (!flags['no-validate']) {
|
|
73
72
|
spinner.start('Validating metadata...');
|
|
74
|
-
const validator = new
|
|
73
|
+
const validator = new ValidationService({
|
|
75
74
|
verbose: flags.verbose,
|
|
76
75
|
include: includeFilter,
|
|
77
76
|
exclude: excludeFilter
|
|
78
77
|
});
|
|
79
|
-
const formatter = new
|
|
80
|
-
const targetDir = flags.dir ?
|
|
78
|
+
const formatter = new FormattingService();
|
|
79
|
+
const targetDir = flags.dir ? path.resolve(configManager.getOriginalCwd(), flags.dir) : configManager.getOriginalCwd();
|
|
81
80
|
const validationResult = await validator.validateDirectory(targetDir);
|
|
82
81
|
spinner.stop();
|
|
83
82
|
if (!validationResult.isValid || validationResult.warnings.length > 0) {
|
|
@@ -89,28 +88,29 @@ class Push extends core_1.Command {
|
|
|
89
88
|
this.error('Validation failed. Cannot proceed with push.');
|
|
90
89
|
}
|
|
91
90
|
// Otherwise, ask for confirmation
|
|
92
|
-
const shouldContinue = await
|
|
91
|
+
const shouldContinue = await confirm({
|
|
93
92
|
message: 'Validation failed with errors. Do you want to continue anyway?',
|
|
94
93
|
default: false,
|
|
95
94
|
});
|
|
96
95
|
if (!shouldContinue) {
|
|
97
|
-
this.log(
|
|
96
|
+
this.log(chalk.yellow('\n⚠️ Push cancelled due to validation errors.'));
|
|
98
97
|
// Exit cleanly without throwing an error
|
|
99
98
|
return;
|
|
100
99
|
}
|
|
101
100
|
}
|
|
102
101
|
}
|
|
103
102
|
else {
|
|
104
|
-
this.log(
|
|
103
|
+
this.log(chalk.green('✓ Validation passed'));
|
|
105
104
|
}
|
|
106
105
|
}
|
|
107
106
|
// Create push service and execute
|
|
108
|
-
const pushService = new
|
|
107
|
+
const pushService = new PushService(syncEngine, getSystemUser());
|
|
109
108
|
const result = await pushService.push({
|
|
110
109
|
dir: flags.dir,
|
|
111
110
|
dryRun: flags['dry-run'],
|
|
112
111
|
verbose: flags.verbose,
|
|
113
112
|
noValidate: flags['no-validate'],
|
|
113
|
+
deleteDbOnly: flags['delete-db-only'],
|
|
114
114
|
parallelBatchSize: flags['parallel-batch-size'],
|
|
115
115
|
include: includeFilter,
|
|
116
116
|
exclude: excludeFilter,
|
|
@@ -148,7 +148,7 @@ class Push extends core_1.Command {
|
|
|
148
148
|
const isUserFriendly = userFriendlyPatterns.some(pattern => message.includes(pattern));
|
|
149
149
|
if (isUserFriendly) {
|
|
150
150
|
// Log as a styled warning without stack trace
|
|
151
|
-
this.log(
|
|
151
|
+
this.log(chalk.yellow(message));
|
|
152
152
|
}
|
|
153
153
|
else {
|
|
154
154
|
// Use standard warn for unexpected warnings that need debugging info
|
|
@@ -162,12 +162,12 @@ class Push extends core_1.Command {
|
|
|
162
162
|
if (flags.ci) {
|
|
163
163
|
return true; // Always confirm in CI mode
|
|
164
164
|
}
|
|
165
|
-
return await
|
|
165
|
+
return await confirm({ message });
|
|
166
166
|
},
|
|
167
167
|
});
|
|
168
168
|
// Show summary
|
|
169
169
|
const endTime = Date.now();
|
|
170
|
-
const formatter = new
|
|
170
|
+
const formatter = new FormattingService();
|
|
171
171
|
const summary = formatter.formatSyncSummary('push', {
|
|
172
172
|
created: result.created,
|
|
173
173
|
updated: result.updated,
|
|
@@ -184,7 +184,7 @@ class Push extends core_1.Command {
|
|
|
184
184
|
if (flags.ci) {
|
|
185
185
|
this.error('Push failed with errors in CI mode');
|
|
186
186
|
}
|
|
187
|
-
const shouldContinue = await
|
|
187
|
+
const shouldContinue = await confirm({
|
|
188
188
|
message: 'Push completed with errors. Do you want to commit the successful changes?',
|
|
189
189
|
default: false,
|
|
190
190
|
});
|
|
@@ -194,7 +194,7 @@ class Push extends core_1.Command {
|
|
|
194
194
|
}
|
|
195
195
|
// Show warnings summary
|
|
196
196
|
if (result.warnings.length > 0) {
|
|
197
|
-
this.log(
|
|
197
|
+
this.log(chalk.yellow(`\n⚠️ ${result.warnings.length} warning${result.warnings.length > 1 ? 's' : ''} during push`));
|
|
198
198
|
if (flags.verbose) {
|
|
199
199
|
result.warnings.forEach((warning) => this.log(` - ${warning}`));
|
|
200
200
|
}
|
|
@@ -202,13 +202,13 @@ class Push extends core_1.Command {
|
|
|
202
202
|
// Show final status
|
|
203
203
|
if (!flags['dry-run']) {
|
|
204
204
|
if (result.errors === 0) {
|
|
205
|
-
this.log(
|
|
205
|
+
this.log(chalk.green('\n✅ Push completed successfully'));
|
|
206
206
|
}
|
|
207
207
|
else {
|
|
208
|
-
this.log(
|
|
208
|
+
this.log(chalk.yellow('\n⚠️ Push completed with errors'));
|
|
209
209
|
}
|
|
210
210
|
if (result.sqlLogPath) {
|
|
211
|
-
this.log(`\n📄 SQL log saved to: ${
|
|
211
|
+
this.log(`\n📄 SQL log saved to: ${path.relative(process.cwd(), result.sqlLogPath)}`);
|
|
212
212
|
}
|
|
213
213
|
}
|
|
214
214
|
}
|
|
@@ -216,14 +216,14 @@ class Push extends core_1.Command {
|
|
|
216
216
|
spinner.fail('Push failed');
|
|
217
217
|
// Show concise error message without duplicate stack traces
|
|
218
218
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
219
|
-
this.log(
|
|
219
|
+
this.log(chalk.red(`\n❌ Error: ${errorMessage}\n`));
|
|
220
220
|
// Exit with error code but don't show stack trace again (already logged by handlers)
|
|
221
221
|
this.exit(1);
|
|
222
222
|
}
|
|
223
223
|
finally {
|
|
224
224
|
// Reset singletons
|
|
225
|
-
|
|
225
|
+
resetSyncEngine();
|
|
226
226
|
}
|
|
227
227
|
}
|
|
228
228
|
}
|
|
229
|
-
|
|
229
|
+
//# sourceMappingURL=push.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/commands/sync/push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,eAAe,EACf,aAAa,GACd,MAAM,+BAA+B,CAAC;AACvC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;aAChC,gBAAW,GAAG,yCAAyC,CAAC;aAExD,aAAQ,GAAG;QAChB,qCAAqC;QACrC,+CAA+C;QAC/C,wDAAwD;QACxD,0CAA0C;KAC3C,CAAC;aAEK,UAAK,GAAG;QACb,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,mCAAmC,EAAE,CAAC;QACvE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,oDAAoD,EAAE,CAAC;QAC/F,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;QAC1E,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC;QACtF,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,6BAA6B,EAAE,CAAC;QAC5E,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC;YAC9B,WAAW,EAAE,wFAAwF;YACrG,OAAO,EAAE,KAAK;SACf,CAAC;QACF,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC;YACnC,WAAW,EAAE,wDAAwD;YACrE,OAAO,EAAE,EAAE;YACX,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,EAAE;SACR,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;YACpB,WAAW,EAAE,qEAAqE;YAClF,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;YACpB,WAAW,EAAE,6DAA6D;YAC1E,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACH,sBAAsB;YACtB,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YACvC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;YAClF,CAAC;YAED,mEAAmE;YACnE,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;YAC3H,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;YAEpC,8CAA8C;YAC9C,OAAO,CAAC,IAAI,EAAE,CAAC;YAEf,2BAA2B;YAC3B,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAEnC,yBAAyB;YACzB,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,aAAa,EAAE,CAAC,CAAC;YAExD,oCAAoC;YACpC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,CAAC;YAED,gCAAgC;YAChC,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9F,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAE9F,iCAAiC;YACjC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBACxC,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC;oBACtC,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE,aAAa;iBACvB,CAAC,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;gBAE1C,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;gBACvH,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBACtE,OAAO,CAAC,IAAI,EAAE,CAAC;gBAEf,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtE,0BAA0B;oBAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;oBAEnF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;wBAC9B,+BAA+B;wBAC/B,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;4BACb,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;wBAC7D,CAAC;wBAED,kCAAkC;wBAClC,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC;4BACnC,OAAO,EAAE,gEAAgE;4BACzE,OAAO,EAAE,KAAK;yBACf,CAAC,CAAC;wBAEH,IAAI,CAAC,cAAc,EAAE,CAAC;4BACpB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAAC,CAAC;4BACzE,yCAAyC;4BACzC,OAAO;wBACT,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;YAED,kCAAkC;YAClC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;YAEjE,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CACnC;gBACE,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC;gBAChC,YAAY,EAAE,KAAK,CAAC,gBAAgB,CAAC;gBACrC,iBAAiB,EAAE,KAAK,CAAC,qBAAqB,CAAC;gBAC/C,OAAO,EAAE,aAAa;gBACtB,OAAO,EAAE,aAAa;aACvB,EACD;gBACE,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;oBACtB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;gBACD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;oBACrB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;oBACnB,qDAAqD;oBACrD,IAAI,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;wBAC9F,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACxB,CAAC;yBAAM,CAAC;wBACN,6CAA6C;wBAC7C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACtB,CAAC;gBACH,CAAC;gBACD,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;oBAClB,2EAA2E;oBAC3E,MAAM,oBAAoB,GAAG;wBAC3B,mBAAmB;wBACnB,gCAAgC;wBAChC,gCAAgC;wBAChC,UAAU;wBACV,0BAA0B;wBAC1B,iCAAiC;wBACjC,wDAAwD;wBACxD,qCAAqC;wBACrC,gCAAgC;wBAChC,8CAA8C;qBAC/C,CAAC;oBAEF,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC1B,CAAC;oBAEF,IAAI,cAAc,EAAE,CAAC;wBACnB,8CAA8C;wBAC9C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;oBAClC,CAAC;yBAAM,CAAC;wBACN,qEAAqE;wBACrE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACrB,CAAC;gBACH,CAAC;gBACD,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE;oBACjB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACpB,CAAC;gBACD,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBAC3B,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;wBACb,OAAO,IAAI,CAAC,CAAC,4BAA4B;oBAC3C,CAAC;oBACD,OAAO,MAAM,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;gBACpC,CAAC;aACF,CACF,CAAC;YAEF,eAAe;YACf,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE;gBAClD,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC;gBAC5B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC;gBAC5B,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,CAAC;gBAC9B,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,OAAO,GAAG,SAAS;aAC9B,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;YAEzB,gBAAgB;YAChB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;oBACb,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACnD,CAAC;gBAED,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC;oBACnC,OAAO,EAAE,2EAA2E;oBACpF,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBAEH,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YAED,wBAAwB;YACxB,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,QAAQ,CAAC,MAAM,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;gBACtH,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;oBAClB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YAED,oBAAoB;YACpB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;gBAC3D,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC,CAAC;gBAC7D,CAAC;gBAED,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;oBACtB,IAAI,CAAC,GAAG,CAAC,0BAA0B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACxF,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAE5B,4DAA4D;YAC5D,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,YAAY,IAAI,CAAC,CAAC,CAAC;YAEpD,qFAAqF;YACrF,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACf,CAAC;gBAAS,CAAC;YACT,mBAAmB;YACnB,eAAe,EAAE,CAAC;QACpB,CAAC;IACH,CAAC"}
|
|
@@ -3,10 +3,11 @@ export default class Status extends Command {
|
|
|
3
3
|
static description: string;
|
|
4
4
|
static examples: string[];
|
|
5
5
|
static flags: {
|
|
6
|
-
dir: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
6
|
+
dir: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
7
7
|
verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
8
|
-
include: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
9
|
-
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
8
|
+
include: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
10
|
};
|
|
11
11
|
run(): Promise<void>;
|
|
12
12
|
}
|
|
13
|
+
//# sourceMappingURL=status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAa7C,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,OAAO;IACzC,MAAM,CAAC,WAAW,SAA4C;IAE9D,MAAM,CAAC,QAAQ,WAIb;IAEF,MAAM,CAAC,KAAK;;;;;MAWV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA2G3B"}
|
|
@@ -1,47 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const metadata_sync_1 = require("@memberjunction/metadata-sync");
|
|
10
|
-
class Status extends core_1.Command {
|
|
11
|
-
static description = 'Show status of local files vs database';
|
|
12
|
-
static examples = [
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import ora from 'ora-classic';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import { StatusService, loadMJConfig, initializeProvider, getSyncEngine, getSystemUser, resetSyncEngine } from '@memberjunction/metadata-sync';
|
|
5
|
+
export default class Status extends Command {
|
|
6
|
+
static { this.description = 'Show status of local files vs database'; }
|
|
7
|
+
static { this.examples = [
|
|
13
8
|
`<%= config.bin %> <%= command.id %>`,
|
|
14
9
|
`<%= config.bin %> <%= command.id %> --dir="ai-prompts"`,
|
|
15
10
|
`<%= config.bin %> <%= command.id %> --verbose`,
|
|
16
|
-
];
|
|
17
|
-
static flags = {
|
|
18
|
-
dir:
|
|
19
|
-
verbose:
|
|
20
|
-
include:
|
|
11
|
+
]; }
|
|
12
|
+
static { this.flags = {
|
|
13
|
+
dir: Flags.string({ description: 'Specific entity directory to check status' }),
|
|
14
|
+
verbose: Flags.boolean({ char: 'v', description: 'Show detailed field-level differences' }),
|
|
15
|
+
include: Flags.string({
|
|
21
16
|
description: 'Only process these directories (comma-separated, supports patterns)',
|
|
22
17
|
multiple: false
|
|
23
18
|
}),
|
|
24
|
-
exclude:
|
|
19
|
+
exclude: Flags.string({
|
|
25
20
|
description: 'Skip these directories (comma-separated, supports patterns)',
|
|
26
21
|
multiple: false
|
|
27
22
|
}),
|
|
28
|
-
};
|
|
23
|
+
}; }
|
|
29
24
|
async run() {
|
|
30
25
|
const { flags } = await this.parse(Status);
|
|
31
|
-
const spinner = (
|
|
26
|
+
const spinner = ora();
|
|
32
27
|
try {
|
|
33
28
|
// Load configuration
|
|
34
29
|
spinner.start('Loading configuration');
|
|
35
|
-
const mjConfig =
|
|
30
|
+
const mjConfig = loadMJConfig();
|
|
36
31
|
if (!mjConfig) {
|
|
37
32
|
this.error('No mj.config.cjs found in current directory or parent directories');
|
|
38
33
|
}
|
|
39
34
|
// Stop spinner before provider initialization
|
|
40
35
|
spinner.stop();
|
|
41
36
|
// Initialize data provider
|
|
42
|
-
await
|
|
37
|
+
await initializeProvider(mjConfig);
|
|
43
38
|
// Initialize sync engine
|
|
44
|
-
const syncEngine = await
|
|
39
|
+
const syncEngine = await getSyncEngine(getSystemUser());
|
|
45
40
|
// Show success after initialization
|
|
46
41
|
if (flags.verbose) {
|
|
47
42
|
spinner.succeed('Configuration and metadata loaded');
|
|
@@ -53,7 +48,7 @@ class Status extends core_1.Command {
|
|
|
53
48
|
const includeFilter = flags.include ? flags.include.split(',').map(s => s.trim()) : undefined;
|
|
54
49
|
const excludeFilter = flags.exclude ? flags.exclude.split(',').map(s => s.trim()) : undefined;
|
|
55
50
|
// Create status service and execute
|
|
56
|
-
const statusService = new
|
|
51
|
+
const statusService = new StatusService(syncEngine);
|
|
57
52
|
spinner.start('Checking status...');
|
|
58
53
|
const result = await statusService.checkStatus({
|
|
59
54
|
dir: flags.dir,
|
|
@@ -76,25 +71,25 @@ class Status extends core_1.Command {
|
|
|
76
71
|
const summary = result.summary;
|
|
77
72
|
const totalFiles = summary.new + summary.modified + summary.deleted + summary.unchanged;
|
|
78
73
|
if (totalFiles === 0) {
|
|
79
|
-
this.log(
|
|
74
|
+
this.log(chalk.yellow('\nNo metadata files found in the specified directory.'));
|
|
80
75
|
}
|
|
81
76
|
else {
|
|
82
|
-
this.log(
|
|
77
|
+
this.log(chalk.bold('\nSummary:'));
|
|
83
78
|
if (summary.new > 0) {
|
|
84
|
-
this.log(
|
|
79
|
+
this.log(chalk.green(` ${summary.new} new file(s) to push`));
|
|
85
80
|
}
|
|
86
81
|
if (summary.modified > 0) {
|
|
87
|
-
this.log(
|
|
82
|
+
this.log(chalk.yellow(` ${summary.modified} modified file(s) to push`));
|
|
88
83
|
}
|
|
89
84
|
if (summary.deleted > 0) {
|
|
90
|
-
this.log(
|
|
85
|
+
this.log(chalk.red(` ${summary.deleted} deleted file(s) to remove`));
|
|
91
86
|
}
|
|
92
87
|
if (summary.unchanged > 0) {
|
|
93
|
-
this.log(
|
|
88
|
+
this.log(chalk.gray(` ${summary.unchanged} unchanged file(s)`));
|
|
94
89
|
}
|
|
95
90
|
// Show details by entity if verbose
|
|
96
91
|
if (flags.verbose && result.details.length > 0) {
|
|
97
|
-
this.log(
|
|
92
|
+
this.log(chalk.bold('\nDetails by entity:'));
|
|
98
93
|
for (const detail of result.details) {
|
|
99
94
|
this.log(`\n ${detail.entityName} (${detail.directory}):`);
|
|
100
95
|
this.log(` New: ${detail.new}, Modified: ${detail.modified}, Deleted: ${detail.deleted}, Unchanged: ${detail.unchanged}`);
|
|
@@ -116,8 +111,8 @@ class Status extends core_1.Command {
|
|
|
116
111
|
}
|
|
117
112
|
finally {
|
|
118
113
|
// Reset singletons
|
|
119
|
-
|
|
114
|
+
resetSyncEngine();
|
|
120
115
|
}
|
|
121
116
|
}
|
|
122
117
|
}
|
|
123
|
-
|
|
118
|
+
//# sourceMappingURL=status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/sync/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,11 @@ export default class Validate extends Command {
|
|
|
3
3
|
static description: string;
|
|
4
4
|
static examples: string[];
|
|
5
5
|
static flags: {
|
|
6
|
-
dir: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
6
|
+
dir: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
7
7
|
verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
8
8
|
'save-report': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
9
|
-
output: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
9
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
10
|
};
|
|
11
11
|
run(): Promise<void>;
|
|
12
12
|
}
|
|
13
|
+
//# sourceMappingURL=validate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAgB7C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAC,WAAW,SAA6B;IAE/C,MAAM,CAAC,QAAQ,WAKb;IAEF,MAAM,CAAC,KAAK;;;;;MAKV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA+F3B"}
|
|
@@ -1,67 +1,39 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const core_1 = require("@oclif/core");
|
|
30
|
-
const ora_classic_1 = __importDefault(require("ora-classic"));
|
|
31
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
32
|
-
const path = __importStar(require("path"));
|
|
33
|
-
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
34
|
-
const metadata_sync_1 = require("@memberjunction/metadata-sync");
|
|
35
|
-
class Validate extends core_1.Command {
|
|
36
|
-
static description = 'Validate metadata files';
|
|
37
|
-
static examples = [
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import ora from 'ora-classic';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import * as path from 'path';
|
|
5
|
+
import fs from 'fs-extra';
|
|
6
|
+
import { ValidationService, FormattingService, loadMJConfig, initializeProvider, getSyncEngine, getSystemUser, resetSyncEngine, configManager } from '@memberjunction/metadata-sync';
|
|
7
|
+
export default class Validate extends Command {
|
|
8
|
+
static { this.description = 'Validate metadata files'; }
|
|
9
|
+
static { this.examples = [
|
|
38
10
|
`<%= config.bin %> <%= command.id %>`,
|
|
39
11
|
`<%= config.bin %> <%= command.id %> --dir="ai-prompts"`,
|
|
40
12
|
`<%= config.bin %> <%= command.id %> --save-report`,
|
|
41
13
|
`<%= config.bin %> <%= command.id %> --verbose`,
|
|
42
|
-
];
|
|
43
|
-
static flags = {
|
|
44
|
-
dir:
|
|
45
|
-
verbose:
|
|
46
|
-
'save-report':
|
|
47
|
-
'output':
|
|
48
|
-
};
|
|
14
|
+
]; }
|
|
15
|
+
static { this.flags = {
|
|
16
|
+
dir: Flags.string({ description: 'Specific entity directory to validate' }),
|
|
17
|
+
verbose: Flags.boolean({ char: 'v', description: 'Show detailed validation output' }),
|
|
18
|
+
'save-report': Flags.boolean({ description: 'Save validation report as markdown file' }),
|
|
19
|
+
'output': Flags.string({ description: 'Output file path for validation report (default: validation-report.md)' }),
|
|
20
|
+
}; }
|
|
49
21
|
async run() {
|
|
50
22
|
const { flags } = await this.parse(Validate);
|
|
51
|
-
const spinner = (
|
|
23
|
+
const spinner = ora();
|
|
52
24
|
try {
|
|
53
25
|
// Load configuration
|
|
54
26
|
spinner.start('Loading configuration');
|
|
55
|
-
const mjConfig =
|
|
27
|
+
const mjConfig = loadMJConfig();
|
|
56
28
|
if (!mjConfig) {
|
|
57
29
|
this.error('No mj.config.cjs found in current directory or parent directories');
|
|
58
30
|
}
|
|
59
31
|
// Stop spinner before provider initialization
|
|
60
32
|
spinner.stop();
|
|
61
33
|
// Initialize data provider
|
|
62
|
-
await
|
|
34
|
+
await initializeProvider(mjConfig);
|
|
63
35
|
// Initialize sync engine (needed for metadata access)
|
|
64
|
-
await
|
|
36
|
+
await getSyncEngine(getSystemUser());
|
|
65
37
|
// Show success after initialization
|
|
66
38
|
if (flags.verbose) {
|
|
67
39
|
spinner.succeed('Configuration and metadata loaded');
|
|
@@ -70,12 +42,12 @@ class Validate extends core_1.Command {
|
|
|
70
42
|
spinner.stop();
|
|
71
43
|
}
|
|
72
44
|
// Create validation service
|
|
73
|
-
const validator = new
|
|
74
|
-
const formatter = new
|
|
45
|
+
const validator = new ValidationService({ verbose: flags.verbose });
|
|
46
|
+
const formatter = new FormattingService();
|
|
75
47
|
// Determine directory to validate
|
|
76
48
|
const targetDir = flags.dir
|
|
77
|
-
? path.resolve(
|
|
78
|
-
:
|
|
49
|
+
? path.resolve(configManager.getOriginalCwd(), flags.dir)
|
|
50
|
+
: configManager.getOriginalCwd();
|
|
79
51
|
spinner.start(`Validating metadata in ${path.relative(process.cwd(), targetDir)}...`);
|
|
80
52
|
// Run validation
|
|
81
53
|
const validationResult = await validator.validateDirectory(targetDir);
|
|
@@ -89,19 +61,19 @@ class Validate extends core_1.Command {
|
|
|
89
61
|
const fullReportPath = path.resolve(reportPath);
|
|
90
62
|
// Generate markdown report
|
|
91
63
|
const report = formatter.formatValidationResultAsMarkdown(validationResult);
|
|
92
|
-
await
|
|
93
|
-
this.log(
|
|
64
|
+
await fs.writeFile(fullReportPath, report, 'utf8');
|
|
65
|
+
this.log(chalk.green(`\n✅ Validation report saved to: ${path.relative(process.cwd(), fullReportPath)}`));
|
|
94
66
|
}
|
|
95
67
|
// Show summary
|
|
96
68
|
const totalIssues = validationResult.errors.length + validationResult.warnings.length;
|
|
97
69
|
if (validationResult.isValid && validationResult.warnings.length === 0) {
|
|
98
|
-
this.log(
|
|
70
|
+
this.log(chalk.green('\n✅ All metadata files are valid!'));
|
|
99
71
|
}
|
|
100
72
|
else if (validationResult.isValid && validationResult.warnings.length > 0) {
|
|
101
|
-
this.log(
|
|
73
|
+
this.log(chalk.yellow(`\n⚠️ Validation passed with ${validationResult.warnings.length} warning(s)`));
|
|
102
74
|
}
|
|
103
75
|
else {
|
|
104
|
-
this.log(
|
|
76
|
+
this.log(chalk.red(`\n❌ Validation failed with ${validationResult.errors.length} error(s) and ${validationResult.warnings.length} warning(s)`));
|
|
105
77
|
}
|
|
106
78
|
// Exit with error code if validation failed
|
|
107
79
|
if (!validationResult.isValid) {
|
|
@@ -122,8 +94,8 @@ class Validate extends core_1.Command {
|
|
|
122
94
|
}
|
|
123
95
|
finally {
|
|
124
96
|
// Reset singletons
|
|
125
|
-
|
|
97
|
+
resetSyncEngine();
|
|
126
98
|
}
|
|
127
99
|
}
|
|
128
100
|
}
|
|
129
|
-
|
|
101
|
+
//# sourceMappingURL=validate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/commands/sync/validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,12 @@ export default class Watch extends Command {
|
|
|
3
3
|
static description: string;
|
|
4
4
|
static examples: string[];
|
|
5
5
|
static flags: {
|
|
6
|
-
dir: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
7
|
-
debounce: import("@oclif/core/lib/interfaces").OptionFlag<number
|
|
6
|
+
dir: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
7
|
+
debounce: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
8
|
'no-validate': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
9
9
|
verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
};
|
|
11
11
|
private watchController?;
|
|
12
12
|
run(): Promise<void>;
|
|
13
13
|
}
|
|
14
|
+
//# sourceMappingURL=watch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/watch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAgB7C,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,MAAM,CAAC,WAAW,SAAmD;IAErE,MAAM,CAAC,QAAQ,WAKb;IAEF,MAAM,CAAC,KAAK;;;;;MAKV;IAEF,OAAO,CAAC,eAAe,CAAC,CAAM;IAExB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAkH3B"}
|