@javalabs/prisma-client 1.0.26 → 1.0.29

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 (170) hide show
  1. package/.github/CODEOWNERS +1 -1
  2. package/README.md +269 -269
  3. package/migration-config.json +63 -63
  4. package/migration-config.json.bk +95 -95
  5. package/migrations/add_reserved_amount.sql +7 -7
  6. package/package.json +44 -44
  7. package/prisma/migrations/add_uuid_to_transactions.sql +13 -13
  8. package/prisma/schema.prisma +609 -607
  9. package/src/index.ts +23 -23
  10. package/src/prisma-factory.service.ts +40 -40
  11. package/src/prisma.module.ts +9 -9
  12. package/src/prisma.service.ts +16 -16
  13. package/src/scripts/add-uuid-to-table.ts +138 -138
  14. package/src/scripts/create-tenant-schemas.ts +145 -145
  15. package/src/scripts/data-migration/batch-migrator.ts +248 -248
  16. package/src/scripts/data-migration/data-transformer.ts +426 -426
  17. package/src/scripts/data-migration/db-connector.ts +120 -120
  18. package/src/scripts/data-migration/dependency-resolver.ts +174 -174
  19. package/src/scripts/data-migration/entity-discovery.ts +196 -196
  20. package/src/scripts/data-migration/foreign-key-manager.ts +277 -277
  21. package/src/scripts/data-migration/migration-config.json +63 -63
  22. package/src/scripts/data-migration/migration-tool.ts +509 -509
  23. package/src/scripts/data-migration/schema-utils.ts +248 -248
  24. package/src/scripts/data-migration/tenant-migrator.ts +201 -201
  25. package/src/scripts/data-migration/typecast-manager.ts +193 -193
  26. package/src/scripts/data-migration/types.ts +113 -113
  27. package/src/scripts/database-initializer.ts +49 -49
  28. package/src/scripts/drop-database.ts +104 -104
  29. package/src/scripts/dump-source-db.sh +61 -61
  30. package/src/scripts/encrypt-user-passwords.ts +36 -36
  31. package/src/scripts/error-handler.ts +117 -117
  32. package/src/scripts/fix-data-types.ts +241 -241
  33. package/src/scripts/fix-enum-values.ts +357 -357
  34. package/src/scripts/fix-schema-discrepancies.ts +317 -317
  35. package/src/scripts/fix-table-indexes.ts +601 -601
  36. package/src/scripts/migrate-schema-structure.ts +90 -90
  37. package/src/scripts/migrate-uuid.ts +76 -76
  38. package/src/scripts/post-migration-validator.ts +526 -526
  39. package/src/scripts/pre-migration-validator.ts +610 -610
  40. package/src/scripts/reset-database.ts +263 -263
  41. package/src/scripts/retry-failed-migrations.ts +416 -416
  42. package/src/scripts/run-migration.ts +707 -707
  43. package/src/scripts/schema-sync.ts +128 -128
  44. package/src/scripts/sequence-sync-cli.ts +416 -416
  45. package/src/scripts/sequence-synchronizer.ts +127 -127
  46. package/src/scripts/sync-enum-types.ts +170 -170
  47. package/src/scripts/sync-enum-values.ts +563 -563
  48. package/src/scripts/truncate-database.ts +123 -123
  49. package/src/scripts/verify-migration-setup.ts +135 -135
  50. package/tsconfig.json +17 -17
  51. package/dist/index.d.ts +0 -7
  52. package/dist/index.js +0 -34
  53. package/dist/index.js.map +0 -1
  54. package/dist/prisma-factory.service.d.ts +0 -9
  55. package/dist/prisma-factory.service.js +0 -47
  56. package/dist/prisma-factory.service.js.map +0 -1
  57. package/dist/prisma.module.d.ts +0 -2
  58. package/dist/prisma.module.js +0 -23
  59. package/dist/prisma.module.js.map +0 -1
  60. package/dist/prisma.service.d.ts +0 -6
  61. package/dist/prisma.service.js +0 -27
  62. package/dist/prisma.service.js.map +0 -1
  63. package/dist/scripts/add-uuid-to-table.d.ts +0 -8
  64. package/dist/scripts/add-uuid-to-table.js +0 -98
  65. package/dist/scripts/add-uuid-to-table.js.map +0 -1
  66. package/dist/scripts/create-tenant-schemas.d.ts +0 -1
  67. package/dist/scripts/create-tenant-schemas.js +0 -117
  68. package/dist/scripts/create-tenant-schemas.js.map +0 -1
  69. package/dist/scripts/data-migration/batch-migrator.d.ts +0 -20
  70. package/dist/scripts/data-migration/batch-migrator.js +0 -134
  71. package/dist/scripts/data-migration/batch-migrator.js.map +0 -1
  72. package/dist/scripts/data-migration/data-transformer.d.ts +0 -26
  73. package/dist/scripts/data-migration/data-transformer.js +0 -278
  74. package/dist/scripts/data-migration/data-transformer.js.map +0 -1
  75. package/dist/scripts/data-migration/db-connector.d.ts +0 -12
  76. package/dist/scripts/data-migration/db-connector.js +0 -94
  77. package/dist/scripts/data-migration/db-connector.js.map +0 -1
  78. package/dist/scripts/data-migration/dependency-resolver.d.ts +0 -18
  79. package/dist/scripts/data-migration/dependency-resolver.js +0 -132
  80. package/dist/scripts/data-migration/dependency-resolver.js.map +0 -1
  81. package/dist/scripts/data-migration/entity-discovery.d.ts +0 -11
  82. package/dist/scripts/data-migration/entity-discovery.js +0 -152
  83. package/dist/scripts/data-migration/entity-discovery.js.map +0 -1
  84. package/dist/scripts/data-migration/foreign-key-manager.d.ts +0 -18
  85. package/dist/scripts/data-migration/foreign-key-manager.js +0 -160
  86. package/dist/scripts/data-migration/foreign-key-manager.js.map +0 -1
  87. package/dist/scripts/data-migration/migration-tool.d.ts +0 -48
  88. package/dist/scripts/data-migration/migration-tool.js +0 -290
  89. package/dist/scripts/data-migration/migration-tool.js.map +0 -1
  90. package/dist/scripts/data-migration/schema-utils.d.ts +0 -18
  91. package/dist/scripts/data-migration/schema-utils.js +0 -207
  92. package/dist/scripts/data-migration/schema-utils.js.map +0 -1
  93. package/dist/scripts/data-migration/tenant-migrator.d.ts +0 -15
  94. package/dist/scripts/data-migration/tenant-migrator.js +0 -117
  95. package/dist/scripts/data-migration/tenant-migrator.js.map +0 -1
  96. package/dist/scripts/data-migration/typecast-manager.d.ts +0 -9
  97. package/dist/scripts/data-migration/typecast-manager.js +0 -179
  98. package/dist/scripts/data-migration/typecast-manager.js.map +0 -1
  99. package/dist/scripts/data-migration/types.d.ts +0 -100
  100. package/dist/scripts/data-migration/types.js +0 -3
  101. package/dist/scripts/data-migration/types.js.map +0 -1
  102. package/dist/scripts/database-initializer.d.ts +0 -5
  103. package/dist/scripts/database-initializer.js +0 -45
  104. package/dist/scripts/database-initializer.js.map +0 -1
  105. package/dist/scripts/drop-database.d.ts +0 -10
  106. package/dist/scripts/drop-database.js +0 -81
  107. package/dist/scripts/drop-database.js.map +0 -1
  108. package/dist/scripts/encrypt-user-passwords.d.ts +0 -1
  109. package/dist/scripts/encrypt-user-passwords.js +0 -33
  110. package/dist/scripts/encrypt-user-passwords.js.map +0 -1
  111. package/dist/scripts/error-handler.d.ts +0 -12
  112. package/dist/scripts/error-handler.js +0 -82
  113. package/dist/scripts/error-handler.js.map +0 -1
  114. package/dist/scripts/fix-data-types.d.ts +0 -10
  115. package/dist/scripts/fix-data-types.js +0 -185
  116. package/dist/scripts/fix-data-types.js.map +0 -1
  117. package/dist/scripts/fix-enum-values.d.ts +0 -17
  118. package/dist/scripts/fix-enum-values.js +0 -234
  119. package/dist/scripts/fix-enum-values.js.map +0 -1
  120. package/dist/scripts/fix-schema-discrepancies.d.ts +0 -21
  121. package/dist/scripts/fix-schema-discrepancies.js +0 -240
  122. package/dist/scripts/fix-schema-discrepancies.js.map +0 -1
  123. package/dist/scripts/fix-table-indexes.d.ts +0 -26
  124. package/dist/scripts/fix-table-indexes.js +0 -460
  125. package/dist/scripts/fix-table-indexes.js.map +0 -1
  126. package/dist/scripts/migrate-schema-structure.d.ts +0 -1
  127. package/dist/scripts/migrate-schema-structure.js +0 -76
  128. package/dist/scripts/migrate-schema-structure.js.map +0 -1
  129. package/dist/scripts/migrate-uuid.d.ts +0 -2
  130. package/dist/scripts/migrate-uuid.js +0 -57
  131. package/dist/scripts/migrate-uuid.js.map +0 -1
  132. package/dist/scripts/post-migration-validator.d.ts +0 -34
  133. package/dist/scripts/post-migration-validator.js +0 -363
  134. package/dist/scripts/post-migration-validator.js.map +0 -1
  135. package/dist/scripts/pre-migration-validator.d.ts +0 -25
  136. package/dist/scripts/pre-migration-validator.js +0 -491
  137. package/dist/scripts/pre-migration-validator.js.map +0 -1
  138. package/dist/scripts/reset-database.d.ts +0 -17
  139. package/dist/scripts/reset-database.js +0 -202
  140. package/dist/scripts/reset-database.js.map +0 -1
  141. package/dist/scripts/retry-failed-migrations.d.ts +0 -14
  142. package/dist/scripts/retry-failed-migrations.js +0 -301
  143. package/dist/scripts/retry-failed-migrations.js.map +0 -1
  144. package/dist/scripts/run-migration.d.ts +0 -1
  145. package/dist/scripts/run-migration.js +0 -512
  146. package/dist/scripts/run-migration.js.map +0 -1
  147. package/dist/scripts/schema-sync.d.ts +0 -1
  148. package/dist/scripts/schema-sync.js +0 -85
  149. package/dist/scripts/schema-sync.js.map +0 -1
  150. package/dist/scripts/sequence-sync-cli.d.ts +0 -2
  151. package/dist/scripts/sequence-sync-cli.js +0 -287
  152. package/dist/scripts/sequence-sync-cli.js.map +0 -1
  153. package/dist/scripts/sequence-synchronizer.d.ts +0 -8
  154. package/dist/scripts/sequence-synchronizer.js +0 -88
  155. package/dist/scripts/sequence-synchronizer.js.map +0 -1
  156. package/dist/scripts/sync-enum-types.d.ts +0 -13
  157. package/dist/scripts/sync-enum-types.js +0 -139
  158. package/dist/scripts/sync-enum-types.js.map +0 -1
  159. package/dist/scripts/sync-enum-values.d.ts +0 -20
  160. package/dist/scripts/sync-enum-values.js +0 -336
  161. package/dist/scripts/sync-enum-values.js.map +0 -1
  162. package/dist/scripts/truncate-database.d.ts +0 -10
  163. package/dist/scripts/truncate-database.js +0 -100
  164. package/dist/scripts/truncate-database.js.map +0 -1
  165. package/dist/scripts/verify-migration-setup.d.ts +0 -11
  166. package/dist/scripts/verify-migration-setup.js +0 -120
  167. package/dist/scripts/verify-migration-setup.js.map +0 -1
  168. package/dist/tsconfig.tsbuildinfo +0 -1
  169. package/prisma/migrations/add_athena_match_fields.sql +0 -18
  170. package/prisma/migrations/add_bank_receipt_number.sql +0 -9
@@ -1,240 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SchemaDiscrepancyFixer = void 0;
4
- const fs = require("fs");
5
- const path = require("path");
6
- const pg = require("pg");
7
- const common_1 = require("@nestjs/common");
8
- const dotenv = require("dotenv");
9
- dotenv.config();
10
- class SchemaDiscrepancyFixer {
11
- constructor(sourceUrl = process.env.SOURCE_DATABASE_URL, targetUrl = process.env.DATABASE_URL, reportPath) {
12
- this.sourceUrl = sourceUrl;
13
- this.targetUrl = targetUrl;
14
- this.reportPath = reportPath;
15
- this.logger = new common_1.Logger('SchemaDiscrepancyFixer');
16
- this.columnTypeCache = {};
17
- if (!this.sourceUrl) {
18
- throw new Error('SOURCE_DATABASE_URL environment variable is required');
19
- }
20
- if (!this.targetUrl) {
21
- throw new Error('DATABASE_URL environment variable is required');
22
- }
23
- this.sourcePool = new pg.Pool({
24
- connectionString: this.sourceUrl,
25
- });
26
- this.targetPool = new pg.Pool({
27
- connectionString: this.targetUrl,
28
- });
29
- }
30
- async fixDiscrepancies() {
31
- try {
32
- const reportFile = this.reportPath || await this.findLatestReport();
33
- if (!reportFile) {
34
- this.logger.error('No pre-migration report found');
35
- return;
36
- }
37
- this.logger.log(`Using pre-migration report: ${reportFile}`);
38
- const reportContent = fs.readFileSync(reportFile, 'utf8');
39
- const report = JSON.parse(reportContent);
40
- const columnMismatches = report.issues.filter(issue => issue.type === 'COLUMN_MISMATCH');
41
- if (columnMismatches.length === 0) {
42
- this.logger.log('No column mismatches to fix');
43
- return;
44
- }
45
- this.logger.log(`Found ${columnMismatches.length} column mismatches to fix`);
46
- const tableGroups = this.groupByTable(columnMismatches);
47
- for (const [table, columns] of Object.entries(tableGroups)) {
48
- await this.fixTableColumns(table, columns);
49
- }
50
- this.logger.log('Schema discrepancies fixed successfully');
51
- }
52
- catch (error) {
53
- this.logger.error(`Error fixing schema discrepancies: ${error.message}`);
54
- throw error;
55
- }
56
- finally {
57
- await this.cleanup();
58
- }
59
- }
60
- async findLatestReport() {
61
- const logsDir = path.join(process.cwd(), 'migration-logs');
62
- if (!fs.existsSync(logsDir)) {
63
- return null;
64
- }
65
- const files = fs.readdirSync(logsDir);
66
- const reportFiles = files.filter(file => file.startsWith('pre-migration-report-'));
67
- if (reportFiles.length === 0) {
68
- return null;
69
- }
70
- reportFiles.sort().reverse();
71
- return path.join(logsDir, reportFiles[0]);
72
- }
73
- groupByTable(mismatches) {
74
- return mismatches.reduce((groups, mismatch) => {
75
- const table = mismatch.details.table;
76
- if (!groups[table]) {
77
- groups[table] = [];
78
- }
79
- groups[table].push(mismatch);
80
- return groups;
81
- }, {});
82
- }
83
- async fixTableColumns(table, columns) {
84
- var _a;
85
- try {
86
- this.logger.log(`Fixing columns for table "${table}"`);
87
- const schemas = await this.getTargetSchemas();
88
- await this.cacheSourceColumnTypes(table, columns.map(c => c.details.column));
89
- for (const schema of schemas) {
90
- this.logger.log(`Processing schema "${schema}" for table "${table}"`);
91
- const tableExists = await this.checkTableExists(schema, table);
92
- if (!tableExists) {
93
- this.logger.warn(`Table "${table}" does not exist in schema "${schema}". Skipping.`);
94
- continue;
95
- }
96
- for (const column of columns) {
97
- const columnName = column.details.column;
98
- const columnType = (_a = this.columnTypeCache[table]) === null || _a === void 0 ? void 0 : _a[columnName];
99
- if (!columnType) {
100
- this.logger.warn(`Could not determine type for column "${columnName}" in table "${table}". Skipping.`);
101
- continue;
102
- }
103
- const columnExists = await this.checkColumnExists(schema, table, columnName);
104
- if (columnExists) {
105
- this.logger.log(`Column "${columnName}" already exists in "${schema}"."${table}". Skipping.`);
106
- continue;
107
- }
108
- await this.addColumn(schema, table, columnName, columnType);
109
- if (column.details.constraint_type === 'UNIQUE') {
110
- await this.addUniqueConstraint(schema, table, columnName);
111
- }
112
- }
113
- }
114
- this.logger.log(`Fixed columns for table "${table}" successfully`);
115
- }
116
- catch (error) {
117
- this.logger.error(`Error fixing columns for table "${table}": ${error.message}`);
118
- throw error;
119
- }
120
- }
121
- async getTargetSchemas() {
122
- const query = `
123
- SELECT schema_name
124
- FROM information_schema.schemata
125
- WHERE schema_name NOT IN ('information_schema', 'pg_catalog', 'pg_toast')
126
- AND schema_name NOT LIKE 'pg_%'
127
- `;
128
- const result = await this.targetPool.query(query);
129
- return result.rows.map(row => row.schema_name);
130
- }
131
- async cacheSourceColumnTypes(table, columns) {
132
- if (!this.columnTypeCache[table]) {
133
- this.columnTypeCache[table] = {};
134
- }
135
- const columnsStr = columns.map(c => `'${c}'`).join(',');
136
- const query = `
137
- SELECT column_name, data_type,
138
- CASE
139
- WHEN data_type = 'character varying' THEN data_type || '(' || character_maximum_length || ')'
140
- WHEN data_type = 'numeric' THEN
141
- CASE
142
- WHEN numeric_precision IS NOT NULL AND numeric_scale IS NOT NULL
143
- THEN data_type || '(' || numeric_precision || ',' || numeric_scale || ')'
144
- ELSE data_type
145
- END
146
- ELSE data_type
147
- END as full_data_type
148
- FROM information_schema.columns
149
- WHERE table_schema = 'public'
150
- AND table_name = $1
151
- AND column_name IN (${columnsStr})
152
- `;
153
- const result = await this.sourcePool.query(query, [table]);
154
- for (const row of result.rows) {
155
- this.columnTypeCache[table][row.column_name] = row.full_data_type;
156
- }
157
- }
158
- async checkTableExists(schema, table) {
159
- const query = `
160
- SELECT EXISTS (
161
- SELECT FROM information_schema.tables
162
- WHERE table_schema = $1
163
- AND table_name = $2
164
- );
165
- `;
166
- const result = await this.targetPool.query(query, [schema, table]);
167
- return result.rows[0].exists;
168
- }
169
- async checkColumnExists(schema, table, column) {
170
- const query = `
171
- SELECT EXISTS (
172
- SELECT FROM information_schema.columns
173
- WHERE table_schema = $1
174
- AND table_name = $2
175
- AND column_name = $3
176
- );
177
- `;
178
- const result = await this.targetPool.query(query, [schema, table, column]);
179
- return result.rows[0].exists;
180
- }
181
- async addColumn(schema, table, column, type) {
182
- try {
183
- const query = `
184
- ALTER TABLE "${schema}"."${table}"
185
- ADD COLUMN IF NOT EXISTS "${column}" ${type};
186
- `;
187
- await this.targetPool.query(query);
188
- this.logger.log(`Added column "${column}" to "${schema}"."${table}" with type "${type}"`);
189
- }
190
- catch (error) {
191
- this.logger.error(`Error adding column "${column}" to "${schema}"."${table}": ${error.message}`);
192
- throw error;
193
- }
194
- }
195
- async addUniqueConstraint(schema, table, column) {
196
- try {
197
- const constraintName = `${table}_${column}_unique`;
198
- const query = `
199
- ALTER TABLE "${schema}"."${table}"
200
- ADD CONSTRAINT "${constraintName}" UNIQUE ("${column}");
201
- `;
202
- await this.targetPool.query(query);
203
- this.logger.log(`Added UNIQUE constraint on "${column}" to "${schema}"."${table}"`);
204
- }
205
- catch (error) {
206
- if (error.message.includes('already exists')) {
207
- this.logger.log(`UNIQUE constraint on "${column}" already exists for "${schema}"."${table}"`);
208
- return;
209
- }
210
- this.logger.error(`Error adding UNIQUE constraint on "${column}" to "${schema}"."${table}": ${error.message}`);
211
- throw error;
212
- }
213
- }
214
- async cleanup() {
215
- try {
216
- await this.sourcePool.end();
217
- await this.targetPool.end();
218
- }
219
- catch (error) {
220
- this.logger.error(`Error during cleanup: ${error.message}`);
221
- }
222
- }
223
- }
224
- exports.SchemaDiscrepancyFixer = SchemaDiscrepancyFixer;
225
- async function run() {
226
- try {
227
- const reportPath = process.argv[2];
228
- const fixer = new SchemaDiscrepancyFixer(process.env.SOURCE_DATABASE_URL, process.env.DATABASE_URL, reportPath);
229
- await fixer.fixDiscrepancies();
230
- process.exit(0);
231
- }
232
- catch (error) {
233
- console.error('Error:', error.message);
234
- process.exit(1);
235
- }
236
- }
237
- if (require.main === module) {
238
- run();
239
- }
240
- //# sourceMappingURL=fix-schema-discrepancies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fix-schema-discrepancies.js","sourceRoot":"","sources":["../../src/scripts/fix-schema-discrepancies.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- export declare class TableIndexFixer {
2
- private readonly targetUrl;
3
- private readonly logger;
4
- private readonly targetPool;
5
- private readonly logDir;
6
- private readonly logPath;
7
- private fixedIndexes;
8
- constructor(targetUrl?: string);
9
- fixIndexes(): Promise<void>;
10
- private getSchemas;
11
- private fixIndexesForSchema;
12
- private getTablesForSchema;
13
- private fixIndexesForTable;
14
- private ensureCriticalUserTableIndexes;
15
- private fixUserTableSequences;
16
- private removeRedundantIndexes;
17
- private fixSequences;
18
- private getTableInfo;
19
- private getTableIndexes;
20
- private createIndex;
21
- private fixCommonIndexIssues;
22
- private getTableColumns;
23
- private fixForeignKeyIndexes;
24
- private saveFixLog;
25
- private cleanup;
26
- }