stream-chat 8.38.0 → 8.40.0
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/README.md +15 -2
- package/dist/browser.es.js +1667 -372
- package/dist/browser.es.js.map +1 -1
- package/dist/browser.full-bundle.min.js +1 -1
- package/dist/browser.full-bundle.min.js.map +1 -1
- package/dist/browser.js +1668 -371
- package/dist/browser.js.map +1 -1
- package/dist/index.es.js +1667 -372
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +1668 -371
- package/dist/index.js.map +1 -1
- package/dist/types/channel.d.ts +6 -8
- package/dist/types/channel.d.ts.map +1 -1
- package/dist/types/channel_state.d.ts +14 -22
- package/dist/types/channel_state.d.ts.map +1 -1
- package/dist/types/client.d.ts +3 -1
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/constants.d.ts +7 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/store.d.ts +14 -0
- package/dist/types/store.d.ts.map +1 -0
- package/dist/types/thread.d.ts +93 -29
- package/dist/types/thread.d.ts.map +1 -1
- package/dist/types/thread_manager.d.ts +51 -0
- package/dist/types/thread_manager.d.ts.map +1 -0
- package/dist/types/types.d.ts +35 -18
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/utils.d.ts +48 -7
- package/dist/types/utils.d.ts.map +1 -1
- package/package.json +7 -6
- package/src/channel.ts +28 -13
- package/src/channel_state.ts +30 -27
- package/src/client.ts +182 -104
- package/src/constants.ts +4 -0
- package/src/index.ts +2 -0
- package/src/store.ts +57 -0
- package/src/thread.ts +470 -107
- package/src/thread_manager.ts +297 -0
- package/src/types.ts +34 -19
- package/src/utils.ts +362 -43
package/dist/browser.js
CHANGED
|
@@ -118,9 +118,9 @@ var decodeBase64 = function decodeBase64(s) {
|
|
|
118
118
|
|
|
119
119
|
var https = null;
|
|
120
120
|
|
|
121
|
-
function ownKeys$
|
|
121
|
+
function ownKeys$b(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
122
122
|
|
|
123
|
-
function _objectSpread$
|
|
123
|
+
function _objectSpread$b(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$b(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$b(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
124
124
|
|
|
125
125
|
function _createForOfIteratorHelper$4(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$4(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function (_e) { function e(_x) { return _e.apply(this, arguments); } e.toString = function () { return _e.toString(); }; return e; }(function (e) { throw e; }), f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function (_e2) { function e(_x2) { return _e2.apply(this, arguments); } e.toString = function () { return _e2.toString(); }; return e; }(function (e) { didErr = true; err = e; }), f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
126
126
|
|
|
@@ -374,89 +374,120 @@ var axiosParamsSerializer = function axiosParamsSerializer(params) {
|
|
|
374
374
|
return newParams.join('&');
|
|
375
375
|
};
|
|
376
376
|
/**
|
|
377
|
-
*
|
|
378
|
-
* and sets the status to received if missing
|
|
379
|
-
*
|
|
380
|
-
* @param {MessageResponse<StreamChatGenerics>} message a message object
|
|
377
|
+
* Takes the message object, parses the dates, sets `__html`
|
|
378
|
+
* and sets the status to `received` if missing; returns a new message object.
|
|
381
379
|
*
|
|
380
|
+
* @param {MessageResponse<StreamChatGenerics>} message `MessageResponse` object
|
|
382
381
|
*/
|
|
383
382
|
|
|
384
383
|
function formatMessage(message) {
|
|
385
|
-
return _objectSpread$
|
|
384
|
+
return _objectSpread$b(_objectSpread$b({}, message), {}, {
|
|
386
385
|
/**
|
|
387
386
|
* @deprecated please use `html`
|
|
388
387
|
*/
|
|
389
388
|
__html: message.html,
|
|
390
|
-
// parse the
|
|
389
|
+
// parse the dates
|
|
391
390
|
pinned_at: message.pinned_at ? new Date(message.pinned_at) : null,
|
|
392
391
|
created_at: message.created_at ? new Date(message.created_at) : new Date(),
|
|
393
392
|
updated_at: message.updated_at ? new Date(message.updated_at) : new Date(),
|
|
393
|
+
deleted_at: message.deleted_at ? new Date(message.deleted_at) : null,
|
|
394
394
|
status: message.status || 'received',
|
|
395
395
|
reaction_groups: maybeGetReactionGroupsFallback(message.reaction_groups, message.reaction_counts, message.reaction_scores)
|
|
396
396
|
});
|
|
397
397
|
}
|
|
398
|
-
function
|
|
398
|
+
var findIndexInSortedArray = function findIndexInSortedArray(_ref) {
|
|
399
|
+
var needle = _ref.needle,
|
|
400
|
+
sortedArray = _ref.sortedArray,
|
|
401
|
+
_ref$selectValueToCom = _ref.selectValueToCompare,
|
|
402
|
+
selectValueToCompare = _ref$selectValueToCom === void 0 ? function (e) {
|
|
403
|
+
return e;
|
|
404
|
+
} : _ref$selectValueToCom,
|
|
405
|
+
_ref$sortDirection = _ref.sortDirection,
|
|
406
|
+
sortDirection = _ref$sortDirection === void 0 ? 'ascending' : _ref$sortDirection;
|
|
407
|
+
if (!sortedArray.length) return 0;
|
|
408
|
+
var left = 0;
|
|
409
|
+
var right = sortedArray.length - 1;
|
|
410
|
+
var middle = 0;
|
|
411
|
+
|
|
412
|
+
var recalculateMiddle = function recalculateMiddle() {
|
|
413
|
+
middle = Math.round((left + right) / 2);
|
|
414
|
+
};
|
|
415
|
+
|
|
416
|
+
var actualNeedle = selectValueToCompare(needle);
|
|
417
|
+
recalculateMiddle();
|
|
418
|
+
|
|
419
|
+
while (left <= right) {
|
|
420
|
+
// if (actualNeedle === selectValueToCompare(sortedArray[middle])) return middle;
|
|
421
|
+
if (sortDirection === 'ascending' && actualNeedle < selectValueToCompare(sortedArray[middle]) || sortDirection === 'descending' && actualNeedle > selectValueToCompare(sortedArray[middle])) {
|
|
422
|
+
right = middle - 1;
|
|
423
|
+
} else {
|
|
424
|
+
left = middle + 1;
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
recalculateMiddle();
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
return left;
|
|
431
|
+
};
|
|
432
|
+
function addToMessageList(messages, newMessage) {
|
|
399
433
|
var timestampChanged = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
400
434
|
var sortBy = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'created_at';
|
|
401
435
|
var addIfDoesNotExist = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;
|
|
402
436
|
var addMessageToList = addIfDoesNotExist || timestampChanged;
|
|
403
|
-
|
|
437
|
+
|
|
438
|
+
var newMessages = _toConsumableArray__default['default'](messages); // if created_at has changed, message should be filtered and re-inserted in correct order
|
|
404
439
|
// slow op but usually this only happens for a message inserted to state before actual response with correct timestamp
|
|
405
440
|
|
|
441
|
+
|
|
406
442
|
if (timestampChanged) {
|
|
407
|
-
|
|
408
|
-
return !(
|
|
443
|
+
newMessages = newMessages.filter(function (message) {
|
|
444
|
+
return !(message.id && newMessage.id === message.id);
|
|
409
445
|
});
|
|
410
|
-
} //
|
|
446
|
+
} // for empty list just concat and return unless it's an update or deletion
|
|
411
447
|
|
|
412
448
|
|
|
413
|
-
|
|
449
|
+
if (!newMessages.length && addMessageToList) {
|
|
450
|
+
return newMessages.concat(newMessage);
|
|
451
|
+
} // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
414
452
|
|
|
415
|
-
if (messageArrayLength === 0 && addMessageToList) {
|
|
416
|
-
return messageArr.concat(message);
|
|
417
|
-
} else if (messageArrayLength === 0) {
|
|
418
|
-
return _toConsumableArray__default['default'](messageArr);
|
|
419
|
-
}
|
|
420
453
|
|
|
421
|
-
var messageTime =
|
|
422
|
-
|
|
454
|
+
var messageTime = newMessage[sortBy].getTime(); // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
455
|
+
|
|
456
|
+
var messageIsNewest = newMessages.at(-1)[sortBy].getTime() < messageTime; // if message is newer than last item in the list concat and return unless it's an update or deletion
|
|
423
457
|
|
|
424
458
|
if (messageIsNewest && addMessageToList) {
|
|
425
|
-
return
|
|
426
|
-
} else if (messageIsNewest) {
|
|
427
|
-
return _toConsumableArray__default['default'](messageArr);
|
|
459
|
+
return newMessages.concat(newMessage);
|
|
428
460
|
} // find the closest index to push the new message
|
|
429
461
|
|
|
430
462
|
|
|
431
|
-
var
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
463
|
+
var insertionIndex = findIndexInSortedArray({
|
|
464
|
+
needle: newMessage,
|
|
465
|
+
sortedArray: messages,
|
|
466
|
+
sortDirection: 'ascending',
|
|
467
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
468
|
+
selectValueToCompare: function selectValueToCompare(m) {
|
|
469
|
+
return m[sortBy].getTime();
|
|
470
|
+
}
|
|
471
|
+
}); // message already exists and not filtered with timestampChanged, update and return
|
|
440
472
|
|
|
441
|
-
if (!timestampChanged &&
|
|
442
|
-
if (
|
|
443
|
-
|
|
444
|
-
return
|
|
473
|
+
if (!timestampChanged && newMessage.id) {
|
|
474
|
+
if (newMessages[insertionIndex] && newMessage.id === newMessages[insertionIndex].id) {
|
|
475
|
+
newMessages[insertionIndex] = newMessage;
|
|
476
|
+
return newMessages;
|
|
445
477
|
}
|
|
446
478
|
|
|
447
|
-
if (
|
|
448
|
-
|
|
449
|
-
return
|
|
479
|
+
if (newMessages[insertionIndex - 1] && newMessage.id === newMessages[insertionIndex - 1].id) {
|
|
480
|
+
newMessages[insertionIndex - 1] = newMessage;
|
|
481
|
+
return newMessages;
|
|
450
482
|
}
|
|
451
|
-
} //
|
|
452
|
-
// or have a timestamp change.
|
|
483
|
+
} // do not add updated or deleted messages to the list if they already exist or come with a timestamp change
|
|
453
484
|
|
|
454
485
|
|
|
455
486
|
if (addMessageToList) {
|
|
456
|
-
|
|
487
|
+
newMessages.splice(insertionIndex, 0, newMessage);
|
|
457
488
|
}
|
|
458
489
|
|
|
459
|
-
return
|
|
490
|
+
return newMessages;
|
|
460
491
|
}
|
|
461
492
|
|
|
462
493
|
function maybeGetReactionGroupsFallback(groups, counts, scores) {
|
|
@@ -479,11 +510,259 @@ function maybeGetReactionGroupsFallback(groups, counts, scores) {
|
|
|
479
510
|
}
|
|
480
511
|
|
|
481
512
|
return null;
|
|
513
|
+
} // works exactly the same as lodash.throttle
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
var throttle = function throttle(fn) {
|
|
517
|
+
var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 200;
|
|
518
|
+
|
|
519
|
+
var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
520
|
+
_ref2$leading = _ref2.leading,
|
|
521
|
+
leading = _ref2$leading === void 0 ? true : _ref2$leading,
|
|
522
|
+
_ref2$trailing = _ref2.trailing,
|
|
523
|
+
trailing = _ref2$trailing === void 0 ? false : _ref2$trailing;
|
|
524
|
+
|
|
525
|
+
var runningTimeout = null;
|
|
526
|
+
var storedArgs = null;
|
|
527
|
+
return function () {
|
|
528
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
529
|
+
args[_key] = arguments[_key];
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
if (runningTimeout) {
|
|
533
|
+
if (trailing) storedArgs = args;
|
|
534
|
+
return;
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
if (leading) fn.apply(void 0, args);
|
|
538
|
+
|
|
539
|
+
var timeoutHandler = function timeoutHandler() {
|
|
540
|
+
if (storedArgs) {
|
|
541
|
+
fn.apply(void 0, _toConsumableArray__default['default'](storedArgs));
|
|
542
|
+
storedArgs = null;
|
|
543
|
+
runningTimeout = setTimeout(timeoutHandler, timeout);
|
|
544
|
+
return;
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
runningTimeout = null;
|
|
548
|
+
};
|
|
549
|
+
|
|
550
|
+
runningTimeout = setTimeout(timeoutHandler, timeout);
|
|
551
|
+
};
|
|
552
|
+
};
|
|
553
|
+
function binarySearchByDateEqualOrNearestGreater(array, targetDate) {
|
|
554
|
+
var left = 0;
|
|
555
|
+
var right = array.length - 1;
|
|
556
|
+
|
|
557
|
+
while (left <= right) {
|
|
558
|
+
var mid = Math.floor((left + right) / 2);
|
|
559
|
+
var midCreatedAt = array[mid].created_at;
|
|
560
|
+
|
|
561
|
+
if (!midCreatedAt) {
|
|
562
|
+
left += 1;
|
|
563
|
+
continue;
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
var midDate = new Date(midCreatedAt);
|
|
567
|
+
|
|
568
|
+
if (midDate.getTime() === targetDate.getTime()) {
|
|
569
|
+
return mid;
|
|
570
|
+
} else if (midDate.getTime() < targetDate.getTime()) {
|
|
571
|
+
left = mid + 1;
|
|
572
|
+
} else {
|
|
573
|
+
right = mid - 1;
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
return left;
|
|
482
578
|
}
|
|
483
579
|
|
|
484
|
-
|
|
580
|
+
var messagePaginationCreatedAtAround = function messagePaginationCreatedAtAround(_ref3) {
|
|
581
|
+
var parentSet = _ref3.parentSet,
|
|
582
|
+
requestedPageSize = _ref3.requestedPageSize,
|
|
583
|
+
returnedPage = _ref3.returnedPage,
|
|
584
|
+
messagePaginationOptions = _ref3.messagePaginationOptions;
|
|
585
|
+
|
|
586
|
+
var newPagination = _objectSpread$b({}, parentSet.pagination);
|
|
587
|
+
|
|
588
|
+
if (!(messagePaginationOptions !== null && messagePaginationOptions !== void 0 && messagePaginationOptions.created_at_around)) return newPagination;
|
|
589
|
+
var hasPrev;
|
|
590
|
+
var hasNext;
|
|
591
|
+
var updateHasPrev;
|
|
592
|
+
var updateHasNext;
|
|
593
|
+
var createdAtAroundDate = new Date(messagePaginationOptions.created_at_around);
|
|
594
|
+
var _ref4 = [returnedPage[0], returnedPage.slice(-1)[0]],
|
|
595
|
+
firstPageMsg = _ref4[0],
|
|
596
|
+
lastPageMsg = _ref4[1]; // expect ASC order (from oldest to newest)
|
|
597
|
+
|
|
598
|
+
var wholePageHasNewerMessages = !!(firstPageMsg !== null && firstPageMsg !== void 0 && firstPageMsg.created_at) && new Date(firstPageMsg.created_at) > createdAtAroundDate;
|
|
599
|
+
var wholePageHasOlderMessages = !!(lastPageMsg !== null && lastPageMsg !== void 0 && lastPageMsg.created_at) && new Date(lastPageMsg.created_at) < createdAtAroundDate;
|
|
600
|
+
var requestedPageSizeNotMet = requestedPageSize > parentSet.messages.length && requestedPageSize > returnedPage.length;
|
|
601
|
+
var noMoreMessages = (requestedPageSize > parentSet.messages.length || parentSet.messages.length >= returnedPage.length) && requestedPageSize > returnedPage.length;
|
|
602
|
+
|
|
603
|
+
if (wholePageHasNewerMessages) {
|
|
604
|
+
hasPrev = false;
|
|
605
|
+
updateHasPrev = true;
|
|
606
|
+
|
|
607
|
+
if (requestedPageSizeNotMet) {
|
|
608
|
+
hasNext = false;
|
|
609
|
+
updateHasNext = true;
|
|
610
|
+
}
|
|
611
|
+
} else if (wholePageHasOlderMessages) {
|
|
612
|
+
hasNext = false;
|
|
613
|
+
updateHasNext = true;
|
|
614
|
+
|
|
615
|
+
if (requestedPageSizeNotMet) {
|
|
616
|
+
hasPrev = false;
|
|
617
|
+
updateHasPrev = true;
|
|
618
|
+
}
|
|
619
|
+
} else if (noMoreMessages) {
|
|
620
|
+
hasNext = hasPrev = false;
|
|
621
|
+
updateHasPrev = updateHasNext = true;
|
|
622
|
+
} else {
|
|
623
|
+
var _parentSet$messages$, _parentSet$messages$s;
|
|
485
624
|
|
|
486
|
-
|
|
625
|
+
var firstPageMsgIsFirstInSet = (firstPageMsg === null || firstPageMsg === void 0 ? void 0 : firstPageMsg.id) && firstPageMsg.id === ((_parentSet$messages$ = parentSet.messages[0]) === null || _parentSet$messages$ === void 0 ? void 0 : _parentSet$messages$.id),
|
|
626
|
+
lastPageMsgIsLastInSet = (lastPageMsg === null || lastPageMsg === void 0 ? void 0 : lastPageMsg.id) && lastPageMsg.id === ((_parentSet$messages$s = parentSet.messages.slice(-1)[0]) === null || _parentSet$messages$s === void 0 ? void 0 : _parentSet$messages$s.id);
|
|
627
|
+
updateHasPrev = firstPageMsgIsFirstInSet;
|
|
628
|
+
updateHasNext = lastPageMsgIsLastInSet;
|
|
629
|
+
var midPointByCount = Math.floor(returnedPage.length / 2);
|
|
630
|
+
var midPointByCreationDate = binarySearchByDateEqualOrNearestGreater(returnedPage, createdAtAroundDate);
|
|
631
|
+
|
|
632
|
+
if (midPointByCreationDate !== -1) {
|
|
633
|
+
hasPrev = midPointByCount <= midPointByCreationDate;
|
|
634
|
+
hasNext = midPointByCount >= midPointByCreationDate;
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
if (updateHasPrev && typeof hasPrev !== 'undefined') newPagination.hasPrev = hasPrev;
|
|
639
|
+
if (updateHasNext && typeof hasNext !== 'undefined') newPagination.hasNext = hasNext;
|
|
640
|
+
return newPagination;
|
|
641
|
+
};
|
|
642
|
+
|
|
643
|
+
var messagePaginationIdAround = function messagePaginationIdAround(_ref5) {
|
|
644
|
+
var _parentSet$messages$2, _parentSet$messages$s2;
|
|
645
|
+
|
|
646
|
+
var parentSet = _ref5.parentSet,
|
|
647
|
+
requestedPageSize = _ref5.requestedPageSize,
|
|
648
|
+
returnedPage = _ref5.returnedPage,
|
|
649
|
+
messagePaginationOptions = _ref5.messagePaginationOptions;
|
|
650
|
+
|
|
651
|
+
var newPagination = _objectSpread$b({}, parentSet.pagination);
|
|
652
|
+
|
|
653
|
+
var _ref6 = messagePaginationOptions || {},
|
|
654
|
+
id_around = _ref6.id_around;
|
|
655
|
+
|
|
656
|
+
if (!id_around) return newPagination;
|
|
657
|
+
var hasPrev;
|
|
658
|
+
var hasNext;
|
|
659
|
+
var _ref7 = [returnedPage[0], returnedPage.slice(-1)[0]],
|
|
660
|
+
firstPageMsg = _ref7[0],
|
|
661
|
+
lastPageMsg = _ref7[1];
|
|
662
|
+
var firstPageMsgIsFirstInSet = (firstPageMsg === null || firstPageMsg === void 0 ? void 0 : firstPageMsg.id) === ((_parentSet$messages$2 = parentSet.messages[0]) === null || _parentSet$messages$2 === void 0 ? void 0 : _parentSet$messages$2.id),
|
|
663
|
+
lastPageMsgIsLastInSet = (lastPageMsg === null || lastPageMsg === void 0 ? void 0 : lastPageMsg.id) === ((_parentSet$messages$s2 = parentSet.messages.slice(-1)[0]) === null || _parentSet$messages$s2 === void 0 ? void 0 : _parentSet$messages$s2.id);
|
|
664
|
+
var updateHasPrev = firstPageMsgIsFirstInSet;
|
|
665
|
+
var updateHasNext = lastPageMsgIsLastInSet;
|
|
666
|
+
var midPoint = Math.floor(returnedPage.length / 2);
|
|
667
|
+
var noMoreMessages = (requestedPageSize > parentSet.messages.length || parentSet.messages.length >= returnedPage.length) && requestedPageSize > returnedPage.length;
|
|
668
|
+
|
|
669
|
+
if (noMoreMessages) {
|
|
670
|
+
hasNext = hasPrev = false;
|
|
671
|
+
updateHasPrev = updateHasNext = true;
|
|
672
|
+
} else if (!returnedPage[midPoint]) {
|
|
673
|
+
return newPagination;
|
|
674
|
+
} else if (returnedPage[midPoint].id === id_around) {
|
|
675
|
+
hasPrev = hasNext = true;
|
|
676
|
+
} else {
|
|
677
|
+
var targetMsg;
|
|
678
|
+
var halves = [returnedPage.slice(0, midPoint), returnedPage.slice(midPoint)];
|
|
679
|
+
hasPrev = hasNext = true;
|
|
680
|
+
|
|
681
|
+
for (var i = 0; i < halves.length; i++) {
|
|
682
|
+
targetMsg = halves[i].find(function (message) {
|
|
683
|
+
return message.id === id_around;
|
|
684
|
+
});
|
|
685
|
+
|
|
686
|
+
if (targetMsg && i === 0) {
|
|
687
|
+
hasPrev = false;
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
if (targetMsg && i === 1) {
|
|
691
|
+
hasNext = false;
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
}
|
|
695
|
+
|
|
696
|
+
if (updateHasPrev && typeof hasPrev !== 'undefined') newPagination.hasPrev = hasPrev;
|
|
697
|
+
if (updateHasNext && typeof hasNext !== 'undefined') newPagination.hasNext = hasNext;
|
|
698
|
+
return newPagination;
|
|
699
|
+
};
|
|
700
|
+
|
|
701
|
+
var messagePaginationLinear = function messagePaginationLinear(_ref8) {
|
|
702
|
+
var _parentSet$messages$3, _parentSet$messages$s3;
|
|
703
|
+
|
|
704
|
+
var parentSet = _ref8.parentSet,
|
|
705
|
+
requestedPageSize = _ref8.requestedPageSize,
|
|
706
|
+
returnedPage = _ref8.returnedPage,
|
|
707
|
+
messagePaginationOptions = _ref8.messagePaginationOptions;
|
|
708
|
+
|
|
709
|
+
var newPagination = _objectSpread$b({}, parentSet.pagination);
|
|
710
|
+
|
|
711
|
+
var hasPrev;
|
|
712
|
+
var hasNext;
|
|
713
|
+
var _ref9 = [returnedPage[0], returnedPage.slice(-1)[0]],
|
|
714
|
+
firstPageMsg = _ref9[0],
|
|
715
|
+
lastPageMsg = _ref9[1];
|
|
716
|
+
var firstPageMsgIsFirstInSet = (firstPageMsg === null || firstPageMsg === void 0 ? void 0 : firstPageMsg.id) && firstPageMsg.id === ((_parentSet$messages$3 = parentSet.messages[0]) === null || _parentSet$messages$3 === void 0 ? void 0 : _parentSet$messages$3.id),
|
|
717
|
+
lastPageMsgIsLastInSet = (lastPageMsg === null || lastPageMsg === void 0 ? void 0 : lastPageMsg.id) && lastPageMsg.id === ((_parentSet$messages$s3 = parentSet.messages.slice(-1)[0]) === null || _parentSet$messages$s3 === void 0 ? void 0 : _parentSet$messages$s3.id);
|
|
718
|
+
var queriedNextMessages = messagePaginationOptions && (messagePaginationOptions.created_at_after_or_equal || messagePaginationOptions.created_at_after || messagePaginationOptions.id_gt || messagePaginationOptions.id_gte);
|
|
719
|
+
var queriedPrevMessages = typeof messagePaginationOptions === 'undefined' ? true : messagePaginationOptions.created_at_before_or_equal || messagePaginationOptions.created_at_before || messagePaginationOptions.id_lt || messagePaginationOptions.id_lte || messagePaginationOptions.offset;
|
|
720
|
+
var containsUnrecognizedOptionsOnly = !queriedNextMessages && !queriedPrevMessages && !(messagePaginationOptions !== null && messagePaginationOptions !== void 0 && messagePaginationOptions.id_around) && !(messagePaginationOptions !== null && messagePaginationOptions !== void 0 && messagePaginationOptions.created_at_around);
|
|
721
|
+
var hasMore = returnedPage.length >= requestedPageSize;
|
|
722
|
+
|
|
723
|
+
if (typeof queriedPrevMessages !== 'undefined' || containsUnrecognizedOptionsOnly) {
|
|
724
|
+
hasPrev = hasMore;
|
|
725
|
+
}
|
|
726
|
+
|
|
727
|
+
if (typeof queriedNextMessages !== 'undefined') {
|
|
728
|
+
hasNext = hasMore;
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
var returnedPageIsEmpty = returnedPage.length === 0;
|
|
732
|
+
if ((firstPageMsgIsFirstInSet || returnedPageIsEmpty) && typeof hasPrev !== 'undefined') newPagination.hasPrev = hasPrev;
|
|
733
|
+
if ((lastPageMsgIsLastInSet || returnedPageIsEmpty) && typeof hasNext !== 'undefined') newPagination.hasNext = hasNext;
|
|
734
|
+
return newPagination;
|
|
735
|
+
};
|
|
736
|
+
|
|
737
|
+
var messageSetPagination = function messageSetPagination(params) {
|
|
738
|
+
var _params$messagePagina, _params$messagePagina2;
|
|
739
|
+
|
|
740
|
+
if (params.parentSet.messages.length < params.returnedPage.length) {
|
|
741
|
+
var _params$logger;
|
|
742
|
+
|
|
743
|
+
(_params$logger = params.logger) === null || _params$logger === void 0 ? void 0 : _params$logger.call(params, 'error', 'Corrupted message set state: parent set size < returned page size');
|
|
744
|
+
return params.parentSet.pagination;
|
|
745
|
+
}
|
|
746
|
+
|
|
747
|
+
if ((_params$messagePagina = params.messagePaginationOptions) !== null && _params$messagePagina !== void 0 && _params$messagePagina.created_at_around) {
|
|
748
|
+
return messagePaginationCreatedAtAround(params);
|
|
749
|
+
} else if ((_params$messagePagina2 = params.messagePaginationOptions) !== null && _params$messagePagina2 !== void 0 && _params$messagePagina2.id_around) {
|
|
750
|
+
return messagePaginationIdAround(params);
|
|
751
|
+
} else {
|
|
752
|
+
return messagePaginationLinear(params);
|
|
753
|
+
}
|
|
754
|
+
};
|
|
755
|
+
|
|
756
|
+
var DEFAULT_QUERY_CHANNELS_MESSAGE_LIST_PAGE_SIZE = 25;
|
|
757
|
+
var DEFAULT_QUERY_CHANNEL_MESSAGE_LIST_PAGE_SIZE = 100;
|
|
758
|
+
var DEFAULT_MESSAGE_SET_PAGINATION = {
|
|
759
|
+
hasNext: true,
|
|
760
|
+
hasPrev: true
|
|
761
|
+
};
|
|
762
|
+
|
|
763
|
+
function ownKeys$a(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
764
|
+
|
|
765
|
+
function _objectSpread$a(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$a(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$a(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
487
766
|
|
|
488
767
|
/**
|
|
489
768
|
* ChannelState - A container class for the channel state.
|
|
@@ -538,6 +817,10 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
538
817
|
|
|
539
818
|
_defineProperty__default['default'](this, "messageSets", []);
|
|
540
819
|
|
|
820
|
+
_defineProperty__default['default'](this, "formatMessage", function (message) {
|
|
821
|
+
return formatMessage(message);
|
|
822
|
+
});
|
|
823
|
+
|
|
541
824
|
_defineProperty__default['default'](this, "setIsUpToDate", function (isUpToDate) {
|
|
542
825
|
_this.isUpToDate = isUpToDate;
|
|
543
826
|
});
|
|
@@ -560,7 +843,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
560
843
|
if (!message) return;
|
|
561
844
|
if (message.poll_id !== pollVote.poll_id) return;
|
|
562
845
|
|
|
563
|
-
var updatedPoll = _objectSpread$
|
|
846
|
+
var updatedPoll = _objectSpread$a({}, poll);
|
|
564
847
|
|
|
565
848
|
var ownVotes = _toConsumableArray__default['default'](((_message$poll = message.poll) === null || _message$poll === void 0 ? void 0 : _message$poll.own_votes) || []);
|
|
566
849
|
|
|
@@ -582,7 +865,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
582
865
|
|
|
583
866
|
updatedPoll.own_votes = ownVotes;
|
|
584
867
|
|
|
585
|
-
var newMessage = _objectSpread$
|
|
868
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
586
869
|
poll: updatedPoll
|
|
587
870
|
});
|
|
588
871
|
|
|
@@ -597,7 +880,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
597
880
|
if (!message) return;
|
|
598
881
|
if (message.poll_id !== pollVote.poll_id) return;
|
|
599
882
|
|
|
600
|
-
var updatedPoll = _objectSpread$
|
|
883
|
+
var updatedPoll = _objectSpread$a({}, poll);
|
|
601
884
|
|
|
602
885
|
var ownVotes = _toConsumableArray__default['default'](((_message$poll2 = message.poll) === null || _message$poll2 === void 0 ? void 0 : _message$poll2.own_votes) || []);
|
|
603
886
|
|
|
@@ -607,7 +890,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
607
890
|
|
|
608
891
|
updatedPoll.own_votes = ownVotes;
|
|
609
892
|
|
|
610
|
-
var newMessage = _objectSpread$
|
|
893
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
611
894
|
poll: updatedPoll
|
|
612
895
|
});
|
|
613
896
|
|
|
@@ -622,7 +905,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
622
905
|
if (!message) return;
|
|
623
906
|
if (message.poll_id !== pollVote.poll_id) return;
|
|
624
907
|
|
|
625
|
-
var updatedPoll = _objectSpread$
|
|
908
|
+
var updatedPoll = _objectSpread$a({}, poll);
|
|
626
909
|
|
|
627
910
|
var ownVotes = _toConsumableArray__default['default'](((_message$poll3 = message.poll) === null || _message$poll3 === void 0 ? void 0 : _message$poll3.own_votes) || []);
|
|
628
911
|
|
|
@@ -638,7 +921,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
638
921
|
|
|
639
922
|
updatedPoll.own_votes = ownVotes;
|
|
640
923
|
|
|
641
|
-
var newMessage = _objectSpread$
|
|
924
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
642
925
|
poll: updatedPoll
|
|
643
926
|
});
|
|
644
927
|
|
|
@@ -652,11 +935,11 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
652
935
|
|
|
653
936
|
if (!message) return;
|
|
654
937
|
|
|
655
|
-
var updatedPoll = _objectSpread$
|
|
938
|
+
var updatedPoll = _objectSpread$a(_objectSpread$a({}, poll), {}, {
|
|
656
939
|
own_votes: _toConsumableArray__default['default'](((_message$poll4 = message.poll) === null || _message$poll4 === void 0 ? void 0 : _message$poll4.own_votes) || [])
|
|
657
940
|
});
|
|
658
941
|
|
|
659
|
-
var newMessage = _objectSpread$
|
|
942
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
660
943
|
poll: updatedPoll
|
|
661
944
|
});
|
|
662
945
|
|
|
@@ -671,7 +954,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
671
954
|
var m = messages[i];
|
|
672
955
|
|
|
673
956
|
if (((_m$user = m.user) === null || _m$user === void 0 ? void 0 : _m$user.id) === user.id) {
|
|
674
|
-
messages[i] = _objectSpread$
|
|
957
|
+
messages[i] = _objectSpread$a(_objectSpread$a({}, m), {}, {
|
|
675
958
|
user: user
|
|
676
959
|
});
|
|
677
960
|
}
|
|
@@ -726,9 +1009,9 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
726
1009
|
user: m.user
|
|
727
1010
|
};
|
|
728
1011
|
} else {
|
|
729
|
-
messages[i] = _objectSpread$
|
|
1012
|
+
messages[i] = _objectSpread$a(_objectSpread$a({}, m), {}, {
|
|
730
1013
|
type: 'deleted',
|
|
731
|
-
deleted_at: user.deleted_at
|
|
1014
|
+
deleted_at: user.deleted_at ? new Date(user.deleted_at) : null
|
|
732
1015
|
});
|
|
733
1016
|
}
|
|
734
1017
|
}
|
|
@@ -805,6 +1088,15 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
805
1088
|
});
|
|
806
1089
|
this.messageSets[index].messages = messages;
|
|
807
1090
|
}
|
|
1091
|
+
}, {
|
|
1092
|
+
key: "messagePagination",
|
|
1093
|
+
get: function get() {
|
|
1094
|
+
var _this$messageSets$fin3;
|
|
1095
|
+
|
|
1096
|
+
return ((_this$messageSets$fin3 = this.messageSets.find(function (s) {
|
|
1097
|
+
return s.isCurrent;
|
|
1098
|
+
})) === null || _this$messageSets$fin3 === void 0 ? void 0 : _this$messageSets$fin3.pagination) || DEFAULT_MESSAGE_SET_PAGINATION;
|
|
1099
|
+
}
|
|
808
1100
|
/**
|
|
809
1101
|
* addMessageSorted - Add a message to the state
|
|
810
1102
|
*
|
|
@@ -823,28 +1115,15 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
823
1115
|
return this.addMessagesSorted([newMessage], timestampChanged, false, addIfDoesNotExist, messageSetToAddToIfDoesNotExist);
|
|
824
1116
|
}
|
|
825
1117
|
/**
|
|
826
|
-
*
|
|
827
|
-
* and sets the status to received if missing
|
|
828
|
-
*
|
|
829
|
-
* @param {MessageResponse<StreamChatGenerics>} message a message object
|
|
1118
|
+
* Takes the message object, parses the dates, sets `__html`
|
|
1119
|
+
* and sets the status to `received` if missing; returns a new message object.
|
|
830
1120
|
*
|
|
1121
|
+
* @param {MessageResponse<StreamChatGenerics>} message `MessageResponse` object
|
|
831
1122
|
*/
|
|
832
1123
|
|
|
833
1124
|
}, {
|
|
834
|
-
key: "
|
|
835
|
-
value:
|
|
836
|
-
return _objectSpread$8(_objectSpread$8({}, message), {}, {
|
|
837
|
-
/**
|
|
838
|
-
* @deprecated please use `html`
|
|
839
|
-
*/
|
|
840
|
-
__html: message.html,
|
|
841
|
-
// parse the date..
|
|
842
|
-
pinned_at: message.pinned_at ? new Date(message.pinned_at) : null,
|
|
843
|
-
created_at: message.created_at ? new Date(message.created_at) : new Date(),
|
|
844
|
-
updated_at: message.updated_at ? new Date(message.updated_at) : new Date(),
|
|
845
|
-
status: message.status || 'received'
|
|
846
|
-
});
|
|
847
|
-
}
|
|
1125
|
+
key: "addMessagesSorted",
|
|
1126
|
+
value:
|
|
848
1127
|
/**
|
|
849
1128
|
* addMessagesSorted - Add the list of messages to state and resorts the messages
|
|
850
1129
|
*
|
|
@@ -855,10 +1134,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
855
1134
|
* @param {MessageSetType} messageSetToAddToIfDoesNotExist Which message set to add to if messages are not in the list (only used if addIfDoesNotExist is true)
|
|
856
1135
|
*
|
|
857
1136
|
*/
|
|
858
|
-
|
|
859
|
-
}, {
|
|
860
|
-
key: "addMessagesSorted",
|
|
861
|
-
value: function addMessagesSorted(newMessages) {
|
|
1137
|
+
function addMessagesSorted(newMessages) {
|
|
862
1138
|
var timestampChanged = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
863
1139
|
var initializing = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
864
1140
|
var addIfDoesNotExist = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
@@ -1051,7 +1327,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1051
1327
|
var parseMessage = function parseMessage(m) {
|
|
1052
1328
|
var _m$pinned_at, _m$updated_at;
|
|
1053
1329
|
|
|
1054
|
-
return _objectSpread$
|
|
1330
|
+
return _objectSpread$a(_objectSpread$a({}, m), {}, {
|
|
1055
1331
|
created_at: m.created_at.toISOString(),
|
|
1056
1332
|
pinned_at: (_m$pinned_at = m.pinned_at) === null || _m$pinned_at === void 0 ? void 0 : _m$pinned_at.toISOString(),
|
|
1057
1333
|
updated_at: (_m$updated_at = m.updated_at) === null || _m$updated_at === void 0 ? void 0 : _m$updated_at.toISOString()
|
|
@@ -1061,8 +1337,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1061
1337
|
var update = function update(messages) {
|
|
1062
1338
|
var updatedMessages = messages.reduce(function (acc, msg) {
|
|
1063
1339
|
if (msg.quoted_message_id === message.id) {
|
|
1064
|
-
acc.push(_objectSpread$
|
|
1065
|
-
quoted_message: remove ? _objectSpread$
|
|
1340
|
+
acc.push(_objectSpread$a(_objectSpread$a({}, parseMessage(msg)), {}, {
|
|
1341
|
+
quoted_message: remove ? _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
1066
1342
|
attachments: []
|
|
1067
1343
|
}) : message
|
|
1068
1344
|
}));
|
|
@@ -1258,7 +1534,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1258
1534
|
this.messageSets = [{
|
|
1259
1535
|
messages: [],
|
|
1260
1536
|
isLatest: true,
|
|
1261
|
-
isCurrent: true
|
|
1537
|
+
isCurrent: true,
|
|
1538
|
+
pagination: DEFAULT_MESSAGE_SET_PAGINATION
|
|
1262
1539
|
}];
|
|
1263
1540
|
}
|
|
1264
1541
|
/**
|
|
@@ -1266,6 +1543,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1266
1543
|
*
|
|
1267
1544
|
* @param {string} messageId The id of the message, or 'latest' to indicate switching to the latest messages
|
|
1268
1545
|
* @param {string} parentMessageId The id of the parent message, if we want load a thread reply
|
|
1546
|
+
* @param {number} limit The page size if the message has to be queried from the server
|
|
1269
1547
|
*/
|
|
1270
1548
|
|
|
1271
1549
|
}, {
|
|
@@ -1474,7 +1752,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1474
1752
|
this.messageSets.push({
|
|
1475
1753
|
messages: [],
|
|
1476
1754
|
isCurrent: false,
|
|
1477
|
-
isLatest: false
|
|
1755
|
+
isLatest: false,
|
|
1756
|
+
pagination: DEFAULT_MESSAGE_SET_PAGINATION
|
|
1478
1757
|
});
|
|
1479
1758
|
targetMessageSetIndex = this.messageSets.length - 1;
|
|
1480
1759
|
}
|
|
@@ -1515,6 +1794,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1515
1794
|
sources.forEach(function (messageSet) {
|
|
1516
1795
|
target.isLatest = target.isLatest || messageSet.isLatest;
|
|
1517
1796
|
target.isCurrent = target.isCurrent || messageSet.isCurrent;
|
|
1797
|
+
target.pagination.hasPrev = messageSet.messages[0].created_at < target.messages[0].created_at ? messageSet.pagination.hasPrev : target.pagination.hasPrev;
|
|
1798
|
+
target.pagination.hasNext = target.messages.slice(-1)[0].created_at < messageSet.messages.slice(-1)[0].created_at ? messageSet.pagination.hasNext : target.pagination.hasNext;
|
|
1518
1799
|
messagesToAdd = [].concat(_toConsumableArray__default['default'](messagesToAdd), _toConsumableArray__default['default'](messageSet.messages));
|
|
1519
1800
|
});
|
|
1520
1801
|
sources.forEach(function (s) {
|
|
@@ -1546,13 +1827,13 @@ function _unsupportedIterableToArray$3(o, minLen) { if (!o) return; if (typeof o
|
|
|
1546
1827
|
|
|
1547
1828
|
function _arrayLikeToArray$3(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
1548
1829
|
|
|
1549
|
-
function ownKeys$
|
|
1550
|
-
|
|
1551
|
-
function _objectSpread$7(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$7(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$7(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
1830
|
+
function ownKeys$9(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
1552
1831
|
|
|
1832
|
+
function _objectSpread$9(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$9(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$9(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
1553
1833
|
/**
|
|
1554
1834
|
* Channel - The Channel class manages it's own state.
|
|
1555
1835
|
*/
|
|
1836
|
+
|
|
1556
1837
|
var Channel = /*#__PURE__*/function () {
|
|
1557
1838
|
/** */
|
|
1558
1839
|
|
|
@@ -1621,7 +1902,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1621
1902
|
while (1) {
|
|
1622
1903
|
switch (_context.prev = _context.next) {
|
|
1623
1904
|
case 0:
|
|
1624
|
-
defaultOptions = _objectSpread$
|
|
1905
|
+
defaultOptions = _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
1625
1906
|
watch: false,
|
|
1626
1907
|
state: false,
|
|
1627
1908
|
presence: false
|
|
@@ -1673,7 +1954,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1673
1954
|
throw new Error('channel id is not defined');
|
|
1674
1955
|
}
|
|
1675
1956
|
|
|
1676
|
-
return "".concat(_this.getClient().baseURL, "/channels/").concat(_this.type, "/").concat(_this.id);
|
|
1957
|
+
return "".concat(_this.getClient().baseURL, "/channels/").concat(encodeURIComponent(_this.type), "/").concat(encodeURIComponent(_this.id));
|
|
1677
1958
|
});
|
|
1678
1959
|
|
|
1679
1960
|
var validTypeRe = /^[\w_-]+$/;
|
|
@@ -1693,7 +1974,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1693
1974
|
|
|
1694
1975
|
this.data = data; // this._data is used for the requests...
|
|
1695
1976
|
|
|
1696
|
-
this._data = _objectSpread$
|
|
1977
|
+
this._data = _objectSpread$9({}, data);
|
|
1697
1978
|
this.cid = "".concat(type, ":").concat(id);
|
|
1698
1979
|
this.listeners = {}; // perhaps the state variable should be private
|
|
1699
1980
|
|
|
@@ -1755,7 +2036,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1755
2036
|
switch (_context2.prev = _context2.next) {
|
|
1756
2037
|
case 0:
|
|
1757
2038
|
_context2.next = 2;
|
|
1758
|
-
return this.getClient().post(this._channelURL() + '/message', _objectSpread$
|
|
2039
|
+
return this.getClient().post(this._channelURL() + '/message', _objectSpread$9({
|
|
1759
2040
|
message: message
|
|
1760
2041
|
}, options));
|
|
1761
2042
|
|
|
@@ -1871,7 +2152,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1871
2152
|
|
|
1872
2153
|
case 3:
|
|
1873
2154
|
// Return a list of channels
|
|
1874
|
-
payload = _objectSpread$
|
|
2155
|
+
payload = _objectSpread$9(_objectSpread$9({
|
|
1875
2156
|
filter_conditions: {
|
|
1876
2157
|
cid: this.cid
|
|
1877
2158
|
}
|
|
@@ -1968,7 +2249,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1968
2249
|
|
|
1969
2250
|
_context5.next = 6;
|
|
1970
2251
|
return this.getClient().get(this.getClient().baseURL + '/members', {
|
|
1971
|
-
payload: _objectSpread$
|
|
2252
|
+
payload: _objectSpread$9({
|
|
1972
2253
|
type: type,
|
|
1973
2254
|
id: id,
|
|
1974
2255
|
members: members,
|
|
@@ -2029,7 +2310,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2029
2310
|
|
|
2030
2311
|
case 4:
|
|
2031
2312
|
_context6.next = 6;
|
|
2032
|
-
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(messageID, "/reaction"), _objectSpread$
|
|
2313
|
+
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(messageID), "/reaction"), _objectSpread$9({
|
|
2033
2314
|
reaction: reaction
|
|
2034
2315
|
}, options));
|
|
2035
2316
|
|
|
@@ -2069,7 +2350,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2069
2350
|
throw Error('Deleting a reaction requires specifying both the message and reaction type');
|
|
2070
2351
|
}
|
|
2071
2352
|
|
|
2072
|
-
var url = this.getClient().baseURL + "/messages/".concat(messageID, "/reaction/").concat(reactionType); //provided when server side request
|
|
2353
|
+
var url = this.getClient().baseURL + "/messages/".concat(encodeURIComponent(messageID), "/reaction/").concat(encodeURIComponent(reactionType)); //provided when server side request
|
|
2073
2354
|
|
|
2074
2355
|
if (user_id) {
|
|
2075
2356
|
return this.getClient().delete(url, {
|
|
@@ -2110,7 +2391,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2110
2391
|
delete channelData[key];
|
|
2111
2392
|
});
|
|
2112
2393
|
_context7.next = 7;
|
|
2113
|
-
return this._update(_objectSpread$
|
|
2394
|
+
return this._update(_objectSpread$9({
|
|
2114
2395
|
message: updateMessage,
|
|
2115
2396
|
data: channelData
|
|
2116
2397
|
}, options));
|
|
@@ -2282,7 +2563,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2282
2563
|
case 0:
|
|
2283
2564
|
options = _args11.length > 0 && _args11[0] !== undefined ? _args11[0] : {};
|
|
2284
2565
|
_context11.next = 3;
|
|
2285
|
-
return this.getClient().delete(this._channelURL(), _objectSpread$
|
|
2566
|
+
return this.getClient().delete(this._channelURL(), _objectSpread$9({}, options));
|
|
2286
2567
|
|
|
2287
2568
|
case 3:
|
|
2288
2569
|
return _context11.abrupt("return", _context11.sent);
|
|
@@ -2358,7 +2639,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2358
2639
|
case 0:
|
|
2359
2640
|
options = _args13.length > 0 && _args13[0] !== undefined ? _args13[0] : {};
|
|
2360
2641
|
_context13.next = 3;
|
|
2361
|
-
return this._update(_objectSpread$
|
|
2642
|
+
return this._update(_objectSpread$9({
|
|
2362
2643
|
accept_invite: true
|
|
2363
2644
|
}, options));
|
|
2364
2645
|
|
|
@@ -2399,7 +2680,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2399
2680
|
case 0:
|
|
2400
2681
|
options = _args14.length > 0 && _args14[0] !== undefined ? _args14[0] : {};
|
|
2401
2682
|
_context14.next = 3;
|
|
2402
|
-
return this._update(_objectSpread$
|
|
2683
|
+
return this._update(_objectSpread$9({
|
|
2403
2684
|
reject_invite: true
|
|
2404
2685
|
}, options));
|
|
2405
2686
|
|
|
@@ -2441,7 +2722,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2441
2722
|
case 0:
|
|
2442
2723
|
options = _args15.length > 2 && _args15[2] !== undefined ? _args15[2] : {};
|
|
2443
2724
|
_context15.next = 3;
|
|
2444
|
-
return this._update(_objectSpread$
|
|
2725
|
+
return this._update(_objectSpread$9({
|
|
2445
2726
|
add_members: members,
|
|
2446
2727
|
message: message
|
|
2447
2728
|
}, options));
|
|
@@ -2484,7 +2765,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2484
2765
|
case 0:
|
|
2485
2766
|
options = _args16.length > 2 && _args16[2] !== undefined ? _args16[2] : {};
|
|
2486
2767
|
_context16.next = 3;
|
|
2487
|
-
return this._update(_objectSpread$
|
|
2768
|
+
return this._update(_objectSpread$9({
|
|
2488
2769
|
add_moderators: members,
|
|
2489
2770
|
message: message
|
|
2490
2771
|
}, options));
|
|
@@ -2527,7 +2808,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2527
2808
|
case 0:
|
|
2528
2809
|
options = _args17.length > 2 && _args17[2] !== undefined ? _args17[2] : {};
|
|
2529
2810
|
_context17.next = 3;
|
|
2530
|
-
return this._update(_objectSpread$
|
|
2811
|
+
return this._update(_objectSpread$9({
|
|
2531
2812
|
assign_roles: roles,
|
|
2532
2813
|
message: message
|
|
2533
2814
|
}, options));
|
|
@@ -2570,7 +2851,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2570
2851
|
case 0:
|
|
2571
2852
|
options = _args18.length > 2 && _args18[2] !== undefined ? _args18[2] : {};
|
|
2572
2853
|
_context18.next = 3;
|
|
2573
|
-
return this._update(_objectSpread$
|
|
2854
|
+
return this._update(_objectSpread$9({
|
|
2574
2855
|
invites: members,
|
|
2575
2856
|
message: message
|
|
2576
2857
|
}, options));
|
|
@@ -2613,7 +2894,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2613
2894
|
case 0:
|
|
2614
2895
|
options = _args19.length > 2 && _args19[2] !== undefined ? _args19[2] : {};
|
|
2615
2896
|
_context19.next = 3;
|
|
2616
|
-
return this._update(_objectSpread$
|
|
2897
|
+
return this._update(_objectSpread$9({
|
|
2617
2898
|
remove_members: members,
|
|
2618
2899
|
message: message
|
|
2619
2900
|
}, options));
|
|
@@ -2656,7 +2937,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2656
2937
|
case 0:
|
|
2657
2938
|
options = _args20.length > 2 && _args20[2] !== undefined ? _args20[2] : {};
|
|
2658
2939
|
_context20.next = 3;
|
|
2659
|
-
return this._update(_objectSpread$
|
|
2940
|
+
return this._update(_objectSpread$9({
|
|
2660
2941
|
demote_moderators: members,
|
|
2661
2942
|
message: message
|
|
2662
2943
|
}, options));
|
|
@@ -2741,7 +3022,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2741
3022
|
case 0:
|
|
2742
3023
|
opts = _args22.length > 0 && _args22[0] !== undefined ? _args22[0] : {};
|
|
2743
3024
|
_context22.next = 3;
|
|
2744
|
-
return this.getClient().post(this.getClient().baseURL + '/moderation/mute/channel', _objectSpread$
|
|
3025
|
+
return this.getClient().post(this.getClient().baseURL + '/moderation/mute/channel', _objectSpread$9({
|
|
2745
3026
|
channel_cid: this.cid
|
|
2746
3027
|
}, opts));
|
|
2747
3028
|
|
|
@@ -2783,7 +3064,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2783
3064
|
case 0:
|
|
2784
3065
|
opts = _args23.length > 0 && _args23[0] !== undefined ? _args23[0] : {};
|
|
2785
3066
|
_context23.next = 3;
|
|
2786
|
-
return this.getClient().post(this.getClient().baseURL + '/moderation/unmute/channel', _objectSpread$
|
|
3067
|
+
return this.getClient().post(this.getClient().baseURL + '/moderation/unmute/channel', _objectSpread$9({
|
|
2787
3068
|
channel_cid: this.cid
|
|
2788
3069
|
}, opts));
|
|
2789
3070
|
|
|
@@ -2825,7 +3106,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2825
3106
|
throw Error("Message id is missing");
|
|
2826
3107
|
}
|
|
2827
3108
|
|
|
2828
|
-
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(messageID, "/action"), {
|
|
3109
|
+
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(messageID), "/action"), {
|
|
2829
3110
|
message_id: messageID,
|
|
2830
3111
|
form_data: formData,
|
|
2831
3112
|
id: this.id,
|
|
@@ -2868,7 +3149,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2868
3149
|
|
|
2869
3150
|
this.lastTypingEvent = new Date();
|
|
2870
3151
|
_context24.next = 10;
|
|
2871
|
-
return this.sendEvent(_objectSpread$
|
|
3152
|
+
return this.sendEvent(_objectSpread$9({
|
|
2872
3153
|
type: 'typing.start',
|
|
2873
3154
|
parent_id: parent_id
|
|
2874
3155
|
}, options || {}));
|
|
@@ -2912,7 +3193,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2912
3193
|
this.lastTypingEvent = null;
|
|
2913
3194
|
this.isTyping = false;
|
|
2914
3195
|
_context25.next = 6;
|
|
2915
|
-
return this.sendEvent(_objectSpread$
|
|
3196
|
+
return this.sendEvent(_objectSpread$9({
|
|
2916
3197
|
type: 'typing.stop',
|
|
2917
3198
|
parent_id: parent_id
|
|
2918
3199
|
}, options || {}));
|
|
@@ -2999,7 +3280,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2999
3280
|
|
|
3000
3281
|
case 4:
|
|
3001
3282
|
_context26.next = 6;
|
|
3002
|
-
return this.getClient().post(this._channelURL() + '/read', _objectSpread$
|
|
3283
|
+
return this.getClient().post(this._channelURL() + '/read', _objectSpread$9({}, data));
|
|
3003
3284
|
|
|
3004
3285
|
case 6:
|
|
3005
3286
|
return _context26.abrupt("return", _context26.sent);
|
|
@@ -3046,7 +3327,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3046
3327
|
|
|
3047
3328
|
case 3:
|
|
3048
3329
|
_context27.next = 5;
|
|
3049
|
-
return this.getClient().post(this._channelURL() + '/unread', _objectSpread$
|
|
3330
|
+
return this.getClient().post(this._channelURL() + '/unread', _objectSpread$9({}, data));
|
|
3050
3331
|
|
|
3051
3332
|
case 5:
|
|
3052
3333
|
return _context27.abrupt("return", _context27.sent);
|
|
@@ -3114,7 +3395,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3114
3395
|
defaultOptions.watch = false;
|
|
3115
3396
|
}
|
|
3116
3397
|
|
|
3117
|
-
combined = _objectSpread$
|
|
3398
|
+
combined = _objectSpread$9(_objectSpread$9({}, defaultOptions), options);
|
|
3118
3399
|
_context28.next = 7;
|
|
3119
3400
|
return this.query(combined, 'latest');
|
|
3120
3401
|
|
|
@@ -3187,7 +3468,9 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3187
3468
|
return stopWatching;
|
|
3188
3469
|
}()
|
|
3189
3470
|
/**
|
|
3190
|
-
* getReplies - List the message replies for a parent message
|
|
3471
|
+
* getReplies - List the message replies for a parent message.
|
|
3472
|
+
*
|
|
3473
|
+
* The recommended way of working with threads is to use the Thread class.
|
|
3191
3474
|
*
|
|
3192
3475
|
* @param {string} parent_id The message parent id, ie the top of the thread
|
|
3193
3476
|
* @param {MessagePaginationOptions & { user?: UserResponse<StreamChatGenerics>; user_id?: string }} options Pagination params, ie {limit:10, id_lte: 10}
|
|
@@ -3206,7 +3489,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3206
3489
|
case 0:
|
|
3207
3490
|
normalizedSort = sort ? normalizeQuerySort(sort) : undefined;
|
|
3208
3491
|
_context30.next = 3;
|
|
3209
|
-
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(parent_id, "/replies"), _objectSpread$
|
|
3492
|
+
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(parent_id), "/replies"), _objectSpread$9({
|
|
3210
3493
|
sort: normalizedSort
|
|
3211
3494
|
}, options));
|
|
3212
3495
|
|
|
@@ -3255,8 +3538,8 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3255
3538
|
case 0:
|
|
3256
3539
|
sort = _args31.length > 1 && _args31[1] !== undefined ? _args31[1] : [];
|
|
3257
3540
|
_context31.next = 3;
|
|
3258
|
-
return this.getClient().get(this.
|
|
3259
|
-
payload: _objectSpread$
|
|
3541
|
+
return this.getClient().get(this._channelURL() + '/pinned_messages', {
|
|
3542
|
+
payload: _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
3260
3543
|
sort: normalizeQuerySort(sort)
|
|
3261
3544
|
})
|
|
3262
3545
|
});
|
|
@@ -3290,7 +3573,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3290
3573
|
}, {
|
|
3291
3574
|
key: "getReactions",
|
|
3292
3575
|
value: function getReactions(message_id, options) {
|
|
3293
|
-
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(message_id, "/reactions"), _objectSpread$
|
|
3576
|
+
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(message_id), "/reactions"), _objectSpread$9({}, options));
|
|
3294
3577
|
}
|
|
3295
3578
|
/**
|
|
3296
3579
|
* getMessagesById - Retrieves a list of messages by ID
|
|
@@ -3410,7 +3693,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3410
3693
|
*/
|
|
3411
3694
|
function () {
|
|
3412
3695
|
var _query = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee32(options) {
|
|
3413
|
-
var _this$data6, _this$data7;
|
|
3696
|
+
var _options$messages$lim, _options$messages, _this$data6, _this$data7;
|
|
3414
3697
|
|
|
3415
3698
|
var messageSetToAddToIfDoesNotExist,
|
|
3416
3699
|
queryURL,
|
|
@@ -3431,14 +3714,14 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3431
3714
|
return this.getClient().wsPromise;
|
|
3432
3715
|
|
|
3433
3716
|
case 3:
|
|
3434
|
-
queryURL = "".concat(this.getClient().baseURL, "/channels/").concat(this.type);
|
|
3717
|
+
queryURL = "".concat(this.getClient().baseURL, "/channels/").concat(encodeURIComponent(this.type));
|
|
3435
3718
|
|
|
3436
3719
|
if (this.id) {
|
|
3437
|
-
queryURL += "/".concat(this.id);
|
|
3720
|
+
queryURL += "/".concat(encodeURIComponent(this.id));
|
|
3438
3721
|
}
|
|
3439
3722
|
|
|
3440
3723
|
_context32.next = 7;
|
|
3441
|
-
return this.getClient().post(queryURL + '/query', _objectSpread$
|
|
3724
|
+
return this.getClient().post(queryURL + '/query', _objectSpread$9({
|
|
3442
3725
|
data: this._data,
|
|
3443
3726
|
state: true
|
|
3444
3727
|
}, options));
|
|
@@ -3473,6 +3756,13 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3473
3756
|
|
|
3474
3757
|
|
|
3475
3758
|
_this$_initializeStat = this._initializeState(state, messageSetToAddToIfDoesNotExist), messageSet = _this$_initializeStat.messageSet;
|
|
3759
|
+
messageSet.pagination = _objectSpread$9(_objectSpread$9({}, messageSet.pagination), messageSetPagination({
|
|
3760
|
+
parentSet: messageSet,
|
|
3761
|
+
messagePaginationOptions: options === null || options === void 0 ? void 0 : options.messages,
|
|
3762
|
+
requestedPageSize: (_options$messages$lim = options === null || options === void 0 ? void 0 : (_options$messages = options.messages) === null || _options$messages === void 0 ? void 0 : _options$messages.limit) !== null && _options$messages$lim !== void 0 ? _options$messages$lim : DEFAULT_QUERY_CHANNEL_MESSAGE_LIST_PAGE_SIZE,
|
|
3763
|
+
returnedPage: state.messages,
|
|
3764
|
+
logger: this.getClient().logger
|
|
3765
|
+
}));
|
|
3476
3766
|
areCapabilitiesChanged = _toConsumableArray__default['default'](state.channel.own_capabilities || []).sort().join() !== _toConsumableArray__default['default'](Array.isArray((_this$data6 = this.data) === null || _this$data6 === void 0 ? void 0 : _this$data6.own_capabilities) ? (_this$data7 = this.data) === null || _this$data7 === void 0 ? void 0 : _this$data7.own_capabilities : []).sort().join();
|
|
3477
3767
|
this.data = state.channel;
|
|
3478
3768
|
this.offlineMode = false;
|
|
@@ -3494,7 +3784,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3494
3784
|
});
|
|
3495
3785
|
return _context32.abrupt("return", state);
|
|
3496
3786
|
|
|
3497
|
-
case
|
|
3787
|
+
case 18:
|
|
3498
3788
|
case "end":
|
|
3499
3789
|
return _context32.stop();
|
|
3500
3790
|
}
|
|
@@ -3527,7 +3817,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3527
3817
|
this._checkInitialized();
|
|
3528
3818
|
|
|
3529
3819
|
_context33.next = 3;
|
|
3530
|
-
return this.getClient().banUser(targetUserID, _objectSpread$
|
|
3820
|
+
return this.getClient().banUser(targetUserID, _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
3531
3821
|
type: this.type,
|
|
3532
3822
|
id: this.id
|
|
3533
3823
|
}));
|
|
@@ -3699,7 +3989,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3699
3989
|
this._checkInitialized();
|
|
3700
3990
|
|
|
3701
3991
|
_context37.next = 3;
|
|
3702
|
-
return this.getClient().shadowBan(targetUserID, _objectSpread$
|
|
3992
|
+
return this.getClient().shadowBan(targetUserID, _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
3703
3993
|
type: this.type,
|
|
3704
3994
|
id: this.id
|
|
3705
3995
|
}));
|
|
@@ -4153,7 +4443,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
4153
4443
|
});
|
|
4154
4444
|
}
|
|
4155
4445
|
|
|
4156
|
-
channel.data = _objectSpread$
|
|
4446
|
+
channel.data = _objectSpread$9(_objectSpread$9({}, event.channel), {}, {
|
|
4157
4447
|
hidden: (_event$channel$hidden = (_event$channel3 = event.channel) === null || _event$channel3 === void 0 ? void 0 : _event$channel3.hidden) !== null && _event$channel$hidden !== void 0 ? _event$channel$hidden : (_channel$data2 = channel.data) === null || _channel$data2 === void 0 ? void 0 : _channel$data2.hidden,
|
|
4158
4448
|
own_capabilities: (_event$channel$own_ca = (_event$channel4 = event.channel) === null || _event$channel4 === void 0 ? void 0 : _event$channel4.own_capabilities) !== null && _event$channel$own_ca !== void 0 ? _event$channel$own_ca : (_channel$data3 = channel.data) === null || _channel$data3 === void 0 ? void 0 : _channel$data3.own_capabilities
|
|
4159
4449
|
});
|
|
@@ -4227,7 +4517,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
4227
4517
|
break;
|
|
4228
4518
|
|
|
4229
4519
|
case 'channel.hidden':
|
|
4230
|
-
channel.data = _objectSpread$
|
|
4520
|
+
channel.data = _objectSpread$9(_objectSpread$9({}, channel.data), {}, {
|
|
4231
4521
|
hidden: true
|
|
4232
4522
|
});
|
|
4233
4523
|
|
|
@@ -4238,26 +4528,26 @@ var Channel = /*#__PURE__*/function () {
|
|
|
4238
4528
|
break;
|
|
4239
4529
|
|
|
4240
4530
|
case 'channel.visible':
|
|
4241
|
-
channel.data = _objectSpread$
|
|
4531
|
+
channel.data = _objectSpread$9(_objectSpread$9({}, channel.data), {}, {
|
|
4242
4532
|
hidden: false
|
|
4243
4533
|
});
|
|
4244
4534
|
break;
|
|
4245
4535
|
|
|
4246
4536
|
case 'user.banned':
|
|
4247
4537
|
if (!((_event$user11 = event.user) !== null && _event$user11 !== void 0 && _event$user11.id)) break;
|
|
4248
|
-
channelState.members[event.user.id] = _objectSpread$
|
|
4538
|
+
channelState.members[event.user.id] = _objectSpread$9(_objectSpread$9({}, channelState.members[event.user.id] || {}), {}, {
|
|
4249
4539
|
shadow_banned: !!event.shadow,
|
|
4250
4540
|
banned: !event.shadow,
|
|
4251
|
-
user: _objectSpread$
|
|
4541
|
+
user: _objectSpread$9(_objectSpread$9({}, ((_channelState$members = channelState.members[event.user.id]) === null || _channelState$members === void 0 ? void 0 : _channelState$members.user) || {}), event.user)
|
|
4252
4542
|
});
|
|
4253
4543
|
break;
|
|
4254
4544
|
|
|
4255
4545
|
case 'user.unbanned':
|
|
4256
4546
|
if (!((_event$user12 = event.user) !== null && _event$user12 !== void 0 && _event$user12.id)) break;
|
|
4257
|
-
channelState.members[event.user.id] = _objectSpread$
|
|
4547
|
+
channelState.members[event.user.id] = _objectSpread$9(_objectSpread$9({}, channelState.members[event.user.id] || {}), {}, {
|
|
4258
4548
|
shadow_banned: false,
|
|
4259
4549
|
banned: false,
|
|
4260
|
-
user: _objectSpread$
|
|
4550
|
+
user: _objectSpread$9(_objectSpread$9({}, ((_channelState$members2 = channelState.members[event.user.id]) === null || _channelState$members2 === void 0 ? void 0 : _channelState$members2.user) || {}), event.user)
|
|
4261
4551
|
});
|
|
4262
4552
|
break;
|
|
4263
4553
|
} // any event can send over the online count
|
|
@@ -4511,9 +4801,9 @@ var ClientState = /*#__PURE__*/function () {
|
|
|
4511
4801
|
return ClientState;
|
|
4512
4802
|
}();
|
|
4513
4803
|
|
|
4514
|
-
function ownKeys$
|
|
4804
|
+
function ownKeys$8(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
4515
4805
|
|
|
4516
|
-
function _objectSpread$
|
|
4806
|
+
function _objectSpread$8(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$8(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$8(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
4517
4807
|
var InsightMetrics = function InsightMetrics() {
|
|
4518
4808
|
_classCallCheck__default['default'](this, InsightMetrics);
|
|
4519
4809
|
|
|
@@ -4592,7 +4882,7 @@ var postInsights = /*#__PURE__*/function () {
|
|
|
4592
4882
|
};
|
|
4593
4883
|
}();
|
|
4594
4884
|
function buildWsFatalInsight(connection, event) {
|
|
4595
|
-
return _objectSpread$
|
|
4885
|
+
return _objectSpread$8(_objectSpread$8({}, event), buildWsBaseInsight(connection));
|
|
4596
4886
|
}
|
|
4597
4887
|
|
|
4598
4888
|
function buildWsBaseInsight(connection) {
|
|
@@ -4625,9 +4915,9 @@ function buildWsSuccessAfterFailureInsight(connection) {
|
|
|
4625
4915
|
return buildWsBaseInsight(connection);
|
|
4626
4916
|
}
|
|
4627
4917
|
|
|
4628
|
-
function ownKeys$
|
|
4918
|
+
function ownKeys$7(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
4629
4919
|
|
|
4630
|
-
function _objectSpread$
|
|
4920
|
+
function _objectSpread$7(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$7(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$7(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
4631
4921
|
|
|
4632
4922
|
// Type guards to check WebSocket error type
|
|
4633
4923
|
var isCloseEvent = function isCloseEvent(res) {
|
|
@@ -4991,7 +5281,7 @@ var StableWSConnection = /*#__PURE__*/function () {
|
|
|
4991
5281
|
value: function _log(msg) {
|
|
4992
5282
|
var extra = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
4993
5283
|
var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'info';
|
|
4994
|
-
this.client.logger(level, 'connection:' + msg, _objectSpread$
|
|
5284
|
+
this.client.logger(level, 'connection:' + msg, _objectSpread$7({
|
|
4995
5285
|
tags: ['connection']
|
|
4996
5286
|
}, extra));
|
|
4997
5287
|
}
|
|
@@ -5586,9 +5876,9 @@ var jwt = null;
|
|
|
5586
5876
|
|
|
5587
5877
|
var crypto$1 = null;
|
|
5588
5878
|
|
|
5589
|
-
function ownKeys$
|
|
5879
|
+
function ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
5590
5880
|
|
|
5591
|
-
function _objectSpread$
|
|
5881
|
+
function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
5592
5882
|
|
|
5593
5883
|
/**
|
|
5594
5884
|
* Creates the JWT token that can be used for a UserSession
|
|
@@ -5609,7 +5899,7 @@ function JWTUserToken(apiSecret, userId) {
|
|
|
5609
5899
|
throw new TypeError('userId should be a string');
|
|
5610
5900
|
}
|
|
5611
5901
|
|
|
5612
|
-
var payload = _objectSpread$
|
|
5902
|
+
var payload = _objectSpread$6({
|
|
5613
5903
|
user_id: userId
|
|
5614
5904
|
}, extraData); // make sure we return a clear error when jwt is shimmed (ie. browser build)
|
|
5615
5905
|
|
|
@@ -6013,9 +6303,9 @@ function isErrorResponse(res) {
|
|
|
6013
6303
|
return !res.status || res.status < 200 || 300 <= res.status;
|
|
6014
6304
|
}
|
|
6015
6305
|
|
|
6016
|
-
function ownKeys$
|
|
6306
|
+
function ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
6017
6307
|
|
|
6018
|
-
function _objectSpread$
|
|
6308
|
+
function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
6019
6309
|
var ConnectionState;
|
|
6020
6310
|
|
|
6021
6311
|
(function (ConnectionState) {
|
|
@@ -6078,7 +6368,7 @@ var WSConnectionFallback = /*#__PURE__*/function () {
|
|
|
6078
6368
|
_context.next = 4;
|
|
6079
6369
|
return _this.client.doAxiosRequest('get', _this.client.baseURL.replace(':3030', ':8900') + '/longpoll', // replace port if present for testing with local API
|
|
6080
6370
|
undefined, {
|
|
6081
|
-
config: _objectSpread$
|
|
6371
|
+
config: _objectSpread$5(_objectSpread$5({}, config), {}, {
|
|
6082
6372
|
cancelToken: (_this$cancelToken2 = _this.cancelToken) === null || _this$cancelToken2 === void 0 ? void 0 : _this$cancelToken2.token
|
|
6083
6373
|
}),
|
|
6084
6374
|
params: params
|
|
@@ -6356,7 +6646,7 @@ var WSConnectionFallback = /*#__PURE__*/function () {
|
|
|
6356
6646
|
value: function _log(msg) {
|
|
6357
6647
|
var extra = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
6358
6648
|
var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'info';
|
|
6359
|
-
this.client.logger(level, 'WSConnectionFallback:' + msg, _objectSpread$
|
|
6649
|
+
this.client.logger(level, 'WSConnectionFallback:' + msg, _objectSpread$5({
|
|
6360
6650
|
tags: ['connection_fallback', 'connection']
|
|
6361
6651
|
}, extra));
|
|
6362
6652
|
}
|
|
@@ -6936,168 +7226,710 @@ exports.VotingVisibility = void 0;
|
|
|
6936
7226
|
VotingVisibility["public"] = "public";
|
|
6937
7227
|
})(exports.VotingVisibility || (exports.VotingVisibility = {}));
|
|
6938
7228
|
|
|
6939
|
-
|
|
7229
|
+
function ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
6940
7230
|
|
|
6941
|
-
function
|
|
7231
|
+
function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
6942
7232
|
|
|
6943
|
-
function
|
|
7233
|
+
function isPatch(value) {
|
|
7234
|
+
return typeof value === 'function';
|
|
7235
|
+
}
|
|
6944
7236
|
|
|
6945
|
-
|
|
7237
|
+
var StateStore = function StateStore(value) {
|
|
7238
|
+
var _this = this;
|
|
6946
7239
|
|
|
6947
|
-
|
|
7240
|
+
_classCallCheck__default['default'](this, StateStore);
|
|
6948
7241
|
|
|
6949
|
-
|
|
7242
|
+
this.value = value;
|
|
7243
|
+
|
|
7244
|
+
_defineProperty__default['default'](this, "handlerSet", new Set());
|
|
7245
|
+
|
|
7246
|
+
_defineProperty__default['default'](this, "next", function (newValueOrPatch) {
|
|
7247
|
+
// newValue (or patch output) should never be mutated previous value
|
|
7248
|
+
var newValue = isPatch(newValueOrPatch) ? newValueOrPatch(_this.value) : newValueOrPatch; // do not notify subscribers if the value hasn't changed
|
|
7249
|
+
|
|
7250
|
+
if (newValue === _this.value) return;
|
|
7251
|
+
var oldValue = _this.value;
|
|
7252
|
+
_this.value = newValue;
|
|
7253
|
+
|
|
7254
|
+
_this.handlerSet.forEach(function (handler) {
|
|
7255
|
+
return handler(_this.value, oldValue);
|
|
7256
|
+
});
|
|
7257
|
+
});
|
|
7258
|
+
|
|
7259
|
+
_defineProperty__default['default'](this, "partialNext", function (partial) {
|
|
7260
|
+
return _this.next(function (current) {
|
|
7261
|
+
return _objectSpread$4(_objectSpread$4({}, current), partial);
|
|
7262
|
+
});
|
|
7263
|
+
});
|
|
7264
|
+
|
|
7265
|
+
_defineProperty__default['default'](this, "getLatestValue", function () {
|
|
7266
|
+
return _this.value;
|
|
7267
|
+
});
|
|
7268
|
+
|
|
7269
|
+
_defineProperty__default['default'](this, "subscribe", function (handler) {
|
|
7270
|
+
handler(_this.value, undefined);
|
|
7271
|
+
|
|
7272
|
+
_this.handlerSet.add(handler);
|
|
7273
|
+
|
|
7274
|
+
return function () {
|
|
7275
|
+
_this.handlerSet.delete(handler);
|
|
7276
|
+
};
|
|
7277
|
+
});
|
|
7278
|
+
|
|
7279
|
+
_defineProperty__default['default'](this, "subscribeWithSelector", function (selector, handler) {
|
|
7280
|
+
// begin with undefined to reduce amount of selector calls
|
|
7281
|
+
var selectedValues;
|
|
7282
|
+
|
|
7283
|
+
var wrappedHandler = function wrappedHandler(nextValue) {
|
|
7284
|
+
var _selectedValues$some, _selectedValues;
|
|
7285
|
+
|
|
7286
|
+
var newlySelectedValues = selector(nextValue);
|
|
7287
|
+
var hasUpdatedValues = (_selectedValues$some = (_selectedValues = selectedValues) === null || _selectedValues === void 0 ? void 0 : _selectedValues.some(function (value, index) {
|
|
7288
|
+
return value !== newlySelectedValues[index];
|
|
7289
|
+
})) !== null && _selectedValues$some !== void 0 ? _selectedValues$some : true;
|
|
7290
|
+
if (!hasUpdatedValues) return;
|
|
7291
|
+
var oldSelectedValues = selectedValues;
|
|
7292
|
+
selectedValues = newlySelectedValues;
|
|
7293
|
+
handler(newlySelectedValues, oldSelectedValues);
|
|
7294
|
+
};
|
|
7295
|
+
|
|
7296
|
+
return _this.subscribe(wrappedHandler);
|
|
7297
|
+
});
|
|
7298
|
+
};
|
|
7299
|
+
|
|
7300
|
+
var _excluded$1 = ["limit", "sort"];
|
|
7301
|
+
|
|
7302
|
+
function ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
7303
|
+
|
|
7304
|
+
function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$3(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
7305
|
+
var DEFAULT_PAGE_LIMIT = 50;
|
|
7306
|
+
var DEFAULT_SORT = [{
|
|
7307
|
+
created_at: -1
|
|
7308
|
+
}];
|
|
7309
|
+
var MARK_AS_READ_THROTTLE_TIMEOUT = 1000;
|
|
6950
7310
|
var Thread = /*#__PURE__*/function () {
|
|
6951
|
-
|
|
6952
|
-
|
|
7311
|
+
function Thread(_ref) {
|
|
7312
|
+
var _this = this,
|
|
7313
|
+
_threadData$read,
|
|
7314
|
+
_threadData$reply_cou;
|
|
7315
|
+
|
|
7316
|
+
var client = _ref.client,
|
|
7317
|
+
threadData = _ref.threadData;
|
|
7318
|
+
|
|
6953
7319
|
_classCallCheck__default['default'](this, Thread);
|
|
6954
7320
|
|
|
7321
|
+
_defineProperty__default['default'](this, "state", void 0);
|
|
7322
|
+
|
|
6955
7323
|
_defineProperty__default['default'](this, "id", void 0);
|
|
6956
7324
|
|
|
6957
|
-
_defineProperty__default['default'](this, "
|
|
7325
|
+
_defineProperty__default['default'](this, "client", void 0);
|
|
6958
7326
|
|
|
6959
|
-
_defineProperty__default['default'](this, "
|
|
7327
|
+
_defineProperty__default['default'](this, "unsubscribeFunctions", new Set());
|
|
6960
7328
|
|
|
6961
|
-
_defineProperty__default['default'](this, "
|
|
7329
|
+
_defineProperty__default['default'](this, "failedRepliesMap", new Map());
|
|
6962
7330
|
|
|
6963
|
-
_defineProperty__default['default'](this, "
|
|
7331
|
+
_defineProperty__default['default'](this, "activate", function () {
|
|
7332
|
+
_this.state.partialNext({
|
|
7333
|
+
active: true
|
|
7334
|
+
});
|
|
7335
|
+
});
|
|
6964
7336
|
|
|
6965
|
-
_defineProperty__default['default'](this, "
|
|
7337
|
+
_defineProperty__default['default'](this, "deactivate", function () {
|
|
7338
|
+
_this.state.partialNext({
|
|
7339
|
+
active: false
|
|
7340
|
+
});
|
|
7341
|
+
});
|
|
6966
7342
|
|
|
6967
|
-
_defineProperty__default['default'](this, "
|
|
7343
|
+
_defineProperty__default['default'](this, "reload", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee() {
|
|
7344
|
+
var thread;
|
|
7345
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
7346
|
+
while (1) {
|
|
7347
|
+
switch (_context.prev = _context.next) {
|
|
7348
|
+
case 0:
|
|
7349
|
+
if (!_this.state.getLatestValue().isLoading) {
|
|
7350
|
+
_context.next = 2;
|
|
7351
|
+
break;
|
|
7352
|
+
}
|
|
6968
7353
|
|
|
6969
|
-
|
|
7354
|
+
return _context.abrupt("return");
|
|
6970
7355
|
|
|
6971
|
-
|
|
6972
|
-
|
|
6973
|
-
|
|
6974
|
-
|
|
6975
|
-
var parent_message_id = t.parent_message_id,
|
|
6976
|
-
parent_message = t.parent_message,
|
|
6977
|
-
latest_replies = t.latest_replies,
|
|
6978
|
-
thread_participants = t.thread_participants,
|
|
6979
|
-
reply_count = t.reply_count,
|
|
6980
|
-
channel = t.channel,
|
|
6981
|
-
read = t.read,
|
|
6982
|
-
data = _objectWithoutProperties__default['default'](t, _excluded$1);
|
|
6983
|
-
|
|
6984
|
-
this.id = parent_message_id;
|
|
6985
|
-
this.message = formatMessage(parent_message);
|
|
6986
|
-
this.latestReplies = latest_replies.map(formatMessage);
|
|
6987
|
-
this.participants = thread_participants;
|
|
6988
|
-
this.replyCount = reply_count;
|
|
6989
|
-
this.channel = channel;
|
|
6990
|
-
this._channel = client.channel(t.channel.type, t.channel.id);
|
|
6991
|
-
this._client = client;
|
|
7356
|
+
case 2:
|
|
7357
|
+
_this.state.partialNext({
|
|
7358
|
+
isLoading: true
|
|
7359
|
+
});
|
|
6992
7360
|
|
|
6993
|
-
|
|
6994
|
-
|
|
6995
|
-
|
|
7361
|
+
_context.prev = 3;
|
|
7362
|
+
_context.next = 6;
|
|
7363
|
+
return _this.client.getThread(_this.id, {
|
|
7364
|
+
watch: true
|
|
7365
|
+
});
|
|
6996
7366
|
|
|
6997
|
-
|
|
6998
|
-
|
|
6999
|
-
var r = _step.value;
|
|
7000
|
-
this.read[r.user.id] = _objectSpread$2(_objectSpread$2({}, r), {}, {
|
|
7001
|
-
last_read: new Date(r.last_read)
|
|
7002
|
-
});
|
|
7003
|
-
}
|
|
7004
|
-
} catch (err) {
|
|
7005
|
-
_iterator.e(err);
|
|
7006
|
-
} finally {
|
|
7007
|
-
_iterator.f();
|
|
7008
|
-
}
|
|
7009
|
-
}
|
|
7367
|
+
case 6:
|
|
7368
|
+
thread = _context.sent;
|
|
7010
7369
|
|
|
7011
|
-
|
|
7012
|
-
}
|
|
7370
|
+
_this.hydrateState(thread);
|
|
7013
7371
|
|
|
7014
|
-
|
|
7015
|
-
|
|
7016
|
-
value: function getClient() {
|
|
7017
|
-
return this._client;
|
|
7018
|
-
}
|
|
7019
|
-
/**
|
|
7020
|
-
* addReply - Adds or updates a latestReplies to the thread
|
|
7021
|
-
*
|
|
7022
|
-
* @param {MessageResponse<StreamChatGenerics>} message reply message to be added.
|
|
7023
|
-
*/
|
|
7372
|
+
case 8:
|
|
7373
|
+
_context.prev = 8;
|
|
7024
7374
|
|
|
7025
|
-
|
|
7026
|
-
|
|
7027
|
-
|
|
7028
|
-
if (message.parent_id !== this.message.id) {
|
|
7029
|
-
throw new Error('Message does not belong to this thread');
|
|
7030
|
-
}
|
|
7375
|
+
_this.state.partialNext({
|
|
7376
|
+
isLoading: false
|
|
7377
|
+
});
|
|
7031
7378
|
|
|
7032
|
-
|
|
7033
|
-
|
|
7034
|
-
|
|
7035
|
-
|
|
7036
|
-
|
|
7037
|
-
|
|
7038
|
-
if (m.id === message.id) {
|
|
7039
|
-
return formatMessage(message);
|
|
7379
|
+
return _context.finish(8);
|
|
7380
|
+
|
|
7381
|
+
case 11:
|
|
7382
|
+
case "end":
|
|
7383
|
+
return _context.stop();
|
|
7384
|
+
}
|
|
7040
7385
|
}
|
|
7386
|
+
}, _callee, null, [[3,, 8, 11]]);
|
|
7387
|
+
})));
|
|
7041
7388
|
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
|
|
7045
|
-
}, {
|
|
7046
|
-
key: "updateMessageOrReplyIfExists",
|
|
7047
|
-
value: function updateMessageOrReplyIfExists(message) {
|
|
7048
|
-
if (!message.parent_id && message.id !== this.message.id) {
|
|
7389
|
+
_defineProperty__default['default'](this, "hydrateState", function (thread) {
|
|
7390
|
+
if (thread === _this) {
|
|
7391
|
+
// skip if the instances are the same
|
|
7049
7392
|
return;
|
|
7050
7393
|
}
|
|
7051
7394
|
|
|
7052
|
-
if (
|
|
7053
|
-
|
|
7395
|
+
if (thread.id !== _this.id) {
|
|
7396
|
+
throw new Error("Cannot hydrate thread state with using thread's state");
|
|
7054
7397
|
}
|
|
7055
7398
|
|
|
7056
|
-
|
|
7057
|
-
|
|
7058
|
-
|
|
7059
|
-
|
|
7399
|
+
var _thread$state$getLate = thread.state.getLatestValue(),
|
|
7400
|
+
read = _thread$state$getLate.read,
|
|
7401
|
+
replyCount = _thread$state$getLate.replyCount,
|
|
7402
|
+
replies = _thread$state$getLate.replies,
|
|
7403
|
+
parentMessage = _thread$state$getLate.parentMessage,
|
|
7404
|
+
participants = _thread$state$getLate.participants,
|
|
7405
|
+
createdAt = _thread$state$getLate.createdAt,
|
|
7406
|
+
deletedAt = _thread$state$getLate.deletedAt,
|
|
7407
|
+
updatedAt = _thread$state$getLate.updatedAt; // Preserve pending replies and append them to the updated list of replies
|
|
7060
7408
|
|
|
7061
|
-
if (!message.parent_id && message.id === this.message.id) {
|
|
7062
|
-
this.message = formatMessage(message);
|
|
7063
|
-
}
|
|
7064
|
-
}
|
|
7065
|
-
}, {
|
|
7066
|
-
key: "addReaction",
|
|
7067
|
-
value: function addReaction(reaction, message, enforce_unique) {
|
|
7068
|
-
var _this = this;
|
|
7069
7409
|
|
|
7070
|
-
|
|
7071
|
-
this.latestReplies = this.latestReplies.map(function (m) {
|
|
7072
|
-
if (m.id === message.id) {
|
|
7073
|
-
return formatMessage(_this._channel.state.addReaction(reaction, message, enforce_unique));
|
|
7074
|
-
}
|
|
7410
|
+
var pendingReplies = Array.from(_this.failedRepliesMap.values());
|
|
7075
7411
|
|
|
7076
|
-
|
|
7412
|
+
_this.state.partialNext({
|
|
7413
|
+
read: read,
|
|
7414
|
+
replyCount: replyCount,
|
|
7415
|
+
replies: pendingReplies.length ? replies.concat(pendingReplies) : replies,
|
|
7416
|
+
parentMessage: parentMessage,
|
|
7417
|
+
participants: participants,
|
|
7418
|
+
createdAt: createdAt,
|
|
7419
|
+
deletedAt: deletedAt,
|
|
7420
|
+
updatedAt: updatedAt,
|
|
7421
|
+
isStateStale: false
|
|
7077
7422
|
});
|
|
7078
|
-
}
|
|
7079
|
-
}, {
|
|
7080
|
-
key: "removeReaction",
|
|
7081
|
-
value: function removeReaction(reaction, message) {
|
|
7082
|
-
var _this2 = this;
|
|
7423
|
+
});
|
|
7083
7424
|
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7425
|
+
_defineProperty__default['default'](this, "registerSubscriptions", function () {
|
|
7426
|
+
if (_this.unsubscribeFunctions.size) {
|
|
7427
|
+
// Thread is already listening for events and changes
|
|
7428
|
+
return;
|
|
7429
|
+
}
|
|
7089
7430
|
|
|
7090
|
-
|
|
7091
|
-
});
|
|
7092
|
-
}
|
|
7093
|
-
}]);
|
|
7431
|
+
_this.unsubscribeFunctions.add(_this.subscribeMarkActiveThreadRead());
|
|
7094
7432
|
|
|
7095
|
-
|
|
7096
|
-
}();
|
|
7433
|
+
_this.unsubscribeFunctions.add(_this.subscribeReloadActiveStaleThread());
|
|
7097
7434
|
|
|
7098
|
-
|
|
7435
|
+
_this.unsubscribeFunctions.add(_this.subscribeMarkThreadStale());
|
|
7099
7436
|
|
|
7100
|
-
|
|
7437
|
+
_this.unsubscribeFunctions.add(_this.subscribeNewReplies());
|
|
7438
|
+
|
|
7439
|
+
_this.unsubscribeFunctions.add(_this.subscribeRepliesRead());
|
|
7440
|
+
|
|
7441
|
+
_this.unsubscribeFunctions.add(_this.subscribeReplyDeleted());
|
|
7442
|
+
|
|
7443
|
+
_this.unsubscribeFunctions.add(_this.subscribeMessageUpdated());
|
|
7444
|
+
});
|
|
7445
|
+
|
|
7446
|
+
_defineProperty__default['default'](this, "subscribeMarkActiveThreadRead", function () {
|
|
7447
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
7448
|
+
return [nextValue.active, ownUnreadCountSelector(_this.client.userID)(nextValue)];
|
|
7449
|
+
}, function (_ref3) {
|
|
7450
|
+
var _ref4 = _slicedToArray__default['default'](_ref3, 2),
|
|
7451
|
+
active = _ref4[0],
|
|
7452
|
+
unreadMessageCount = _ref4[1];
|
|
7453
|
+
|
|
7454
|
+
if (!active || !unreadMessageCount) return;
|
|
7455
|
+
|
|
7456
|
+
_this.throttledMarkAsRead();
|
|
7457
|
+
});
|
|
7458
|
+
});
|
|
7459
|
+
|
|
7460
|
+
_defineProperty__default['default'](this, "subscribeReloadActiveStaleThread", function () {
|
|
7461
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
7462
|
+
return [nextValue.active, nextValue.isStateStale];
|
|
7463
|
+
}, function (_ref5) {
|
|
7464
|
+
var _ref6 = _slicedToArray__default['default'](_ref5, 2),
|
|
7465
|
+
active = _ref6[0],
|
|
7466
|
+
isStateStale = _ref6[1];
|
|
7467
|
+
|
|
7468
|
+
if (active && isStateStale) {
|
|
7469
|
+
_this.reload();
|
|
7470
|
+
}
|
|
7471
|
+
});
|
|
7472
|
+
});
|
|
7473
|
+
|
|
7474
|
+
_defineProperty__default['default'](this, "subscribeMarkThreadStale", function () {
|
|
7475
|
+
return _this.client.on('user.watching.stop', function (event) {
|
|
7476
|
+
var _event$user, _event$channel;
|
|
7477
|
+
|
|
7478
|
+
var _this$state$getLatest = _this.state.getLatestValue(),
|
|
7479
|
+
channel = _this$state$getLatest.channel;
|
|
7480
|
+
|
|
7481
|
+
if (!_this.client.userID || _this.client.userID !== ((_event$user = event.user) === null || _event$user === void 0 ? void 0 : _event$user.id) || ((_event$channel = event.channel) === null || _event$channel === void 0 ? void 0 : _event$channel.cid) !== channel.cid) {
|
|
7482
|
+
return;
|
|
7483
|
+
}
|
|
7484
|
+
|
|
7485
|
+
_this.state.partialNext({
|
|
7486
|
+
isStateStale: true
|
|
7487
|
+
});
|
|
7488
|
+
}).unsubscribe;
|
|
7489
|
+
});
|
|
7490
|
+
|
|
7491
|
+
_defineProperty__default['default'](this, "subscribeNewReplies", function () {
|
|
7492
|
+
return _this.client.on('message.new', function (event) {
|
|
7493
|
+
var _event$message, _event$message$user;
|
|
7494
|
+
|
|
7495
|
+
if (!_this.client.userID || ((_event$message = event.message) === null || _event$message === void 0 ? void 0 : _event$message.parent_id) !== _this.id) {
|
|
7496
|
+
return;
|
|
7497
|
+
}
|
|
7498
|
+
|
|
7499
|
+
var isOwnMessage = ((_event$message$user = event.message.user) === null || _event$message$user === void 0 ? void 0 : _event$message$user.id) === _this.client.userID;
|
|
7500
|
+
|
|
7501
|
+
var _this$state$getLatest2 = _this.state.getLatestValue(),
|
|
7502
|
+
active = _this$state$getLatest2.active,
|
|
7503
|
+
read = _this$state$getLatest2.read;
|
|
7504
|
+
|
|
7505
|
+
_this.upsertReplyLocally({
|
|
7506
|
+
message: event.message,
|
|
7507
|
+
// Message from current user could have been added optimistically,
|
|
7508
|
+
// so the actual timestamp might differ in the event
|
|
7509
|
+
timestampChanged: isOwnMessage
|
|
7510
|
+
});
|
|
7511
|
+
|
|
7512
|
+
if (active) {
|
|
7513
|
+
_this.throttledMarkAsRead();
|
|
7514
|
+
}
|
|
7515
|
+
|
|
7516
|
+
var nextRead = {};
|
|
7517
|
+
|
|
7518
|
+
for (var _i = 0, _Object$keys = Object.keys(read); _i < _Object$keys.length; _i++) {
|
|
7519
|
+
var userId = _Object$keys[_i];
|
|
7520
|
+
var userRead = read[userId];
|
|
7521
|
+
|
|
7522
|
+
if (userRead) {
|
|
7523
|
+
var _event$user2;
|
|
7524
|
+
|
|
7525
|
+
var nextUserRead = userRead;
|
|
7526
|
+
|
|
7527
|
+
if (userId === ((_event$user2 = event.user) === null || _event$user2 === void 0 ? void 0 : _event$user2.id)) {
|
|
7528
|
+
// The user who just sent a message to the thread has no unread messages
|
|
7529
|
+
// in that thread
|
|
7530
|
+
nextUserRead = _objectSpread$3(_objectSpread$3({}, nextUserRead), {}, {
|
|
7531
|
+
lastReadAt: event.created_at ? new Date(event.created_at) : new Date(),
|
|
7532
|
+
user: event.user,
|
|
7533
|
+
unreadMessageCount: 0
|
|
7534
|
+
});
|
|
7535
|
+
} else if (active && userId === _this.client.userID) ; else {
|
|
7536
|
+
// Increment unread count for all users except the author of the new message
|
|
7537
|
+
nextUserRead = _objectSpread$3(_objectSpread$3({}, nextUserRead), {}, {
|
|
7538
|
+
unreadMessageCount: userRead.unreadMessageCount + 1
|
|
7539
|
+
});
|
|
7540
|
+
}
|
|
7541
|
+
|
|
7542
|
+
nextRead[userId] = nextUserRead;
|
|
7543
|
+
}
|
|
7544
|
+
}
|
|
7545
|
+
|
|
7546
|
+
_this.state.partialNext({
|
|
7547
|
+
read: nextRead
|
|
7548
|
+
});
|
|
7549
|
+
}).unsubscribe;
|
|
7550
|
+
});
|
|
7551
|
+
|
|
7552
|
+
_defineProperty__default['default'](this, "subscribeRepliesRead", function () {
|
|
7553
|
+
return _this.client.on('message.read', function (event) {
|
|
7554
|
+
if (!event.user || !event.created_at || !event.thread) return;
|
|
7555
|
+
if (event.thread.parent_message_id !== _this.id) return;
|
|
7556
|
+
var userId = event.user.id;
|
|
7557
|
+
var createdAt = event.created_at;
|
|
7558
|
+
var user = event.user;
|
|
7559
|
+
|
|
7560
|
+
_this.state.next(function (current) {
|
|
7561
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7562
|
+
read: _objectSpread$3(_objectSpread$3({}, current.read), {}, _defineProperty__default['default']({}, userId, {
|
|
7563
|
+
lastReadAt: new Date(createdAt),
|
|
7564
|
+
user: user,
|
|
7565
|
+
lastReadMessageId: event.last_read_message_id,
|
|
7566
|
+
unreadMessageCount: 0
|
|
7567
|
+
}))
|
|
7568
|
+
});
|
|
7569
|
+
});
|
|
7570
|
+
}).unsubscribe;
|
|
7571
|
+
});
|
|
7572
|
+
|
|
7573
|
+
_defineProperty__default['default'](this, "subscribeReplyDeleted", function () {
|
|
7574
|
+
return _this.client.on('message.deleted', function (event) {
|
|
7575
|
+
var _event$message2;
|
|
7576
|
+
|
|
7577
|
+
if (((_event$message2 = event.message) === null || _event$message2 === void 0 ? void 0 : _event$message2.parent_id) === _this.id && event.hard_delete) {
|
|
7578
|
+
return _this.deleteReplyLocally({
|
|
7579
|
+
message: event.message
|
|
7580
|
+
});
|
|
7581
|
+
}
|
|
7582
|
+
}).unsubscribe;
|
|
7583
|
+
});
|
|
7584
|
+
|
|
7585
|
+
_defineProperty__default['default'](this, "subscribeMessageUpdated", function () {
|
|
7586
|
+
var unsubscribeFunctions = ['message.updated', 'reaction.new', 'reaction.deleted'].map(function (eventType) {
|
|
7587
|
+
return _this.client.on(eventType, function (event) {
|
|
7588
|
+
if (event.message) {
|
|
7589
|
+
_this.updateParentMessageOrReplyLocally(event.message);
|
|
7590
|
+
}
|
|
7591
|
+
}).unsubscribe;
|
|
7592
|
+
});
|
|
7593
|
+
return function () {
|
|
7594
|
+
return unsubscribeFunctions.forEach(function (unsubscribe) {
|
|
7595
|
+
return unsubscribe();
|
|
7596
|
+
});
|
|
7597
|
+
};
|
|
7598
|
+
});
|
|
7599
|
+
|
|
7600
|
+
_defineProperty__default['default'](this, "unregisterSubscriptions", function () {
|
|
7601
|
+
_this.unsubscribeFunctions.forEach(function (cleanupFunction) {
|
|
7602
|
+
return cleanupFunction();
|
|
7603
|
+
});
|
|
7604
|
+
|
|
7605
|
+
_this.unsubscribeFunctions.clear();
|
|
7606
|
+
});
|
|
7607
|
+
|
|
7608
|
+
_defineProperty__default['default'](this, "deleteReplyLocally", function (_ref7) {
|
|
7609
|
+
var _replies$index, _replies;
|
|
7610
|
+
|
|
7611
|
+
var message = _ref7.message;
|
|
7612
|
+
|
|
7613
|
+
var _this$state$getLatest3 = _this.state.getLatestValue(),
|
|
7614
|
+
replies = _this$state$getLatest3.replies;
|
|
7615
|
+
|
|
7616
|
+
var index = findIndexInSortedArray({
|
|
7617
|
+
needle: formatMessage(message),
|
|
7618
|
+
sortedArray: replies,
|
|
7619
|
+
sortDirection: 'ascending',
|
|
7620
|
+
selectValueToCompare: function selectValueToCompare(reply) {
|
|
7621
|
+
return reply.created_at.getTime();
|
|
7622
|
+
}
|
|
7623
|
+
});
|
|
7624
|
+
var actualIndex = ((_replies$index = replies[index]) === null || _replies$index === void 0 ? void 0 : _replies$index.id) === message.id ? index : ((_replies = replies[index - 1]) === null || _replies === void 0 ? void 0 : _replies.id) === message.id ? index - 1 : null;
|
|
7625
|
+
|
|
7626
|
+
if (actualIndex === null) {
|
|
7627
|
+
return;
|
|
7628
|
+
}
|
|
7629
|
+
|
|
7630
|
+
var updatedReplies = _toConsumableArray__default['default'](replies);
|
|
7631
|
+
|
|
7632
|
+
updatedReplies.splice(actualIndex, 1);
|
|
7633
|
+
|
|
7634
|
+
_this.state.partialNext({
|
|
7635
|
+
replies: updatedReplies
|
|
7636
|
+
});
|
|
7637
|
+
});
|
|
7638
|
+
|
|
7639
|
+
_defineProperty__default['default'](this, "upsertReplyLocally", function (_ref8) {
|
|
7640
|
+
var message = _ref8.message,
|
|
7641
|
+
_ref8$timestampChange = _ref8.timestampChanged,
|
|
7642
|
+
timestampChanged = _ref8$timestampChange === void 0 ? false : _ref8$timestampChange;
|
|
7643
|
+
|
|
7644
|
+
if (message.parent_id !== _this.id) {
|
|
7645
|
+
throw new Error('Reply does not belong to this thread');
|
|
7646
|
+
}
|
|
7647
|
+
|
|
7648
|
+
var formattedMessage = formatMessage(message);
|
|
7649
|
+
|
|
7650
|
+
if (message.status === 'failed') {
|
|
7651
|
+
// store failed reply so that it's not lost when reloading or hydrating
|
|
7652
|
+
_this.failedRepliesMap.set(formattedMessage.id, formattedMessage);
|
|
7653
|
+
} else if (_this.failedRepliesMap.has(message.id)) {
|
|
7654
|
+
_this.failedRepliesMap.delete(message.id);
|
|
7655
|
+
}
|
|
7656
|
+
|
|
7657
|
+
_this.state.next(function (current) {
|
|
7658
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7659
|
+
replies: addToMessageList(current.replies, formattedMessage, timestampChanged)
|
|
7660
|
+
});
|
|
7661
|
+
});
|
|
7662
|
+
});
|
|
7663
|
+
|
|
7664
|
+
_defineProperty__default['default'](this, "updateParentMessageLocally", function (message) {
|
|
7665
|
+
if (message.id !== _this.id) {
|
|
7666
|
+
throw new Error('Message does not belong to this thread');
|
|
7667
|
+
}
|
|
7668
|
+
|
|
7669
|
+
_this.state.next(function (current) {
|
|
7670
|
+
var _message$reply_count;
|
|
7671
|
+
|
|
7672
|
+
var formattedMessage = formatMessage(message);
|
|
7673
|
+
|
|
7674
|
+
var newData = _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7675
|
+
deletedAt: formattedMessage.deleted_at,
|
|
7676
|
+
parentMessage: formattedMessage,
|
|
7677
|
+
replyCount: (_message$reply_count = message.reply_count) !== null && _message$reply_count !== void 0 ? _message$reply_count : current.replyCount
|
|
7678
|
+
}); // update channel on channelData change (unlikely but handled anyway)
|
|
7679
|
+
|
|
7680
|
+
|
|
7681
|
+
if (message.channel) {
|
|
7682
|
+
newData['channel'] = _this.client.channel(message.channel.type, message.channel.id, message.channel);
|
|
7683
|
+
}
|
|
7684
|
+
|
|
7685
|
+
return newData;
|
|
7686
|
+
});
|
|
7687
|
+
});
|
|
7688
|
+
|
|
7689
|
+
_defineProperty__default['default'](this, "updateParentMessageOrReplyLocally", function (message) {
|
|
7690
|
+
if (message.parent_id === _this.id) {
|
|
7691
|
+
_this.upsertReplyLocally({
|
|
7692
|
+
message: message
|
|
7693
|
+
});
|
|
7694
|
+
}
|
|
7695
|
+
|
|
7696
|
+
if (!message.parent_id && message.id === _this.id) {
|
|
7697
|
+
_this.updateParentMessageLocally(message);
|
|
7698
|
+
}
|
|
7699
|
+
});
|
|
7700
|
+
|
|
7701
|
+
_defineProperty__default['default'](this, "markAsRead", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2() {
|
|
7702
|
+
var _ref10,
|
|
7703
|
+
_ref10$force,
|
|
7704
|
+
force,
|
|
7705
|
+
_args2 = arguments;
|
|
7706
|
+
|
|
7707
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
7708
|
+
while (1) {
|
|
7709
|
+
switch (_context2.prev = _context2.next) {
|
|
7710
|
+
case 0:
|
|
7711
|
+
_ref10 = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {}, _ref10$force = _ref10.force, force = _ref10$force === void 0 ? false : _ref10$force;
|
|
7712
|
+
|
|
7713
|
+
if (!(_this.ownUnreadCount === 0 && !force)) {
|
|
7714
|
+
_context2.next = 3;
|
|
7715
|
+
break;
|
|
7716
|
+
}
|
|
7717
|
+
|
|
7718
|
+
return _context2.abrupt("return", null);
|
|
7719
|
+
|
|
7720
|
+
case 3:
|
|
7721
|
+
_context2.next = 5;
|
|
7722
|
+
return _this.channel.markRead({
|
|
7723
|
+
thread_id: _this.id
|
|
7724
|
+
});
|
|
7725
|
+
|
|
7726
|
+
case 5:
|
|
7727
|
+
return _context2.abrupt("return", _context2.sent);
|
|
7728
|
+
|
|
7729
|
+
case 6:
|
|
7730
|
+
case "end":
|
|
7731
|
+
return _context2.stop();
|
|
7732
|
+
}
|
|
7733
|
+
}
|
|
7734
|
+
}, _callee2);
|
|
7735
|
+
})));
|
|
7736
|
+
|
|
7737
|
+
_defineProperty__default['default'](this, "throttledMarkAsRead", throttle(function () {
|
|
7738
|
+
return _this.markAsRead();
|
|
7739
|
+
}, MARK_AS_READ_THROTTLE_TIMEOUT, {
|
|
7740
|
+
trailing: true
|
|
7741
|
+
}));
|
|
7742
|
+
|
|
7743
|
+
_defineProperty__default['default'](this, "queryReplies", function () {
|
|
7744
|
+
var _ref11 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7745
|
+
|
|
7746
|
+
var _ref11$limit = _ref11.limit,
|
|
7747
|
+
limit = _ref11$limit === void 0 ? DEFAULT_PAGE_LIMIT : _ref11$limit,
|
|
7748
|
+
_ref11$sort = _ref11.sort,
|
|
7749
|
+
sort = _ref11$sort === void 0 ? DEFAULT_SORT : _ref11$sort,
|
|
7750
|
+
otherOptions = _objectWithoutProperties__default['default'](_ref11, _excluded$1);
|
|
7751
|
+
|
|
7752
|
+
return _this.channel.getReplies(_this.id, _objectSpread$3({
|
|
7753
|
+
limit: limit
|
|
7754
|
+
}, otherOptions), sort);
|
|
7755
|
+
});
|
|
7756
|
+
|
|
7757
|
+
_defineProperty__default['default'](this, "loadNextPage", function () {
|
|
7758
|
+
var _ref12 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
7759
|
+
_ref12$limit = _ref12.limit,
|
|
7760
|
+
limit = _ref12$limit === void 0 ? DEFAULT_PAGE_LIMIT : _ref12$limit;
|
|
7761
|
+
|
|
7762
|
+
return _this.loadPage(limit);
|
|
7763
|
+
});
|
|
7764
|
+
|
|
7765
|
+
_defineProperty__default['default'](this, "loadPrevPage", function () {
|
|
7766
|
+
var _ref13 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
7767
|
+
_ref13$limit = _ref13.limit,
|
|
7768
|
+
limit = _ref13$limit === void 0 ? DEFAULT_PAGE_LIMIT : _ref13$limit;
|
|
7769
|
+
|
|
7770
|
+
return _this.loadPage(-limit);
|
|
7771
|
+
});
|
|
7772
|
+
|
|
7773
|
+
_defineProperty__default['default'](this, "loadPage", /*#__PURE__*/function () {
|
|
7774
|
+
var _ref14 = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(count) {
|
|
7775
|
+
var _this$state$getLatest4, pagination, _ref15, _ref16, loadingKey, cursorKey, insertionMethodKey, queryOptions, limit, _replies$at$id, _replies$at, data, replies, maybeNextCursor;
|
|
7776
|
+
|
|
7777
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
7778
|
+
while (1) {
|
|
7779
|
+
switch (_context3.prev = _context3.next) {
|
|
7780
|
+
case 0:
|
|
7781
|
+
_this$state$getLatest4 = _this.state.getLatestValue(), pagination = _this$state$getLatest4.pagination;
|
|
7782
|
+
_ref15 = count > 0 ? ['isLoadingNext', 'nextCursor', 'push'] : ['isLoadingPrev', 'prevCursor', 'unshift'], _ref16 = _slicedToArray__default['default'](_ref15, 3), loadingKey = _ref16[0], cursorKey = _ref16[1], insertionMethodKey = _ref16[2];
|
|
7783
|
+
|
|
7784
|
+
if (!(pagination[loadingKey] || pagination[cursorKey] === null)) {
|
|
7785
|
+
_context3.next = 4;
|
|
7786
|
+
break;
|
|
7787
|
+
}
|
|
7788
|
+
|
|
7789
|
+
return _context3.abrupt("return");
|
|
7790
|
+
|
|
7791
|
+
case 4:
|
|
7792
|
+
queryOptions = _defineProperty__default['default']({}, count > 0 ? 'id_gt' : 'id_lt', pagination[cursorKey]);
|
|
7793
|
+
limit = Math.abs(count);
|
|
7794
|
+
|
|
7795
|
+
_this.state.partialNext({
|
|
7796
|
+
pagination: _objectSpread$3(_objectSpread$3({}, pagination), {}, _defineProperty__default['default']({}, loadingKey, true))
|
|
7797
|
+
});
|
|
7798
|
+
|
|
7799
|
+
_context3.prev = 7;
|
|
7800
|
+
_context3.next = 10;
|
|
7801
|
+
return _this.queryReplies(_objectSpread$3(_objectSpread$3({}, queryOptions), {}, {
|
|
7802
|
+
limit: limit
|
|
7803
|
+
}));
|
|
7804
|
+
|
|
7805
|
+
case 10:
|
|
7806
|
+
data = _context3.sent;
|
|
7807
|
+
replies = data.messages.map(formatMessage);
|
|
7808
|
+
maybeNextCursor = (_replies$at$id = (_replies$at = replies.at(count > 0 ? -1 : 0)) === null || _replies$at === void 0 ? void 0 : _replies$at.id) !== null && _replies$at$id !== void 0 ? _replies$at$id : null;
|
|
7809
|
+
|
|
7810
|
+
_this.state.next(function (current) {
|
|
7811
|
+
var _objectSpread4;
|
|
7812
|
+
|
|
7813
|
+
var nextReplies = current.replies; // prevent re-creating array if there's nothing to add to the current one
|
|
7814
|
+
|
|
7815
|
+
if (replies.length > 0) {
|
|
7816
|
+
var _nextReplies;
|
|
7817
|
+
|
|
7818
|
+
nextReplies = _toConsumableArray__default['default'](current.replies);
|
|
7819
|
+
|
|
7820
|
+
(_nextReplies = nextReplies)[insertionMethodKey].apply(_nextReplies, _toConsumableArray__default['default'](replies));
|
|
7821
|
+
}
|
|
7822
|
+
|
|
7823
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7824
|
+
replies: nextReplies,
|
|
7825
|
+
pagination: _objectSpread$3(_objectSpread$3({}, current.pagination), {}, (_objectSpread4 = {}, _defineProperty__default['default'](_objectSpread4, cursorKey, data.messages.length < limit ? null : maybeNextCursor), _defineProperty__default['default'](_objectSpread4, loadingKey, false), _objectSpread4))
|
|
7826
|
+
});
|
|
7827
|
+
});
|
|
7828
|
+
|
|
7829
|
+
_context3.next = 20;
|
|
7830
|
+
break;
|
|
7831
|
+
|
|
7832
|
+
case 16:
|
|
7833
|
+
_context3.prev = 16;
|
|
7834
|
+
_context3.t0 = _context3["catch"](7);
|
|
7835
|
+
|
|
7836
|
+
_this.client.logger('error', _context3.t0.message);
|
|
7837
|
+
|
|
7838
|
+
_this.state.next(function (current) {
|
|
7839
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7840
|
+
pagination: _objectSpread$3(_objectSpread$3({}, current.pagination), {}, _defineProperty__default['default']({}, loadingKey, false))
|
|
7841
|
+
});
|
|
7842
|
+
});
|
|
7843
|
+
|
|
7844
|
+
case 20:
|
|
7845
|
+
case "end":
|
|
7846
|
+
return _context3.stop();
|
|
7847
|
+
}
|
|
7848
|
+
}
|
|
7849
|
+
}, _callee3, null, [[7, 16]]);
|
|
7850
|
+
}));
|
|
7851
|
+
|
|
7852
|
+
return function (_x) {
|
|
7853
|
+
return _ref14.apply(this, arguments);
|
|
7854
|
+
};
|
|
7855
|
+
}());
|
|
7856
|
+
|
|
7857
|
+
this.state = new StateStore({
|
|
7858
|
+
active: false,
|
|
7859
|
+
channel: client.channel(threadData.channel.type, threadData.channel.id),
|
|
7860
|
+
createdAt: new Date(threadData.created_at),
|
|
7861
|
+
deletedAt: threadData.deleted_at ? new Date(threadData.deleted_at) : null,
|
|
7862
|
+
isLoading: false,
|
|
7863
|
+
isStateStale: false,
|
|
7864
|
+
pagination: repliesPaginationFromInitialThread(threadData),
|
|
7865
|
+
parentMessage: formatMessage(threadData.parent_message),
|
|
7866
|
+
participants: threadData.thread_participants,
|
|
7867
|
+
read: formatReadState((_threadData$read = threadData.read) !== null && _threadData$read !== void 0 ? _threadData$read : []),
|
|
7868
|
+
replies: threadData.latest_replies.map(formatMessage),
|
|
7869
|
+
replyCount: (_threadData$reply_cou = threadData.reply_count) !== null && _threadData$reply_cou !== void 0 ? _threadData$reply_cou : 0,
|
|
7870
|
+
updatedAt: threadData.updated_at ? new Date(threadData.updated_at) : null
|
|
7871
|
+
});
|
|
7872
|
+
this.id = threadData.parent_message_id;
|
|
7873
|
+
this.client = client;
|
|
7874
|
+
}
|
|
7875
|
+
|
|
7876
|
+
_createClass__default['default'](Thread, [{
|
|
7877
|
+
key: "channel",
|
|
7878
|
+
get: function get() {
|
|
7879
|
+
return this.state.getLatestValue().channel;
|
|
7880
|
+
}
|
|
7881
|
+
}, {
|
|
7882
|
+
key: "hasStaleState",
|
|
7883
|
+
get: function get() {
|
|
7884
|
+
return this.state.getLatestValue().isStateStale;
|
|
7885
|
+
}
|
|
7886
|
+
}, {
|
|
7887
|
+
key: "ownUnreadCount",
|
|
7888
|
+
get: function get() {
|
|
7889
|
+
return ownUnreadCountSelector(this.client.userID)(this.state.getLatestValue());
|
|
7890
|
+
}
|
|
7891
|
+
}]);
|
|
7892
|
+
|
|
7893
|
+
return Thread;
|
|
7894
|
+
}();
|
|
7895
|
+
|
|
7896
|
+
var formatReadState = function formatReadState(read) {
|
|
7897
|
+
return read.reduce(function (state, userRead) {
|
|
7898
|
+
var _userRead$unread_mess;
|
|
7899
|
+
|
|
7900
|
+
state[userRead.user.id] = {
|
|
7901
|
+
user: userRead.user,
|
|
7902
|
+
lastReadMessageId: userRead.last_read_message_id,
|
|
7903
|
+
unreadMessageCount: (_userRead$unread_mess = userRead.unread_messages) !== null && _userRead$unread_mess !== void 0 ? _userRead$unread_mess : 0,
|
|
7904
|
+
lastReadAt: new Date(userRead.last_read)
|
|
7905
|
+
};
|
|
7906
|
+
return state;
|
|
7907
|
+
}, {});
|
|
7908
|
+
};
|
|
7909
|
+
|
|
7910
|
+
var repliesPaginationFromInitialThread = function repliesPaginationFromInitialThread(thread) {
|
|
7911
|
+
var _thread$latest_replie, _thread$latest_replie2;
|
|
7912
|
+
|
|
7913
|
+
var latestRepliesContainsAllReplies = thread.latest_replies.length === thread.reply_count;
|
|
7914
|
+
return {
|
|
7915
|
+
nextCursor: null,
|
|
7916
|
+
prevCursor: latestRepliesContainsAllReplies ? null : (_thread$latest_replie = (_thread$latest_replie2 = thread.latest_replies.at(0)) === null || _thread$latest_replie2 === void 0 ? void 0 : _thread$latest_replie2.id) !== null && _thread$latest_replie !== void 0 ? _thread$latest_replie : null,
|
|
7917
|
+
isLoadingNext: false,
|
|
7918
|
+
isLoadingPrev: false
|
|
7919
|
+
};
|
|
7920
|
+
};
|
|
7921
|
+
|
|
7922
|
+
var ownUnreadCountSelector = function ownUnreadCountSelector(currentUserId) {
|
|
7923
|
+
return function (state) {
|
|
7924
|
+
var _state$read$currentUs;
|
|
7925
|
+
|
|
7926
|
+
return currentUserId && ((_state$read$currentUs = state.read[currentUserId]) === null || _state$read$currentUs === void 0 ? void 0 : _state$read$currentUs.unreadMessageCount) || 0;
|
|
7927
|
+
};
|
|
7928
|
+
};
|
|
7929
|
+
|
|
7930
|
+
function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
7931
|
+
|
|
7932
|
+
function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
7101
7933
|
var MODERATION_ENTITY_TYPES = {
|
|
7102
7934
|
user: 'stream:user',
|
|
7103
7935
|
message: 'stream:chat:v1:message'
|
|
@@ -7214,7 +8046,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7214
8046
|
case 0:
|
|
7215
8047
|
options = _args3.length > 4 && _args3[4] !== undefined ? _args3[4] : {};
|
|
7216
8048
|
_context3.next = 3;
|
|
7217
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/flag', _objectSpread$
|
|
8049
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/flag', _objectSpread$2({
|
|
7218
8050
|
entity_type: entityType,
|
|
7219
8051
|
entity_id: entityId,
|
|
7220
8052
|
entity_creator_id: entityCreatorID,
|
|
@@ -7259,7 +8091,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7259
8091
|
case 0:
|
|
7260
8092
|
options = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {};
|
|
7261
8093
|
_context4.next = 3;
|
|
7262
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/mute', _objectSpread$
|
|
8094
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/mute', _objectSpread$2({
|
|
7263
8095
|
target_ids: [targetID]
|
|
7264
8096
|
}, options));
|
|
7265
8097
|
|
|
@@ -7297,7 +8129,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7297
8129
|
switch (_context5.prev = _context5.next) {
|
|
7298
8130
|
case 0:
|
|
7299
8131
|
_context5.next = 2;
|
|
7300
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/unmute', _objectSpread$
|
|
8132
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/unmute', _objectSpread$2({
|
|
7301
8133
|
target_ids: [targetID]
|
|
7302
8134
|
}, options));
|
|
7303
8135
|
|
|
@@ -7339,7 +8171,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7339
8171
|
case 0:
|
|
7340
8172
|
options = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : {};
|
|
7341
8173
|
_context6.next = 3;
|
|
7342
|
-
return this.client.get(this.client.baseURL + "/api/v2/moderation/user_report", _objectSpread$
|
|
8174
|
+
return this.client.get(this.client.baseURL + "/api/v2/moderation/user_report", _objectSpread$2({
|
|
7343
8175
|
user_id: userID
|
|
7344
8176
|
}, options));
|
|
7345
8177
|
|
|
@@ -7383,7 +8215,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7383
8215
|
sort = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : [];
|
|
7384
8216
|
options = _args7.length > 2 && _args7[2] !== undefined ? _args7[2] : {};
|
|
7385
8217
|
_context7.next = 5;
|
|
7386
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/review_queue', _objectSpread$
|
|
8218
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/review_queue', _objectSpread$2({
|
|
7387
8219
|
filter: filterConditions,
|
|
7388
8220
|
sort: normalizeQuerySort(sort)
|
|
7389
8221
|
}, options));
|
|
@@ -7486,7 +8318,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7486
8318
|
case 0:
|
|
7487
8319
|
options = _args10.length > 2 && _args10[2] !== undefined ? _args10[2] : {};
|
|
7488
8320
|
_context10.next = 3;
|
|
7489
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/submit_action', _objectSpread$
|
|
8321
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/submit_action', _objectSpread$2({
|
|
7490
8322
|
action_type: actionType,
|
|
7491
8323
|
item_id: itemID
|
|
7492
8324
|
}, options));
|
|
@@ -7513,6 +8345,454 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7513
8345
|
return Moderation;
|
|
7514
8346
|
}();
|
|
7515
8347
|
|
|
8348
|
+
function _createForOfIteratorHelper$1(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$1(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
8349
|
+
|
|
8350
|
+
function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); }
|
|
8351
|
+
|
|
8352
|
+
function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
8353
|
+
|
|
8354
|
+
function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
8355
|
+
|
|
8356
|
+
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
8357
|
+
var DEFAULT_CONNECTION_RECOVERY_THROTTLE_DURATION = 1000;
|
|
8358
|
+
var MAX_QUERY_THREADS_LIMIT = 25;
|
|
8359
|
+
var ThreadManager = /*#__PURE__*/function () {
|
|
8360
|
+
function ThreadManager(_ref) {
|
|
8361
|
+
var _this = this;
|
|
8362
|
+
|
|
8363
|
+
var client = _ref.client;
|
|
8364
|
+
|
|
8365
|
+
_classCallCheck__default['default'](this, ThreadManager);
|
|
8366
|
+
|
|
8367
|
+
_defineProperty__default['default'](this, "state", void 0);
|
|
8368
|
+
|
|
8369
|
+
_defineProperty__default['default'](this, "client", void 0);
|
|
8370
|
+
|
|
8371
|
+
_defineProperty__default['default'](this, "unsubscribeFunctions", new Set());
|
|
8372
|
+
|
|
8373
|
+
_defineProperty__default['default'](this, "threadsByIdGetterCache", void 0);
|
|
8374
|
+
|
|
8375
|
+
_defineProperty__default['default'](this, "activate", function () {
|
|
8376
|
+
_this.state.partialNext({
|
|
8377
|
+
active: true
|
|
8378
|
+
});
|
|
8379
|
+
});
|
|
8380
|
+
|
|
8381
|
+
_defineProperty__default['default'](this, "deactivate", function () {
|
|
8382
|
+
_this.state.partialNext({
|
|
8383
|
+
active: false
|
|
8384
|
+
});
|
|
8385
|
+
});
|
|
8386
|
+
|
|
8387
|
+
_defineProperty__default['default'](this, "registerSubscriptions", function () {
|
|
8388
|
+
if (_this.unsubscribeFunctions.size) return;
|
|
8389
|
+
|
|
8390
|
+
_this.unsubscribeFunctions.add(_this.subscribeUnreadThreadsCountChange());
|
|
8391
|
+
|
|
8392
|
+
_this.unsubscribeFunctions.add(_this.subscribeManageThreadSubscriptions());
|
|
8393
|
+
|
|
8394
|
+
_this.unsubscribeFunctions.add(_this.subscribeReloadOnActivation());
|
|
8395
|
+
|
|
8396
|
+
_this.unsubscribeFunctions.add(_this.subscribeNewReplies());
|
|
8397
|
+
|
|
8398
|
+
_this.unsubscribeFunctions.add(_this.subscribeRecoverAfterConnectionDrop());
|
|
8399
|
+
});
|
|
8400
|
+
|
|
8401
|
+
_defineProperty__default['default'](this, "subscribeUnreadThreadsCountChange", function () {
|
|
8402
|
+
var _ref3;
|
|
8403
|
+
|
|
8404
|
+
// initiate
|
|
8405
|
+
var _ref2 = (_ref3 = _this.client.user) !== null && _ref3 !== void 0 ? _ref3 : {},
|
|
8406
|
+
_ref2$unread_threads = _ref2.unread_threads,
|
|
8407
|
+
unreadThreadCount = _ref2$unread_threads === void 0 ? 0 : _ref2$unread_threads;
|
|
8408
|
+
|
|
8409
|
+
_this.state.partialNext({
|
|
8410
|
+
unreadThreadCount: unreadThreadCount
|
|
8411
|
+
});
|
|
8412
|
+
|
|
8413
|
+
var unsubscribeFunctions = ['health.check', 'notification.mark_read', 'notification.thread_message_new', 'notification.channel_deleted'].map(function (eventType) {
|
|
8414
|
+
return _this.client.on(eventType, function (event) {
|
|
8415
|
+
var _event$me;
|
|
8416
|
+
|
|
8417
|
+
var _ref4 = (_event$me = event.me) !== null && _event$me !== void 0 ? _event$me : event,
|
|
8418
|
+
unreadThreadCount = _ref4.unread_threads;
|
|
8419
|
+
|
|
8420
|
+
if (typeof unreadThreadCount === 'number') {
|
|
8421
|
+
_this.state.partialNext({
|
|
8422
|
+
unreadThreadCount: unreadThreadCount
|
|
8423
|
+
});
|
|
8424
|
+
}
|
|
8425
|
+
}).unsubscribe;
|
|
8426
|
+
});
|
|
8427
|
+
return function () {
|
|
8428
|
+
return unsubscribeFunctions.forEach(function (unsubscribe) {
|
|
8429
|
+
return unsubscribe();
|
|
8430
|
+
});
|
|
8431
|
+
};
|
|
8432
|
+
});
|
|
8433
|
+
|
|
8434
|
+
_defineProperty__default['default'](this, "subscribeManageThreadSubscriptions", function () {
|
|
8435
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
8436
|
+
return [nextValue.threads];
|
|
8437
|
+
}, function (_ref5, prev) {
|
|
8438
|
+
var _ref6 = _slicedToArray__default['default'](_ref5, 1),
|
|
8439
|
+
nextThreads = _ref6[0];
|
|
8440
|
+
|
|
8441
|
+
var _ref7 = prev !== null && prev !== void 0 ? prev : [],
|
|
8442
|
+
_ref8 = _slicedToArray__default['default'](_ref7, 1),
|
|
8443
|
+
_ref8$ = _ref8[0],
|
|
8444
|
+
prevThreads = _ref8$ === void 0 ? [] : _ref8$; // Thread instance was removed if there's no thread with the given id at all,
|
|
8445
|
+
// or it was replaced with a new instance
|
|
8446
|
+
|
|
8447
|
+
|
|
8448
|
+
var removedThreads = prevThreads.filter(function (thread) {
|
|
8449
|
+
return thread !== _this.threadsById[thread.id];
|
|
8450
|
+
});
|
|
8451
|
+
nextThreads.forEach(function (thread) {
|
|
8452
|
+
return thread.registerSubscriptions();
|
|
8453
|
+
});
|
|
8454
|
+
removedThreads.forEach(function (thread) {
|
|
8455
|
+
return thread.unregisterSubscriptions();
|
|
8456
|
+
});
|
|
8457
|
+
});
|
|
8458
|
+
});
|
|
8459
|
+
|
|
8460
|
+
_defineProperty__default['default'](this, "subscribeReloadOnActivation", function () {
|
|
8461
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
8462
|
+
return [nextValue.active];
|
|
8463
|
+
}, function (_ref9) {
|
|
8464
|
+
var _ref10 = _slicedToArray__default['default'](_ref9, 1),
|
|
8465
|
+
active = _ref10[0];
|
|
8466
|
+
|
|
8467
|
+
if (active) _this.reload();
|
|
8468
|
+
});
|
|
8469
|
+
});
|
|
8470
|
+
|
|
8471
|
+
_defineProperty__default['default'](this, "subscribeNewReplies", function () {
|
|
8472
|
+
return _this.client.on('notification.thread_message_new', function (event) {
|
|
8473
|
+
var _event$message;
|
|
8474
|
+
|
|
8475
|
+
var parentId = (_event$message = event.message) === null || _event$message === void 0 ? void 0 : _event$message.parent_id;
|
|
8476
|
+
if (!parentId) return;
|
|
8477
|
+
|
|
8478
|
+
var _this$state$getLatest = _this.state.getLatestValue(),
|
|
8479
|
+
unseenThreadIds = _this$state$getLatest.unseenThreadIds,
|
|
8480
|
+
ready = _this$state$getLatest.ready;
|
|
8481
|
+
|
|
8482
|
+
if (!ready) return;
|
|
8483
|
+
|
|
8484
|
+
if (_this.threadsById[parentId]) {
|
|
8485
|
+
_this.state.partialNext({
|
|
8486
|
+
isThreadOrderStale: true
|
|
8487
|
+
});
|
|
8488
|
+
} else if (!unseenThreadIds.includes(parentId)) {
|
|
8489
|
+
_this.state.partialNext({
|
|
8490
|
+
unseenThreadIds: unseenThreadIds.concat(parentId)
|
|
8491
|
+
});
|
|
8492
|
+
}
|
|
8493
|
+
}).unsubscribe;
|
|
8494
|
+
});
|
|
8495
|
+
|
|
8496
|
+
_defineProperty__default['default'](this, "subscribeRecoverAfterConnectionDrop", function () {
|
|
8497
|
+
var unsubscribeConnectionDropped = _this.client.on('connection.changed', function (event) {
|
|
8498
|
+
if (event.online === false) {
|
|
8499
|
+
_this.state.next(function (current) {
|
|
8500
|
+
return current.lastConnectionDropAt ? current : _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8501
|
+
lastConnectionDropAt: new Date()
|
|
8502
|
+
});
|
|
8503
|
+
});
|
|
8504
|
+
}
|
|
8505
|
+
}).unsubscribe;
|
|
8506
|
+
|
|
8507
|
+
var throttledHandleConnectionRecovered = throttle(function () {
|
|
8508
|
+
var _this$state$getLatest2 = _this.state.getLatestValue(),
|
|
8509
|
+
lastConnectionDropAt = _this$state$getLatest2.lastConnectionDropAt;
|
|
8510
|
+
|
|
8511
|
+
if (!lastConnectionDropAt) return;
|
|
8512
|
+
|
|
8513
|
+
_this.reload({
|
|
8514
|
+
force: true
|
|
8515
|
+
});
|
|
8516
|
+
}, DEFAULT_CONNECTION_RECOVERY_THROTTLE_DURATION, {
|
|
8517
|
+
trailing: true
|
|
8518
|
+
});
|
|
8519
|
+
|
|
8520
|
+
var unsubscribeConnectionRecovered = _this.client.on('connection.recovered', throttledHandleConnectionRecovered).unsubscribe;
|
|
8521
|
+
|
|
8522
|
+
return function () {
|
|
8523
|
+
unsubscribeConnectionDropped();
|
|
8524
|
+
unsubscribeConnectionRecovered();
|
|
8525
|
+
};
|
|
8526
|
+
});
|
|
8527
|
+
|
|
8528
|
+
_defineProperty__default['default'](this, "unregisterSubscriptions", function () {
|
|
8529
|
+
_this.state.getLatestValue().threads.forEach(function (thread) {
|
|
8530
|
+
return thread.unregisterSubscriptions();
|
|
8531
|
+
});
|
|
8532
|
+
|
|
8533
|
+
_this.unsubscribeFunctions.forEach(function (cleanupFunction) {
|
|
8534
|
+
return cleanupFunction();
|
|
8535
|
+
});
|
|
8536
|
+
|
|
8537
|
+
_this.unsubscribeFunctions.clear();
|
|
8538
|
+
});
|
|
8539
|
+
|
|
8540
|
+
_defineProperty__default['default'](this, "reload", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee() {
|
|
8541
|
+
var _ref12,
|
|
8542
|
+
_ref12$force,
|
|
8543
|
+
force,
|
|
8544
|
+
_this$state$getLatest3,
|
|
8545
|
+
threads,
|
|
8546
|
+
unseenThreadIds,
|
|
8547
|
+
isThreadOrderStale,
|
|
8548
|
+
pagination,
|
|
8549
|
+
ready,
|
|
8550
|
+
limit,
|
|
8551
|
+
response,
|
|
8552
|
+
currentThreads,
|
|
8553
|
+
nextThreads,
|
|
8554
|
+
_iterator,
|
|
8555
|
+
_step,
|
|
8556
|
+
incomingThread,
|
|
8557
|
+
existingThread,
|
|
8558
|
+
_args = arguments;
|
|
8559
|
+
|
|
8560
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
8561
|
+
while (1) {
|
|
8562
|
+
switch (_context.prev = _context.next) {
|
|
8563
|
+
case 0:
|
|
8564
|
+
_ref12 = _args.length > 0 && _args[0] !== undefined ? _args[0] : {}, _ref12$force = _ref12.force, force = _ref12$force === void 0 ? false : _ref12$force;
|
|
8565
|
+
_this$state$getLatest3 = _this.state.getLatestValue(), threads = _this$state$getLatest3.threads, unseenThreadIds = _this$state$getLatest3.unseenThreadIds, isThreadOrderStale = _this$state$getLatest3.isThreadOrderStale, pagination = _this$state$getLatest3.pagination, ready = _this$state$getLatest3.ready;
|
|
8566
|
+
|
|
8567
|
+
if (!pagination.isLoading) {
|
|
8568
|
+
_context.next = 4;
|
|
8569
|
+
break;
|
|
8570
|
+
}
|
|
8571
|
+
|
|
8572
|
+
return _context.abrupt("return");
|
|
8573
|
+
|
|
8574
|
+
case 4:
|
|
8575
|
+
if (!(!force && ready && !unseenThreadIds.length && !isThreadOrderStale)) {
|
|
8576
|
+
_context.next = 6;
|
|
8577
|
+
break;
|
|
8578
|
+
}
|
|
8579
|
+
|
|
8580
|
+
return _context.abrupt("return");
|
|
8581
|
+
|
|
8582
|
+
case 6:
|
|
8583
|
+
limit = threads.length + unseenThreadIds.length;
|
|
8584
|
+
_context.prev = 7;
|
|
8585
|
+
|
|
8586
|
+
_this.state.next(function (current) {
|
|
8587
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8588
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8589
|
+
isLoading: true
|
|
8590
|
+
})
|
|
8591
|
+
});
|
|
8592
|
+
});
|
|
8593
|
+
|
|
8594
|
+
_context.next = 11;
|
|
8595
|
+
return _this.queryThreads({
|
|
8596
|
+
limit: Math.min(limit, MAX_QUERY_THREADS_LIMIT)
|
|
8597
|
+
});
|
|
8598
|
+
|
|
8599
|
+
case 11:
|
|
8600
|
+
response = _context.sent;
|
|
8601
|
+
currentThreads = _this.threadsById;
|
|
8602
|
+
nextThreads = [];
|
|
8603
|
+
_iterator = _createForOfIteratorHelper$1(response.threads);
|
|
8604
|
+
|
|
8605
|
+
try {
|
|
8606
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
8607
|
+
incomingThread = _step.value;
|
|
8608
|
+
existingThread = currentThreads[incomingThread.id];
|
|
8609
|
+
|
|
8610
|
+
if (existingThread) {
|
|
8611
|
+
// Reuse thread instances if possible
|
|
8612
|
+
nextThreads.push(existingThread);
|
|
8613
|
+
|
|
8614
|
+
if (existingThread.hasStaleState) {
|
|
8615
|
+
existingThread.hydrateState(incomingThread);
|
|
8616
|
+
}
|
|
8617
|
+
} else {
|
|
8618
|
+
nextThreads.push(incomingThread);
|
|
8619
|
+
}
|
|
8620
|
+
}
|
|
8621
|
+
} catch (err) {
|
|
8622
|
+
_iterator.e(err);
|
|
8623
|
+
} finally {
|
|
8624
|
+
_iterator.f();
|
|
8625
|
+
}
|
|
8626
|
+
|
|
8627
|
+
_this.state.next(function (current) {
|
|
8628
|
+
var _response$next;
|
|
8629
|
+
|
|
8630
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8631
|
+
threads: nextThreads,
|
|
8632
|
+
unseenThreadIds: [],
|
|
8633
|
+
isThreadOrderStale: false,
|
|
8634
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8635
|
+
isLoading: false,
|
|
8636
|
+
nextCursor: (_response$next = response.next) !== null && _response$next !== void 0 ? _response$next : null
|
|
8637
|
+
}),
|
|
8638
|
+
ready: true
|
|
8639
|
+
});
|
|
8640
|
+
});
|
|
8641
|
+
|
|
8642
|
+
_context.next = 23;
|
|
8643
|
+
break;
|
|
8644
|
+
|
|
8645
|
+
case 19:
|
|
8646
|
+
_context.prev = 19;
|
|
8647
|
+
_context.t0 = _context["catch"](7);
|
|
8648
|
+
|
|
8649
|
+
_this.client.logger('error', _context.t0.message);
|
|
8650
|
+
|
|
8651
|
+
_this.state.next(function (current) {
|
|
8652
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8653
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8654
|
+
isLoading: false
|
|
8655
|
+
})
|
|
8656
|
+
});
|
|
8657
|
+
});
|
|
8658
|
+
|
|
8659
|
+
case 23:
|
|
8660
|
+
case "end":
|
|
8661
|
+
return _context.stop();
|
|
8662
|
+
}
|
|
8663
|
+
}
|
|
8664
|
+
}, _callee, null, [[7, 19]]);
|
|
8665
|
+
})));
|
|
8666
|
+
|
|
8667
|
+
_defineProperty__default['default'](this, "queryThreads", function () {
|
|
8668
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
8669
|
+
return _this.client.queryThreads(_objectSpread$1({
|
|
8670
|
+
limit: 25,
|
|
8671
|
+
participant_limit: 10,
|
|
8672
|
+
reply_limit: 10,
|
|
8673
|
+
watch: true
|
|
8674
|
+
}, options));
|
|
8675
|
+
});
|
|
8676
|
+
|
|
8677
|
+
_defineProperty__default['default'](this, "loadNextPage", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2() {
|
|
8678
|
+
var options,
|
|
8679
|
+
_this$state$getLatest4,
|
|
8680
|
+
pagination,
|
|
8681
|
+
response,
|
|
8682
|
+
_args2 = arguments;
|
|
8683
|
+
|
|
8684
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
8685
|
+
while (1) {
|
|
8686
|
+
switch (_context2.prev = _context2.next) {
|
|
8687
|
+
case 0:
|
|
8688
|
+
options = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {};
|
|
8689
|
+
_this$state$getLatest4 = _this.state.getLatestValue(), pagination = _this$state$getLatest4.pagination;
|
|
8690
|
+
|
|
8691
|
+
if (!(pagination.isLoadingNext || !pagination.nextCursor)) {
|
|
8692
|
+
_context2.next = 4;
|
|
8693
|
+
break;
|
|
8694
|
+
}
|
|
8695
|
+
|
|
8696
|
+
return _context2.abrupt("return");
|
|
8697
|
+
|
|
8698
|
+
case 4:
|
|
8699
|
+
_context2.prev = 4;
|
|
8700
|
+
|
|
8701
|
+
_this.state.partialNext({
|
|
8702
|
+
pagination: _objectSpread$1(_objectSpread$1({}, pagination), {}, {
|
|
8703
|
+
isLoadingNext: true
|
|
8704
|
+
})
|
|
8705
|
+
});
|
|
8706
|
+
|
|
8707
|
+
_context2.next = 8;
|
|
8708
|
+
return _this.queryThreads(_objectSpread$1(_objectSpread$1({}, options), {}, {
|
|
8709
|
+
next: pagination.nextCursor
|
|
8710
|
+
}));
|
|
8711
|
+
|
|
8712
|
+
case 8:
|
|
8713
|
+
response = _context2.sent;
|
|
8714
|
+
|
|
8715
|
+
_this.state.next(function (current) {
|
|
8716
|
+
var _response$next2;
|
|
8717
|
+
|
|
8718
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8719
|
+
threads: response.threads.length ? current.threads.concat(response.threads) : current.threads,
|
|
8720
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8721
|
+
nextCursor: (_response$next2 = response.next) !== null && _response$next2 !== void 0 ? _response$next2 : null,
|
|
8722
|
+
isLoadingNext: false
|
|
8723
|
+
})
|
|
8724
|
+
});
|
|
8725
|
+
});
|
|
8726
|
+
|
|
8727
|
+
_context2.next = 16;
|
|
8728
|
+
break;
|
|
8729
|
+
|
|
8730
|
+
case 12:
|
|
8731
|
+
_context2.prev = 12;
|
|
8732
|
+
_context2.t0 = _context2["catch"](4);
|
|
8733
|
+
|
|
8734
|
+
_this.client.logger('error', _context2.t0.message);
|
|
8735
|
+
|
|
8736
|
+
_this.state.next(function (current) {
|
|
8737
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8738
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8739
|
+
isLoadingNext: false
|
|
8740
|
+
})
|
|
8741
|
+
});
|
|
8742
|
+
});
|
|
8743
|
+
|
|
8744
|
+
case 16:
|
|
8745
|
+
case "end":
|
|
8746
|
+
return _context2.stop();
|
|
8747
|
+
}
|
|
8748
|
+
}
|
|
8749
|
+
}, _callee2, null, [[4, 12]]);
|
|
8750
|
+
})));
|
|
8751
|
+
|
|
8752
|
+
this.client = client;
|
|
8753
|
+
this.state = new StateStore({
|
|
8754
|
+
active: false,
|
|
8755
|
+
isThreadOrderStale: false,
|
|
8756
|
+
threads: [],
|
|
8757
|
+
unreadThreadCount: 0,
|
|
8758
|
+
unseenThreadIds: [],
|
|
8759
|
+
lastConnectionDropAt: null,
|
|
8760
|
+
pagination: {
|
|
8761
|
+
isLoading: false,
|
|
8762
|
+
isLoadingNext: false,
|
|
8763
|
+
nextCursor: null
|
|
8764
|
+
},
|
|
8765
|
+
ready: false
|
|
8766
|
+
});
|
|
8767
|
+
this.threadsByIdGetterCache = {
|
|
8768
|
+
threads: [],
|
|
8769
|
+
threadsById: {}
|
|
8770
|
+
};
|
|
8771
|
+
}
|
|
8772
|
+
|
|
8773
|
+
_createClass__default['default'](ThreadManager, [{
|
|
8774
|
+
key: "threadsById",
|
|
8775
|
+
get: function get() {
|
|
8776
|
+
var _this$state$getLatest5 = this.state.getLatestValue(),
|
|
8777
|
+
threads = _this$state$getLatest5.threads;
|
|
8778
|
+
|
|
8779
|
+
if (threads === this.threadsByIdGetterCache.threads) {
|
|
8780
|
+
return this.threadsByIdGetterCache.threadsById;
|
|
8781
|
+
}
|
|
8782
|
+
|
|
8783
|
+
var threadsById = threads.reduce(function (newThreadsById, thread) {
|
|
8784
|
+
newThreadsById[thread.id] = thread;
|
|
8785
|
+
return newThreadsById;
|
|
8786
|
+
}, {});
|
|
8787
|
+
this.threadsByIdGetterCache.threads = threads;
|
|
8788
|
+
this.threadsByIdGetterCache.threadsById = threadsById;
|
|
8789
|
+
return threadsById;
|
|
8790
|
+
}
|
|
8791
|
+
}]);
|
|
8792
|
+
|
|
8793
|
+
return ThreadManager;
|
|
8794
|
+
}();
|
|
8795
|
+
|
|
7516
8796
|
var _excluded = ["created_at", "updated_at", "last_active", "online"],
|
|
7517
8797
|
_excluded2 = ["params", "headers"];
|
|
7518
8798
|
|
|
@@ -7541,6 +8821,8 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
7541
8821
|
|
|
7542
8822
|
_defineProperty__default['default'](this, "activeChannels", void 0);
|
|
7543
8823
|
|
|
8824
|
+
_defineProperty__default['default'](this, "threads", void 0);
|
|
8825
|
+
|
|
7544
8826
|
_defineProperty__default['default'](this, "anonymous", void 0);
|
|
7545
8827
|
|
|
7546
8828
|
_defineProperty__default['default'](this, "persistUserOnConnectionFailure", void 0);
|
|
@@ -7772,7 +9054,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
7772
9054
|
tags: ['connection', 'client']
|
|
7773
9055
|
});
|
|
7774
9056
|
|
|
7775
|
-
return _context3.abrupt("return"
|
|
9057
|
+
return _context3.abrupt("return");
|
|
7776
9058
|
|
|
7777
9059
|
case 8:
|
|
7778
9060
|
_this.clientID = "".concat(_this.userID, "--").concat(randomId());
|
|
@@ -8380,8 +9662,8 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
8380
9662
|
this.tokenManager = new TokenManager(this.secret);
|
|
8381
9663
|
this.consecutiveFailures = 0;
|
|
8382
9664
|
this.insightMetrics = new InsightMetrics();
|
|
8383
|
-
this.defaultWSTimeoutWithFallback =
|
|
8384
|
-
this.defaultWSTimeout =
|
|
9665
|
+
this.defaultWSTimeoutWithFallback = 6 * 1000;
|
|
9666
|
+
this.defaultWSTimeout = 15 * 1000;
|
|
8385
9667
|
this.axiosInstance.defaults.paramsSerializer = axiosParamsSerializer;
|
|
8386
9668
|
/**
|
|
8387
9669
|
* logger function should accept 3 parameters:
|
|
@@ -8436,6 +9718,9 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
8436
9718
|
return null;
|
|
8437
9719
|
};
|
|
8438
9720
|
this.recoverStateOnReconnect = this.options.recoverStateOnReconnect;
|
|
9721
|
+
this.threads = new ThreadManager({
|
|
9722
|
+
client: this
|
|
9723
|
+
});
|
|
8439
9724
|
}
|
|
8440
9725
|
/**
|
|
8441
9726
|
* Get a client instance
|
|
@@ -9586,7 +10871,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9586
10871
|
isLatestMessageSet: true
|
|
9587
10872
|
}
|
|
9588
10873
|
});
|
|
9589
|
-
return _context20.abrupt("return", this.hydrateActiveChannels(data.channels, stateOptions));
|
|
10874
|
+
return _context20.abrupt("return", this.hydrateActiveChannels(data.channels, stateOptions, options));
|
|
9590
10875
|
|
|
9591
10876
|
case 13:
|
|
9592
10877
|
case "end":
|
|
@@ -9636,7 +10921,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9636
10921
|
sort: normalizeQuerySort(sort)
|
|
9637
10922
|
}, options);
|
|
9638
10923
|
_context21.next = 7;
|
|
9639
|
-
return this.post(this.baseURL + '/messages/' + messageID + '/reactions', payload);
|
|
10924
|
+
return this.post(this.baseURL + '/messages/' + encodeURIComponent(messageID) + '/reactions', payload);
|
|
9640
10925
|
|
|
9641
10926
|
case 7:
|
|
9642
10927
|
return _context21.abrupt("return", _context21.sent);
|
|
@@ -9660,9 +10945,11 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9660
10945
|
value: function hydrateActiveChannels() {
|
|
9661
10946
|
var channelsFromApi = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
9662
10947
|
var stateOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
10948
|
+
var queryChannelsOptions = arguments.length > 2 ? arguments[2] : undefined;
|
|
9663
10949
|
var skipInitialization = stateOptions.skipInitialization,
|
|
9664
10950
|
_stateOptions$offline = stateOptions.offlineMode,
|
|
9665
10951
|
offlineMode = _stateOptions$offline === void 0 ? false : _stateOptions$offline;
|
|
10952
|
+
var channels = [];
|
|
9666
10953
|
|
|
9667
10954
|
var _iterator2 = _createForOfIteratorHelper(channelsFromApi),
|
|
9668
10955
|
_step2;
|
|
@@ -9672,40 +10959,42 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9672
10959
|
var channelState = _step2.value;
|
|
9673
10960
|
|
|
9674
10961
|
this._addChannelConfig(channelState.channel);
|
|
9675
|
-
}
|
|
9676
|
-
} catch (err) {
|
|
9677
|
-
_iterator2.e(err);
|
|
9678
|
-
} finally {
|
|
9679
|
-
_iterator2.f();
|
|
9680
|
-
}
|
|
9681
|
-
|
|
9682
|
-
var channels = [];
|
|
9683
10962
|
|
|
9684
|
-
|
|
9685
|
-
|
|
9686
|
-
|
|
9687
|
-
try {
|
|
9688
|
-
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
9689
|
-
var _channelState = _step3.value;
|
|
9690
|
-
var c = this.channel(_channelState.channel.type, _channelState.channel.id);
|
|
9691
|
-
c.data = _channelState.channel;
|
|
10963
|
+
var c = this.channel(channelState.channel.type, channelState.channel.id);
|
|
10964
|
+
c.data = channelState.channel;
|
|
9692
10965
|
c.offlineMode = offlineMode;
|
|
9693
10966
|
c.initialized = !offlineMode;
|
|
10967
|
+
var updatedMessagesSet = void 0;
|
|
9694
10968
|
|
|
9695
10969
|
if (skipInitialization === undefined) {
|
|
9696
|
-
c._initializeState(
|
|
9697
|
-
|
|
10970
|
+
var _c$_initializeState = c._initializeState(channelState, 'latest'),
|
|
10971
|
+
messageSet = _c$_initializeState.messageSet;
|
|
10972
|
+
|
|
10973
|
+
updatedMessagesSet = messageSet;
|
|
10974
|
+
} else if (!skipInitialization.includes(channelState.channel.id)) {
|
|
9698
10975
|
c.state.clearMessages();
|
|
9699
10976
|
|
|
9700
|
-
c._initializeState(
|
|
10977
|
+
var _c$_initializeState2 = c._initializeState(channelState, 'latest'),
|
|
10978
|
+
_messageSet = _c$_initializeState2.messageSet;
|
|
10979
|
+
|
|
10980
|
+
updatedMessagesSet = _messageSet;
|
|
10981
|
+
}
|
|
10982
|
+
|
|
10983
|
+
if (updatedMessagesSet) {
|
|
10984
|
+
updatedMessagesSet.pagination = _objectSpread(_objectSpread({}, updatedMessagesSet.pagination), messageSetPagination({
|
|
10985
|
+
parentSet: updatedMessagesSet,
|
|
10986
|
+
requestedPageSize: (queryChannelsOptions === null || queryChannelsOptions === void 0 ? void 0 : queryChannelsOptions.message_limit) || DEFAULT_QUERY_CHANNELS_MESSAGE_LIST_PAGE_SIZE,
|
|
10987
|
+
returnedPage: channelState.messages,
|
|
10988
|
+
logger: this.logger
|
|
10989
|
+
}));
|
|
9701
10990
|
}
|
|
9702
10991
|
|
|
9703
10992
|
channels.push(c);
|
|
9704
10993
|
}
|
|
9705
10994
|
} catch (err) {
|
|
9706
|
-
|
|
10995
|
+
_iterator2.e(err);
|
|
9707
10996
|
} finally {
|
|
9708
|
-
|
|
10997
|
+
_iterator2.f();
|
|
9709
10998
|
}
|
|
9710
10999
|
|
|
9711
11000
|
return channels;
|
|
@@ -10178,25 +11467,25 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10178
11467
|
key: "upsertUsers",
|
|
10179
11468
|
value: function () {
|
|
10180
11469
|
var _upsertUsers = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee30(users) {
|
|
10181
|
-
var userMap,
|
|
11470
|
+
var userMap, _iterator3, _step3, userObject;
|
|
10182
11471
|
|
|
10183
11472
|
return _regeneratorRuntime__default['default'].wrap(function _callee30$(_context30) {
|
|
10184
11473
|
while (1) {
|
|
10185
11474
|
switch (_context30.prev = _context30.next) {
|
|
10186
11475
|
case 0:
|
|
10187
11476
|
userMap = {};
|
|
10188
|
-
|
|
11477
|
+
_iterator3 = _createForOfIteratorHelper(users);
|
|
10189
11478
|
_context30.prev = 2;
|
|
10190
11479
|
|
|
10191
|
-
|
|
11480
|
+
_iterator3.s();
|
|
10192
11481
|
|
|
10193
11482
|
case 4:
|
|
10194
|
-
if ((
|
|
11483
|
+
if ((_step3 = _iterator3.n()).done) {
|
|
10195
11484
|
_context30.next = 11;
|
|
10196
11485
|
break;
|
|
10197
11486
|
}
|
|
10198
11487
|
|
|
10199
|
-
userObject =
|
|
11488
|
+
userObject = _step3.value;
|
|
10200
11489
|
|
|
10201
11490
|
if (userObject.id) {
|
|
10202
11491
|
_context30.next = 8;
|
|
@@ -10220,12 +11509,12 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10220
11509
|
_context30.prev = 13;
|
|
10221
11510
|
_context30.t0 = _context30["catch"](2);
|
|
10222
11511
|
|
|
10223
|
-
|
|
11512
|
+
_iterator3.e(_context30.t0);
|
|
10224
11513
|
|
|
10225
11514
|
case 16:
|
|
10226
11515
|
_context30.prev = 16;
|
|
10227
11516
|
|
|
10228
|
-
|
|
11517
|
+
_iterator3.f();
|
|
10229
11518
|
|
|
10230
11519
|
return _context30.finish(16);
|
|
10231
11520
|
|
|
@@ -10295,24 +11584,24 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10295
11584
|
*/
|
|
10296
11585
|
function () {
|
|
10297
11586
|
var _partialUpdateUsers = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee31(users) {
|
|
10298
|
-
var
|
|
11587
|
+
var _iterator4, _step4, userObject;
|
|
10299
11588
|
|
|
10300
11589
|
return _regeneratorRuntime__default['default'].wrap(function _callee31$(_context31) {
|
|
10301
11590
|
while (1) {
|
|
10302
11591
|
switch (_context31.prev = _context31.next) {
|
|
10303
11592
|
case 0:
|
|
10304
|
-
|
|
11593
|
+
_iterator4 = _createForOfIteratorHelper(users);
|
|
10305
11594
|
_context31.prev = 1;
|
|
10306
11595
|
|
|
10307
|
-
|
|
11596
|
+
_iterator4.s();
|
|
10308
11597
|
|
|
10309
11598
|
case 3:
|
|
10310
|
-
if ((
|
|
11599
|
+
if ((_step4 = _iterator4.n()).done) {
|
|
10311
11600
|
_context31.next = 9;
|
|
10312
11601
|
break;
|
|
10313
11602
|
}
|
|
10314
11603
|
|
|
10315
|
-
userObject =
|
|
11604
|
+
userObject = _step4.value;
|
|
10316
11605
|
|
|
10317
11606
|
if (userObject.id) {
|
|
10318
11607
|
_context31.next = 7;
|
|
@@ -10333,12 +11622,12 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10333
11622
|
_context31.prev = 11;
|
|
10334
11623
|
_context31.t0 = _context31["catch"](1);
|
|
10335
11624
|
|
|
10336
|
-
|
|
11625
|
+
_iterator4.e(_context31.t0);
|
|
10337
11626
|
|
|
10338
11627
|
case 14:
|
|
10339
11628
|
_context31.prev = 14;
|
|
10340
11629
|
|
|
10341
|
-
|
|
11630
|
+
_iterator4.f();
|
|
10342
11631
|
|
|
10343
11632
|
return _context31.finish(14);
|
|
10344
11633
|
|
|
@@ -10374,7 +11663,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10374
11663
|
switch (_context32.prev = _context32.next) {
|
|
10375
11664
|
case 0:
|
|
10376
11665
|
_context32.next = 2;
|
|
10377
|
-
return this.delete(this.baseURL + "/users/".concat(userID), params);
|
|
11666
|
+
return this.delete(this.baseURL + "/users/".concat(encodeURIComponent(userID)), params);
|
|
10378
11667
|
|
|
10379
11668
|
case 2:
|
|
10380
11669
|
return _context32.abrupt("return", _context32.sent);
|
|
@@ -10449,7 +11738,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10449
11738
|
switch (_context34.prev = _context34.next) {
|
|
10450
11739
|
case 0:
|
|
10451
11740
|
_context34.next = 2;
|
|
10452
|
-
return this.post(this.baseURL + "/users/".concat(userID, "/reactivate"), _objectSpread({}, options));
|
|
11741
|
+
return this.post(this.baseURL + "/users/".concat(encodeURIComponent(userID), "/reactivate"), _objectSpread({}, options));
|
|
10453
11742
|
|
|
10454
11743
|
case 2:
|
|
10455
11744
|
return _context34.abrupt("return", _context34.sent);
|
|
@@ -10525,7 +11814,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10525
11814
|
switch (_context36.prev = _context36.next) {
|
|
10526
11815
|
case 0:
|
|
10527
11816
|
_context36.next = 2;
|
|
10528
|
-
return this.post(this.baseURL + "/users/".concat(userID, "/deactivate"), _objectSpread({}, options));
|
|
11817
|
+
return this.post(this.baseURL + "/users/".concat(encodeURIComponent(userID), "/deactivate"), _objectSpread({}, options));
|
|
10529
11818
|
|
|
10530
11819
|
case 2:
|
|
10531
11820
|
return _context36.abrupt("return", _context36.sent);
|
|
@@ -10592,7 +11881,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10592
11881
|
switch (_context38.prev = _context38.next) {
|
|
10593
11882
|
case 0:
|
|
10594
11883
|
_context38.next = 2;
|
|
10595
|
-
return this.get(this.baseURL + "/users/".concat(userID, "/export"), _objectSpread({}, options));
|
|
11884
|
+
return this.get(this.baseURL + "/users/".concat(encodeURIComponent(userID), "/export"), _objectSpread({}, options));
|
|
10596
11885
|
|
|
10597
11886
|
case 2:
|
|
10598
11887
|
return _context38.abrupt("return", _context38.sent);
|
|
@@ -11134,7 +12423,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11134
12423
|
case 0:
|
|
11135
12424
|
options = _args52.length > 1 && _args52[1] !== undefined ? _args52[1] : {};
|
|
11136
12425
|
_context52.next = 3;
|
|
11137
|
-
return this.post(this.baseURL + "/calls/".concat(callID), _objectSpread({}, options));
|
|
12426
|
+
return this.post(this.baseURL + "/calls/".concat(encodeURIComponent(callID)), _objectSpread({}, options));
|
|
11138
12427
|
|
|
11139
12428
|
case 3:
|
|
11140
12429
|
return _context52.abrupt("return", _context52.sent);
|
|
@@ -11278,7 +12567,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11278
12567
|
case 0:
|
|
11279
12568
|
options = _args55.length > 2 && _args55[2] !== undefined ? _args55[2] : {};
|
|
11280
12569
|
_context55.next = 3;
|
|
11281
|
-
return this.patch(this.baseURL + "/moderation/reports/".concat(id), _objectSpread({
|
|
12570
|
+
return this.patch(this.baseURL + "/moderation/reports/".concat(encodeURIComponent(id)), _objectSpread({
|
|
11282
12571
|
review_result: reviewResult
|
|
11283
12572
|
}, options));
|
|
11284
12573
|
|
|
@@ -11387,17 +12676,17 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11387
12676
|
}, {
|
|
11388
12677
|
key: "getCommand",
|
|
11389
12678
|
value: function getCommand(name) {
|
|
11390
|
-
return this.get(this.baseURL + "/commands/".concat(name));
|
|
12679
|
+
return this.get(this.baseURL + "/commands/".concat(encodeURIComponent(name)));
|
|
11391
12680
|
}
|
|
11392
12681
|
}, {
|
|
11393
12682
|
key: "updateCommand",
|
|
11394
12683
|
value: function updateCommand(name, data) {
|
|
11395
|
-
return this.put(this.baseURL + "/commands/".concat(name), data);
|
|
12684
|
+
return this.put(this.baseURL + "/commands/".concat(encodeURIComponent(name)), data);
|
|
11396
12685
|
}
|
|
11397
12686
|
}, {
|
|
11398
12687
|
key: "deleteCommand",
|
|
11399
12688
|
value: function deleteCommand(name) {
|
|
11400
|
-
return this.delete(this.baseURL + "/commands/".concat(name));
|
|
12689
|
+
return this.delete(this.baseURL + "/commands/".concat(encodeURIComponent(name)));
|
|
11401
12690
|
}
|
|
11402
12691
|
}, {
|
|
11403
12692
|
key: "listCommands",
|
|
@@ -11416,17 +12705,17 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11416
12705
|
}, {
|
|
11417
12706
|
key: "getChannelType",
|
|
11418
12707
|
value: function getChannelType(channelType) {
|
|
11419
|
-
return this.get(this.baseURL + "/channeltypes/".concat(channelType));
|
|
12708
|
+
return this.get(this.baseURL + "/channeltypes/".concat(encodeURIComponent(channelType)));
|
|
11420
12709
|
}
|
|
11421
12710
|
}, {
|
|
11422
12711
|
key: "updateChannelType",
|
|
11423
12712
|
value: function updateChannelType(channelType, data) {
|
|
11424
|
-
return this.put(this.baseURL + "/channeltypes/".concat(channelType), data);
|
|
12713
|
+
return this.put(this.baseURL + "/channeltypes/".concat(encodeURIComponent(channelType)), data);
|
|
11425
12714
|
}
|
|
11426
12715
|
}, {
|
|
11427
12716
|
key: "deleteChannelType",
|
|
11428
12717
|
value: function deleteChannelType(channelType) {
|
|
11429
|
-
return this.delete(this.baseURL + "/channeltypes/".concat(channelType));
|
|
12718
|
+
return this.delete(this.baseURL + "/channeltypes/".concat(encodeURIComponent(channelType)));
|
|
11430
12719
|
}
|
|
11431
12720
|
}, {
|
|
11432
12721
|
key: "listChannelTypes",
|
|
@@ -11451,7 +12740,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11451
12740
|
switch (_context58.prev = _context58.next) {
|
|
11452
12741
|
case 0:
|
|
11453
12742
|
_context58.next = 2;
|
|
11454
|
-
return this.post(this.baseURL + "/messages/".concat(messageId, "/translate"), {
|
|
12743
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(messageId), "/translate"), {
|
|
11455
12744
|
language: language
|
|
11456
12745
|
});
|
|
11457
12746
|
|
|
@@ -11613,7 +12902,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11613
12902
|
}
|
|
11614
12903
|
|
|
11615
12904
|
_context59.next = 10;
|
|
11616
|
-
return this.post(this.baseURL + "/messages/".concat(message.id), _objectSpread({
|
|
12905
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(message.id)), _objectSpread({
|
|
11617
12906
|
message: clonedMessage
|
|
11618
12907
|
}, options));
|
|
11619
12908
|
|
|
@@ -11674,7 +12963,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11674
12963
|
}
|
|
11675
12964
|
|
|
11676
12965
|
_context60.next = 6;
|
|
11677
|
-
return this.put(this.baseURL + "/messages/".concat(id), _objectSpread(_objectSpread(_objectSpread({}, partialMessageObject), options), {}, {
|
|
12966
|
+
return this.put(this.baseURL + "/messages/".concat(encodeURIComponent(id)), _objectSpread(_objectSpread(_objectSpread({}, partialMessageObject), options), {}, {
|
|
11678
12967
|
user: user
|
|
11679
12968
|
}));
|
|
11680
12969
|
|
|
@@ -11713,7 +13002,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11713
13002
|
}
|
|
11714
13003
|
|
|
11715
13004
|
_context61.next = 4;
|
|
11716
|
-
return this.delete(this.baseURL + "/messages/".concat(messageID), params);
|
|
13005
|
+
return this.delete(this.baseURL + "/messages/".concat(encodeURIComponent(messageID)), params);
|
|
11717
13006
|
|
|
11718
13007
|
case 4:
|
|
11719
13008
|
return _context61.abrupt("return", _context61.sent);
|
|
@@ -11754,7 +13043,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11754
13043
|
switch (_context62.prev = _context62.next) {
|
|
11755
13044
|
case 0:
|
|
11756
13045
|
_context62.next = 2;
|
|
11757
|
-
return this.post(this.baseURL + "/messages/".concat(messageID, "/undelete"), {
|
|
13046
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(messageID), "/undelete"), {
|
|
11758
13047
|
undeleted_by: userID
|
|
11759
13048
|
});
|
|
11760
13049
|
|
|
@@ -11839,7 +13128,10 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11839
13128
|
res = _context64.sent;
|
|
11840
13129
|
return _context64.abrupt("return", {
|
|
11841
13130
|
threads: res.threads.map(function (thread) {
|
|
11842
|
-
return new Thread(
|
|
13131
|
+
return new Thread({
|
|
13132
|
+
client: _this5,
|
|
13133
|
+
threadData: thread
|
|
13134
|
+
});
|
|
11843
13135
|
}),
|
|
11844
13136
|
next: res.next
|
|
11845
13137
|
});
|
|
@@ -11898,11 +13190,14 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11898
13190
|
watch: true
|
|
11899
13191
|
}, options);
|
|
11900
13192
|
_context65.next = 6;
|
|
11901
|
-
return this.get(this.baseURL + "/threads/".concat(messageId), opts);
|
|
13193
|
+
return this.get(this.baseURL + "/threads/".concat(encodeURIComponent(messageId)), opts);
|
|
11902
13194
|
|
|
11903
13195
|
case 6:
|
|
11904
13196
|
res = _context65.sent;
|
|
11905
|
-
return _context65.abrupt("return", new Thread(
|
|
13197
|
+
return _context65.abrupt("return", new Thread({
|
|
13198
|
+
client: this,
|
|
13199
|
+
threadData: res.thread
|
|
13200
|
+
}));
|
|
11906
13201
|
|
|
11907
13202
|
case 8:
|
|
11908
13203
|
case "end":
|
|
@@ -11971,7 +13266,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11971
13266
|
|
|
11972
13267
|
case 10:
|
|
11973
13268
|
_context66.next = 12;
|
|
11974
|
-
return this.patch(this.baseURL + "/threads/".concat(messageId), partialThreadObject);
|
|
13269
|
+
return this.patch(this.baseURL + "/threads/".concat(encodeURIComponent(messageId)), partialThreadObject);
|
|
11975
13270
|
|
|
11976
13271
|
case 12:
|
|
11977
13272
|
return _context66.abrupt("return", _context66.sent);
|
|
@@ -11993,7 +13288,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11993
13288
|
}, {
|
|
11994
13289
|
key: "getUserAgent",
|
|
11995
13290
|
value: function getUserAgent() {
|
|
11996
|
-
return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.
|
|
13291
|
+
return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.40.0");
|
|
11997
13292
|
}
|
|
11998
13293
|
}, {
|
|
11999
13294
|
key: "setUserAgent",
|
|
@@ -12103,7 +13398,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12103
13398
|
}, {
|
|
12104
13399
|
key: "getPermission",
|
|
12105
13400
|
value: function getPermission(name) {
|
|
12106
|
-
return this.get("".concat(this.baseURL, "/permissions/").concat(name));
|
|
13401
|
+
return this.get("".concat(this.baseURL, "/permissions/").concat(encodeURIComponent(name)));
|
|
12107
13402
|
}
|
|
12108
13403
|
/** createPermission - creates a custom permission
|
|
12109
13404
|
*
|
|
@@ -12126,7 +13421,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12126
13421
|
}, {
|
|
12127
13422
|
key: "updatePermission",
|
|
12128
13423
|
value: function updatePermission(id, permissionData) {
|
|
12129
|
-
return this.put("".concat(this.baseURL, "/permissions/").concat(id), _objectSpread({}, permissionData));
|
|
13424
|
+
return this.put("".concat(this.baseURL, "/permissions/").concat(encodeURIComponent(id)), _objectSpread({}, permissionData));
|
|
12130
13425
|
}
|
|
12131
13426
|
/** deletePermission - deletes a custom permission
|
|
12132
13427
|
*
|
|
@@ -12137,7 +13432,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12137
13432
|
}, {
|
|
12138
13433
|
key: "deletePermission",
|
|
12139
13434
|
value: function deletePermission(name) {
|
|
12140
|
-
return this.delete("".concat(this.baseURL, "/permissions/").concat(name));
|
|
13435
|
+
return this.delete("".concat(this.baseURL, "/permissions/").concat(encodeURIComponent(name)));
|
|
12141
13436
|
}
|
|
12142
13437
|
/** listPermissions - returns the list of all permissions for this application
|
|
12143
13438
|
*
|
|
@@ -12181,7 +13476,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12181
13476
|
}, {
|
|
12182
13477
|
key: "deleteRole",
|
|
12183
13478
|
value: function deleteRole(name) {
|
|
12184
|
-
return this.delete("".concat(this.baseURL, "/roles/").concat(name));
|
|
13479
|
+
return this.delete("".concat(this.baseURL, "/roles/").concat(encodeURIComponent(name)));
|
|
12185
13480
|
}
|
|
12186
13481
|
/** sync - returns all events that happened for a list of channels since last sync
|
|
12187
13482
|
* @param {string[]} channel_cids list of channel CIDs
|
|
@@ -12218,7 +13513,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12218
13513
|
switch (_context67.prev = _context67.next) {
|
|
12219
13514
|
case 0:
|
|
12220
13515
|
_context67.next = 2;
|
|
12221
|
-
return this.post("".concat(this.baseURL, "/users/").concat(targetUserID, "/event"), {
|
|
13516
|
+
return this.post("".concat(this.baseURL, "/users/").concat(encodeURIComponent(targetUserID), "/event"), {
|
|
12222
13517
|
event: event
|
|
12223
13518
|
});
|
|
12224
13519
|
|
|
@@ -12252,17 +13547,17 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12252
13547
|
}, {
|
|
12253
13548
|
key: "getBlockList",
|
|
12254
13549
|
value: function getBlockList(name) {
|
|
12255
|
-
return this.get("".concat(this.baseURL, "/blocklists/").concat(name));
|
|
13550
|
+
return this.get("".concat(this.baseURL, "/blocklists/").concat(encodeURIComponent(name)));
|
|
12256
13551
|
}
|
|
12257
13552
|
}, {
|
|
12258
13553
|
key: "updateBlockList",
|
|
12259
13554
|
value: function updateBlockList(name, data) {
|
|
12260
|
-
return this.put("".concat(this.baseURL, "/blocklists/").concat(name), data);
|
|
13555
|
+
return this.put("".concat(this.baseURL, "/blocklists/").concat(encodeURIComponent(name)), data);
|
|
12261
13556
|
}
|
|
12262
13557
|
}, {
|
|
12263
13558
|
key: "deleteBlockList",
|
|
12264
13559
|
value: function deleteBlockList(name) {
|
|
12265
|
-
return this.delete("".concat(this.baseURL, "/blocklists/").concat(name));
|
|
13560
|
+
return this.delete("".concat(this.baseURL, "/blocklists/").concat(encodeURIComponent(name)));
|
|
12266
13561
|
}
|
|
12267
13562
|
}, {
|
|
12268
13563
|
key: "exportChannels",
|
|
@@ -12288,7 +13583,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12288
13583
|
}, {
|
|
12289
13584
|
key: "getExportChannelStatus",
|
|
12290
13585
|
value: function getExportChannelStatus(id) {
|
|
12291
|
-
return this.get("".concat(this.baseURL, "/export_channels/").concat(id));
|
|
13586
|
+
return this.get("".concat(this.baseURL, "/export_channels/").concat(encodeURIComponent(id)));
|
|
12292
13587
|
}
|
|
12293
13588
|
}, {
|
|
12294
13589
|
key: "campaign",
|
|
@@ -12436,7 +13731,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12436
13731
|
switch (_context71.prev = _context71.next) {
|
|
12437
13732
|
case 0:
|
|
12438
13733
|
this.validateServerSideAuth();
|
|
12439
|
-
return _context71.abrupt("return", this.get(this.baseURL + "/segments/".concat(id)));
|
|
13734
|
+
return _context71.abrupt("return", this.get(this.baseURL + "/segments/".concat(encodeURIComponent(id))));
|
|
12440
13735
|
|
|
12441
13736
|
case 2:
|
|
12442
13737
|
case "end":
|
|
@@ -12470,7 +13765,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12470
13765
|
switch (_context72.prev = _context72.next) {
|
|
12471
13766
|
case 0:
|
|
12472
13767
|
this.validateServerSideAuth();
|
|
12473
|
-
return _context72.abrupt("return", this.put(this.baseURL + "/segments/".concat(id), data));
|
|
13768
|
+
return _context72.abrupt("return", this.put(this.baseURL + "/segments/".concat(encodeURIComponent(id)), data));
|
|
12474
13769
|
|
|
12475
13770
|
case 2:
|
|
12476
13771
|
case "end":
|
|
@@ -12508,7 +13803,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12508
13803
|
body = {
|
|
12509
13804
|
target_ids: targets
|
|
12510
13805
|
};
|
|
12511
|
-
return _context73.abrupt("return", this.post(this.baseURL + "/segments/".concat(id, "/addtargets"), body));
|
|
13806
|
+
return _context73.abrupt("return", this.post(this.baseURL + "/segments/".concat(encodeURIComponent(id), "/addtargets"), body));
|
|
12512
13807
|
|
|
12513
13808
|
case 3:
|
|
12514
13809
|
case "end":
|
|
@@ -12540,7 +13835,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12540
13835
|
sort = _args74.length > 2 && _args74[2] !== undefined ? _args74[2] : [];
|
|
12541
13836
|
options = _args74.length > 3 && _args74[3] !== undefined ? _args74[3] : {};
|
|
12542
13837
|
this.validateServerSideAuth();
|
|
12543
|
-
return _context74.abrupt("return", this.post(this.baseURL + "/segments/".concat(id, "/targets/query"), _objectSpread({
|
|
13838
|
+
return _context74.abrupt("return", this.post(this.baseURL + "/segments/".concat(encodeURIComponent(id), "/targets/query"), _objectSpread({
|
|
12544
13839
|
filter: filter || {},
|
|
12545
13840
|
sort: sort || []
|
|
12546
13841
|
}, options)));
|
|
@@ -12581,7 +13876,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12581
13876
|
body = {
|
|
12582
13877
|
target_ids: targets
|
|
12583
13878
|
};
|
|
12584
|
-
return _context75.abrupt("return", this.post(this.baseURL + "/segments/".concat(id, "/deletetargets"), body));
|
|
13879
|
+
return _context75.abrupt("return", this.post(this.baseURL + "/segments/".concat(encodeURIComponent(id), "/deletetargets"), body));
|
|
12585
13880
|
|
|
12586
13881
|
case 3:
|
|
12587
13882
|
case "end":
|
|
@@ -12654,7 +13949,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12654
13949
|
switch (_context77.prev = _context77.next) {
|
|
12655
13950
|
case 0:
|
|
12656
13951
|
this.validateServerSideAuth();
|
|
12657
|
-
return _context77.abrupt("return", this.delete(this.baseURL + "/segments/".concat(id)));
|
|
13952
|
+
return _context77.abrupt("return", this.delete(this.baseURL + "/segments/".concat(encodeURIComponent(id))));
|
|
12658
13953
|
|
|
12659
13954
|
case 2:
|
|
12660
13955
|
case "end":
|
|
@@ -12688,7 +13983,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12688
13983
|
switch (_context78.prev = _context78.next) {
|
|
12689
13984
|
case 0:
|
|
12690
13985
|
this.validateServerSideAuth();
|
|
12691
|
-
return _context78.abrupt("return", this.get(this.baseURL + "/segments/".concat(segmentId, "/target/").concat(targetId)));
|
|
13986
|
+
return _context78.abrupt("return", this.get(this.baseURL + "/segments/".concat(encodeURIComponent(segmentId), "/target/").concat(encodeURIComponent(targetId))));
|
|
12692
13987
|
|
|
12693
13988
|
case 2:
|
|
12694
13989
|
case "end":
|
|
@@ -12746,7 +14041,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12746
14041
|
switch (_context80.prev = _context80.next) {
|
|
12747
14042
|
case 0:
|
|
12748
14043
|
this.validateServerSideAuth();
|
|
12749
|
-
return _context80.abrupt("return", this.get(this.baseURL + "/campaigns/".concat(id)));
|
|
14044
|
+
return _context80.abrupt("return", this.get(this.baseURL + "/campaigns/".concat(encodeURIComponent(id))));
|
|
12750
14045
|
|
|
12751
14046
|
case 2:
|
|
12752
14047
|
case "end":
|
|
@@ -12771,7 +14066,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12771
14066
|
switch (_context81.prev = _context81.next) {
|
|
12772
14067
|
case 0:
|
|
12773
14068
|
this.validateServerSideAuth();
|
|
12774
|
-
return _context81.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(id, "/start"), {
|
|
14069
|
+
return _context81.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(encodeURIComponent(id), "/start"), {
|
|
12775
14070
|
scheduled_for: options === null || options === void 0 ? void 0 : options.scheduledFor,
|
|
12776
14071
|
stop_at: options === null || options === void 0 ? void 0 : options.stopAt
|
|
12777
14072
|
}));
|
|
@@ -12847,7 +14142,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12847
14142
|
switch (_context83.prev = _context83.next) {
|
|
12848
14143
|
case 0:
|
|
12849
14144
|
this.validateServerSideAuth();
|
|
12850
|
-
return _context83.abrupt("return", this.put(this.baseURL + "/campaigns/".concat(id), params));
|
|
14145
|
+
return _context83.abrupt("return", this.put(this.baseURL + "/campaigns/".concat(encodeURIComponent(id)), params));
|
|
12851
14146
|
|
|
12852
14147
|
case 2:
|
|
12853
14148
|
case "end":
|
|
@@ -12880,7 +14175,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12880
14175
|
switch (_context84.prev = _context84.next) {
|
|
12881
14176
|
case 0:
|
|
12882
14177
|
this.validateServerSideAuth();
|
|
12883
|
-
return _context84.abrupt("return", this.delete(this.baseURL + "/campaigns/".concat(id)));
|
|
14178
|
+
return _context84.abrupt("return", this.delete(this.baseURL + "/campaigns/".concat(encodeURIComponent(id))));
|
|
12884
14179
|
|
|
12885
14180
|
case 2:
|
|
12886
14181
|
case "end":
|
|
@@ -12913,7 +14208,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12913
14208
|
switch (_context85.prev = _context85.next) {
|
|
12914
14209
|
case 0:
|
|
12915
14210
|
this.validateServerSideAuth();
|
|
12916
|
-
return _context85.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(id, "/stop")));
|
|
14211
|
+
return _context85.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(encodeURIComponent(id), "/stop")));
|
|
12917
14212
|
|
|
12918
14213
|
case 2:
|
|
12919
14214
|
case "end":
|
|
@@ -12978,7 +14273,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12978
14273
|
while (1) {
|
|
12979
14274
|
switch (_context87.prev = _context87.next) {
|
|
12980
14275
|
case 0:
|
|
12981
|
-
return _context87.abrupt("return", this.get("".concat(this.baseURL, "/tasks/").concat(id)));
|
|
14276
|
+
return _context87.abrupt("return", this.get("".concat(this.baseURL, "/tasks/").concat(encodeURIComponent(id))));
|
|
12982
14277
|
|
|
12983
14278
|
case 1:
|
|
12984
14279
|
case "end":
|
|
@@ -13215,7 +14510,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13215
14510
|
switch (_context92.prev = _context92.next) {
|
|
13216
14511
|
case 0:
|
|
13217
14512
|
_context92.next = 2;
|
|
13218
|
-
return this.get(this.baseURL + "/imports/".concat(id));
|
|
14513
|
+
return this.get(this.baseURL + "/imports/".concat(encodeURIComponent(id)));
|
|
13219
14514
|
|
|
13220
14515
|
case 2:
|
|
13221
14516
|
return _context92.abrupt("return", _context92.sent);
|
|
@@ -13336,7 +14631,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13336
14631
|
case 0:
|
|
13337
14632
|
type = _ref10.type, name = _ref10.name;
|
|
13338
14633
|
_context95.next = 3;
|
|
13339
|
-
return this.delete(this.baseURL + "/push_providers/".concat(type, "/").concat(name));
|
|
14634
|
+
return this.delete(this.baseURL + "/push_providers/".concat(encodeURIComponent(type), "/").concat(encodeURIComponent(name)));
|
|
13340
14635
|
|
|
13341
14636
|
case 3:
|
|
13342
14637
|
return _context95.abrupt("return", _context95.sent);
|
|
@@ -13416,7 +14711,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13416
14711
|
switch (_context97.prev = _context97.next) {
|
|
13417
14712
|
case 0:
|
|
13418
14713
|
_context97.next = 2;
|
|
13419
|
-
return this.post(this.baseURL + "/messages/".concat(id, "/commit"));
|
|
14714
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(id), "/commit"));
|
|
13420
14715
|
|
|
13421
14716
|
case 2:
|
|
13422
14717
|
return _context97.abrupt("return", _context97.sent);
|
|
@@ -13488,7 +14783,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13488
14783
|
switch (_context99.prev = _context99.next) {
|
|
13489
14784
|
case 0:
|
|
13490
14785
|
_context99.next = 2;
|
|
13491
|
-
return this.get(this.baseURL + "/polls/".concat(id), userId ? {
|
|
14786
|
+
return this.get(this.baseURL + "/polls/".concat(encodeURIComponent(id)), userId ? {
|
|
13492
14787
|
user_id: userId
|
|
13493
14788
|
} : {});
|
|
13494
14789
|
|
|
@@ -13564,7 +14859,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13564
14859
|
switch (_context101.prev = _context101.next) {
|
|
13565
14860
|
case 0:
|
|
13566
14861
|
_context101.next = 2;
|
|
13567
|
-
return this.patch(this.baseURL + "/polls/".concat(id), _objectSpread(_objectSpread({}, partialPollObject), userId ? {
|
|
14862
|
+
return this.patch(this.baseURL + "/polls/".concat(encodeURIComponent(id)), _objectSpread(_objectSpread({}, partialPollObject), userId ? {
|
|
13568
14863
|
user_id: userId
|
|
13569
14864
|
} : {}));
|
|
13570
14865
|
|
|
@@ -13601,7 +14896,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13601
14896
|
switch (_context102.prev = _context102.next) {
|
|
13602
14897
|
case 0:
|
|
13603
14898
|
_context102.next = 2;
|
|
13604
|
-
return this.delete(this.baseURL + "/polls/".concat(id), _objectSpread({}, userId ? {
|
|
14899
|
+
return this.delete(this.baseURL + "/polls/".concat(encodeURIComponent(id)), _objectSpread({}, userId ? {
|
|
13605
14900
|
user_id: userId
|
|
13606
14901
|
} : {}));
|
|
13607
14902
|
|
|
@@ -13676,7 +14971,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13676
14971
|
switch (_context104.prev = _context104.next) {
|
|
13677
14972
|
case 0:
|
|
13678
14973
|
_context104.next = 2;
|
|
13679
|
-
return this.post(this.baseURL + "/polls/".concat(pollId, "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
14974
|
+
return this.post(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
13680
14975
|
user_id: userId
|
|
13681
14976
|
} : {}));
|
|
13682
14977
|
|
|
@@ -13714,7 +15009,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13714
15009
|
switch (_context105.prev = _context105.next) {
|
|
13715
15010
|
case 0:
|
|
13716
15011
|
_context105.next = 2;
|
|
13717
|
-
return this.get(this.baseURL + "/polls/".concat(pollId, "/options/").concat(optionId), userId ? {
|
|
15012
|
+
return this.get(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options/").concat(encodeURIComponent(optionId)), userId ? {
|
|
13718
15013
|
user_id: userId
|
|
13719
15014
|
} : {});
|
|
13720
15015
|
|
|
@@ -13752,7 +15047,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13752
15047
|
switch (_context106.prev = _context106.next) {
|
|
13753
15048
|
case 0:
|
|
13754
15049
|
_context106.next = 2;
|
|
13755
|
-
return this.put(this.baseURL + "/polls/".concat(pollId, "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
15050
|
+
return this.put(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
13756
15051
|
user_id: userId
|
|
13757
15052
|
} : {}));
|
|
13758
15053
|
|
|
@@ -13790,7 +15085,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13790
15085
|
switch (_context107.prev = _context107.next) {
|
|
13791
15086
|
case 0:
|
|
13792
15087
|
_context107.next = 2;
|
|
13793
|
-
return this.delete(this.baseURL + "/polls/".concat(pollId, "/options/").concat(optionId), userId ? {
|
|
15088
|
+
return this.delete(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options/").concat(encodeURIComponent(optionId)), userId ? {
|
|
13794
15089
|
user_id: userId
|
|
13795
15090
|
} : {});
|
|
13796
15091
|
|
|
@@ -13829,7 +15124,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13829
15124
|
switch (_context108.prev = _context108.next) {
|
|
13830
15125
|
case 0:
|
|
13831
15126
|
_context108.next = 2;
|
|
13832
|
-
return this.post(this.baseURL + "/messages/".concat(messageId, "/polls/").concat(pollId, "/vote"), _objectSpread({
|
|
15127
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(messageId), "/polls/").concat(encodeURIComponent(pollId), "/vote"), _objectSpread({
|
|
13833
15128
|
vote: vote
|
|
13834
15129
|
}, userId ? {
|
|
13835
15130
|
user_id: userId
|
|
@@ -13895,7 +15190,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13895
15190
|
switch (_context110.prev = _context110.next) {
|
|
13896
15191
|
case 0:
|
|
13897
15192
|
_context110.next = 2;
|
|
13898
|
-
return this.delete(this.baseURL + "/messages/".concat(messageId, "/polls/").concat(pollId, "/vote/").concat(voteId), _objectSpread({}, userId ? {
|
|
15193
|
+
return this.delete(this.baseURL + "/messages/".concat(encodeURIComponent(messageId), "/polls/").concat(encodeURIComponent(pollId), "/vote/").concat(encodeURIComponent(voteId)), _objectSpread({}, userId ? {
|
|
13899
15194
|
user_id: userId
|
|
13900
15195
|
} : {}));
|
|
13901
15196
|
|
|
@@ -13997,7 +15292,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13997
15292
|
userId = _args112.length > 4 ? _args112[4] : undefined;
|
|
13998
15293
|
q = userId ? "?user_id=".concat(userId) : '';
|
|
13999
15294
|
_context112.next = 7;
|
|
14000
|
-
return this.post(this.baseURL + "/polls/".concat(pollId, "/votes").concat(q), _objectSpread({
|
|
15295
|
+
return this.post(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/votes").concat(q), _objectSpread({
|
|
14001
15296
|
filter: filter,
|
|
14002
15297
|
sort: normalizeQuerySort(sort)
|
|
14003
15298
|
}, options));
|
|
@@ -14286,8 +15581,10 @@ exports.Moderation = Moderation;
|
|
|
14286
15581
|
exports.Permission = Permission;
|
|
14287
15582
|
exports.Segment = Segment;
|
|
14288
15583
|
exports.StableWSConnection = StableWSConnection;
|
|
15584
|
+
exports.StateStore = StateStore;
|
|
14289
15585
|
exports.StreamChat = StreamChat;
|
|
14290
15586
|
exports.Thread = Thread;
|
|
15587
|
+
exports.ThreadManager = ThreadManager;
|
|
14291
15588
|
exports.TokenManager = TokenManager;
|
|
14292
15589
|
exports.UserFromToken = UserFromToken;
|
|
14293
15590
|
exports.buildWsFatalInsight = buildWsFatalInsight;
|