@tejasanik/postgres-mcp-server 2.2.0 → 2.3.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 (63) hide show
  1. package/README.md +72 -13
  2. package/dist/db-manager.js +157 -16
  3. package/package.json +3 -4
  4. package/dist/db-manager/index.d.ts +0 -7
  5. package/dist/db-manager/index.d.ts.map +0 -1
  6. package/dist/db-manager/index.js.map +0 -1
  7. package/dist/db-manager/validation.d.ts +0 -35
  8. package/dist/db-manager/validation.d.ts.map +0 -1
  9. package/dist/db-manager/validation.js.map +0 -1
  10. package/dist/db-manager.d.ts +0 -253
  11. package/dist/db-manager.d.ts.map +0 -1
  12. package/dist/db-manager.js.map +0 -1
  13. package/dist/index.d.ts +0 -3
  14. package/dist/index.d.ts.map +0 -1
  15. package/dist/index.js.map +0 -1
  16. package/dist/tools/analysis-tools.d.ts +0 -25
  17. package/dist/tools/analysis-tools.d.ts.map +0 -1
  18. package/dist/tools/analysis-tools.js.map +0 -1
  19. package/dist/tools/index.d.ts +0 -5
  20. package/dist/tools/index.d.ts.map +0 -1
  21. package/dist/tools/index.js.map +0 -1
  22. package/dist/tools/schema-tools.d.ts +0 -61
  23. package/dist/tools/schema-tools.d.ts.map +0 -1
  24. package/dist/tools/schema-tools.js.map +0 -1
  25. package/dist/tools/server-tools.d.ts +0 -61
  26. package/dist/tools/server-tools.d.ts.map +0 -1
  27. package/dist/tools/server-tools.js.map +0 -1
  28. package/dist/tools/sql/utils/connection-utils.d.ts +0 -79
  29. package/dist/tools/sql/utils/connection-utils.d.ts.map +0 -1
  30. package/dist/tools/sql/utils/connection-utils.js.map +0 -1
  31. package/dist/tools/sql/utils/constants.d.ts +0 -55
  32. package/dist/tools/sql/utils/constants.d.ts.map +0 -1
  33. package/dist/tools/sql/utils/constants.js.map +0 -1
  34. package/dist/tools/sql/utils/dry-run-utils.d.ts +0 -31
  35. package/dist/tools/sql/utils/dry-run-utils.d.ts.map +0 -1
  36. package/dist/tools/sql/utils/dry-run-utils.js.map +0 -1
  37. package/dist/tools/sql/utils/file-handler.d.ts +0 -57
  38. package/dist/tools/sql/utils/file-handler.d.ts.map +0 -1
  39. package/dist/tools/sql/utils/file-handler.js.map +0 -1
  40. package/dist/tools/sql/utils/index.d.ts +0 -12
  41. package/dist/tools/sql/utils/index.d.ts.map +0 -1
  42. package/dist/tools/sql/utils/index.js.map +0 -1
  43. package/dist/tools/sql/utils/result-formatter.d.ts +0 -94
  44. package/dist/tools/sql/utils/result-formatter.d.ts.map +0 -1
  45. package/dist/tools/sql/utils/result-formatter.js.map +0 -1
  46. package/dist/tools/sql/utils/sql-parser.d.ts +0 -125
  47. package/dist/tools/sql/utils/sql-parser.d.ts.map +0 -1
  48. package/dist/tools/sql/utils/sql-parser.js.map +0 -1
  49. package/dist/tools/sql-tools.d.ts +0 -215
  50. package/dist/tools/sql-tools.d.ts.map +0 -1
  51. package/dist/tools/sql-tools.js.map +0 -1
  52. package/dist/types.d.ts +0 -432
  53. package/dist/types.d.ts.map +0 -1
  54. package/dist/types.js.map +0 -1
  55. package/dist/utils/index.d.ts +0 -3
  56. package/dist/utils/index.d.ts.map +0 -1
  57. package/dist/utils/index.js.map +0 -1
  58. package/dist/utils/retry.d.ts +0 -21
  59. package/dist/utils/retry.d.ts.map +0 -1
  60. package/dist/utils/retry.js.map +0 -1
  61. package/dist/utils/validation.d.ts +0 -63
  62. package/dist/utils/validation.d.ts.map +0 -1
  63. package/dist/utils/validation.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"server-tools.js","sourceRoot":"","sources":["../../src/tools/server-tools.ts"],"names":[],"mappings":"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"}
@@ -1,79 +0,0 @@
1
- /**
2
- * Connection Utilities
3
- *
4
- * Helper functions for connection management and override handling.
5
- * Centralizes connection override logic to reduce duplication.
6
- */
7
- import { ConnectionOverride } from '../../../types.js';
8
- import { PoolClient } from 'pg';
9
- /**
10
- * Parameters for connection override.
11
- */
12
- export interface ConnectionOverrideParams {
13
- server?: string;
14
- database?: string;
15
- schema?: string;
16
- }
17
- /**
18
- * Result of client acquisition.
19
- */
20
- export interface AcquiredClient {
21
- client: PoolClient;
22
- release: () => void;
23
- isOverride: boolean;
24
- connectionInfo?: {
25
- server: string;
26
- database: string;
27
- schema: string;
28
- };
29
- }
30
- /**
31
- * Build a ConnectionOverride object from optional parameters.
32
- * Returns undefined if no override parameters are provided.
33
- *
34
- * @param params - Optional connection override parameters
35
- * @returns ConnectionOverride object or undefined
36
- */
37
- export declare function buildConnectionOverride(params: ConnectionOverrideParams): ConnectionOverride | undefined;
38
- /**
39
- * Check if connection override parameters conflict with transaction usage.
40
- *
41
- * @param params - Connection override parameters
42
- * @param transactionId - Transaction ID if any
43
- * @throws Error if override is used with transaction
44
- */
45
- export declare function validateOverrideWithTransaction(params: ConnectionOverrideParams, transactionId?: string): void;
46
- /**
47
- * Acquire a client with optional connection override.
48
- * Handles both regular and override client acquisition.
49
- *
50
- * @param override - Optional connection override
51
- * @returns Acquired client with release function
52
- */
53
- export declare function acquireClient(override?: ConnectionOverride): Promise<AcquiredClient>;
54
- /**
55
- * Execute a function with an acquired client, ensuring proper cleanup.
56
- *
57
- * @param override - Optional connection override
58
- * @param fn - Function to execute with the client
59
- * @returns Result of the function
60
- */
61
- export declare function withClient<T>(override: ConnectionOverride | undefined, fn: (client: PoolClient) => Promise<T>): Promise<T>;
62
- /**
63
- * Execute a function with a transaction, ensuring proper rollback on error.
64
- *
65
- * @param override - Optional connection override
66
- * @param fn - Function to execute within transaction
67
- * @param rollbackOnComplete - If true, rollback even on success (for dry-run)
68
- * @returns Result of the function
69
- */
70
- export declare function withTransaction<T>(override: ConnectionOverride | undefined, fn: (client: PoolClient) => Promise<T>, rollbackOnComplete?: boolean): Promise<T>;
71
- /**
72
- * Execute a dry-run transaction (always rollback).
73
- *
74
- * @param override - Optional connection override
75
- * @param fn - Function to execute within transaction
76
- * @returns Result of the function
77
- */
78
- export declare function withDryRunTransaction<T>(override: ConnectionOverride | undefined, fn: (client: PoolClient) => Promise<T>): Promise<T>;
79
- //# sourceMappingURL=connection-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection-utils.d.ts","sourceRoot":"","sources":["../../../../src/tools/sql/utils/connection-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEhC;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,wBAAwB,GAC/B,kBAAkB,GAAG,SAAS,CAUhC;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,wBAAwB,EAChC,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CAQN;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAuBzB;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,EACxC,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,GACrC,OAAO,CAAC,CAAC,CAAC,CAOZ;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACrC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,EACxC,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,EACtC,kBAAkB,GAAE,OAAe,GAClC,OAAO,CAAC,CAAC,CAAC,CAqBZ;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,EAC3C,QAAQ,EAAE,kBAAkB,GAAG,SAAS,EACxC,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,GACrC,OAAO,CAAC,CAAC,CAAC,CAEZ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection-utils.js","sourceRoot":"","sources":["../../../../src/tools/sql/utils/connection-utils.ts"],"names":[],"mappings":"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"}
@@ -1,55 +0,0 @@
1
- /**
2
- * SQL Tools Constants
3
- *
4
- * Centralized configuration values for SQL execution tools.
5
- * All magic numbers are defined here for maintainability.
6
- */
7
- /** Maximum characters in response before writing to temp file */
8
- export declare const MAX_OUTPUT_CHARS = 50000;
9
- /** Default maximum rows to return in direct response */
10
- export declare const MAX_ROWS_DEFAULT = 1000;
11
- /** Absolute maximum rows allowed */
12
- export declare const MAX_ROWS_LIMIT = 100000;
13
- /** Default SQL query length limit (100KB) */
14
- export declare const DEFAULT_SQL_LENGTH_LIMIT = 100000;
15
- /** Maximum number of query parameters */
16
- export declare const MAX_PARAMS = 100;
17
- /** Maximum SQL file size (50MB) */
18
- export declare const MAX_SQL_FILE_SIZE: number;
19
- /** Maximum sample rows to return in dry-run */
20
- export declare const MAX_DRY_RUN_SAMPLE_ROWS = 10;
21
- /** Maximum statements to preview in file preview */
22
- export declare const MAX_PREVIEW_STATEMENTS = 100;
23
- /** Default statements to show in preview */
24
- export declare const DEFAULT_PREVIEW_STATEMENTS = 20;
25
- /** Maximum batch queries in single call */
26
- export declare const MAX_BATCH_QUERIES = 20;
27
- /** Maximum sample size for mutation preview */
28
- export declare const MAX_MUTATION_SAMPLE_SIZE = 20;
29
- /** Default sample size for mutation preview */
30
- export declare const DEFAULT_MUTATION_SAMPLE_SIZE = 5;
31
- /** Transaction timeout in milliseconds (10 minutes for active operations) */
32
- export declare const TRANSACTION_TIMEOUT_MS: number;
33
- /** Transaction auto-cleanup timeout in milliseconds (45 minutes) */
34
- export declare const TRANSACTION_CLEANUP_TIMEOUT_MS: number;
35
- /** Transaction cleanup check interval in milliseconds (5 minutes) */
36
- export declare const TRANSACTION_CLEANUP_INTERVAL_MS: number;
37
- /** Maximum SQL length for ReDoS-safe regex operations (100KB) */
38
- export declare const MAX_SQL_LENGTH_FOR_REGEX = 100000;
39
- /** Maximum hypothetical indexes per query */
40
- export declare const MAX_HYPOTHETICAL_INDEXES = 10;
41
- /** Maximum columns per hypothetical index */
42
- export declare const MAX_HYPOTHETICAL_INDEX_COLUMNS = 10;
43
- /** Maximum statements in dry-run file results */
44
- export declare const MAX_DRY_RUN_STATEMENTS = 200;
45
- /** Default statements in dry-run file results */
46
- export declare const DEFAULT_DRY_RUN_STATEMENTS = 50;
47
- /** Maximum rows per statement in multi-statement execution */
48
- export declare const MAX_ROWS_PER_STATEMENT = 100;
49
- /** Short SQL truncation limit for display */
50
- export declare const SQL_TRUNCATION_SHORT = 200;
51
- /** Long SQL truncation limit for detailed display */
52
- export declare const SQL_TRUNCATION_LONG = 300;
53
- /** Maximum tables to analyze for schema hints */
54
- export declare const MAX_TABLES_TO_ANALYZE = 10;
55
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/tools/sql/utils/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,iEAAiE;AACjE,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AAEtC,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,oCAAoC;AACpC,eAAO,MAAM,cAAc,SAAS,CAAC;AAErC,6CAA6C;AAC7C,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAE/C,yCAAyC;AACzC,eAAO,MAAM,UAAU,MAAM,CAAC;AAE9B,mCAAmC;AACnC,eAAO,MAAM,iBAAiB,QAAmB,CAAC;AAElD,+CAA+C;AAC/C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,oDAAoD;AACpD,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,4CAA4C;AAC5C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,2CAA2C;AAC3C,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,+CAA+C;AAC/C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,+CAA+C;AAC/C,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,6EAA6E;AAC7E,eAAO,MAAM,sBAAsB,QAAiB,CAAC;AAErD,oEAAoE;AACpE,eAAO,MAAM,8BAA8B,QAAiB,CAAC;AAE7D,qEAAqE;AACrE,eAAO,MAAM,+BAA+B,QAAgB,CAAC;AAE7D,iEAAiE;AACjE,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAE/C,6CAA6C;AAC7C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,6CAA6C;AAC7C,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD,iDAAiD;AACjD,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,iDAAiD;AACjD,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,8DAA8D;AAC9D,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,6CAA6C;AAC7C,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,qDAAqD;AACrD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,iDAAiD;AACjD,eAAO,MAAM,qBAAqB,KAAK,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/tools/sql/utils/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,iEAAiE;AACjE,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAEtC,wDAAwD;AACxD,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAErC,oCAAoC;AACpC,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC;AAErC,6CAA6C;AAC7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAE/C,yCAAyC;AACzC,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAE9B,mCAAmC;AACnC,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAE1C,oDAAoD;AACpD,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C,4CAA4C;AAC5C,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAE7C,2CAA2C;AAC3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEpC,+CAA+C;AAC/C,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,+CAA+C;AAC/C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAE9C,6EAA6E;AAC7E,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAErD,oEAAoE;AACpE,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7D,qEAAqE;AACrE,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7D,iEAAiE;AACjE,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAE/C,6CAA6C;AAC7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,6CAA6C;AAC7C,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAEjD,iDAAiD;AACjD,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C,iDAAiD;AACjD,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAE7C,8DAA8D;AAC9D,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C,6CAA6C;AAC7C,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAExC,qDAAqD;AACrD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEvC,iDAAiD;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC"}
@@ -1,31 +0,0 @@
1
- /**
2
- * Dry-Run Utilities
3
- *
4
- * Helper functions for transaction-based dry-run operations.
5
- * Handles error extraction and detection of non-rollbackable operations.
6
- */
7
- import { DryRunError, NonRollbackableWarning } from '../../../types.js';
8
- /**
9
- * Extract detailed error information from a PostgreSQL error.
10
- * Captures all available fields to help AI quickly identify and fix issues.
11
- */
12
- export declare function extractDryRunError(error: unknown): DryRunError;
13
- /**
14
- * Check if a SQL statement contains operations that cannot be fully rolled back
15
- * or have side effects even within a transaction.
16
- *
17
- * @param sql - The SQL statement to check
18
- * @param statementIndex - Optional statement index for error reporting
19
- * @param lineNumber - Optional line number for error reporting
20
- * @returns Array of warnings about non-rollbackable operations
21
- */
22
- export declare function detectNonRollbackableOperations(sql: string, statementIndex?: number, lineNumber?: number): NonRollbackableWarning[];
23
- /**
24
- * Check if any warning requires skipping the statement.
25
- */
26
- export declare function hasMustSkipWarning(warnings: NonRollbackableWarning[]): boolean;
27
- /**
28
- * Get skip reason from must-skip warnings.
29
- */
30
- export declare function getSkipReason(warnings: NonRollbackableWarning[]): string;
31
- //# sourceMappingURL=dry-run-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dry-run-utils.d.ts","sourceRoot":"","sources":["../../../../src/tools/sql/utils/dry-run-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAgFxE;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAsC9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,MAAM,EACX,cAAc,CAAC,EAAE,MAAM,EACvB,UAAU,CAAC,EAAE,MAAM,GAClB,sBAAsB,EAAE,CAkB1B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAE9E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,sBAAsB,EAAE,GAAG,MAAM,CAKxE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dry-run-utils.js","sourceRoot":"","sources":["../../../../src/tools/sql/utils/dry-run-utils.ts"],"names":[],"mappings":"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"}
@@ -1,57 +0,0 @@
1
- /**
2
- * File Handler Utilities
3
- *
4
- * Functions for validating and processing SQL files.
5
- * Handles file validation, reading, and preprocessing.
6
- */
7
- /**
8
- * Result of file validation.
9
- */
10
- export interface FileValidationResult {
11
- isValid: boolean;
12
- resolvedPath: string;
13
- fileSize: number;
14
- error?: string;
15
- }
16
- /**
17
- * Validates a SQL file path and returns file information.
18
- *
19
- * @param filePath - Path to the SQL file
20
- * @returns Validation result with resolved path and file size
21
- */
22
- export declare function validateSqlFile(filePath: string): FileValidationResult;
23
- /**
24
- * Reads a SQL file and optionally preprocesses it.
25
- *
26
- * @param resolvedPath - Resolved path to the SQL file
27
- * @param stripPatterns - Optional patterns to remove from content
28
- * @param stripAsRegex - If true, patterns are regex; if false, literal strings
29
- * @returns Preprocessed SQL content
30
- */
31
- export declare function readSqlFile(resolvedPath: string, stripPatterns?: string[], stripAsRegex?: boolean): string;
32
- /**
33
- * Preprocess SQL content by removing patterns.
34
- * Supports both literal string matching and regex patterns.
35
- *
36
- * @param sql - The SQL content to preprocess
37
- * @param patterns - Array of patterns to remove from SQL content
38
- * @param isRegex - If true, patterns are treated as regex; if false, as literal strings
39
- * @returns Preprocessed SQL content
40
- */
41
- export declare function preprocessSqlContent(sql: string, patterns: string[], isRegex?: boolean): string;
42
- /**
43
- * Format file size in human-readable format.
44
- *
45
- * @param bytes - File size in bytes
46
- * @returns Human-readable file size (e.g., "1.5 MB")
47
- */
48
- export declare function formatFileSize(bytes: number): string;
49
- /**
50
- * Ensure a file path is safe (no path traversal attacks).
51
- *
52
- * @param basePath - Base directory path
53
- * @param filePath - File path to validate
54
- * @returns True if the file path is within the base path
55
- */
56
- export declare function isPathSafe(basePath: string, filePath: string): boolean;
57
- //# sourceMappingURL=file-handler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-handler.d.ts","sourceRoot":"","sources":["../../../../src/tools/sql/utils/file-handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,CA+DtE;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,YAAY,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,EAAE,EACxB,YAAY,GAAE,OAAe,GAC5B,MAAM,CAQR;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,GAAE,OAAe,GACvB,MAAM,CA2BR;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYpD;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAItE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-handler.js","sourceRoot":"","sources":["../../../../src/tools/sql/utils/file-handler.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- /**
2
- * SQL Tools Utilities
3
- *
4
- * Re-exports all utility modules for convenient importing.
5
- */
6
- export * from './constants.js';
7
- export * from './connection-utils.js';
8
- export * from './dry-run-utils.js';
9
- export * from './file-handler.js';
10
- export * from './result-formatter.js';
11
- export * from './sql-parser.js';
12
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tools/sql/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tools/sql/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
@@ -1,94 +0,0 @@
1
- /**
2
- * Result Formatter Utilities
3
- *
4
- * Functions for formatting query results, handling large outputs,
5
- * and timing measurements.
6
- */
7
- /**
8
- * Result of large output handling.
9
- */
10
- export interface LargeOutputResult {
11
- truncated: boolean;
12
- outputFile?: string;
13
- rows: unknown[];
14
- }
15
- /**
16
- * Calculate execution time from hrtime bigints.
17
- *
18
- * @param startTime - Start time from process.hrtime.bigint()
19
- * @param endTime - End time from process.hrtime.bigint()
20
- * @returns Execution time in milliseconds (rounded to 2 decimal places)
21
- */
22
- export declare function calculateExecutionTime(startTime: bigint, endTime: bigint): number;
23
- /**
24
- * Get current time for timing measurements.
25
- *
26
- * @returns Current high-resolution time as bigint
27
- */
28
- export declare function getStartTime(): bigint;
29
- /**
30
- * Handle potentially large output by writing to file if necessary.
31
- *
32
- * @param rows - Result rows to check
33
- * @param maxChars - Maximum characters before writing to file
34
- * @returns Object with truncated flag, optional file path, and rows
35
- */
36
- export declare function handleLargeOutput(rows: unknown[], maxChars?: number): LargeOutputResult;
37
- /**
38
- * Paginate result rows.
39
- *
40
- * @param rows - All result rows
41
- * @param offset - Number of rows to skip
42
- * @param maxRows - Maximum rows to return
43
- * @returns Paginated rows and metadata
44
- */
45
- export declare function paginateRows(rows: unknown[], offset: number, maxRows: number): {
46
- rows: unknown[];
47
- offset: number;
48
- hasMore: boolean;
49
- totalCount: number;
50
- };
51
- /**
52
- * Truncate SQL for display in error messages or previews.
53
- *
54
- * @param sql - SQL string to truncate
55
- * @param maxLength - Maximum length (default: 200)
56
- * @returns Truncated SQL with ellipsis if needed
57
- */
58
- export declare function truncateSql(sql: string, maxLength?: number): string;
59
- /**
60
- * Format field names from query result.
61
- *
62
- * @param fields - Array of field objects from pg result
63
- * @returns Array of field names
64
- */
65
- export declare function formatFieldNames(fields: Array<{
66
- name: string;
67
- }>): string[];
68
- /**
69
- * Create a summary message for statement execution.
70
- *
71
- * @param totalStatements - Total number of statements
72
- * @param successCount - Number of successful statements
73
- * @param failureCount - Number of failed statements
74
- * @param skippedCount - Number of skipped statements
75
- * @param rolledBack - Whether changes were rolled back
76
- * @returns Summary message string
77
- */
78
- export declare function createExecutionSummary(totalStatements: number, successCount: number, failureCount: number, skippedCount: number, rolledBack: boolean): string;
79
- /**
80
- * Count statements by type.
81
- *
82
- * @param types - Array of statement types
83
- * @returns Object with counts by type
84
- */
85
- export declare function countStatementsByType(types: string[]): Record<string, number>;
86
- /**
87
- * Create a human-readable file summary.
88
- *
89
- * @param statementsByType - Statement counts by type
90
- * @param totalStatements - Total statement count
91
- * @returns Summary string
92
- */
93
- export declare function createFileSummary(statementsByType: Record<string, number>, totalStatements: number): string;
94
- //# sourceMappingURL=result-formatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"result-formatter.d.ts","sourceRoot":"","sources":["../../../../src/tools/sql/utils/result-formatter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,EAAE,EACf,QAAQ,GAAE,MAAyB,GAClC,iBAAiB,CAmBnB;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EAAE,EACf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd;IACD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB,CAWA;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,MAAM,CAMxE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,MAAM,EAAE,CAE1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,OAAO,GAClB,MAAM,CAwBR;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ7E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACxC,eAAe,EAAE,MAAM,GACtB,MAAM,CAOR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"result-formatter.js","sourceRoot":"","sources":["../../../../src/tools/sql/utils/result-formatter.ts"],"names":[],"mappings":"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"}
@@ -1,125 +0,0 @@
1
- /**
2
- * SQL Parser Utilities
3
- *
4
- * Functions for parsing, analyzing, and splitting SQL statements.
5
- * Handles PostgreSQL-specific syntax including:
6
- * - Dollar-quoted strings ($$ or $tag$)
7
- * - Nested block comments
8
- * - Single and double-quoted strings with escape handling
9
- */
10
- import { ParsedStatement } from '../../../types.js';
11
- /**
12
- * Warning information from SQL parsing.
13
- */
14
- export interface ParseWarning {
15
- type: 'unclosed_dollar_quote' | 'unclosed_block_comment' | 'unclosed_string';
16
- message: string;
17
- lineNumber: number;
18
- position: number;
19
- tag?: string;
20
- }
21
- /**
22
- * Result of SQL parsing with optional warnings.
23
- */
24
- export interface ParseResult {
25
- statements: ParsedStatement[];
26
- warnings: ParseWarning[];
27
- }
28
- /**
29
- * Strips leading line comments and block comments from SQL.
30
- * Properly handles nested block comments (PostgreSQL supports nesting).
31
- * Returns empty string if the entire content is just comments.
32
- *
33
- * IMPORTANT: This function only strips LEADING comments. Line numbers
34
- * in the remaining SQL are NOT affected - they still correspond to
35
- * the original file positions.
36
- *
37
- * @param sql - The SQL string to process
38
- * @returns The SQL with leading comments stripped
39
- */
40
- export declare function stripLeadingComments(sql: string): string;
41
- /**
42
- * Detect the type of SQL statement (SELECT, INSERT, UPDATE, DELETE, CREATE, etc.)
43
- *
44
- * @param sql - The SQL statement to analyze
45
- * @returns The detected statement type
46
- */
47
- export declare function detectStatementType(sql: string): string;
48
- /**
49
- * Split SQL content into individual statements with line number tracking.
50
- * Handles PostgreSQL-specific syntax including:
51
- * - Single and double-quoted strings with escape handling
52
- * - Dollar-quoted strings ($$ or $tag$)
53
- * - Line comments (--)
54
- * - Nested block comments (PostgreSQL supports nested comments)
55
- *
56
- * Line numbers in the returned statements correspond to actual file positions.
57
- * Comments are NOT excluded from line counting - all newlines are counted.
58
- *
59
- * @param sql - The SQL content to split
60
- * @returns Array of parsed statements with accurate line numbers
61
- */
62
- export declare function splitSqlStatementsWithLineNumbers(sql: string): ParsedStatement[];
63
- /**
64
- * Split SQL content into individual statements with line number tracking
65
- * and collect any warnings about parsing issues.
66
- *
67
- * @param sql - The SQL content to split
68
- * @returns Object with statements and any parsing warnings
69
- */
70
- export declare function splitSqlStatementsWithWarnings(sql: string): ParseResult;
71
- /**
72
- * Table reference extracted from SQL.
73
- */
74
- export interface TableReference {
75
- schema: string;
76
- table: string;
77
- }
78
- /**
79
- * Extracts table names from a SQL query.
80
- * Handles common patterns:
81
- * - FROM, JOIN, INTO, UPDATE, DELETE FROM
82
- * - MERGE INTO/USING
83
- * - COPY (table) FROM/TO
84
- * - LATERAL subquery references
85
- * - USING clause in JOINs
86
- *
87
- * @param sql - The SQL query to analyze
88
- * @returns Array of unique table references
89
- */
90
- export declare function extractTablesFromSql(sql: string): TableReference[];
91
- /**
92
- * Filter parsed statements to only executable ones (non-empty, non-comment).
93
- *
94
- * @param statements - Array of parsed statements
95
- * @returns Filtered array of executable statements
96
- */
97
- export declare function filterExecutableStatements(statements: ParsedStatement[]): ParsedStatement[];
98
- /**
99
- * Normalize SQL by removing comments and extra whitespace.
100
- * Properly handles nested block comments.
101
- *
102
- * @param sql - The SQL to normalize
103
- * @returns Normalized SQL string
104
- */
105
- export declare function normalizeSql(sql: string): string;
106
- /**
107
- * Checks if SQL content is empty after preprocessing (removing comments/whitespace).
108
- *
109
- * @param sql - The SQL to check
110
- * @returns true if SQL is effectively empty, false otherwise
111
- */
112
- export declare function isEmptyAfterPreprocessing(sql: string): boolean;
113
- /**
114
- * Detects potential schema change statements in SQL.
115
- * Useful for warning about schema changes during multi-statement execution.
116
- *
117
- * @param sql - The SQL statement to check
118
- * @returns Object with detected schema changes
119
- */
120
- export declare function detectSchemaChanges(sql: string): {
121
- hasSchemaChange: boolean;
122
- changeType?: 'search_path' | 'schema_create' | 'schema_drop' | 'schema_alter';
123
- newSchema?: string;
124
- };
125
- //# sourceMappingURL=sql-parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sql-parser.d.ts","sourceRoot":"","sources":["../../../../src/tools/sql/utils/sql-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAiEpD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,uBAAuB,GAAG,wBAAwB,GAAG,iBAAiB,CAAC;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA2BxD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAcvD;AAaD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,EAAE,CAGhF;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CA0KvE;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,EAAE,CAiElE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,eAAe,EAAE,GAAG,eAAe,EAAE,CAO3F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBhD;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAG9D;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG;IAChD,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,aAAa,GAAG,eAAe,GAAG,aAAa,GAAG,cAAc,CAAC;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CA8BA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"sql-parser.js","sourceRoot":"","sources":["../../../../src/tools/sql/utils/sql-parser.ts"],"names":[],"mappings":"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"}