prostgles-server 3.0.153 → 3.0.155

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 (42) hide show
  1. package/dist/PubSubManager/PubSubManager.d.ts +21 -26
  2. package/dist/PubSubManager/PubSubManager.d.ts.map +1 -1
  3. package/dist/PubSubManager/PubSubManager.js +43 -393
  4. package/dist/PubSubManager/PubSubManager.js.map +1 -1
  5. package/dist/PubSubManager/addSub.d.ts +7 -0
  6. package/dist/PubSubManager/addSub.d.ts.map +1 -0
  7. package/dist/PubSubManager/addSub.js +153 -0
  8. package/dist/PubSubManager/addSub.js.map +1 -0
  9. package/dist/PubSubManager/addSync.d.ts +8 -0
  10. package/dist/PubSubManager/addSync.d.ts.map +1 -0
  11. package/dist/PubSubManager/addSync.js +110 -0
  12. package/dist/PubSubManager/addSync.js.map +1 -0
  13. package/dist/PubSubManager/notifListener.d.ts +5 -0
  14. package/dist/PubSubManager/notifListener.d.ts.map +1 -0
  15. package/dist/PubSubManager/notifListener.js +97 -0
  16. package/dist/PubSubManager/notifListener.js.map +1 -0
  17. package/lib/DboBuilder/TableHandler.d.ts +1 -5
  18. package/lib/DboBuilder/TableHandler.d.ts.map +1 -1
  19. package/lib/PubSubManager/PubSubManager.d.ts +20 -29
  20. package/lib/PubSubManager/PubSubManager.d.ts.map +1 -1
  21. package/lib/PubSubManager/PubSubManager.js +44 -397
  22. package/lib/PubSubManager/PubSubManager.ts +82 -508
  23. package/lib/PubSubManager/addSub.d.ts +7 -0
  24. package/lib/PubSubManager/addSub.d.ts.map +1 -0
  25. package/lib/PubSubManager/addSub.js +152 -0
  26. package/lib/PubSubManager/addSub.ts +178 -0
  27. package/lib/PubSubManager/addSync.d.ts +8 -0
  28. package/lib/PubSubManager/addSync.d.ts.map +1 -0
  29. package/lib/PubSubManager/addSync.js +109 -0
  30. package/lib/PubSubManager/addSync.ts +127 -0
  31. package/lib/PubSubManager/notifListener.d.ts +5 -0
  32. package/lib/PubSubManager/notifListener.d.ts.map +1 -0
  33. package/lib/PubSubManager/notifListener.js +96 -0
  34. package/lib/PubSubManager/notifListener.ts +122 -0
  35. package/package.json +2 -2
  36. package/tests/client/PID.txt +1 -1
  37. package/tests/client/tsconfig.json +2 -1
  38. package/tests/client_only_queries.js +1 -1
  39. package/tests/client_only_queries.ts +1 -1
  40. package/tests/isomorphic_queries.ts +1 -1
  41. package/tests/server/package-lock.json +1 -1
  42. package/tests/server/tsconfig.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../../lib/PubSubManager/PubSubManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../../lib/PubSubManager/PubSubManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { PubSubManager, SubscriptionParams } from "./PubSubManager";
2
+ type AddSubscriptionParams = SubscriptionParams & {
3
+ condition: string;
4
+ };
5
+ export declare function addSub(this: PubSubManager, subscriptionParams: Omit<AddSubscriptionParams, "channel_name" | "parentSubParams">): Promise<string>;
6
+ export {};
7
+ //# sourceMappingURL=addSub.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSub.d.ts","sourceRoot":"","sources":["../../lib/PubSubManager/addSub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,aAAa,EAAgB,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEjH,KAAK,qBAAqB,GAAG,kBAAkB,GAAG;IAChD,SAAS,EAAE,MAAM,CAAC;CACnB,CAAA;AAID,wBAAsB,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,EAAE,cAAc,GAAG,iBAAiB,CAAC,mBA0GpI"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addSub = void 0;
4
+ const PubSubManager_1 = require("./PubSubManager");
5
+ /* Must return a channel for socket */
6
+ /* The distinct list of {table_name, condition} must have a corresponding trigger in the database */
7
+ async function addSub(subscriptionParams) {
8
+ const { socket, func, table_rules, filter = {}, params = {}, condition = "", throttle = 0, //subOne = false,
9
+ viewOptions, table_info, } = subscriptionParams || {};
10
+ const table_name = table_info.name;
11
+ if (!socket && !func) {
12
+ throw "socket AND func missing";
13
+ }
14
+ if (socket && func) {
15
+ throw "addSub: cannot have socket AND func";
16
+ }
17
+ let validated_throttle = subscriptionParams.throttle || 10;
18
+ const pubThrottle = table_rules?.subscribe?.throttle || 0;
19
+ if (pubThrottle && Number.isInteger(pubThrottle) && pubThrottle > 0) {
20
+ validated_throttle = pubThrottle;
21
+ }
22
+ if (throttle && Number.isInteger(throttle) && throttle >= pubThrottle) {
23
+ validated_throttle = throttle;
24
+ }
25
+ const channel_name = `${this.socketChannelPreffix}.${table_name}.${JSON.stringify(filter)}.${JSON.stringify(params)}.${"m"}.sub`;
26
+ this.upsertSocket(socket);
27
+ // const upsertSub = _upsertSub.bind(this);
28
+ const newSub = {
29
+ channel_name,
30
+ filter,
31
+ func,
32
+ params,
33
+ last_throttled: 0,
34
+ socket,
35
+ table_info,
36
+ is_ready: true,
37
+ is_throttling: false,
38
+ socket_id: socket?.id,
39
+ table_rules,
40
+ throttle: validated_throttle,
41
+ triggers: [
42
+ {
43
+ table_name: table_name,
44
+ condition: (0, PubSubManager_1.parseCondition)(condition),
45
+ is_related: false,
46
+ }
47
+ ]
48
+ };
49
+ if (viewOptions) {
50
+ for await (const relatedTable of viewOptions.relatedTables) {
51
+ const relatedSub = {
52
+ table_name: relatedTable.tableName,
53
+ condition: (0, PubSubManager_1.parseCondition)(relatedTable.condition),
54
+ is_related: true,
55
+ };
56
+ newSub.triggers.push(relatedSub);
57
+ await this.addTrigger(relatedSub, viewOptions);
58
+ }
59
+ }
60
+ setTimeout(() => {
61
+ this.pushSubData(newSub);
62
+ }, 1);
63
+ if (socket) {
64
+ const chnUnsub = channel_name + "unsubscribe";
65
+ socket.removeAllListeners(chnUnsub);
66
+ socket.once(chnUnsub, (_data, cb) => {
67
+ const res = "ok"; // this.onSocketDisconnected({ socket, subChannel: channel_name });
68
+ this.subs = this.subs.filter(s => {
69
+ const isMatch = s.socket && s.socket.id === socket.id && s.channel_name === channel_name;
70
+ return !isMatch;
71
+ });
72
+ socket.removeAllListeners(channel_name);
73
+ socket.removeAllListeners(chnUnsub);
74
+ cb(null, { res });
75
+ });
76
+ }
77
+ this.subs.push(newSub);
78
+ /** A view does not have triggers. Only related triggers */
79
+ if (table_info.is_view) {
80
+ if (!viewOptions?.relatedTables.length) {
81
+ throw "PubSubManager: view parent_tables missing";
82
+ }
83
+ return channel_name;
84
+ }
85
+ /* Just a table, add table + condition trigger */
86
+ // console.log(table_info, 202);
87
+ await this.addTrigger({
88
+ table_name: table_info.name,
89
+ condition: (0, PubSubManager_1.parseCondition)(condition),
90
+ });
91
+ return channel_name;
92
+ }
93
+ exports.addSub = addSub;
94
+ // const _upsertSub = async function(
95
+ // this: PubSubManager,
96
+ // newSubData: {
97
+ // table_name: string;
98
+ // condition: string;
99
+ // is_ready: boolean;
100
+ // channel_name: string;
101
+ // viewOptions: SubscriptionParams["viewOptions"];
102
+ // },
103
+ // consumer: Pick<SubscriptionParams, "channel_name" | "socket" | "func">,
104
+ // isReadyOverride: boolean | undefined
105
+ // ){
106
+ // const { table_name, condition: _cond, is_ready = false, viewOptions } = newSubData;
107
+ // const { channel_name, func, socket } = consumer;
108
+ // const condition = parseCondition(_cond);
109
+ // const newSub: SubscriptionParams = {
110
+ // socket,
111
+ // table_name,
112
+ // filter,
113
+ // params,
114
+ // table_rules,
115
+ // channel_name,
116
+ // parentSubParams,
117
+ // func: func ?? undefined,
118
+ // socket_id: socket?.id,
119
+ // throttle: validated_throttle,
120
+ // is_throttling: null,
121
+ // last_throttled: 0,
122
+ // is_ready,
123
+ // };
124
+ // this.subs[table_name] = this.subs[table_name] ?? {};
125
+ // this.subs[table_name]![condition] = this.subs[table_name]![condition] ?? { subs: [] };
126
+ // this.subs[table_name]![condition]!.subs = this.subs[table_name]![condition]!.subs ?? [];
127
+ // // console.log("1034 upsertSub", this.subs)
128
+ // const sub_idx = this.subs[table_name]![condition]!.subs.findIndex(s =>
129
+ // s.channel_name === channel_name &&
130
+ // (
131
+ // socket && s.socket_id === socket.id ||
132
+ // func && s.func === func
133
+ // ) &&
134
+ // JSON.stringify(s.viewOptions) === JSON.stringify((subscriptionParams.viewOptions)
135
+ // ));
136
+ // if (sub_idx < 0) {
137
+ // this.subs[table_name]![condition]!.subs.push(newSub);
138
+ // if (socket) {
139
+ // const chnUnsub = channel_name + "unsubscribe";
140
+ // socket.removeAllListeners(chnUnsub);
141
+ // socket.once(chnUnsub, (_data: any, cb: BasicCallback) => {
142
+ // const res = this.onSocketDisconnected({ socket, subChannel: channel_name });
143
+ // cb(null, { res });
144
+ // });
145
+ // }
146
+ // } else {
147
+ // this.subs[table_name]![condition]!.subs[sub_idx] = newSub;
148
+ // }
149
+ // if (isReadyOverride ?? is_ready) {
150
+ // this.pushSubData(newSub);
151
+ // }
152
+ // };
153
+ //# sourceMappingURL=addSub.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSub.js","sourceRoot":"","sources":["../../lib/PubSubManager/addSub.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { PubSubManager } from "./PubSubManager";
2
+ import { AddSyncParams } from "./PubSubManager";
3
+ /**
4
+ * Returns a sync channel
5
+ * A sync channel is unique per socket for each filter
6
+ */
7
+ export declare function addSync(this: PubSubManager, syncParams: AddSyncParams): Promise<string>;
8
+ //# sourceMappingURL=addSync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSync.d.ts","sourceRoot":"","sources":["../../lib/PubSubManager/addSync.ts"],"names":[],"mappings":"AACA,OAAO,EAAiC,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAA2B,MAAM,iBAAiB,CAAC;AAEzE;;;GAGG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,mBAsH3E"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addSync = void 0;
4
+ const util_1 = require("prostgles-types/dist/util");
5
+ const PubSubManager_1 = require("./PubSubManager");
6
+ const PubSubManager_2 = require("./PubSubManager");
7
+ /**
8
+ * Returns a sync channel
9
+ * A sync channel is unique per socket for each filter
10
+ */
11
+ async function addSync(syncParams) {
12
+ const { socket = null, table_info = null, table_rules, synced_field = null, allow_delete = false, id_fields = [], filter = {}, params, condition = "", throttle = 0 } = syncParams || {};
13
+ const conditionParsed = (0, PubSubManager_1.parseCondition)(condition);
14
+ if (!socket || !table_info)
15
+ throw "socket or table_info missing";
16
+ const { name: table_name } = table_info;
17
+ const channel_name = `${this.socketChannelPreffix}.${table_name}.${JSON.stringify(filter)}.sync`;
18
+ if (!synced_field)
19
+ throw "synced_field missing from table_rules";
20
+ this.upsertSocket(socket);
21
+ const upsertSync = () => {
22
+ const newSync = {
23
+ channel_name,
24
+ table_name,
25
+ filter,
26
+ condition: conditionParsed,
27
+ synced_field,
28
+ id_fields,
29
+ allow_delete,
30
+ table_rules,
31
+ throttle: Math.max(throttle || 0, table_rules?.sync?.throttle || 0),
32
+ batch_size: table_rules?.sync?.batch_size || PubSubManager_2.DEFAULT_SYNC_BATCH_SIZE,
33
+ last_throttled: 0,
34
+ socket_id: socket.id,
35
+ is_sync: true,
36
+ last_synced: 0,
37
+ lr: undefined,
38
+ table_info,
39
+ is_syncing: false,
40
+ wal: undefined,
41
+ socket,
42
+ params
43
+ };
44
+ /* Only a sync per socket per table per condition allowed */
45
+ this.syncs = this.syncs || [];
46
+ const existing = (0, util_1.find)(this.syncs, { socket_id: socket.id, channel_name });
47
+ if (!existing) {
48
+ this.syncs.push(newSync);
49
+ // console.log("Added SYNC");
50
+ const unsyncChn = channel_name + "unsync";
51
+ socket.removeAllListeners(unsyncChn);
52
+ socket.once(unsyncChn, (_data, cb) => {
53
+ // this.onSocketDisconnected({ socket, syncChannel: channel_name });
54
+ socket.removeAllListeners(channel_name);
55
+ socket.removeAllListeners(unsyncChn);
56
+ this.syncs = this.syncs.filter(s => {
57
+ const isMatch = s.socket_id && s.socket_id === socket.id && s.channel_name === channel_name;
58
+ return !isMatch;
59
+ });
60
+ cb(null, { res: "ok" });
61
+ });
62
+ socket.removeAllListeners(channel_name);
63
+ socket.on(channel_name, (data, cb) => {
64
+ if (!data) {
65
+ cb({ err: "Unexpected request. Need data or onSyncRequest" });
66
+ return;
67
+ }
68
+ /*
69
+ */
70
+ /* Server will:
71
+ 1. Ask for last_synced emit(onSyncRequest)
72
+ 2. Ask for data >= server_synced emit(onPullRequest)
73
+ -> Upsert that data
74
+ 2. Push data >= last_synced emit(data.data)
75
+
76
+ Client will:
77
+ 1. Send last_synced on(onSyncRequest)
78
+ 2. Send data >= server_synced on(onPullRequest)
79
+ 3. Send data on CRUD emit(data.data | data.deleted)
80
+ 4. Upsert data.data | deleted on(data.data | data.deleted)
81
+ */
82
+ // if(data.data){
83
+ // console.error("THIS SHOUKD NEVER FIRE !! NEW DATA FROM SYNC");
84
+ // this.upsertClientData(newSync, data.data);
85
+ // } else
86
+ if (data.onSyncRequest) {
87
+ // console.log("syncData from socket")
88
+ this.syncData(newSync, data.onSyncRequest, "client");
89
+ // console.log("onSyncRequest ", socket._user)
90
+ }
91
+ else {
92
+ console.error("Unexpected sync request data from client: ", data);
93
+ }
94
+ });
95
+ // socket.emit(channel_name, { onSyncRequest: true }, (response) => {
96
+ // console.log(response)
97
+ // });
98
+ }
99
+ else {
100
+ console.warn("UNCLOSED DUPLICATE SYNC FOUND", existing.channel_name);
101
+ }
102
+ return newSync;
103
+ };
104
+ // const { min_id, max_id, count, max_synced } = params;
105
+ const _sync = upsertSync();
106
+ await this.addTrigger({ table_name, condition: conditionParsed });
107
+ return channel_name;
108
+ }
109
+ exports.addSync = addSync;
110
+ //# sourceMappingURL=addSync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSync.js","sourceRoot":"","sources":["../../lib/PubSubManager/addSync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { PubSubManager } from "./PubSubManager";
2
+ export declare function notifListener(this: PubSubManager, data: {
3
+ payload: string;
4
+ }): Promise<void>;
5
+ //# sourceMappingURL=notifListener.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifListener.d.ts","sourceRoot":"","sources":["../../lib/PubSubManager/notifListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrD,wBAAsB,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,iBAsHjF"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.notifListener = void 0;
4
+ const PubSubManager_1 = require("./PubSubManager");
5
+ /* Relay relevant data to relevant subscriptions */
6
+ async function notifListener(data) {
7
+ const str = data.payload;
8
+ if (!str) {
9
+ console.error("Unexpected Empty notif");
10
+ return;
11
+ }
12
+ const dataArr = str.split(PubSubManager_1.PubSubManager.DELIMITER);
13
+ const notifType = dataArr[0];
14
+ (0, PubSubManager_1.log)(str);
15
+ if (notifType === this.NOTIF_TYPE.schema) {
16
+ if (this.onSchemaChange) {
17
+ const [_, command, _event_type, query] = dataArr;
18
+ if (query) {
19
+ this.onSchemaChange({ command, query });
20
+ }
21
+ }
22
+ return;
23
+ }
24
+ if (notifType !== this.NOTIF_TYPE.data) {
25
+ console.error("Unexpected notif type: ", notifType);
26
+ return;
27
+ }
28
+ if (dataArr.length < 3) {
29
+ throw "notifListener: dataArr length < 3";
30
+ }
31
+ const [_, table_name, op_name, condition_ids_str] = dataArr;
32
+ // const triggers = await this.db.any("SELECT * FROM prostgles.triggers WHERE table_name = $1 AND id IN ($2:csv)", [table_name, condition_ids_str.split(",").map(v => +v)]);
33
+ // const conditions: string[] = triggers.map(t => t.condition);
34
+ (0, PubSubManager_1.log)("notifListener", dataArr.join("__"));
35
+ /* Trigger error */
36
+ if (condition_ids_str?.startsWith("error") &&
37
+ this._triggers?.[table_name]?.length) {
38
+ const pref = "INTERNAL ERROR";
39
+ console.error(`${pref}: condition_ids_str: ${condition_ids_str}`);
40
+ this._triggers[table_name].map(c => {
41
+ const subs = this.getSubs(table_name, c);
42
+ subs.map(s => {
43
+ this.pushSubData(s, pref + ". Check server logs. Schema might have changed");
44
+ });
45
+ });
46
+ /* Trigger ok */
47
+ }
48
+ else if (condition_ids_str?.split(",").length &&
49
+ condition_ids_str?.split(",").every((c) => Number.isInteger(+c)) &&
50
+ this._triggers?.[table_name]?.length) {
51
+ const idxs = condition_ids_str.split(",").map(v => +v);
52
+ const conditions = this._triggers[table_name].filter((c, i) => idxs.includes(i));
53
+ (0, PubSubManager_1.log)("notifListener", { table_name, op_name, condition_ids_str, conditions }, this._triggers[table_name]);
54
+ conditions.map(condition => {
55
+ const subs = this.getSubs(table_name, condition);
56
+ const syncs = this.getSyncs(table_name, condition);
57
+ (0, PubSubManager_1.log)("notifListener", { table_name, condition, subs, syncs });
58
+ syncs.map((s) => {
59
+ this.syncData(s, undefined, "trigger");
60
+ });
61
+ /* Throttle the subscriptions */
62
+ subs.forEach(sub => {
63
+ sub.triggers.forEach(trg => {
64
+ if (this.dbo[trg.table_name] &&
65
+ sub.is_ready &&
66
+ (sub.socket_id && this.sockets[sub.socket_id]) || sub.func) {
67
+ const throttle = sub.throttle || 0;
68
+ if (sub.last_throttled <= Date.now() - throttle) {
69
+ /* It is assumed the policy was checked before this point */
70
+ this.pushSubData(sub);
71
+ // sub.last_throttled = Date.now();
72
+ }
73
+ else if (!sub.is_throttling) {
74
+ (0, PubSubManager_1.log)("throttling sub");
75
+ sub.is_throttling = setTimeout(() => {
76
+ (0, PubSubManager_1.log)("throttling finished. pushSubData...");
77
+ sub.is_throttling = null;
78
+ this.pushSubData(sub);
79
+ }, throttle); // sub.throttle);
80
+ }
81
+ }
82
+ });
83
+ });
84
+ });
85
+ /* Trigger unknown issue */
86
+ }
87
+ else {
88
+ // if(!this._triggers || !this._triggers[table_name] || !this._triggers[table_name].length){
89
+ // console.warn(190, "Trigger sub not found. DROPPING TRIGGER", table_name, condition_ids_str, this._triggers);
90
+ // this.dropTrigger(table_name);
91
+ // } else {
92
+ // }
93
+ console.warn(190, "Trigger sub issue: ", table_name, condition_ids_str, this._triggers);
94
+ }
95
+ }
96
+ exports.notifListener = notifListener;
97
+ //# sourceMappingURL=notifListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifListener.js","sourceRoot":"","sources":["../../lib/PubSubManager/notifListener.ts"],"names":[],"mappings":";;;AAAA,mDAAqD;AAErD,mDAAmD;AAC5C,KAAK,UAAU,aAAa,CAAsB,IAAyB;IAChF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;IAEzB,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACvC,OAAO;KACR;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,6BAAa,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE7B,IAAA,mBAAG,EAAC,GAAG,CAAC,CAAC;IAET,IAAI,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;QACxC,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC;YAEjD,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;aACxC;SACF;QAED,OAAO;KACR;IAED,IAAI,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;QACtC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;QACpD,OAAO;KACR;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,MAAM,mCAAmC,CAAA;KAC1C;IAED,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,GAAG,OAAO,CAAC;IAE5D,4KAA4K;IAC5K,+DAA+D;IAC/D,IAAA,mBAAG,EAAC,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAExC,mBAAmB;IACnB,IACE,iBAAiB,EAAE,UAAU,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,EACpC;QACA,MAAM,IAAI,GAAG,gBAAgB,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,wBAAwB,iBAAiB,EAAE,CAAC,CAAA;QACjE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACX,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,gDAAgD,CAAC,CAAC;YAC/E,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAC;QAEH,gBAAgB;KACjB;SAAM,IACL,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM;QACpC,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,EACpC;QAGA,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QAEjF,IAAA,mBAAG,EAAC,eAAe,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAEzG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACjD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAEnD,IAAA,mBAAG,EAAC,eAAe,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;YAE5D,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACd,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YAEH,gCAAgC;YAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACjB,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACzB,IACE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC;wBACxB,GAAG,CAAC,QAAQ;wBACZ,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,EAC1D;wBACA,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC;wBACnC,IAAI,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE;4BAE/C,4DAA4D;4BAC5D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;4BACtB,mCAAmC;yBACpC;6BAAM,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;4BAG7B,IAAA,mBAAG,EAAC,gBAAgB,CAAC,CAAA;4BACrB,GAAG,CAAC,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;gCAClC,IAAA,mBAAG,EAAC,qCAAqC,CAAC,CAAA;gCAC1C,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC;gCACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;4BACxB,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAA,iBAAiB;yBAC/B;qBACF;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;QAEH,2BAA2B;KAC5B;SAAM;QAEL,4FAA4F;QAC5F,mHAAmH;QACnH,oCAAoC;QACpC,WAAW;QACX,IAAI;QACJ,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,UAAU,EAAE,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;KACzF;AACH,CAAC;AAtHD,sCAsHC"}
@@ -36,11 +36,7 @@ export declare class TableHandler extends ViewHandler {
36
36
  delete(filter?: Filter, params?: DeleteParams, param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<any>;
37
37
  remove(filter: Filter, params?: UpdateParams, param3_unused?: undefined, tableRules?: TableRule, localParams?: LocalParams): Promise<any>;
38
38
  upsert(filter: Filter, newData: AnyObject, params?: UpdateParams, table_rules?: TableRule, localParams?: LocalParams): Promise<any>;
39
- sync(filter: Filter, params: SelectParams, param3_unused: undefined, table_rules: TableRule, localParams: LocalParams): Promise<{
40
- channelName: string;
41
- id_fields: string[];
42
- synced_field: string;
43
- }>;
39
+ sync(filter: Filter, params: SelectParams, param3_unused: undefined, table_rules: TableRule, localParams: LocalParams): Promise<any>;
44
40
  }
45
41
  export {};
46
42
  //# sourceMappingURL=TableHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableHandler.d.ts","sourceRoot":"","sources":["TableHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TableHandler.d.ts","sourceRoot":"","sources":["TableHandler.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export type SyncParams = {
29
29
  last_synced: number;
30
30
  is_syncing: boolean;
31
31
  };
32
- type AddSyncParams = {
32
+ export type AddSyncParams = {
33
33
  socket: any;
34
34
  table_info: TableInfo;
35
35
  table_rules: TableRule;
@@ -58,11 +58,9 @@ export type ViewSubscriptionOptions = ({
58
58
  condition: string;
59
59
  }[];
60
60
  };
61
- type SubscriptionParams = {
61
+ export type SubscriptionParams = {
62
62
  socket_id?: string;
63
63
  channel_name: string;
64
- table_name: string;
65
- socket: PRGLIOSocket | undefined;
66
64
  /**
67
65
  * If this is a view then an array with all related tables will be
68
66
  * */
@@ -72,15 +70,13 @@ type SubscriptionParams = {
72
70
  table_rules?: TableRule;
73
71
  filter: object;
74
72
  params: SelectParams;
75
- func?: (data: any) => any;
73
+ func: undefined | ((data: any) => any);
74
+ socket: PRGLIOSocket | undefined;
76
75
  throttle?: number;
77
76
  last_throttled: number;
78
77
  is_throttling?: any;
79
78
  is_ready?: boolean;
80
79
  };
81
- type AddSubscriptionParams = SubscriptionParams & {
82
- condition: string;
83
- };
84
80
  export type PubSubManagerOptions = {
85
81
  dboBuilder: DboBuilder;
86
82
  wsChannelNamePrefix?: string;
@@ -90,20 +86,21 @@ export type PubSubManagerOptions = {
90
86
  query: string;
91
87
  }) => void;
92
88
  };
89
+ export type Subscription = Pick<SubscriptionParams, "throttle" | "is_throttling" | "last_throttled" | "channel_name" | "is_ready" | "func" | "socket" | "socket_id" | "table_info" | "filter" | "params" | "table_rules"> & {
90
+ triggers: {
91
+ table_name: string;
92
+ condition: string;
93
+ is_related: boolean;
94
+ }[];
95
+ };
93
96
  export declare class PubSubManager {
94
97
  static DELIMITER: string;
95
98
  dboBuilder: DboBuilder;
96
99
  get db(): DB;
97
100
  get dbo(): DBHandlerServer;
98
101
  _triggers?: Record<string, string[]>;
99
- sockets: any;
100
- subs: {
101
- [ke: string]: {
102
- [ke: string]: {
103
- subs: SubscriptionParams[];
104
- };
105
- };
106
- };
102
+ sockets: AnyObject;
103
+ subs: Subscription[];
107
104
  syncs: SyncParams[];
108
105
  socketChannelPreffix: string;
109
106
  onSchemaChange?: ((event: {
@@ -141,27 +138,20 @@ export declare class PubSubManager {
141
138
  static EXCLUDE_QUERY_FROM_SCHEMA_WATCH_ID: string;
142
139
  prepareTriggers: () => Promise<boolean>;
143
140
  isReady(): any;
144
- getSubs(table_name: string, condition: string): SubscriptionParams[];
141
+ getSubs(table_name: string, condition: string, client?: Pick<Subscription, "func" | "socket_id">): Subscription[];
142
+ removeLocalSub(tableName: string, conditionRaw: string, func: (items: object[]) => any): void;
145
143
  getSyncs(table_name: string, condition: string): SyncParams[];
146
- notifListener: (data: {
147
- payload: string;
148
- }) => Promise<void>;
149
- pushSubData(sub: SubscriptionParams, err?: any): true | Promise<unknown>;
144
+ notifListener: any;
145
+ pushSubData(sub: Subscription, err?: any): true | Promise<unknown>;
150
146
  upsertSocket(socket: any): void;
151
147
  syncTimeout?: ReturnType<typeof setTimeout>;
152
148
  syncData(sync: SyncParams, clientData: ClientExpressData | undefined, source: "trigger" | "client"): Promise<void>;
153
- /**
154
- * Returns a sync channel
155
- * A sync channel is unique per socket for each filter
156
- */
157
- addSync(syncParams: AddSyncParams): Promise<string>;
158
- addSub(subscriptionParams: Omit<AddSubscriptionParams, "channel_name" | "parentSubParams">): Promise<string>;
159
- removeLocalSub(table_name: string, condition: string, func: (items: object[]) => any): void;
149
+ addSync: any;
150
+ addSub: any;
160
151
  getActiveListeners: () => {
161
152
  table_name: string;
162
153
  condition: string;
163
154
  }[];
164
- onSocketDisconnected(socket?: PRGLIOSocket, channel_name?: string): string;
165
155
  checkIfTimescaleBug: (table_name: string) => Promise<boolean>;
166
156
  getMyTriggerQuery: () => Promise<string>;
167
157
  addingTrigger: any;
@@ -171,5 +161,6 @@ export declare class PubSubManager {
171
161
  condition: string;
172
162
  }, viewOptions?: ViewSubscriptionOptions): Promise<boolean>;
173
163
  }
164
+ export declare const parseCondition: (condition: string) => string;
174
165
  export { pickKeys, omitKeys } from "prostgles-types";
175
166
  //# sourceMappingURL=PubSubManager.d.ts.map