prostgles-server 2.0.157 → 2.0.158
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.d.ts.map +1 -1
- package/dist/DboBuilder.js +8 -6
- package/dist/DboBuilder.js.map +1 -1
- package/dist/PubSubManager.d.ts +3 -2
- package/dist/PubSubManager.d.ts.map +1 -1
- package/dist/PubSubManager.js +13 -13
- package/dist/PubSubManager.js.map +1 -1
- package/dist/SyncReplication.d.ts +1 -1
- package/dist/SyncReplication.d.ts.map +1 -1
- package/dist/SyncReplication.js +21 -19
- package/dist/SyncReplication.js.map +1 -1
- package/lib/DboBuilder.ts +8 -7
- package/lib/PubSubManager.ts +13 -13
- package/lib/SyncReplication.ts +24 -24
- package/package.json +2 -2
- package/tests/client/PID.txt +1 -1
- package/tests/client/package-lock.json +15 -15
- package/tests/client/package.json +1 -1
- package/tests/client_only_queries.js +26 -20
- package/tests/client_only_queries.ts +27 -18
- package/tests/isomorphic_queries.js +178 -231
- package/tests/isomorphic_queries.ts +2 -61
- package/tests/server/package-lock.json +186 -50
- package/tests/server/package.json +2 -2
package/dist/PubSubManager.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*--------------------------------------------------------------------------------------------*/
|
|
6
6
|
var _a;
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.
|
|
8
|
+
exports.pickKeys = exports.omitKeys = exports.PubSubManager = exports.log = exports.DEFAULT_SYNC_BATCH_SIZE = exports.asValue = void 0;
|
|
9
9
|
const PostgresNotifListenManager_1 = require("./PostgresNotifListenManager");
|
|
10
10
|
const utils_1 = require("./utils");
|
|
11
11
|
const Prostgles_1 = require("./Prostgles");
|
|
@@ -860,8 +860,7 @@ class PubSubManager {
|
|
|
860
860
|
const subs = this.getSubs(table_name, condition);
|
|
861
861
|
const syncs = this.getSyncs(table_name, condition);
|
|
862
862
|
syncs.map((s) => {
|
|
863
|
-
(
|
|
864
|
-
this.syncData(s);
|
|
863
|
+
this.syncData(s, undefined, "trigger");
|
|
865
864
|
});
|
|
866
865
|
if (!subs) {
|
|
867
866
|
// console.error(`sub missing for ${table_name} ${condition}`, this.triggers);
|
|
@@ -1027,8 +1026,8 @@ class PubSubManager {
|
|
|
1027
1026
|
socket.on("disconnect", () => this.onSocketDisconnected(socket));
|
|
1028
1027
|
}
|
|
1029
1028
|
}
|
|
1030
|
-
async syncData(sync, clientData) {
|
|
1031
|
-
return await (0, SyncReplication_1.syncData)(this, sync, clientData);
|
|
1029
|
+
async syncData(sync, clientData, source) {
|
|
1030
|
+
return await (0, SyncReplication_1.syncData)(this, sync, clientData, source);
|
|
1032
1031
|
}
|
|
1033
1032
|
/**
|
|
1034
1033
|
* Returns a sync channel
|
|
@@ -1103,7 +1102,7 @@ class PubSubManager {
|
|
|
1103
1102
|
// } else
|
|
1104
1103
|
if (data.onSyncRequest) {
|
|
1105
1104
|
// console.log("syncData from socket")
|
|
1106
|
-
this.syncData(newSync, data.onSyncRequest);
|
|
1105
|
+
this.syncData(newSync, data.onSyncRequest, "client");
|
|
1107
1106
|
// console.log("onSyncRequest ", socket._user)
|
|
1108
1107
|
}
|
|
1109
1108
|
else {
|
|
@@ -1357,22 +1356,23 @@ PubSubManager.create = async (options) => {
|
|
|
1357
1356
|
return await res.init();
|
|
1358
1357
|
};
|
|
1359
1358
|
PubSubManager.EXCLUDE_QUERY_FROM_SCHEMA_WATCH_ID = "prostgles internal query that should be excluded from ";
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1359
|
+
function omitKeys(obj, exclude) {
|
|
1360
|
+
return pickKeys(obj, (0, prostgles_types_1.getKeys)(obj ?? []).filter(k => !exclude.includes(k)));
|
|
1361
|
+
}
|
|
1362
|
+
exports.omitKeys = omitKeys;
|
|
1363
|
+
function pickKeys(obj, include = []) {
|
|
1364
|
+
let keys = include;
|
|
1364
1365
|
if (!keys.length) {
|
|
1365
|
-
// console.warn("filterObj: returning empty object");
|
|
1366
1366
|
return {};
|
|
1367
1367
|
}
|
|
1368
1368
|
if (obj && keys.length) {
|
|
1369
1369
|
let res = {};
|
|
1370
|
-
keys.
|
|
1370
|
+
keys.forEach(k => {
|
|
1371
1371
|
res[k] = obj[k];
|
|
1372
1372
|
});
|
|
1373
1373
|
return res;
|
|
1374
1374
|
}
|
|
1375
1375
|
return obj;
|
|
1376
1376
|
}
|
|
1377
|
-
exports.
|
|
1377
|
+
exports.pickKeys = pickKeys;
|
|
1378
1378
|
//# sourceMappingURL=PubSubManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../lib/PubSubManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../lib/PubSubManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,5 +30,5 @@ export declare type ClientExpressData = ClientSyncInfo & {
|
|
|
30
30
|
data?: AnyObject[];
|
|
31
31
|
deleted?: AnyObject[];
|
|
32
32
|
};
|
|
33
|
-
export declare const syncData: (_this: PubSubManager, sync: SyncParams, clientData
|
|
33
|
+
export declare const syncData: (_this: PubSubManager, sync: SyncParams, clientData: ClientExpressData | undefined, source: "trigger" | "client") => Promise<void>;
|
|
34
34
|
//# sourceMappingURL=SyncReplication.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncReplication.d.ts","sourceRoot":"","sources":["../lib/SyncReplication.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"SyncReplication.d.ts","sourceRoot":"","sources":["../lib/SyncReplication.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,UAAU,EAA2B,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAgB,SAAS,EAAmB,MAAM,iBAAiB,CAAC;AAG3E,oBAAY,cAAc,GAAG,OAAO,CAAC;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B,CAAC,CAAC;AAEH,oBAAY,cAAc,GAAG,OAAO,CAAC;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B,CAAC,CAAA;AAEF,oBAAY,aAAa,GAAG,OAAO,CAAC;IAChC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC,CAAC;AAEH,oBAAY,qBAAqB,GAAG;IAChC,aAAa,CAAC,EAAE,cAAc,CAAA;CACjC,GAAG;IACA,GAAG,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3B,CAAC;AAEF,oBAAY,iBAAiB,GAAG,cAAc,GAAG;IAC7C,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;CACzB,CAAA;AAMD,eAAO,MAAM,QAAQ,UAAiB,aAAa,QAAQ,UAAU,cAAc,iBAAiB,GAAG,SAAS,UAAU,SAAS,GAAG,QAAQ,kBA6d7I,CAAA"}
|
package/dist/SyncReplication.js
CHANGED
|
@@ -6,8 +6,8 @@ const prostgles_types_1 = require("prostgles-types");
|
|
|
6
6
|
function getNumbers(numberArr) {
|
|
7
7
|
return numberArr.filter(v => v !== null && v !== undefined && Number.isFinite(+v));
|
|
8
8
|
}
|
|
9
|
-
const syncData = async (_this, sync, clientData) => {
|
|
10
|
-
|
|
9
|
+
const syncData = async (_this, sync, clientData, source) => {
|
|
10
|
+
(0, PubSubManager_1.log)("syncData", { clientData, sync: (0, PubSubManager_1.pickKeys)(sync, ["filter", "last_synced", "lr", "is_syncing"]), source });
|
|
11
11
|
const { socket_id, channel_name, table_name, filter, table_rules, allow_delete = false, params, synced_field, id_fields = [], batch_size, wal, throttle = 0 } = sync, socket = _this.sockets[socket_id];
|
|
12
12
|
if (!socket) {
|
|
13
13
|
console.error("Orphaned socket", { sync, clientData });
|
|
@@ -98,7 +98,7 @@ const syncData = async (_this, sync, clientData) => {
|
|
|
98
98
|
// console.log("deleteData deleteData deleteData " + deleted.length);
|
|
99
99
|
if (allow_delete) {
|
|
100
100
|
return Promise.all(deleted.map(async (d) => {
|
|
101
|
-
const id_filter = (0, PubSubManager_1.
|
|
101
|
+
const id_filter = (0, PubSubManager_1.pickKeys)(d, id_fields);
|
|
102
102
|
try {
|
|
103
103
|
await _this.dbo[table_name].delete(id_filter, undefined, undefined, table_rules);
|
|
104
104
|
return 1;
|
|
@@ -118,45 +118,47 @@ const syncData = async (_this, sync, clientData) => {
|
|
|
118
118
|
* Upserts the given client data where synced_field is higher than on server
|
|
119
119
|
*/
|
|
120
120
|
upsertData = (data, isExpress = false) => {
|
|
121
|
-
let inserted = 0, updated = 0, total = data.length;
|
|
122
121
|
// console.log("isExpress", isExpress, data);
|
|
123
122
|
return _this.dboBuilder.getTX(async (dbTX) => {
|
|
124
123
|
const tbl = dbTX[table_name];
|
|
125
|
-
const existingData = await tbl.find({ $or: data.map(d => (0, PubSubManager_1.
|
|
124
|
+
const existingData = await tbl.find({ $or: data.map(d => (0, PubSubManager_1.pickKeys)(d, id_fields)) }, {
|
|
126
125
|
select: [synced_field, ...id_fields],
|
|
127
126
|
orderBy: orderByAsc,
|
|
128
127
|
}, undefined, table_rules);
|
|
129
|
-
|
|
130
|
-
|
|
128
|
+
let inserts = data.filter(d => !existingData.find(ed => rowsIdsMatch(ed, d)));
|
|
129
|
+
let updates = data.filter(d => existingData.find(ed => rowsIdsMatch(ed, d) && +ed[synced_field] < +d[synced_field]));
|
|
131
130
|
try {
|
|
132
131
|
if (!table_rules)
|
|
133
132
|
throw "table_rules missing";
|
|
134
133
|
if (table_rules.update && updates.length) {
|
|
135
134
|
let updateData = [];
|
|
136
135
|
await Promise.all(updates.map(upd => {
|
|
137
|
-
const id_filter = (0, PubSubManager_1.
|
|
136
|
+
const id_filter = (0, PubSubManager_1.pickKeys)(upd, id_fields);
|
|
138
137
|
const syncSafeFilter = { $and: [id_filter, { [synced_field]: { "<": upd[synced_field] } }] };
|
|
139
|
-
|
|
140
|
-
updateData.push([syncSafeFilter, (0, PubSubManager_1.filterObj)(upd, [], id_fields)]);
|
|
138
|
+
updateData.push([syncSafeFilter, (0, PubSubManager_1.omitKeys)(upd, id_fields)]);
|
|
141
139
|
}));
|
|
142
140
|
await tbl.updateBatch(updateData, { fixIssues: true }, table_rules);
|
|
143
|
-
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
updates = [];
|
|
144
144
|
}
|
|
145
145
|
if (table_rules.insert && inserts.length) {
|
|
146
146
|
// const qs = await tbl.insert(inserts, { fixIssues: true }, null, table_rules, { returnQuery: true });
|
|
147
147
|
// console.log("inserts", qs)
|
|
148
148
|
await tbl.insert(inserts, { fixIssues: true }, undefined, table_rules);
|
|
149
|
-
inserted = inserts.length;
|
|
150
149
|
}
|
|
151
|
-
|
|
150
|
+
else {
|
|
151
|
+
inserts = [];
|
|
152
|
+
}
|
|
153
|
+
return { inserts, updates };
|
|
152
154
|
}
|
|
153
155
|
catch (e) {
|
|
154
156
|
console.trace(e);
|
|
155
157
|
throw e;
|
|
156
158
|
}
|
|
157
|
-
}).then(
|
|
158
|
-
(0, PubSubManager_1.log)(`upsertData: inserted( ${
|
|
159
|
-
return { inserted, updated, total };
|
|
159
|
+
}).then(({ inserts, updates }) => {
|
|
160
|
+
(0, PubSubManager_1.log)(`upsertData: inserted( ${inserts.length} ) updated( ${updates.length} ) total( ${data.length} ) \n last insert ${JSON.stringify(inserts.at(-1))} \n last update ${JSON.stringify(updates.at(-1))}`);
|
|
161
|
+
return { inserted: inserts.length, updated: updates.length, total: data.length };
|
|
160
162
|
})
|
|
161
163
|
.catch(err => {
|
|
162
164
|
console.trace("Something went wrong with syncing to server: \n ->", err, data.length, id_fields);
|
|
@@ -283,7 +285,7 @@ const syncData = async (_this, sync, clientData) => {
|
|
|
283
285
|
});
|
|
284
286
|
await Promise.all(to_delete.map(d => {
|
|
285
287
|
deleted++;
|
|
286
|
-
return _this.dbo[table_name].delete((0, PubSubManager_1.
|
|
288
|
+
return _this.dbo[table_name].delete((0, PubSubManager_1.pickKeys)(d, id_fields), {}, undefined, table_rules);
|
|
287
289
|
}));
|
|
288
290
|
sData = await getServerData(min_synced, offset);
|
|
289
291
|
}
|
|
@@ -338,7 +340,7 @@ const syncData = async (_this, sync, clientData) => {
|
|
|
338
340
|
/**
|
|
339
341
|
* After all data was inserted request SyncInfo from client and sync again if necessary
|
|
340
342
|
*/
|
|
341
|
-
_this.syncData(sync, undefined);
|
|
343
|
+
_this.syncData(sync, undefined, source);
|
|
342
344
|
},
|
|
343
345
|
});
|
|
344
346
|
}
|
|
@@ -350,7 +352,7 @@ const syncData = async (_this, sync, clientData) => {
|
|
|
350
352
|
_this.syncTimeout = setTimeout(() => {
|
|
351
353
|
_this.syncTimeout = undefined;
|
|
352
354
|
// console.log("SYNC FROM TIMEOUT")
|
|
353
|
-
_this.syncData(sync, undefined);
|
|
355
|
+
_this.syncData(sync, undefined, source);
|
|
354
356
|
}, throttle);
|
|
355
357
|
}
|
|
356
358
|
// console.log("SYNC THROTTLE")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncReplication.js","sourceRoot":"","sources":["../lib/SyncReplication.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SyncReplication.js","sourceRoot":"","sources":["../lib/SyncReplication.ts"],"names":[],"mappings":";;;AACA,mDAAqF;AACrF,qDAA2E;AAsC3E,SAAS,UAAU,CAAC,SAAiD;IACjE,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;AAC9F,CAAC;AAEM,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAoB,EAAE,IAAgB,EAAE,UAAyC,EAAE,MAA4B,EAAE,EAAE;IAC9I,IAAA,mBAAG,EAAC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,IAAA,wBAAQ,EAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,EAAG,MAAM,EAAE,CAAC,CAAA;IAC7G,MAAM,EACE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAC3C,WAAW,EAAE,YAAY,GAAG,KAAK,EAAE,MAAM,EACzC,YAAY,EAAE,SAAS,GAAG,EAAE,EAAE,UAAU,EACxC,GAAG,EAAE,QAAQ,GAAG,CAAC,EACpB,GAAG,IAAI,EACR,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEtC,IAAG,CAAC,MAAM,EAAE;QACR,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QACvD,OAAO;KACV;IAED,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,EACnD,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EACpE,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;IACtE,wGAAwG;IACxG,8DAA8D;IAC9D,YAAY,GAAG,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE;QAC5C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IACxF,CAAC,EACD,cAAc,GAAG,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE;QAC9C,OAAO,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/F,CAAC,EACD,gBAAgB,GAAG,KAAK,EAAE,OAAwB,EAAE,EAA2B,EAAE;QAC7E,MAAM,EAAE,WAAW,GAAG,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACzE,IAAI,OAAO,GAAc,EAAE,GAAG,MAAM,EAAE,CAAC;QAEvC,IAAG,WAAW,IAAI,SAAS,EAAC;YACxB,OAAO,CAAC,YAAY,CAAC,GAAG;gBACpB,GAAG,CAAC,WAAW,CAAA,CAAC,CAAC,EAAG,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,GAAG,CAAC,SAAS,CAAA,CAAC,CAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C,CAAA;SACJ;QACD,IAAG,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,KAAK,SAAS,IAAI,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,KAAK,SAAS,EAAE;YAC7F,MAAM,OAAO,UAAU,4CAA4C,CAAC;SACvE;QAED,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAG,UAAsB,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACpK,MAAM,SAAS,GAAG,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,kLAAkL;QAClL,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAEjG,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;IAC1F,CAAC,EACD,gBAAgB,GAAG,CAAC,OAAsB,EAAE,EAAE,EAAE;QAC5C,MAAM,EAAE,WAAW,GAAG,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACzE,IAAI,GAAG,GAAG,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,aAAa,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA,oBAAoB;YAC/E,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC,IAA4B,EAAE,EAAE;gBAC1E,IAAG,IAAI,IAAI,eAAe,IAAI,IAAI,IAAI,IAAI,EAAE,aAAa,EAAC;oBACtD,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAC9B,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAC9B,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;oBAEzC,qEAAqE;oBACrE,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;iBAC3C;qBAAM,IAAG,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,EAAE,GAAG,EAAC;oBACzC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACpB;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACf,CAAC,EACD,aAAa,GAAG,CAAC,WAAW,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAwB,EAAE;QAClE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,aAAa,GAAG,EAAE,WAAW,EAAE,WAAW,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;YAChG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,EAAG,KAAK,EAAE,IAA6B,EAAE,EAAE;gBAClF,IAAG,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC;oBAC7C,qDAAqD;oBACrD,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;iBACtC;qBAAM;oBACH,MAAM,CAAC,qCAAqC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;iBACxE;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,SAAS,cAAc,CAAC,IAAiB;YACrC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACtB,gEAAgE;gBAChE,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1J,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC,EACD,aAAa,GAAG,KAAK,EAAE,WAAW,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAwB,EAAE;QACxE,IAAI,OAAO,GAAG;YACV,GAAG,MAAM;YACT,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,IAAI,CAAC,EAAE;SAC7C,CAAC;QAEF,IAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI;YAAE,MAAM,2CAA2C,CAAC;QAEtF,IAAI;YACA,IAAI,GAAG,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CACtC,OAAO,EACP;gBACI,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAG,UAAsB;gBAChC,MAAM,EAAE,MAAM,IAAI,CAAC;gBACnB,KAAK,EAAE,UAAU;aACpB,EACD,SAAS,EACT,WAAW,CACd,CAAC;YAEF,IAAG,CAAC,GAAG;gBAAE,MAAM,2CAA2C,CAAC;YAE3D,OAAO,GAAG,CAAC;SACd;QAAC,OAAM,CAAC,EAAC;YACN,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC;YAChD,MAAM,gBAAgB,CAAA;SACzB;IACL,CAAC,EACD,UAAU,GAAG,KAAK,EAAE,OAAoB,EAAE,EAAE;QACxC,sEAAsE;QACtE,IAAG,YAAY,EAAC;YACZ,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;gBACrC,MAAM,SAAS,GAAG,IAAA,wBAAQ,EAAC,CAAC,EAAE,SAAS,CAAC,CAAC;gBACzC,IAAI;oBACA,MAAO,KAAK,CAAC,GAAG,CAAC,UAAU,CAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;oBACnG,OAAO,CAAC,CAAC;iBACZ;gBAAC,OAAO,CAAC,EAAC;oBACP,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;iBACnB;gBACD,OAAO,CAAC,CAAC;YACb,CAAC,CAAC,CAAC,CAAA;SACN;aAAM;YACH,OAAO,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAA;SACzF;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,UAAU,GAAG,CAAC,IAAiB,EAAE,SAAS,GAAG,KAAK,EAAE,EAAE;QAElD,6CAA6C;QAE7C,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAiB,CAAC;YAC7C,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,CAC/B,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,wBAAQ,EAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,EAC9C;gBACI,MAAM,EAAE,CAAC,YAAY,EAAE,GAAG,SAAS,CAAC;gBACpC,OAAO,EAAG,UAAsB;aACnC,EACD,SAAS,EACT,WAAW,CACd,CAAC;YACF,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9E,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAE,CAAC;YACvH,IAAI;gBACA,IAAG,CAAC,WAAW;oBAAE,MAAM,qBAAqB,CAAA;gBAC5C,IAAG,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAC;oBACpC,IAAI,UAAU,GAAiB,EAAE,CAAC;oBAClC,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;wBAChC,MAAM,SAAS,GAAG,IAAA,wBAAQ,EAAC,GAAG,EAAE,SAAS,CAAC,CAAC;wBAC3C,MAAM,cAAc,GAAG,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,CAAE,EAAE,CAAA;wBAE7F,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,IAAA,wBAAQ,EAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;oBAC/D,CAAC,CAAC,CAAC,CAAC;oBACJ,MAAM,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;iBACvE;qBAAM;oBACH,OAAO,GAAG,EAAE,CAAC;iBAChB;gBAED,IAAG,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAC;oBACpC,uGAAuG;oBACvG,6BAA6B;oBAC7B,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;iBAC1E;qBAAM;oBACH,OAAO,GAAG,EAAE,CAAC;iBAChB;gBAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;aAC/B;YAAC,OAAM,CAAC,EAAE;gBACP,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,MAAM,CAAC,CAAC;aACX;QAEL,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;YAC7B,IAAA,mBAAG,EAAC,yBAAyB,OAAO,CAAC,MAAM,kBAAkB,OAAO,CAAC,MAAM,iBAAiB,IAAI,CAAC,MAAM,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/M,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAG,OAAO,EAAE,OAAO,CAAC,MAAM,EAAG,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACvF,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACT,OAAO,CAAC,KAAK,CAAC,oDAAoD,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACjG,OAAO,OAAO,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAA;QAC1E,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,QAAQ,GAAG,KAAK,EAAE,IAAkB,EAAE,QAAQ,GAAG,KAAK,EAAE,MAAW,IAAI,EAAE,EAAE;QACvE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAsB,EAAE,EAAE;gBAErE,IAAG,IAAI,IAAI,IAAI,CAAC,EAAE,EAAC;oBACf,0EAA0E;oBAC1E,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;iBAE1C;qBAAM;oBACH,MAAM,CAAC,IAAI,CAAC,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;iBACxC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,aAAa,GAAG,KAAK,EAAE,cAA+B,EAA0B,EAAE;QAE9E,sBAAsB;QACtB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,IAAI,MAAM,gBAAgB,EAAE,CAAC;QAC3E,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,gBAAgB,EAAE,CAAC;QAEzD,0DAA0D;QAE1D,IAAI,MAAM,GAAG,IAAI,CAAC;QAElB,qBAAqB;QACrB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,EAAC,EAAG,2BAA2B;YAC3E,2BAA2B;YAC3B,MAAM,GAAG,IAAI,CAAC;YAElB,qBAAqB;SACpB;aAAM,IAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YACnC,IAAG,IAAI,IAAI,IAAI,EAAC;gBACZ,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;aAE7D;iBAAM,IAAG,IAAI,IAAI,IAAI,EAAE;gBACpB,MAAM,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;aACzC;YAEL,0CAA0C;SACzC;aAAM,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,EAAC;YAElC,IAAG,IAAI,IAAI,IAAI,EAAC;gBACZ,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;aAC9E;iBAAM;gBACH,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YAED,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC5D,IAAI,UAAU,GAAG,CAAC,CAAC,CAAA,kCAAkC;YACrD,IAAI,IAAI,GAAG,CAAC,CAAC;YAEb,OAAM,SAAS,GAAG,CAAC,IAAI,UAAU,GAAG,SAAS,EAAC;gBAC1C,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,MAAM,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;gBAClG,8DAA8D;gBAC9D,IAAI,UAAU,CAAC;gBAEf,IAAG,IAAI,EAAC;oBACJ,IAAI,OAAO,GAAc,EAAE,CAAC;oBAC5B,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;wBAClB,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC7B,CAAC,CAAC,CAAC;oBACH,UAAU,GAAG,MAAM,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;iBAC3H;gBAED,4DAA4D;gBAC5D,IAAG,UAAU,IAAI,UAAU,CAAC,MAAM,EAAC;oBAC/B,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;oBAE3B,MAAM,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;oBACnC,UAAU,GAAG,SAAS,CAAC;oBACvB,qEAAqE;iBACxE;qBAAM;oBACH,UAAU,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3C,yEAAyE;iBAC5E;gBAED,IAAI,EAAE,CAAC;aACV;SACJ;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,EAED,YAAY,GAAG,CAAC,IAAe,EAAE,EAAE;QAC/B,IAAG,IAAI,CAAC,MAAM,EAAC;YACX,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACtC,IAAG,IAAI,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,EAAC;gBAC5E,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,6DAA6D,EAAC,CAAC,CAAA;aAC7F;YACD,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC;YAClB,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;SAC/C;IACL,CAAC;IAED;;OAEG;IACH,SAAS,GAAG,KAAK,EAAE,WAAyC,EAAE,EAAE;QAC5D,IAAI,MAAM,GAAG,CAAC,EACV,KAAK,GAAG,UAAU,EAClB,WAAW,GAAG,IAAI,EAClB,UAAU,GAAG,WAAW,IAAI,CAAC,EAC7B,UAAU,GAAG,WAAW,CAAC;QAE7B,IAAI,QAAQ,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;QAElE,wCAAwC;QAExC,OAAO,WAAW,EAAC;YACf,IAAI,KAAK,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAGpD,IAAG,KAAK,CAAC,MAAM,EAAC;gBACZ,IAAI,GAAG,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC;gBACzB,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;aAC1B;YACD,IAAI,KAA8B,CAAC;YAEnC,IAAI;gBACA,KAAK,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aACnD;YAAC,OAAM,CAAC,EAAC;gBACN,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;gBAC3C,MAAM,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,mCAAmC,CAAC,CAAC;gBAC1E,MAAM,IAAI,CAAA;aACb;YAED,mDAAmD;YACnD,IAAG,YAAY,IAAI,WAAW,EAAE,MAAM,EAAC;gBACnC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;oBAC/B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAE,CAAA;gBACzC,CAAC,CAAC,CAAC;gBACH,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;oBAChC,OAAO,EAAE,CAAC;oBACV,OAAQ,KAAK,CAAC,GAAG,CAAC,UAAU,CAAkB,CAAC,MAAM,CAAC,IAAA,wBAAQ,EAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAG,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC/G,CAAC,CAAC,CAAC,CAAC;gBACJ,KAAK,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aACnD;YAED,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC7B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACnB,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;oBAClB,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CACvC,CAAC;YACN,CAAC,CAAC,CAAC;YACH,IAAG,SAAS,CAAC,MAAM,EAAC;gBAChB,IAAI,GAAG,GAAQ,MAAM,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5F,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC;aACxB;YAED,IAAG,KAAK,CAAC,MAAM,EAAC;gBACZ,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;aACzB;YACD,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;YAEvB,iCAAiC;YACjC,WAAW,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC;YACpC,4DAA4D;SAC/D;QAED,gLAAgL;QAEhL,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEN,IAAG,CAAC,GAAG,EAAC;QACJ,kDAAkD;QAClD,IAAI,CAAC,GAAG,GAAG,IAAI,qBAAG,CAAC;YACf,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU;YAC7C,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU;YACtD,WAAW,EAAE,GAAG,EAAE;gBACd,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YAC3B,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACnB,4CAA4C;gBAC5C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACzC,4EAA4E;gBAC5E,uFAAuF;gBACvF,8CAA8C;gBAC9C,IAAI;gBACJ,oCAAoC;gBAEpC,YAAY;gBACZ,sFAAsF;gBACtF,YAAY;gBACZ,mEAAmE;gBACnE,wEAAwE;gBACxE,oDAAoD;gBAEpD,OAAO,GAAG,CAAC;YACf,CAAC;YACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,6CAA6C;gBAE7C;;mBAEG;gBACH,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC5C,CAAC;SACJ,CAAC,CAAA;KACL;IAED,4BAA4B;IAC5B,IAAG,CAAC,IAAI,CAAC,GAAG;QAAE,MAAM,kBAAkB,CAAC;IACvC,IAAG,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE;QACzC,IAAG,CAAC,KAAK,CAAC,WAAW,EAAC;YAClB,KAAK,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC;gBAC9B,mCAAmC;gBACnC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC5C,CAAC,EAAE,QAAQ,CAAC,CAAA;SACf;QACD,+BAA+B;QAC/B,OAAO;KACV;IAED,sCAAsC;IAEtC;;;OAGG;IACH,IAAG,UAAU,EAAC;QACV,IAAG,UAAU,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAC;YAC3E,IAAG,CAAC,IAAI,CAAC,GAAG;gBAAE,MAAM,kBAAkB,CAAC;YAEvC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7D,OAAO;YACP,2CAA2C;YAE/C,oEAAoE;SACnE;aAAM,IAAG,UAAU,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,EAAC;YAC3F,MAAM,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SACxC;KACJ;SAAM;KAEN;IACD,IAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE;QAAE,OAAO;IAEhC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IAEvB,gEAAgE;IAChE,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,8BAA8B;IAC9B,IAAG,IAAI,CAAC,EAAE,EAAC;QACP,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,gBAAgB,EAAE,CAAC;QAE1C,4DAA4D;QAC5D,IAAG,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAC;YAC9B,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;SAClC;aAAM;YACH,gCAAgC;SACnC;QACD,iDAAiD;KACpD;SAAM;QACH,WAAW,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;KACjD;IAED,IAAG,WAAW,KAAK,IAAI,EAAC;QACpB,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;KAChC;SAAM;QACH,qCAAqC;KACxC;IAED,MAAM,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAEzB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IACxB,gEAAgE;AACpE,CAAC,CAAA;AA7dY,QAAA,QAAQ,YA6dpB"}
|
package/lib/DboBuilder.ts
CHANGED
|
@@ -79,7 +79,7 @@ import { getNewQuery, makeQuery, COMPUTED_FIELDS, SelectItem, FieldSpec, asNameA
|
|
|
79
79
|
import {
|
|
80
80
|
DB, TableRule, SelectRule, InsertRule, UpdateRule, DeleteRule, SyncRule, Joins, Join, Prostgles, PublishParser, ValidateRow
|
|
81
81
|
} from "./Prostgles";
|
|
82
|
-
import { PubSubManager,
|
|
82
|
+
import { PubSubManager, asValue, BasicCallback, pickKeys, omitKeys } from "./PubSubManager";
|
|
83
83
|
|
|
84
84
|
import { parseFilterItem } from "./Filtering";
|
|
85
85
|
|
|
@@ -332,7 +332,7 @@ function makeErr(err: any, localParams?: LocalParams, view?: ViewHandler, allowe
|
|
|
332
332
|
}
|
|
333
333
|
const errObject = {
|
|
334
334
|
...((!localParams || !localParams.socket)? err : {}),
|
|
335
|
-
...
|
|
335
|
+
...pickKeys(err, ["column", "code", "table", "constraint"]),
|
|
336
336
|
...(err && err.toString? { txt: err.toString() } : {}),
|
|
337
337
|
code_info: sqlErrCodeToMsg(err.code)
|
|
338
338
|
};
|
|
@@ -384,7 +384,7 @@ class ColSet {
|
|
|
384
384
|
|
|
385
385
|
if(isEmpty(data)) throw "No data";
|
|
386
386
|
|
|
387
|
-
let row =
|
|
387
|
+
let row = pickKeys(data, allowedCols);
|
|
388
388
|
if(validate){
|
|
389
389
|
row = await validate(row);
|
|
390
390
|
}
|
|
@@ -1380,7 +1380,7 @@ export class ViewHandler {
|
|
|
1380
1380
|
});
|
|
1381
1381
|
funcFilterkeys.map(f => {
|
|
1382
1382
|
const funcArgs = data[f.name];
|
|
1383
|
-
if(!Array.isArray(funcArgs)) throw `A function filter must contain an array. E.g: { $funcFilterName: ["col1"] } \n but got: ${JSON.stringify(
|
|
1383
|
+
if(!Array.isArray(funcArgs)) throw `A function filter must contain an array. E.g: { $funcFilterName: ["col1"] } \n but got: ${JSON.stringify(pickKeys(data, [f.name]))} `;
|
|
1384
1384
|
const fields = this.parseFieldFilter(f.getFields(funcArgs), true, allowed_colnames);
|
|
1385
1385
|
|
|
1386
1386
|
const dissallowedCols = fields.filter(fname => !allowed_colnames.includes(fname))
|
|
@@ -1517,7 +1517,7 @@ export class ViewHandler {
|
|
|
1517
1517
|
// const singleFuncs = FUNCTIONS.filter(f => f.singleColArg);
|
|
1518
1518
|
|
|
1519
1519
|
|
|
1520
|
-
const f =
|
|
1520
|
+
const f = pickKeys(data, filterKeys);
|
|
1521
1521
|
const q = parseFilterItem({
|
|
1522
1522
|
filter: f,
|
|
1523
1523
|
tableAlias,
|
|
@@ -1933,7 +1933,7 @@ export class TableHandler extends ViewHandler {
|
|
|
1933
1933
|
const { filterFields, forcedFilter } = get(table_rules, "select") || {},
|
|
1934
1934
|
condition = await this.prepareWhere({ filter, forcedFilter, addKeywords: false, filterFields, tableAlias: undefined, localParams, tableRule: table_rules }),
|
|
1935
1935
|
throttle = get(params, "throttle") || 0,
|
|
1936
|
-
selectParams =
|
|
1936
|
+
selectParams = omitKeys(params || {}, ["throttle"]);
|
|
1937
1937
|
|
|
1938
1938
|
// const { subOne = false } = localParams || {};
|
|
1939
1939
|
const filterSize = JSON.stringify(filter || {}).length;
|
|
@@ -2274,7 +2274,7 @@ export class TableHandler extends ViewHandler {
|
|
|
2274
2274
|
/* Ensure we're using the same transaction */
|
|
2275
2275
|
const _this = this.t? this : dbTX![this.name] as TableHandler;
|
|
2276
2276
|
|
|
2277
|
-
let rootData =
|
|
2277
|
+
let rootData = Array.isArray(data)? data.map(d => omitKeys(d, extraKeys)) : omitKeys(data, extraKeys);
|
|
2278
2278
|
|
|
2279
2279
|
let insertedChildren: AnyObject[];
|
|
2280
2280
|
let targetTableRules: TableRule;
|
|
@@ -3159,6 +3159,7 @@ export type TxCB = {
|
|
|
3159
3159
|
}
|
|
3160
3160
|
|
|
3161
3161
|
if(command === "LISTEN"){
|
|
3162
|
+
if(returnType !== "allowListen") throw new Error(`Your query contains a LISTEN command. Set { returnType: "allowListen" } to get subscription hooks. Or ignore this message`)
|
|
3162
3163
|
if(!socket) throw "Only allowed with client socket"
|
|
3163
3164
|
return await this.prostgles.dbEventsManager?.addNotify(query, socket);
|
|
3164
3165
|
|
package/lib/PubSubManager.ts
CHANGED
|
@@ -12,7 +12,7 @@ import * as Bluebird from "bluebird";
|
|
|
12
12
|
import * as pgPromise from 'pg-promise';
|
|
13
13
|
import pg from 'pg-promise/typescript/pg-subset';
|
|
14
14
|
|
|
15
|
-
import { SelectParamsBasic as SelectParams, OrderBy, FieldFilter, asName, WAL, isEmpty, AnyObject } from "prostgles-types";
|
|
15
|
+
import { SelectParamsBasic as SelectParams, OrderBy, FieldFilter, asName, WAL, isEmpty, AnyObject, getKeys } from "prostgles-types";
|
|
16
16
|
|
|
17
17
|
import { ClientExpressData, syncData } from "./SyncReplication";
|
|
18
18
|
|
|
@@ -1048,8 +1048,7 @@ export class PubSubManager {
|
|
|
1048
1048
|
|
|
1049
1049
|
|
|
1050
1050
|
syncs.map((s) => {
|
|
1051
|
-
|
|
1052
|
-
this.syncData(s);
|
|
1051
|
+
this.syncData(s, undefined, "trigger");
|
|
1053
1052
|
});
|
|
1054
1053
|
|
|
1055
1054
|
if (!subs) {
|
|
@@ -1153,8 +1152,8 @@ export class PubSubManager {
|
|
|
1153
1152
|
}
|
|
1154
1153
|
|
|
1155
1154
|
syncTimeout?: ReturnType<typeof setTimeout>;
|
|
1156
|
-
async syncData(sync: SyncParams, clientData
|
|
1157
|
-
return await syncData(this, sync, clientData);
|
|
1155
|
+
async syncData(sync: SyncParams, clientData: ClientExpressData | undefined, source: "trigger" | "client") {
|
|
1156
|
+
return await syncData(this, sync, clientData, source);
|
|
1158
1157
|
}
|
|
1159
1158
|
|
|
1160
1159
|
/**
|
|
@@ -1246,7 +1245,7 @@ export class PubSubManager {
|
|
|
1246
1245
|
// } else
|
|
1247
1246
|
if (data.onSyncRequest) {
|
|
1248
1247
|
// console.log("syncData from socket")
|
|
1249
|
-
this.syncData(newSync, data.onSyncRequest);
|
|
1248
|
+
this.syncData(newSync, data.onSyncRequest, "client");
|
|
1250
1249
|
|
|
1251
1250
|
// console.log("onSyncRequest ", socket._user)
|
|
1252
1251
|
} else {
|
|
@@ -1594,20 +1593,21 @@ export class PubSubManager {
|
|
|
1594
1593
|
}
|
|
1595
1594
|
}
|
|
1596
1595
|
|
|
1596
|
+
export function omitKeys<T extends AnyObject, Exclude extends keyof T>(obj: T, exclude: Exclude[]): Omit<T, Exclude> {
|
|
1597
|
+
return pickKeys(obj, getKeys(obj ?? []).filter(k => !exclude.includes(k as any)))
|
|
1598
|
+
}
|
|
1597
1599
|
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
if (exclude && exclude.length) keys = Object.keys(obj).filter(k => !exclude.includes(k))
|
|
1600
|
+
export function pickKeys<T extends AnyObject, Include extends keyof T>(obj: T, include: Include[] = []): Pick<T, Include> {
|
|
1601
|
+
let keys = include;
|
|
1601
1602
|
if (!keys.length) {
|
|
1602
|
-
|
|
1603
|
-
return {};
|
|
1603
|
+
return {} as any;
|
|
1604
1604
|
}
|
|
1605
1605
|
if (obj && keys.length) {
|
|
1606
1606
|
let res: AnyObject = {};
|
|
1607
|
-
keys.
|
|
1607
|
+
keys.forEach(k => {
|
|
1608
1608
|
res[k] = obj[k];
|
|
1609
1609
|
});
|
|
1610
|
-
return res;
|
|
1610
|
+
return res as any;
|
|
1611
1611
|
}
|
|
1612
1612
|
|
|
1613
1613
|
return obj;
|