af-db-ts 1.0.5 → 2.0.2
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.
- package/README.md +3 -3
- package/dist/cjs/__tests__/01_node_env.spec.js +7 -0
- package/dist/cjs/__tests__/01_node_env.spec.js.map +1 -0
- package/dist/cjs/__tests__/02_getValueForSqlMs.spec.js +50 -0
- package/dist/cjs/__tests__/02_getValueForSqlMs.spec.js.map +1 -0
- package/dist/cjs/__tests__/global-setup.js +7 -0
- package/dist/cjs/__tests__/global-setup.js.map +1 -0
- package/dist/cjs/__tests__/global-teardown.js +7 -0
- package/dist/cjs/__tests__/global-teardown.js.map +1 -0
- package/dist/cjs/{interfaces.js → src/@types/i-common.js} +1 -1
- package/dist/cjs/src/@types/i-common.js.map +1 -0
- package/dist/cjs/src/@types/i-config.js +3 -0
- package/dist/cjs/src/@types/i-config.js.map +1 -0
- package/dist/cjs/src/@types/i-ms.js +3 -0
- package/dist/cjs/src/@types/i-ms.js.map +1 -0
- package/dist/cjs/src/@types/i-pg.js +24 -0
- package/dist/cjs/src/@types/i-pg.js.map +1 -0
- package/dist/cjs/src/common.js +30 -0
- package/dist/cjs/src/common.js.map +1 -0
- package/dist/cjs/src/index.js +59 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/cjs/src/logger-error.js +10 -0
- package/dist/cjs/src/logger-error.js.map +1 -0
- package/dist/cjs/{get-value-for-sql.js → src/mssql/get-value-for-sql.js} +12 -8
- package/dist/cjs/src/mssql/get-value-for-sql.js.map +1 -0
- package/dist/cjs/{db.js → src/mssql/pool-ms.js} +73 -77
- package/dist/cjs/src/mssql/pool-ms.js.map +1 -0
- package/dist/cjs/src/mssql/query-ms.js +47 -0
- package/dist/cjs/src/mssql/query-ms.js.map +1 -0
- package/dist/cjs/{sql.js → src/mssql/sql.js} +72 -49
- package/dist/cjs/src/mssql/sql.js.map +1 -0
- package/dist/cjs/src/mssql/utils.js.map +1 -0
- package/dist/cjs/src/pg/get-merge-sql.js +50 -0
- package/dist/cjs/src/pg/get-merge-sql.js.map +1 -0
- package/dist/cjs/src/pg/get-update-sql.js +29 -0
- package/dist/cjs/src/pg/get-update-sql.js.map +1 -0
- package/dist/cjs/src/pg/insert.js +93 -0
- package/dist/cjs/src/pg/insert.js.map +1 -0
- package/dist/cjs/src/pg/is-table-or-view-exists.js +21 -0
- package/dist/cjs/src/pg/is-table-or-view-exists.js.map +1 -0
- package/dist/cjs/src/pg/pg-pool.js +52 -0
- package/dist/cjs/src/pg/pg-pool.js.map +1 -0
- package/dist/cjs/src/pg/prepare-value.js +84 -0
- package/dist/cjs/src/pg/prepare-value.js.map +1 -0
- package/dist/cjs/src/pg/query-pg.js +23 -0
- package/dist/cjs/src/pg/query-pg.js.map +1 -0
- package/dist/cjs/src/pg/table-schema.js +169 -0
- package/dist/cjs/src/pg/table-schema.js.map +1 -0
- package/dist/esm/src/@types/i-common.js +2 -0
- package/dist/esm/src/@types/i-common.js.map +1 -0
- package/dist/esm/src/@types/i-config.js +2 -0
- package/dist/esm/src/@types/i-config.js.map +1 -0
- package/dist/esm/src/@types/i-ms.js +2 -0
- package/dist/esm/src/@types/i-ms.js.map +1 -0
- package/dist/esm/src/@types/i-pg.js +21 -0
- package/dist/esm/src/@types/i-pg.js.map +1 -0
- package/dist/esm/src/common.js +25 -0
- package/dist/esm/src/common.js.map +1 -0
- package/dist/esm/src/index.js +15 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/esm/src/logger-error.js +6 -0
- package/dist/esm/src/logger-error.js.map +1 -0
- package/dist/esm/{get-value-for-sql.js → src/mssql/get-value-for-sql.js} +11 -7
- package/dist/esm/src/mssql/get-value-for-sql.js.map +1 -0
- package/dist/esm/{db.js → src/mssql/pool-ms.js} +35 -62
- package/dist/esm/src/mssql/pool-ms.js.map +1 -0
- package/dist/esm/src/mssql/query-ms.js +20 -0
- package/dist/esm/src/mssql/query-ms.js.map +1 -0
- package/dist/esm/{sql.js → src/mssql/sql.js} +36 -36
- package/dist/esm/src/mssql/sql.js.map +1 -0
- package/dist/esm/src/mssql/utils.js.map +1 -0
- package/dist/esm/src/pg/get-merge-sql.js +46 -0
- package/dist/esm/src/pg/get-merge-sql.js.map +1 -0
- package/dist/esm/src/pg/get-update-sql.js +25 -0
- package/dist/esm/src/pg/get-update-sql.js.map +1 -0
- package/dist/esm/src/pg/insert.js +89 -0
- package/dist/esm/src/pg/insert.js.map +1 -0
- package/dist/esm/src/pg/is-table-or-view-exists.js +17 -0
- package/dist/esm/src/pg/is-table-or-view-exists.js.map +1 -0
- package/dist/esm/src/pg/pg-pool.js +43 -0
- package/dist/esm/src/pg/pg-pool.js.map +1 -0
- package/dist/esm/src/pg/prepare-value.js +79 -0
- package/dist/esm/src/pg/prepare-value.js.map +1 -0
- package/dist/esm/src/pg/query-pg.js +19 -0
- package/dist/esm/src/pg/query-pg.js.map +1 -0
- package/dist/esm/src/pg/table-schema.js +164 -0
- package/dist/esm/src/pg/table-schema.js.map +1 -0
- package/dist/types/src/@types/i-common.d.ts +35 -0
- package/dist/types/src/@types/i-common.d.ts.map +1 -0
- package/dist/types/src/@types/i-config.d.ts +60 -0
- package/dist/types/src/@types/i-config.d.ts.map +1 -0
- package/dist/types/{interfaces.d.ts → src/@types/i-ms.d.ts} +30 -77
- package/dist/types/src/@types/i-ms.d.ts.map +1 -0
- package/dist/types/src/@types/i-pg.d.ts +62 -0
- package/dist/types/src/@types/i-pg.d.ts.map +1 -0
- package/dist/types/src/common.d.ts +6 -0
- package/dist/types/src/common.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +18 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/logger-error.d.ts +7 -0
- package/dist/types/src/logger-error.d.ts.map +1 -0
- package/dist/types/src/mssql/get-value-for-sql.d.ts +11 -0
- package/dist/types/src/mssql/get-value-for-sql.d.ts.map +1 -0
- package/dist/types/{db.d.ts → src/mssql/pool-ms.d.ts} +18 -15
- package/dist/types/src/mssql/pool-ms.d.ts.map +1 -0
- package/dist/types/src/mssql/query-ms.d.ts +3 -0
- package/dist/types/src/mssql/query-ms.d.ts.map +1 -0
- package/dist/types/{sql.d.ts → src/mssql/sql.d.ts} +17 -16
- package/dist/types/src/mssql/sql.d.ts.map +1 -0
- package/dist/types/src/mssql/utils.d.ts.map +1 -0
- package/dist/types/src/pg/get-merge-sql.d.ts +9 -0
- package/dist/types/src/pg/get-merge-sql.d.ts.map +1 -0
- package/dist/types/src/pg/get-update-sql.d.ts +3 -0
- package/dist/types/src/pg/get-update-sql.d.ts.map +1 -0
- package/dist/types/src/pg/insert.d.ts +15 -0
- package/dist/types/src/pg/insert.d.ts.map +1 -0
- package/dist/types/src/pg/is-table-or-view-exists.d.ts +2 -0
- package/dist/types/src/pg/is-table-or-view-exists.d.ts.map +1 -0
- package/dist/types/src/pg/pg-pool.d.ts +6 -0
- package/dist/types/src/pg/pg-pool.d.ts.map +1 -0
- package/dist/types/src/pg/prepare-value.d.ts +7 -0
- package/dist/types/src/pg/prepare-value.d.ts.map +1 -0
- package/dist/types/src/pg/query-pg.d.ts +3 -0
- package/dist/types/src/pg/query-pg.d.ts.map +1 -0
- package/dist/types/src/pg/table-schema.d.ts +12 -0
- package/dist/types/src/pg/table-schema.d.ts.map +1 -0
- package/package.json +21 -24
- package/src/@types/i-common.ts +39 -0
- package/src/@types/i-config.ts +75 -0
- package/src/{interfaces.ts → @types/i-ms.ts} +29 -86
- package/src/@types/i-pg.ts +67 -0
- package/src/common.ts +26 -0
- package/src/index.ts +104 -42
- package/src/logger-error.ts +11 -0
- package/src/{get-value-for-sql.ts → mssql/get-value-for-sql.ts} +15 -9
- package/src/{db.ts → mssql/pool-ms.ts} +40 -71
- package/src/mssql/query-ms.ts +25 -0
- package/src/{sql.ts → mssql/sql.ts} +56 -59
- package/src/pg/get-merge-sql.ts +60 -0
- package/src/pg/get-update-sql.ts +31 -0
- package/src/pg/insert.ts +118 -0
- package/src/pg/is-table-or-view-exists.ts +21 -0
- package/src/pg/pg-pool.ts +49 -0
- package/src/pg/prepare-value.ts +90 -0
- package/src/pg/query-pg.ts +26 -0
- package/src/pg/table-schema.ts +178 -0
- package/dist/cjs/db.js.map +0 -1
- package/dist/cjs/get-value-for-sql.js.map +0 -1
- package/dist/cjs/index.js +0 -21
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/interfaces.js.map +0 -1
- package/dist/cjs/sql.js.map +0 -1
- package/dist/cjs/utils.js.map +0 -1
- package/dist/esm/db.js.map +0 -1
- package/dist/esm/get-value-for-sql.js.map +0 -1
- package/dist/esm/index.js +0 -4
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/interfaces.js +0 -2
- package/dist/esm/interfaces.js.map +0 -1
- package/dist/esm/sql.js.map +0 -1
- package/dist/esm/utils.js.map +0 -1
- package/dist/types/db.d.ts.map +0 -1
- package/dist/types/get-value-for-sql.d.ts +0 -7
- package/dist/types/get-value-for-sql.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -5
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/interfaces.d.ts.map +0 -1
- package/dist/types/sql.d.ts.map +0 -1
- package/dist/types/utils.d.ts.map +0 -1
- /package/dist/cjs/{utils.js → src/mssql/utils.js} +0 -0
- /package/dist/esm/{utils.js → src/mssql/utils.js} +0 -0
- /package/dist/types/{utils.d.ts → src/mssql/utils.d.ts} +0 -0
- /package/src/{utils.ts → mssql/utils.ts} +0 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { getTableSchemaPg } from './table-schema';
|
|
2
|
+
import { prepareSqlValuePg } from './prepare-value';
|
|
3
|
+
import { ITableSchemaPg } from '../@types/i-pg';
|
|
4
|
+
import { TDBRecord } from '../@types/i-common';
|
|
5
|
+
|
|
6
|
+
export const getUpdateSqlPg = async (
|
|
7
|
+
connectionId: string,
|
|
8
|
+
schemaAndTable: string,
|
|
9
|
+
record: TDBRecord,
|
|
10
|
+
customSets: TDBRecord = {},
|
|
11
|
+
): Promise<string> => {
|
|
12
|
+
const tableSchema: ITableSchemaPg = await getTableSchemaPg(connectionId, schemaAndTable);
|
|
13
|
+
const { recordSchema, pk, fieldsWoSerials } = tableSchema;
|
|
14
|
+
const sqlValue = (fieldName: string) => prepareSqlValuePg({ value: record[fieldName], fieldDef: recordSchema[fieldName] });
|
|
15
|
+
const preparedRecord: TDBRecord = {};
|
|
16
|
+
fieldsWoSerials.forEach((f) => {
|
|
17
|
+
if (pk.includes(f)) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (customSets[f] !== undefined) {
|
|
21
|
+
preparedRecord[f] = customSets[f];
|
|
22
|
+
} else if (record[f] !== undefined) {
|
|
23
|
+
preparedRecord[f] = sqlValue(f);
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
const sets = Object.entries(preparedRecord).map(([f, v]) => `"${f}" = ${v}`).join(', ');
|
|
27
|
+
const where = pk.map((f) => `"${f}" = ${sqlValue(f)}`).join(' AND ');
|
|
28
|
+
return `${'UPDATE'} ${schemaAndTable} SET
|
|
29
|
+
${sets}
|
|
30
|
+
WHERE ${where};`;
|
|
31
|
+
};
|
package/src/pg/insert.ts
ADDED
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
// noinspection SqlResolve
|
|
2
|
+
import { QueryResultRow } from 'pg';
|
|
3
|
+
import { omitBy } from 'af-tools-ts';
|
|
4
|
+
import { getFieldsAndValuesPg, getTableSchemaPg } from './table-schema';
|
|
5
|
+
import { queryPg } from './query-pg';
|
|
6
|
+
import { logger } from '../logger-error';
|
|
7
|
+
|
|
8
|
+
export enum EUpdateLevel {
|
|
9
|
+
NEVER_UPDATE,
|
|
10
|
+
UPDATE_IF_NOT_FOUND,
|
|
11
|
+
UPDATE_ALWAYS
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const hasAllValues = <T extends QueryResultRow> (fieldList: string[] | undefined, record: T) => fieldList?.length && fieldList.every((f) => record[f] !== undefined);
|
|
15
|
+
|
|
16
|
+
const selectByAnyIdentity = async <T extends QueryResultRow, R extends QueryResultRow = T> (
|
|
17
|
+
connectionId: string,
|
|
18
|
+
identities: string[][],
|
|
19
|
+
record: T,
|
|
20
|
+
source: string,
|
|
21
|
+
): Promise<R | undefined> => {
|
|
22
|
+
const identityAlternativesArr: string[] = [];
|
|
23
|
+
let pos = 0;
|
|
24
|
+
const positionValues: any[] = [];
|
|
25
|
+
identities.forEach((identityFieldList) => {
|
|
26
|
+
if (hasAllValues(identityFieldList, record)) {
|
|
27
|
+
identityAlternativesArr.push(identityFieldList.map((f) => `${f} = $${positionValues.push(record[f]) && ++pos}`).join(' AND '));
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
let selectSql: string = '';
|
|
31
|
+
if (identityAlternativesArr.length) {
|
|
32
|
+
const identityWhere = identityAlternativesArr.map((v) => `( ${v} )`).join(' OR ');
|
|
33
|
+
selectSql = `SELECT *
|
|
34
|
+
FROM ${source}
|
|
35
|
+
WHERE ${identityWhere}`;
|
|
36
|
+
const result = await queryPg<R>(connectionId, selectSql, positionValues);
|
|
37
|
+
if (result?.rows?.[0]) {
|
|
38
|
+
return result?.rows?.[0];
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export const insertPg = async <T extends QueryResultRow, R extends QueryResultRow = T> (
|
|
44
|
+
{
|
|
45
|
+
connectionId,
|
|
46
|
+
record,
|
|
47
|
+
target,
|
|
48
|
+
source,
|
|
49
|
+
isThrow,
|
|
50
|
+
updateLevel,
|
|
51
|
+
}: {
|
|
52
|
+
connectionId: string,
|
|
53
|
+
record: T,
|
|
54
|
+
target: string, // schema And Table
|
|
55
|
+
source?: string, // The schema and name of the table/view from which to return data. If not specified, target is used.
|
|
56
|
+
isThrow?: boolean, // Flag: raise exception higher in case of error.
|
|
57
|
+
updateLevel?: EUpdateLevel, // Flag: Update entry when unique constraints conflict.
|
|
58
|
+
},
|
|
59
|
+
): Promise<R | undefined> => {
|
|
60
|
+
const { recordSchema, pk = [], serials = [], uc = [] } = await getTableSchemaPg(connectionId, target);
|
|
61
|
+
// Cleaning the record: deleting properties not included in the set of fields, with the value undefined and auto-incrementing fields
|
|
62
|
+
const recordWoSerials: T = omitBy(record, (fieldValue: any, fieldName: string) => !recordSchema[fieldName] || fieldValue === undefined || serials.includes(fieldName)) as T;
|
|
63
|
+
|
|
64
|
+
// We form all possible sets of fields, which we then use to search for an added (or already existing) record
|
|
65
|
+
// Normalize (sort) sets
|
|
66
|
+
let identities: string[][] = [pk, ...serials.map((f) => [f]), ...Object.values(uc)].filter((a) => a.length).map((a) => a.sort());
|
|
67
|
+
// Removing duplicates
|
|
68
|
+
identities = [...(new Set(identities.map((a) => a.join('|'))))].map((s) => s.split('|'));
|
|
69
|
+
source = source || target;
|
|
70
|
+
|
|
71
|
+
if (!updateLevel) {
|
|
72
|
+
updateLevel = EUpdateLevel.NEVER_UPDATE;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
let foundRow: R | undefined;
|
|
76
|
+
try {
|
|
77
|
+
if (updateLevel !== EUpdateLevel.UPDATE_ALWAYS) {
|
|
78
|
+
// First, let's look for a suitable entry in the database if there are enough identification fields to search.
|
|
79
|
+
// Most often, there are no identification fields among the inserted fields and are expected
|
|
80
|
+
// appearance of an auto-incrementing identifier after insertion
|
|
81
|
+
foundRow = await selectByAnyIdentity<T, R>(connectionId, identities, record, source);
|
|
82
|
+
if (foundRow && updateLevel === EUpdateLevel.NEVER_UPDATE) {
|
|
83
|
+
return foundRow;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// There is no suitable record in the database, we insert it
|
|
88
|
+
const { values, positionsList, fieldsList, upsertFields } = getFieldsAndValuesPg(recordWoSerials, recordSchema);
|
|
89
|
+
const insertSQL = `INSERT INTO ${target} (${fieldsList})
|
|
90
|
+
VALUES (${positionsList}) ON CONFLICT ${
|
|
91
|
+
updateLevel === EUpdateLevel.NEVER_UPDATE
|
|
92
|
+
? 'DO NOTHING'
|
|
93
|
+
: `(${pk.join(', ')}) DO UPDATE SET ${upsertFields}`
|
|
94
|
+
}
|
|
95
|
+
RETURNING *`;
|
|
96
|
+
const result = await queryPg<R>(connectionId, insertSQL, values);
|
|
97
|
+
const { rows = [] } = result || {};
|
|
98
|
+
if (!rows[0] && !identities.length) {
|
|
99
|
+
// Hard case
|
|
100
|
+
logger.error(`The insert into table ${target} was not performed and there is no identification field set to search for an existing record.\nrecord: ${JSON.stringify(record)}`);
|
|
101
|
+
return undefined;
|
|
102
|
+
}
|
|
103
|
+
// The insertion is done. Add auto-incrementing identifiers to the array of identification field sets
|
|
104
|
+
const rowInserted = rows[0];
|
|
105
|
+
const summaryRow = { ...recordWoSerials, ...rowInserted };
|
|
106
|
+
foundRow = await selectByAnyIdentity<T, R>(connectionId, identities, summaryRow, source);
|
|
107
|
+
if (foundRow) {
|
|
108
|
+
return foundRow;
|
|
109
|
+
}
|
|
110
|
+
// If we could not find a record in the source by identifiers, we return what was returned after insertion.
|
|
111
|
+
return summaryRow;
|
|
112
|
+
} catch (err) {
|
|
113
|
+
logger.error(err);
|
|
114
|
+
if (isThrow) {
|
|
115
|
+
throw err;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// noinspection SqlResolve
|
|
2
|
+
import { queryPg } from './query-pg';
|
|
3
|
+
|
|
4
|
+
const tableOrViewExistenceCache = new Set();
|
|
5
|
+
|
|
6
|
+
export const isTableOrViewExistsPg = async (
|
|
7
|
+
connectionId: string,
|
|
8
|
+
schemaOrFullName: string,
|
|
9
|
+
tableOrViewNAme?: string,
|
|
10
|
+
): Promise<boolean> => {
|
|
11
|
+
const entityName = tableOrViewNAme ? `${schemaOrFullName}.${tableOrViewNAme}` : schemaOrFullName;
|
|
12
|
+
if (tableOrViewExistenceCache.has(entityName)) {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
const result = await queryPg(connectionId, `SELECT to_regclass('${entityName}') as is_exists`);
|
|
16
|
+
if (result?.rows?.[0]?.is_exists) {
|
|
17
|
+
tableOrViewExistenceCache.add(entityName);
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
return false;
|
|
21
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import config from 'config';
|
|
2
|
+
import { Pool, PoolClient, PoolConfig } from 'pg';
|
|
3
|
+
import { echo } from 'af-echo-ts';
|
|
4
|
+
import { logger } from '../logger-error';
|
|
5
|
+
import { IDbOptionsPg, IDbsPg } from '../@types/i-config';
|
|
6
|
+
import { IConnectionPoolsPg, IPoolClientPg, IPoolPg } from '../@types/i-pg';
|
|
7
|
+
|
|
8
|
+
const pgConfigs = config.get<{ options: IDbOptionsPg, dbs: IDbsPg }>('db.postgres');
|
|
9
|
+
|
|
10
|
+
export const poolsCachePg: IConnectionPoolsPg = {};
|
|
11
|
+
|
|
12
|
+
export const getPoolPg = async (connectionId: string): Promise<IPoolPg> => {
|
|
13
|
+
if (!poolsCachePg[connectionId]) {
|
|
14
|
+
const poolConfig: PoolConfig = { ...pgConfigs.options, ...pgConfigs.dbs[connectionId] };
|
|
15
|
+
const pool = new Pool(poolConfig) as IPoolPg;
|
|
16
|
+
poolsCachePg[connectionId] = pool;
|
|
17
|
+
pool.on('error', (err: Error, client: PoolClient) => {
|
|
18
|
+
client.release(true);
|
|
19
|
+
logger.error(err);
|
|
20
|
+
});
|
|
21
|
+
pool.on('connect', (client: PoolClient) => {
|
|
22
|
+
const { database, processID } = client as unknown as IPoolClientPg;
|
|
23
|
+
echo.debug(`PG client [${connectionId}] connected! DB: "${database}" / processID: ${processID}`);
|
|
24
|
+
});
|
|
25
|
+
pool.on('remove', (client: PoolClient) => {
|
|
26
|
+
const { database, processID } = client as unknown as IPoolClientPg;
|
|
27
|
+
echo.debug(`PG client [${connectionId}] removed. DB: "${database}" / processID: ${processID}`);
|
|
28
|
+
});
|
|
29
|
+
await pool.connect();
|
|
30
|
+
}
|
|
31
|
+
return poolsCachePg[connectionId];
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export const closePoolPg = async (connectionId: string): Promise<boolean> => {
|
|
35
|
+
if (!connectionId) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
const pool = poolsCachePg[connectionId];
|
|
39
|
+
if (!pool) {
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
const fns = (pool._clients || [])
|
|
43
|
+
.filter((client: IPoolClientPg) => client?._connected && typeof client?.end === 'function')
|
|
44
|
+
.map((client: IPoolClientPg) => client.end());
|
|
45
|
+
await Promise.all(fns);
|
|
46
|
+
return true;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export const closeAllPgConnectionsPg = async () => Promise.all(Object.keys(poolsCachePg).map((connectionId) => closePoolPg(connectionId)));
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
// noinspection SqlResolve
|
|
2
|
+
import { DateTime } from 'luxon';
|
|
3
|
+
import { EDataTypePg, IFieldDefPg } from '../@types/i-pg';
|
|
4
|
+
|
|
5
|
+
const NULL = 'null';
|
|
6
|
+
const utc$ = (millis?: number): DateTime => DateTime.fromMillis(millis == null ? Date.now() : millis).setZone('UTC');
|
|
7
|
+
|
|
8
|
+
export const prepareSqlStringPg = (s: any): string => {
|
|
9
|
+
s = String(s);
|
|
10
|
+
if (/['\\]|\${2,}/.test(s)) {
|
|
11
|
+
return `$s$${s}$s$`;
|
|
12
|
+
}
|
|
13
|
+
return `'${s}'`;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export const prepareSqlValuePg = (arg: {
|
|
17
|
+
value: any,
|
|
18
|
+
fieldDef: IFieldDefPg,
|
|
19
|
+
}): any => {
|
|
20
|
+
const { value, fieldDef } = arg;
|
|
21
|
+
if (value == null && fieldDef.isNullable) {
|
|
22
|
+
return NULL;
|
|
23
|
+
}
|
|
24
|
+
switch (fieldDef.dataType) {
|
|
25
|
+
case EDataTypePg.boolean: {
|
|
26
|
+
return value ? 'true' : 'false';
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
case EDataTypePg.bigint: {
|
|
30
|
+
return `'${value}'`;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
case EDataTypePg.numeric:
|
|
34
|
+
case EDataTypePg.real: {
|
|
35
|
+
const v: string | number = Number(value);
|
|
36
|
+
return Number.isNaN(v) ? NULL : v;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
case EDataTypePg.integer:
|
|
40
|
+
case EDataTypePg.smallint: {
|
|
41
|
+
const v: string | number = Number(value);
|
|
42
|
+
return Number.isNaN(v) ? NULL : Math.floor(v);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
case EDataTypePg.text:
|
|
46
|
+
case EDataTypePg.character:
|
|
47
|
+
case EDataTypePg.varchar:
|
|
48
|
+
case EDataTypePg.uuid: {
|
|
49
|
+
return prepareSqlStringPg(value);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
case EDataTypePg.json:
|
|
53
|
+
case EDataTypePg.jsonb: {
|
|
54
|
+
return prepareSqlStringPg(JSON.stringify(value));
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
case EDataTypePg.date:
|
|
58
|
+
case EDataTypePg.timestamp:
|
|
59
|
+
case EDataTypePg.timestamptz: {
|
|
60
|
+
let v = value;
|
|
61
|
+
if (value instanceof Date) {
|
|
62
|
+
v = +value;
|
|
63
|
+
} else if (value instanceof DateTime) {
|
|
64
|
+
v = value.toMillis();
|
|
65
|
+
} else if (typeof value === 'string') {
|
|
66
|
+
v = DateTime.fromISO(value).toMillis();
|
|
67
|
+
}
|
|
68
|
+
switch (fieldDef.dataType) {
|
|
69
|
+
case EDataTypePg.date: {
|
|
70
|
+
return `'${typeof v === 'number' ? utc$(v).toISODate() : v}'::date`;
|
|
71
|
+
}
|
|
72
|
+
case EDataTypePg.timestamp:
|
|
73
|
+
case EDataTypePg.timestamptz: {
|
|
74
|
+
return `'${typeof v === 'number' ? utc$(v).toISO() : v}'::timestamptz`;
|
|
75
|
+
}
|
|
76
|
+
default:
|
|
77
|
+
return `'${v}'`;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
case EDataTypePg.USER_DEFINED:
|
|
82
|
+
return prepareSqlStringPg(value);
|
|
83
|
+
|
|
84
|
+
case EDataTypePg.ARRAY: {
|
|
85
|
+
return prepareSqlStringPg(JSON.stringify(value));
|
|
86
|
+
}
|
|
87
|
+
default:
|
|
88
|
+
return prepareSqlStringPg(value);
|
|
89
|
+
}
|
|
90
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { QueryResult, QueryResultRow } from 'pg';
|
|
2
|
+
import { getPoolPg } from './pg-pool';
|
|
3
|
+
import { logSqlError } from '../common';
|
|
4
|
+
import { IPoolPg } from '../@types/i-pg';
|
|
5
|
+
|
|
6
|
+
export const queryPg = async <R extends QueryResultRow = any> (
|
|
7
|
+
connectionId: string,
|
|
8
|
+
sqlText: string,
|
|
9
|
+
sqlValues?: any[],
|
|
10
|
+
throwError?: boolean,
|
|
11
|
+
prefix?: string,
|
|
12
|
+
):
|
|
13
|
+
Promise<QueryResult<R> | undefined> => {
|
|
14
|
+
const pool: IPoolPg = await getPoolPg(connectionId);
|
|
15
|
+
let res: QueryResult;
|
|
16
|
+
try {
|
|
17
|
+
if (Array.isArray(sqlValues)) {
|
|
18
|
+
res = await pool.query(sqlText, sqlValues);
|
|
19
|
+
} else {
|
|
20
|
+
res = await pool.query(sqlText);
|
|
21
|
+
}
|
|
22
|
+
return res;
|
|
23
|
+
} catch (err) {
|
|
24
|
+
logSqlError(err, !throwError, sqlText, prefix);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
// noinspection SqlResolve
|
|
2
|
+
import { QueryResultRow } from 'pg';
|
|
3
|
+
import { queryPg } from './query-pg';
|
|
4
|
+
import { logger } from '../logger-error';
|
|
5
|
+
import { graceExit } from '../common';
|
|
6
|
+
import { EDataTypePg, IFieldDefPg, ITableSchemaPg, TRecordSchemaPg, TUniqueConstraintsPg } from '../@types/i-pg';
|
|
7
|
+
|
|
8
|
+
const tableSchemaHash: { [schemaAndTable: string]: ITableSchemaPg } = {};
|
|
9
|
+
|
|
10
|
+
const getRecordSchemaMs = async (connectionId: string, schemaAndTable: string): Promise<TRecordSchemaPg> => {
|
|
11
|
+
const [schema, table] = schemaAndTable.split('.');
|
|
12
|
+
const sql = `SELECT column_name,
|
|
13
|
+
column_default,
|
|
14
|
+
is_nullable,
|
|
15
|
+
data_type,
|
|
16
|
+
character_maximum_length,
|
|
17
|
+
numeric_precision,
|
|
18
|
+
numeric_precision_radix,
|
|
19
|
+
datetime_precision,
|
|
20
|
+
udt_name,
|
|
21
|
+
is_generated
|
|
22
|
+
FROM information_schema.columns
|
|
23
|
+
WHERE table_name = '${table}'
|
|
24
|
+
AND table_schema = '${schema}';`;
|
|
25
|
+
const result = await queryPg(connectionId, sql);
|
|
26
|
+
const fields = result?.rows || [];
|
|
27
|
+
const recordSchema: TRecordSchemaPg = {};
|
|
28
|
+
fields.forEach((fieldDef) => {
|
|
29
|
+
const fieldSchema: IFieldDefPg = {
|
|
30
|
+
name: fieldDef.column_name,
|
|
31
|
+
isNullable: /yes/i.test(fieldDef.is_nullable || ''),
|
|
32
|
+
columnDefault: fieldDef.column_default,
|
|
33
|
+
hasDefault: !!fieldDef.column_default,
|
|
34
|
+
dataType: fieldDef.data_type,
|
|
35
|
+
maxLen: fieldDef.character_maximum_length,
|
|
36
|
+
precision: fieldDef.numeric_precision,
|
|
37
|
+
radix: fieldDef.numeric_precision_radix,
|
|
38
|
+
dtPrecision: fieldDef.datetime_precision,
|
|
39
|
+
udtName: fieldDef.udt_name,
|
|
40
|
+
};
|
|
41
|
+
if (fieldDef.is_generated === 'NEVER') {
|
|
42
|
+
Object.entries(fieldSchema).forEach(([prop, value]) => {
|
|
43
|
+
if (value == null) {
|
|
44
|
+
delete fieldSchema[prop as keyof IFieldDefPg];
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
recordSchema[fieldDef.column_name] = fieldSchema;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
return recordSchema;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const getPrimaryKey = async (connectionId: string, schemaAndTable: string): Promise<string[]> => {
|
|
54
|
+
const result = await queryPg(connectionId, `SELECT a.attname as f
|
|
55
|
+
FROM pg_index i
|
|
56
|
+
JOIN pg_attribute a
|
|
57
|
+
ON a.attrelid = i.indrelid AND a.attnum = ANY (i.indkey)
|
|
58
|
+
WHERE i.indrelid = '${schemaAndTable}'::regclass
|
|
59
|
+
AND i.indisprimary;`);
|
|
60
|
+
|
|
61
|
+
return (result?.rows || []).map(({ f }) => f);
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const getUniqueConstraints = async (connectionId: string, schemaAndTable: string): Promise<TUniqueConstraintsPg> => {
|
|
65
|
+
const [schema, table] = schemaAndTable.split('.');
|
|
66
|
+
const result = await queryPg(connectionId, `
|
|
67
|
+
SELECT UI.cn as cn, UI.cols as cols, CASE WHEN UC.cn IS NULL THEN 'UX' ELSE 'UC' END AS typ
|
|
68
|
+
FROM (SELECT c.relname as cn, array_to_json(array_agg(a.attname ORDER BY a.attname)) AS cols
|
|
69
|
+
FROM pg_index i
|
|
70
|
+
JOIN pg_attribute a ON a.attrelid = i.indrelid AND a.attnum = ANY (i.indkey)
|
|
71
|
+
JOIN pg_class AS c ON c.oid = i.indexrelid
|
|
72
|
+
WHERE i.indrelid = '${schemaAndTable}'::regclass
|
|
73
|
+
AND i.indisunique
|
|
74
|
+
AND NOT i.indisprimary
|
|
75
|
+
GROUP BY c.relname) AS UI
|
|
76
|
+
LEFT OUTER JOIN (SELECT ccu.constraint_name AS cn
|
|
77
|
+
FROM information_schema.table_constraints tc
|
|
78
|
+
JOIN information_schema.constraint_column_usage AS ccu USING (constraint_schema, constraint_name)
|
|
79
|
+
JOIN information_schema.columns AS c ON c.table_schema = tc.constraint_schema
|
|
80
|
+
AND tc.table_name = c.table_name AND ccu.column_name = c.column_name
|
|
81
|
+
WHERE tc.table_schema = '${schema}'
|
|
82
|
+
AND tc.table_name = '${table}'
|
|
83
|
+
AND constraint_type = 'UNIQUE'
|
|
84
|
+
GROUP BY ccu.constraint_name) AS UC ON UC.cn = UI.cn
|
|
85
|
+
ORDER BY CASE WHEN UC.cn IS NULL THEN 2 ELSE 1 END
|
|
86
|
+
`);
|
|
87
|
+
const uc: TUniqueConstraintsPg = {};
|
|
88
|
+
result?.rows?.forEach(({ cn, cols }) => {
|
|
89
|
+
uc[cn] = cols;
|
|
90
|
+
});
|
|
91
|
+
return uc;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
const getSerials = async (connectionId: string, schemaAndTable: string): Promise<string[]> => {
|
|
95
|
+
const result = await queryPg(connectionId, `
|
|
96
|
+
WITH fq_objects AS (SELECT c.oid,
|
|
97
|
+
n.nspname || '.' || c.relname AS fqname,
|
|
98
|
+
c.relkind,
|
|
99
|
+
c.relname AS relation
|
|
100
|
+
FROM pg_class c
|
|
101
|
+
JOIN pg_namespace n ON n.oid = c.relnamespace),
|
|
102
|
+
sequences AS (SELECT oid, fqname FROM fq_objects WHERE relkind = 'S'),
|
|
103
|
+
tables AS (SELECT oid, fqname FROM fq_objects WHERE relkind = 'r')
|
|
104
|
+
SELECT t.fqname AS tbl, array_to_json(array_agg(a.attname ORDER BY a.attname)) AS cols
|
|
105
|
+
FROM pg_depend d
|
|
106
|
+
JOIN sequences s ON s.oid = d.objid
|
|
107
|
+
JOIN tables t ON t.oid = d.refobjid
|
|
108
|
+
JOIN pg_attribute a ON a.attrelid = d.refobjid and a.attnum = d.refobjsubid
|
|
109
|
+
WHERE d.deptype = 'a'
|
|
110
|
+
AND t.fqname = '${schemaAndTable}'
|
|
111
|
+
GROUP BY t.fqname
|
|
112
|
+
`);
|
|
113
|
+
return result?.rows?.[0]?.cols || [];
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
export const getTableSchemaPg = async (connectionId: string, schemaAndTable: string): Promise<ITableSchemaPg> => {
|
|
117
|
+
let tableSchema = tableSchemaHash[schemaAndTable];
|
|
118
|
+
if (tableSchema) {
|
|
119
|
+
return tableSchema;
|
|
120
|
+
}
|
|
121
|
+
try {
|
|
122
|
+
const recordSchema = await getRecordSchemaMs(connectionId, schemaAndTable);
|
|
123
|
+
const pk = await getPrimaryKey(connectionId, schemaAndTable);
|
|
124
|
+
const uc = await getUniqueConstraints(connectionId, schemaAndTable);
|
|
125
|
+
const serials = await getSerials(connectionId, schemaAndTable);
|
|
126
|
+
const defaults: { [fieldName: string]: string } = {};
|
|
127
|
+
Object.values(recordSchema).forEach((fieldDef) => {
|
|
128
|
+
const { name: f, columnDefault, hasDefault } = fieldDef;
|
|
129
|
+
if (hasDefault && !serials.includes(f)) {
|
|
130
|
+
defaults[f] = `${columnDefault}`;
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
const fieldsList: string[] = Object.keys(recordSchema);
|
|
134
|
+
const fieldsWoSerials: string[] = fieldsList.filter((fieldName) => !serials.includes(fieldName));
|
|
135
|
+
|
|
136
|
+
tableSchema = {
|
|
137
|
+
recordSchema, pk, uc, defaults, serials, fieldsList, fieldsWoSerials,
|
|
138
|
+
};
|
|
139
|
+
tableSchemaHash[schemaAndTable] = tableSchema;
|
|
140
|
+
} catch (err) {
|
|
141
|
+
logger.error(`Failed to get schema for table ${schemaAndTable}`);
|
|
142
|
+
logger.error(err);
|
|
143
|
+
await graceExit();
|
|
144
|
+
}
|
|
145
|
+
return tableSchema;
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
export const getFieldsAndValuesPg = <U extends QueryResultRow = QueryResultRow> (record: U, recordSchema: TRecordSchemaPg):
|
|
149
|
+
{
|
|
150
|
+
fields: string[],
|
|
151
|
+
fieldsList: string,
|
|
152
|
+
values: any[],
|
|
153
|
+
positionsList: string,
|
|
154
|
+
setFields: string,
|
|
155
|
+
upsertFields: string
|
|
156
|
+
} => {
|
|
157
|
+
const recordNormalized: QueryResultRow = {};
|
|
158
|
+
Object.entries(record).forEach(([f, v]) => {
|
|
159
|
+
const { dataType } = recordSchema[f] || {};
|
|
160
|
+
if (!dataType) {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
if ((dataType === EDataTypePg.jsonb || dataType === EDataTypePg.json) && Array.isArray(v)) {
|
|
164
|
+
recordNormalized[f] = JSON.stringify(v);
|
|
165
|
+
} else {
|
|
166
|
+
recordNormalized[f] = v;
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
const fields: string[] = Object.keys(recordNormalized);
|
|
170
|
+
const fieldsList: string = fields.join(', ');
|
|
171
|
+
const values: any[] = Object.values(recordNormalized);
|
|
172
|
+
const positionsList: string = fields.map((__, i) => `$${++i}`).join(', ');
|
|
173
|
+
const setFields: string = fields.map((f, i) => `${f} = $${++i}`).join(', ');
|
|
174
|
+
const upsertFields: string = fields.map((f) => `${f} = EXCLUDED.${f}`).join(',\n');
|
|
175
|
+
return {
|
|
176
|
+
fields, fieldsList, values, positionsList, setFields, upsertFields,
|
|
177
|
+
};
|
|
178
|
+
};
|
package/dist/cjs/db.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/db.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-value-for-sql.js","sourceRoot":"","sources":["../../src/get-value-for-sql.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getValueForSQL = exports.binToHexString = exports.sql = exports.getRowsAffected = exports.prepareDataForSQL = exports.prepareRecordForSQL = exports.getSqlValuesExpression = exports.getSqlSetExpression = exports.getRecordValuesForSQL = exports.serialize = exports.wrapTransaction = exports.getRecordSchema = exports.correctRecordSchema = exports.prepareSqlString = exports.db = void 0;
|
|
4
|
-
exports.db = require("./db");
|
|
5
|
-
var sql_1 = require("./sql");
|
|
6
|
-
Object.defineProperty(exports, "prepareSqlString", { enumerable: true, get: function () { return sql_1.prepareSqlString; } });
|
|
7
|
-
Object.defineProperty(exports, "correctRecordSchema", { enumerable: true, get: function () { return sql_1.correctRecordSchema; } });
|
|
8
|
-
Object.defineProperty(exports, "getRecordSchema", { enumerable: true, get: function () { return sql_1.getRecordSchema; } });
|
|
9
|
-
Object.defineProperty(exports, "wrapTransaction", { enumerable: true, get: function () { return sql_1.wrapTransaction; } });
|
|
10
|
-
Object.defineProperty(exports, "serialize", { enumerable: true, get: function () { return sql_1.serialize; } });
|
|
11
|
-
Object.defineProperty(exports, "getRecordValuesForSQL", { enumerable: true, get: function () { return sql_1.getRecordValuesForSQL; } });
|
|
12
|
-
Object.defineProperty(exports, "getSqlSetExpression", { enumerable: true, get: function () { return sql_1.getSqlSetExpression; } });
|
|
13
|
-
Object.defineProperty(exports, "getSqlValuesExpression", { enumerable: true, get: function () { return sql_1.getSqlValuesExpression; } });
|
|
14
|
-
Object.defineProperty(exports, "prepareRecordForSQL", { enumerable: true, get: function () { return sql_1.prepareRecordForSQL; } });
|
|
15
|
-
Object.defineProperty(exports, "prepareDataForSQL", { enumerable: true, get: function () { return sql_1.prepareDataForSQL; } });
|
|
16
|
-
Object.defineProperty(exports, "getRowsAffected", { enumerable: true, get: function () { return sql_1.getRowsAffected; } });
|
|
17
|
-
Object.defineProperty(exports, "sql", { enumerable: true, get: function () { return sql_1.sql; } });
|
|
18
|
-
var get_value_for_sql_1 = require("./get-value-for-sql");
|
|
19
|
-
Object.defineProperty(exports, "binToHexString", { enumerable: true, get: function () { return get_value_for_sql_1.binToHexString; } });
|
|
20
|
-
Object.defineProperty(exports, "getValueForSQL", { enumerable: true, get: function () { return get_value_for_sql_1.getValueForSQL; } });
|
|
21
|
-
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,6BAA2B;AAE3B,6BAae;AAZb,uGAAA,gBAAgB,OAAA;AAChB,0GAAA,mBAAmB,OAAA;AACnB,sGAAA,eAAe,OAAA;AACf,sGAAA,eAAe,OAAA;AACf,gGAAA,SAAS,OAAA;AACT,4GAAA,qBAAqB,OAAA;AACrB,0GAAA,mBAAmB,OAAA;AACnB,6GAAA,sBAAsB,OAAA;AACtB,0GAAA,mBAAmB,OAAA;AACnB,wGAAA,iBAAiB,OAAA;AACjB,sGAAA,eAAe,OAAA;AACf,0FAAA,GAAG,OAAA;AAGL,yDAG6B;AAF3B,mHAAA,cAAc,OAAA;AACd,mHAAA,cAAc,OAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":""}
|
package/dist/cjs/sql.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/sql.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACI,MAAM,CAAC,GAAG,CAAC,GAAW,EAAE,QAAkB,EAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;AAA/E,QAAA,CAAC,KAA8E;AAE5F;;;GAGG;AACI,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAE,mBAA4B,KAAK,EAAU,EAAE;IACjF,IAAI,GAAG,IAAI,IAAI,EAAE;QACf,GAAG,GAAG,EAAE,CAAC;KACV;IACD,QAAQ,OAAO,GAAG,EAAE;QAClB,KAAK,QAAQ;YACX,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAClB,MAAM;QACR,KAAK,QAAQ;YACX,MAAM;QACR,KAAK,SAAS;YACZ,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACtB,MAAM;QACR;YACE,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;KAC3B;IACD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,IAAI,gBAAgB,EAAE;QACpB,OAAO,GAAG,CAAC;KACZ;IACD,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC;AArBW,QAAA,WAAW,eAqBtB"}
|
package/dist/esm/db.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/db.ts"],"names":[],"mappings":"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"}
|