@nymphjs/pubsub 1.0.0-alpha.3 → 1.0.0-alpha.33
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/CHANGELOG.md +134 -0
- package/README.md +1 -1
- package/dist/PubSub.d.ts +2 -3
- package/dist/PubSub.js +45 -40
- package/dist/PubSub.js.map +1 -1
- package/dist/PubSub.test.js +2 -2
- package/dist/PubSub.test.js.map +1 -1
- package/dist/createServer.d.ts +2 -2
- package/dist/createServer.js +2 -2
- package/dist/createServer.js.map +1 -1
- package/package.json +13 -13
- package/src/PubSub.test.ts +2 -2
- package/src/PubSub.ts +99 -94
- package/src/createServer.ts +2 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,140 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.0.0-alpha.33](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.32...v1.0.0-alpha.33) (2022-01-08)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
9
|
+
|
|
10
|
+
# [1.0.0-alpha.32](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.31...v1.0.0-alpha.32) (2022-01-08)
|
|
11
|
+
|
|
12
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
13
|
+
|
|
14
|
+
# [1.0.0-alpha.31](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.30...v1.0.0-alpha.31) (2022-01-08)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
17
|
+
|
|
18
|
+
# [1.0.0-alpha.30](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.29...v1.0.0-alpha.30) (2022-01-07)
|
|
19
|
+
|
|
20
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
21
|
+
|
|
22
|
+
# [1.0.0-alpha.29](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.28...v1.0.0-alpha.29) (2022-01-07)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
25
|
+
|
|
26
|
+
# [1.0.0-alpha.28](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.27...v1.0.0-alpha.28) (2022-01-07)
|
|
27
|
+
|
|
28
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
29
|
+
|
|
30
|
+
# [1.0.0-alpha.27](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.26...v1.0.0-alpha.27) (2022-01-05)
|
|
31
|
+
|
|
32
|
+
### Features
|
|
33
|
+
|
|
34
|
+
- update smui to latest versions ([7ed7bd3](https://github.com/sciactive/nymphjs/commit/7ed7bd34d01a155c7001a2671de25ef2f3363682))
|
|
35
|
+
|
|
36
|
+
# [1.0.0-alpha.26](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.25...v1.0.0-alpha.26) (2021-12-30)
|
|
37
|
+
|
|
38
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
39
|
+
|
|
40
|
+
# [1.0.0-alpha.25](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.24...v1.0.0-alpha.25) (2021-12-30)
|
|
41
|
+
|
|
42
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
43
|
+
|
|
44
|
+
# [1.0.0-alpha.24](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.23...v1.0.0-alpha.24) (2021-12-30)
|
|
45
|
+
|
|
46
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
47
|
+
|
|
48
|
+
# [1.0.0-alpha.23](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.22...v1.0.0-alpha.23) (2021-12-30)
|
|
49
|
+
|
|
50
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
51
|
+
|
|
52
|
+
# [1.0.0-alpha.22](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.21...v1.0.0-alpha.22) (2021-12-14)
|
|
53
|
+
|
|
54
|
+
### Features
|
|
55
|
+
|
|
56
|
+
- update smui to latest versions ([912873b](https://github.com/sciactive/nymphjs/commit/912873b863d1ae5d51c359a3c0558bff38ce85cd))
|
|
57
|
+
|
|
58
|
+
# [1.0.0-alpha.21](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.20...v1.0.0-alpha.21) (2021-11-29)
|
|
59
|
+
|
|
60
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
61
|
+
|
|
62
|
+
# [1.0.0-alpha.20](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.19...v1.0.0-alpha.20) (2021-11-24)
|
|
63
|
+
|
|
64
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
65
|
+
|
|
66
|
+
# [1.0.0-alpha.19](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.18...v1.0.0-alpha.19) (2021-11-18)
|
|
67
|
+
|
|
68
|
+
### Features
|
|
69
|
+
|
|
70
|
+
- update smui and other packages to latest versions ([2465340](https://github.com/sciactive/nymphjs/commit/24653400d887bc04c41c3c4ee0c73ce2f2289e0d))
|
|
71
|
+
|
|
72
|
+
# [1.0.0-alpha.18](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.17...v1.0.0-alpha.18) (2021-11-09)
|
|
73
|
+
|
|
74
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
75
|
+
|
|
76
|
+
# [1.0.0-alpha.17](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.16...v1.0.0-alpha.17) (2021-10-14)
|
|
77
|
+
|
|
78
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
79
|
+
|
|
80
|
+
# [1.0.0-alpha.16](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.15...v1.0.0-alpha.16) (2021-10-14)
|
|
81
|
+
|
|
82
|
+
### Bug Fixes
|
|
83
|
+
|
|
84
|
+
- don't ignore built files in npm packages ([7d688db](https://github.com/sciactive/nymphjs/commit/7d688dbec362f1f71fb451a1d0dbcaecc15d99fc))
|
|
85
|
+
|
|
86
|
+
# [1.0.0-alpha.15](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.14...v1.0.0-alpha.15) (2021-10-14)
|
|
87
|
+
|
|
88
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
89
|
+
|
|
90
|
+
# [1.0.0-alpha.14](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.13...v1.0.0-alpha.14) (2021-10-14)
|
|
91
|
+
|
|
92
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
93
|
+
|
|
94
|
+
# [1.0.0-alpha.13](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.12...v1.0.0-alpha.13) (2021-10-14)
|
|
95
|
+
|
|
96
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
97
|
+
|
|
98
|
+
# [1.0.0-alpha.12](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.11...v1.0.0-alpha.12) (2021-10-13)
|
|
99
|
+
|
|
100
|
+
### Features
|
|
101
|
+
|
|
102
|
+
- add tag syntax to query parser ([6898200](https://github.com/sciactive/nymphjs/commit/689820055ec218d0998a0a2bb9496cebc1395247))
|
|
103
|
+
|
|
104
|
+
# [1.0.0-alpha.11](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) (2021-10-13)
|
|
105
|
+
|
|
106
|
+
### Bug Fixes
|
|
107
|
+
|
|
108
|
+
- pubsub token extraction didn't wait for promise ([abdc57e](https://github.com/sciactive/nymphjs/commit/abdc57ecef3776c4944fab41195b2ce187a97790))
|
|
109
|
+
|
|
110
|
+
# [1.0.0-alpha.10](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) (2021-10-12)
|
|
111
|
+
|
|
112
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
113
|
+
|
|
114
|
+
# [1.0.0-alpha.9](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) (2021-10-12)
|
|
115
|
+
|
|
116
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
117
|
+
|
|
118
|
+
# [1.0.0-alpha.8](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2021-10-12)
|
|
119
|
+
|
|
120
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
121
|
+
|
|
122
|
+
# [1.0.0-alpha.7](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.6...v1.0.0-alpha.7) (2021-10-05)
|
|
123
|
+
|
|
124
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
125
|
+
|
|
126
|
+
# [1.0.0-alpha.6](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.5...v1.0.0-alpha.6) (2021-10-05)
|
|
127
|
+
|
|
128
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
129
|
+
|
|
130
|
+
# [1.0.0-alpha.5](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2021-09-30)
|
|
131
|
+
|
|
132
|
+
**Note:** Version bump only for package @nymphjs/pubsub
|
|
133
|
+
|
|
134
|
+
# [1.0.0-alpha.4](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2021-09-27)
|
|
135
|
+
|
|
136
|
+
### Features
|
|
137
|
+
|
|
138
|
+
- use new instances of nymph for server and pubsub requests ([0c18fab](https://github.com/sciactive/nymphjs/commit/0c18faba2b55fe82c16806d221fc54d2cd42c992))
|
|
139
|
+
|
|
6
140
|
# [1.0.0-alpha.3](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.2...v1.0.0-alpha.3) (2021-09-22)
|
|
7
141
|
|
|
8
142
|
### Features
|
package/README.md
CHANGED
|
@@ -12,7 +12,7 @@ npm install --save @nymphjs/pubsub
|
|
|
12
12
|
|
|
13
13
|
## Usage
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
Any Nymph instance will only publish changes if you initialize PubSub publisher before Nymph is used! This step is **absolutely required** to have a working PubSub system.
|
|
16
16
|
|
|
17
17
|
```ts
|
|
18
18
|
import SQLite3Driver from '@nymphjs/driver-sqlite3';
|
package/dist/PubSub.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Nymph
|
|
1
|
+
import { Nymph } from '@nymphjs/nymph';
|
|
2
2
|
import { request, server as WebSocketServer, connection, Message } from 'websocket';
|
|
3
3
|
import { Config } from './conf';
|
|
4
4
|
export default class PubSub {
|
|
5
5
|
nymph: Nymph;
|
|
6
6
|
config: Config;
|
|
7
7
|
server: WebSocketServer;
|
|
8
|
-
tilmeld?: TilmeldInterface;
|
|
9
8
|
private sessions;
|
|
10
9
|
protected querySubs: {
|
|
11
10
|
[etype: string]: {
|
|
@@ -23,7 +22,7 @@ export default class PubSub {
|
|
|
23
22
|
};
|
|
24
23
|
static initPublisher(config: Partial<Config>, nymph: Nymph): void;
|
|
25
24
|
private static publish;
|
|
26
|
-
constructor(config: Partial<Config>, nymph: Nymph, server: WebSocketServer
|
|
25
|
+
constructor(config: Partial<Config>, nymph: Nymph, server: WebSocketServer);
|
|
27
26
|
close(): void;
|
|
28
27
|
handleRequest(request: request): void;
|
|
29
28
|
onMessage(from: connection, msg: Message): Promise<void>;
|
package/dist/PubSub.js
CHANGED
|
@@ -13,22 +13,21 @@ const websocket_1 = require("websocket");
|
|
|
13
13
|
const lodash_1 = require("lodash");
|
|
14
14
|
const conf_1 = require("./conf");
|
|
15
15
|
class PubSub {
|
|
16
|
-
constructor(config, nymph, server
|
|
16
|
+
constructor(config, nymph, server) {
|
|
17
17
|
this.sessions = new Map();
|
|
18
18
|
this.querySubs = {};
|
|
19
19
|
this.uidSubs = {};
|
|
20
20
|
this.nymph = nymph;
|
|
21
21
|
this.config = Object.assign(Object.assign({}, conf_1.ConfigDefaults), config);
|
|
22
22
|
this.server = server;
|
|
23
|
-
this.tilmeld = tilmeld;
|
|
24
23
|
this.server.on('request', this.handleRequest.bind(this));
|
|
25
24
|
}
|
|
26
25
|
static initPublisher(config, nymph) {
|
|
27
26
|
const configWithDefaults = Object.assign(Object.assign({}, conf_1.ConfigDefaults), config);
|
|
28
|
-
nymph.on('beforeSaveEntity', (entity) => {
|
|
27
|
+
nymph.on('beforeSaveEntity', (nymph, entity) => {
|
|
29
28
|
const guid = entity.guid;
|
|
30
29
|
const etype = entity.constructor.ETYPE;
|
|
31
|
-
const off = nymph.on('afterSaveEntity', (result) => __awaiter(this, void 0, void 0, function* () {
|
|
30
|
+
const off = nymph.on('afterSaveEntity', (_nymph, result) => __awaiter(this, void 0, void 0, function* () {
|
|
32
31
|
off();
|
|
33
32
|
if (!(yield result)) {
|
|
34
33
|
return;
|
|
@@ -42,10 +41,10 @@ class PubSub {
|
|
|
42
41
|
}), configWithDefaults);
|
|
43
42
|
}));
|
|
44
43
|
});
|
|
45
|
-
nymph.on('beforeDeleteEntity', (entity) => {
|
|
44
|
+
nymph.on('beforeDeleteEntity', (nymph, entity) => {
|
|
46
45
|
const guid = entity.guid;
|
|
47
46
|
const etype = entity.constructor.ETYPE;
|
|
48
|
-
const off = nymph.on('afterDeleteEntity', (result) => __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
const off = nymph.on('afterDeleteEntity', (_nymph, result) => __awaiter(this, void 0, void 0, function* () {
|
|
49
48
|
off();
|
|
50
49
|
if (!(yield result)) {
|
|
51
50
|
return;
|
|
@@ -58,10 +57,10 @@ class PubSub {
|
|
|
58
57
|
}), configWithDefaults);
|
|
59
58
|
}));
|
|
60
59
|
});
|
|
61
|
-
nymph.on('beforeDeleteEntityByID', (guid, className) => {
|
|
60
|
+
nymph.on('beforeDeleteEntityByID', (nymph, guid, className) => {
|
|
62
61
|
try {
|
|
63
62
|
const etype = nymph.getEntityClass(className !== null && className !== void 0 ? className : 'Entity').ETYPE;
|
|
64
|
-
const off = nymph.on('afterDeleteEntityByID', (result) => __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
const off = nymph.on('afterDeleteEntityByID', (_nymph, result) => __awaiter(this, void 0, void 0, function* () {
|
|
65
64
|
off();
|
|
66
65
|
if (!(yield result)) {
|
|
67
66
|
return;
|
|
@@ -78,8 +77,8 @@ class PubSub {
|
|
|
78
77
|
return;
|
|
79
78
|
}
|
|
80
79
|
});
|
|
81
|
-
nymph.on('beforeNewUID', (name) => {
|
|
82
|
-
const off = nymph.on('afterNewUID', (result) => __awaiter(this, void 0, void 0, function* () {
|
|
80
|
+
nymph.on('beforeNewUID', (nymph, name) => {
|
|
81
|
+
const off = nymph.on('afterNewUID', (_nymph, result) => __awaiter(this, void 0, void 0, function* () {
|
|
83
82
|
off();
|
|
84
83
|
const value = yield result;
|
|
85
84
|
if (value == null) {
|
|
@@ -93,8 +92,8 @@ class PubSub {
|
|
|
93
92
|
}), configWithDefaults);
|
|
94
93
|
}));
|
|
95
94
|
});
|
|
96
|
-
nymph.on('beforeSetUID', (name, value) => {
|
|
97
|
-
const off = nymph.on('afterSetUID', (result) => __awaiter(this, void 0, void 0, function* () {
|
|
95
|
+
nymph.on('beforeSetUID', (nymph, name, value) => {
|
|
96
|
+
const off = nymph.on('afterSetUID', (_nymph, result) => __awaiter(this, void 0, void 0, function* () {
|
|
98
97
|
off();
|
|
99
98
|
if (!(yield result)) {
|
|
100
99
|
return;
|
|
@@ -107,8 +106,8 @@ class PubSub {
|
|
|
107
106
|
}), configWithDefaults);
|
|
108
107
|
}));
|
|
109
108
|
});
|
|
110
|
-
nymph.on('beforeRenameUID', (oldName, newName) => {
|
|
111
|
-
const off = nymph.on('afterRenameUID', (result) => __awaiter(this, void 0, void 0, function* () {
|
|
109
|
+
nymph.on('beforeRenameUID', (nymph, oldName, newName) => {
|
|
110
|
+
const off = nymph.on('afterRenameUID', (_nymph, result) => __awaiter(this, void 0, void 0, function* () {
|
|
112
111
|
off();
|
|
113
112
|
if (!(yield result)) {
|
|
114
113
|
return;
|
|
@@ -121,8 +120,8 @@ class PubSub {
|
|
|
121
120
|
}), configWithDefaults);
|
|
122
121
|
}));
|
|
123
122
|
});
|
|
124
|
-
nymph.on('beforeDeleteUID', (name) => {
|
|
125
|
-
const off = nymph.on('afterDeleteUID', (result) => __awaiter(this, void 0, void 0, function* () {
|
|
123
|
+
nymph.on('beforeDeleteUID', (nymph, name) => {
|
|
124
|
+
const off = nymph.on('afterDeleteUID', (_nymph, result) => __awaiter(this, void 0, void 0, function* () {
|
|
126
125
|
off();
|
|
127
126
|
if (!(yield result)) {
|
|
128
127
|
return;
|
|
@@ -318,21 +317,22 @@ class PubSub {
|
|
|
318
317
|
if (this.sessions.has(from)) {
|
|
319
318
|
token = this.sessions.get(from);
|
|
320
319
|
}
|
|
321
|
-
|
|
322
|
-
|
|
320
|
+
const nymph = this.nymph.clone();
|
|
321
|
+
if (nymph.tilmeld != null && token != null) {
|
|
322
|
+
const user = yield nymph.tilmeld.extractToken(token);
|
|
323
323
|
if (user) {
|
|
324
|
-
|
|
324
|
+
nymph.tilmeld.fillSession(user);
|
|
325
325
|
}
|
|
326
326
|
}
|
|
327
327
|
this.querySubs[etype][serialArgs].set(from, {
|
|
328
|
-
current: yield
|
|
328
|
+
current: yield nymph.getEntities(options, ...selectors),
|
|
329
329
|
query: data.query,
|
|
330
330
|
count: !!data.count,
|
|
331
331
|
});
|
|
332
|
-
if (
|
|
333
|
-
|
|
332
|
+
if (nymph.tilmeld != null && token != null) {
|
|
333
|
+
nymph.tilmeld.clearSession();
|
|
334
334
|
}
|
|
335
|
-
this.config.logger('log', new Date().toISOString(), `Client subscribed to a query! ($serialArgs, ${from.remoteAddress})`);
|
|
335
|
+
this.config.logger('log', new Date().toISOString(), `Client subscribed to a query! (${serialArgs}, ${from.remoteAddress})`);
|
|
336
336
|
if (this.config.broadcastCounts) {
|
|
337
337
|
const count = this.querySubs[etype][serialArgs].size;
|
|
338
338
|
for (let key of this.querySubs[etype][serialArgs].keys()) {
|
|
@@ -357,7 +357,7 @@ class PubSub {
|
|
|
357
357
|
return;
|
|
358
358
|
}
|
|
359
359
|
this.querySubs[etype][serialArgs].delete(from);
|
|
360
|
-
this.config.logger('log', new Date().toISOString(), `Client unsubscribed from a query! ($serialArgs, ${from.remoteAddress})`);
|
|
360
|
+
this.config.logger('log', new Date().toISOString(), `Client unsubscribed from a query! (${serialArgs}, ${from.remoteAddress})`);
|
|
361
361
|
const count = this.querySubs[etype][serialArgs].size;
|
|
362
362
|
if (count === 0) {
|
|
363
363
|
delete this.querySubs[etype][serialArgs];
|
|
@@ -468,19 +468,20 @@ class PubSub {
|
|
|
468
468
|
const updateClient = (curClient, curData) => __awaiter(this, void 0, void 0, function* () {
|
|
469
469
|
let current;
|
|
470
470
|
let token;
|
|
471
|
+
const nymph = this.nymph.clone();
|
|
471
472
|
try {
|
|
472
473
|
const [clientOptions, ...selectors] = JSON.parse(curQuery);
|
|
473
|
-
const options = Object.assign(Object.assign({}, clientOptions), { class:
|
|
474
|
+
const options = Object.assign(Object.assign({}, clientOptions), { class: nymph.getEntityClass(clientOptions.class), return: 'entity', source: 'client' });
|
|
474
475
|
if (this.sessions.has(curClient)) {
|
|
475
476
|
token = this.sessions.get(curClient);
|
|
476
477
|
}
|
|
477
|
-
if (
|
|
478
|
-
const user =
|
|
478
|
+
if (nymph.tilmeld != null && token != null) {
|
|
479
|
+
const user = yield nymph.tilmeld.extractToken(token);
|
|
479
480
|
if (user) {
|
|
480
|
-
|
|
481
|
+
nymph.tilmeld.fillSession(user);
|
|
481
482
|
}
|
|
482
483
|
}
|
|
483
|
-
current = yield
|
|
484
|
+
current = yield nymph.getEntities(options, ...selectors);
|
|
484
485
|
}
|
|
485
486
|
catch (e) {
|
|
486
487
|
this.config.logger('error', new Date().toISOString(), `Error updating client! (${e === null || e === void 0 ? void 0 : e.message}, ${curClient.remoteAddress})`);
|
|
@@ -522,27 +523,31 @@ class PubSub {
|
|
|
522
523
|
}));
|
|
523
524
|
}
|
|
524
525
|
curData.current = currentGuids;
|
|
525
|
-
if (
|
|
526
|
-
|
|
526
|
+
if (nymph.tilmeld != null && token != null) {
|
|
527
|
+
nymph.tilmeld.clearSession();
|
|
527
528
|
}
|
|
528
529
|
});
|
|
529
530
|
if (data.event === 'delete' || data.event === 'update') {
|
|
530
|
-
|
|
531
|
-
const
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
531
|
+
try {
|
|
532
|
+
for (const curClient of curClients.keys()) {
|
|
533
|
+
const curData = curClients.get(curClient);
|
|
534
|
+
if (!curData) {
|
|
535
|
+
continue;
|
|
536
|
+
}
|
|
537
|
+
if (curData.current.indexOf(data.guid) !== -1) {
|
|
538
|
+
yield updateClient(curClient, curData);
|
|
539
|
+
updatedClients.add(curClient);
|
|
540
|
+
}
|
|
538
541
|
}
|
|
539
542
|
}
|
|
543
|
+
catch (e) {
|
|
544
|
+
this.config.logger('error', new Date().toISOString(), `Error checking for client updates! (${e === null || e === void 0 ? void 0 : e.message})`);
|
|
545
|
+
}
|
|
540
546
|
}
|
|
541
547
|
if ((data.event === 'create' || data.event === 'update') && data.entity) {
|
|
542
548
|
try {
|
|
543
549
|
let [clientOptions, ...selectors] = JSON.parse(curQuery);
|
|
544
550
|
const EntityClass = this.nymph.getEntityClass(clientOptions.class);
|
|
545
|
-
const options = Object.assign(Object.assign({}, clientOptions), { class: EntityClass, return: 'entity', source: 'client' });
|
|
546
551
|
const entityData = data.entity.data;
|
|
547
552
|
entityData.cdate = data.entity.cdate;
|
|
548
553
|
entityData.mdate = data.entity.mdate;
|
package/dist/PubSub.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSub.js","sourceRoot":"","sources":["../src/PubSub.ts"],"names":[],"mappings":";;;;;;;;;;;AASA,yCAMmB;AACnB,mCAAoC;AAEpC,iCAA4D;AAsB5D,MAAqB,MAAM;IAgPzB,YACE,MAAuB,EACvB,KAAY,EACZ,MAAuB,EACvB,OAA0B;QA/NpB,aAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;QACvC,cAAS,GAWf,EAAE,CAAC;QACG,YAAO,GAEb,EAAE,CAAC;QAkNL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,mCAAQ,qBAAQ,GAAK,MAAM,CAAE,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAtNM,MAAM,CAAC,aAAa,CAAC,MAAuB,EAAE,KAAY;QAC/D,MAAM,kBAAkB,mCAAgB,qBAAQ,GAAK,MAAM,CAAE,CAAC;QAE9D,KAAK,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,MAAuB,EAAE,EAAE;YACvD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACzB,MAAM,KAAK,GAAI,MAAM,CAAC,WAAiC,CAAC,KAAK,CAAC;YAE9D,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAClB,iBAAiB,EACjB,CAAO,MAAwB,EAAE,EAAE;gBACjC,GAAG,EAAE,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,EAAE;oBACnB,OAAO;iBACR;gBACD,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,SAAS,CAAC;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;oBACzC,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;oBACvB,KAAK,EAAE,KAAK;iBACb,CAAC,EACF,kBAAkB,CACnB,CAAC;YACJ,CAAC,CAAA,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAuB,EAAE,EAAE;YACzD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACzB,MAAM,KAAK,GAAI,MAAM,CAAC,WAAiC,CAAC,KAAK,CAAC;YAE9D,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAClB,mBAAmB,EACnB,CAAO,MAAwB,EAAE,EAAE;gBACjC,GAAG,EAAE,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,EAAE;oBACnB,OAAO;iBACR;gBACD,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,SAAS,CAAC;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC,EACF,kBAAkB,CACnB,CAAC;YACJ,CAAC,CAAA,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,wBAAwB,EAAE,CAAC,IAAY,EAAE,SAAkB,EAAE,EAAE;YACtE,IAAI;gBACF,MAAM,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,QAAQ,CAAC,CAAC,KAAK,CAAC;gBAEhE,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAClB,uBAAuB,EACvB,CAAO,MAAwB,EAAE,EAAE;oBACjC,GAAG,EAAE,CAAC;oBACN,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,EAAE;wBACnB,OAAO;qBACR;oBACD,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,SAAS,CAAC;wBACb,MAAM,EAAE,SAAS;wBACjB,KAAK,EAAE,QAAQ;wBACf,IAAI,EAAE,IAAI;wBACV,KAAK,EAAE,KAAK;qBACb,CAAC,EACF,kBAAkB,CACnB,CAAC;gBACJ,CAAC,CAAA,CACF,CAAC;aACH;YAAC,OAAO,CAAM,EAAE;gBACf,OAAO;aACR;QACH,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE;YACxC,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAClB,aAAa,EACb,CAAO,MAA8B,EAAE,EAAE;gBACvC,GAAG,EAAE,CAAC;gBACN,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC;gBAC3B,IAAI,KAAK,IAAI,IAAI,EAAE;oBACjB,OAAO;iBACR;gBACD,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,SAAS,CAAC;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC,EACF,kBAAkB,CACnB,CAAC;YACJ,CAAC,CAAA,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;YACvD,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,aAAa,EAAE,CAAO,MAAwB,EAAE,EAAE;gBACrE,GAAG,EAAE,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,EAAE;oBACnB,OAAO;iBACR;gBACD,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,SAAS,CAAC;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC,EACF,kBAAkB,CACnB,CAAC;YACJ,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,OAAe,EAAE,OAAe,EAAE,EAAE;YAC/D,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAClB,gBAAgB,EAChB,CAAO,MAAwB,EAAE,EAAE;gBACjC,GAAG,EAAE,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,EAAE;oBACnB,OAAO;iBACR;gBACD,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,SAAS,CAAC;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,WAAW;oBAClB,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,OAAO;iBACjB,CAAC,EACF,kBAAkB,CACnB,CAAC;YACJ,CAAC,CAAA,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,IAAY,EAAE,EAAE;YAC3C,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAClB,gBAAgB,EAChB,CAAO,MAAwB,EAAE,EAAE;gBACjC,GAAG,EAAE,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,EAAE;oBACnB,OAAO;iBACR;gBACD,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,SAAS,CAAC;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,IAAI;iBACX,CAAC,EACF,kBAAkB,CACnB,CAAC;YACJ,CAAC,CAAA,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,MAAM,CAAC,OAAO,CAAC,OAAe,EAAE,MAAc;;QACpD,KAAK,IAAI,IAAI,IAAI,MAAA,MAAM,CAAC,OAAO,mCAAI,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,kBAAe,EAAE,CAAC;YAErC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnC,IAAI,MAAM,CAAC,MAAM,EAAE;oBACjB,MAAM,CAAC,MAAM,CACX,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,+BAA+B,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,GAAG,CAC5D,CAAC;iBACH;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE;gBAClC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC/B,IAAI,MAAM,CAAC,MAAM,EAAE;wBACjB,MAAM,CAAC,MAAM,CACX,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,2BAA2B,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,GAAG,CACxD,CAAC;qBACH;gBACH,CAAC,CAAC,CAAC;gBAEH,IAAI,UAAU,CAAC,SAAS,EAAE;oBACxB,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;iBAC7B;gBAED,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC/B;IACH,CAAC;IAqBM,KAAK;QACV,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAEM,aAAa,CAAC,OAAgB;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAEhD,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,qBAAqB,GAAG,OAAO,CAAC,MAAM,GAAG,6BAA6B,CACvE,CAAC;YACF,OAAO;SACR;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,6BAA6B,UAAU,CAAC,aAAa,IAAI,CAC1D,CAAC;QAEF,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC7B,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACnC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE;YAClD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IAKY,SAAS,CAAC,IAAgB,EAAE,GAAY;;YACnD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE;gBACvB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;aAChE;YACD,MAAM,IAAI,GAAgB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnD,IACE,CAAC,IAAI,CAAC,MAAM;gBACZ,CAAC,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,OAAO,CAC7D,IAAI,CAAC,MAAM,CACZ,KAAK,CAAC,CAAC,EACR;gBACA,OAAO;aACR;YACD,QAAQ,IAAI,CAAC,MAAM,EAAE;gBACnB,KAAK,cAAc;oBACjB,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACtC,MAAM;gBACR,KAAK,WAAW,CAAC;gBACjB,KAAK,aAAa;oBAChB,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC1C,MAAM;gBACR,KAAK,SAAS;oBACZ,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;oBAC1C,MAAM;aACT;QACH,CAAC;KAAA;IAKM,OAAO,CAAC,IAAgB,EAAE,WAAmB;QAClD,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,uBAAuB,WAAW,KAAK,IAAI,CAAC,aAAa,GAAG,CAC7D,CAAC;QAEF,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;YACnC,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAClD,KAAK,IAAI,QAAQ,IAAI,gBAAgB,EAAE;gBACrC,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC9C,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBACxB,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAExB,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;oBAE9B,IAAI,KAAK,KAAK,CAAC,EAAE;wBACf,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;wBAClC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;4BACtD,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;yBACjC;qBACF;yBAAM;wBACL,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;4BAE/B,KAAK,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;gCACjC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gCACpC,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE;oCAC5B,GAAG,CAAC,OAAO,CACT,IAAI,CAAC,SAAS,CAAC;wCACb,KAAK,EAAE,OAAO,CAAC,KAAK;wCACpB,KAAK;qCACN,CAAC,CACH,CAAC;iCACH;6BACF;yBACF;qBACF;oBACD,IAAI,EAAE,CAAC;iBACR;aACF;SACF;QAED,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAExB,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;gBAE9B,IAAI,KAAK,KAAK,CAAC,EAAE;oBACf,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;iBAC7B;qBAAM;oBACL,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;wBAE/B,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;4BACnC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;4BACpC,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE;gCAC5B,GAAG,CAAC,OAAO,CACT,IAAI,CAAC,SAAS,CAAC;oCACb,GAAG,EAAE,MAAM;oCACX,KAAK;iCACN,CAAC,CACH,CAAC;6BACH;yBACF;qBACF;iBACF;gBACD,IAAI,EAAE,CAAC;aACR;SACF;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC3B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,EAAE,CAAC;SACR;QAED,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,8BAA8B,IAAI,KAAK,IAAI,CAAC,aAAa,GAAG,CAC7D,CAAC;SACH;IACH,CAAC;IAEM,OAAO,CAAC,IAAgB,EAAE,CAAQ;QACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,sBAAsB,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,aAAa,GAAG,CAC1D,CAAC;IACJ,CAAC;IAKO,oBAAoB,CAC1B,IAAgB,EAChB,IAA6B;QAG7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SAChC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC5B;IACH,CAAC;IAKa,kBAAkB,CAC9B,IAAgB,EAChB,IAA0B;;YAE1B,IAAI,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE;gBAGzC,MAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aAChD;iBAAM,IACL,KAAK,IAAI,IAAI;gBACb,IAAI,CAAC,GAAG,IAAI,IAAI;gBAChB,OAAO,IAAI,CAAC,GAAG,IAAI,QAAQ,EAC3B;gBAGA,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aAC9C;QACH,CAAC;KAAA;IAKa,uBAAuB,CACnC,IAAgB,EAChB,IAA+B;;YAE/B,IAAI,IAAqC,CAAC;YAC1C,IAAI,WAA8B,CAAC;YACnC,IAAI;gBACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9B,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;aACxD;YAAC,OAAO,CAAM,EAAE;gBACf,OAAO;aACR;YACD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;YAChC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,aAAa,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;YAC3C,MAAM,OAAO,mCACR,aAAa,KAChB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,GACjB,CAAC;YAEF,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE;gBAE/B,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE;oBAC9B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;iBAC5B;gBACD,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC1C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;iBAC/C;gBACD,IAAI,KAAK,GAAG,IAAI,CAAC;gBACjB,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAC3B,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;iBACjC;gBACD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE;oBACzC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBAC9C,IAAI,IAAI,EAAE;wBAER,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;qBAChC;iBACF;gBACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;oBAC1C,OAAO,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;oBAC5D,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;iBACpB,CAAC,CAAC;gBACH,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE;oBAEzC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;iBAC7B;gBACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,+CAA+C,IAAI,CAAC,aAAa,GAAG,CACrE,CAAC;gBAEF,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;oBAE/B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;oBACrD,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE;wBACxD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAC3D,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE;4BAC5B,GAAG,CAAC,OAAO,CACT,IAAI,CAAC,SAAS,CAAC;gCACb,KAAK,EAAE,OAAO,CAAC,KAAK;gCACpB,KAAK;6BACN,CAAC,CACH,CAAC;yBACH;qBACF;iBACF;aACF;YAED,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE;gBAEjC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE;oBAC9B,OAAO;iBACR;gBACD,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC1C,OAAO;iBACR;gBACD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAChD,OAAO;iBACR;gBACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,mDAAmD,IAAI,CAAC,aAAa,GAAG,CACzE,CAAC;gBAEF,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;gBAErD,IAAI,KAAK,KAAK,CAAC,EAAE;oBAEf,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC;oBACzC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;wBACnD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;qBAC9B;oBACD,OAAO;iBACR;gBAED,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;oBAE/B,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE;wBACxD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAC3D,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE;4BAC5B,GAAG,CAAC,OAAO,CACT,IAAI,CAAC,SAAS,CAAC;gCACb,KAAK,EAAE,OAAO,CAAC,KAAK;gCACpB,KAAK;6BACN,CAAC,CACH,CAAC;yBACH;qBACF;iBACF;aACF;QACH,CAAC;KAAA;IAKa,qBAAqB,CACjC,IAAgB,EAChB,IAA6B;;YAE7B,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE;gBAE/B,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE;oBAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;iBACpC;gBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;oBAClC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;iBACpB,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,gCAAgC,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,aAAa,GAAG,CACnE,CAAC;gBAEF,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;oBAE/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBAC1C,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAChD,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE;4BAC5B,GAAG,CAAC,OAAO,CACT,IAAI,CAAC,SAAS,CAAC;gCACb,GAAG,EAAE,IAAI,CAAC,GAAG;gCACb,KAAK;6BACN,CAAC,CACH,CAAC;yBACH;qBACF;iBACF;aACF;YAED,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE;gBAEjC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE;oBAC/B,OAAO;iBACR;gBACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBACrC,OAAO;iBACR;gBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,oCAAoC,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,aAAa,GAAG,CACvE,CAAC;gBAEF,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBAE1C,IAAI,KAAK,KAAK,CAAC,EAAE;oBAEf,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC9B,OAAO;iBACR;gBAED,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;oBAE/B,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAChD,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE;4BAC5B,GAAG,CAAC,OAAO,CACT,IAAI,CAAC,SAAS,CAAC;gCACb,GAAG,EAAE,IAAI,CAAC,GAAG;gCACb,KAAK;6BACN,CAAC,CACH,CAAC;yBACH;qBACF;iBACF;aACF;QACH,CAAC;KAAA;IAKa,aAAa,CACzB,IAAgB,EAChB,GAAY,EACZ,IAAwB;;YAExB,IACE,MAAM,IAAI,IAAI;gBACd,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAC7B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBACjC,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ;oBACtB,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC;wBACnD,QAAQ,IAAI,IAAI;wBAChB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,EACzB;gBAGA,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAG3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aACjB;YAED,IACE,CAAC,CAAC,MAAM,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;gBAChD,CAAC,SAAS,IAAI,IAAI;oBAChB,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;oBAChC,SAAS,IAAI,IAAI;oBACjB,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;gBACtC,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EACzE;gBAGA,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAGxC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aACjB;QACH,CAAC;KAAA;IAKa,mBAAmB,CAC/B,IAAgB,EAChB,IAA8B;;;YAE9B,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,gCAAgC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa,GAAG,CACnF,CAAC;YAEF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAEzB,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC9B,OAAO;aACR;YAED,KAAK,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;gBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACnD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAc,CAAC;gBAE7C,MAAM,YAAY,GAAG,CACnB,SAAqB,EACrB,OAIC,EACD,EAAE;oBAEF,IAAI,OAA0B,CAAC;oBAC/B,IAAI,KAAyB,CAAC;oBAC9B,IAAI;wBACF,MAAM,CAAC,aAAa,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;wBAC3D,MAAM,OAAO,mCACR,aAAa,KAChB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,EACrD,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,GACjB,CAAC;wBACF,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BAChC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;yBACtC;wBACD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE;4BACzC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;4BAC9C,IAAI,IAAI,EAAE;gCAER,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;6BAChC;yBACF;wBACD,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAC;qBAC/D;oBAAC,OAAO,CAAM,EAAE;wBACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,2BAA2B,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,KAAK,SAAS,CAAC,aAAa,GAAG,CACrE,CAAC;wBACF,OAAO;qBACR;oBAED,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAClC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAC/C,CAAC;oBACF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,WAAC,OAAA,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAA,EAAA,CAAC,CAAC;oBAChE,MAAM,OAAO,GAAG,IAAA,mBAAU,EAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;oBAC1D,MAAM,KAAK,GAAG,IAAA,mBAAU,EAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;oBAExD,KAAK,IAAI,IAAI,IAAI,OAAO,EAAE;wBAExB,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,iCAAiC,SAAS,CAAC,aAAa,GAAG,CAC5D,CAAC;wBACF,SAAS,CAAC,OAAO,CACf,IAAI,CAAC,SAAS,CAAC;4BACb,KAAK,EAAE,OAAO,CAAC,KAAK;4BACpB,OAAO,EAAE,IAAI;yBACd,CAAC,CACH,CAAC;qBACH;oBAED,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;wBACtB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;wBAE/B,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,mCAAmC,SAAS,CAAC,aAAa,GAAG,CAC9D,CAAC;wBACF,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,UAAU,EAAE;4BACrD,MAAM,CAAC,oBAAoB,EAAE,CAAC;yBAC/B;wBACD,SAAS,CAAC,OAAO,CACf,IAAI,CAAC,SAAS,CAAC;4BACb,KAAK,EAAE,OAAO,CAAC,KAAK;4BACpB,KAAK,EAAE,IAAI;4BACX,IAAI,EAAE,MAAM;yBACb,CAAC,CACH,CAAC;qBACH;oBAED,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE;wBACrD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAEpC,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,gCAAgC,SAAS,CAAC,aAAa,GAAG,CAC3D,CAAC;wBACF,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,UAAU,EAAE;4BACrD,MAAM,CAAC,oBAAoB,EAAE,CAAC;yBAC/B;wBACD,SAAS,CAAC,OAAO,CACf,IAAI,CAAC,SAAS,CAAC;4BACb,KAAK,EAAE,OAAO,CAAC,KAAK;4BACpB,OAAO,EAAE,IAAI,CAAC,IAAI;4BAClB,IAAI,EAAE,MAAM;yBACb,CAAC,CACH,CAAC;qBACH;oBAGD,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;oBAE/B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE;wBAEzC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;qBAC7B;gBACH,CAAC,CAAA,CAAC;gBAEF,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;oBAEtD,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;wBACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC1C,IAAI,CAAC,OAAO,EAAE;4BACZ,SAAS;yBACV;wBACD,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;4BAC7C,MAAM,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;4BACvC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;yBAC/B;qBACF;iBACF;gBAED,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE;oBAEvE,IAAI;wBACF,IAAI,CAAC,aAAa,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;wBACzD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;wBACnE,MAAM,OAAO,mCACR,aAAa,KAChB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,GACjB,CAAC;wBACF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;wBACpC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;wBACrC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;wBACrC,MAAM,WAAW,GAAyB,EAAE,CAAC;wBAC7C,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE;4BACzC,MAAM,IAAI,KAAK,CACb,4CAA4C,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAChE,CAAC;yBACH;wBACD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAErE,IACE,WAAW,CAAC,KAAK,KAAK,eAAe,CAAC,KAAK;4BAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CACzB,UAAU,EACV,WAAW,EACX,SAAS,EACT,IAAI,CAAC,IAAI,EACT,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,mCAAI,EAAE,CACxB,EACD;4BAEA,KAAK,IAAI,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;gCACvC,IAAI,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;oCAEjC,SAAS;iCACV;gCAED,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gCAC1C,IAAI,CAAC,OAAO,EAAE;oCACZ,SAAS;iCACV;gCACD,MAAM,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;6BACxC;yBACF;qBACF;oBAAC,OAAO,CAAM,EAAE;wBACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,uCAAuC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,GAAG,CACrD,CAAC;qBACH;iBACF;aACF;;KACF;IAKa,gBAAgB,CAC5B,IAAgB,EAChB,IAA2B;;;YAE3B,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,4BACE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,OAAO,EACjE,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa,GAAG,CAC1C,CAAC;YAEF,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAC5C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,CACX,CAAC;YACd,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,IAAI,IAAI,CAAC,KAAK,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE;gBAC9C,KAAK,GAAG,MAAA,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,mCAAI,SAAS,CAAC;aAC9D;YAED,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;gBACtB,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE;oBAC3B,SAAS;iBACV;gBACD,KAAK,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC/C,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,uBAAuB,IAAI,CAAC,KAAK,MAAM,IAAI,KAAK,SAAS,CAAC,aAAa,GAAG,CAC3E,CAAC;oBACF,MAAM,OAAO,GAIT;wBACF,GAAG,EAAE,IAAI;wBACT,KAAK,EAAE,IAAI,CAAC,KAAK;qBAClB,CAAC;oBACF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE;wBACtB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;qBAC5B;oBACD,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC5C;aACF;YAED,IACE,IAAI,CAAC,KAAK,KAAK,WAAW;gBAC1B,IAAI,CAAC,OAAO;gBACZ,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAC5B;gBACA,KAAK,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBACvD,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,gDAAgD,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,aAAa,GAAG,CAC5F,CAAC;oBACF,SAAS,CAAC,OAAO,CACf,IAAI,CAAC,SAAS,CAAC;wBACb,GAAG,EAAE,IAAI,CAAC,OAAO;wBACjB,KAAK,EAAE,QAAQ;wBACf,KAAK;qBACN,CAAC,CACH,CAAC;iBACH;aACF;;KACF;IAKO,KAAK,CAAC,OAAgB;QAC5B,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;YAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,+BAA+B,CAChC,CAAC;YACF,OAAO;SACR;QAED,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACnC,MAAM,MAAM,GAAG,IAAI,kBAAe,EAAE,CAAC;YAErC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,6BAA6B,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,GAAG,CAC1D,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE;gBAClC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,OAAO,EACP,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,yBAAyB,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,GAAG,CACtD,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,IAAI,UAAU,CAAC,SAAS,EAAE;oBACxB,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBACtC;gBAED,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC/B;IACH,CAAC;CACF;AAt/BD,yBAs/BC"}
|
|
1
|
+
{"version":3,"file":"PubSub.js","sourceRoot":"","sources":["../src/PubSub.ts"],"names":[],"mappings":"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"}
|
package/dist/PubSub.test.js
CHANGED
|
@@ -29,7 +29,7 @@ const pubSubConfig = {
|
|
|
29
29
|
logger: () => { },
|
|
30
30
|
};
|
|
31
31
|
const nymphServer = new nymph_1.Nymph({}, new driver_sqlite3_1.default(sqliteConfig));
|
|
32
|
-
nymphServer.
|
|
32
|
+
nymphServer.addEntityClass(testArtifacts_js_1.EmployeeModel);
|
|
33
33
|
PubSub_1.default.initPublisher(pubSubConfig, nymphServer);
|
|
34
34
|
const app = (0, express_1.default)();
|
|
35
35
|
app.use((0, server_1.default)(nymphServer));
|
|
@@ -42,7 +42,7 @@ const nymphOptions = {
|
|
|
42
42
|
};
|
|
43
43
|
const nymph = new client_node_1.Nymph(nymphOptions);
|
|
44
44
|
const pubsub = new client_node_1.PubSub(nymphOptions, nymph);
|
|
45
|
-
nymph.
|
|
45
|
+
nymph.addEntityClass(testArtifacts_js_1.Employee);
|
|
46
46
|
describe('Nymph REST Server and Client', () => {
|
|
47
47
|
function createJane() {
|
|
48
48
|
return __awaiter(this, void 0, void 0, function* () {
|
package/dist/PubSub.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSub.test.js","sourceRoot":"","sources":["../src/PubSub.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PubSub.test.js","sourceRoot":"","sources":["../src/PubSub.test.ts"],"names":[],"mappings":"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"}
|
package/dist/createServer.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Nymph
|
|
1
|
+
import type { Nymph } from '@nymphjs/nymph';
|
|
2
2
|
import { Config } from './conf';
|
|
3
3
|
import PubSub from './PubSub';
|
|
4
|
-
export default function createServer(port: number | undefined, config: Partial<Config> | undefined, nymph: Nymph
|
|
4
|
+
export default function createServer(port: number | undefined, config: Partial<Config> | undefined, nymph: Nymph): PubSub;
|
package/dist/createServer.js
CHANGED
|
@@ -7,7 +7,7 @@ const http_1 = __importDefault(require("http"));
|
|
|
7
7
|
const websocket_1 = require("websocket");
|
|
8
8
|
const conf_1 = require("./conf");
|
|
9
9
|
const PubSub_1 = __importDefault(require("./PubSub"));
|
|
10
|
-
function createServer(port = 8080, config = {}, nymph
|
|
10
|
+
function createServer(port = 8080, config = {}, nymph) {
|
|
11
11
|
const server = http_1.default.createServer((_request, response) => {
|
|
12
12
|
response.writeHead(404);
|
|
13
13
|
response.end();
|
|
@@ -20,7 +20,7 @@ function createServer(port = 8080, config = {}, nymph, tilmeld) {
|
|
|
20
20
|
httpServer: listener,
|
|
21
21
|
autoAcceptConnections: false,
|
|
22
22
|
});
|
|
23
|
-
const pubsub = new PubSub_1.default(config, nymph, wsServer
|
|
23
|
+
const pubsub = new PubSub_1.default(config, nymph, wsServer);
|
|
24
24
|
const _close = pubsub.close;
|
|
25
25
|
pubsub.close = () => {
|
|
26
26
|
_close.call(pubsub);
|
package/dist/createServer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createServer.js","sourceRoot":"","sources":["../src/createServer.ts"],"names":[],"mappings":";;;;;AACA,gDAAwB;AACxB,yCAAsD;AAEtD,iCAA4D;AAC5D,sDAA8B;AAE9B,SAAwB,YAAY,CAClC,IAAI,GAAG,IAAI,EACX,SAA0B,EAAE,EAC5B,KAAY
|
|
1
|
+
{"version":3,"file":"createServer.js","sourceRoot":"","sources":["../src/createServer.ts"],"names":[],"mappings":";;;;;AACA,gDAAwB;AACxB,yCAAsD;AAEtD,iCAA4D;AAC5D,sDAA8B;AAE9B,SAAwB,YAAY,CAClC,IAAI,GAAG,IAAI,EACX,SAA0B,EAAE,EAC5B,KAAY;IAEZ,MAAM,MAAM,GAAG,cAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;QACtD,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxB,QAAQ,CAAC,GAAG,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;;QACxC,CAAC,MAAA,MAAM,CAAC,MAAM,mCAAI,qBAAQ,CAAC,MAAM,CAAC,CAChC,KAAK,EACL,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACxB,iDAAiD,IAAI,GAAG,CACzD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAI,kBAAe,CAAC;QACnC,UAAU,EAAE,QAAQ;QAMpB,qBAAqB,EAAE,KAAK;KAC7B,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5B,MAAM,CAAC,KAAK,GAAG,GAAG,EAAE;QAClB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AArCD,+BAqCC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nymphjs/pubsub",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.33",
|
|
4
4
|
"description": "NymphJS - PubSub Server",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -31,24 +31,24 @@
|
|
|
31
31
|
},
|
|
32
32
|
"license": "Apache-2.0",
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@nymphjs/nymph": "^1.0.0-alpha.
|
|
34
|
+
"@nymphjs/nymph": "^1.0.0-alpha.33",
|
|
35
35
|
"lodash": "^4.17.21",
|
|
36
36
|
"websocket": "^1.0.34"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@nymphjs/client": "^1.0.0-alpha.
|
|
40
|
-
"@nymphjs/client-node": "^1.0.0-alpha.
|
|
41
|
-
"@nymphjs/driver-sqlite3": "^1.0.0-alpha.
|
|
42
|
-
"@nymphjs/server": "^1.0.0-alpha.
|
|
39
|
+
"@nymphjs/client": "^1.0.0-alpha.33",
|
|
40
|
+
"@nymphjs/client-node": "^1.0.0-alpha.33",
|
|
41
|
+
"@nymphjs/driver-sqlite3": "^1.0.0-alpha.33",
|
|
42
|
+
"@nymphjs/server": "^1.0.0-alpha.33",
|
|
43
43
|
"@tsconfig/recommended": "^1.0.1",
|
|
44
44
|
"@types/express": "^4.17.13",
|
|
45
|
-
"@types/jest": "^27.0
|
|
46
|
-
"@types/lodash": "^4.14.
|
|
45
|
+
"@types/jest": "^27.4.0",
|
|
46
|
+
"@types/lodash": "^4.14.178",
|
|
47
47
|
"@types/websocket": "^1.0.4",
|
|
48
|
-
"express": "^4.17.
|
|
49
|
-
"jest": "^27.
|
|
50
|
-
"ts-jest": "^27.
|
|
51
|
-
"typescript": "^4.
|
|
48
|
+
"express": "^4.17.2",
|
|
49
|
+
"jest": "^27.4.7",
|
|
50
|
+
"ts-jest": "^27.1.2",
|
|
51
|
+
"typescript": "^4.5.4"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "121b84199a62ae64d614de8d1e8b586cf80e7250"
|
|
54
54
|
}
|
package/src/PubSub.test.ts
CHANGED
|
@@ -23,7 +23,7 @@ const pubSubConfig = {
|
|
|
23
23
|
};
|
|
24
24
|
|
|
25
25
|
const nymphServer = new NymphServer({}, new SQLite3Driver(sqliteConfig));
|
|
26
|
-
nymphServer.
|
|
26
|
+
nymphServer.addEntityClass(EmployeeModel);
|
|
27
27
|
PubSubServer.initPublisher(pubSubConfig, nymphServer);
|
|
28
28
|
|
|
29
29
|
const app = express();
|
|
@@ -39,7 +39,7 @@ const nymphOptions = {
|
|
|
39
39
|
};
|
|
40
40
|
const nymph = new Nymph(nymphOptions);
|
|
41
41
|
const pubsub = new PubSub(nymphOptions, nymph);
|
|
42
|
-
nymph.
|
|
42
|
+
nymph.addEntityClass(Employee);
|
|
43
43
|
|
|
44
44
|
describe('Nymph REST Server and Client', () => {
|
|
45
45
|
async function createJane() {
|
package/src/PubSub.ts
CHANGED
|
@@ -5,7 +5,6 @@ import {
|
|
|
5
5
|
Options,
|
|
6
6
|
Selector,
|
|
7
7
|
SerializedEntityData,
|
|
8
|
-
TilmeldInterface,
|
|
9
8
|
} from '@nymphjs/nymph';
|
|
10
9
|
import {
|
|
11
10
|
request,
|
|
@@ -54,11 +53,6 @@ export default class PubSub {
|
|
|
54
53
|
*/
|
|
55
54
|
public server: WebSocketServer;
|
|
56
55
|
|
|
57
|
-
/**
|
|
58
|
-
* An optional Tilmeld user/group manager instance.
|
|
59
|
-
*/
|
|
60
|
-
public tilmeld?: TilmeldInterface;
|
|
61
|
-
|
|
62
56
|
private sessions = new Map<connection, string>();
|
|
63
57
|
protected querySubs: {
|
|
64
58
|
[etype: string]: {
|
|
@@ -79,13 +73,13 @@ export default class PubSub {
|
|
|
79
73
|
public static initPublisher(config: Partial<Config>, nymph: Nymph) {
|
|
80
74
|
const configWithDefaults: Config = { ...defaults, ...config };
|
|
81
75
|
|
|
82
|
-
nymph.on('beforeSaveEntity', (entity: EntityInterface) => {
|
|
76
|
+
nymph.on('beforeSaveEntity', (nymph: Nymph, entity: EntityInterface) => {
|
|
83
77
|
const guid = entity.guid;
|
|
84
78
|
const etype = (entity.constructor as EntityConstructor).ETYPE;
|
|
85
79
|
|
|
86
80
|
const off = nymph.on(
|
|
87
81
|
'afterSaveEntity',
|
|
88
|
-
async (result: Promise<boolean>) => {
|
|
82
|
+
async (_nymph: Nymph, result: Promise<boolean>) => {
|
|
89
83
|
off();
|
|
90
84
|
if (!(await result)) {
|
|
91
85
|
return;
|
|
@@ -104,13 +98,13 @@ export default class PubSub {
|
|
|
104
98
|
);
|
|
105
99
|
});
|
|
106
100
|
|
|
107
|
-
nymph.on('beforeDeleteEntity', (entity: EntityInterface) => {
|
|
101
|
+
nymph.on('beforeDeleteEntity', (nymph: Nymph, entity: EntityInterface) => {
|
|
108
102
|
const guid = entity.guid;
|
|
109
103
|
const etype = (entity.constructor as EntityConstructor).ETYPE;
|
|
110
104
|
|
|
111
105
|
const off = nymph.on(
|
|
112
106
|
'afterDeleteEntity',
|
|
113
|
-
async (result: Promise<boolean>) => {
|
|
107
|
+
async (_nymph: Nymph, result: Promise<boolean>) => {
|
|
114
108
|
off();
|
|
115
109
|
if (!(await result)) {
|
|
116
110
|
return;
|
|
@@ -128,37 +122,40 @@ export default class PubSub {
|
|
|
128
122
|
);
|
|
129
123
|
});
|
|
130
124
|
|
|
131
|
-
nymph.on(
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
125
|
+
nymph.on(
|
|
126
|
+
'beforeDeleteEntityByID',
|
|
127
|
+
(nymph: Nymph, guid: string, className?: string) => {
|
|
128
|
+
try {
|
|
129
|
+
const etype = nymph.getEntityClass(className ?? 'Entity').ETYPE;
|
|
130
|
+
|
|
131
|
+
const off = nymph.on(
|
|
132
|
+
'afterDeleteEntityByID',
|
|
133
|
+
async (_nymph: Nymph, result: Promise<boolean>) => {
|
|
134
|
+
off();
|
|
135
|
+
if (!(await result)) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
this.publish(
|
|
139
|
+
JSON.stringify({
|
|
140
|
+
action: 'publish',
|
|
141
|
+
event: 'delete',
|
|
142
|
+
guid: guid,
|
|
143
|
+
etype: etype,
|
|
144
|
+
}),
|
|
145
|
+
configWithDefaults
|
|
146
|
+
);
|
|
141
147
|
}
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
guid: guid,
|
|
147
|
-
etype: etype,
|
|
148
|
-
}),
|
|
149
|
-
configWithDefaults
|
|
150
|
-
);
|
|
151
|
-
}
|
|
152
|
-
);
|
|
153
|
-
} catch (e: any) {
|
|
154
|
-
return;
|
|
148
|
+
);
|
|
149
|
+
} catch (e: any) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
155
152
|
}
|
|
156
|
-
|
|
153
|
+
);
|
|
157
154
|
|
|
158
|
-
nymph.on('beforeNewUID', (name: string) => {
|
|
155
|
+
nymph.on('beforeNewUID', (nymph: Nymph, name: string) => {
|
|
159
156
|
const off = nymph.on(
|
|
160
157
|
'afterNewUID',
|
|
161
|
-
async (result: Promise<number | null>) => {
|
|
158
|
+
async (_nymph: Nymph, result: Promise<number | null>) => {
|
|
162
159
|
off();
|
|
163
160
|
const value = await result;
|
|
164
161
|
if (value == null) {
|
|
@@ -177,28 +174,10 @@ export default class PubSub {
|
|
|
177
174
|
);
|
|
178
175
|
});
|
|
179
176
|
|
|
180
|
-
nymph.on('beforeSetUID', (name: string, value: number) => {
|
|
181
|
-
const off = nymph.on('afterSetUID', async (result: Promise<boolean>) => {
|
|
182
|
-
off();
|
|
183
|
-
if (!(await result)) {
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
186
|
-
this.publish(
|
|
187
|
-
JSON.stringify({
|
|
188
|
-
action: 'publish',
|
|
189
|
-
event: 'setUID',
|
|
190
|
-
name: name,
|
|
191
|
-
value: value,
|
|
192
|
-
}),
|
|
193
|
-
configWithDefaults
|
|
194
|
-
);
|
|
195
|
-
});
|
|
196
|
-
});
|
|
197
|
-
|
|
198
|
-
nymph.on('beforeRenameUID', (oldName: string, newName: string) => {
|
|
177
|
+
nymph.on('beforeSetUID', (nymph: Nymph, name: string, value: number) => {
|
|
199
178
|
const off = nymph.on(
|
|
200
|
-
'
|
|
201
|
-
async (result: Promise<boolean>) => {
|
|
179
|
+
'afterSetUID',
|
|
180
|
+
async (_nymph: Nymph, result: Promise<boolean>) => {
|
|
202
181
|
off();
|
|
203
182
|
if (!(await result)) {
|
|
204
183
|
return;
|
|
@@ -206,9 +185,9 @@ export default class PubSub {
|
|
|
206
185
|
this.publish(
|
|
207
186
|
JSON.stringify({
|
|
208
187
|
action: 'publish',
|
|
209
|
-
event: '
|
|
210
|
-
|
|
211
|
-
|
|
188
|
+
event: 'setUID',
|
|
189
|
+
name: name,
|
|
190
|
+
value: value,
|
|
212
191
|
}),
|
|
213
192
|
configWithDefaults
|
|
214
193
|
);
|
|
@@ -216,10 +195,34 @@ export default class PubSub {
|
|
|
216
195
|
);
|
|
217
196
|
});
|
|
218
197
|
|
|
219
|
-
nymph.on(
|
|
198
|
+
nymph.on(
|
|
199
|
+
'beforeRenameUID',
|
|
200
|
+
(nymph: Nymph, oldName: string, newName: string) => {
|
|
201
|
+
const off = nymph.on(
|
|
202
|
+
'afterRenameUID',
|
|
203
|
+
async (_nymph: Nymph, result: Promise<boolean>) => {
|
|
204
|
+
off();
|
|
205
|
+
if (!(await result)) {
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
this.publish(
|
|
209
|
+
JSON.stringify({
|
|
210
|
+
action: 'publish',
|
|
211
|
+
event: 'renameUID',
|
|
212
|
+
oldName: oldName,
|
|
213
|
+
newName: newName,
|
|
214
|
+
}),
|
|
215
|
+
configWithDefaults
|
|
216
|
+
);
|
|
217
|
+
}
|
|
218
|
+
);
|
|
219
|
+
}
|
|
220
|
+
);
|
|
221
|
+
|
|
222
|
+
nymph.on('beforeDeleteUID', (nymph: Nymph, name: string) => {
|
|
220
223
|
const off = nymph.on(
|
|
221
224
|
'afterDeleteUID',
|
|
222
|
-
async (result: Promise<boolean>) => {
|
|
225
|
+
async (_nymph: Nymph, result: Promise<boolean>) => {
|
|
223
226
|
off();
|
|
224
227
|
if (!(await result)) {
|
|
225
228
|
return;
|
|
@@ -281,13 +284,11 @@ export default class PubSub {
|
|
|
281
284
|
public constructor(
|
|
282
285
|
config: Partial<Config>,
|
|
283
286
|
nymph: Nymph,
|
|
284
|
-
server: WebSocketServer
|
|
285
|
-
tilmeld?: TilmeldInterface
|
|
287
|
+
server: WebSocketServer
|
|
286
288
|
) {
|
|
287
289
|
this.nymph = nymph;
|
|
288
290
|
this.config = { ...defaults, ...config };
|
|
289
291
|
this.server = server;
|
|
290
|
-
this.tilmeld = tilmeld;
|
|
291
292
|
|
|
292
293
|
this.server.on('request', this.handleRequest.bind(this));
|
|
293
294
|
}
|
|
@@ -530,26 +531,27 @@ export default class PubSub {
|
|
|
530
531
|
if (this.sessions.has(from)) {
|
|
531
532
|
token = this.sessions.get(from);
|
|
532
533
|
}
|
|
533
|
-
|
|
534
|
-
|
|
534
|
+
const nymph = this.nymph.clone();
|
|
535
|
+
if (nymph.tilmeld != null && token != null) {
|
|
536
|
+
const user = await nymph.tilmeld.extractToken(token);
|
|
535
537
|
if (user) {
|
|
536
538
|
// Log in the user for access controls.
|
|
537
|
-
|
|
539
|
+
nymph.tilmeld.fillSession(user);
|
|
538
540
|
}
|
|
539
541
|
}
|
|
540
542
|
this.querySubs[etype][serialArgs].set(from, {
|
|
541
|
-
current: await
|
|
543
|
+
current: await nymph.getEntities(options, ...selectors),
|
|
542
544
|
query: data.query,
|
|
543
545
|
count: !!data.count,
|
|
544
546
|
});
|
|
545
|
-
if (
|
|
547
|
+
if (nymph.tilmeld != null && token != null) {
|
|
546
548
|
// Clear the user that was temporarily logged in.
|
|
547
|
-
|
|
549
|
+
nymph.tilmeld.clearSession();
|
|
548
550
|
}
|
|
549
551
|
this.config.logger(
|
|
550
552
|
'log',
|
|
551
553
|
new Date().toISOString(),
|
|
552
|
-
`Client subscribed to a query! ($serialArgs, ${from.remoteAddress})`
|
|
554
|
+
`Client subscribed to a query! (${serialArgs}, ${from.remoteAddress})`
|
|
553
555
|
);
|
|
554
556
|
|
|
555
557
|
if (this.config.broadcastCounts) {
|
|
@@ -584,7 +586,7 @@ export default class PubSub {
|
|
|
584
586
|
this.config.logger(
|
|
585
587
|
'log',
|
|
586
588
|
new Date().toISOString(),
|
|
587
|
-
`Client unsubscribed from a query! ($serialArgs, ${from.remoteAddress})`
|
|
589
|
+
`Client unsubscribed from a query! (${serialArgs}, ${from.remoteAddress})`
|
|
588
590
|
);
|
|
589
591
|
|
|
590
592
|
const count = this.querySubs[etype][serialArgs].size;
|
|
@@ -769,25 +771,26 @@ export default class PubSub {
|
|
|
769
771
|
// Update currents list.
|
|
770
772
|
let current: EntityInterface[];
|
|
771
773
|
let token: string | undefined;
|
|
774
|
+
const nymph = this.nymph.clone();
|
|
772
775
|
try {
|
|
773
776
|
const [clientOptions, ...selectors] = JSON.parse(curQuery);
|
|
774
777
|
const options: Options = {
|
|
775
778
|
...clientOptions,
|
|
776
|
-
class:
|
|
779
|
+
class: nymph.getEntityClass(clientOptions.class),
|
|
777
780
|
return: 'entity',
|
|
778
781
|
source: 'client',
|
|
779
782
|
};
|
|
780
783
|
if (this.sessions.has(curClient)) {
|
|
781
784
|
token = this.sessions.get(curClient);
|
|
782
785
|
}
|
|
783
|
-
if (
|
|
784
|
-
const user =
|
|
786
|
+
if (nymph.tilmeld != null && token != null) {
|
|
787
|
+
const user = await nymph.tilmeld.extractToken(token);
|
|
785
788
|
if (user) {
|
|
786
789
|
// Log in the user for access controls.
|
|
787
|
-
|
|
790
|
+
nymph.tilmeld.fillSession(user);
|
|
788
791
|
}
|
|
789
792
|
}
|
|
790
|
-
current = await
|
|
793
|
+
current = await nymph.getEntities(options, ...selectors);
|
|
791
794
|
} catch (e: any) {
|
|
792
795
|
this.config.logger(
|
|
793
796
|
'error',
|
|
@@ -862,23 +865,31 @@ export default class PubSub {
|
|
|
862
865
|
// Update curData.
|
|
863
866
|
curData.current = currentGuids;
|
|
864
867
|
|
|
865
|
-
if (
|
|
868
|
+
if (nymph.tilmeld != null && token != null) {
|
|
866
869
|
// Clear the user that was temporarily logged in.
|
|
867
|
-
|
|
870
|
+
nymph.tilmeld.clearSession();
|
|
868
871
|
}
|
|
869
872
|
};
|
|
870
873
|
|
|
871
874
|
if (data.event === 'delete' || data.event === 'update') {
|
|
872
875
|
// Check if it is in any client's currents.
|
|
873
|
-
|
|
874
|
-
const
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
876
|
+
try {
|
|
877
|
+
for (const curClient of curClients.keys()) {
|
|
878
|
+
const curData = curClients.get(curClient);
|
|
879
|
+
if (!curData) {
|
|
880
|
+
continue;
|
|
881
|
+
}
|
|
882
|
+
if (curData.current.indexOf(data.guid) !== -1) {
|
|
883
|
+
await updateClient(curClient, curData);
|
|
884
|
+
updatedClients.add(curClient);
|
|
885
|
+
}
|
|
881
886
|
}
|
|
887
|
+
} catch (e: any) {
|
|
888
|
+
this.config.logger(
|
|
889
|
+
'error',
|
|
890
|
+
new Date().toISOString(),
|
|
891
|
+
`Error checking for client updates! (${e?.message})`
|
|
892
|
+
);
|
|
882
893
|
}
|
|
883
894
|
}
|
|
884
895
|
|
|
@@ -887,12 +898,6 @@ export default class PubSub {
|
|
|
887
898
|
try {
|
|
888
899
|
let [clientOptions, ...selectors] = JSON.parse(curQuery);
|
|
889
900
|
const EntityClass = this.nymph.getEntityClass(clientOptions.class);
|
|
890
|
-
const options: Options = {
|
|
891
|
-
...clientOptions,
|
|
892
|
-
class: EntityClass,
|
|
893
|
-
return: 'entity',
|
|
894
|
-
source: 'client',
|
|
895
|
-
};
|
|
896
901
|
const entityData = data.entity.data;
|
|
897
902
|
entityData.cdate = data.entity.cdate;
|
|
898
903
|
entityData.mdate = data.entity.mdate;
|
package/src/createServer.ts
CHANGED
|
@@ -8,8 +8,7 @@ import PubSub from './PubSub';
|
|
|
8
8
|
export default function createServer(
|
|
9
9
|
port = 8080,
|
|
10
10
|
config: Partial<Config> = {},
|
|
11
|
-
nymph: Nymph
|
|
12
|
-
tilmeld?: TilmeldInterface
|
|
11
|
+
nymph: Nymph
|
|
13
12
|
) {
|
|
14
13
|
const server = http.createServer((_request, response) => {
|
|
15
14
|
response.writeHead(404);
|
|
@@ -34,7 +33,7 @@ export default function createServer(
|
|
|
34
33
|
autoAcceptConnections: false,
|
|
35
34
|
});
|
|
36
35
|
|
|
37
|
-
const pubsub = new PubSub(config, nymph, wsServer
|
|
36
|
+
const pubsub = new PubSub(config, nymph, wsServer);
|
|
38
37
|
|
|
39
38
|
const _close = pubsub.close;
|
|
40
39
|
pubsub.close = () => {
|