@memberjunction/db-auto-doc 3.3.0 → 4.0.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.
Files changed (162) hide show
  1. package/bin/run.js +4 -7
  2. package/dist/ai/simple-ai-client.d.ts +70 -0
  3. package/dist/ai/simple-ai-client.d.ts.map +1 -0
  4. package/dist/ai/simple-ai-client.js +181 -0
  5. package/dist/ai/simple-ai-client.js.map +1 -0
  6. package/dist/analyzers/analyzer.d.ts +23 -0
  7. package/dist/analyzers/analyzer.d.ts.map +1 -0
  8. package/dist/analyzers/analyzer.js +127 -0
  9. package/dist/analyzers/analyzer.js.map +1 -0
  10. package/dist/api/DBAutoDocAPI.js +14 -41
  11. package/dist/api/DBAutoDocAPI.js.map +1 -1
  12. package/dist/api/index.js +1 -5
  13. package/dist/api/index.js.map +1 -1
  14. package/dist/cli-old/cli.d.ts +3 -0
  15. package/dist/cli-old/cli.d.ts.map +1 -0
  16. package/dist/cli-old/cli.js +388 -0
  17. package/dist/cli-old/cli.js.map +1 -0
  18. package/dist/commands/analyze.d.ts +1 -1
  19. package/dist/commands/analyze.js +30 -36
  20. package/dist/commands/analyze.js.map +1 -1
  21. package/dist/commands/export-sample-queries.d.ts +1 -1
  22. package/dist/commands/export-sample-queries.js +65 -94
  23. package/dist/commands/export-sample-queries.js.map +1 -1
  24. package/dist/commands/export.d.ts +2 -2
  25. package/dist/commands/export.js +49 -78
  26. package/dist/commands/export.js.map +1 -1
  27. package/dist/commands/generate-queries.d.ts +2 -2
  28. package/dist/commands/generate-queries.js +44 -73
  29. package/dist/commands/generate-queries.js.map +1 -1
  30. package/dist/commands/init.js +21 -27
  31. package/dist/commands/init.js.map +1 -1
  32. package/dist/commands/reset.js +16 -22
  33. package/dist/commands/reset.js.map +1 -1
  34. package/dist/commands/review.d.ts +11 -0
  35. package/dist/commands/review.d.ts.map +1 -0
  36. package/dist/commands/review.js +82 -0
  37. package/dist/commands/review.js.map +1 -0
  38. package/dist/commands/status.js +16 -22
  39. package/dist/commands/status.js.map +1 -1
  40. package/dist/core/AnalysisEngine.js +7 -11
  41. package/dist/core/AnalysisEngine.js.map +1 -1
  42. package/dist/core/AnalysisOrchestrator.js +27 -54
  43. package/dist/core/AnalysisOrchestrator.js.map +1 -1
  44. package/dist/core/BackpropagationEngine.js +1 -5
  45. package/dist/core/BackpropagationEngine.js.map +1 -1
  46. package/dist/core/ConvergenceDetector.js +1 -5
  47. package/dist/core/ConvergenceDetector.js.map +1 -1
  48. package/dist/core/GuardrailsManager.js +1 -5
  49. package/dist/core/GuardrailsManager.js.map +1 -1
  50. package/dist/core/index.js +3 -9
  51. package/dist/core/index.js.map +1 -1
  52. package/dist/database/Database.js +10 -17
  53. package/dist/database/Database.js.map +1 -1
  54. package/dist/database/TopologicalSorter.js +1 -5
  55. package/dist/database/TopologicalSorter.js.map +1 -1
  56. package/dist/database/connection.d.ts +40 -0
  57. package/dist/database/connection.d.ts.map +1 -0
  58. package/dist/database/connection.js +136 -0
  59. package/dist/database/connection.js.map +1 -0
  60. package/dist/database/index.js +2 -10
  61. package/dist/database/index.js.map +1 -1
  62. package/dist/database/introspection.d.ts +59 -0
  63. package/dist/database/introspection.d.ts.map +1 -0
  64. package/dist/database/introspection.js +124 -0
  65. package/dist/database/introspection.js.map +1 -0
  66. package/dist/discovery/ColumnStatsCache.js +1 -5
  67. package/dist/discovery/ColumnStatsCache.js.map +1 -1
  68. package/dist/discovery/DiscoveryEngine.js +11 -15
  69. package/dist/discovery/DiscoveryEngine.js.map +1 -1
  70. package/dist/discovery/DiscoveryTriggerAnalyzer.js +1 -5
  71. package/dist/discovery/DiscoveryTriggerAnalyzer.js.map +1 -1
  72. package/dist/discovery/FKDetector.js +1 -5
  73. package/dist/discovery/FKDetector.js.map +1 -1
  74. package/dist/discovery/LLMDiscoveryValidator.js +4 -8
  75. package/dist/discovery/LLMDiscoveryValidator.js.map +1 -1
  76. package/dist/discovery/LLMSanityChecker.js +3 -7
  77. package/dist/discovery/LLMSanityChecker.js.map +1 -1
  78. package/dist/discovery/PKDetector.js +1 -5
  79. package/dist/discovery/PKDetector.js.map +1 -1
  80. package/dist/discovery/index.js +4 -20
  81. package/dist/discovery/index.js.map +1 -1
  82. package/dist/drivers/BaseAutoDocDriver.js +1 -5
  83. package/dist/drivers/BaseAutoDocDriver.js.map +1 -1
  84. package/dist/drivers/MySQLDriver.js +8 -14
  85. package/dist/drivers/MySQLDriver.js.map +1 -1
  86. package/dist/drivers/PostgreSQLDriver.js +8 -11
  87. package/dist/drivers/PostgreSQLDriver.js.map +1 -1
  88. package/dist/drivers/SQLServerDriver.js +7 -33
  89. package/dist/drivers/SQLServerDriver.js.map +1 -1
  90. package/dist/generators/CSVGenerator.js +1 -5
  91. package/dist/generators/CSVGenerator.js.map +1 -1
  92. package/dist/generators/HTMLGenerator.js +1 -5
  93. package/dist/generators/HTMLGenerator.js.map +1 -1
  94. package/dist/generators/MarkdownGenerator.js +1 -5
  95. package/dist/generators/MarkdownGenerator.js.map +1 -1
  96. package/dist/generators/MermaidGenerator.js +1 -5
  97. package/dist/generators/MermaidGenerator.js.map +1 -1
  98. package/dist/generators/ReportGenerator.js +1 -5
  99. package/dist/generators/ReportGenerator.js.map +1 -1
  100. package/dist/generators/SQLGenerator.js +1 -5
  101. package/dist/generators/SQLGenerator.js.map +1 -1
  102. package/dist/generators/SampleQueryGenerator.d.ts +1 -1
  103. package/dist/generators/SampleQueryGenerator.d.ts.map +1 -1
  104. package/dist/generators/SampleQueryGenerator.js +36 -40
  105. package/dist/generators/SampleQueryGenerator.js.map +1 -1
  106. package/dist/generators/index.js +6 -15
  107. package/dist/generators/index.js.map +1 -1
  108. package/dist/generators/markdown-generator.d.ts +8 -0
  109. package/dist/generators/markdown-generator.d.ts.map +1 -0
  110. package/dist/generators/markdown-generator.js +106 -0
  111. package/dist/generators/markdown-generator.js.map +1 -0
  112. package/dist/generators/sql-generator.d.ts +20 -0
  113. package/dist/generators/sql-generator.d.ts.map +1 -0
  114. package/dist/generators/sql-generator.js +83 -0
  115. package/dist/generators/sql-generator.js.map +1 -0
  116. package/dist/index.js +9 -25
  117. package/dist/index.js.map +1 -1
  118. package/dist/prompts/PromptEngine.js +6 -33
  119. package/dist/prompts/PromptEngine.js.map +1 -1
  120. package/dist/prompts/PromptFileLoader.js +4 -31
  121. package/dist/prompts/PromptFileLoader.js.map +1 -1
  122. package/dist/prompts/index.js +2 -7
  123. package/dist/prompts/index.js.map +1 -1
  124. package/dist/state/IterationTracker.js +1 -5
  125. package/dist/state/IterationTracker.js.map +1 -1
  126. package/dist/state/StateManager.js +3 -30
  127. package/dist/state/StateManager.js.map +1 -1
  128. package/dist/state/StateValidator.js +1 -5
  129. package/dist/state/StateValidator.js.map +1 -1
  130. package/dist/state/index.js +3 -9
  131. package/dist/state/index.js.map +1 -1
  132. package/dist/state/state-manager.d.ts +95 -0
  133. package/dist/state/state-manager.d.ts.map +1 -0
  134. package/dist/state/state-manager.js +236 -0
  135. package/dist/state/state-manager.js.map +1 -0
  136. package/dist/types/analysis.js +1 -2
  137. package/dist/types/analysis.js.map +1 -1
  138. package/dist/types/config.js +1 -2
  139. package/dist/types/config.js.map +1 -1
  140. package/dist/types/discovery.js +1 -2
  141. package/dist/types/discovery.js.map +1 -1
  142. package/dist/types/driver.js +1 -2
  143. package/dist/types/driver.js.map +1 -1
  144. package/dist/types/index.js +4 -20
  145. package/dist/types/index.js.map +1 -1
  146. package/dist/types/prompts.js +1 -2
  147. package/dist/types/prompts.js.map +1 -1
  148. package/dist/types/sample-queries.js +1 -2
  149. package/dist/types/sample-queries.js.map +1 -1
  150. package/dist/types/state-file.d.ts +124 -0
  151. package/dist/types/state-file.d.ts.map +1 -0
  152. package/dist/types/state-file.js +79 -0
  153. package/dist/types/state-file.js.map +1 -0
  154. package/dist/types/state.js +1 -2
  155. package/dist/types/state.js.map +1 -1
  156. package/dist/utils/config-loader.js +3 -30
  157. package/dist/utils/config-loader.js.map +1 -1
  158. package/dist/utils/index.js +1 -5
  159. package/dist/utils/index.js.map +1 -1
  160. package/dist/utils/llm-factory.js +6 -12
  161. package/dist/utils/llm-factory.js.map +1 -1
  162. package/package.json +24 -23
@@ -1,24 +1,8 @@
1
- "use strict";
2
1
  /**
3
2
  * Centralized exports for all types
4
3
  */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
- };
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- __exportStar(require("./state.js"), exports);
21
- __exportStar(require("./config.js"), exports);
22
- __exportStar(require("./analysis.js"), exports);
23
- __exportStar(require("./prompts.js"), exports);
4
+ export * from './state.js';
5
+ export * from './config.js';
6
+ export * from './analysis.js';
7
+ export * from './prompts.js';
24
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
@@ -1,6 +1,5 @@
1
- "use strict";
2
1
  /**
3
2
  * Prompt-related types for DBAutoDoc
4
3
  */
5
- Object.defineProperty(exports, "__esModule", { value: true });
4
+ export {};
6
5
  //# sourceMappingURL=prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/types/prompts.ts"],"names":[],"mappings":";AAAA;;GAEG"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/types/prompts.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,7 +1,6 @@
1
- "use strict";
2
1
  /**
3
2
  * Sample query generation types for DBAutoDoc
4
3
  * These queries serve as reference implementations for AI agents like Skip
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
5
+ export {};
7
6
  //# sourceMappingURL=sample-queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sample-queries.js","sourceRoot":"","sources":["../../src/types/sample-queries.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
1
+ {"version":3,"file":"sample-queries.js","sourceRoot":"","sources":["../../src/types/sample-queries.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,124 @@
1
+ /**
2
+ * State file type definitions for SQL Server Documentation Generator
3
+ * This file is persisted as db-doc-state.json and tracks all documentation state
4
+ */
5
+ /**
6
+ * AI-generated documentation with metadata
7
+ */
8
+ export interface AIGenerated {
9
+ description: string;
10
+ confidence: number;
11
+ generatedAt: string;
12
+ model: string;
13
+ tokensUsed?: number;
14
+ }
15
+ /**
16
+ * Column state in the documentation
17
+ */
18
+ export interface ColumnState {
19
+ userNotes?: string;
20
+ userDescription?: string;
21
+ userApproved?: boolean;
22
+ aiGenerated?: AIGenerated & {
23
+ purpose?: string;
24
+ validValues?: string;
25
+ usageNotes?: string;
26
+ };
27
+ finalDescription?: string;
28
+ lastModified?: string;
29
+ }
30
+ /**
31
+ * Table state in the documentation
32
+ */
33
+ export interface TableState {
34
+ userNotes?: string;
35
+ userDescription?: string;
36
+ userApproved?: boolean;
37
+ userBusinessDomain?: string;
38
+ aiGenerated?: AIGenerated & {
39
+ purpose?: string;
40
+ usageNotes?: string;
41
+ businessDomain?: string;
42
+ relationships?: Array<{
43
+ type: 'parent' | 'child';
44
+ table: string;
45
+ description: string;
46
+ }>;
47
+ };
48
+ finalDescription?: string;
49
+ columns: Record<string, ColumnState>;
50
+ lastModified?: string;
51
+ lastAnalyzed?: string;
52
+ }
53
+ /**
54
+ * Schema state in the documentation
55
+ */
56
+ export interface SchemaState {
57
+ description?: string;
58
+ businessDomain?: string;
59
+ userNotes?: string;
60
+ tables: Record<string, TableState>;
61
+ }
62
+ /**
63
+ * Seed context provided by user
64
+ */
65
+ export interface SeedContext {
66
+ overallPurpose?: string;
67
+ businessDomains?: string[];
68
+ customInstructions?: string;
69
+ industryContext?: string;
70
+ }
71
+ /**
72
+ * Run history entry
73
+ */
74
+ export interface RunHistoryEntry {
75
+ timestamp: string;
76
+ phase: 'analyze' | 'review' | 'export';
77
+ tablesProcessed?: number;
78
+ schemasProcessed?: number;
79
+ tokensUsed?: number;
80
+ cost?: number;
81
+ duration?: number;
82
+ errors?: string[];
83
+ }
84
+ /**
85
+ * Database connection info (no credentials - those go in .env)
86
+ */
87
+ export interface DatabaseInfo {
88
+ server: string;
89
+ database: string;
90
+ lastConnected?: string;
91
+ }
92
+ /**
93
+ * Complete state file structure
94
+ */
95
+ export interface StateFile {
96
+ version: string;
97
+ database: DatabaseInfo;
98
+ seedContext?: SeedContext;
99
+ schemas: Record<string, SchemaState>;
100
+ runHistory: RunHistoryEntry[];
101
+ createdAt: string;
102
+ lastModified: string;
103
+ }
104
+ /**
105
+ * Default empty state file
106
+ */
107
+ export declare function createEmptyStateFile(server: string, database: string): StateFile;
108
+ /**
109
+ * Helper to get or create schema state
110
+ */
111
+ export declare function getOrCreateSchema(state: StateFile, schemaName: string): SchemaState;
112
+ /**
113
+ * Helper to get or create table state
114
+ */
115
+ export declare function getOrCreateTable(schema: SchemaState, tableName: string): TableState;
116
+ /**
117
+ * Helper to get or create column state
118
+ */
119
+ export declare function getOrCreateColumn(table: TableState, columnName: string): ColumnState;
120
+ /**
121
+ * Merge AI-generated description with user input to create final description
122
+ */
123
+ export declare function mergeFinalDescription(userDescription?: string, userNotes?: string, aiDescription?: string): string | undefined;
124
+ //# sourceMappingURL=state-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-file.d.ts","sourceRoot":"","sources":["../../src/types/state-file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ /**
3
+ * State file type definitions for SQL Server Documentation Generator
4
+ * This file is persisted as db-doc-state.json and tracks all documentation state
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.mergeFinalDescription = exports.getOrCreateColumn = exports.getOrCreateTable = exports.getOrCreateSchema = exports.createEmptyStateFile = void 0;
8
+ /**
9
+ * Default empty state file
10
+ */
11
+ function createEmptyStateFile(server, database) {
12
+ const now = new Date().toISOString();
13
+ return {
14
+ version: '1.0',
15
+ database: {
16
+ server,
17
+ database,
18
+ lastConnected: now,
19
+ },
20
+ schemas: {},
21
+ runHistory: [],
22
+ createdAt: now,
23
+ lastModified: now,
24
+ };
25
+ }
26
+ exports.createEmptyStateFile = createEmptyStateFile;
27
+ /**
28
+ * Helper to get or create schema state
29
+ */
30
+ function getOrCreateSchema(state, schemaName) {
31
+ if (!state.schemas[schemaName]) {
32
+ state.schemas[schemaName] = {
33
+ tables: {},
34
+ };
35
+ }
36
+ return state.schemas[schemaName];
37
+ }
38
+ exports.getOrCreateSchema = getOrCreateSchema;
39
+ /**
40
+ * Helper to get or create table state
41
+ */
42
+ function getOrCreateTable(schema, tableName) {
43
+ if (!schema.tables[tableName]) {
44
+ schema.tables[tableName] = {
45
+ columns: {},
46
+ };
47
+ }
48
+ return schema.tables[tableName];
49
+ }
50
+ exports.getOrCreateTable = getOrCreateTable;
51
+ /**
52
+ * Helper to get or create column state
53
+ */
54
+ function getOrCreateColumn(table, columnName) {
55
+ if (!table.columns[columnName]) {
56
+ table.columns[columnName] = {};
57
+ }
58
+ return table.columns[columnName];
59
+ }
60
+ exports.getOrCreateColumn = getOrCreateColumn;
61
+ /**
62
+ * Merge AI-generated description with user input to create final description
63
+ */
64
+ function mergeFinalDescription(userDescription, userNotes, aiDescription) {
65
+ // Priority: user description > AI description
66
+ if (userDescription) {
67
+ return userDescription;
68
+ }
69
+ if (aiDescription) {
70
+ // If user notes exist, prepend them
71
+ if (userNotes) {
72
+ return `${userNotes}. ${aiDescription}`;
73
+ }
74
+ return aiDescription;
75
+ }
76
+ return undefined;
77
+ }
78
+ exports.mergeFinalDescription = mergeFinalDescription;
79
+ //# sourceMappingURL=state-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-file.js","sourceRoot":"","sources":["../../src/types/state-file.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAiIH;;GAEG;AACH,SAAgB,oBAAoB,CAAC,MAAc,EAAE,QAAgB;IACnE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,OAAO;QACL,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE;YACR,MAAM;YACN,QAAQ;YACR,aAAa,EAAE,GAAG;SACnB;QACD,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,EAAE;QACd,SAAS,EAAE,GAAG;QACd,YAAY,EAAE,GAAG;KAClB,CAAC;AACJ,CAAC;AAfD,oDAeC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,KAAgB,EAAE,UAAkB;IACpE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG;YAC1B,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AAPD,8CAOC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,MAAmB,EAAE,SAAiB;IACrE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG;YACzB,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAPD,4CAOC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,KAAiB,EAAE,UAAkB;IACrE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AALD,8CAKC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CACnC,eAAwB,EACxB,SAAkB,EAClB,aAAsB;IAEtB,8CAA8C;IAC9C,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,oCAAoC;QACpC,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,GAAG,SAAS,KAAK,aAAa,EAAE,CAAC;QAC1C,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAnBD,sDAmBC"}
@@ -1,7 +1,6 @@
1
- "use strict";
2
1
  /**
3
2
  * State file format for DBAutoDoc
4
3
  * Tracks all documentation, iterations, and analysis progress
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
5
+ export {};
7
6
  //# sourceMappingURL=state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/types/state.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/types/state.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -1,35 +1,9 @@
1
- "use strict";
2
1
  /**
3
2
  * Configuration loading utilities
4
3
  */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.ConfigLoader = void 0;
30
- const fs = __importStar(require("fs/promises"));
31
- const path = __importStar(require("path"));
32
- class ConfigLoader {
4
+ import * as fs from 'fs/promises';
5
+ import * as path from 'path';
6
+ export class ConfigLoader {
33
7
  /**
34
8
  * Load configuration from file
35
9
  * Supports environment variable expansion using ${ENV_VAR} syntax
@@ -159,5 +133,4 @@ class ConfigLoader {
159
133
  }
160
134
  }
161
135
  }
162
- exports.ConfigLoader = ConfigLoader;
163
136
  //# sourceMappingURL=config-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,5 @@
1
- "use strict";
2
1
  /**
3
2
  * Exports for utils module
4
3
  */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ConfigLoader = void 0;
7
- var config_loader_js_1 = require("./config-loader.js");
8
- Object.defineProperty(exports, "ConfigLoader", { enumerable: true, get: function () { return config_loader_js_1.ConfigLoader; } });
4
+ export { ConfigLoader } from './config-loader.js';
9
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uDAAkD;AAAzC,gHAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,14 +1,11 @@
1
- "use strict";
2
1
  /**
3
2
  * LLM Factory - Shared utility for creating LLM instances
4
3
  *
5
4
  * Centralizes the provider-to-driver class mapping to avoid duplication
6
5
  * across PromptEngine and LLMSanityChecker.
7
6
  */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.getSupportedProviders = exports.getDriverClassName = exports.createLLMInstance = void 0;
10
- const ai_1 = require("@memberjunction/ai");
11
- const global_1 = require("@memberjunction/global");
7
+ import { BaseLLM } from '@memberjunction/ai';
8
+ import { MJGlobal } from '@memberjunction/global';
12
9
  /**
13
10
  * Provider name to LLM driver class name mapping
14
11
  */
@@ -33,34 +30,31 @@ const PROVIDER_TO_DRIVER_CLASS = {
33
30
  * @returns BaseLLM instance
34
31
  * @throws Error if provider is unknown or instance creation fails
35
32
  */
36
- function createLLMInstance(provider, apiKey) {
33
+ export function createLLMInstance(provider, apiKey) {
37
34
  const driverClass = PROVIDER_TO_DRIVER_CLASS[provider.toLowerCase()];
38
35
  if (!driverClass) {
39
36
  const supportedProviders = Object.keys(PROVIDER_TO_DRIVER_CLASS).join(', ');
40
37
  throw new Error(`Unknown provider: ${provider}. Supported providers: ${supportedProviders}`);
41
38
  }
42
- const llm = global_1.MJGlobal.Instance.ClassFactory.CreateInstance(ai_1.BaseLLM, driverClass, apiKey);
39
+ const llm = MJGlobal.Instance.ClassFactory.CreateInstance(BaseLLM, driverClass, apiKey);
43
40
  if (!llm) {
44
41
  throw new Error(`Failed to create LLM instance for provider: ${provider} (driver class: ${driverClass}). Check that the provider is installed.`);
45
42
  }
46
43
  return llm;
47
44
  }
48
- exports.createLLMInstance = createLLMInstance;
49
45
  /**
50
46
  * Get the driver class name for a provider
51
47
  *
52
48
  * @param provider - Provider name
53
49
  * @returns Driver class name or undefined if not found
54
50
  */
55
- function getDriverClassName(provider) {
51
+ export function getDriverClassName(provider) {
56
52
  return PROVIDER_TO_DRIVER_CLASS[provider.toLowerCase()];
57
53
  }
58
- exports.getDriverClassName = getDriverClassName;
59
54
  /**
60
55
  * Get list of supported provider names
61
56
  */
62
- function getSupportedProviders() {
57
+ export function getSupportedProviders() {
63
58
  return Object.keys(PROVIDER_TO_DRIVER_CLASS);
64
59
  }
65
- exports.getSupportedProviders = getSupportedProviders;
66
60
  //# sourceMappingURL=llm-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"llm-factory.js","sourceRoot":"","sources":["../../src/utils/llm-factory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAA6C;AAC7C,mDAAkD;AAElD;;GAEG;AACH,MAAM,wBAAwB,GAA2B;IACvD,QAAQ,EAAE,WAAW;IACrB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,cAAc;IAC3B,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,YAAY;IACvB,QAAQ,EAAE,WAAW;IACrB,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,aAAa;IACzB,YAAY,EAAE,eAAe;IAC7B,KAAK,EAAE,QAAQ;IACf,SAAS,EAAE,YAAY;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,SAAgB,iBAAiB,CAAC,QAAgB,EAAE,MAAc;IAChE,MAAM,WAAW,GAAG,wBAAwB,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAErE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,MAAM,IAAI,KAAK,CACb,qBAAqB,QAAQ,0BAA0B,kBAAkB,EAAE,CAC5E,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,iBAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CACvD,YAAO,EACP,WAAW,EACX,MAAM,CACP,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,+CAA+C,QAAQ,mBAAmB,WAAW,0CAA0C,CAChI,CAAC;IACJ,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAvBD,8CAuBC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,QAAgB;IACjD,OAAO,wBAAwB,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AAC1D,CAAC;AAFD,gDAEC;AAED;;GAEG;AACH,SAAgB,qBAAqB;IACnC,OAAO,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AAC/C,CAAC;AAFD,sDAEC"}
1
+ {"version":3,"file":"llm-factory.js","sourceRoot":"","sources":["../../src/utils/llm-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD;;GAEG;AACH,MAAM,wBAAwB,GAA2B;IACvD,QAAQ,EAAE,WAAW;IACrB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,cAAc;IAC3B,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,YAAY;IACvB,QAAQ,EAAE,WAAW;IACrB,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,aAAa;IACzB,YAAY,EAAE,eAAe;IAC7B,KAAK,EAAE,QAAQ;IACf,SAAS,EAAE,YAAY;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,MAAc;IAChE,MAAM,WAAW,GAAG,wBAAwB,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAErE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,MAAM,IAAI,KAAK,CACb,qBAAqB,QAAQ,0BAA0B,kBAAkB,EAAE,CAC5E,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CACvD,OAAO,EACP,WAAW,EACX,MAAM,CACP,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,+CAA+C,QAAQ,mBAAmB,WAAW,0CAA0C,CAChI,CAAC;IACJ,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,OAAO,wBAAwB,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AAC/C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/db-auto-doc",
3
- "version": "3.3.0",
3
+ "type": "module",
4
+ "version": "4.0.0",
4
5
  "description": "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 metadata. Works standalone - no MemberJunction runtime required.",
5
6
  "main": "dist/index.js",
6
7
  "types": "dist/index.d.ts",
@@ -36,9 +37,9 @@
36
37
  ],
37
38
  "scripts": {
38
39
  "start": "ts-node-dev src/cli/cli.ts",
39
- "build": "tsc",
40
+ "build": "tsc && tsc-alias -f",
40
41
  "watch": "tsc --watch",
41
- "clean": "rm -rf dist",
42
+ "clean": "rimraf dist",
42
43
  "test": "echo \"Error: no test specified\" && exit 1"
43
44
  },
44
45
  "keywords": [
@@ -58,33 +59,33 @@
58
59
  "author": "MemberJunction.com",
59
60
  "license": "MIT",
60
61
  "devDependencies": {
61
- "@types/inquirer": "^9.0.7",
62
- "@types/mssql": "^9.1.1",
63
- "@types/node": "^20.10.0",
62
+ "@types/mssql": "^9.1.9",
63
+ "@types/node": "^24.10.11",
64
64
  "@types/nunjucks": "^3.2.6",
65
- "@types/pg": "^8.10.0",
65
+ "@types/pg": "^8.16.0",
66
66
  "ts-node-dev": "^2.0.0",
67
- "typescript": "^5.4.5"
67
+ "typescript": "^5.9.3",
68
+ "@types/inquirer": "^9.0.7"
68
69
  },
69
70
  "dependencies": {
70
- "@inquirer/prompts": "^5.0.6",
71
- "@memberjunction/ai": "3.3.0",
72
- "@memberjunction/ai-provider-bundle": "3.3.0",
73
- "@memberjunction/core": "3.3.0",
74
- "@memberjunction/global": "3.3.0",
71
+ "@inquirer/prompts": "^8.2.0",
72
+ "@memberjunction/ai": "4.0.0",
73
+ "@memberjunction/ai-provider-bundle": "4.0.0",
74
+ "@memberjunction/core": "4.0.0",
75
+ "@memberjunction/global": "4.0.0",
75
76
  "@oclif/core": "^3.27.0",
76
- "@oclif/plugin-help": "^6.2.33",
77
- "chalk": "^4.1.2",
78
- "commander": "^11.1.0",
79
- "dotenv": "^16.3.1",
77
+ "@oclif/plugin-help": "^6.2.37",
78
+ "chalk": "^5.6.2",
79
+ "commander": "^14.0.3",
80
+ "dotenv": "^17.2.4",
80
81
  "inquirer": "^8.2.5",
81
- "mssql": "^10.0.1",
82
- "mysql2": "^3.11.0",
82
+ "mssql": "^12.2.0",
83
+ "mysql2": "^3.16.3",
83
84
  "nunjucks": "^3.2.4",
84
- "ora": "^5.4.1",
85
- "pg": "^8.11.0",
86
- "uuid": "^10.0.0",
87
- "zod": "^3.22.4"
85
+ "ora": "^9.3.0",
86
+ "pg": "^8.18.0",
87
+ "uuid": "^13.0.0",
88
+ "zod": "~3.24.4"
88
89
  },
89
90
  "repository": {
90
91
  "type": "git",