pogi 2.10.2 → 3.0.0-beta2

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 (83) hide show
  1. package/.vscode/launch.json +47 -15
  2. package/CHANGELOG.md +11 -0
  3. package/docs/API/PgDb.md +25 -0
  4. package/docs/notification.md +19 -0
  5. package/jest.config.js +23 -0
  6. package/lib/bin/generateInterface.js +3 -3
  7. package/lib/bin/generateInterface.js.map +1 -1
  8. package/lib/connectionOptions.d.ts +10 -0
  9. package/lib/index.d.ts +1 -1
  10. package/lib/pgConverters.d.ts +9 -8
  11. package/lib/pgConverters.js +46 -32
  12. package/lib/pgConverters.js.map +1 -1
  13. package/lib/pgConverters.test.d.ts +1 -0
  14. package/lib/pgConverters.test.js +13 -0
  15. package/lib/pgConverters.test.js.map +1 -0
  16. package/lib/pgDb.d.ts +27 -27
  17. package/lib/pgDb.js +293 -100
  18. package/lib/pgDb.js.map +1 -1
  19. package/lib/pgDb.test.d.ts +1 -0
  20. package/lib/pgDb.test.js +1126 -0
  21. package/lib/pgDb.test.js.map +1 -0
  22. package/lib/pgDbInterface.d.ts +53 -0
  23. package/lib/pgDbInterface.js +11 -0
  24. package/lib/pgDbInterface.js.map +1 -0
  25. package/lib/pgDbOperators.d.ts +3 -3
  26. package/lib/pgDbOperators.js +4 -7
  27. package/lib/pgDbOperators.js.map +1 -1
  28. package/lib/pgDbOperators.test.d.ts +1 -0
  29. package/lib/pgDbOperators.test.js +313 -0
  30. package/lib/pgDbOperators.test.js.map +1 -0
  31. package/lib/pgSchema.d.ts +10 -9
  32. package/lib/pgSchema.js.map +1 -1
  33. package/lib/pgSchemaInterface.d.ts +12 -0
  34. package/lib/pgSchemaInterface.js +3 -0
  35. package/lib/pgSchemaInterface.js.map +1 -0
  36. package/lib/pgTable.d.ts +15 -40
  37. package/lib/pgTable.js +54 -54
  38. package/lib/pgTable.js.map +1 -1
  39. package/lib/pgTableInterface.d.ts +102 -0
  40. package/lib/pgTableInterface.js +4 -0
  41. package/lib/pgTableInterface.js.map +1 -0
  42. package/lib/pgUtils.d.ts +16 -6
  43. package/lib/pgUtils.js +162 -31
  44. package/lib/pgUtils.js.map +1 -1
  45. package/lib/queryAble.d.ts +20 -53
  46. package/lib/queryAble.js +149 -80
  47. package/lib/queryAble.js.map +1 -1
  48. package/lib/queryAbleInterface.d.ts +55 -0
  49. package/lib/queryAbleInterface.js +7 -0
  50. package/lib/queryAbleInterface.js.map +1 -0
  51. package/lib/queryWhere.d.ts +2 -2
  52. package/lib/queryWhere.js +19 -23
  53. package/lib/queryWhere.js.map +1 -1
  54. package/mkdocs.yml +1 -0
  55. package/package.json +21 -11
  56. package/src/bin/generateInterface.ts +2 -2
  57. package/src/connectionOptions.ts +48 -13
  58. package/src/index.d.ts +7 -0
  59. package/src/index.ts +1 -1
  60. package/src/pgConverters.test.ts +10 -0
  61. package/src/pgConverters.ts +34 -22
  62. package/src/pgDb.test.ts +1324 -0
  63. package/src/pgDb.ts +318 -122
  64. package/src/pgDbInterface.ts +57 -0
  65. package/src/pgDbOperators.test.ts +478 -0
  66. package/src/pgDbOperators.ts +45 -22
  67. package/src/pgSchema.ts +10 -9
  68. package/src/pgSchemaInterface.ts +12 -0
  69. package/src/pgTable.ts +66 -98
  70. package/src/pgTableInterface.ts +131 -0
  71. package/src/pgUtils.ts +166 -42
  72. package/src/queryAble.ts +167 -125
  73. package/src/queryAbleInterface.ts +104 -0
  74. package/src/queryWhere.ts +42 -43
  75. package/{spec/resources → src/test}/init.sql +23 -0
  76. package/src/test/pgServiceRestartTest.ts +1500 -0
  77. package/{spec/resources → src/test}/throw_exception.sql +0 -0
  78. package/{spec/resources → src/test}/tricky.sql +0 -0
  79. package/{src/tsconfig.json → tsconfig.json} +12 -11
  80. package/spec/run.js +0 -5
  81. package/spec/support/jasmine.json +0 -9
  82. package/src/test/pgDbOperatorSpec.ts +0 -492
  83. package/src/test/pgDbSpec.ts +0 -994
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pgDbOperators.test.js","sourceRoot":"","sources":["../src/pgDbOperators.test.ts"],"names":[],"mappings":"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"}
package/lib/pgSchema.d.ts CHANGED
@@ -1,16 +1,17 @@
1
1
  import { QueryAble } from "./queryAble";
2
- import { PgDb } from "./pgDb";
3
- import { PgTable } from "./pgTable";
4
- export declare class PgSchema extends QueryAble {
5
- db: PgDb;
2
+ import { IPgDb } from "./pgDbInterface";
3
+ import { IPgTable } from "./pgTableInterface";
4
+ import { IPgSchema } from "./pgSchemaInterface";
5
+ export declare class PgSchema extends QueryAble implements IPgSchema {
6
+ db: IPgDb;
6
7
  schemaName: string;
7
- schema: PgSchema;
8
+ schema: IPgSchema;
8
9
  tables: {
9
- [name: string]: PgTable<any>;
10
+ [name: string]: IPgTable<any>;
10
11
  };
11
12
  fn: {
12
- [name: string]: (...any: any[]) => any;
13
+ [name: string]: (...args: any[]) => any;
13
14
  };
14
- [name: string]: any | PgTable<any>;
15
- constructor(db: PgDb, schemaName: string);
15
+ [name: string]: any | IPgTable<any>;
16
+ constructor(db: IPgDb, schemaName: string);
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pgSchema.js","sourceRoot":"","sources":["../src/pgSchema.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AAItC,MAAa,QAAS,SAAQ,qBAAS;IAMnC,YAAmB,EAAO,EAAS,UAAiB;QAChD,KAAK,EAAE,CAAC;QADO,OAAE,GAAF,EAAE,CAAK;QAAS,eAAU,GAAV,UAAU,CAAO;QAJpD,WAAM,GAAgC,EAAE,CAAC;QACzC,OAAE,GAAkC,EAAE,CAAC;QAKnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACvB,CAAC;CACJ;AAVD,4BAUC"}
1
+ {"version":3,"file":"pgSchema.js","sourceRoot":"","sources":["../src/pgSchema.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAKxC,MAAa,QAAS,SAAQ,qBAAS;IAMnC,YAAmB,EAAS,EAAS,UAAkB;QACnD,KAAK,EAAE,CAAC;QADO,OAAE,GAAF,EAAE,CAAO;QAAS,eAAU,GAAV,UAAU,CAAQ;QAJvD,WAAM,GAAsC,EAAE,CAAC;QAC/C,OAAE,GAAgD,EAAE,CAAC;QAKjD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACvB,CAAC;CACJ;AAVD,4BAUC"}
@@ -0,0 +1,12 @@
1
+ import { IPgTable } from "./pgTableInterface";
2
+ import { IQueryAble } from "./queryAbleInterface";
3
+ export interface IPgSchema extends IQueryAble {
4
+ schemaName: string;
5
+ tables: {
6
+ [name: string]: IPgTable<any>;
7
+ };
8
+ fn: {
9
+ [name: string]: (...args: any[]) => any;
10
+ };
11
+ [name: string]: any | IPgTable<any>;
12
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=pgSchemaInterface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pgSchemaInterface.js","sourceRoot":"","sources":["../src/pgSchemaInterface.ts"],"names":[],"mappings":""}
package/lib/pgTable.d.ts CHANGED
@@ -1,37 +1,12 @@
1
1
  /// <reference types="node" />
2
- import { QueryAble, QueryOptions } from "./queryAble";
3
- import { PgDb, FieldType } from "./pgDb";
4
- import { PgDbLogger } from "./pgDbLogger";
5
- import { PgSchema } from "./pgSchema";
6
2
  import * as stream from "stream";
7
- export interface InsertOption {
8
- logger?: PgDbLogger;
9
- }
10
- export interface Return {
11
- return?: string[] | '*';
12
- }
13
- export interface UpdateDeleteOption {
14
- skipUndefined?: boolean;
15
- logger?: PgDbLogger;
16
- }
17
- export interface UpsertOption {
18
- constraint?: string;
19
- columns?: string[];
20
- logger?: PgDbLogger;
21
- }
22
- export interface CountOption {
23
- skipUndefined?: boolean;
24
- logger?: PgDbLogger;
25
- }
26
- export interface Stream {
27
- stream: true;
28
- }
29
- export interface TruncateOptions {
30
- restartIdentity?: boolean;
31
- cascade?: boolean;
32
- logger?: PgDbLogger;
33
- }
34
- export declare class PgTable<T> extends QueryAble {
3
+ import { FieldType } from "./pgDb";
4
+ import { IPgDb } from "./pgDbInterface";
5
+ import { PgSchema } from "./pgSchema";
6
+ import { CountOption, InsertOption, IPgTable, Return, Stream, TruncateOptions, UpdateDeleteOption, UpsertOption } from "./pgTableInterface";
7
+ import { QueryAble } from "./queryAble";
8
+ import { QueryOptions } from "./queryAbleInterface";
9
+ export declare class PgTable<T> extends QueryAble implements IPgTable<T> {
35
10
  schema: PgSchema;
36
11
  protected desc: {
37
12
  name: string;
@@ -40,7 +15,7 @@ export declare class PgTable<T> extends QueryAble {
40
15
  };
41
16
  qualifiedName: string;
42
17
  pkey: string;
43
- db: PgDb;
18
+ db: IPgDb;
44
19
  fieldTypes: {
45
20
  [index: string]: FieldType;
46
21
  };
@@ -48,7 +23,7 @@ export declare class PgTable<T> extends QueryAble {
48
23
  name: string;
49
24
  pkey?: string;
50
25
  schema: string;
51
- }, fieldTypes?: {});
26
+ }, fieldTypes?: Record<string, FieldType>);
52
27
  toString(): string;
53
28
  insert(records: T[], options?: InsertOption): Promise<number>;
54
29
  insert(records: T, options?: InsertOption): Promise<number>;
@@ -99,15 +74,15 @@ export declare class PgTable<T> extends QueryAble {
99
74
  findWhere(where: string, params: any[] | {}, options?: QueryOptions & Stream): Promise<stream.Readable>;
100
75
  findAll(options?: QueryOptions): Promise<T[]>;
101
76
  findAll(options?: QueryOptions & Stream): Promise<stream.Readable>;
102
- findOne(conditions: any, options?: QueryOptions): Promise<T>;
103
- findFirst(conditions: any, options?: QueryOptions): Promise<T>;
104
- count(conditions?: {}, options?: CountOption): Promise<number>;
105
- findOneFieldOnly(conditions: any, field: string, options?: QueryOptions): Promise<any>;
77
+ findOne(conditions: Record<string, any>, options?: QueryOptions): Promise<T>;
78
+ findFirst(conditions: Record<string, any>, options?: QueryOptions): Promise<T>;
79
+ count(conditions?: Record<string, any>, options?: CountOption): Promise<number>;
80
+ findOneFieldOnly(conditions: Record<string, any>, field: string, options?: QueryOptions): Promise<any>;
106
81
  private getInsertQuery;
107
- protected getUpdateSetSnipplet(fields: {
82
+ protected getUpdateSetSnippet(fields: {
108
83
  [k: string]: any;
109
84
  }, parameters?: any[]): {
110
- snipplet: string;
85
+ snippet: string;
111
86
  parameters: any[];
112
87
  };
113
88
  protected getUpdateQuery(conditions: {
package/lib/pgTable.js CHANGED
@@ -2,26 +2,26 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PgTable = void 0;
4
4
  const tslib_1 = require("tslib");
5
+ const _ = require("lodash");
6
+ const pgUtils_1 = require("./pgUtils");
5
7
  const queryAble_1 = require("./queryAble");
6
8
  const queryWhere_1 = require("./queryWhere");
7
- const pgUtils_1 = require("./pgUtils");
8
- const _ = require("lodash");
9
- const util = require('util');
10
9
  class PgTable extends queryAble_1.QueryAble {
11
10
  constructor(schema, desc, fieldTypes = {}) {
12
11
  super();
13
12
  this.schema = schema;
14
13
  this.desc = desc;
15
14
  this.db = schema.db;
16
- this.qualifiedName = util.format('"%s"."%s"', desc.schema, desc.name);
15
+ this.qualifiedName = `${pgUtils_1.pgUtils.quoteFieldName(desc.schema)}.${pgUtils_1.pgUtils.quoteFieldName(desc.name)}`;
17
16
  this.pkey = desc.pkey || desc.name + "_pkey";
18
17
  this.fieldTypes = fieldTypes;
18
+ return this;
19
19
  }
20
20
  toString() {
21
21
  return this.qualifiedName;
22
22
  }
23
23
  insert(records, options) {
24
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
24
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
25
25
  options = options || {};
26
26
  if (!records) {
27
27
  throw new Error("insert should be called with data");
@@ -39,7 +39,7 @@ class PgTable extends queryAble_1.QueryAble {
39
39
  });
40
40
  }
41
41
  insertAndGet(records, options) {
42
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
42
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
43
43
  let returnSingle = false;
44
44
  options = options || {};
45
45
  if (!records) {
@@ -53,7 +53,7 @@ class PgTable extends queryAble_1.QueryAble {
53
53
  return [];
54
54
  }
55
55
  let { sql, parameters } = this.getInsertQuery(records);
56
- sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteField).join(',') : '*');
56
+ sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteFieldName).join(',') : '*');
57
57
  let result = yield this.query(sql, parameters, { logger: options.logger });
58
58
  if (options.return && options.return.length == 0) {
59
59
  return new Array(returnSingle ? 1 : records.length).fill({});
@@ -68,7 +68,7 @@ class PgTable extends queryAble_1.QueryAble {
68
68
  }
69
69
  ;
70
70
  updateOne(conditions, fields, options) {
71
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
71
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
72
72
  let affected = yield this.update(conditions, fields, options);
73
73
  if (affected > 1) {
74
74
  throw new Error('More then one record has been updated!');
@@ -77,7 +77,7 @@ class PgTable extends queryAble_1.QueryAble {
77
77
  });
78
78
  }
79
79
  updateAndGetOne(conditions, fields, options) {
80
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
80
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
81
81
  let result = yield this.updateAndGet(conditions, fields, options);
82
82
  if (result.length > 1) {
83
83
  throw new Error('More then one record has been updated!');
@@ -86,7 +86,7 @@ class PgTable extends queryAble_1.QueryAble {
86
86
  });
87
87
  }
88
88
  update(conditions, fields, options) {
89
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
89
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
90
90
  let { sql, parameters } = this.getUpdateQuery(conditions, fields, options);
91
91
  sql = "WITH __RESULT as ( " + sql + " RETURNING 1) SELECT SUM(1) FROM __RESULT";
92
92
  let res = yield this.query(sql, parameters, options);
@@ -95,15 +95,15 @@ class PgTable extends queryAble_1.QueryAble {
95
95
  }
96
96
  ;
97
97
  updateAndGet(conditions, fields, options) {
98
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
98
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
99
99
  let { sql, parameters } = this.getUpdateQuery(conditions, fields, options);
100
- sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteField).join(',') : '*');
100
+ sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteFieldName).join(',') : '*');
101
101
  return this.query(sql, parameters, options);
102
102
  });
103
103
  }
104
104
  ;
105
105
  upsert(record, options) {
106
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
106
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
107
107
  options = options || {};
108
108
  if (!record) {
109
109
  throw new Error("insert should be called with data");
@@ -116,13 +116,13 @@ class PgTable extends queryAble_1.QueryAble {
116
116
  }
117
117
  ;
118
118
  upsertAndGet(record, options) {
119
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
119
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
120
120
  options = options || {};
121
121
  if (!record) {
122
122
  throw new Error("insert should be called with data");
123
123
  }
124
124
  let { sql, parameters } = this.getUpsertQuery(record, options);
125
- sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteField).join(',') : '*');
125
+ sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteFieldName).join(',') : '*');
126
126
  let result = yield this.query(sql, parameters, { logger: options.logger });
127
127
  if (options.return && options.return.length == 0) {
128
128
  return {};
@@ -132,7 +132,7 @@ class PgTable extends queryAble_1.QueryAble {
132
132
  }
133
133
  ;
134
134
  delete(conditions, options) {
135
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
135
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
136
136
  let { sql, parameters } = this.getDeleteQuery(conditions, options);
137
137
  sql = "WITH __RESULT as ( " + sql + " RETURNING 1) SELECT SUM(1) FROM __RESULT";
138
138
  let res = yield this.query(sql, parameters, options);
@@ -140,7 +140,7 @@ class PgTable extends queryAble_1.QueryAble {
140
140
  });
141
141
  }
142
142
  deleteOne(conditions, options) {
143
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
143
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
144
144
  let affected = yield this.delete(conditions, options);
145
145
  if (affected > 1) {
146
146
  throw new Error('More then one record has been deleted!');
@@ -149,15 +149,15 @@ class PgTable extends queryAble_1.QueryAble {
149
149
  });
150
150
  }
151
151
  deleteAndGet(conditions, options) {
152
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
152
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
153
153
  options = options || {};
154
154
  let { sql, parameters } = this.getDeleteQuery(conditions, options);
155
- sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteField).join(',') : '*');
155
+ sql += " RETURNING " + (options && options.return && Array.isArray(options.return) ? options.return.map(pgUtils_1.pgUtils.quoteFieldName).join(',') : '*');
156
156
  return this.query(sql, parameters);
157
157
  });
158
158
  }
159
159
  deleteAndGetOne(conditions, options) {
160
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
160
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
161
161
  let result = yield this.deleteAndGet(conditions, options);
162
162
  if (result.length > 1) {
163
163
  throw new Error('More then one record has been deleted!');
@@ -166,7 +166,7 @@ class PgTable extends queryAble_1.QueryAble {
166
166
  });
167
167
  }
168
168
  truncate(options) {
169
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
169
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
170
170
  let sql = `TRUNCATE ${this.qualifiedName}`;
171
171
  if (options && options.restartIdentity) {
172
172
  sql += ' RESTART IDENTITY';
@@ -174,37 +174,37 @@ class PgTable extends queryAble_1.QueryAble {
174
174
  if (options && options.cascade) {
175
175
  sql += ' CASCADE';
176
176
  }
177
- yield this.query(sql, null, options);
177
+ yield this.query(sql, undefined, options);
178
178
  });
179
179
  }
180
180
  find(conditions, options) {
181
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
181
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
182
182
  options = options || {};
183
- options.skipUndefined = options.skipUndefined === true || (options.skipUndefined === undefined && ['all', 'select'].indexOf(this.db.config.skipUndefined) > -1);
183
+ options.skipUndefined = options.skipUndefined === true || (options.skipUndefined === undefined && this.db.config.skipUndefined && ['all', 'select'].includes(this.db.config.skipUndefined));
184
184
  let where = _.isEmpty(conditions) ? {
185
- where: " ",
186
- params: null
187
- } : queryWhere_1.default(conditions, this.fieldTypes, this.qualifiedName, 0, options.skipUndefined);
188
- let sql = `SELECT ${pgUtils_1.pgUtils.processQueryFields(options)} FROM ${this.qualifiedName} ${where.where} ${pgUtils_1.pgUtils.processQueryOptions(options)}`;
185
+ where: "",
186
+ params: undefined
187
+ } : (0, queryWhere_1.default)(conditions, this.fieldTypes, this.qualifiedName, 0, options.skipUndefined);
188
+ let sql = `SELECT ${pgUtils_1.pgUtils.processQueryFields(options)} FROM ${this.qualifiedName} ${where.where} ${pgUtils_1.pgUtils.processQueryOptions(options, this)}`;
189
189
  return options.stream ? this.queryAsStream(sql, where.params, options) : this.query(sql, where.params, options);
190
190
  });
191
191
  }
192
192
  findWhere(where, params, options) {
193
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
193
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
194
194
  options = options || {};
195
- let sql = `SELECT ${pgUtils_1.pgUtils.processQueryFields(options)} FROM ${this.qualifiedName} WHERE ${where} ${pgUtils_1.pgUtils.processQueryOptions(options)}`;
195
+ let sql = `SELECT ${pgUtils_1.pgUtils.processQueryFields(options)} FROM ${this.qualifiedName} WHERE ${where} ${pgUtils_1.pgUtils.processQueryOptions(options, this)}`;
196
196
  return options.stream ? this.queryAsStream(sql, params, options) : this.query(sql, params, options);
197
197
  });
198
198
  }
199
199
  findAll(options) {
200
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
200
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
201
201
  options = options || {};
202
- let sql = `SELECT ${pgUtils_1.pgUtils.processQueryFields(options)} FROM ${this.qualifiedName} ${pgUtils_1.pgUtils.processQueryOptions(options)}`;
203
- return options.stream ? this.queryAsStream(sql, null, options) : this.query(sql, null, options);
202
+ let sql = `SELECT ${pgUtils_1.pgUtils.processQueryFields(options)} FROM ${this.qualifiedName} ${pgUtils_1.pgUtils.processQueryOptions(options, this)}`;
203
+ return options.stream ? this.queryAsStream(sql, undefined, options) : this.query(sql, null, options);
204
204
  });
205
205
  }
206
206
  findOne(conditions, options) {
207
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
207
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
208
208
  let res = yield this.find(conditions, options);
209
209
  if (res.length > 1) {
210
210
  let logger = (options && options.logger || this.getLogger(false));
@@ -216,7 +216,7 @@ class PgTable extends queryAble_1.QueryAble {
216
216
  });
217
217
  }
218
218
  findFirst(conditions, options) {
219
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
219
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
220
220
  options = options || {};
221
221
  options.limit = 1;
222
222
  let res = yield this.find(conditions, options);
@@ -224,19 +224,19 @@ class PgTable extends queryAble_1.QueryAble {
224
224
  });
225
225
  }
226
226
  count(conditions, options) {
227
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
227
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
228
228
  options = options || {};
229
- options.skipUndefined = options.skipUndefined === true || (options.skipUndefined === undefined && ['all', 'select'].indexOf(this.db.config.skipUndefined) > -1);
229
+ options.skipUndefined = options.skipUndefined === true || (options.skipUndefined === undefined && this.db.config.skipUndefined && ['all', 'select'].includes(this.db.config.skipUndefined));
230
230
  let where = _.isEmpty(conditions) ? {
231
231
  where: " ",
232
- params: null
233
- } : queryWhere_1.default(conditions, this.fieldTypes, this.qualifiedName, 0, options.skipUndefined);
232
+ params: undefined
233
+ } : (0, queryWhere_1.default)(conditions, this.fieldTypes, this.qualifiedName, 0, options.skipUndefined);
234
234
  let sql = `SELECT COUNT(*) c FROM ${this.qualifiedName} ${where.where}`;
235
235
  return (yield this.queryOneField(sql, where.params));
236
236
  });
237
237
  }
238
238
  findOneFieldOnly(conditions, field, options) {
239
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
239
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
240
240
  options = options || {};
241
241
  options.fields = [field];
242
242
  let res = yield this.findOne(conditions, options);
@@ -251,27 +251,27 @@ class PgTable extends queryAble_1.QueryAble {
251
251
  }
252
252
  });
253
253
  let columns = Object.keys(columnsMap);
254
- let sql = util.format("INSERT INTO %s (%s) VALUES\n", this.qualifiedName, columns.map(pgUtils_1.pgUtils.quoteField).join(", "));
254
+ let sql = `INSERT INTO ${this.qualifiedName} (${columns.map(pgUtils_1.pgUtils.quoteFieldName).join(", ")}) VALUES\n`;
255
255
  let parameters = [];
256
256
  let placeholders = [];
257
257
  for (let i = 0, seed = 0; i < records.length; i++) {
258
258
  placeholders.push('(' + columns.map(c => "$" + (++seed)).join(', ') + ')');
259
- parameters.push.apply(parameters, columns.map(c => pgUtils_1.pgUtils.transformInsertUpdateParams(records[i][c], this.fieldTypes[c])));
259
+ parameters.push(...columns.map(c => pgUtils_1.pgUtils.transformInsertUpdateParams(records[i][c], this.fieldTypes[c])));
260
260
  }
261
261
  sql += placeholders.join(",\n");
262
262
  return { sql, parameters };
263
263
  }
264
- getUpdateSetSnipplet(fields, parameters) {
264
+ getUpdateSetSnippet(fields, parameters) {
265
265
  let params = parameters || [];
266
266
  let f = [];
267
267
  let seed = params.length;
268
268
  _.each(fields, (value, fieldName) => {
269
269
  if (value === undefined)
270
270
  return;
271
- f.push(util.format('%s = $%s', pgUtils_1.pgUtils.quoteField(fieldName), (++seed)));
271
+ f.push(`${pgUtils_1.pgUtils.quoteFieldName(fieldName)} = $${(++seed)}`);
272
272
  params.push(pgUtils_1.pgUtils.transformInsertUpdateParams(value, this.fieldTypes[fieldName]));
273
273
  });
274
- return { snipplet: f.join(', '), parameters: params };
274
+ return { snippet: f.join(', '), parameters: params };
275
275
  }
276
276
  getUpdateQuery(conditions, fields, options) {
277
277
  options = options || {};
@@ -280,10 +280,10 @@ class PgTable extends queryAble_1.QueryAble {
280
280
  if (_.isEmpty(fields)) {
281
281
  throw new Error('Missing fields for update');
282
282
  }
283
- let { snipplet, parameters } = this.getUpdateSetSnipplet(fields);
284
- let sql = util.format("UPDATE %s SET %s", this.qualifiedName, snipplet);
283
+ let { snippet, parameters } = this.getUpdateSetSnippet(fields);
284
+ let sql = `UPDATE ${this.qualifiedName} SET ${snippet}`;
285
285
  if (!hasConditions || !_.isEmpty(conditions)) {
286
- let parsedWhere = queryWhere_1.default(conditions, this.fieldTypes, this.qualifiedName, parameters.length, options.skipUndefined);
286
+ let parsedWhere = (0, queryWhere_1.default)(conditions, this.fieldTypes, this.qualifiedName, parameters.length, options.skipUndefined);
287
287
  sql += parsedWhere.where;
288
288
  parameters = parameters.concat(parsedWhere.params);
289
289
  }
@@ -295,24 +295,24 @@ class PgTable extends queryAble_1.QueryAble {
295
295
  throw new Error('Missing fields for upsert');
296
296
  }
297
297
  let insert = this.getInsertQuery([record]);
298
- let { snipplet, parameters } = this.getUpdateSetSnipplet(record, insert.parameters);
298
+ let { snippet, parameters } = this.getUpdateSetSnippet(record, insert.parameters);
299
299
  let sql = insert.sql;
300
300
  if (options.columns) {
301
- sql += " ON CONFLICT (" + options.columns.map(c => pgUtils_1.pgUtils.quoteField(c)).join(', ') + ") DO UPDATE SET " + snipplet;
301
+ sql += ` ON CONFLICT (${options.columns.map(c => pgUtils_1.pgUtils.quoteFieldName(c)).join(', ')}) DO UPDATE SET ${snippet}`;
302
302
  }
303
303
  else {
304
- let constraint = options.constraint || this.pkey;
305
- sql += " ON CONFLICT ON CONSTRAINT " + util.format('"%s"', constraint) + " DO UPDATE SET " + snipplet;
304
+ let constraint = pgUtils_1.pgUtils.quoteFieldName(options.constraint || this.pkey);
305
+ sql += ` ON CONFLICT ON CONSTRAINT ${constraint} DO UPDATE SET ${snippet}`;
306
306
  }
307
307
  return { sql, parameters };
308
308
  }
309
309
  getDeleteQuery(conditions, options) {
310
310
  options = options || {};
311
311
  options.skipUndefined = options.skipUndefined === true || (options.skipUndefined === undefined && this.db.config.skipUndefined === 'all');
312
- let sql = util.format("DELETE FROM %s ", this.qualifiedName);
312
+ let sql = `DELETE FROM ${this.qualifiedName} `;
313
313
  let parsedWhere;
314
314
  if (!_.isEmpty(conditions)) {
315
- parsedWhere = queryWhere_1.default(conditions, this.fieldTypes, this.qualifiedName, 0, options.skipUndefined);
315
+ parsedWhere = (0, queryWhere_1.default)(conditions, this.fieldTypes, this.qualifiedName, 0, options.skipUndefined);
316
316
  sql += parsedWhere.where;
317
317
  }
318
318
  return { sql, parameters: parsedWhere && parsedWhere.params || [] };
@@ -1 +1 @@
1
- {"version":3,"file":"pgTable.js","sourceRoot":"","sources":["../src/pgTable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pgTable.js","sourceRoot":"","sources":["../src/pgTable.ts"],"names":[],"mappings":"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"}