@sprucelabs/postgres-data-store 4.1.47 → 4.2.0
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/build/QueryBuilder.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export default class QueryBuilder {
|
|
|
11
11
|
private buildSetClause;
|
|
12
12
|
private buildSetClausFor$Or;
|
|
13
13
|
create(tableName: string, records: Record<string, any>[]): BuiltQuery;
|
|
14
|
+
private log;
|
|
14
15
|
createWithoutReturning(tableName: string, records: Record<string, any>[]): BuiltQuery;
|
|
15
16
|
private splitRecordsIntoFieldsPlaceholdersAndValues;
|
|
16
17
|
private fieldValueToSqlValue;
|
package/build/QueryBuilder.js
CHANGED
|
@@ -138,11 +138,19 @@ class QueryBuilder {
|
|
|
138
138
|
create(tableName, records) {
|
|
139
139
|
let { sql, values } = this.createWithoutReturning(tableName, records);
|
|
140
140
|
sql += ` RETURNING *`;
|
|
141
|
+
this.log('create', sql, values);
|
|
141
142
|
return {
|
|
142
143
|
sql,
|
|
143
144
|
values,
|
|
144
145
|
};
|
|
145
146
|
}
|
|
147
|
+
log(...args) {
|
|
148
|
+
if (process.env.POSTGRES_SHOULD_LOG_QUERIES === 'true') {
|
|
149
|
+
for (const arg of args) {
|
|
150
|
+
console.log(JSON.stringify(arg));
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
146
154
|
createWithoutReturning(tableName, records) {
|
|
147
155
|
const { fields, placeholders, values } = this.splitRecordsIntoFieldsPlaceholdersAndValues(records);
|
|
148
156
|
const sql = `INSERT INTO ${this.buildTableName(tableName)} (${fields
|
|
@@ -223,15 +231,18 @@ class QueryBuilder {
|
|
|
223
231
|
if (shouldReturnUpdatedRecords) {
|
|
224
232
|
sql += ' RETURNING *';
|
|
225
233
|
}
|
|
226
|
-
|
|
234
|
+
const results = {
|
|
227
235
|
sql,
|
|
228
236
|
values: [...values, ...whereValues],
|
|
229
237
|
};
|
|
238
|
+
this.log('update', results);
|
|
239
|
+
return results;
|
|
230
240
|
}
|
|
231
241
|
delete(tableName, query) {
|
|
232
242
|
let sql = `DELETE FROM ${this.buildTableName(tableName)}`;
|
|
233
243
|
const { values, sql: where } = this.optionallyBuildWhere(query !== null && query !== void 0 ? query : {});
|
|
234
244
|
sql += where;
|
|
245
|
+
this.log('delete', sql, values);
|
|
235
246
|
return {
|
|
236
247
|
sql,
|
|
237
248
|
values,
|
|
@@ -250,6 +261,7 @@ class QueryBuilder {
|
|
|
250
261
|
.map((f) => `${f} = EXCLUDED.${f}`)
|
|
251
262
|
.join(', ')}`;
|
|
252
263
|
sql += ' RETURNING *';
|
|
264
|
+
this.log('upsert', sql, values);
|
|
253
265
|
return {
|
|
254
266
|
sql,
|
|
255
267
|
values: [...values, ...whereValues],
|
|
@@ -11,6 +11,7 @@ export default class QueryBuilder {
|
|
|
11
11
|
private buildSetClause;
|
|
12
12
|
private buildSetClausFor$Or;
|
|
13
13
|
create(tableName: string, records: Record<string, any>[]): BuiltQuery;
|
|
14
|
+
private log;
|
|
14
15
|
createWithoutReturning(tableName: string, records: Record<string, any>[]): BuiltQuery;
|
|
15
16
|
private splitRecordsIntoFieldsPlaceholdersAndValues;
|
|
16
17
|
private fieldValueToSqlValue;
|
|
@@ -135,11 +135,19 @@ export default class QueryBuilder {
|
|
|
135
135
|
create(tableName, records) {
|
|
136
136
|
let { sql, values } = this.createWithoutReturning(tableName, records);
|
|
137
137
|
sql += ` RETURNING *`;
|
|
138
|
+
this.log('create', sql, values);
|
|
138
139
|
return {
|
|
139
140
|
sql,
|
|
140
141
|
values,
|
|
141
142
|
};
|
|
142
143
|
}
|
|
144
|
+
log(...args) {
|
|
145
|
+
if (process.env.POSTGRES_SHOULD_LOG_QUERIES === 'true') {
|
|
146
|
+
for (const arg of args) {
|
|
147
|
+
console.log(JSON.stringify(arg));
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
143
151
|
createWithoutReturning(tableName, records) {
|
|
144
152
|
const { fields, placeholders, values } = this.splitRecordsIntoFieldsPlaceholdersAndValues(records);
|
|
145
153
|
const sql = `INSERT INTO ${this.buildTableName(tableName)} (${fields
|
|
@@ -220,15 +228,18 @@ export default class QueryBuilder {
|
|
|
220
228
|
if (shouldReturnUpdatedRecords) {
|
|
221
229
|
sql += ' RETURNING *';
|
|
222
230
|
}
|
|
223
|
-
|
|
231
|
+
const results = {
|
|
224
232
|
sql,
|
|
225
233
|
values: [...values, ...whereValues],
|
|
226
234
|
};
|
|
235
|
+
this.log('update', results);
|
|
236
|
+
return results;
|
|
227
237
|
}
|
|
228
238
|
delete(tableName, query) {
|
|
229
239
|
let sql = `DELETE FROM ${this.buildTableName(tableName)}`;
|
|
230
240
|
const { values, sql: where } = this.optionallyBuildWhere(query !== null && query !== void 0 ? query : {});
|
|
231
241
|
sql += where;
|
|
242
|
+
this.log('delete', sql, values);
|
|
232
243
|
return {
|
|
233
244
|
sql,
|
|
234
245
|
values,
|
|
@@ -247,6 +258,7 @@ export default class QueryBuilder {
|
|
|
247
258
|
.map((f) => `${f} = EXCLUDED.${f}`)
|
|
248
259
|
.join(', ')}`;
|
|
249
260
|
sql += ' RETURNING *';
|
|
261
|
+
this.log('upsert', sql, values);
|
|
250
262
|
return {
|
|
251
263
|
sql,
|
|
252
264
|
values: [...values, ...whereValues],
|
package/package.json
CHANGED