@eleven-am/pondsocket 0.1.85 → 0.1.87
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/nest.js +36 -6
- package/package.json +1 -1
package/nest.js
CHANGED
|
@@ -50,6 +50,12 @@ const channelClassKey = Symbol('channel');
|
|
|
50
50
|
const endpointClassKey = Symbol('endpoint');
|
|
51
51
|
const channelsClassKey = Symbol('channels');
|
|
52
52
|
const endpointsClassKey = Symbol('endpoints');
|
|
53
|
+
function isNotEmpty(value) {
|
|
54
|
+
return value !== null &&
|
|
55
|
+
value !== undefined &&
|
|
56
|
+
value !== '' &&
|
|
57
|
+
Object.keys(value).length !== 0;
|
|
58
|
+
}
|
|
53
59
|
function createClassDecorator(key, value) {
|
|
54
60
|
return (0, common_1.applyDecorators)((0, common_1.Injectable)(), (0, common_1.SetMetadata)(key, value));
|
|
55
61
|
}
|
|
@@ -359,8 +365,16 @@ function OnJoinRequest() {
|
|
|
359
365
|
const data = yield originalMethod.apply(instance, resolveJoinParameters(request, response, target, propertyKey));
|
|
360
366
|
if (!response.hasResponded) {
|
|
361
367
|
if (data) {
|
|
362
|
-
const { event } = data, rest = __rest(data, ["event"]);
|
|
363
|
-
|
|
368
|
+
const { event, presence, assigns } = data, rest = __rest(data, ["event", "presence", "assigns"]);
|
|
369
|
+
if (typeof event === 'string' && isNotEmpty(rest)) {
|
|
370
|
+
response.send(event, rest, assigns);
|
|
371
|
+
}
|
|
372
|
+
else if (assigns) {
|
|
373
|
+
response.accept(assigns);
|
|
374
|
+
}
|
|
375
|
+
if (presence) {
|
|
376
|
+
response.trackPresence(presence);
|
|
377
|
+
}
|
|
364
378
|
}
|
|
365
379
|
else {
|
|
366
380
|
response.accept();
|
|
@@ -383,8 +397,19 @@ function OnEvent(event = '*') {
|
|
|
383
397
|
const data = yield originalMethod.apply(instance, resolveEventParameters(request, response, target, propertyKey));
|
|
384
398
|
if (!response.hasResponded) {
|
|
385
399
|
if (data) {
|
|
386
|
-
const { event } = data, rest = __rest(data, ["event"]);
|
|
387
|
-
|
|
400
|
+
const { event, presence, updatePresence, assigns } = data, rest = __rest(data, ["event", "presence", "updatePresence", "assigns"]);
|
|
401
|
+
if (typeof event === 'string' && isNotEmpty(rest)) {
|
|
402
|
+
response.send(event, rest, assigns);
|
|
403
|
+
}
|
|
404
|
+
else if (assigns) {
|
|
405
|
+
response.accept(assigns);
|
|
406
|
+
}
|
|
407
|
+
if (presence) {
|
|
408
|
+
response.trackPresence(presence);
|
|
409
|
+
}
|
|
410
|
+
else if (updatePresence) {
|
|
411
|
+
response.updatePresence(updatePresence);
|
|
412
|
+
}
|
|
388
413
|
}
|
|
389
414
|
else {
|
|
390
415
|
response.accept();
|
|
@@ -407,8 +432,13 @@ function OnConnectionRequest() {
|
|
|
407
432
|
const data = yield originalMethod.apply(instance, resolveConnectionParameters(request, response, target, propertyKey));
|
|
408
433
|
if (!response.hasResponded) {
|
|
409
434
|
if (data) {
|
|
410
|
-
const { event } = data, rest = __rest(data, ["event"]);
|
|
411
|
-
|
|
435
|
+
const { event, assigns } = data, rest = __rest(data, ["event", "assigns"]);
|
|
436
|
+
if (typeof event === 'string' && isNotEmpty(rest)) {
|
|
437
|
+
response.send(event, rest, assigns);
|
|
438
|
+
}
|
|
439
|
+
else if (assigns) {
|
|
440
|
+
response.accept(assigns);
|
|
441
|
+
}
|
|
412
442
|
}
|
|
413
443
|
else {
|
|
414
444
|
response.accept();
|