af-db-ts 2.0.19 → 2.0.73
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/dist/cjs/__tests__/db/ms/@gen-types/test-table_schema.js +3 -0
- package/dist/cjs/__tests__/db/ms/@gen-types/test-table_schema.js.map +1 -0
- package/dist/cjs/__tests__/db/ms/ddl/column-schema-for-test-table-schema-ms.json +216 -0
- package/dist/cjs/__tests__/db/ms/ms-get-sql.spec.js +190 -0
- package/dist/cjs/__tests__/db/ms/ms-get-sql.spec.js.map +1 -0
- package/dist/cjs/__tests__/db/ms/ms-prepare-sql-value.spec.js +584 -0
- package/dist/cjs/__tests__/db/ms/ms-prepare-sql-value.spec.js.map +1 -0
- package/dist/cjs/__tests__/db/ms/ms-table-schema.spec.js +107 -0
- package/dist/cjs/__tests__/db/ms/ms-table-schema.spec.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-hard_case.js +3 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-hard_case.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_serial.js +3 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_serial.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_uniq.js +3 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_uniq.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-serial_and_uniq.js +3 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-serial_and_uniq.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-table_schema.js +3 -0
- package/dist/cjs/__tests__/db/pg/@gen-types/test-table_schema.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/ddl/column-schema-for-test-table-schema-pg.json +170 -0
- package/dist/cjs/__tests__/db/pg/gen-table-interfaces-4-test-pg.js +36 -0
- package/dist/cjs/__tests__/db/pg/gen-table-interfaces-4-test-pg.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/pg-get-sql.spec.js +261 -0
- package/dist/cjs/__tests__/db/pg/pg-get-sql.spec.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/pg-insert.spec.js +294 -0
- package/dist/cjs/__tests__/db/pg/pg-insert.spec.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/pg-prepare-sql-value.spec.js +575 -0
- package/dist/cjs/__tests__/db/pg/pg-prepare-sql-value.spec.js.map +1 -0
- package/dist/cjs/__tests__/db/pg/pg-table-schema.spec.js +117 -0
- package/dist/cjs/__tests__/db/pg/pg-table-schema.spec.js.map +1 -0
- package/dist/cjs/src/@types/i-data-types-ms.js +3 -0
- package/dist/cjs/src/@types/i-data-types-ms.js.map +1 -0
- package/dist/cjs/src/@types/i-data-types-pg.js +7 -0
- package/dist/cjs/src/@types/i-data-types-pg.js.map +1 -0
- package/dist/cjs/src/@types/i-pg.js +0 -21
- package/dist/cjs/src/@types/i-pg.js.map +1 -1
- package/dist/cjs/src/common.js +6 -5
- package/dist/cjs/src/common.js.map +1 -1
- package/dist/cjs/src/index.js +75 -54
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/ms/gen-table-interfaces-ms.js +64 -0
- package/dist/cjs/src/ms/gen-table-interfaces-ms.js.map +1 -0
- package/dist/cjs/src/ms/get-sql/insert.js +37 -0
- package/dist/cjs/src/ms/get-sql/insert.js.map +1 -0
- package/dist/cjs/src/ms/get-sql/merge.js +93 -0
- package/dist/cjs/src/ms/get-sql/merge.js.map +1 -0
- package/dist/cjs/src/ms/get-sql/update.js +32 -0
- package/dist/cjs/src/ms/get-sql/update.js.map +1 -0
- package/dist/cjs/src/{mssql → ms}/pool-ms.js +6 -23
- package/dist/cjs/src/ms/pool-ms.js.map +1 -0
- package/dist/cjs/src/ms/prepare-value.js +178 -0
- package/dist/cjs/src/ms/prepare-value.js.map +1 -0
- package/dist/cjs/src/{mssql → ms}/query-ms.js +1 -1
- package/dist/cjs/src/ms/query-ms.js.map +1 -0
- package/dist/cjs/src/ms/table-schema-ms.js +241 -0
- package/dist/cjs/src/ms/table-schema-ms.js.map +1 -0
- package/dist/cjs/src/ms/utils-ms.js +92 -0
- package/dist/cjs/src/ms/utils-ms.js.map +1 -0
- package/dist/cjs/src/ms/wrap-transaction-ms.js +32 -0
- package/dist/cjs/src/ms/wrap-transaction-ms.js.map +1 -0
- package/dist/cjs/src/pg/gen-table-interfaces-pg.js +83 -0
- package/dist/cjs/src/pg/gen-table-interfaces-pg.js.map +1 -0
- package/dist/cjs/src/pg/get-sql/insert.js +38 -0
- package/dist/cjs/src/pg/get-sql/insert.js.map +1 -0
- package/dist/cjs/src/pg/get-sql/merge.js +60 -0
- package/dist/cjs/src/pg/get-sql/merge.js.map +1 -0
- package/dist/cjs/src/pg/get-sql/update.js +32 -0
- package/dist/cjs/src/pg/get-sql/update.js.map +1 -0
- package/dist/cjs/src/pg/{insert.js → insert-pg.js} +10 -10
- package/dist/cjs/src/pg/insert-pg.js.map +1 -0
- package/dist/cjs/src/pg/is-table-or-view-exists.js +1 -2
- package/dist/cjs/src/pg/is-table-or-view-exists.js.map +1 -1
- package/dist/cjs/src/pg/{pg-pool.js → pool-pg.js} +6 -7
- package/dist/cjs/src/pg/pool-pg.js.map +1 -0
- package/dist/cjs/src/pg/prepare-value.js +116 -69
- package/dist/cjs/src/pg/prepare-value.js.map +1 -1
- package/dist/cjs/src/pg/query-pg.js +2 -2
- package/dist/cjs/src/pg/query-pg.js.map +1 -1
- package/dist/cjs/src/pg/table-schema-pg.js +183 -0
- package/dist/cjs/src/pg/table-schema-pg.js.map +1 -0
- package/dist/cjs/src/pg/utils-pg.js +99 -0
- package/dist/cjs/src/pg/utils-pg.js.map +1 -0
- package/dist/cjs/src/utils/utils-array.js +152 -0
- package/dist/cjs/src/utils/utils-array.js.map +1 -0
- package/dist/cjs/src/utils/utils-dt.js +121 -0
- package/dist/cjs/src/utils/utils-dt.js.map +1 -0
- package/dist/cjs/src/utils/utils-num.js +127 -0
- package/dist/cjs/src/utils/utils-num.js.map +1 -0
- package/dist/cjs/src/utils/utils.js +66 -0
- package/dist/cjs/src/utils/utils.js.map +1 -0
- package/dist/esm/src/@types/i-data-types-ms.js +2 -0
- package/dist/esm/src/@types/i-data-types-ms.js.map +1 -0
- package/dist/esm/src/@types/i-data-types-pg.js +6 -0
- package/dist/esm/src/@types/i-data-types-pg.js.map +1 -0
- package/dist/esm/src/@types/i-pg.js +1 -20
- package/dist/esm/src/@types/i-pg.js.map +1 -1
- package/dist/esm/src/common.js +3 -2
- package/dist/esm/src/common.js.map +1 -1
- package/dist/esm/src/index.js +24 -15
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/ms/gen-table-interfaces-ms.js +36 -0
- package/dist/esm/src/ms/gen-table-interfaces-ms.js.map +1 -0
- package/dist/esm/src/ms/get-sql/insert.js +33 -0
- package/dist/esm/src/ms/get-sql/insert.js.map +1 -0
- package/dist/esm/src/ms/get-sql/merge.js +89 -0
- package/dist/esm/src/ms/get-sql/merge.js.map +1 -0
- package/dist/esm/src/ms/get-sql/update.js +28 -0
- package/dist/esm/src/ms/get-sql/update.js.map +1 -0
- package/dist/esm/src/{mssql → ms}/pool-ms.js +5 -20
- package/dist/esm/src/ms/pool-ms.js.map +1 -0
- package/dist/esm/src/ms/prepare-value.js +149 -0
- package/dist/esm/src/ms/prepare-value.js.map +1 -0
- package/dist/esm/src/{mssql → ms}/query-ms.js +1 -1
- package/dist/esm/src/ms/query-ms.js.map +1 -0
- package/dist/esm/src/ms/table-schema-ms.js +213 -0
- package/dist/esm/src/ms/table-schema-ms.js.map +1 -0
- package/dist/esm/src/ms/utils-ms.js +65 -0
- package/dist/esm/src/ms/utils-ms.js.map +1 -0
- package/dist/esm/src/ms/wrap-transaction-ms.js +28 -0
- package/dist/esm/src/ms/wrap-transaction-ms.js.map +1 -0
- package/dist/esm/src/pg/gen-table-interfaces-pg.js +55 -0
- package/dist/esm/src/pg/gen-table-interfaces-pg.js.map +1 -0
- package/dist/esm/src/pg/get-sql/insert.js +34 -0
- package/dist/esm/src/pg/get-sql/insert.js.map +1 -0
- package/dist/esm/src/pg/get-sql/merge.js +56 -0
- package/dist/esm/src/pg/get-sql/merge.js.map +1 -0
- package/dist/esm/src/pg/get-sql/update.js +28 -0
- package/dist/esm/src/pg/get-sql/update.js.map +1 -0
- package/dist/esm/src/pg/{insert.js → insert-pg.js} +10 -10
- package/dist/esm/src/pg/insert-pg.js.map +1 -0
- package/dist/esm/src/pg/is-table-or-view-exists.js +1 -2
- package/dist/esm/src/pg/is-table-or-view-exists.js.map +1 -1
- package/dist/esm/src/pg/{pg-pool.js → pool-pg.js} +6 -7
- package/dist/esm/src/pg/pool-pg.js.map +1 -0
- package/dist/esm/src/pg/prepare-value.js +113 -67
- package/dist/esm/src/pg/prepare-value.js.map +1 -1
- package/dist/esm/src/pg/query-pg.js +1 -1
- package/dist/esm/src/pg/query-pg.js.map +1 -1
- package/dist/esm/src/pg/table-schema-pg.js +178 -0
- package/dist/esm/src/pg/table-schema-pg.js.map +1 -0
- package/dist/esm/src/pg/utils-pg.js +93 -0
- package/dist/esm/src/pg/utils-pg.js.map +1 -0
- package/dist/esm/src/utils/utils-array.js +125 -0
- package/dist/esm/src/utils/utils-array.js.map +1 -0
- package/dist/esm/src/utils/utils-dt.js +114 -0
- package/dist/esm/src/utils/utils-dt.js.map +1 -0
- package/dist/esm/src/utils/utils-num.js +117 -0
- package/dist/esm/src/utils/utils-num.js.map +1 -0
- package/dist/esm/src/utils/utils.js +58 -0
- package/dist/esm/src/utils/utils.js.map +1 -0
- package/dist/types/src/@types/i-common.d.ts +35 -3
- package/dist/types/src/@types/i-common.d.ts.map +1 -1
- package/dist/types/src/@types/i-data-types-ms.d.ts +3 -0
- package/dist/types/src/@types/i-data-types-ms.d.ts.map +1 -0
- package/dist/types/src/@types/i-data-types-pg.d.ts +35 -0
- package/dist/types/src/@types/i-data-types-pg.d.ts.map +1 -0
- package/dist/types/src/@types/i-ms.d.ts +26 -126
- package/dist/types/src/@types/i-ms.d.ts.map +1 -1
- package/dist/types/src/@types/i-pg.d.ts +11 -35
- package/dist/types/src/@types/i-pg.d.ts.map +1 -1
- package/dist/types/src/common.d.ts +1 -0
- package/dist/types/src/common.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +28 -16
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/ms/gen-table-interfaces-ms.d.ts +3 -0
- package/dist/types/src/ms/gen-table-interfaces-ms.d.ts.map +1 -0
- package/dist/types/src/ms/get-sql/insert.d.ts +9 -0
- package/dist/types/src/ms/get-sql/insert.d.ts.map +1 -0
- package/dist/types/src/ms/get-sql/merge.d.ts +14 -0
- package/dist/types/src/ms/get-sql/merge.d.ts.map +1 -0
- package/dist/types/src/ms/get-sql/update.d.ts +9 -0
- package/dist/types/src/ms/get-sql/update.d.ts.map +1 -0
- package/dist/types/src/{mssql → ms}/pool-ms.d.ts +0 -8
- package/dist/types/src/ms/pool-ms.d.ts.map +1 -0
- package/dist/types/src/ms/prepare-value.d.ts +12 -0
- package/dist/types/src/ms/prepare-value.d.ts.map +1 -0
- package/dist/types/src/ms/query-ms.d.ts +3 -0
- package/dist/types/src/ms/query-ms.d.ts.map +1 -0
- package/dist/types/src/ms/table-schema-ms.d.ts +9 -0
- package/dist/types/src/ms/table-schema-ms.d.ts.map +1 -0
- package/dist/types/src/ms/utils-ms.d.ts +3 -0
- package/dist/types/src/ms/utils-ms.d.ts.map +1 -0
- package/dist/types/src/ms/wrap-transaction-ms.d.ts +5 -0
- package/dist/types/src/ms/wrap-transaction-ms.d.ts.map +1 -0
- package/dist/types/src/pg/gen-table-interfaces-pg.d.ts +3 -0
- package/dist/types/src/pg/gen-table-interfaces-pg.d.ts.map +1 -0
- package/dist/types/src/pg/get-sql/insert.d.ts +9 -0
- package/dist/types/src/pg/get-sql/insert.d.ts.map +1 -0
- package/dist/types/src/pg/get-sql/merge.d.ts +10 -0
- package/dist/types/src/pg/get-sql/merge.d.ts.map +1 -0
- package/dist/types/src/pg/get-sql/update.d.ts +9 -0
- package/dist/types/src/pg/get-sql/update.d.ts.map +1 -0
- package/dist/types/src/pg/{insert.d.ts → insert-pg.d.ts} +3 -3
- package/dist/types/src/pg/insert-pg.d.ts.map +1 -0
- package/dist/types/src/pg/{pg-pool.d.ts → pool-pg.d.ts} +1 -1
- package/dist/types/src/pg/{pg-pool.d.ts.map → pool-pg.d.ts.map} +1 -1
- package/dist/types/src/pg/prepare-value.d.ts +3 -1
- package/dist/types/src/pg/prepare-value.d.ts.map +1 -1
- package/dist/types/src/pg/query-pg.d.ts +3 -2
- package/dist/types/src/pg/query-pg.d.ts.map +1 -1
- package/dist/types/src/pg/table-schema-pg.d.ts +12 -0
- package/dist/types/src/pg/table-schema-pg.d.ts.map +1 -0
- package/dist/types/src/pg/utils-pg.d.ts +5 -0
- package/dist/types/src/pg/utils-pg.d.ts.map +1 -0
- package/dist/types/src/utils/utils-array.d.ts +5 -0
- package/dist/types/src/utils/utils-array.d.ts.map +1 -0
- package/dist/types/src/utils/utils-dt.d.ts +15 -0
- package/dist/types/src/utils/utils-dt.d.ts.map +1 -0
- package/dist/types/src/utils/utils-num.d.ts +9 -0
- package/dist/types/src/utils/utils-num.d.ts.map +1 -0
- package/dist/types/src/utils/utils.d.ts +18 -0
- package/dist/types/src/utils/utils.d.ts.map +1 -0
- package/package.json +13 -13
- package/src/@types/i-common.ts +42 -4
- package/src/@types/i-data-types-ms.ts +81 -0
- package/src/@types/i-data-types-pg.ts +120 -0
- package/src/@types/i-ms.ts +29 -153
- package/src/@types/i-pg.ts +11 -36
- package/src/common.ts +4 -2
- package/src/index.ts +101 -59
- package/src/ms/gen-table-interfaces-ms.ts +52 -0
- package/src/ms/get-sql/insert.ts +45 -0
- package/src/ms/get-sql/merge.ts +118 -0
- package/src/ms/get-sql/update.ts +46 -0
- package/src/{mssql → ms}/pool-ms.ts +0 -16
- package/src/ms/prepare-value.ts +175 -0
- package/src/{mssql → ms}/query-ms.ts +2 -2
- package/src/ms/table-schema-ms.ts +231 -0
- package/src/ms/utils-ms.ts +72 -0
- package/src/ms/wrap-transaction-ms.ts +27 -0
- package/src/pg/gen-table-interfaces-pg.ts +74 -0
- package/src/pg/get-sql/insert.ts +46 -0
- package/src/pg/get-sql/merge.ts +70 -0
- package/src/pg/get-sql/update.ts +46 -0
- package/src/pg/{insert.ts → insert-pg.ts} +9 -9
- package/src/pg/prepare-value.ts +129 -67
- package/src/pg/query-pg.ts +4 -3
- package/src/pg/table-schema-pg.ts +196 -0
- package/src/pg/utils-pg.ts +97 -0
- package/src/utils/utils-array.ts +133 -0
- package/src/utils/utils-dt.ts +123 -0
- package/src/utils/utils-num.ts +131 -0
- package/src/utils/utils.ts +64 -0
- package/dist/cjs/__tests__/02_getValueForSqlMs.spec.js +0 -50
- package/dist/cjs/__tests__/02_getValueForSqlMs.spec.js.map +0 -1
- package/dist/cjs/src/mssql/get-value-for-sql.js +0 -277
- package/dist/cjs/src/mssql/get-value-for-sql.js.map +0 -1
- package/dist/cjs/src/mssql/pool-ms.js.map +0 -1
- package/dist/cjs/src/mssql/query-ms.js.map +0 -1
- package/dist/cjs/src/mssql/sql.js +0 -427
- package/dist/cjs/src/mssql/sql.js.map +0 -1
- package/dist/cjs/src/mssql/utils.js +0 -36
- package/dist/cjs/src/mssql/utils.js.map +0 -1
- package/dist/cjs/src/pg/get-merge-sql.js +0 -52
- package/dist/cjs/src/pg/get-merge-sql.js.map +0 -1
- package/dist/cjs/src/pg/get-update-sql.js +0 -30
- package/dist/cjs/src/pg/get-update-sql.js.map +0 -1
- package/dist/cjs/src/pg/insert.js.map +0 -1
- package/dist/cjs/src/pg/pg-pool.js.map +0 -1
- package/dist/cjs/src/pg/table-schema.js +0 -179
- package/dist/cjs/src/pg/table-schema.js.map +0 -1
- package/dist/cjs/src/utils.js +0 -17
- package/dist/cjs/src/utils.js.map +0 -1
- package/dist/esm/src/mssql/get-value-for-sql.js +0 -272
- package/dist/esm/src/mssql/get-value-for-sql.js.map +0 -1
- package/dist/esm/src/mssql/pool-ms.js.map +0 -1
- package/dist/esm/src/mssql/query-ms.js.map +0 -1
- package/dist/esm/src/mssql/sql.js +0 -390
- package/dist/esm/src/mssql/sql.js.map +0 -1
- package/dist/esm/src/mssql/utils.js +0 -31
- package/dist/esm/src/mssql/utils.js.map +0 -1
- package/dist/esm/src/pg/get-merge-sql.js +0 -48
- package/dist/esm/src/pg/get-merge-sql.js.map +0 -1
- package/dist/esm/src/pg/get-update-sql.js +0 -26
- package/dist/esm/src/pg/get-update-sql.js.map +0 -1
- package/dist/esm/src/pg/insert.js.map +0 -1
- package/dist/esm/src/pg/pg-pool.js.map +0 -1
- package/dist/esm/src/pg/table-schema.js +0 -174
- package/dist/esm/src/pg/table-schema.js.map +0 -1
- package/dist/esm/src/utils.js +0 -14
- package/dist/esm/src/utils.js.map +0 -1
- package/dist/types/src/mssql/get-value-for-sql.d.ts +0 -11
- package/dist/types/src/mssql/get-value-for-sql.d.ts.map +0 -1
- package/dist/types/src/mssql/pool-ms.d.ts.map +0 -1
- package/dist/types/src/mssql/query-ms.d.ts +0 -3
- package/dist/types/src/mssql/query-ms.d.ts.map +0 -1
- package/dist/types/src/mssql/sql.d.ts +0 -57
- package/dist/types/src/mssql/sql.d.ts.map +0 -1
- package/dist/types/src/mssql/utils.d.ts +0 -10
- package/dist/types/src/mssql/utils.d.ts.map +0 -1
- package/dist/types/src/pg/get-merge-sql.d.ts +0 -9
- package/dist/types/src/pg/get-merge-sql.d.ts.map +0 -1
- package/dist/types/src/pg/get-update-sql.d.ts +0 -3
- package/dist/types/src/pg/get-update-sql.d.ts.map +0 -1
- package/dist/types/src/pg/insert.d.ts.map +0 -1
- package/dist/types/src/pg/table-schema.d.ts +0 -12
- package/dist/types/src/pg/table-schema.d.ts.map +0 -1
- package/dist/types/src/utils.d.ts +0 -9
- package/dist/types/src/utils.d.ts.map +0 -1
- package/src/mssql/get-value-for-sql.ts +0 -325
- package/src/mssql/sql.ts +0 -430
- package/src/mssql/utils.ts +0 -31
- package/src/pg/get-merge-sql.ts +0 -62
- package/src/pg/get-update-sql.ts +0 -32
- package/src/pg/table-schema.ts +0 -189
- package/src/utils.ts +0 -14
- /package/src/pg/{pg-pool.ts → pool-pg.ts} +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ITableSchemaPg, TColumnsSchemaPg } from '../@types/i-pg';
|
|
2
|
+
import { TDBRecord } from '../@types/i-common';
|
|
3
|
+
export declare const getTableSchemaPg: (connectionId: string, commonSchemaAndTable: string) => Promise<ITableSchemaPg>;
|
|
4
|
+
export declare const getFieldsAndValuesPg: <U extends TDBRecord = TDBRecord>(record: U, columnsSchema: TColumnsSchemaPg) => {
|
|
5
|
+
fields: string[];
|
|
6
|
+
fieldsList: string;
|
|
7
|
+
values: any[];
|
|
8
|
+
positionsList: string;
|
|
9
|
+
setFields: string;
|
|
10
|
+
upsertFields: string;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=table-schema-pg.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-schema-pg.d.ts","sourceRoot":"","sources":["../../../../src/pg/table-schema-pg.ts"],"names":[],"mappings":"AAIA,OAAO,EAAe,cAAc,EAAE,gBAAgB,EAAwB,MAAM,gBAAgB,CAAC;AAErG,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AA8H/C,eAAO,MAAM,gBAAgB,iBAAwB,MAAM,wBAAwB,MAAM,KAAG,QAAQ,cAAc,CA+BjH,CAAC;AAEF,eAAO,MAAM,oBAAoB,8DAAgE,gBAAgB;YAErG,MAAM,EAAE;gBACJ,MAAM;YACV,GAAG,EAAE;mBACE,MAAM;eACV,MAAM;kBACH,MAAM;CAuBvB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { TDataTypePg, TArrayTypesPg } from '../@types/i-data-types-pg';
|
|
2
|
+
export declare const getJsTypeByTypePg: (dataType?: TDataTypePg, arrayType?: TDataTypePg) => string;
|
|
3
|
+
export declare const getTypeByUdtNamePg: (udtName: TArrayTypesPg) => TDataTypePg;
|
|
4
|
+
export declare const getNormalizedTypePg: (pgDataType: TDataTypePg) => TDataTypePg;
|
|
5
|
+
//# sourceMappingURL=utils-pg.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-pg.d.ts","sourceRoot":"","sources":["../../../../src/pg/utils-pg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAEvE,eAAO,MAAM,iBAAiB,cAAe,WAAW,cAAc,WAAW,KAAG,MAgCnF,CAAC;AAoCF,eAAO,MAAM,kBAAkB,YAAa,aAAa,KAAG,WAG3D,CAAC;AAuBF,eAAO,MAAM,mBAAmB,eAAgB,WAAW,KAAG,WAA6D,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NULL } from '../common';
|
|
2
|
+
import { TDataTypeMs } from '../@types/i-data-types-ms';
|
|
3
|
+
import { TDataTypePg } from '../@types/i-data-types-pg';
|
|
4
|
+
export declare const arrayToJsonList: (value: any, arrayType?: TDataTypeMs | TDataTypePg) => string | typeof NULL;
|
|
5
|
+
//# sourceMappingURL=utils-array.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-array.d.ts","sourceRoot":"","sources":["../../../../src/utils/utils-array.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAmBxD,eAAO,MAAM,eAAe,UAAW,GAAG,cAAc,WAAW,GAAG,WAAW,KAAG,MAAM,GAAG,WA4G5F,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DateTime } from 'luxon';
|
|
2
|
+
import { IFieldDefMs } from '../@types/i-ms';
|
|
3
|
+
import { IFieldDefPg } from '../@types/i-pg';
|
|
4
|
+
import { IFieldDef } from '../@types/i-common';
|
|
5
|
+
import { NULL } from '../common';
|
|
6
|
+
export declare const getTypeOfDateInput: (v: any) => 'string' | 'number' | 'date' | 'luxon' | 'moment' | 'any' | 'null';
|
|
7
|
+
export declare const getLuxonDT: (value: any, fieldDef: IFieldDefMs | IFieldDefPg) => DateTime | null;
|
|
8
|
+
export declare const dateTimeValue: (value: any, fieldDef: IFieldDef, fn: Function) => string | typeof NULL;
|
|
9
|
+
export declare const getDatetimeWithPrecisionAndOffset: (arg: {
|
|
10
|
+
value: any;
|
|
11
|
+
fieldDef: IFieldDef;
|
|
12
|
+
defaultDtPrecision?: number;
|
|
13
|
+
stripTrailingZeros?: boolean;
|
|
14
|
+
}) => string | typeof NULL;
|
|
15
|
+
//# sourceMappingURL=utils-dt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-dt.d.ts","sourceRoot":"","sources":["../../../../src/utils/utils-dt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,eAAO,MAAM,kBAAkB,MAAO,GAAG,KAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAoBvG,CAAC;AAEF,eAAO,MAAM,UAAU,UAAW,GAAG,YAAY,WAAW,GAAG,WAAW,KAAG,QAAQ,GAAG,IA2CvF,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW,GAAG,YAAY,SAAS,MAAM,QAAQ,KAAG,MAAM,GAAG,WAOtF,CAAC;AAEF,eAAO,MAAM,iCAAiC,QAAS;IACrD,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,EAAE,SAAS,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,KAAG,MAAM,GAAG,WAkCZ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NULL } from '../common';
|
|
2
|
+
export declare const parseFloatNumber: (value: any) => number | null;
|
|
3
|
+
export declare const prepareFloatNumber: (value: any) => string | typeof NULL;
|
|
4
|
+
export declare const parseIntNumber: (value: any, min: number, max: number) => number | typeof NULL;
|
|
5
|
+
export declare const parseIntNumberS: (value: any, type: 'tinyint' | 'smallint' | '_int2' | 'int' | 'integer' | '_int4' | 'bigint' | '_int8') => number | typeof NULL;
|
|
6
|
+
export declare const prepareIntNumber: (value: any, min: number, max: number) => string | typeof NULL;
|
|
7
|
+
export declare const prepareBigIntNumber: (value: any) => string | typeof NULL;
|
|
8
|
+
export declare const prepareNumeric: (value: any, precision?: number, scale?: number) => string | typeof NULL;
|
|
9
|
+
//# sourceMappingURL=utils-num.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-num.d.ts","sourceRoot":"","sources":["../../../../src/utils/utils-num.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,eAAO,MAAM,gBAAgB,UAAW,GAAG,KAAG,MAAM,GAAG,IAuBtD,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAAW,GAAG,KAAG,MAAM,GAAG,WAA2C,CAAC;AAErG,eAAO,MAAM,cAAc,UAAW,GAAG,OAAO,MAAM,OAAO,MAAM,KAAG,MAAM,GAAG,WAgB9E,CAAC;AAEF,eAAO,MAAM,eAAe,UACnB,GAAG,QACJ,SAAS,GACb,UAAU,GAAG,OAAO,GACpB,KAAK,GAAG,SAAS,GAAG,OAAO,GAC3B,QAAQ,GAAG,OAAO,KACnB,MAAM,GAAG,WAiBX,CAAC;AAEF,eAAO,MAAM,gBAAgB,UACpB,GAAG,OACL,MAAM,OACN,MAAM,KACV,MAAM,GAAG,WAAmD,CAAC;AAEhE,eAAO,MAAM,mBAAmB,UAAW,GAAG,KAAG,MAAM,GAAG,WAsBzD,CAAC;AAEF,eAAO,MAAM,cAAc,UAAW,GAAG,cAAc,MAAM,UAAU,MAAM,KAAG,MAAM,GAAG,WA2BxF,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NULL } from '../common';
|
|
2
|
+
export declare const schemaTable: {
|
|
3
|
+
to: {
|
|
4
|
+
common: (s: string) => string;
|
|
5
|
+
spec: (s: string, dbType: 'mssql' | 'ms' | 'pg') => string;
|
|
6
|
+
pg: (s: string) => string;
|
|
7
|
+
ms: (s: string) => string;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export declare const removePairBrackets: (s: string) => string;
|
|
11
|
+
/**
|
|
12
|
+
* Оборачивает строку в одинарные кавычки, если второй аргумент не true
|
|
13
|
+
*/
|
|
14
|
+
export declare const q: (val: string, noQuotes?: boolean) => string;
|
|
15
|
+
export declare const prepareJSON: (value: any) => string | typeof NULL;
|
|
16
|
+
export declare const binToHexString: (value: any) => string | null;
|
|
17
|
+
export declare const prepareUUID: (v: any, toLower?: boolean, noQuotes?: boolean) => string | typeof NULL;
|
|
18
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/utils/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAQjC,eAAO,MAAM,WAAW;;oBANQ,MAAM,KAAG,MAAM;kBACjB,MAAM,UAAU,OAAO,GAAG,IAAI,GAAG,IAAI,KAAG,MAAM;gBAShE,MAAM,KAAG,MAAM;gBACf,MAAM,KAAG,MAAM;;CAE1B,CAAC;AAEF,eAAO,MAAM,kBAAkB,MAAO,MAAM,KAAG,MAgB9C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,CAAC,QAAS,MAAM,aAAa,OAAO,KAAG,MAAuC,CAAC;AAE5F,eAAO,MAAM,WAAW,UAAW,GAAG,KAAG,MAAM,GAAG,WAUjD,CAAC;AAEF,eAAO,MAAM,cAAc,UAAW,GAAG,KAAG,MAAM,GAAG,IAAmE,CAAC;AAEzH,eAAO,MAAM,WAAW,MAAO,GAAG,YAAW,OAAO,aAAoB,OAAO,KAAW,MAAM,GAAG,WAOlG,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "af-db-ts",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.73",
|
|
4
4
|
"description": "A highly specialized function library",
|
|
5
5
|
"main": "./dist/cjs/src/index.js",
|
|
6
6
|
"module": "./dist/esm/src/index.js",
|
|
@@ -18,26 +18,26 @@
|
|
|
18
18
|
"cb": "npm run clean && npm run build"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@types/pg": "^8.10.
|
|
21
|
+
"@types/pg": "^8.10.9",
|
|
22
22
|
"af-color": "^0.0.8",
|
|
23
23
|
"af-echo-ts": "^1.0.12",
|
|
24
|
-
"af-tools-ts": "^1.0.
|
|
24
|
+
"af-tools-ts": "^1.0.74",
|
|
25
25
|
"config": "^3.3.9",
|
|
26
|
-
"luxon": "^3.4.
|
|
26
|
+
"luxon": "^3.4.4",
|
|
27
27
|
"memory-cache": "^0.2.0",
|
|
28
28
|
"mssql": "^10.0.1",
|
|
29
29
|
"pg": "^8.11.3"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@jest/test-sequencer": "^29.7.0",
|
|
33
|
-
"@types/config": "^3.3.
|
|
34
|
-
"@types/jest": "^29.5.
|
|
35
|
-
"@types/lodash": "^4.14.
|
|
36
|
-
"@types/luxon": "^3.3.
|
|
37
|
-
"@types/memory-cache": "^0.2.
|
|
38
|
-
"@types/mssql": "^9.1.
|
|
39
|
-
"@types/node": "^20.
|
|
40
|
-
"@types/supertest": "^2.0.
|
|
33
|
+
"@types/config": "^3.3.3",
|
|
34
|
+
"@types/jest": "^29.5.11",
|
|
35
|
+
"@types/lodash": "^4.14.202",
|
|
36
|
+
"@types/luxon": "^3.3.7",
|
|
37
|
+
"@types/memory-cache": "^0.2.5",
|
|
38
|
+
"@types/mssql": "^9.1.4",
|
|
39
|
+
"@types/node": "^20.10.4",
|
|
40
|
+
"@types/supertest": "^2.0.16",
|
|
41
41
|
"chai": "^4.3.10",
|
|
42
42
|
"eslint-config-af-22": "^1.0.13",
|
|
43
43
|
"jest": "^29.7.0",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"supertest": "^6.3.3",
|
|
46
46
|
"ts-jest": "^29.1.1",
|
|
47
47
|
"ts-node": "^10.9.1",
|
|
48
|
-
"typescript": "^5.
|
|
48
|
+
"typescript": "^5.3.3"
|
|
49
49
|
},
|
|
50
50
|
"np": {
|
|
51
51
|
"yarn": false,
|
package/src/@types/i-common.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { DateTimeOptions } from 'luxon';
|
|
2
|
-
|
|
3
1
|
export type IDialect = 'mssql' | 'pg';
|
|
4
2
|
|
|
5
3
|
/**
|
|
@@ -24,7 +22,7 @@ export interface TDBRecord {
|
|
|
24
22
|
*
|
|
25
23
|
* _isPreparedForSQL - Признак того, что значения полей подготовлены для использования в строке SQL
|
|
26
24
|
*/
|
|
27
|
-
export type TRecordSet = TDBRecord[] & { _isPreparedForSQL?: boolean }
|
|
25
|
+
export type TRecordSet<U extends TDBRecord = TDBRecord> = U[] & { _isPreparedForSQL?: boolean }
|
|
28
26
|
|
|
29
27
|
/**
|
|
30
28
|
* Пакет записей БД.
|
|
@@ -34,6 +32,46 @@ export interface TRecordSetAssoc {
|
|
|
34
32
|
[recordKey: TRecordKey]: TDBRecord
|
|
35
33
|
}
|
|
36
34
|
|
|
37
|
-
export interface IDateTimeOptionsEx
|
|
35
|
+
export interface IDateTimeOptionsEx {
|
|
38
36
|
correctionMillis?: number,
|
|
37
|
+
/**
|
|
38
|
+
* Использует эту зону, если в самой входной строке не указано смещение.
|
|
39
|
+
* Также преобразует время в эту зону.
|
|
40
|
+
* @default local
|
|
41
|
+
*/
|
|
42
|
+
fromZone?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Результирующая строка должна быть с указанием в этой таймзоне
|
|
45
|
+
* @default undefined
|
|
46
|
+
*/
|
|
47
|
+
setZone?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Результирующая строка будет содержать смещение, например «Z» или «-04:00».
|
|
50
|
+
* @default true
|
|
51
|
+
*/
|
|
52
|
+
includeOffset?: boolean;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export interface IFieldDef {
|
|
56
|
+
name?: string,
|
|
57
|
+
isNullable?: boolean,
|
|
58
|
+
length?: number,
|
|
59
|
+
dataType?: any, // type
|
|
60
|
+
arrayType?: any,
|
|
61
|
+
|
|
62
|
+
precision?: number,
|
|
63
|
+
scale?: number,
|
|
64
|
+
radix?: number,
|
|
65
|
+
|
|
66
|
+
dtPrecision?: number,
|
|
67
|
+
|
|
68
|
+
columnDefault?: string | number | boolean,
|
|
69
|
+
hasDefault?: boolean,
|
|
70
|
+
|
|
71
|
+
readOnly?: boolean,
|
|
72
|
+
|
|
73
|
+
/* Дополнительные свойства */
|
|
74
|
+
inputDateFormat?: string,
|
|
75
|
+
dateTimeOptions?: IDateTimeOptionsEx,
|
|
76
|
+
noQuotes?: boolean,
|
|
39
77
|
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import * as sql from 'mssql';
|
|
2
|
+
|
|
3
|
+
export type TDataTypeMs =
|
|
4
|
+
typeof sql.VarChar |
|
|
5
|
+
typeof sql.NVarChar |
|
|
6
|
+
typeof sql.Text |
|
|
7
|
+
typeof sql.Int |
|
|
8
|
+
typeof sql.BigInt |
|
|
9
|
+
typeof sql.TinyInt |
|
|
10
|
+
typeof sql.SmallInt |
|
|
11
|
+
typeof sql.Bit |
|
|
12
|
+
typeof sql.Float |
|
|
13
|
+
typeof sql.Numeric |
|
|
14
|
+
typeof sql.Decimal |
|
|
15
|
+
typeof sql.Real |
|
|
16
|
+
typeof sql.Date |
|
|
17
|
+
typeof sql.DateTime |
|
|
18
|
+
typeof sql.DateTime2 |
|
|
19
|
+
typeof sql.DateTimeOffset |
|
|
20
|
+
typeof sql.SmallDateTime |
|
|
21
|
+
typeof sql.Time |
|
|
22
|
+
typeof sql.UniqueIdentifier |
|
|
23
|
+
typeof sql.SmallMoney |
|
|
24
|
+
typeof sql.Money |
|
|
25
|
+
typeof sql.Binary |
|
|
26
|
+
typeof sql.VarBinary |
|
|
27
|
+
typeof sql.Image |
|
|
28
|
+
typeof sql.Xml |
|
|
29
|
+
typeof sql.Char |
|
|
30
|
+
typeof sql.NChar |
|
|
31
|
+
typeof sql.NText |
|
|
32
|
+
typeof sql.TVP |
|
|
33
|
+
typeof sql.UDT |
|
|
34
|
+
typeof sql.Geography |
|
|
35
|
+
typeof sql.Geometry |
|
|
36
|
+
typeof sql.Variant |
|
|
37
|
+
'bool' |
|
|
38
|
+
'boolean' |
|
|
39
|
+
'bit' |
|
|
40
|
+
'tinyint' |
|
|
41
|
+
'smallint' |
|
|
42
|
+
'int' |
|
|
43
|
+
'integer' |
|
|
44
|
+
'bigint' |
|
|
45
|
+
|
|
46
|
+
'number' |
|
|
47
|
+
'decimal' |
|
|
48
|
+
'float' |
|
|
49
|
+
'money' |
|
|
50
|
+
'numeric' |
|
|
51
|
+
'smallmoney' |
|
|
52
|
+
'real' |
|
|
53
|
+
|
|
54
|
+
'json' |
|
|
55
|
+
|
|
56
|
+
'string' |
|
|
57
|
+
'char' |
|
|
58
|
+
'nchar' |
|
|
59
|
+
'text' |
|
|
60
|
+
'ntext' |
|
|
61
|
+
'varchar' |
|
|
62
|
+
'nvarchar' |
|
|
63
|
+
'xml' |
|
|
64
|
+
|
|
65
|
+
'uid' |
|
|
66
|
+
'uuid' |
|
|
67
|
+
'uniqueIdentifier' |
|
|
68
|
+
'datetime' |
|
|
69
|
+
'datetime2' |
|
|
70
|
+
'date' |
|
|
71
|
+
'time' |
|
|
72
|
+
'smalldatetime' |
|
|
73
|
+
'datetimeoffset' |
|
|
74
|
+
'binary' |
|
|
75
|
+
'varbinary' |
|
|
76
|
+
'image' |
|
|
77
|
+
'udt' |
|
|
78
|
+
'geography' |
|
|
79
|
+
'geometry' |
|
|
80
|
+
'variant' |
|
|
81
|
+
'array'
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
export type TDataTypePg =
|
|
2
|
+
'bit' | // bit[(n)] - fixed-length bit string
|
|
3
|
+
'bool' |
|
|
4
|
+
'boolean' |
|
|
5
|
+
|
|
6
|
+
'smallint' |
|
|
7
|
+
'int2' |
|
|
8
|
+
|
|
9
|
+
'int' |
|
|
10
|
+
'integer' |
|
|
11
|
+
'int4' |
|
|
12
|
+
|
|
13
|
+
'bigint' |
|
|
14
|
+
'int8' |
|
|
15
|
+
|
|
16
|
+
'numeric' | // numeric [(p,s)]
|
|
17
|
+
'decimal' | // decimal [(p,s)]
|
|
18
|
+
|
|
19
|
+
'real' | // 1E-37 to 1E+37 6 decimal digits precision
|
|
20
|
+
'float4' |
|
|
21
|
+
|
|
22
|
+
'money' |
|
|
23
|
+
|
|
24
|
+
'double precision' |
|
|
25
|
+
'float8' |
|
|
26
|
+
|
|
27
|
+
'json' |
|
|
28
|
+
'jsonb' |
|
|
29
|
+
|
|
30
|
+
'character' | // character[(n)]
|
|
31
|
+
'char' | // character[(n)]
|
|
32
|
+
|
|
33
|
+
'varchar' | // varchar[(n)]
|
|
34
|
+
'character varying' | // character varying[(n)]
|
|
35
|
+
|
|
36
|
+
'string' | // Искусственный
|
|
37
|
+
'text' |
|
|
38
|
+
|
|
39
|
+
'uuid' |
|
|
40
|
+
|
|
41
|
+
'bytea' |
|
|
42
|
+
|
|
43
|
+
'timestamptz' | // timestamp [(p)] with time zone
|
|
44
|
+
'timestamp with time zone' |
|
|
45
|
+
'timestamp' | // timestamp [(p)] [without time zone]
|
|
46
|
+
'timestamp without time zone' |
|
|
47
|
+
|
|
48
|
+
'date' |
|
|
49
|
+
|
|
50
|
+
'time' | // time [(p)]
|
|
51
|
+
'time without time zone' | // time [(p)] without time zone
|
|
52
|
+
'timetz' |
|
|
53
|
+
'time with time zone' | // time [(p)] with time zone
|
|
54
|
+
|
|
55
|
+
'ARRAY' |
|
|
56
|
+
'USER_DEFINED' |
|
|
57
|
+
|
|
58
|
+
// Не задействованы
|
|
59
|
+
'smallserial' |
|
|
60
|
+
'serial2' |
|
|
61
|
+
'serial' |
|
|
62
|
+
'serial4' |
|
|
63
|
+
'bigserial' |
|
|
64
|
+
'serial8' |
|
|
65
|
+
'bit varying' | // varbit[(n)] / bit varying[(n)] - variable-length bit string
|
|
66
|
+
'varbit' |
|
|
67
|
+
'box' | // rectangular box on a plane
|
|
68
|
+
'cidr' | // IPv4 or IPv6 network address
|
|
69
|
+
'circle' | // circle on a plane
|
|
70
|
+
'inet' | // IPv4 or IPv6 host address
|
|
71
|
+
'interval' | // interval [fields][(p)] // time span
|
|
72
|
+
'line' | // infinite line on a plane
|
|
73
|
+
'lseg' | // line segment on a plane
|
|
74
|
+
'macaddr' | // MAC (Media Access Control) address
|
|
75
|
+
'macaddr8' | // MAC (Media Access Control) address (EUI-64 format)
|
|
76
|
+
'path' | // geometric path on a plane
|
|
77
|
+
'pg_lsn' | // PostgreSQL Log Sequence Number
|
|
78
|
+
'pg_snapshot' | // user-level transaction ID snapshot
|
|
79
|
+
'point' | // geometric point on a plane
|
|
80
|
+
'polygon' | // closed geometric path on a plane
|
|
81
|
+
'tsquery' | // text search query
|
|
82
|
+
'tsvector' | // text search document
|
|
83
|
+
'txid_snapshot' | // user-level transaction ID snapshot (deprecated; see pg_snapshot)
|
|
84
|
+
'xml' // XML data
|
|
85
|
+
|
|
86
|
+
export type TArrayTypesPg =
|
|
87
|
+
'_int2' |
|
|
88
|
+
'_int4' |
|
|
89
|
+
'_int8' |
|
|
90
|
+
'_float4' |
|
|
91
|
+
'_float8' |
|
|
92
|
+
'_numeric' |
|
|
93
|
+
'_money' |
|
|
94
|
+
'_text' |
|
|
95
|
+
'_varchar' |
|
|
96
|
+
'_bool' |
|
|
97
|
+
'_time' |
|
|
98
|
+
'_date' |
|
|
99
|
+
'_timestamp' |
|
|
100
|
+
'_timestamptz' |
|
|
101
|
+
|
|
102
|
+
'_char' |
|
|
103
|
+
'_bytea' |
|
|
104
|
+
'_bit' |
|
|
105
|
+
'_inet' |
|
|
106
|
+
'_macaddr' |
|
|
107
|
+
'_point' |
|
|
108
|
+
'_lseg' |
|
|
109
|
+
'_path' |
|
|
110
|
+
'_box' |
|
|
111
|
+
'_circle' |
|
|
112
|
+
'_polygon' |
|
|
113
|
+
'_uuid' |
|
|
114
|
+
'_xml' |
|
|
115
|
+
'_interval' |
|
|
116
|
+
'_timetz'
|
|
117
|
+
// Не ясно, откуда взялись
|
|
118
|
+
// '_oid' |
|
|
119
|
+
// '_abstime' |
|
|
120
|
+
// '_name' /
|
package/src/@types/i-ms.ts
CHANGED
|
@@ -1,85 +1,46 @@
|
|
|
1
|
-
import { ConnectionPool
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { ConnectionPool } from 'mssql';
|
|
2
|
+
import { IFieldDef, TFieldName } from './i-common';
|
|
3
|
+
import { TDataTypeMs } from './i-data-types-ms';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Метаинформация о поле БД
|
|
7
7
|
*/
|
|
8
|
-
export interface
|
|
9
|
-
|
|
10
|
-
name?: string,
|
|
11
|
-
length?: number,
|
|
12
|
-
type?: any,
|
|
13
|
-
arrayType?: any,
|
|
14
|
-
scale?: number,
|
|
15
|
-
precision?: number,
|
|
16
|
-
nullable?: boolean,
|
|
17
|
-
caseSensitive?: boolean,
|
|
18
|
-
identity?: boolean,
|
|
19
|
-
excludeFromInsert?: boolean,
|
|
20
|
-
readOnly?: boolean,
|
|
21
|
-
inputDateFormat?: string,
|
|
22
|
-
defaultValue?: any,
|
|
23
|
-
noQuotes?: boolean,
|
|
24
|
-
escapeOnlySingleQuotes?: boolean,
|
|
25
|
-
}
|
|
8
|
+
export interface IFieldDefMs extends IFieldDef {
|
|
9
|
+
dataType?: TDataTypeMs,
|
|
26
10
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
11
|
+
octetLength?: number,
|
|
12
|
+
charSetName?: string,
|
|
13
|
+
collation?: string,
|
|
14
|
+
caseSensitive?: boolean, // VVQ
|
|
31
15
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
16
|
+
identity?: boolean,
|
|
17
|
+
arrayType?: TDataTypeMs,
|
|
18
|
+
|
|
19
|
+
/* Дополнительные свойства */
|
|
20
|
+
escapeOnlySingleQuotes?: boolean,
|
|
37
21
|
}
|
|
38
22
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
*
|
|
42
|
-
* В частности, используется для полей, хранящих знаяения типа json в поле типа varchar(max)
|
|
43
|
-
* тогда необходимо явно задать тип поля "json". Если имя поля заканчивается на _json, коррекция типа произойдет автоматически.
|
|
44
|
-
* Также используется для указания входного формата для преобразования строки в тип datetime (свойство inputDateFormat в схеме поля)
|
|
45
|
-
*/
|
|
46
|
-
export interface TFieldTypeCorrectionMs {
|
|
47
|
-
[fieldName: TFieldName]: IFieldSchemaMs
|
|
23
|
+
export interface TColumnsSchemaMs { // ранее TRecordSchemaAssocMs
|
|
24
|
+
[fieldName: TFieldName]: IFieldDefMs,
|
|
48
25
|
}
|
|
49
26
|
|
|
50
|
-
export interface
|
|
51
|
-
|
|
52
|
-
total: number,
|
|
53
|
-
// кол-во добавленных записей
|
|
54
|
-
inserted: number,
|
|
55
|
-
// кол-во измененных записей
|
|
56
|
-
updated: number,
|
|
27
|
+
export interface TUniqueConstraintsMs {
|
|
28
|
+
[constraintName: string]: string[]
|
|
57
29
|
}
|
|
58
30
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
// массив имен
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
noUpdateIfNull?: boolean,
|
|
69
|
-
correction?: Function,
|
|
70
|
-
withClause?: string,
|
|
31
|
+
export interface ITableSchemaMs {
|
|
32
|
+
columnsSchema: TColumnsSchemaMs,
|
|
33
|
+
pk: TFieldName[],
|
|
34
|
+
uc: TUniqueConstraintsMs,
|
|
35
|
+
defaults: { [fieldName: TFieldName]: string },
|
|
36
|
+
fieldsArray: TFieldName[], // массив имен всех полей
|
|
37
|
+
serialsFields: TFieldName[], // массив имен полей типа identity
|
|
38
|
+
readOnlyFields: TFieldName[], // массив имен полей ReadOnly
|
|
39
|
+
fieldsWoSerialsAndRO: TFieldName[], // массив имен полей без полей identity и ReadOnly
|
|
71
40
|
}
|
|
72
41
|
|
|
73
|
-
export interface
|
|
74
|
-
|
|
75
|
-
omitFields?: string[],
|
|
76
|
-
// массив имен полей, которые нужно оставить в схеме
|
|
77
|
-
pickFields?: string[],
|
|
78
|
-
// кол-во измененных записей
|
|
79
|
-
fieldTypeCorrection?: TFieldTypeCorrectionMs,
|
|
80
|
-
mergeRules?: TMergeRulesMs,
|
|
81
|
-
noReturnMergeResult?: boolean,
|
|
82
|
-
dateTimeOptions?: IDateTimeOptionsEx,
|
|
42
|
+
export interface IConnectionPoolsMs {
|
|
43
|
+
[poolId: string]: ConnectionPool
|
|
83
44
|
}
|
|
84
45
|
|
|
85
46
|
export interface TGetPoolConnectionOptionsMs {
|
|
@@ -92,88 +53,3 @@ export interface TGetPoolConnectionOptionsMs {
|
|
|
92
53
|
onError?: 'exit' | 'throw'
|
|
93
54
|
errorCode?: number
|
|
94
55
|
}
|
|
95
|
-
|
|
96
|
-
export interface ISchemaItemMs {
|
|
97
|
-
index: number;
|
|
98
|
-
name: string;
|
|
99
|
-
length: number;
|
|
100
|
-
type: (() => ISqlType) | ISqlType;
|
|
101
|
-
udt?: any;
|
|
102
|
-
scale?: number | undefined;
|
|
103
|
-
precision?: number | undefined;
|
|
104
|
-
nullable: boolean;
|
|
105
|
-
caseSensitive: boolean;
|
|
106
|
-
identity: boolean;
|
|
107
|
-
readOnly: boolean;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
export interface IPrepareSqlStringArgsMs {
|
|
111
|
-
// Значение, которое нужно подготовить для передачи в SQL
|
|
112
|
-
value: string | number | null,
|
|
113
|
-
// Значение, которое будет подставлено, если передано null | undefined и nullable = false
|
|
114
|
-
defaultValue?: string | null | undefined,
|
|
115
|
-
// Ограничение на длину поля. Если передано, строка урезается
|
|
116
|
-
length?: number,
|
|
117
|
-
// Подставлять NULL, если значение пусто или пустая строка.
|
|
118
|
-
nullable?: boolean | number,
|
|
119
|
-
noQuotes?: boolean,
|
|
120
|
-
escapeOnlySingleQuotes?: boolean,
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
export interface IValueForSQLPartialArgsMs {
|
|
124
|
-
dateTimeOptions?: IDateTimeOptionsEx,
|
|
125
|
-
dialect?: IDialect
|
|
126
|
-
escapeOnlySingleQuotes?: boolean,
|
|
127
|
-
needValidate?: boolean, // Флаг необходимости валидации значения
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
export interface IPrepareRecordParamsMs {
|
|
131
|
-
// Если TRUE - в записи добавляются пропущенные поля со значениями NULL, '', ...
|
|
132
|
-
addMissingFields?: boolean,
|
|
133
|
-
// Для полей, не допускающих NULL будет добавлено наиболее подходящее значение
|
|
134
|
-
addValues4NotNullableFields?: boolean,
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
export interface IGetValueForSqlArgsMs extends IValueForSQLPartialArgsMs {
|
|
138
|
-
value: any,
|
|
139
|
-
fieldSchema: IFieldSchemaMs | string,
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
export interface IPrepareRecordForSqlArgsMs extends IValueForSQLPartialArgsMs, IPrepareRecordParamsMs {
|
|
143
|
-
// объект описания структуры таблицы
|
|
144
|
-
recordSchema: TRecordSchemaMs,
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
export interface IGetMergeSQLOptionsMs extends IValueForSQLPartialArgsMs, IPrepareRecordParamsMs {
|
|
148
|
-
isPrepareForSQL?: boolean,
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
export type ISchemaArrayMs = ISchemaItemMs[] & { dateTimeOptions?: IDateTimeOptionsEx, dialect?: IDialect };
|
|
152
|
-
|
|
153
|
-
export interface TGetRecordSchemaResultMs {
|
|
154
|
-
|
|
155
|
-
connectionId: string,
|
|
156
|
-
dbConfig: IDBConfigMs,
|
|
157
|
-
schemaAndTable: string,
|
|
158
|
-
schemaTableMs: string,
|
|
159
|
-
dbSchemaAndTable: string,
|
|
160
|
-
columns: IColumnMetadata,
|
|
161
|
-
schemaAssoc: Partial<IColumnMetadata>,
|
|
162
|
-
schema: ISchemaArrayMs,
|
|
163
|
-
fields: string[],
|
|
164
|
-
insertFields: string[],
|
|
165
|
-
insertFieldsList: string,
|
|
166
|
-
withClause: string | undefined,
|
|
167
|
-
updateFields: string[],
|
|
168
|
-
mergeIdentity: string[],
|
|
169
|
-
|
|
170
|
-
getMergeSQL: (_packet: TRecordSet, _prepareOptions?: IGetMergeSQLOptionsMs) => string,
|
|
171
|
-
|
|
172
|
-
getInsertSQL: (_packet: TRecordSet, _addOutputInserted?: boolean) => string,
|
|
173
|
-
|
|
174
|
-
getUpdateSQL: (_record: TRecordSet) => string,
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
export interface IConnectionPoolsMs {
|
|
178
|
-
[poolId: string]: ConnectionPool
|
|
179
|
-
}
|