@memberjunction/db-auto-doc 6.2.0-edge.2 → 6.2.0-edge.4

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 (92) hide show
  1. package/README.md +105 -3
  2. package/dist/commands/export.d.ts +8 -0
  3. package/dist/commands/export.d.ts.map +1 -1
  4. package/dist/commands/export.js +53 -2
  5. package/dist/commands/export.js.map +1 -1
  6. package/dist/commands/init.js +1 -1
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/core/AnalysisOrchestrator.d.ts +5 -0
  9. package/dist/core/AnalysisOrchestrator.d.ts.map +1 -1
  10. package/dist/core/AnalysisOrchestrator.js +32 -0
  11. package/dist/core/AnalysisOrchestrator.js.map +1 -1
  12. package/dist/drivers/BaseAutoDocDriver.d.ts +6 -1
  13. package/dist/drivers/BaseAutoDocDriver.d.ts.map +1 -1
  14. package/dist/drivers/BaseAutoDocDriver.js.map +1 -1
  15. package/dist/drivers/IndexCatalog.d.ts +54 -0
  16. package/dist/drivers/IndexCatalog.d.ts.map +1 -0
  17. package/dist/drivers/IndexCatalog.js +145 -0
  18. package/dist/drivers/IndexCatalog.js.map +1 -0
  19. package/dist/drivers/MySQLDriver.d.ts +5 -1
  20. package/dist/drivers/MySQLDriver.d.ts.map +1 -1
  21. package/dist/drivers/MySQLDriver.js +15 -6
  22. package/dist/drivers/MySQLDriver.js.map +1 -1
  23. package/dist/drivers/PostgreSQLDriver.d.ts +5 -1
  24. package/dist/drivers/PostgreSQLDriver.d.ts.map +1 -1
  25. package/dist/drivers/PostgreSQLDriver.js +11 -0
  26. package/dist/drivers/PostgreSQLDriver.js.map +1 -1
  27. package/dist/drivers/SQLServerDriver.d.ts +5 -1
  28. package/dist/drivers/SQLServerDriver.d.ts.map +1 -1
  29. package/dist/drivers/SQLServerDriver.js +11 -0
  30. package/dist/drivers/SQLServerDriver.js.map +1 -1
  31. package/dist/index.d.ts +1 -0
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +2 -0
  34. package/dist/index.js.map +1 -1
  35. package/dist/plugins/BaseAutoDocPlugin.d.ts +33 -0
  36. package/dist/plugins/BaseAutoDocPlugin.d.ts.map +1 -0
  37. package/dist/plugins/BaseAutoDocPlugin.js +70 -0
  38. package/dist/plugins/BaseAutoDocPlugin.js.map +1 -0
  39. package/dist/plugins/PluginManager.d.ts +54 -0
  40. package/dist/plugins/PluginManager.d.ts.map +1 -0
  41. package/dist/plugins/PluginManager.js +115 -0
  42. package/dist/plugins/PluginManager.js.map +1 -0
  43. package/dist/plugins/builtins.d.ts +13 -0
  44. package/dist/plugins/builtins.d.ts.map +1 -0
  45. package/dist/plugins/builtins.js +12 -0
  46. package/dist/plugins/builtins.js.map +1 -0
  47. package/dist/plugins/index-advisor/IndexAdvisorPlugin.d.ts +25 -0
  48. package/dist/plugins/index-advisor/IndexAdvisorPlugin.d.ts.map +1 -0
  49. package/dist/plugins/index-advisor/IndexAdvisorPlugin.js +128 -0
  50. package/dist/plugins/index-advisor/IndexAdvisorPlugin.js.map +1 -0
  51. package/dist/plugins/index-advisor/IndexAdvisorTypes.d.ts +111 -0
  52. package/dist/plugins/index-advisor/IndexAdvisorTypes.d.ts.map +1 -0
  53. package/dist/plugins/index-advisor/IndexAdvisorTypes.js +5 -0
  54. package/dist/plugins/index-advisor/IndexAdvisorTypes.js.map +1 -0
  55. package/dist/plugins/index-advisor/IndexLLMReview.d.ts +48 -0
  56. package/dist/plugins/index-advisor/IndexLLMReview.d.ts.map +1 -0
  57. package/dist/plugins/index-advisor/IndexLLMReview.js +181 -0
  58. package/dist/plugins/index-advisor/IndexLLMReview.js.map +1 -0
  59. package/dist/plugins/index-advisor/IndexMigrationGenerator.d.ts +28 -0
  60. package/dist/plugins/index-advisor/IndexMigrationGenerator.d.ts.map +1 -0
  61. package/dist/plugins/index-advisor/IndexMigrationGenerator.js +98 -0
  62. package/dist/plugins/index-advisor/IndexMigrationGenerator.js.map +1 -0
  63. package/dist/plugins/index-advisor/IndexRules.d.ts +19 -0
  64. package/dist/plugins/index-advisor/IndexRules.d.ts.map +1 -0
  65. package/dist/plugins/index-advisor/IndexRules.js +154 -0
  66. package/dist/plugins/index-advisor/IndexRules.js.map +1 -0
  67. package/dist/plugins/index.d.ts +13 -0
  68. package/dist/plugins/index.d.ts.map +1 -0
  69. package/dist/plugins/index.js +13 -0
  70. package/dist/plugins/index.js.map +1 -0
  71. package/dist/plugins/types.d.ts +82 -0
  72. package/dist/plugins/types.d.ts.map +1 -0
  73. package/dist/plugins/types.js +9 -0
  74. package/dist/plugins/types.js.map +1 -0
  75. package/dist/types/config.d.ts +6 -0
  76. package/dist/types/config.d.ts.map +1 -1
  77. package/dist/types/config.js +0 -3
  78. package/dist/types/config.js.map +1 -1
  79. package/dist/types/driver.d.ts +30 -0
  80. package/dist/types/driver.d.ts.map +1 -1
  81. package/dist/types/driver.js +5 -1
  82. package/dist/types/driver.js.map +1 -1
  83. package/dist/types/index.d.ts +1 -0
  84. package/dist/types/index.d.ts.map +1 -1
  85. package/dist/types/index.js +1 -0
  86. package/dist/types/index.js.map +1 -1
  87. package/dist/types/state.d.ts +9 -0
  88. package/dist/types/state.d.ts.map +1 -1
  89. package/dist/utils/config-loader.js +1 -1
  90. package/dist/utils/config-loader.js.map +1 -1
  91. package/package.json +5 -5
  92. package/prompts/index-review.md +60 -0
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAutoDocDriver.js","sourceRoot":"","sources":["../../src/drivers/BaseAutoDocDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseAutoDocDriver.js","sourceRoot":"","sources":["../../src/drivers/BaseAutoDocDriver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Catalog queries and row mapping for reading existing indexes, one per database platform.
3
+ * Kept separate from the drivers so the mapping can be unit-tested without a database.
4
+ */
5
+ import { type AutoDocIndex } from '../types/driver.js';
6
+ /** One row of {@link POSTGRESQL_INDEX_QUERY}. */
7
+ export interface PostgreSQLIndexRow {
8
+ SchemaName: string;
9
+ TableName: string;
10
+ IndexName: string;
11
+ IsUnique: boolean;
12
+ IsPrimary: boolean;
13
+ Method: string;
14
+ FilterDef: string | null;
15
+ HasExpr: boolean;
16
+ /** Key parts in order; NULL at the position of an expression key part. */
17
+ KeyColumns: (string | null)[] | null;
18
+ IncludeColumns: string[] | null;
19
+ }
20
+ /** All indexes on ordinary and partitioned tables of schema `$1`. */
21
+ export declare const POSTGRESQL_INDEX_QUERY = "\n SELECT\n n.nspname AS \"SchemaName\",\n t.relname AS \"TableName\",\n i.relname AS \"IndexName\",\n ix.indisunique AS \"IsUnique\",\n ix.indisprimary AS \"IsPrimary\",\n am.amname AS \"Method\",\n pg_get_expr(ix.indpred, ix.indrelid) AS \"FilterDef\",\n (ix.indexprs IS NOT NULL) AS \"HasExpr\",\n ARRAY(\n -- attnum 0 marks an expression key part: keep its position as NULL so the order survives\n SELECT CASE WHEN k.attnum = 0 THEN NULL ELSE a.attname::text END\n FROM unnest(ix.indkey::int2[]) WITH ORDINALITY AS k(attnum, ord)\n LEFT JOIN pg_attribute a ON a.attrelid = ix.indrelid AND a.attnum = k.attnum\n WHERE k.ord <= ix.indnkeyatts\n ORDER BY k.ord\n ) AS \"KeyColumns\",\n ARRAY(\n SELECT a.attname::text\n FROM unnest(ix.indkey::int2[]) WITH ORDINALITY AS k(attnum, ord)\n JOIN pg_attribute a ON a.attrelid = ix.indrelid AND a.attnum = k.attnum\n WHERE k.ord > ix.indnkeyatts\n ORDER BY k.ord\n ) AS \"IncludeColumns\"\n FROM pg_index ix\n JOIN pg_class i ON i.oid = ix.indexrelid\n JOIN pg_class t ON t.oid = ix.indrelid\n JOIN pg_namespace n ON n.oid = t.relnamespace\n JOIN pg_am am ON am.oid = i.relam\n WHERE n.nspname = $1 AND t.relkind IN ('r', 'p')\n ORDER BY t.relname, i.relname\n";
22
+ export declare function MapPostgreSQLIndexRows(rows: PostgreSQLIndexRow[]): AutoDocIndex[];
23
+ /** One row of {@link BuildSQLServerIndexQuery}. Column lists are '|'-delimited. */
24
+ export interface SQLServerIndexRow {
25
+ SchemaName: string;
26
+ TableName: string;
27
+ IndexName: string;
28
+ IsUnique: boolean;
29
+ IsPrimaryKey: boolean;
30
+ Method: string;
31
+ FilterDefinition: string | null;
32
+ KeyColumns: string | null;
33
+ IncludeColumns: string | null;
34
+ }
35
+ /** All relational indexes on user tables of one schema (heaps and hypothetical indexes excluded). */
36
+ export declare function BuildSQLServerIndexQuery(schemaName: string): string;
37
+ export declare function MapSQLServerIndexRows(rows: SQLServerIndexRow[]): AutoDocIndex[];
38
+ /** One row of {@link MYSQL_INDEX_QUERY}: one column of one index. */
39
+ export interface MySQLIndexRow {
40
+ SchemaName: string;
41
+ TableName: string;
42
+ IndexName: string;
43
+ NonUnique: number | string;
44
+ Method: string;
45
+ ColumnName: string | null;
46
+ Seq: number;
47
+ }
48
+ /**
49
+ * Index columns of schema `?`, one row each. `EXPRESSION` is deliberately not selected
50
+ * (MariaDB lacks it); a functional key part shows up as a NULL column name.
51
+ */
52
+ export declare const MYSQL_INDEX_QUERY = "\n SELECT\n TABLE_SCHEMA AS SchemaName,\n TABLE_NAME AS TableName,\n INDEX_NAME AS IndexName,\n NON_UNIQUE AS NonUnique,\n INDEX_TYPE AS Method,\n COLUMN_NAME AS ColumnName,\n SEQ_IN_INDEX AS Seq\n FROM information_schema.STATISTICS\n WHERE TABLE_SCHEMA = ?\n ORDER BY TABLE_NAME, INDEX_NAME, SEQ_IN_INDEX\n";
53
+ export declare function MapMySQLIndexRows(rows: MySQLIndexRow[]): AutoDocIndex[];
54
+ //# sourceMappingURL=IndexCatalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IndexCatalog.d.ts","sourceRoot":"","sources":["../../src/drivers/IndexCatalog.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAA+B,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIpF,iDAAiD;AACjD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,0EAA0E;IAC1E,UAAU,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;IACrC,cAAc,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACjC;AAED,qEAAqE;AACrE,eAAO,MAAM,sBAAsB,6xCAgClC,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,YAAY,EAAE,CAajF;AAID,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,qGAAqG;AACrG,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CA6BnE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,YAAY,EAAE,CAc/E;AAID,qEAAqE;AACrE,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,iVAY7B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,YAAY,EAAE,CA0BvE"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Catalog queries and row mapping for reading existing indexes, one per database platform.
3
+ * Kept separate from the drivers so the mapping can be unit-tested without a database.
4
+ */
5
+ import { EscapeSQLString } from '@memberjunction/global';
6
+ import { AUTODOC_EXPRESSION_KEY_PART } from '../types/driver.js';
7
+ /** All indexes on ordinary and partitioned tables of schema `$1`. */
8
+ export const POSTGRESQL_INDEX_QUERY = `
9
+ SELECT
10
+ n.nspname AS "SchemaName",
11
+ t.relname AS "TableName",
12
+ i.relname AS "IndexName",
13
+ ix.indisunique AS "IsUnique",
14
+ ix.indisprimary AS "IsPrimary",
15
+ am.amname AS "Method",
16
+ pg_get_expr(ix.indpred, ix.indrelid) AS "FilterDef",
17
+ (ix.indexprs IS NOT NULL) AS "HasExpr",
18
+ ARRAY(
19
+ -- attnum 0 marks an expression key part: keep its position as NULL so the order survives
20
+ SELECT CASE WHEN k.attnum = 0 THEN NULL ELSE a.attname::text END
21
+ FROM unnest(ix.indkey::int2[]) WITH ORDINALITY AS k(attnum, ord)
22
+ LEFT JOIN pg_attribute a ON a.attrelid = ix.indrelid AND a.attnum = k.attnum
23
+ WHERE k.ord <= ix.indnkeyatts
24
+ ORDER BY k.ord
25
+ ) AS "KeyColumns",
26
+ ARRAY(
27
+ SELECT a.attname::text
28
+ FROM unnest(ix.indkey::int2[]) WITH ORDINALITY AS k(attnum, ord)
29
+ JOIN pg_attribute a ON a.attrelid = ix.indrelid AND a.attnum = k.attnum
30
+ WHERE k.ord > ix.indnkeyatts
31
+ ORDER BY k.ord
32
+ ) AS "IncludeColumns"
33
+ FROM pg_index ix
34
+ JOIN pg_class i ON i.oid = ix.indexrelid
35
+ JOIN pg_class t ON t.oid = ix.indrelid
36
+ JOIN pg_namespace n ON n.oid = t.relnamespace
37
+ JOIN pg_am am ON am.oid = i.relam
38
+ WHERE n.nspname = $1 AND t.relkind IN ('r', 'p')
39
+ ORDER BY t.relname, i.relname
40
+ `;
41
+ export function MapPostgreSQLIndexRows(rows) {
42
+ return rows.map((r) => ({
43
+ SchemaName: r.SchemaName,
44
+ TableName: r.TableName,
45
+ IndexName: r.IndexName,
46
+ Columns: (r.KeyColumns ?? []).map((c) => c ?? AUTODOC_EXPRESSION_KEY_PART),
47
+ IncludeColumns: r.IncludeColumns ?? [],
48
+ IsUnique: r.IsUnique,
49
+ IsPrimaryKey: r.IsPrimary,
50
+ Method: r.Method,
51
+ FilterDefinition: r.FilterDef ?? undefined,
52
+ HasExpressions: r.HasExpr
53
+ }));
54
+ }
55
+ /** All relational indexes on user tables of one schema (heaps and hypothetical indexes excluded). */
56
+ export function BuildSQLServerIndexQuery(schemaName) {
57
+ const columnList = (included, orderBy) => `
58
+ STUFF((
59
+ SELECT '|' + c.name
60
+ FROM sys.index_columns ic
61
+ JOIN sys.columns c ON c.object_id = ic.object_id AND c.column_id = ic.column_id
62
+ WHERE ic.object_id = i.object_id AND ic.index_id = i.index_id AND ic.is_included_column = ${included}
63
+ ORDER BY ${orderBy}
64
+ FOR XML PATH(''), TYPE
65
+ ).value('.', 'nvarchar(max)'), 1, 1, '')`;
66
+ return `
67
+ SELECT
68
+ s.name AS SchemaName,
69
+ t.name AS TableName,
70
+ i.name AS IndexName,
71
+ i.is_unique AS IsUnique,
72
+ i.is_primary_key AS IsPrimaryKey,
73
+ i.type_desc AS Method,
74
+ i.filter_definition AS FilterDefinition,
75
+ ${columnList(0, 'ic.key_ordinal')} AS KeyColumns,
76
+ ${columnList(1, 'ic.index_column_id')} AS IncludeColumns
77
+ FROM sys.indexes i
78
+ JOIN sys.tables t ON t.object_id = i.object_id
79
+ JOIN sys.schemas s ON s.schema_id = t.schema_id
80
+ WHERE s.name = N'${EscapeSQLString(schemaName)}'
81
+ AND i.type > 0
82
+ AND i.is_hypothetical = 0
83
+ ORDER BY t.name, i.name
84
+ `;
85
+ }
86
+ export function MapSQLServerIndexRows(rows) {
87
+ const split = (value) => (value ? value.split('|').filter((c) => c.length > 0) : []);
88
+ return rows.map((r) => ({
89
+ SchemaName: r.SchemaName,
90
+ TableName: r.TableName,
91
+ IndexName: r.IndexName,
92
+ Columns: split(r.KeyColumns),
93
+ IncludeColumns: split(r.IncludeColumns),
94
+ IsUnique: !!r.IsUnique,
95
+ IsPrimaryKey: !!r.IsPrimaryKey,
96
+ Method: r.Method,
97
+ FilterDefinition: r.FilterDefinition ?? undefined,
98
+ HasExpressions: false
99
+ }));
100
+ }
101
+ /**
102
+ * Index columns of schema `?`, one row each. `EXPRESSION` is deliberately not selected
103
+ * (MariaDB lacks it); a functional key part shows up as a NULL column name.
104
+ */
105
+ export const MYSQL_INDEX_QUERY = `
106
+ SELECT
107
+ TABLE_SCHEMA AS SchemaName,
108
+ TABLE_NAME AS TableName,
109
+ INDEX_NAME AS IndexName,
110
+ NON_UNIQUE AS NonUnique,
111
+ INDEX_TYPE AS Method,
112
+ COLUMN_NAME AS ColumnName,
113
+ SEQ_IN_INDEX AS Seq
114
+ FROM information_schema.STATISTICS
115
+ WHERE TABLE_SCHEMA = ?
116
+ ORDER BY TABLE_NAME, INDEX_NAME, SEQ_IN_INDEX
117
+ `;
118
+ export function MapMySQLIndexRows(rows) {
119
+ const byIndex = new Map();
120
+ for (const r of [...rows].sort((a, b) => Number(a.Seq) - Number(b.Seq))) {
121
+ const key = `${r.TableName}\u0000${r.IndexName}`;
122
+ let index = byIndex.get(key);
123
+ if (!index) {
124
+ index = {
125
+ SchemaName: r.SchemaName,
126
+ TableName: r.TableName,
127
+ IndexName: r.IndexName,
128
+ Columns: [],
129
+ IncludeColumns: [],
130
+ IsUnique: Number(r.NonUnique) === 0,
131
+ IsPrimaryKey: r.IndexName === 'PRIMARY',
132
+ Method: r.Method,
133
+ HasExpressions: false
134
+ };
135
+ byIndex.set(key, index);
136
+ }
137
+ // A functional key part has no column name; keep its position so the leading column stays correct.
138
+ if (r.ColumnName === null) {
139
+ index.HasExpressions = true;
140
+ }
141
+ index.Columns.push(r.ColumnName ?? AUTODOC_EXPRESSION_KEY_PART);
142
+ }
143
+ return [...byIndex.values()];
144
+ }
145
+ //# sourceMappingURL=IndexCatalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IndexCatalog.js","sourceRoot":"","sources":["../../src/drivers/IndexCatalog.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Uses mysql2 driver for database connectivity
4
4
  */
5
5
  import { BaseAutoDocDriver } from './BaseAutoDocDriver.js';
6
- import { AutoDocSchema, AutoDocTable, AutoDocColumn, AutoDocConnectionConfig, AutoDocQueryResult, AutoDocConnectionTestResult, AutoDocSchemaFilter, AutoDocTableFilter, AutoDocColumnStatistics, AutoDocExistingDescription } from '../types/driver.js';
6
+ import { AutoDocSchema, AutoDocTable, AutoDocColumn, AutoDocConnectionConfig, AutoDocQueryResult, AutoDocConnectionTestResult, AutoDocSchemaFilter, AutoDocTableFilter, AutoDocColumnStatistics, AutoDocExistingDescription, AutoDocIndex } from '../types/driver.js';
7
7
  /**
8
8
  * MySQL driver implementation
9
9
  * Registered with MJGlobal for factory instantiation
@@ -18,6 +18,10 @@ export declare class MySQLDriver extends BaseAutoDocDriver {
18
18
  getSchemas(schemaFilter: AutoDocSchemaFilter, tableFilter: AutoDocTableFilter): Promise<AutoDocSchema[]>;
19
19
  protected getTables(schemaName: string, tableFilter: AutoDocTableFilter): Promise<AutoDocTable[]>;
20
20
  protected getColumns(schemaName: string, tableName: string): Promise<AutoDocColumn[]>;
21
+ /**
22
+ * Get every existing index on the tables of one schema (primary-key indexes included).
23
+ */
24
+ GetIndexes(schemaName: string): Promise<AutoDocIndex[]>;
21
25
  getExistingDescriptions(schemaName: string, tableName: string): Promise<AutoDocExistingDescription[]>;
22
26
  getColumnStatistics(schemaName: string, tableName: string, columnName: string, dataType: string, cardinalityThreshold: number, sampleSize: number): Promise<AutoDocColumnStatistics>;
23
27
  protected getDistinctCount(schemaName: string, tableName: string, columnName: string): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"MySQLDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/MySQLDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MySQLDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/MySQLDriver.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
14
14
  import mysql from 'mysql2/promise';
15
15
  import { RegisterClass } from '@memberjunction/global';
16
16
  import { BaseAutoDocDriver } from './BaseAutoDocDriver.js';
17
+ import { MYSQL_INDEX_QUERY, MapMySQLIndexRows } from './IndexCatalog.js';
17
18
  /**
18
19
  * MySQL driver implementation
19
20
  * Registered with MJGlobal for factory instantiation
@@ -35,12 +36,10 @@ let MySQLDriver = class MySQLDriver extends BaseAutoDocDriver {
35
36
  waitForConnections: true,
36
37
  queueLimit: 0,
37
38
  enableKeepAlive: true,
38
- keepAliveInitialDelay: 0,
39
- // MySQL 8+ requires explicit configuration
40
- authPlugins: {
41
- mysql_native_password: () => () => Buffer.from(''),
42
- caching_sha2_password: () => () => Buffer.from('')
43
- }
39
+ keepAliveInitialDelay: 0
40
+ // No authPlugins override: mysql2 implements mysql_native_password and caching_sha2_password
41
+ // itself. The previous override answered both with an empty buffer, so the password was never
42
+ // sent and every password-protected MySQL 8 login failed ("using password: NO").
44
43
  };
45
44
  }
46
45
  // ============================================================================
@@ -205,6 +204,16 @@ let MySQLDriver = class MySQLDriver extends BaseAutoDocDriver {
205
204
  scale: row.scale != null ? row.scale : undefined
206
205
  }));
207
206
  }
207
+ /**
208
+ * Get every existing index on the tables of one schema (primary-key indexes included).
209
+ */
210
+ async GetIndexes(schemaName) {
211
+ const result = await this.executeQuery(MYSQL_INDEX_QUERY, 3, [schemaName]);
212
+ if (!result.success) {
213
+ throw new Error(`Failed to read indexes for schema ${schemaName}: ${result.errorMessage}`);
214
+ }
215
+ return MapMySQLIndexRows(result.data ?? []);
216
+ }
208
217
  async getExistingDescriptions(schemaName, tableName) {
209
218
  // MySQL stores comments in INFORMATION_SCHEMA
210
219
  const tableQuery = `
@@ -1 +1 @@
1
- {"version":3,"file":"MySQLDriver.js","sourceRoot":"","sources":["../../src/drivers/MySQLDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MySQLDriver.js","sourceRoot":"","sources":["../../src/drivers/MySQLDriver.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Uses pg driver for database connectivity
4
4
  */
5
5
  import { BaseAutoDocDriver } from './BaseAutoDocDriver.js';
6
- import { AutoDocSchema, AutoDocTable, AutoDocColumn, AutoDocConnectionConfig, AutoDocQueryResult, AutoDocConnectionTestResult, AutoDocSchemaFilter, AutoDocTableFilter, AutoDocColumnStatistics, AutoDocExistingDescription } from '../types/driver.js';
6
+ import { AutoDocSchema, AutoDocTable, AutoDocColumn, AutoDocConnectionConfig, AutoDocQueryResult, AutoDocConnectionTestResult, AutoDocSchemaFilter, AutoDocTableFilter, AutoDocColumnStatistics, AutoDocExistingDescription, AutoDocIndex } from '../types/driver.js';
7
7
  /**
8
8
  * PostgreSQL driver implementation
9
9
  * Registered with MJGlobal for factory instantiation
@@ -18,6 +18,10 @@ export declare class PostgreSQLDriver extends BaseAutoDocDriver {
18
18
  getSchemas(schemaFilter: AutoDocSchemaFilter, tableFilter: AutoDocTableFilter): Promise<AutoDocSchema[]>;
19
19
  protected getTables(schemaName: string, tableFilter: AutoDocTableFilter): Promise<AutoDocTable[]>;
20
20
  protected getColumns(schemaName: string, tableName: string): Promise<AutoDocColumn[]>;
21
+ /**
22
+ * Get every existing index on the tables of one schema (primary-key indexes included).
23
+ */
24
+ GetIndexes(schemaName: string): Promise<AutoDocIndex[]>;
21
25
  getExistingDescriptions(schemaName: string, tableName: string): Promise<AutoDocExistingDescription[]>;
22
26
  getColumnStatistics(schemaName: string, tableName: string, columnName: string, dataType: string, cardinalityThreshold: number, sampleSize: number): Promise<AutoDocColumnStatistics>;
23
27
  protected getDistinctCount(schemaName: string, tableName: string, columnName: string): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"PostgreSQLDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/PostgreSQLDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgreSQLDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/PostgreSQLDriver.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
14
14
  import { Pool } from 'pg';
15
15
  import { RegisterClass } from '@memberjunction/global';
16
16
  import { BaseAutoDocDriver } from './BaseAutoDocDriver.js';
17
+ import { POSTGRESQL_INDEX_QUERY, MapPostgreSQLIndexRows } from './IndexCatalog.js';
17
18
  /**
18
19
  * PostgreSQL driver implementation
19
20
  * Registered with MJGlobal for factory instantiation
@@ -228,6 +229,16 @@ let PostgreSQLDriver = class PostgreSQLDriver extends BaseAutoDocDriver {
228
229
  scale: row.numeric_scale || undefined
229
230
  }));
230
231
  }
232
+ /**
233
+ * Get every existing index on the tables of one schema (primary-key indexes included).
234
+ */
235
+ async GetIndexes(schemaName) {
236
+ const result = await this.executeQuery(POSTGRESQL_INDEX_QUERY, 3, [schemaName]);
237
+ if (!result.success) {
238
+ throw new Error(`Failed to read indexes for schema ${schemaName}: ${result.errorMessage}`);
239
+ }
240
+ return MapPostgreSQLIndexRows(result.data ?? []);
241
+ }
231
242
  async getExistingDescriptions(schemaName, tableName) {
232
243
  // PostgreSQL uses pg_description for comments
233
244
  const query = `
@@ -1 +1 @@
1
- {"version":3,"file":"PostgreSQLDriver.js","sourceRoot":"","sources":["../../src/drivers/PostgreSQLDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgreSQLDriver.js","sourceRoot":"","sources":["../../src/drivers/PostgreSQLDriver.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Uses mssql driver for database connectivity
4
4
  */
5
5
  import { BaseAutoDocDriver } from './BaseAutoDocDriver.js';
6
- import { AutoDocSchema, AutoDocTable, AutoDocColumn, AutoDocConnectionConfig, AutoDocQueryResult, AutoDocConnectionTestResult, AutoDocSchemaFilter, AutoDocTableFilter, AutoDocColumnStatistics, AutoDocExistingDescription } from '../types/driver.js';
6
+ import { AutoDocSchema, AutoDocTable, AutoDocColumn, AutoDocConnectionConfig, AutoDocQueryResult, AutoDocConnectionTestResult, AutoDocSchemaFilter, AutoDocTableFilter, AutoDocColumnStatistics, AutoDocExistingDescription, AutoDocIndex } from '../types/driver.js';
7
7
  /**
8
8
  * SQL Server driver implementation
9
9
  * Registered with MJGlobal for factory instantiation
@@ -18,6 +18,10 @@ export declare class SQLServerDriver extends BaseAutoDocDriver {
18
18
  getSchemas(schemaFilter: AutoDocSchemaFilter, tableFilter: AutoDocTableFilter): Promise<AutoDocSchema[]>;
19
19
  protected getTables(schemaName: string, tableFilter: AutoDocTableFilter): Promise<AutoDocTable[]>;
20
20
  protected getColumns(schemaName: string, tableName: string): Promise<AutoDocColumn[]>;
21
+ /**
22
+ * Get every existing index on the tables of one schema (primary-key indexes included).
23
+ */
24
+ GetIndexes(schemaName: string): Promise<AutoDocIndex[]>;
21
25
  getExistingDescriptions(schemaName: string, tableName: string): Promise<AutoDocExistingDescription[]>;
22
26
  getColumnStatistics(schemaName: string, tableName: string, columnName: string, dataType: string, cardinalityThreshold: number, sampleSize: number): Promise<AutoDocColumnStatistics>;
23
27
  protected getDistinctCount(schemaName: string, tableName: string, columnName: string): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"SQLServerDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/SQLServerDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLServerDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/SQLServerDriver.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
14
14
  import sql from 'mssql';
15
15
  import { RegisterClass } from '@memberjunction/global';
16
16
  import { BaseAutoDocDriver } from './BaseAutoDocDriver.js';
17
+ import { BuildSQLServerIndexQuery, MapSQLServerIndexRows } from './IndexCatalog.js';
17
18
  /**
18
19
  * SQL Server driver implementation
19
20
  * Registered with MJGlobal for factory instantiation
@@ -213,6 +214,16 @@ let SQLServerDriver = class SQLServerDriver extends BaseAutoDocDriver {
213
214
  scale: row.scale > 0 ? row.scale : undefined
214
215
  }));
215
216
  }
217
+ /**
218
+ * Get every existing index on the tables of one schema (primary-key indexes included).
219
+ */
220
+ async GetIndexes(schemaName) {
221
+ const result = await this.executeQuery(BuildSQLServerIndexQuery(schemaName));
222
+ if (!result.success) {
223
+ throw new Error(`Failed to read indexes for schema ${schemaName}: ${result.errorMessage}`);
224
+ }
225
+ return MapSQLServerIndexRows(result.data ?? []);
226
+ }
216
227
  async getExistingDescriptions(schemaName, tableName) {
217
228
  const query = `
218
229
  SELECT