@l-v-yonsama/multi-platform-database-drivers 0.1.13 → 0.1.15

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 (87) hide show
  1. package/built/src/db/DBError.js +4 -1
  2. package/built/src/db/DBError.js.map +1 -1
  3. package/built/src/db/drivers/AwsS3Driver.js +131 -105
  4. package/built/src/db/drivers/AwsS3Driver.js.map +1 -1
  5. package/built/src/db/drivers/BaseDriver.js +75 -65
  6. package/built/src/db/drivers/BaseDriver.js.map +1 -1
  7. package/built/src/db/drivers/MySQLDriver.js +201 -179
  8. package/built/src/db/drivers/MySQLDriver.js.map +1 -1
  9. package/built/src/db/drivers/PostgresDriver.js +186 -162
  10. package/built/src/db/drivers/PostgresDriver.js.map +1 -1
  11. package/built/src/db/drivers/RedisDriver.js +180 -160
  12. package/built/src/db/drivers/RedisDriver.js.map +1 -1
  13. package/built/src/db/drivers/index.js +8 -5
  14. package/built/src/db/drivers/index.js.map +1 -1
  15. package/built/src/db/index.js +6 -3
  16. package/built/src/db/index.js.map +1 -1
  17. package/built/src/db/resource/DbResource.js +58 -43
  18. package/built/src/db/resource/DbResource.js.map +1 -1
  19. package/built/src/db/resource/MultipleResultSetDataHolder.js +9 -5
  20. package/built/src/db/resource/MultipleResultSetDataHolder.js.map +1 -1
  21. package/built/src/db/resource/ResourceHelper.js +5 -1
  22. package/built/src/db/resource/ResourceHelper.js.map +1 -1
  23. package/built/src/db/resource/ResultSetDataHolder.js +43 -33
  24. package/built/src/db/resource/ResultSetDataHolder.js.map +1 -1
  25. package/built/src/db/resource/index.js +8 -5
  26. package/built/src/db/resource/index.js.map +1 -1
  27. package/built/src/db/resource/types/DBType.js +6 -3
  28. package/built/src/db/resource/types/DBType.js.map +1 -1
  29. package/built/src/db/resource/types/GeneralColumnType.js +8 -5
  30. package/built/src/db/resource/types/GeneralColumnType.js.map +1 -1
  31. package/built/src/db/resource/types/MySQLColumnType.js +10 -7
  32. package/built/src/db/resource/types/MySQLColumnType.js.map +1 -1
  33. package/built/src/db/resource/types/ODBCVendorType.js +5 -2
  34. package/built/src/db/resource/types/ODBCVendorType.js.map +1 -1
  35. package/built/src/db/resource/types/PostgresColumnType.js +9 -6
  36. package/built/src/db/resource/types/PostgresColumnType.js.map +1 -1
  37. package/built/src/db/resource/types/RedisKeyType.js +8 -5
  38. package/built/src/db/resource/types/RedisKeyType.js.map +1 -1
  39. package/built/src/db/resource/types/ResourceType.js +5 -2
  40. package/built/src/db/resource/types/ResourceType.js.map +1 -1
  41. package/built/src/db/resource/types/index.js +10 -7
  42. package/built/src/db/resource/types/index.js.map +1 -1
  43. package/built/src/index.js +6 -3
  44. package/built/src/index.js.map +1 -1
  45. package/built/src/service/DBAccessService.js +273 -246
  46. package/built/src/service/DBAccessService.js.map +1 -1
  47. package/built/src/service/DBDriverResolver.js +36 -32
  48. package/built/src/service/DBDriverResolver.js.map +1 -1
  49. package/built/src/service/SQLService.js +8 -3
  50. package/built/src/service/SQLService.js.map +1 -1
  51. package/built/src/service/index.js +8 -5
  52. package/built/src/service/index.js.map +1 -1
  53. package/built/src/service/request/RedisRequest.js +5 -2
  54. package/built/src/service/request/RedisRequest.js.map +1 -1
  55. package/built/src/service/request/S3Request.js +5 -2
  56. package/built/src/service/request/S3Request.js.map +1 -1
  57. package/built/src/service/request/index.js +5 -2
  58. package/built/src/service/request/index.js.map +1 -1
  59. package/built/src/service/response/GeneralDBResponse.js +2 -1
  60. package/built/src/service/response/GeneralResponse.js +5 -1
  61. package/built/src/service/response/GeneralResponse.js.map +1 -1
  62. package/built/src/service/response/index.js +5 -2
  63. package/built/src/service/response/index.js.map +1 -1
  64. package/built/src/service/response/reply/ConnectionResult.js +2 -1
  65. package/built/src/service/response/reply/FileExportReply.js +8 -4
  66. package/built/src/service/response/reply/FileExportReply.js.map +1 -1
  67. package/built/src/service/response/reply/FileProcessResult.js +7 -3
  68. package/built/src/service/response/reply/FileProcessResult.js.map +1 -1
  69. package/built/src/service/response/reply/GeneralReply.js +4 -1
  70. package/built/src/service/response/reply/GeneralReply.js.map +1 -1
  71. package/built/src/service/response/reply/OutputReply.js +8 -4
  72. package/built/src/service/response/reply/OutputReply.js.map +1 -1
  73. package/built/src/service/response/reply/ProgressReply.js +6 -2
  74. package/built/src/service/response/reply/ProgressReply.js.map +1 -1
  75. package/built/src/service/response/reply/types/FileExportType.js +5 -2
  76. package/built/src/service/response/reply/types/FileExportType.js.map +1 -1
  77. package/built/src/service/response/reply/types/OutputType.js +5 -2
  78. package/built/src/service/response/reply/types/OutputType.js.map +1 -1
  79. package/built/src/service/response/reply/types/ReplyEventType.js +5 -2
  80. package/built/src/service/response/reply/types/ReplyEventType.js.map +1 -1
  81. package/built/src/types/DateModifiedType.js +6 -3
  82. package/built/src/types/DateModifiedType.js.map +1 -1
  83. package/built/src/types/FileKindType.js +6 -3
  84. package/built/src/types/FileKindType.js.map +1 -1
  85. package/built/src/types/index.js +5 -2
  86. package/built/src/types/index.js.map +1 -1
  87. package/package.json +2 -3
@@ -1,11 +1,14 @@
1
- import BaseDriver from './BaseDriver';
2
- import ResultSetDataHolder, { RdhKey } from '../resource/ResultSetDataHolder';
3
- import { DbDatabase, DbSchema, DbTable, DbColumn, } from '../resource/DbResource';
4
- import { default as pg } from 'pg';
5
- import { PostgresColumnType } from '../resource/types/PostgresColumnType';
6
- import { EnumValues } from 'enum-values';
7
- import { GeneralColumnType } from '../resource/types/GeneralColumnType';
8
- export default class PostgresDriver extends BaseDriver {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const BaseDriver_1 = tslib_1.__importDefault(require("./BaseDriver"));
5
+ const ResultSetDataHolder_1 = tslib_1.__importStar(require("../resource/ResultSetDataHolder"));
6
+ const DbResource_1 = require("../resource/DbResource");
7
+ const pg_1 = tslib_1.__importDefault(require("pg"));
8
+ const PostgresColumnType_1 = require("../resource/types/PostgresColumnType");
9
+ const enum_values_1 = require("enum-values");
10
+ const GeneralColumnType_1 = require("../resource/types/GeneralColumnType");
11
+ class PostgresDriver extends BaseDriver_1.default {
9
12
  constructor(conRes) {
10
13
  super(conRes);
11
14
  }
@@ -13,176 +16,193 @@ export default class PostgresDriver extends BaseDriver {
13
16
  if (fieldInfo.name.startsWith('c_')) {
14
17
  console.log(`★ ${fieldInfo.name.substring(2).toUpperCase()} = ${fieldInfo.dataTypeID}`);
15
18
  }
16
- const name = EnumValues.getNameFromValue(PostgresColumnType, PostgresColumnType.parse(fieldInfo.dataTypeID));
17
- const key = new RdhKey(fieldInfo.name, GeneralColumnType.parse(name), super.resolveColumnComment(fieldInfo.name, resolver));
19
+ const name = enum_values_1.EnumValues.getNameFromValue(PostgresColumnType_1.PostgresColumnType, PostgresColumnType_1.PostgresColumnType.parse(fieldInfo.dataTypeID));
20
+ const key = new ResultSetDataHolder_1.RdhKey(fieldInfo.name, GeneralColumnType_1.GeneralColumnType.parse(name), super.resolveColumnComment(fieldInfo.name, resolver));
18
21
  return key;
19
22
  }
20
- async connectSub() {
21
- let errorReason = '';
22
- const options = Object.assign({
23
- port: 5432,
24
- host: '127.0.0.1',
25
- database: 'postgres',
26
- }, {
27
- max: 1,
28
- idleTimeoutMillis: 3000,
29
- connectionTimeoutMillis: 1000,
30
- port: this.conRes.port,
31
- host: this.conRes.host,
32
- user: this.conRes.user,
33
- password: this.conRes.password,
34
- database: this.conRes.database,
23
+ connectSub() {
24
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
25
+ let errorReason = '';
26
+ const options = Object.assign({
27
+ port: 5432,
28
+ host: '127.0.0.1',
29
+ database: 'postgres',
30
+ }, {
31
+ max: 1,
32
+ idleTimeoutMillis: 3000,
33
+ connectionTimeoutMillis: 1000,
34
+ port: this.conRes.port,
35
+ host: this.conRes.host,
36
+ user: this.conRes.user,
37
+ password: this.conRes.password,
38
+ database: this.conRes.database,
39
+ });
40
+ this.pool = new pg_1.default.Pool(options);
41
+ errorReason = yield this.test();
42
+ return errorReason;
35
43
  });
36
- this.pool = new pg.Pool(options);
37
- errorReason = await this.test();
38
- return errorReason;
39
44
  }
40
- async test(with_connect = false) {
41
- let errorReason = '';
42
- try {
43
- if (with_connect) {
44
- errorReason = await this.connect();
45
+ test(with_connect = false) {
46
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
47
+ let errorReason = '';
48
+ try {
49
+ if (with_connect) {
50
+ errorReason = yield this.connect();
51
+ }
52
+ const rdh = yield this.requestSql('SELECT NOW()');
53
+ if (rdh && rdh.errorMessage) {
54
+ errorReason = rdh.errorMessage;
55
+ }
45
56
  }
46
- const rdh = await this.requestSql('SELECT NOW()');
47
- if (rdh && rdh.errorMessage) {
48
- errorReason = rdh.errorMessage;
57
+ catch (e) {
58
+ errorReason = e.message;
49
59
  }
50
- }
51
- catch (e) {
52
- errorReason = e.message;
53
- }
54
- finally {
55
- if (with_connect) {
56
- await this.disconnect();
60
+ finally {
61
+ if (with_connect) {
62
+ yield this.disconnect();
63
+ }
57
64
  }
58
- }
59
- return errorReason;
65
+ return errorReason;
66
+ });
60
67
  }
61
- async requestSql(sql, options) {
62
- let rdh = new ResultSetDataHolder([]);
63
- try {
64
- let binds = [];
65
- if (options && options.binds) {
66
- binds = options.binds;
68
+ requestSql(sql, options) {
69
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
70
+ let rdh = new ResultSetDataHolder_1.default([]);
71
+ try {
72
+ let binds = [];
73
+ if (options && options.binds) {
74
+ binds = options.binds;
75
+ }
76
+ const results = yield this.pool.query(sql, binds);
77
+ if (results) {
78
+ let resolver;
79
+ if (options && options.needs_column_resolve === true) {
80
+ resolver = this.createColumnResolver(sql);
81
+ }
82
+ const fields = results.fields;
83
+ rdh = new ResultSetDataHolder_1.default(fields === undefined
84
+ ? []
85
+ : fields.map((f) => this.fieldInfo2Key(f, resolver)));
86
+ if (results.rows) {
87
+ results.rows.forEach((result) => {
88
+ rdh.addRow(result);
89
+ });
90
+ }
91
+ }
67
92
  }
68
- const results = await this.pool.query(sql, binds);
69
- if (results) {
70
- let resolver;
71
- if (options && options.needs_column_resolve === true) {
72
- resolver = this.createColumnResolver(sql);
93
+ catch (err) {
94
+ rdh = ResultSetDataHolder_1.default.create(err);
95
+ }
96
+ return rdh;
97
+ });
98
+ }
99
+ countTables(tables, options) {
100
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
101
+ const list = new Array();
102
+ let counter = 1;
103
+ for (const st of tables.list) {
104
+ let prefix = '';
105
+ if (st.schema) {
106
+ prefix = st.schema + '.';
107
+ }
108
+ if (options && options.progress_callback) {
109
+ if (counter % 5 === 0) {
110
+ options.progress_callback(`Count ${prefix}${st.table}`, 70);
111
+ }
73
112
  }
74
- const fields = results.fields;
75
- rdh = new ResultSetDataHolder(fields === undefined
76
- ? []
77
- : fields.map((f) => this.fieldInfo2Key(f, resolver)));
78
- if (results.rows) {
79
- results.rows.forEach((result) => {
80
- rdh.addRow(result);
81
- });
113
+ const sql = `SELECT COUNT(*) as count FROM ${prefix}${st.table}`;
114
+ try {
115
+ const results = yield this.pool.query(sql, []);
116
+ if (results && results.rows && results.rows.length > 0) {
117
+ const row = results.rows[0];
118
+ const obj = Object.assign({ count: row.count }, st);
119
+ list.push(obj);
120
+ }
82
121
  }
122
+ catch (e) { }
123
+ counter++;
83
124
  }
84
- }
85
- catch (err) {
86
- rdh = ResultSetDataHolder.create(err);
87
- }
88
- return rdh;
125
+ return list;
126
+ });
89
127
  }
90
- async countTables(tables, options) {
91
- const list = new Array();
92
- let counter = 1;
93
- for (const st of tables.list) {
94
- let prefix = '';
95
- if (st.schema) {
96
- prefix = st.schema + '.';
128
+ getInfomationSchemas(options) {
129
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
130
+ if (!this.conRes) {
131
+ return [];
97
132
  }
98
- if (options && options.progress_callback) {
99
- if (counter % 5 === 0) {
100
- options.progress_callback(`Count ${prefix}${st.table}`, 70);
101
- }
133
+ const dbResources = new Array();
134
+ const db_list = yield this.asyncGetDatabases(this.conRes.database);
135
+ db_list.forEach((db) => dbResources.push(db));
136
+ const dbDatabase = db_list.find((d) => d.name === this.conRes.database);
137
+ const dbSchemas = yield this.getSchemas(dbDatabase);
138
+ dbSchemas.forEach((res) => {
139
+ dbDatabase.addChild(res);
140
+ });
141
+ this.resetDefaultSchema(dbDatabase);
142
+ for (const dbSchema of dbSchemas) {
143
+ const dbTables = yield this.getTables(dbSchema);
144
+ dbTables.forEach((res) => dbSchema.addChild(res));
102
145
  }
103
- const sql = `SELECT COUNT(*) as count FROM ${prefix}${st.table}`;
104
- try {
105
- const results = await this.pool.query(sql, []);
106
- if (results && results.rows && results.rows.length > 0) {
107
- const row = results.rows[0];
108
- const obj = Object.assign({ count: row.count }, st);
109
- list.push(obj);
146
+ for (const dbSchema of dbSchemas) {
147
+ for (const dbTable of dbSchema.getChildren()) {
148
+ const dbColumns = yield this.getColumns(dbTable);
149
+ dbColumns.forEach((res) => dbTable.addChild(res));
110
150
  }
111
151
  }
112
- catch (e) { }
113
- counter++;
114
- }
115
- return list;
116
- }
117
- async getInfomationSchemas(options) {
118
- if (!this.conRes) {
119
- return [];
120
- }
121
- const dbResources = new Array();
122
- const db_list = await this.asyncGetDatabases(this.conRes.database);
123
- db_list.forEach((db) => dbResources.push(db));
124
- const dbDatabase = db_list.find((d) => d.name === this.conRes.database);
125
- const dbSchemas = await this.getSchemas(dbDatabase);
126
- dbSchemas.forEach((res) => {
127
- dbDatabase.addChild(res);
152
+ return dbResources;
128
153
  });
129
- this.resetDefaultSchema(dbDatabase);
130
- for (const dbSchema of dbSchemas) {
131
- const dbTables = await this.getTables(dbSchema);
132
- dbTables.forEach((res) => dbSchema.addChild(res));
133
- }
134
- for (const dbSchema of dbSchemas) {
135
- for (const dbTable of dbSchema.getChildren()) {
136
- const dbColumns = await this.getColumns(dbTable);
137
- dbColumns.forEach((res) => dbTable.addChild(res));
138
- }
139
- }
140
- return dbResources;
141
154
  }
142
- async asyncGetDatabases(connection_database) {
143
- const rdh = await this
144
- .requestSql(`SELECT datname AS name, pg_encoding_to_char(encoding) AS comment
155
+ asyncGetDatabases(connection_database) {
156
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
157
+ const rdh = yield this
158
+ .requestSql(`SELECT datname AS name, pg_encoding_to_char(encoding) AS comment
145
159
  FROM pg_database ORDER BY datname`);
146
- return rdh.rows.map((r) => {
147
- const res = new DbDatabase(r.values.name);
148
- res.comment = r.values.comment;
149
- res.disabled = res.name !== connection_database;
150
- return res;
160
+ return rdh.rows.map((r) => {
161
+ const res = new DbResource_1.DbDatabase(r.values.name);
162
+ res.comment = r.values.comment;
163
+ res.disabled = res.name !== connection_database;
164
+ return res;
165
+ });
151
166
  });
152
167
  }
153
- async getSchemas(dbDatabase) {
154
- const rdh = await this.requestSql(`SELECT SCHEMA_NAME AS name
168
+ getSchemas(dbDatabase) {
169
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
170
+ const rdh = yield this.requestSql(`SELECT SCHEMA_NAME AS name
155
171
  FROM INFORMATION_SCHEMA.SCHEMATA
156
172
  WHERE LOWER(SCHEMA_NAME) NOT IN ('information_schema', 'sys', 'performance_schema', 'pg_catalog', 'pg_toast', 'pg_temp_1', 'pg_toast_temp_1')
157
173
  ORDER BY name`);
158
- return rdh.rows.map((r) => {
159
- const res = new DbSchema(r.values.name);
160
- return res;
174
+ return rdh.rows.map((r) => {
175
+ const res = new DbResource_1.DbSchema(r.values.name);
176
+ return res;
177
+ });
161
178
  });
162
179
  }
163
- async getTables(dbSchema) {
164
- let rdh = await this
165
- .requestSql(`select quote_ident(m.relname) as qname, COALESCE(d.description, '') as comment
180
+ getTables(dbSchema) {
181
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
182
+ let rdh = yield this
183
+ .requestSql(`select quote_ident(m.relname) as qname, COALESCE(d.description, '') as comment
166
184
  from pg_stat_all_tables as m
167
185
  LEFT JOIN pg_description as d ON (m.relid = d.objoid AND d.objsubid=0)
168
186
  WHERE m.schemaname='${dbSchema.getName()}'
169
187
  ORDER BY m.relname`);
170
- const list = rdh.rows.map((r) => {
171
- const res = new DbTable(r.values.qname, 'TABLE', r.values.comment);
172
- return res;
173
- });
174
- rdh = await this
175
- .requestSql(`select quote_ident(viewname) as qname, definition from pg_catalog.pg_views
188
+ const list = rdh.rows.map((r) => {
189
+ const res = new DbResource_1.DbTable(r.values.qname, 'TABLE', r.values.comment);
190
+ return res;
191
+ });
192
+ rdh = yield this
193
+ .requestSql(`select quote_ident(viewname) as qname, definition from pg_catalog.pg_views
176
194
  where schemaname = '${dbSchema.getName()}'
177
195
  order by viewname`);
178
- return list.concat(rdh.rows.map((r) => {
179
- const res = new DbTable(r.values.qname, 'VIEW', '');
180
- return res;
181
- }));
196
+ return list.concat(rdh.rows.map((r) => {
197
+ const res = new DbResource_1.DbTable(r.values.qname, 'VIEW', '');
198
+ return res;
199
+ }));
200
+ });
182
201
  }
183
- async getColumns(dbTable) {
184
- const binds = [dbTable.getParent().getName(), dbTable.getName()];
185
- const rdh = await this.requestSql(`select
202
+ getColumns(dbTable) {
203
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
204
+ const binds = [dbTable.getParent().getName(), dbTable.getName()];
205
+ const rdh = yield this.requestSql(`select
186
206
  col.COLUMN_NAME as name,
187
207
  quote_ident(col.COLUMN_NAME) as qname,
188
208
  data_type as col_type,
@@ -235,27 +255,31 @@ export default class PostgresDriver extends BaseDriver {
235
255
  col.table_schema = $1 AND quote_ident(col.table_name) = $2
236
256
  order by
237
257
  col.ordinal_position`, { binds });
238
- return rdh.rows.map((r) => {
239
- const type_name = EnumValues.getNameFromValue(PostgresColumnType, PostgresColumnType.parse(r.values.col_type));
240
- const res = new DbColumn(r.values.qname, GeneralColumnType.parse(type_name), {
241
- nullable: r.values.nullable === 1,
242
- key: r.values.col_key,
243
- default: r.values.col_default,
244
- extra: r.values.col_extra,
245
- }, r.values.comment);
246
- return res;
258
+ return rdh.rows.map((r) => {
259
+ const type_name = enum_values_1.EnumValues.getNameFromValue(PostgresColumnType_1.PostgresColumnType, PostgresColumnType_1.PostgresColumnType.parse(r.values.col_type));
260
+ const res = new DbResource_1.DbColumn(r.values.qname, GeneralColumnType_1.GeneralColumnType.parse(type_name), {
261
+ nullable: r.values.nullable === 1,
262
+ key: r.values.col_key,
263
+ default: r.values.col_default,
264
+ extra: r.values.col_extra,
265
+ }, r.values.comment);
266
+ return res;
267
+ });
247
268
  });
248
269
  }
249
- async closeSub() {
250
- try {
251
- if (this.pool) {
252
- await this.pool.end();
270
+ closeSub() {
271
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
272
+ try {
273
+ if (this.pool) {
274
+ yield this.pool.end();
275
+ }
276
+ return '';
253
277
  }
254
- return '';
255
- }
256
- catch (e) {
257
- return e.message;
258
- }
278
+ catch (e) {
279
+ return e.message;
280
+ }
281
+ });
259
282
  }
260
283
  }
284
+ exports.default = PostgresDriver;
261
285
  //# sourceMappingURL=PostgresDriver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresDriver.js","sourceRoot":"","sources":["../../../../src/db/drivers/PostgresDriver.ts"],"names":[],"mappings":"AACA,OAAO,UAAiC,MAAM,cAAc,CAAC;AAC7D,OAAO,mBAAmB,EAAE,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAGL,UAAU,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,GAIT,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,UAAU;IAGpD,YAAY,MAAoB;QAC9B,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IASD,aAAa,CAAC,SAAsB,EAAE,QAAyB;QAC7D,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACnC,OAAO,CAAC,GAAG,CACT,KAAK,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,MAC5C,SAAS,CAAC,UACZ,EAAE,CACH,CAAC;SACH;QACD,MAAM,IAAI,GAAG,UAAU,CAAC,gBAAgB,CACtC,kBAAkB,EAClB,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAC/C,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,MAAM,CACpB,SAAS,CAAC,IAAI,EACd,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,EAC7B,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CACrD,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,WAAW,GAAG,EAAE,CAAC;QAErB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAC3B;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE,UAAU;SACrB,EACD;YACE,GAAG,EAAE,CAAC;YACN,iBAAiB,EAAE,IAAI;YACvB,uBAAuB,EAAE,IAAI;YAC7B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;SAC/B,CACF,CAAC;QAEF,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAYjC,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAEhC,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,KAAK;QAC7B,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI;YACF,IAAI,YAAY,EAAE;gBAChB,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;aACpC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;YAClD,IAAI,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE;gBAC3B,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC;aAChC;SACF;QAAC,OAAO,CAAC,EAAE;YACV,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC;SACzB;gBAAS;YACR,IAAI,YAAY,EAAE;gBAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;aACzB;SACF;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAGD,KAAK,CAAC,UAAU,CACd,GAAW,EACX,OAA2B;QAG3B,IAAI,GAAG,GAAG,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAEtC,IAAI;YACF,IAAI,KAAK,GAAa,EAAE,CAAC;YACzB,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE;gBAC5B,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;aACvB;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAYlD,IAAI,OAAO,EAAE;gBACX,IAAI,QAAwB,CAAC;gBAC7B,IAAI,OAAO,IAAI,OAAO,CAAC,oBAAoB,KAAK,IAAI,EAAE;oBACpD,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;iBAC3C;gBACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;gBAC9B,GAAG,GAAG,IAAI,mBAAmB,CAC3B,MAAM,KAAK,SAAS;oBAClB,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CACvD,CAAC;gBACF,IAAI,OAAO,CAAC,IAAI,EAAE;oBAChB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAW,EAAE,EAAE;wBACnC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACrB,CAAC,CAAC,CAAC;iBACJ;aACF;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,GAAG,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACvC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,WAAW,CACf,MAA2B,EAC3B,OAAY;QAEZ,MAAM,IAAI,GAAG,IAAI,KAAK,EAAa,CAAC;QACpC,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE;YAC5B,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,EAAE,CAAC,MAAM,EAAE;gBACb,MAAM,GAAG,EAAE,CAAC,MAAM,GAAG,GAAG,CAAC;aAC1B;YACD,IAAI,OAAO,IAAI,OAAO,CAAC,iBAAiB,EAAE;gBACxC,IAAI,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE;oBACrB,OAAO,CAAC,iBAAiB,CAAC,SAAS,MAAM,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;iBAC7D;aACF;YACD,MAAM,GAAG,GAAG,iCAAiC,MAAM,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;YACjE,IAAI;gBACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC/C,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACtD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC5B,MAAM,GAAG,GAAc,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC/D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAChB;aAEF;YAAC,OAAO,CAAC,EAAE,GAAE;YACd,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,OAG1B;QACC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,CAAC;SACX;QACD,MAAM,WAAW,GAAG,IAAI,KAAK,EAAc,CAAC;QAC5C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnE,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAExE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACpD,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEpC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAChD,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;SACnD;QACD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE;gBAC5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAU,OAAO,CAAC,CAAC;gBAC1D,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;aACnD;SACF;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,mBAA2B;QAE3B,MAAM,GAAG,GAAG,MAAM,IAAI;aACnB,UAAU,CAAC;wCACsB,CAAC,CAAC;QACtC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACxB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC1C,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/B,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,KAAK,mBAAmB,CAAC;YAChD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAAsB;QACrC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;;;oBAGlB,CAAC,CAAC;QAElB,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACxB,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACxC,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAkB;QAChC,IAAI,GAAG,GAAG,MAAM,IAAI;aACjB,UAAU,CAAC;;;4BAGU,QAAQ,CAAC,OAAO,EAAE;yBACrB,CAAC,CAAC;QAEvB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACnE,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;QAEH,GAAG,GAAG,MAAM,IAAI;aACb,UAAU,CAAC;4BACU,QAAQ,CAAC,OAAO,EAAE;wBACtB,CAAC,CAAC;QAEtB,OAAO,IAAI,CAAC,MAAM,CAChB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YACpD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAgB;QAC/B,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAoDqB,EACrB,EAAE,KAAK,EAAE,CACV,CAAC;QAEF,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,gBAAgB,CAC3C,kBAAkB,EAClB,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC5C,CAAC;YACF,MAAM,GAAG,GAAG,IAAI,QAAQ,CACtB,CAAC,CAAC,MAAM,CAAC,KAAK,EACd,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,EAClC;gBACE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,CAAC;gBACjC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;gBACrB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;gBAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS;aAC1B,EACD,CAAC,CAAC,MAAM,CAAC,OAAO,CACjB,CAAC;YACF,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI;YACF,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;aACvB;YACD,OAAO,EAAE,CAAC;SACX;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,CAAC,OAAO,CAAC;SAClB;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"PostgresDriver.js","sourceRoot":"","sources":["../../../../src/db/drivers/PostgresDriver.ts"],"names":[],"mappings":"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"}