prostgles-server 2.0.257 → 2.0.260
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/DboBuilder/insert.d.ts.map +1 -1
- package/dist/DboBuilder/insert.js +13 -12
- package/dist/DboBuilder/insert.js.map +1 -1
- package/dist/DboBuilder/update.d.ts.map +1 -1
- package/dist/DboBuilder/update.js +8 -7
- package/dist/DboBuilder/update.js.map +1 -1
- package/dist/Prostgles.d.ts +2 -2
- package/dist/Prostgles.d.ts.map +1 -1
- package/dist/Prostgles.js +10 -2
- package/dist/Prostgles.js.map +1 -1
- package/lib/DboBuilder/insert.d.ts.map +1 -1
- package/lib/DboBuilder/insert.js +13 -12
- package/lib/DboBuilder/insert.ts +13 -12
- package/lib/DboBuilder/update.d.ts.map +1 -1
- package/lib/DboBuilder/update.js +8 -7
- package/lib/DboBuilder/update.ts +8 -7
- package/lib/Prostgles.d.ts +2 -2
- package/lib/Prostgles.d.ts.map +1 -1
- package/lib/Prostgles.js +10 -2
- package/lib/Prostgles.ts +13 -5
- package/package.json +1 -1
- package/tests/client/PID.txt +1 -1
- package/tests/server/package-lock.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/insert.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAqC,YAAY,EAAY,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAA+B,WAAW,EAA4B,YAAY,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,SAAS,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/insert.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAqC,YAAY,EAAY,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAA+B,WAAW,EAA4B,YAAY,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,SAAS,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,CA2K1N"}
|
|
@@ -6,23 +6,24 @@ const DboBuilder_1 = require("../DboBuilder");
|
|
|
6
6
|
const PubSubManager_1 = require("../PubSubManager");
|
|
7
7
|
async function insert(rowOrRows, param2, param3_unused, tableRules, localParams) {
|
|
8
8
|
// const localParams = _localParams || {};
|
|
9
|
+
const ACTION = "insert";
|
|
9
10
|
try {
|
|
10
11
|
const { onConflictDoNothing, fixIssues = false } = param2 || {};
|
|
11
12
|
const { testRule = false, returnQuery = false } = localParams || {};
|
|
12
13
|
let { returning } = param2 || {};
|
|
13
14
|
const finalDBtx = localParams?.tx?.dbTX || this.dbTX;
|
|
14
|
-
if (tableRules?.
|
|
15
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
15
16
|
if (!finalDBtx) {
|
|
16
|
-
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.
|
|
17
|
+
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.[ACTION]?.(rowOrRows, param2, param3_unused, tableRules, localParams));
|
|
17
18
|
}
|
|
18
19
|
}
|
|
19
20
|
let returningFields, forcedData, fields;
|
|
20
21
|
if (tableRules) {
|
|
21
|
-
if (!tableRules
|
|
22
|
+
if (!tableRules[ACTION])
|
|
22
23
|
throw "insert rules missing for " + this.name;
|
|
23
|
-
returningFields = tableRules.
|
|
24
|
-
forcedData = tableRules.
|
|
25
|
-
fields = tableRules.
|
|
24
|
+
returningFields = tableRules[ACTION].returningFields;
|
|
25
|
+
forcedData = tableRules[ACTION].forcedData;
|
|
26
|
+
fields = tableRules[ACTION].fields;
|
|
26
27
|
/* If no returning fields specified then take select fields as returning */
|
|
27
28
|
if (!returningFields)
|
|
28
29
|
returningFields = (0, prostgles_types_1.get)(tableRules, "select.fields") || (0, prostgles_types_1.get)(tableRules, "insert.fields");
|
|
@@ -64,7 +65,7 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
64
65
|
let fullReturning = await this.prepareReturning(returning, this.parseFieldFilter("*"));
|
|
65
66
|
/** Used for postValidate. Add any missing computed returning from original query */
|
|
66
67
|
fullReturning.concat(originalReturning.filter(s => !fullReturning.some(f => f.alias === s.alias)));
|
|
67
|
-
const finalSelect = tableRules?.
|
|
68
|
+
const finalSelect = tableRules?.[ACTION]?.postValidate ? fullReturning : originalReturning;
|
|
68
69
|
let returningSelect = this.makeReturnQuery(finalSelect);
|
|
69
70
|
const makeQuery = async (_row, isOne = false) => {
|
|
70
71
|
let row = { ..._row };
|
|
@@ -76,11 +77,11 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
76
77
|
let _data = { ...data };
|
|
77
78
|
let insertQ = "";
|
|
78
79
|
if (!Array.isArray(_data) && !(0, prostgles_types_1.getKeys)(_data).length || Array.isArray(_data) && !_data.length) {
|
|
79
|
-
await tableRules?.
|
|
80
|
+
await tableRules?.[ACTION]?.validate?.(_data, this.dbTX || this.dboBuilder.dbo);
|
|
80
81
|
insertQ = `INSERT INTO ${(0, prostgles_types_1.asName)(this.name)} DEFAULT VALUES `;
|
|
81
82
|
}
|
|
82
83
|
else {
|
|
83
|
-
insertQ = await this.colSet.getInsertQuery(_data, allowedCols, this.dbTX || this.dboBuilder.dbo, tableRules?.
|
|
84
|
+
insertQ = await this.colSet.getInsertQuery(_data, allowedCols, this.dbTX || this.dboBuilder.dbo, tableRules?.[ACTION]?.validate); // pgp.helpers.insert(_data, columnSet);
|
|
84
85
|
}
|
|
85
86
|
return insertQ + conflict_query + returningSelect;
|
|
86
87
|
};
|
|
@@ -123,12 +124,12 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
123
124
|
else {
|
|
124
125
|
result = await this.db.tx(t => t[queryType](query)).catch(err => (0, DboBuilder_1.makeErr)(err, localParams, this, allowedFieldKeys));
|
|
125
126
|
}
|
|
126
|
-
if (tableRules?.
|
|
127
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
127
128
|
if (!finalDBtx)
|
|
128
129
|
throw new Error("Unexpected: no dbTX for postValidate");
|
|
129
130
|
const rows = Array.isArray(result) ? result : [result];
|
|
130
131
|
for await (const row of rows) {
|
|
131
|
-
await tableRules?.
|
|
132
|
+
await tableRules?.[ACTION]?.postValidate(row ?? {}, finalDBtx);
|
|
132
133
|
}
|
|
133
134
|
/* We used a full returning for postValidate. Now we must filter out dissallowed columns */
|
|
134
135
|
if (returning) {
|
|
@@ -150,7 +151,7 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
150
151
|
// ${JSON.stringify(param2 || {}, null, 2)}
|
|
151
152
|
throw {
|
|
152
153
|
err: (0, DboBuilder_1.isPlainObject)(e) && e.err ? e.err : (0, DboBuilder_1.parseError)(e),
|
|
153
|
-
msg: (0, DboBuilder_1.isPlainObject)(e) && e.msg ? e.msg : `Issue with dbo.${this.name}
|
|
154
|
+
msg: (0, DboBuilder_1.isPlainObject)(e) && e.msg ? e.msg : `Issue with dbo.${this.name}.${ACTION}(...)`,
|
|
154
155
|
};
|
|
155
156
|
}
|
|
156
157
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../lib/DboBuilder/insert.ts"],"names":[],"mappings":";;;AACA,qDAAuG;AACvG,8CAAiH;AAEjH,oDAAsD;AAE/C,KAAK,UAAU,MAAM,CAAqB,SAAoC,EAAE,MAAqB,EAAE,aAAyB,EAAE,UAAsB,EAAE,WAAyB;IACxL,0CAA0C;IAE1C,IAAI;QAEF,MAAM,EAAE,mBAAmB,EAAE,SAAS,GAAG,KAAK,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QAChE,MAAM,EAAE,QAAQ,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK,EAAE,GAAG,WAAW,IAAI,EAAE,CAAC;QAEpE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,WAAW,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QACrD,IAAG,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE;
|
|
1
|
+
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../lib/DboBuilder/insert.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkC,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAiB,WAAW,EAA8B,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,SAAS,EAAe,MAAM,kBAAkB,CAAC;AAI1D,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkC,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAiB,WAAW,EAA8B,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,SAAS,EAAe,MAAM,kBAAkB,CAAC;AAI1D,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA+JzL"}
|
|
@@ -6,12 +6,13 @@ const DboBuilder_1 = require("../DboBuilder");
|
|
|
6
6
|
const PubSubManager_1 = require("../PubSubManager");
|
|
7
7
|
const uploadFile_1 = require("./uploadFile");
|
|
8
8
|
async function update(filter, _newData, params, tableRules, localParams) {
|
|
9
|
+
const ACTION = "update";
|
|
9
10
|
try {
|
|
10
11
|
/** postValidate */
|
|
11
12
|
const finalDBtx = localParams?.tx?.dbTX || this.dbTX;
|
|
12
|
-
if (tableRules?.
|
|
13
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
13
14
|
if (!finalDBtx) {
|
|
14
|
-
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.
|
|
15
|
+
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.[ACTION]?.(filter, _newData, params, tableRules, localParams));
|
|
15
16
|
}
|
|
16
17
|
}
|
|
17
18
|
let newData = _newData;
|
|
@@ -27,8 +28,8 @@ async function update(filter, _newData, params, tableRules, localParams) {
|
|
|
27
28
|
const fileManager = this.dboBuilder.prostgles.fileManager;
|
|
28
29
|
if (!fileManager)
|
|
29
30
|
throw new Error("fileManager missing");
|
|
30
|
-
const validate = tableRules?.
|
|
31
|
-
return tableRules?.
|
|
31
|
+
const validate = tableRules?.[ACTION]?.validate ? async (row) => {
|
|
32
|
+
return tableRules?.[ACTION]?.validate({ update: row, filter }, this.dbTX || this.dboBuilder.dbo);
|
|
32
33
|
} : undefined;
|
|
33
34
|
let existingFile = await (localParams?.tx?.dbTX?.[this.name] || this).findOne({ id: existingMediaId });
|
|
34
35
|
if (!existingFile?.name)
|
|
@@ -115,12 +116,12 @@ async function update(filter, _newData, params, tableRules, localParams) {
|
|
|
115
116
|
/** TODO: Delete old file at the end in case new file update fails */
|
|
116
117
|
// await oldFileDelete();
|
|
117
118
|
/** postValidate */
|
|
118
|
-
if (tableRules?.
|
|
119
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
119
120
|
if (!finalDBtx)
|
|
120
121
|
throw new Error("Unexpected: no dbTX for postValidate");
|
|
121
122
|
const rows = Array.isArray(result) ? result : [result];
|
|
122
123
|
for await (const row of rows) {
|
|
123
|
-
await tableRules?.
|
|
124
|
+
await tableRules?.[ACTION]?.postValidate(row ?? {}, finalDBtx);
|
|
124
125
|
}
|
|
125
126
|
/* We used a full returning for postValidate. Now we must filter out dissallowed columns */
|
|
126
127
|
if (returningSelect) {
|
|
@@ -138,7 +139,7 @@ async function update(filter, _newData, params, tableRules, localParams) {
|
|
|
138
139
|
catch (e) {
|
|
139
140
|
if (localParams && localParams.testRule)
|
|
140
141
|
throw e;
|
|
141
|
-
throw { err: (0, DboBuilder_1.parseError)(e), msg: `Issue with dbo.${this.name}
|
|
142
|
+
throw { err: (0, DboBuilder_1.parseError)(e), msg: `Issue with dbo.${this.name}.${ACTION}(${JSON.stringify(filter || {}, null, 2)}, ${Array.isArray(_newData) ? "...DATA[]" : "...DATA"}, ${JSON.stringify(params || {}, null, 2)})` };
|
|
142
143
|
}
|
|
143
144
|
}
|
|
144
145
|
exports.update = update;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../lib/DboBuilder/update.ts"],"names":[],"mappings":";;;AAAA,qDAA0F;AAC1F,8CAA6G;AAE7G,oDAAsD;AACtD,6CAAiD;AAE1C,KAAK,UAAU,MAAM,CAAqB,MAAc,EAAE,QAAmB,EAAE,MAAqB,EAAE,UAAsB,EAAE,WAAyB;IAC5J,IAAI;QAEF,mBAAmB;QACnB,MAAM,SAAS,GAAG,WAAW,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QACrD,IAAG,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../lib/DboBuilder/update.ts"],"names":[],"mappings":"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"}
|
package/dist/Prostgles.d.ts
CHANGED
|
@@ -117,7 +117,7 @@ export declare type ProstglesInitOptions<S = void> = {
|
|
|
117
117
|
joins?: Joins;
|
|
118
118
|
schema?: string;
|
|
119
119
|
sqlFilePath?: string;
|
|
120
|
-
onReady: OnReadyCallback
|
|
120
|
+
onReady: OnReadyCallback<S>;
|
|
121
121
|
transactions?: string | boolean;
|
|
122
122
|
wsChannelNamePrefix?: string;
|
|
123
123
|
onSocketConnect?(socket: PRGLIOSocket, dbo: DBOFullyTyped<S>, db?: DB): any;
|
|
@@ -167,7 +167,7 @@ export declare type OnReady = {
|
|
|
167
167
|
dbo: DBHandlerServer;
|
|
168
168
|
db: DB;
|
|
169
169
|
};
|
|
170
|
-
declare type OnReadyCallback = (dbo: DBOFullyTyped
|
|
170
|
+
declare type OnReadyCallback<S = void> = (dbo: DBOFullyTyped<S>, db: DB) => any;
|
|
171
171
|
import { DBOFullyTyped } from "./DBSchemaBuilder";
|
|
172
172
|
export declare class Prostgles {
|
|
173
173
|
opts: ProstglesInitOptions;
|
package/dist/Prostgles.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Prostgles.d.ts","sourceRoot":"","sources":["../lib/Prostgles.ts"],"names":[],"mappings":";AAMA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,GAAG,QAAQ,iCAAiC,CAAC,CAAC;AACvD,OAAO,WAAW,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIjF,OAAO,WAAW,EAAE,EAAc,IAAI,EAAE,MAAM,eAAe,CAAC;AAG9D,OAAO,iBAAiB,EAAE,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG/D,OAAO,EAAE,UAAU,EAAE,eAAe,EAA2C,YAAY,EAAE,MAAM,cAAc,CAAC;AAElH,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,oBAAY,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAElD,OAAO,EAA8C,SAAS,EAAkD,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC1J,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,oBAAY,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AACrD,aAAK,YAAY,GAAG,MAAM,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAClE,aAAK,gBAAgB,GAAG,EAAE,CAAC,SAAS,CAAC;AACrC,eAAO,MAAM,aAAa,sEAAuE,CAAC;
|
|
1
|
+
{"version":3,"file":"Prostgles.d.ts","sourceRoot":"","sources":["../lib/Prostgles.ts"],"names":[],"mappings":"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"}
|
package/dist/Prostgles.js
CHANGED
|
@@ -24,9 +24,17 @@ function getDbConnection(dbConnection, options, debugQueries = false, onNotice)
|
|
|
24
24
|
let pgp = pgPromise({
|
|
25
25
|
promiseLib: promise,
|
|
26
26
|
...(debugQueries ? {
|
|
27
|
-
query: function (
|
|
28
|
-
console.log({
|
|
27
|
+
query: function (ctx) {
|
|
28
|
+
console.log({
|
|
29
|
+
...(0, PubSubManager_1.pickKeys)(ctx, ["params", "query"]),
|
|
30
|
+
});
|
|
29
31
|
},
|
|
32
|
+
error: (error, ctx) => {
|
|
33
|
+
console.log({
|
|
34
|
+
...(0, PubSubManager_1.pickKeys)(ctx, ["params", "query"]),
|
|
35
|
+
error
|
|
36
|
+
});
|
|
37
|
+
}
|
|
30
38
|
} : {}),
|
|
31
39
|
...((onNotice || debugQueries) ? {
|
|
32
40
|
connect: function (client, dc, isFresh) {
|
package/dist/Prostgles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Prostgles.js","sourceRoot":"","sources":["../lib/Prostgles.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Prostgles.js","sourceRoot":"","sources":["../lib/Prostgles.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["insert.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAqC,YAAY,EAAY,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAA+B,WAAW,EAA4B,YAAY,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,SAAS,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["insert.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAqC,YAAY,EAAY,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAA+B,WAAW,EAA4B,YAAY,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,SAAS,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,CA2K1N"}
|
package/lib/DboBuilder/insert.js
CHANGED
|
@@ -6,23 +6,24 @@ const DboBuilder_1 = require("../DboBuilder");
|
|
|
6
6
|
const PubSubManager_1 = require("../PubSubManager");
|
|
7
7
|
async function insert(rowOrRows, param2, param3_unused, tableRules, localParams) {
|
|
8
8
|
// const localParams = _localParams || {};
|
|
9
|
+
const ACTION = "insert";
|
|
9
10
|
try {
|
|
10
11
|
const { onConflictDoNothing, fixIssues = false } = param2 || {};
|
|
11
12
|
const { testRule = false, returnQuery = false } = localParams || {};
|
|
12
13
|
let { returning } = param2 || {};
|
|
13
14
|
const finalDBtx = localParams?.tx?.dbTX || this.dbTX;
|
|
14
|
-
if (tableRules?.
|
|
15
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
15
16
|
if (!finalDBtx) {
|
|
16
|
-
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.
|
|
17
|
+
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.[ACTION]?.(rowOrRows, param2, param3_unused, tableRules, localParams));
|
|
17
18
|
}
|
|
18
19
|
}
|
|
19
20
|
let returningFields, forcedData, fields;
|
|
20
21
|
if (tableRules) {
|
|
21
|
-
if (!tableRules
|
|
22
|
+
if (!tableRules[ACTION])
|
|
22
23
|
throw "insert rules missing for " + this.name;
|
|
23
|
-
returningFields = tableRules.
|
|
24
|
-
forcedData = tableRules.
|
|
25
|
-
fields = tableRules.
|
|
24
|
+
returningFields = tableRules[ACTION].returningFields;
|
|
25
|
+
forcedData = tableRules[ACTION].forcedData;
|
|
26
|
+
fields = tableRules[ACTION].fields;
|
|
26
27
|
/* If no returning fields specified then take select fields as returning */
|
|
27
28
|
if (!returningFields)
|
|
28
29
|
returningFields = (0, prostgles_types_1.get)(tableRules, "select.fields") || (0, prostgles_types_1.get)(tableRules, "insert.fields");
|
|
@@ -64,7 +65,7 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
64
65
|
let fullReturning = await this.prepareReturning(returning, this.parseFieldFilter("*"));
|
|
65
66
|
/** Used for postValidate. Add any missing computed returning from original query */
|
|
66
67
|
fullReturning.concat(originalReturning.filter(s => !fullReturning.some(f => f.alias === s.alias)));
|
|
67
|
-
const finalSelect = tableRules?.
|
|
68
|
+
const finalSelect = tableRules?.[ACTION]?.postValidate ? fullReturning : originalReturning;
|
|
68
69
|
let returningSelect = this.makeReturnQuery(finalSelect);
|
|
69
70
|
const makeQuery = async (_row, isOne = false) => {
|
|
70
71
|
let row = { ..._row };
|
|
@@ -76,11 +77,11 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
76
77
|
let _data = { ...data };
|
|
77
78
|
let insertQ = "";
|
|
78
79
|
if (!Array.isArray(_data) && !(0, prostgles_types_1.getKeys)(_data).length || Array.isArray(_data) && !_data.length) {
|
|
79
|
-
await tableRules?.
|
|
80
|
+
await tableRules?.[ACTION]?.validate?.(_data, this.dbTX || this.dboBuilder.dbo);
|
|
80
81
|
insertQ = `INSERT INTO ${(0, prostgles_types_1.asName)(this.name)} DEFAULT VALUES `;
|
|
81
82
|
}
|
|
82
83
|
else {
|
|
83
|
-
insertQ = await this.colSet.getInsertQuery(_data, allowedCols, this.dbTX || this.dboBuilder.dbo, tableRules?.
|
|
84
|
+
insertQ = await this.colSet.getInsertQuery(_data, allowedCols, this.dbTX || this.dboBuilder.dbo, tableRules?.[ACTION]?.validate); // pgp.helpers.insert(_data, columnSet);
|
|
84
85
|
}
|
|
85
86
|
return insertQ + conflict_query + returningSelect;
|
|
86
87
|
};
|
|
@@ -123,12 +124,12 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
123
124
|
else {
|
|
124
125
|
result = await this.db.tx(t => t[queryType](query)).catch(err => (0, DboBuilder_1.makeErr)(err, localParams, this, allowedFieldKeys));
|
|
125
126
|
}
|
|
126
|
-
if (tableRules?.
|
|
127
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
127
128
|
if (!finalDBtx)
|
|
128
129
|
throw new Error("Unexpected: no dbTX for postValidate");
|
|
129
130
|
const rows = Array.isArray(result) ? result : [result];
|
|
130
131
|
for await (const row of rows) {
|
|
131
|
-
await tableRules?.
|
|
132
|
+
await tableRules?.[ACTION]?.postValidate(row ?? {}, finalDBtx);
|
|
132
133
|
}
|
|
133
134
|
/* We used a full returning for postValidate. Now we must filter out dissallowed columns */
|
|
134
135
|
if (returning) {
|
|
@@ -150,7 +151,7 @@ async function insert(rowOrRows, param2, param3_unused, tableRules, localParams)
|
|
|
150
151
|
// ${JSON.stringify(param2 || {}, null, 2)}
|
|
151
152
|
throw {
|
|
152
153
|
err: (0, DboBuilder_1.isPlainObject)(e) && e.err ? e.err : (0, DboBuilder_1.parseError)(e),
|
|
153
|
-
msg: (0, DboBuilder_1.isPlainObject)(e) && e.msg ? e.msg : `Issue with dbo.${this.name}
|
|
154
|
+
msg: (0, DboBuilder_1.isPlainObject)(e) && e.msg ? e.msg : `Issue with dbo.${this.name}.${ACTION}(...)`,
|
|
154
155
|
};
|
|
155
156
|
}
|
|
156
157
|
}
|
package/lib/DboBuilder/insert.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { omitKeys, pickKeys } from "../PubSubManager";
|
|
|
7
7
|
export async function insert(this: TableHandler, rowOrRows: (AnyObject | AnyObject[]), param2?: InsertParams, param3_unused?: undefined, tableRules?: TableRule, localParams?: LocalParams): Promise<any | any[] | boolean> {
|
|
8
8
|
// const localParams = _localParams || {};
|
|
9
9
|
|
|
10
|
+
const ACTION = "insert";
|
|
10
11
|
try {
|
|
11
12
|
|
|
12
13
|
const { onConflictDoNothing, fixIssues = false } = param2 || {};
|
|
@@ -14,9 +15,9 @@ export async function insert(this: TableHandler, rowOrRows: (AnyObject | AnyObje
|
|
|
14
15
|
|
|
15
16
|
let { returning } = param2 || {};
|
|
16
17
|
const finalDBtx = localParams?.tx?.dbTX || this.dbTX;
|
|
17
|
-
if(tableRules?.
|
|
18
|
+
if(tableRules?.[ACTION]?.postValidate ){
|
|
18
19
|
if(!finalDBtx){
|
|
19
|
-
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.
|
|
20
|
+
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.[ACTION]?.(rowOrRows, param2, param3_unused, tableRules, localParams))
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
|
|
@@ -25,10 +26,10 @@ export async function insert(this: TableHandler, rowOrRows: (AnyObject | AnyObje
|
|
|
25
26
|
fields: FieldFilter | undefined;
|
|
26
27
|
|
|
27
28
|
if (tableRules) {
|
|
28
|
-
if (!tableRules
|
|
29
|
-
returningFields = tableRules.
|
|
30
|
-
forcedData = tableRules.
|
|
31
|
-
fields = tableRules.
|
|
29
|
+
if (!tableRules[ACTION]) throw "insert rules missing for " + this.name;
|
|
30
|
+
returningFields = tableRules[ACTION].returningFields;
|
|
31
|
+
forcedData = tableRules[ACTION].forcedData;
|
|
32
|
+
fields = tableRules[ACTION].fields;
|
|
32
33
|
|
|
33
34
|
/* If no returning fields specified then take select fields as returning */
|
|
34
35
|
if (!returningFields) returningFields = get(tableRules, "select.fields") || get(tableRules, "insert.fields");
|
|
@@ -77,7 +78,7 @@ export async function insert(this: TableHandler, rowOrRows: (AnyObject | AnyObje
|
|
|
77
78
|
/** Used for postValidate. Add any missing computed returning from original query */
|
|
78
79
|
fullReturning.concat(originalReturning.filter(s => !fullReturning.some(f => f.alias === s.alias)));
|
|
79
80
|
|
|
80
|
-
const finalSelect = tableRules?.
|
|
81
|
+
const finalSelect = tableRules?.[ACTION]?.postValidate? fullReturning : originalReturning;
|
|
81
82
|
let returningSelect = this.makeReturnQuery(finalSelect);
|
|
82
83
|
|
|
83
84
|
const makeQuery = async (_row: AnyObject | undefined, isOne = false) => {
|
|
@@ -93,10 +94,10 @@ export async function insert(this: TableHandler, rowOrRows: (AnyObject | AnyObje
|
|
|
93
94
|
|
|
94
95
|
let insertQ = "";
|
|
95
96
|
if (!Array.isArray(_data) && !getKeys(_data).length || Array.isArray(_data) && !_data.length) {
|
|
96
|
-
await tableRules?.
|
|
97
|
+
await tableRules?.[ACTION]?.validate?.(_data, this.dbTX || this.dboBuilder.dbo);
|
|
97
98
|
insertQ = `INSERT INTO ${asName(this.name)} DEFAULT VALUES `;
|
|
98
99
|
} else {
|
|
99
|
-
insertQ = await this.colSet.getInsertQuery(_data, allowedCols, this.dbTX || this.dboBuilder.dbo, tableRules?.
|
|
100
|
+
insertQ = await this.colSet.getInsertQuery(_data, allowedCols, this.dbTX || this.dboBuilder.dbo, tableRules?.[ACTION]?.validate) // pgp.helpers.insert(_data, columnSet);
|
|
100
101
|
}
|
|
101
102
|
return insertQ + conflict_query + returningSelect;
|
|
102
103
|
};
|
|
@@ -143,11 +144,11 @@ export async function insert(this: TableHandler, rowOrRows: (AnyObject | AnyObje
|
|
|
143
144
|
result = await this.db.tx(t => (t as any)[queryType](query)).catch(err => makeErr(err, localParams, this, allowedFieldKeys));
|
|
144
145
|
}
|
|
145
146
|
|
|
146
|
-
if(tableRules?.
|
|
147
|
+
if(tableRules?.[ACTION]?.postValidate){
|
|
147
148
|
if(!finalDBtx) throw new Error("Unexpected: no dbTX for postValidate");
|
|
148
149
|
const rows = Array.isArray(result)? result : [result];
|
|
149
150
|
for await (const row of rows){
|
|
150
|
-
await tableRules?.
|
|
151
|
+
await tableRules?.[ACTION]?.postValidate(row ?? {}, finalDBtx)
|
|
151
152
|
}
|
|
152
153
|
|
|
153
154
|
/* We used a full returning for postValidate. Now we must filter out dissallowed columns */
|
|
@@ -171,7 +172,7 @@ export async function insert(this: TableHandler, rowOrRows: (AnyObject | AnyObje
|
|
|
171
172
|
// ${JSON.stringify(param2 || {}, null, 2)}
|
|
172
173
|
throw {
|
|
173
174
|
err: isPlainObject(e) && e.err? e.err : parseError(e),
|
|
174
|
-
msg: isPlainObject(e) && e.msg? e.msg : `Issue with dbo.${this.name}
|
|
175
|
+
msg: isPlainObject(e) && e.msg? e.msg : `Issue with dbo.${this.name}.${ACTION}(...)`,
|
|
175
176
|
};
|
|
176
177
|
}
|
|
177
178
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkC,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAiB,WAAW,EAA8B,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,SAAS,EAAe,MAAM,kBAAkB,CAAC;AAI1D,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkC,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAiB,WAAW,EAA8B,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,SAAS,EAAe,MAAM,kBAAkB,CAAC;AAI1D,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA+JzL"}
|
package/lib/DboBuilder/update.js
CHANGED
|
@@ -6,12 +6,13 @@ const DboBuilder_1 = require("../DboBuilder");
|
|
|
6
6
|
const PubSubManager_1 = require("../PubSubManager");
|
|
7
7
|
const uploadFile_1 = require("./uploadFile");
|
|
8
8
|
async function update(filter, _newData, params, tableRules, localParams) {
|
|
9
|
+
const ACTION = "update";
|
|
9
10
|
try {
|
|
10
11
|
/** postValidate */
|
|
11
12
|
const finalDBtx = localParams?.tx?.dbTX || this.dbTX;
|
|
12
|
-
if (tableRules?.
|
|
13
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
13
14
|
if (!finalDBtx) {
|
|
14
|
-
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.
|
|
15
|
+
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.[ACTION]?.(filter, _newData, params, tableRules, localParams));
|
|
15
16
|
}
|
|
16
17
|
}
|
|
17
18
|
let newData = _newData;
|
|
@@ -27,8 +28,8 @@ async function update(filter, _newData, params, tableRules, localParams) {
|
|
|
27
28
|
const fileManager = this.dboBuilder.prostgles.fileManager;
|
|
28
29
|
if (!fileManager)
|
|
29
30
|
throw new Error("fileManager missing");
|
|
30
|
-
const validate = tableRules?.
|
|
31
|
-
return tableRules?.
|
|
31
|
+
const validate = tableRules?.[ACTION]?.validate ? async (row) => {
|
|
32
|
+
return tableRules?.[ACTION]?.validate({ update: row, filter }, this.dbTX || this.dboBuilder.dbo);
|
|
32
33
|
} : undefined;
|
|
33
34
|
let existingFile = await (localParams?.tx?.dbTX?.[this.name] || this).findOne({ id: existingMediaId });
|
|
34
35
|
if (!existingFile?.name)
|
|
@@ -115,12 +116,12 @@ async function update(filter, _newData, params, tableRules, localParams) {
|
|
|
115
116
|
/** TODO: Delete old file at the end in case new file update fails */
|
|
116
117
|
// await oldFileDelete();
|
|
117
118
|
/** postValidate */
|
|
118
|
-
if (tableRules?.
|
|
119
|
+
if (tableRules?.[ACTION]?.postValidate) {
|
|
119
120
|
if (!finalDBtx)
|
|
120
121
|
throw new Error("Unexpected: no dbTX for postValidate");
|
|
121
122
|
const rows = Array.isArray(result) ? result : [result];
|
|
122
123
|
for await (const row of rows) {
|
|
123
|
-
await tableRules?.
|
|
124
|
+
await tableRules?.[ACTION]?.postValidate(row ?? {}, finalDBtx);
|
|
124
125
|
}
|
|
125
126
|
/* We used a full returning for postValidate. Now we must filter out dissallowed columns */
|
|
126
127
|
if (returningSelect) {
|
|
@@ -138,7 +139,7 @@ async function update(filter, _newData, params, tableRules, localParams) {
|
|
|
138
139
|
catch (e) {
|
|
139
140
|
if (localParams && localParams.testRule)
|
|
140
141
|
throw e;
|
|
141
|
-
throw { err: (0, DboBuilder_1.parseError)(e), msg: `Issue with dbo.${this.name}
|
|
142
|
+
throw { err: (0, DboBuilder_1.parseError)(e), msg: `Issue with dbo.${this.name}.${ACTION}(${JSON.stringify(filter || {}, null, 2)}, ${Array.isArray(_newData) ? "...DATA[]" : "...DATA"}, ${JSON.stringify(params || {}, null, 2)})` };
|
|
142
143
|
}
|
|
143
144
|
}
|
|
144
145
|
exports.update = update;
|
package/lib/DboBuilder/update.ts
CHANGED
|
@@ -5,13 +5,14 @@ import { omitKeys, pickKeys } from "../PubSubManager";
|
|
|
5
5
|
import { isFile, uploadFile } from "./uploadFile"
|
|
6
6
|
|
|
7
7
|
export async function update(this: TableHandler, filter: Filter, _newData: AnyObject, params?: UpdateParams, tableRules?: TableRule, localParams?: LocalParams): Promise<AnyObject | void> {
|
|
8
|
+
const ACTION = "update";
|
|
8
9
|
try {
|
|
9
10
|
|
|
10
11
|
/** postValidate */
|
|
11
12
|
const finalDBtx = localParams?.tx?.dbTX || this.dbTX;
|
|
12
|
-
if(tableRules?.
|
|
13
|
+
if(tableRules?.[ACTION]?.postValidate ){
|
|
13
14
|
if(!finalDBtx){
|
|
14
|
-
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.
|
|
15
|
+
return this.dboBuilder.getTX(_dbtx => _dbtx[this.name]?.[ACTION]?.(filter, _newData, params, tableRules, localParams))
|
|
15
16
|
}
|
|
16
17
|
}
|
|
17
18
|
|
|
@@ -26,8 +27,8 @@ export async function update(this: TableHandler, filter: Filter, _newData: AnyOb
|
|
|
26
27
|
} else {
|
|
27
28
|
const fileManager = this.dboBuilder.prostgles.fileManager
|
|
28
29
|
if(!fileManager) throw new Error("fileManager missing");
|
|
29
|
-
const validate: ValidateRow | undefined = tableRules?.
|
|
30
|
-
return tableRules?.
|
|
30
|
+
const validate: ValidateRow | undefined = tableRules?.[ACTION]?.validate? async (row) => {
|
|
31
|
+
return tableRules?.[ACTION]?.validate!({ update: row, filter }, this.dbTX || this.dboBuilder.dbo)
|
|
31
32
|
} : undefined;
|
|
32
33
|
|
|
33
34
|
let existingFile: Media | undefined = await (localParams?.tx?.dbTX?.[this.name] as TableHandler || this).findOne({ id: existingMediaId });
|
|
@@ -136,11 +137,11 @@ export async function update(this: TableHandler, filter: Filter, _newData: AnyOb
|
|
|
136
137
|
// await oldFileDelete();
|
|
137
138
|
|
|
138
139
|
/** postValidate */
|
|
139
|
-
if(tableRules?.
|
|
140
|
+
if(tableRules?.[ACTION]?.postValidate){
|
|
140
141
|
if(!finalDBtx) throw new Error("Unexpected: no dbTX for postValidate");
|
|
141
142
|
const rows = Array.isArray(result)? result : [result];
|
|
142
143
|
for await (const row of rows){
|
|
143
|
-
await tableRules?.
|
|
144
|
+
await tableRules?.[ACTION]?.postValidate(row ?? {}, finalDBtx)
|
|
144
145
|
}
|
|
145
146
|
|
|
146
147
|
/* We used a full returning for postValidate. Now we must filter out dissallowed columns */
|
|
@@ -160,6 +161,6 @@ export async function update(this: TableHandler, filter: Filter, _newData: AnyOb
|
|
|
160
161
|
|
|
161
162
|
} catch (e) {
|
|
162
163
|
if (localParams && localParams.testRule) throw e;
|
|
163
|
-
throw { err: parseError(e), msg: `Issue with dbo.${this.name}
|
|
164
|
+
throw { err: parseError(e), msg: `Issue with dbo.${this.name}.${ACTION}(${JSON.stringify(filter || {}, null, 2)}, ${Array.isArray(_newData)? "...DATA[]": "...DATA"}, ${JSON.stringify(params || {}, null, 2)})` };
|
|
164
165
|
}
|
|
165
166
|
};
|
package/lib/Prostgles.d.ts
CHANGED
|
@@ -117,7 +117,7 @@ export declare type ProstglesInitOptions<S = void> = {
|
|
|
117
117
|
joins?: Joins;
|
|
118
118
|
schema?: string;
|
|
119
119
|
sqlFilePath?: string;
|
|
120
|
-
onReady: OnReadyCallback
|
|
120
|
+
onReady: OnReadyCallback<S>;
|
|
121
121
|
transactions?: string | boolean;
|
|
122
122
|
wsChannelNamePrefix?: string;
|
|
123
123
|
onSocketConnect?(socket: PRGLIOSocket, dbo: DBOFullyTyped<S>, db?: DB): any;
|
|
@@ -167,7 +167,7 @@ export declare type OnReady = {
|
|
|
167
167
|
dbo: DBHandlerServer;
|
|
168
168
|
db: DB;
|
|
169
169
|
};
|
|
170
|
-
declare type OnReadyCallback = (dbo: DBOFullyTyped
|
|
170
|
+
declare type OnReadyCallback<S = void> = (dbo: DBOFullyTyped<S>, db: DB) => any;
|
|
171
171
|
import { DBOFullyTyped } from "./DBSchemaBuilder";
|
|
172
172
|
export declare class Prostgles {
|
|
173
173
|
opts: ProstglesInitOptions;
|
package/lib/Prostgles.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Prostgles.d.ts","sourceRoot":"","sources":["Prostgles.ts"],"names":[],"mappings":";AAMA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,GAAG,QAAQ,iCAAiC,CAAC,CAAC;AACvD,OAAO,WAAW,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIjF,OAAO,WAAW,EAAE,EAAc,IAAI,EAAE,MAAM,eAAe,CAAC;AAG9D,OAAO,iBAAiB,EAAE,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG/D,OAAO,EAAE,UAAU,EAAE,eAAe,EAA2C,YAAY,EAAE,MAAM,cAAc,CAAC;AAElH,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,oBAAY,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAElD,OAAO,EAA8C,SAAS,EAAkD,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC1J,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,oBAAY,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AACrD,aAAK,YAAY,GAAG,MAAM,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAClE,aAAK,gBAAgB,GAAG,EAAE,CAAC,SAAS,CAAC;AACrC,eAAO,MAAM,aAAa,sEAAuE,CAAC;
|
|
1
|
+
{"version":3,"file":"Prostgles.d.ts","sourceRoot":"","sources":["Prostgles.ts"],"names":[],"mappings":"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"}
|
package/lib/Prostgles.js
CHANGED
|
@@ -50,9 +50,17 @@ function getDbConnection(dbConnection, options, debugQueries = false, onNotice)
|
|
|
50
50
|
let pgp = pgPromise({
|
|
51
51
|
promiseLib: promise,
|
|
52
52
|
...(debugQueries ? {
|
|
53
|
-
query: function (
|
|
54
|
-
console.log({
|
|
53
|
+
query: function (ctx) {
|
|
54
|
+
console.log({
|
|
55
|
+
...(0, PubSubManager_1.pickKeys)(ctx, ["params", "query"]),
|
|
56
|
+
});
|
|
55
57
|
},
|
|
58
|
+
error: (error, ctx) => {
|
|
59
|
+
console.log({
|
|
60
|
+
...(0, PubSubManager_1.pickKeys)(ctx, ["params", "query"]),
|
|
61
|
+
error
|
|
62
|
+
});
|
|
63
|
+
}
|
|
56
64
|
} : {}),
|
|
57
65
|
...((onNotice || debugQueries) ? {
|
|
58
66
|
connect: function (client, dc, isFresh) {
|
package/lib/Prostgles.ts
CHANGED
|
@@ -17,7 +17,7 @@ import TableConfigurator, { TableConfig } from "./TableConfig";
|
|
|
17
17
|
|
|
18
18
|
import { get } from "./utils";
|
|
19
19
|
import { DboBuilder, DBHandlerServer, isPlainObject, LocalParams, TableSchema, PRGLIOSocket } from "./DboBuilder";
|
|
20
|
-
import { PubSubManager, DEFAULT_SYNC_BATCH_SIZE, asValue } from "./PubSubManager";
|
|
20
|
+
import { PubSubManager, DEFAULT_SYNC_BATCH_SIZE, asValue, pickKeys } from "./PubSubManager";
|
|
21
21
|
export { DBHandlerServer }
|
|
22
22
|
export type PGP = pgPromise.IMain<{}, pg.IClient>;
|
|
23
23
|
|
|
@@ -34,9 +34,17 @@ function getDbConnection(dbConnection: DbConnection, options: DbConnectionOpts |
|
|
|
34
34
|
|
|
35
35
|
promiseLib: promise,
|
|
36
36
|
...(debugQueries ? {
|
|
37
|
-
query: function (
|
|
38
|
-
console.log({
|
|
37
|
+
query: function (ctx) {
|
|
38
|
+
console.log({
|
|
39
|
+
...pickKeys(ctx, ["params", "query"]),
|
|
40
|
+
});
|
|
39
41
|
},
|
|
42
|
+
error: (error, ctx) => {
|
|
43
|
+
console.log({
|
|
44
|
+
...pickKeys(ctx, ["params", "query"]),
|
|
45
|
+
error
|
|
46
|
+
});
|
|
47
|
+
}
|
|
40
48
|
} : {}),
|
|
41
49
|
...((onNotice || debugQueries) ? {
|
|
42
50
|
connect: function (client, dc, isFresh) {
|
|
@@ -204,7 +212,7 @@ export type ProstglesInitOptions<S = void> = {
|
|
|
204
212
|
joins?: Joins;
|
|
205
213
|
schema?: string;
|
|
206
214
|
sqlFilePath?: string;
|
|
207
|
-
onReady: OnReadyCallback
|
|
215
|
+
onReady: OnReadyCallback<S>;
|
|
208
216
|
transactions?: string | boolean;
|
|
209
217
|
wsChannelNamePrefix?: string;
|
|
210
218
|
onSocketConnect?(socket: PRGLIOSocket, dbo: DBOFullyTyped<S>, db?: DB): any;
|
|
@@ -267,7 +275,7 @@ export type OnReady = {
|
|
|
267
275
|
db: DB;
|
|
268
276
|
}
|
|
269
277
|
|
|
270
|
-
type OnReadyCallback = (dbo: DBOFullyTyped
|
|
278
|
+
type OnReadyCallback<S = void> = (dbo: DBOFullyTyped<S>, db: DB) => any;
|
|
271
279
|
|
|
272
280
|
const DEFAULT_KEYWORDS = {
|
|
273
281
|
$filter: "$filter",
|
package/package.json
CHANGED
package/tests/client/PID.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
27795
|