@memberjunction/cli 2.116.0 → 2.118.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 CHANGED
@@ -1,10 +1,10 @@
1
1
  # @memberjunction/cli
2
2
 
3
- The official command-line interface (CLI) for MemberJunction, providing essential tools for installation, database management, code generation, and dependency management.
3
+ The official command-line interface (CLI) for MemberJunction, providing essential tools for installation, database management, code generation, AI operations, testing, and database documentation.
4
4
 
5
5
  ## Overview
6
6
 
7
- The MemberJunction CLI (`mj`) is a comprehensive toolset designed to streamline the development and maintenance of MemberJunction applications. It handles everything from initial installation to ongoing database migrations and code generation.
7
+ The MemberJunction CLI (`mj`) is a comprehensive toolset designed to streamline the development and maintenance of MemberJunction applications. It handles everything from initial installation to ongoing database migrations, code generation, AI agent execution, testing, and automated database documentation.
8
8
 
9
9
  ## Installation
10
10
 
@@ -52,7 +52,7 @@ interface MJConfig {
52
52
  coreSchema?: string; // Core schema name (default: '__mj')
53
53
  cleanDisabled?: boolean; // Disable database cleaning (default: true)
54
54
  mjRepoUrl?: string; // MemberJunction repository URL
55
-
55
+
56
56
  // AI-specific settings (optional)
57
57
  aiSettings?: {
58
58
  defaultTimeout?: number; // Default timeout for AI operations (default: 300000ms)
@@ -81,7 +81,84 @@ module.exports = {
81
81
 
82
82
  ## Commands
83
83
 
84
- ### `mj sync`
84
+ ### Core Commands
85
+
86
+ #### `mj install`
87
+
88
+ Performs a complete installation of MemberJunction, including:
89
+ - Database setup
90
+ - Generated entities configuration
91
+ - API server configuration
92
+ - Explorer UI configuration
93
+
94
+ ```bash
95
+ mj install [--verbose]
96
+ ```
97
+
98
+ The install command will:
99
+ 1. Verify Node.js version and disk space requirements
100
+ 2. Check for required directories (GeneratedEntities, SQL Scripts, MJAPI, MJExplorer)
101
+ 3. Prompt for configuration values or read from `install.config.json`
102
+ 4. Create `.env` files with database and authentication settings
103
+ 5. Run npm installations and link packages
104
+ 6. Execute CodeGen to generate initial code
105
+
106
+ #### `mj codegen`
107
+
108
+ Runs the MemberJunction code generation process to create TypeScript entities and metadata from your database schema.
109
+
110
+ ```bash
111
+ mj codegen [--skipdb]
112
+ ```
113
+
114
+ Options:
115
+ - `--skipdb`: Skip database migration before running code generation
116
+
117
+ #### `mj migrate`
118
+
119
+ Applies database migrations to update your MemberJunction schema to the latest version.
120
+
121
+ ```bash
122
+ mj migrate [--verbose] [--tag <version>]
123
+ ```
124
+
125
+ Options:
126
+ - `--verbose`: Enable detailed logging
127
+ - `--tag <version>`: Specify a version tag for migrations (e.g., 'v2.10.0')
128
+
129
+ #### `mj bump`
130
+
131
+ Updates all @memberjunction/* package dependencies to a specified version.
132
+
133
+ ```bash
134
+ mj bump [--recursive] [--dry] [--quiet] [--tag <version>] [--verbose]
135
+ ```
136
+
137
+ Options:
138
+ - `-r, --recursive`: Update dependencies in all subdirectories
139
+ - `-d, --dry`: Preview changes without writing to files
140
+ - `-q, --quiet`: Only output paths of updated packages
141
+ - `-t, --tag <version>`: Target version (defaults to CLI version)
142
+ - `-v, --verbose`: Enable detailed logging
143
+
144
+ Example - Update all packages recursively and run npm install:
145
+ ```bash
146
+ mj bump -rqt v2.10.0 | xargs -n1 -I{} npm install --prefix {}
147
+ ```
148
+
149
+ #### `mj clean`
150
+
151
+ Resets the MemberJunction database to a pre-installation state. **Use with caution!**
152
+
153
+ ```bash
154
+ mj clean [--verbose]
155
+ ```
156
+
157
+ Note: This command is disabled by default. Set `cleanDisabled: false` in your configuration to enable it.
158
+
159
+ ---
160
+
161
+ ### `mj sync` - Metadata Synchronization
85
162
 
86
163
  Manages MemberJunction metadata synchronization between database and local files. This suite of commands enables version control, IDE-based editing, and CI/CD integration for MJ metadata.
87
164
 
@@ -98,7 +175,7 @@ Available sync commands:
98
175
  - `watch` - Watch for changes and auto-sync
99
176
  - `file-reset` - Reset file checksums after manual edits
100
177
 
101
- For detailed documentation on metadata sync, see the [MetadataSync README](../MetadataSync/README.md).
178
+ **šŸ“š For detailed documentation:** See the [MetadataSync README](../MetadataSync/README.md)
102
179
 
103
180
  #### Quick Examples:
104
181
  ```bash
@@ -115,7 +192,9 @@ mj sync push
115
192
  mj sync watch
116
193
  ```
117
194
 
118
- ### `mj ai`
195
+ ---
196
+
197
+ ### `mj ai` - AI Operations
119
198
 
120
199
  Execute AI agents and actions using MemberJunction's AI framework. This command provides access to 20+ AI agents and 30+ actions for various tasks.
121
200
 
@@ -131,6 +210,8 @@ Available AI commands:
131
210
  - `prompts list` - List available AI models for direct prompt execution
132
211
  - `prompts run` - Execute a direct prompt with an AI model
133
212
 
213
+ **šŸ“š For detailed documentation:** See the [AI-CLI README](../AI/AICLI/README.md)
214
+
134
215
  #### Quick Examples:
135
216
 
136
217
  ```bash
@@ -225,7 +306,7 @@ Add AI-specific settings to your `mj.config.cjs`:
225
306
  ```javascript
226
307
  module.exports = {
227
308
  // Existing database settings...
228
-
309
+
229
310
  aiSettings: {
230
311
  defaultTimeout: 300000,
231
312
  outputFormat: 'compact',
@@ -238,80 +319,245 @@ module.exports = {
238
319
 
239
320
  Execution logs are stored in `.mj-ai/logs/` for debugging and audit purposes.
240
321
 
241
- ### `mj install`
322
+ ---
242
323
 
243
- Performs a complete installation of MemberJunction, including:
244
- - Database setup
245
- - Generated entities configuration
246
- - API server configuration
247
- - Explorer UI configuration
324
+ ### `mj test` - Testing Framework
325
+
326
+ Execute and manage tests using MemberJunction's comprehensive testing framework. Run database-driven tests, test suites, and view execution history.
248
327
 
249
328
  ```bash
250
- mj install [--verbose]
329
+ mj test [COMMAND] [OPTIONS]
251
330
  ```
252
331
 
253
- The install command will:
254
- 1. Verify Node.js version and disk space requirements
255
- 2. Check for required directories (GeneratedEntities, SQL Scripts, MJAPI, MJExplorer)
256
- 3. Prompt for configuration values or read from `install.config.json`
257
- 4. Create `.env` files with database and authentication settings
258
- 5. Run npm installations and link packages
259
- 6. Execute CodeGen to generate initial code
332
+ Available test commands:
333
+ - `run` - Execute a single test by ID or name
334
+ - `suite` - Execute a test suite
335
+ - `list` - List available tests, suites, and types
336
+ - `validate` - Validate test definitions without executing
337
+ - `history` - View test execution history
338
+ - `compare` - Compare test runs for regression detection
260
339
 
261
- ### `mj codegen`
340
+ **šŸ“š For detailed documentation:** See the [Testing CLI README](../TestingFramework/CLI/README.md)
262
341
 
263
- Runs the MemberJunction code generation process to create TypeScript entities and metadata from your database schema.
342
+ #### Quick Examples:
264
343
 
265
344
  ```bash
266
- mj codegen [--skipdb]
267
- ```
345
+ # Run a single test
346
+ mj test run <test-id>
268
347
 
269
- Options:
270
- - `--skipdb`: Skip database migration before running code generation
348
+ # Run a test by name
349
+ mj test run --name="Active Members Count"
271
350
 
272
- ### `mj migrate`
351
+ # Run a test suite
352
+ mj test suite <suite-id>
273
353
 
274
- Applies database migrations to update your MemberJunction schema to the latest version.
354
+ # Run suite by name
355
+ mj test suite --name="Agent Quality Suite"
275
356
 
276
- ```bash
277
- mj migrate [--verbose] [--tag <version>]
278
- ```
357
+ # List all tests
358
+ mj test list
279
359
 
280
- Options:
281
- - `--verbose`: Enable detailed logging
282
- - `--tag <version>`: Specify a version tag for migrations (e.g., 'v2.10.0')
360
+ # List test suites
361
+ mj test list --suites
283
362
 
284
- ### `mj bump`
363
+ # List test types
364
+ mj test list --types
285
365
 
286
- Updates all @memberjunction/* package dependencies to a specified version.
366
+ # Filter by test type
367
+ mj test list --type=agent-eval
287
368
 
288
- ```bash
289
- mj bump [--recursive] [--dry] [--quiet] [--tag <version>] [--verbose]
369
+ # Validate all tests
370
+ mj test validate --all
371
+
372
+ # Validate specific test type
373
+ mj test validate --type=agent-eval
374
+
375
+ # View test execution history
376
+ mj test history --test=<test-id>
377
+
378
+ # Compare two test runs
379
+ mj test compare <run-id-1> <run-id-2>
380
+
381
+ # Output formats
382
+ mj test run <test-id> --format=json --output=results.json
383
+ mj test suite <suite-id> --format=markdown --output=report.md
290
384
  ```
291
385
 
292
- Options:
293
- - `-r, --recursive`: Update dependencies in all subdirectories
294
- - `-d, --dry`: Preview changes without writing to files
295
- - `-q, --quiet`: Only output paths of updated packages
296
- - `-t, --tag <version>`: Target version (defaults to CLI version)
297
- - `-v, --verbose`: Enable detailed logging
386
+ #### Test Command Options:
387
+
388
+ **Run Command:**
389
+ - `<testId>`: Test ID to execute
390
+ - `-n, --name <name>`: Test name to execute
391
+ - `-e, --environment <env>`: Environment context (dev, staging, prod)
392
+ - `-f, --format <format>`: Output format (console, json, markdown)
393
+ - `-o, --output <path>`: Output file path
394
+ - `--dry-run`: Validate without executing
395
+ - `-v, --verbose`: Show detailed execution information
396
+
397
+ **Suite Command:**
398
+ - `<suiteId>`: Test suite ID to execute
399
+ - `-n, --name <name>`: Test suite name to execute
400
+ - `-f, --format <format>`: Output format (console, json, markdown)
401
+ - `-o, --output <path>`: Output file path
402
+ - `-v, --verbose`: Show detailed execution information
403
+
404
+ **List Command:**
405
+ - `--suites`: List test suites instead of tests
406
+ - `--types`: List test types
407
+ - `-t, --type <type>`: Filter by test type
408
+ - `--tag <tag>`: Filter by tag
409
+ - `-s, --status <status>`: Filter by status
410
+ - `-f, --format <format>`: Output format (console, json, markdown)
411
+ - `-v, --verbose`: Show detailed information
412
+
413
+ **Validate Command:**
414
+ - `<testId>`: Test ID to validate
415
+ - `-a, --all`: Validate all tests
416
+ - `-t, --type <type>`: Validate tests by type
417
+ - `--save-report`: Save validation report to file
418
+ - `-f, --format <format>`: Output format (console, json, markdown)
419
+ - `-o, --output <path>`: Output file path
420
+ - `-v, --verbose`: Show detailed information
421
+
422
+ **History Command:**
423
+ - `-t, --test <id>`: Filter by test ID
424
+ - `-r, --recent <n>`: Number of recent runs to show
425
+ - `--from <date>`: Show history from date (YYYY-MM-DD)
426
+ - `-s, --status <status>`: Filter by status
427
+ - `-f, --format <format>`: Output format (console, json, markdown)
428
+ - `-o, --output <path>`: Output file path
429
+ - `-v, --verbose`: Show detailed information
430
+
431
+ **Compare Command:**
432
+ - `<runId1>`: First test run ID to compare
433
+ - `<runId2>`: Second test run ID to compare
434
+ - `-v, --version <versions>`: Compare runs by version
435
+ - `-c, --commit <commits>`: Compare runs by git commit
436
+ - `--diff-only`: Show only differences
437
+ - `-f, --format <format>`: Output format (console, json, markdown)
438
+ - `-o, --output <path>`: Output file path
439
+ - `--verbose`: Show detailed information
440
+
441
+ ---
442
+
443
+ ### `mj dbdoc` - Database Documentation
444
+
445
+ AI-powered database documentation generator for SQL Server, MySQL, and PostgreSQL. Analyzes your database structure, uses AI to generate comprehensive descriptions, and saves them as database metadata.
298
446
 
299
- Example - Update all packages recursively and run npm install:
300
447
  ```bash
301
- mj bump -rqt v2.10.0 | xargs -n1 -I{} npm install --prefix {}
448
+ mj dbdoc [COMMAND] [OPTIONS]
302
449
  ```
303
450
 
304
- ### `mj clean`
451
+ Available dbdoc commands:
452
+ - `init` - Initialize a new DBAutoDoc project
453
+ - `analyze` - Analyze database and generate documentation
454
+ - `export` - Export documentation in multiple formats (SQL, Markdown, HTML, CSV, Mermaid)
455
+ - `status` - Show analysis status and progress
456
+ - `reset` - Reset analysis state
305
457
 
306
- Resets the MemberJunction database to a pre-installation state. **Use with caution!**
458
+ **šŸ“š For detailed documentation:** See the [DBAutoDoc README](../DBAutoDoc/README.md)
459
+
460
+ #### Quick Examples:
307
461
 
308
462
  ```bash
309
- mj clean [--verbose]
310
- ```
463
+ # Initialize new project (interactive wizard)
464
+ mj dbdoc init
311
465
 
312
- Note: This command is disabled by default. Set `cleanDisabled: false` in your configuration to enable it.
466
+ # Analyze database
467
+ mj dbdoc analyze
468
+
469
+ # Resume from existing state
470
+ mj dbdoc analyze --resume ./output/run-6/state.json
471
+
472
+ # Use custom config
473
+ mj dbdoc analyze --config ./my-config.json
474
+
475
+ # Export all formats
476
+ mj dbdoc export --sql --markdown --html --csv --mermaid
477
+
478
+ # Export specific state file
479
+ mj dbdoc export --state-file ./output/run-6/state.json --sql --markdown
480
+
481
+ # Apply SQL directly to database
482
+ mj dbdoc export --sql --apply
483
+
484
+ # Export with filtering
485
+ mj dbdoc export --approved-only --confidence-threshold 0.8
486
+
487
+ # Check status
488
+ mj dbdoc status
489
+
490
+ # Reset state
491
+ mj dbdoc reset --force
492
+ ```
313
493
 
314
- ### `mj help`
494
+ #### DBAutoDoc Command Options:
495
+
496
+ **Init Command:**
497
+ - Interactive wizard guides you through:
498
+ - Database connection configuration
499
+ - AI provider setup (OpenAI, Anthropic, Google, Groq)
500
+ - Resource limits and guardrails
501
+ - Optional seed context for better analysis
502
+
503
+ **Analyze Command:**
504
+ - `-r, --resume <path>`: Resume from an existing state file
505
+ - `-c, --config <path>`: Path to config file (default: ./config.json)
506
+
507
+ **Export Command:**
508
+ - `-s, --state-file <path>`: Path to state JSON file
509
+ - `-o, --output-dir <path>`: Output directory for generated files
510
+ - `--sql`: Generate SQL script with database-specific metadata statements
511
+ - `--markdown`: Generate Markdown documentation with ERD diagrams
512
+ - `--html`: Generate interactive HTML documentation
513
+ - `--csv`: Generate CSV exports (tables.csv and columns.csv)
514
+ - `--mermaid`: Generate Mermaid ERD diagram files (.mmd and .html)
515
+ - `--report`: Generate analysis report with metrics
516
+ - `--apply`: Apply SQL script directly to database
517
+ - `--approved-only`: Only export approved items
518
+ - `--confidence-threshold <value>`: Minimum confidence threshold (default: 0)
519
+
520
+ **Status Command:**
521
+ - `-s, --state-file <path>`: Path to state JSON file
522
+
523
+ **Reset Command:**
524
+ - `-f, --force`: Force reset without confirmation
525
+
526
+ #### DBAutoDoc Features:
527
+
528
+ **Core Capabilities:**
529
+ - šŸ¤– **AI-Powered Analysis** - Uses OpenAI, Anthropic, Google, or Groq
530
+ - šŸ”„ **Iterative Refinement** - Multi-pass analysis with backpropagation
531
+ - šŸ“Š **Topological Processing** - Analyzes tables in dependency order
532
+ - šŸ“ˆ **Data-Driven** - Leverages cardinality, statistics, and sample data
533
+ - šŸŽÆ **Convergence Detection** - Automatically knows when analysis is complete
534
+ - šŸ’¾ **State Tracking** - Full audit trail of all iterations
535
+ - šŸ”Œ **Standalone** - Works with ANY database, no MemberJunction required
536
+
537
+ **Multi-Database Support:**
538
+ - SQL Server (extended properties)
539
+ - PostgreSQL (COMMENT syntax)
540
+ - MySQL (column/table comments)
541
+
542
+ **Advanced Features:**
543
+ - šŸ” **Relationship Discovery** - Detect missing primary and foreign keys
544
+ - šŸ›”ļø **Granular Guardrails** - Multi-level resource controls
545
+ - āøļø **Resume Capability** - Pause and resume from checkpoint
546
+ - šŸ“¦ **Programmatic API** - Use as a library in your applications
547
+
548
+ **Output Formats:**
549
+ - SQL Scripts (database-specific metadata)
550
+ - Markdown Documentation (human-readable with ERD)
551
+ - HTML Documentation (interactive, searchable)
552
+ - CSV Exports (spreadsheet-ready)
553
+ - Mermaid Diagrams (standalone ERD files)
554
+ - Analysis Reports (detailed metrics)
555
+
556
+ ---
557
+
558
+ ### Utility Commands
559
+
560
+ #### `mj help`
315
561
 
316
562
  Display help information for any command.
317
563
 
@@ -319,7 +565,7 @@ Display help information for any command.
319
565
  mj help [COMMAND]
320
566
  ```
321
567
 
322
- ### `mj version`
568
+ #### `mj version`
323
569
 
324
570
  Display the CLI version and additional system information.
325
571
 
@@ -339,9 +585,11 @@ The CLI respects the following environment variables:
339
585
 
340
586
  The CLI integrates seamlessly with other MemberJunction packages:
341
587
 
342
- - **@memberjunction/codegen-lib**: Powers the code generation functionality
343
- - **@memberjunction/metadata-sync**: Provides metadata synchronization capabilities
344
- - **@memberjunction/ai-cli**: Enables AI agent and action execution
588
+ - **[@memberjunction/codegen-lib](../CodeGenLib)**: Powers the code generation functionality
589
+ - **[@memberjunction/metadata-sync](../MetadataSync)**: Provides metadata synchronization capabilities ([README](../MetadataSync/README.md))
590
+ - **[@memberjunction/ai-cli](../AI/AICLI)**: Enables AI agent and action execution ([README](../AI/AICLI/README.md))
591
+ - **[@memberjunction/testing-cli](../TestingFramework/CLI)**: Testing framework for database-driven tests ([README](../TestingFramework/CLI/README.md))
592
+ - **[@memberjunction/db-auto-doc](../DBAutoDoc)**: AI-powered database documentation generator ([README](../DBAutoDoc/README.md))
345
593
  - **Generated Entities**: Automatically linked during installation
346
594
  - **MJAPI**: Configured and linked during installation
347
595
  - **MJExplorer**: UI configuration handled during installation
@@ -390,6 +638,9 @@ Run any command with the `--verbose` flag for detailed logging:
390
638
  ```bash
391
639
  mj install --verbose
392
640
  mj codegen --verbose
641
+ mj ai agents run -a "My Agent" -p "My prompt" --verbose
642
+ mj test run <test-id> --verbose
643
+ mj dbdoc analyze --verbose
393
644
  ```
394
645
 
395
646
  ## License
@@ -1,10 +1,10 @@
1
1
  import { Command } from '@oclif/core';
2
- export default class Analyze extends Command {
2
+ export default class DbDocAnalyze extends Command {
3
3
  static description: string;
4
4
  static examples: string[];
5
5
  static flags: {
6
- incremental: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
7
- schemas: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
6
+ resume: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
+ config: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
8
8
  };
9
9
  run(): Promise<void>;
10
10
  }
@@ -22,64 +22,41 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  const core_1 = require("@oclif/core");
30
- const chalk_1 = __importDefault(require("chalk"));
31
- const dotenv = __importStar(require("dotenv"));
32
- const db_auto_doc_1 = require("@memberjunction/db-auto-doc");
33
- dotenv.config();
34
- class Analyze extends core_1.Command {
35
- static description = 'Analyze database and generate documentation';
27
+ class DbDocAnalyze extends core_1.Command {
28
+ static description = 'Analyze database and generate documentation (delegates to db-auto-doc analyze)';
36
29
  static examples = [
37
30
  '<%= config.bin %> <%= command.id %>',
38
- '<%= config.bin %> <%= command.id %> --incremental',
39
- '<%= config.bin %> <%= command.id %> --schemas dbo,sales',
31
+ '<%= config.bin %> <%= command.id %> --resume ./output/run-6/state.json',
32
+ '<%= config.bin %> <%= command.id %> --config ./my-config.json',
40
33
  ];
41
34
  static flags = {
42
- incremental: core_1.Flags.boolean({
43
- description: 'Only process new tables',
44
- default: false,
45
- }),
46
- schemas: core_1.Flags.string({
47
- description: 'Comma-separated schema list',
35
+ resume: core_1.Flags.string({
36
+ char: 'r',
37
+ description: 'Resume from an existing state file',
38
+ required: false
48
39
  }),
40
+ config: core_1.Flags.string({
41
+ char: 'c',
42
+ description: 'Path to config file',
43
+ default: './config.json'
44
+ })
49
45
  };
50
46
  async run() {
51
- const { flags } = await this.parse(Analyze);
52
- this.log(chalk_1.default.blue.bold('\nšŸ“Š Analyzing Database\n'));
53
- try {
54
- // Check API key
55
- if (!process.env.AI_API_KEY || process.env.AI_API_KEY === 'your-api-key-here') {
56
- this.error('AI_API_KEY not set in .env file');
57
- }
58
- const connection = db_auto_doc_1.DatabaseConnection.fromEnv();
59
- const stateManager = new db_auto_doc_1.StateManager();
60
- // Test connection
61
- const connected = await connection.test();
62
- if (!connected) {
63
- this.error('Cannot connect to database');
64
- }
65
- // Load state
66
- await stateManager.load(process.env.DB_SERVER || 'localhost', process.env.DB_DATABASE || 'master');
67
- const aiClient = new db_auto_doc_1.SimpleAIClient();
68
- const analyzer = new db_auto_doc_1.DatabaseAnalyzer(connection, stateManager, aiClient);
69
- const schemas = flags.schemas ? flags.schemas.split(',') : undefined;
70
- await analyzer.analyze({
71
- schemas,
72
- incremental: flags.incremental,
73
- });
74
- await connection.close();
75
- this.log(chalk_1.default.green('\nāœ… Analysis complete!'));
76
- this.log('\nNext steps:');
77
- this.log(' - Review: mj dbdoc review');
78
- this.log(' - Export: mj dbdoc export');
47
+ const { flags } = await this.parse(DbDocAnalyze);
48
+ // Load DBAutoDoc command dynamically
49
+ const { default: AnalyzeCommand } = await Promise.resolve().then(() => __importStar(require('@memberjunction/db-auto-doc/dist/commands/analyze.js')));
50
+ // Build args array for DBAutoDoc command
51
+ const args = [];
52
+ if (flags.resume) {
53
+ args.push('--resume', flags.resume);
79
54
  }
80
- catch (error) {
81
- this.error(error.message);
55
+ if (flags.config) {
56
+ args.push('--config', flags.config);
82
57
  }
58
+ // Execute the DBAutoDoc analyze command
59
+ await AnalyzeCommand.run(args);
83
60
  }
84
61
  }
85
- exports.default = Analyze;
62
+ exports.default = DbDocAnalyze;
@@ -1,12 +1,19 @@
1
1
  import { Command } from '@oclif/core';
2
- export default class Export extends Command {
2
+ export default class DbDocExport extends Command {
3
3
  static description: string;
4
4
  static examples: string[];
5
5
  static flags: {
6
- format: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
7
- output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
6
+ 'state-file': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
+ 'output-dir': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ sql: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
+ markdown: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ html: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ csv: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
+ mermaid: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
+ report: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
+ apply: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
8
15
  'approved-only': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
- execute: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
16
+ 'confidence-threshold': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
10
17
  };
11
18
  run(): Promise<void>;
12
19
  }