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/index.js
CHANGED
|
@@ -122,9 +122,9 @@ var decodeBase64 = function decodeBase64(s) {
|
|
|
122
122
|
return r;
|
|
123
123
|
};
|
|
124
124
|
|
|
125
|
-
function ownKeys$
|
|
125
|
+
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; }
|
|
126
126
|
|
|
127
|
-
function _objectSpread$
|
|
127
|
+
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; }
|
|
128
128
|
|
|
129
129
|
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; } } }; }
|
|
130
130
|
|
|
@@ -378,89 +378,120 @@ var axiosParamsSerializer = function axiosParamsSerializer(params) {
|
|
|
378
378
|
return newParams.join('&');
|
|
379
379
|
};
|
|
380
380
|
/**
|
|
381
|
-
*
|
|
382
|
-
* and sets the status to received if missing
|
|
383
|
-
*
|
|
384
|
-
* @param {MessageResponse<StreamChatGenerics>} message a message object
|
|
381
|
+
* Takes the message object, parses the dates, sets `__html`
|
|
382
|
+
* and sets the status to `received` if missing; returns a new message object.
|
|
385
383
|
*
|
|
384
|
+
* @param {MessageResponse<StreamChatGenerics>} message `MessageResponse` object
|
|
386
385
|
*/
|
|
387
386
|
|
|
388
387
|
function formatMessage(message) {
|
|
389
|
-
return _objectSpread$
|
|
388
|
+
return _objectSpread$b(_objectSpread$b({}, message), {}, {
|
|
390
389
|
/**
|
|
391
390
|
* @deprecated please use `html`
|
|
392
391
|
*/
|
|
393
392
|
__html: message.html,
|
|
394
|
-
// parse the
|
|
393
|
+
// parse the dates
|
|
395
394
|
pinned_at: message.pinned_at ? new Date(message.pinned_at) : null,
|
|
396
395
|
created_at: message.created_at ? new Date(message.created_at) : new Date(),
|
|
397
396
|
updated_at: message.updated_at ? new Date(message.updated_at) : new Date(),
|
|
397
|
+
deleted_at: message.deleted_at ? new Date(message.deleted_at) : null,
|
|
398
398
|
status: message.status || 'received',
|
|
399
399
|
reaction_groups: maybeGetReactionGroupsFallback(message.reaction_groups, message.reaction_counts, message.reaction_scores)
|
|
400
400
|
});
|
|
401
401
|
}
|
|
402
|
-
function
|
|
402
|
+
var findIndexInSortedArray = function findIndexInSortedArray(_ref) {
|
|
403
|
+
var needle = _ref.needle,
|
|
404
|
+
sortedArray = _ref.sortedArray,
|
|
405
|
+
_ref$selectValueToCom = _ref.selectValueToCompare,
|
|
406
|
+
selectValueToCompare = _ref$selectValueToCom === void 0 ? function (e) {
|
|
407
|
+
return e;
|
|
408
|
+
} : _ref$selectValueToCom,
|
|
409
|
+
_ref$sortDirection = _ref.sortDirection,
|
|
410
|
+
sortDirection = _ref$sortDirection === void 0 ? 'ascending' : _ref$sortDirection;
|
|
411
|
+
if (!sortedArray.length) return 0;
|
|
412
|
+
var left = 0;
|
|
413
|
+
var right = sortedArray.length - 1;
|
|
414
|
+
var middle = 0;
|
|
415
|
+
|
|
416
|
+
var recalculateMiddle = function recalculateMiddle() {
|
|
417
|
+
middle = Math.round((left + right) / 2);
|
|
418
|
+
};
|
|
419
|
+
|
|
420
|
+
var actualNeedle = selectValueToCompare(needle);
|
|
421
|
+
recalculateMiddle();
|
|
422
|
+
|
|
423
|
+
while (left <= right) {
|
|
424
|
+
// if (actualNeedle === selectValueToCompare(sortedArray[middle])) return middle;
|
|
425
|
+
if (sortDirection === 'ascending' && actualNeedle < selectValueToCompare(sortedArray[middle]) || sortDirection === 'descending' && actualNeedle > selectValueToCompare(sortedArray[middle])) {
|
|
426
|
+
right = middle - 1;
|
|
427
|
+
} else {
|
|
428
|
+
left = middle + 1;
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
recalculateMiddle();
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
return left;
|
|
435
|
+
};
|
|
436
|
+
function addToMessageList(messages, newMessage) {
|
|
403
437
|
var timestampChanged = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
404
438
|
var sortBy = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'created_at';
|
|
405
439
|
var addIfDoesNotExist = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;
|
|
406
440
|
var addMessageToList = addIfDoesNotExist || timestampChanged;
|
|
407
|
-
|
|
441
|
+
|
|
442
|
+
var newMessages = _toConsumableArray__default['default'](messages); // if created_at has changed, message should be filtered and re-inserted in correct order
|
|
408
443
|
// slow op but usually this only happens for a message inserted to state before actual response with correct timestamp
|
|
409
444
|
|
|
445
|
+
|
|
410
446
|
if (timestampChanged) {
|
|
411
|
-
|
|
412
|
-
return !(
|
|
447
|
+
newMessages = newMessages.filter(function (message) {
|
|
448
|
+
return !(message.id && newMessage.id === message.id);
|
|
413
449
|
});
|
|
414
|
-
} //
|
|
450
|
+
} // for empty list just concat and return unless it's an update or deletion
|
|
415
451
|
|
|
416
452
|
|
|
417
|
-
|
|
453
|
+
if (!newMessages.length && addMessageToList) {
|
|
454
|
+
return newMessages.concat(newMessage);
|
|
455
|
+
} // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
418
456
|
|
|
419
|
-
if (messageArrayLength === 0 && addMessageToList) {
|
|
420
|
-
return messageArr.concat(message);
|
|
421
|
-
} else if (messageArrayLength === 0) {
|
|
422
|
-
return _toConsumableArray__default['default'](messageArr);
|
|
423
|
-
}
|
|
424
457
|
|
|
425
|
-
var messageTime =
|
|
426
|
-
|
|
458
|
+
var messageTime = newMessage[sortBy].getTime(); // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
459
|
+
|
|
460
|
+
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
|
|
427
461
|
|
|
428
462
|
if (messageIsNewest && addMessageToList) {
|
|
429
|
-
return
|
|
430
|
-
} else if (messageIsNewest) {
|
|
431
|
-
return _toConsumableArray__default['default'](messageArr);
|
|
463
|
+
return newMessages.concat(newMessage);
|
|
432
464
|
} // find the closest index to push the new message
|
|
433
465
|
|
|
434
466
|
|
|
435
|
-
var
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
467
|
+
var insertionIndex = findIndexInSortedArray({
|
|
468
|
+
needle: newMessage,
|
|
469
|
+
sortedArray: messages,
|
|
470
|
+
sortDirection: 'ascending',
|
|
471
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
472
|
+
selectValueToCompare: function selectValueToCompare(m) {
|
|
473
|
+
return m[sortBy].getTime();
|
|
474
|
+
}
|
|
475
|
+
}); // message already exists and not filtered with timestampChanged, update and return
|
|
444
476
|
|
|
445
|
-
if (!timestampChanged &&
|
|
446
|
-
if (
|
|
447
|
-
|
|
448
|
-
return
|
|
477
|
+
if (!timestampChanged && newMessage.id) {
|
|
478
|
+
if (newMessages[insertionIndex] && newMessage.id === newMessages[insertionIndex].id) {
|
|
479
|
+
newMessages[insertionIndex] = newMessage;
|
|
480
|
+
return newMessages;
|
|
449
481
|
}
|
|
450
482
|
|
|
451
|
-
if (
|
|
452
|
-
|
|
453
|
-
return
|
|
483
|
+
if (newMessages[insertionIndex - 1] && newMessage.id === newMessages[insertionIndex - 1].id) {
|
|
484
|
+
newMessages[insertionIndex - 1] = newMessage;
|
|
485
|
+
return newMessages;
|
|
454
486
|
}
|
|
455
|
-
} //
|
|
456
|
-
// or have a timestamp change.
|
|
487
|
+
} // do not add updated or deleted messages to the list if they already exist or come with a timestamp change
|
|
457
488
|
|
|
458
489
|
|
|
459
490
|
if (addMessageToList) {
|
|
460
|
-
|
|
491
|
+
newMessages.splice(insertionIndex, 0, newMessage);
|
|
461
492
|
}
|
|
462
493
|
|
|
463
|
-
return
|
|
494
|
+
return newMessages;
|
|
464
495
|
}
|
|
465
496
|
|
|
466
497
|
function maybeGetReactionGroupsFallback(groups, counts, scores) {
|
|
@@ -483,11 +514,259 @@ function maybeGetReactionGroupsFallback(groups, counts, scores) {
|
|
|
483
514
|
}
|
|
484
515
|
|
|
485
516
|
return null;
|
|
517
|
+
} // works exactly the same as lodash.throttle
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
var throttle = function throttle(fn) {
|
|
521
|
+
var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 200;
|
|
522
|
+
|
|
523
|
+
var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
524
|
+
_ref2$leading = _ref2.leading,
|
|
525
|
+
leading = _ref2$leading === void 0 ? true : _ref2$leading,
|
|
526
|
+
_ref2$trailing = _ref2.trailing,
|
|
527
|
+
trailing = _ref2$trailing === void 0 ? false : _ref2$trailing;
|
|
528
|
+
|
|
529
|
+
var runningTimeout = null;
|
|
530
|
+
var storedArgs = null;
|
|
531
|
+
return function () {
|
|
532
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
533
|
+
args[_key] = arguments[_key];
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
if (runningTimeout) {
|
|
537
|
+
if (trailing) storedArgs = args;
|
|
538
|
+
return;
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
if (leading) fn.apply(void 0, args);
|
|
542
|
+
|
|
543
|
+
var timeoutHandler = function timeoutHandler() {
|
|
544
|
+
if (storedArgs) {
|
|
545
|
+
fn.apply(void 0, _toConsumableArray__default['default'](storedArgs));
|
|
546
|
+
storedArgs = null;
|
|
547
|
+
runningTimeout = setTimeout(timeoutHandler, timeout);
|
|
548
|
+
return;
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
runningTimeout = null;
|
|
552
|
+
};
|
|
553
|
+
|
|
554
|
+
runningTimeout = setTimeout(timeoutHandler, timeout);
|
|
555
|
+
};
|
|
556
|
+
};
|
|
557
|
+
function binarySearchByDateEqualOrNearestGreater(array, targetDate) {
|
|
558
|
+
var left = 0;
|
|
559
|
+
var right = array.length - 1;
|
|
560
|
+
|
|
561
|
+
while (left <= right) {
|
|
562
|
+
var mid = Math.floor((left + right) / 2);
|
|
563
|
+
var midCreatedAt = array[mid].created_at;
|
|
564
|
+
|
|
565
|
+
if (!midCreatedAt) {
|
|
566
|
+
left += 1;
|
|
567
|
+
continue;
|
|
568
|
+
}
|
|
569
|
+
|
|
570
|
+
var midDate = new Date(midCreatedAt);
|
|
571
|
+
|
|
572
|
+
if (midDate.getTime() === targetDate.getTime()) {
|
|
573
|
+
return mid;
|
|
574
|
+
} else if (midDate.getTime() < targetDate.getTime()) {
|
|
575
|
+
left = mid + 1;
|
|
576
|
+
} else {
|
|
577
|
+
right = mid - 1;
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
|
|
581
|
+
return left;
|
|
486
582
|
}
|
|
487
583
|
|
|
488
|
-
|
|
584
|
+
var messagePaginationCreatedAtAround = function messagePaginationCreatedAtAround(_ref3) {
|
|
585
|
+
var parentSet = _ref3.parentSet,
|
|
586
|
+
requestedPageSize = _ref3.requestedPageSize,
|
|
587
|
+
returnedPage = _ref3.returnedPage,
|
|
588
|
+
messagePaginationOptions = _ref3.messagePaginationOptions;
|
|
589
|
+
|
|
590
|
+
var newPagination = _objectSpread$b({}, parentSet.pagination);
|
|
591
|
+
|
|
592
|
+
if (!(messagePaginationOptions !== null && messagePaginationOptions !== void 0 && messagePaginationOptions.created_at_around)) return newPagination;
|
|
593
|
+
var hasPrev;
|
|
594
|
+
var hasNext;
|
|
595
|
+
var updateHasPrev;
|
|
596
|
+
var updateHasNext;
|
|
597
|
+
var createdAtAroundDate = new Date(messagePaginationOptions.created_at_around);
|
|
598
|
+
var _ref4 = [returnedPage[0], returnedPage.slice(-1)[0]],
|
|
599
|
+
firstPageMsg = _ref4[0],
|
|
600
|
+
lastPageMsg = _ref4[1]; // expect ASC order (from oldest to newest)
|
|
601
|
+
|
|
602
|
+
var wholePageHasNewerMessages = !!(firstPageMsg !== null && firstPageMsg !== void 0 && firstPageMsg.created_at) && new Date(firstPageMsg.created_at) > createdAtAroundDate;
|
|
603
|
+
var wholePageHasOlderMessages = !!(lastPageMsg !== null && lastPageMsg !== void 0 && lastPageMsg.created_at) && new Date(lastPageMsg.created_at) < createdAtAroundDate;
|
|
604
|
+
var requestedPageSizeNotMet = requestedPageSize > parentSet.messages.length && requestedPageSize > returnedPage.length;
|
|
605
|
+
var noMoreMessages = (requestedPageSize > parentSet.messages.length || parentSet.messages.length >= returnedPage.length) && requestedPageSize > returnedPage.length;
|
|
606
|
+
|
|
607
|
+
if (wholePageHasNewerMessages) {
|
|
608
|
+
hasPrev = false;
|
|
609
|
+
updateHasPrev = true;
|
|
610
|
+
|
|
611
|
+
if (requestedPageSizeNotMet) {
|
|
612
|
+
hasNext = false;
|
|
613
|
+
updateHasNext = true;
|
|
614
|
+
}
|
|
615
|
+
} else if (wholePageHasOlderMessages) {
|
|
616
|
+
hasNext = false;
|
|
617
|
+
updateHasNext = true;
|
|
618
|
+
|
|
619
|
+
if (requestedPageSizeNotMet) {
|
|
620
|
+
hasPrev = false;
|
|
621
|
+
updateHasPrev = true;
|
|
622
|
+
}
|
|
623
|
+
} else if (noMoreMessages) {
|
|
624
|
+
hasNext = hasPrev = false;
|
|
625
|
+
updateHasPrev = updateHasNext = true;
|
|
626
|
+
} else {
|
|
627
|
+
var _parentSet$messages$, _parentSet$messages$s;
|
|
489
628
|
|
|
490
|
-
|
|
629
|
+
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),
|
|
630
|
+
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);
|
|
631
|
+
updateHasPrev = firstPageMsgIsFirstInSet;
|
|
632
|
+
updateHasNext = lastPageMsgIsLastInSet;
|
|
633
|
+
var midPointByCount = Math.floor(returnedPage.length / 2);
|
|
634
|
+
var midPointByCreationDate = binarySearchByDateEqualOrNearestGreater(returnedPage, createdAtAroundDate);
|
|
635
|
+
|
|
636
|
+
if (midPointByCreationDate !== -1) {
|
|
637
|
+
hasPrev = midPointByCount <= midPointByCreationDate;
|
|
638
|
+
hasNext = midPointByCount >= midPointByCreationDate;
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
if (updateHasPrev && typeof hasPrev !== 'undefined') newPagination.hasPrev = hasPrev;
|
|
643
|
+
if (updateHasNext && typeof hasNext !== 'undefined') newPagination.hasNext = hasNext;
|
|
644
|
+
return newPagination;
|
|
645
|
+
};
|
|
646
|
+
|
|
647
|
+
var messagePaginationIdAround = function messagePaginationIdAround(_ref5) {
|
|
648
|
+
var _parentSet$messages$2, _parentSet$messages$s2;
|
|
649
|
+
|
|
650
|
+
var parentSet = _ref5.parentSet,
|
|
651
|
+
requestedPageSize = _ref5.requestedPageSize,
|
|
652
|
+
returnedPage = _ref5.returnedPage,
|
|
653
|
+
messagePaginationOptions = _ref5.messagePaginationOptions;
|
|
654
|
+
|
|
655
|
+
var newPagination = _objectSpread$b({}, parentSet.pagination);
|
|
656
|
+
|
|
657
|
+
var _ref6 = messagePaginationOptions || {},
|
|
658
|
+
id_around = _ref6.id_around;
|
|
659
|
+
|
|
660
|
+
if (!id_around) return newPagination;
|
|
661
|
+
var hasPrev;
|
|
662
|
+
var hasNext;
|
|
663
|
+
var _ref7 = [returnedPage[0], returnedPage.slice(-1)[0]],
|
|
664
|
+
firstPageMsg = _ref7[0],
|
|
665
|
+
lastPageMsg = _ref7[1];
|
|
666
|
+
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),
|
|
667
|
+
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);
|
|
668
|
+
var updateHasPrev = firstPageMsgIsFirstInSet;
|
|
669
|
+
var updateHasNext = lastPageMsgIsLastInSet;
|
|
670
|
+
var midPoint = Math.floor(returnedPage.length / 2);
|
|
671
|
+
var noMoreMessages = (requestedPageSize > parentSet.messages.length || parentSet.messages.length >= returnedPage.length) && requestedPageSize > returnedPage.length;
|
|
672
|
+
|
|
673
|
+
if (noMoreMessages) {
|
|
674
|
+
hasNext = hasPrev = false;
|
|
675
|
+
updateHasPrev = updateHasNext = true;
|
|
676
|
+
} else if (!returnedPage[midPoint]) {
|
|
677
|
+
return newPagination;
|
|
678
|
+
} else if (returnedPage[midPoint].id === id_around) {
|
|
679
|
+
hasPrev = hasNext = true;
|
|
680
|
+
} else {
|
|
681
|
+
var targetMsg;
|
|
682
|
+
var halves = [returnedPage.slice(0, midPoint), returnedPage.slice(midPoint)];
|
|
683
|
+
hasPrev = hasNext = true;
|
|
684
|
+
|
|
685
|
+
for (var i = 0; i < halves.length; i++) {
|
|
686
|
+
targetMsg = halves[i].find(function (message) {
|
|
687
|
+
return message.id === id_around;
|
|
688
|
+
});
|
|
689
|
+
|
|
690
|
+
if (targetMsg && i === 0) {
|
|
691
|
+
hasPrev = false;
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
if (targetMsg && i === 1) {
|
|
695
|
+
hasNext = false;
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
|
|
700
|
+
if (updateHasPrev && typeof hasPrev !== 'undefined') newPagination.hasPrev = hasPrev;
|
|
701
|
+
if (updateHasNext && typeof hasNext !== 'undefined') newPagination.hasNext = hasNext;
|
|
702
|
+
return newPagination;
|
|
703
|
+
};
|
|
704
|
+
|
|
705
|
+
var messagePaginationLinear = function messagePaginationLinear(_ref8) {
|
|
706
|
+
var _parentSet$messages$3, _parentSet$messages$s3;
|
|
707
|
+
|
|
708
|
+
var parentSet = _ref8.parentSet,
|
|
709
|
+
requestedPageSize = _ref8.requestedPageSize,
|
|
710
|
+
returnedPage = _ref8.returnedPage,
|
|
711
|
+
messagePaginationOptions = _ref8.messagePaginationOptions;
|
|
712
|
+
|
|
713
|
+
var newPagination = _objectSpread$b({}, parentSet.pagination);
|
|
714
|
+
|
|
715
|
+
var hasPrev;
|
|
716
|
+
var hasNext;
|
|
717
|
+
var _ref9 = [returnedPage[0], returnedPage.slice(-1)[0]],
|
|
718
|
+
firstPageMsg = _ref9[0],
|
|
719
|
+
lastPageMsg = _ref9[1];
|
|
720
|
+
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),
|
|
721
|
+
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);
|
|
722
|
+
var queriedNextMessages = messagePaginationOptions && (messagePaginationOptions.created_at_after_or_equal || messagePaginationOptions.created_at_after || messagePaginationOptions.id_gt || messagePaginationOptions.id_gte);
|
|
723
|
+
var queriedPrevMessages = typeof messagePaginationOptions === 'undefined' ? true : messagePaginationOptions.created_at_before_or_equal || messagePaginationOptions.created_at_before || messagePaginationOptions.id_lt || messagePaginationOptions.id_lte || messagePaginationOptions.offset;
|
|
724
|
+
var containsUnrecognizedOptionsOnly = !queriedNextMessages && !queriedPrevMessages && !(messagePaginationOptions !== null && messagePaginationOptions !== void 0 && messagePaginationOptions.id_around) && !(messagePaginationOptions !== null && messagePaginationOptions !== void 0 && messagePaginationOptions.created_at_around);
|
|
725
|
+
var hasMore = returnedPage.length >= requestedPageSize;
|
|
726
|
+
|
|
727
|
+
if (typeof queriedPrevMessages !== 'undefined' || containsUnrecognizedOptionsOnly) {
|
|
728
|
+
hasPrev = hasMore;
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
if (typeof queriedNextMessages !== 'undefined') {
|
|
732
|
+
hasNext = hasMore;
|
|
733
|
+
}
|
|
734
|
+
|
|
735
|
+
var returnedPageIsEmpty = returnedPage.length === 0;
|
|
736
|
+
if ((firstPageMsgIsFirstInSet || returnedPageIsEmpty) && typeof hasPrev !== 'undefined') newPagination.hasPrev = hasPrev;
|
|
737
|
+
if ((lastPageMsgIsLastInSet || returnedPageIsEmpty) && typeof hasNext !== 'undefined') newPagination.hasNext = hasNext;
|
|
738
|
+
return newPagination;
|
|
739
|
+
};
|
|
740
|
+
|
|
741
|
+
var messageSetPagination = function messageSetPagination(params) {
|
|
742
|
+
var _params$messagePagina, _params$messagePagina2;
|
|
743
|
+
|
|
744
|
+
if (params.parentSet.messages.length < params.returnedPage.length) {
|
|
745
|
+
var _params$logger;
|
|
746
|
+
|
|
747
|
+
(_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');
|
|
748
|
+
return params.parentSet.pagination;
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
if ((_params$messagePagina = params.messagePaginationOptions) !== null && _params$messagePagina !== void 0 && _params$messagePagina.created_at_around) {
|
|
752
|
+
return messagePaginationCreatedAtAround(params);
|
|
753
|
+
} else if ((_params$messagePagina2 = params.messagePaginationOptions) !== null && _params$messagePagina2 !== void 0 && _params$messagePagina2.id_around) {
|
|
754
|
+
return messagePaginationIdAround(params);
|
|
755
|
+
} else {
|
|
756
|
+
return messagePaginationLinear(params);
|
|
757
|
+
}
|
|
758
|
+
};
|
|
759
|
+
|
|
760
|
+
var DEFAULT_QUERY_CHANNELS_MESSAGE_LIST_PAGE_SIZE = 25;
|
|
761
|
+
var DEFAULT_QUERY_CHANNEL_MESSAGE_LIST_PAGE_SIZE = 100;
|
|
762
|
+
var DEFAULT_MESSAGE_SET_PAGINATION = {
|
|
763
|
+
hasNext: true,
|
|
764
|
+
hasPrev: true
|
|
765
|
+
};
|
|
766
|
+
|
|
767
|
+
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; }
|
|
768
|
+
|
|
769
|
+
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; }
|
|
491
770
|
|
|
492
771
|
/**
|
|
493
772
|
* ChannelState - A container class for the channel state.
|
|
@@ -542,6 +821,10 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
542
821
|
|
|
543
822
|
_defineProperty__default['default'](this, "messageSets", []);
|
|
544
823
|
|
|
824
|
+
_defineProperty__default['default'](this, "formatMessage", function (message) {
|
|
825
|
+
return formatMessage(message);
|
|
826
|
+
});
|
|
827
|
+
|
|
545
828
|
_defineProperty__default['default'](this, "setIsUpToDate", function (isUpToDate) {
|
|
546
829
|
_this.isUpToDate = isUpToDate;
|
|
547
830
|
});
|
|
@@ -564,7 +847,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
564
847
|
if (!message) return;
|
|
565
848
|
if (message.poll_id !== pollVote.poll_id) return;
|
|
566
849
|
|
|
567
|
-
var updatedPoll = _objectSpread$
|
|
850
|
+
var updatedPoll = _objectSpread$a({}, poll);
|
|
568
851
|
|
|
569
852
|
var ownVotes = _toConsumableArray__default['default'](((_message$poll = message.poll) === null || _message$poll === void 0 ? void 0 : _message$poll.own_votes) || []);
|
|
570
853
|
|
|
@@ -586,7 +869,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
586
869
|
|
|
587
870
|
updatedPoll.own_votes = ownVotes;
|
|
588
871
|
|
|
589
|
-
var newMessage = _objectSpread$
|
|
872
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
590
873
|
poll: updatedPoll
|
|
591
874
|
});
|
|
592
875
|
|
|
@@ -601,7 +884,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
601
884
|
if (!message) return;
|
|
602
885
|
if (message.poll_id !== pollVote.poll_id) return;
|
|
603
886
|
|
|
604
|
-
var updatedPoll = _objectSpread$
|
|
887
|
+
var updatedPoll = _objectSpread$a({}, poll);
|
|
605
888
|
|
|
606
889
|
var ownVotes = _toConsumableArray__default['default'](((_message$poll2 = message.poll) === null || _message$poll2 === void 0 ? void 0 : _message$poll2.own_votes) || []);
|
|
607
890
|
|
|
@@ -611,7 +894,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
611
894
|
|
|
612
895
|
updatedPoll.own_votes = ownVotes;
|
|
613
896
|
|
|
614
|
-
var newMessage = _objectSpread$
|
|
897
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
615
898
|
poll: updatedPoll
|
|
616
899
|
});
|
|
617
900
|
|
|
@@ -626,7 +909,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
626
909
|
if (!message) return;
|
|
627
910
|
if (message.poll_id !== pollVote.poll_id) return;
|
|
628
911
|
|
|
629
|
-
var updatedPoll = _objectSpread$
|
|
912
|
+
var updatedPoll = _objectSpread$a({}, poll);
|
|
630
913
|
|
|
631
914
|
var ownVotes = _toConsumableArray__default['default'](((_message$poll3 = message.poll) === null || _message$poll3 === void 0 ? void 0 : _message$poll3.own_votes) || []);
|
|
632
915
|
|
|
@@ -642,7 +925,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
642
925
|
|
|
643
926
|
updatedPoll.own_votes = ownVotes;
|
|
644
927
|
|
|
645
|
-
var newMessage = _objectSpread$
|
|
928
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
646
929
|
poll: updatedPoll
|
|
647
930
|
});
|
|
648
931
|
|
|
@@ -656,11 +939,11 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
656
939
|
|
|
657
940
|
if (!message) return;
|
|
658
941
|
|
|
659
|
-
var updatedPoll = _objectSpread$
|
|
942
|
+
var updatedPoll = _objectSpread$a(_objectSpread$a({}, poll), {}, {
|
|
660
943
|
own_votes: _toConsumableArray__default['default'](((_message$poll4 = message.poll) === null || _message$poll4 === void 0 ? void 0 : _message$poll4.own_votes) || [])
|
|
661
944
|
});
|
|
662
945
|
|
|
663
|
-
var newMessage = _objectSpread$
|
|
946
|
+
var newMessage = _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
664
947
|
poll: updatedPoll
|
|
665
948
|
});
|
|
666
949
|
|
|
@@ -675,7 +958,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
675
958
|
var m = messages[i];
|
|
676
959
|
|
|
677
960
|
if (((_m$user = m.user) === null || _m$user === void 0 ? void 0 : _m$user.id) === user.id) {
|
|
678
|
-
messages[i] = _objectSpread$
|
|
961
|
+
messages[i] = _objectSpread$a(_objectSpread$a({}, m), {}, {
|
|
679
962
|
user: user
|
|
680
963
|
});
|
|
681
964
|
}
|
|
@@ -730,9 +1013,9 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
730
1013
|
user: m.user
|
|
731
1014
|
};
|
|
732
1015
|
} else {
|
|
733
|
-
messages[i] = _objectSpread$
|
|
1016
|
+
messages[i] = _objectSpread$a(_objectSpread$a({}, m), {}, {
|
|
734
1017
|
type: 'deleted',
|
|
735
|
-
deleted_at: user.deleted_at
|
|
1018
|
+
deleted_at: user.deleted_at ? new Date(user.deleted_at) : null
|
|
736
1019
|
});
|
|
737
1020
|
}
|
|
738
1021
|
}
|
|
@@ -809,6 +1092,15 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
809
1092
|
});
|
|
810
1093
|
this.messageSets[index].messages = messages;
|
|
811
1094
|
}
|
|
1095
|
+
}, {
|
|
1096
|
+
key: "messagePagination",
|
|
1097
|
+
get: function get() {
|
|
1098
|
+
var _this$messageSets$fin3;
|
|
1099
|
+
|
|
1100
|
+
return ((_this$messageSets$fin3 = this.messageSets.find(function (s) {
|
|
1101
|
+
return s.isCurrent;
|
|
1102
|
+
})) === null || _this$messageSets$fin3 === void 0 ? void 0 : _this$messageSets$fin3.pagination) || DEFAULT_MESSAGE_SET_PAGINATION;
|
|
1103
|
+
}
|
|
812
1104
|
/**
|
|
813
1105
|
* addMessageSorted - Add a message to the state
|
|
814
1106
|
*
|
|
@@ -827,28 +1119,15 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
827
1119
|
return this.addMessagesSorted([newMessage], timestampChanged, false, addIfDoesNotExist, messageSetToAddToIfDoesNotExist);
|
|
828
1120
|
}
|
|
829
1121
|
/**
|
|
830
|
-
*
|
|
831
|
-
* and sets the status to received if missing
|
|
832
|
-
*
|
|
833
|
-
* @param {MessageResponse<StreamChatGenerics>} message a message object
|
|
1122
|
+
* Takes the message object, parses the dates, sets `__html`
|
|
1123
|
+
* and sets the status to `received` if missing; returns a new message object.
|
|
834
1124
|
*
|
|
1125
|
+
* @param {MessageResponse<StreamChatGenerics>} message `MessageResponse` object
|
|
835
1126
|
*/
|
|
836
1127
|
|
|
837
1128
|
}, {
|
|
838
|
-
key: "
|
|
839
|
-
value:
|
|
840
|
-
return _objectSpread$8(_objectSpread$8({}, message), {}, {
|
|
841
|
-
/**
|
|
842
|
-
* @deprecated please use `html`
|
|
843
|
-
*/
|
|
844
|
-
__html: message.html,
|
|
845
|
-
// parse the date..
|
|
846
|
-
pinned_at: message.pinned_at ? new Date(message.pinned_at) : null,
|
|
847
|
-
created_at: message.created_at ? new Date(message.created_at) : new Date(),
|
|
848
|
-
updated_at: message.updated_at ? new Date(message.updated_at) : new Date(),
|
|
849
|
-
status: message.status || 'received'
|
|
850
|
-
});
|
|
851
|
-
}
|
|
1129
|
+
key: "addMessagesSorted",
|
|
1130
|
+
value:
|
|
852
1131
|
/**
|
|
853
1132
|
* addMessagesSorted - Add the list of messages to state and resorts the messages
|
|
854
1133
|
*
|
|
@@ -859,10 +1138,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
859
1138
|
* @param {MessageSetType} messageSetToAddToIfDoesNotExist Which message set to add to if messages are not in the list (only used if addIfDoesNotExist is true)
|
|
860
1139
|
*
|
|
861
1140
|
*/
|
|
862
|
-
|
|
863
|
-
}, {
|
|
864
|
-
key: "addMessagesSorted",
|
|
865
|
-
value: function addMessagesSorted(newMessages) {
|
|
1141
|
+
function addMessagesSorted(newMessages) {
|
|
866
1142
|
var timestampChanged = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
867
1143
|
var initializing = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
868
1144
|
var addIfDoesNotExist = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
@@ -1055,7 +1331,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1055
1331
|
var parseMessage = function parseMessage(m) {
|
|
1056
1332
|
var _m$pinned_at, _m$updated_at;
|
|
1057
1333
|
|
|
1058
|
-
return _objectSpread$
|
|
1334
|
+
return _objectSpread$a(_objectSpread$a({}, m), {}, {
|
|
1059
1335
|
created_at: m.created_at.toISOString(),
|
|
1060
1336
|
pinned_at: (_m$pinned_at = m.pinned_at) === null || _m$pinned_at === void 0 ? void 0 : _m$pinned_at.toISOString(),
|
|
1061
1337
|
updated_at: (_m$updated_at = m.updated_at) === null || _m$updated_at === void 0 ? void 0 : _m$updated_at.toISOString()
|
|
@@ -1065,8 +1341,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1065
1341
|
var update = function update(messages) {
|
|
1066
1342
|
var updatedMessages = messages.reduce(function (acc, msg) {
|
|
1067
1343
|
if (msg.quoted_message_id === message.id) {
|
|
1068
|
-
acc.push(_objectSpread$
|
|
1069
|
-
quoted_message: remove ? _objectSpread$
|
|
1344
|
+
acc.push(_objectSpread$a(_objectSpread$a({}, parseMessage(msg)), {}, {
|
|
1345
|
+
quoted_message: remove ? _objectSpread$a(_objectSpread$a({}, message), {}, {
|
|
1070
1346
|
attachments: []
|
|
1071
1347
|
}) : message
|
|
1072
1348
|
}));
|
|
@@ -1262,7 +1538,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1262
1538
|
this.messageSets = [{
|
|
1263
1539
|
messages: [],
|
|
1264
1540
|
isLatest: true,
|
|
1265
|
-
isCurrent: true
|
|
1541
|
+
isCurrent: true,
|
|
1542
|
+
pagination: DEFAULT_MESSAGE_SET_PAGINATION
|
|
1266
1543
|
}];
|
|
1267
1544
|
}
|
|
1268
1545
|
/**
|
|
@@ -1270,6 +1547,7 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1270
1547
|
*
|
|
1271
1548
|
* @param {string} messageId The id of the message, or 'latest' to indicate switching to the latest messages
|
|
1272
1549
|
* @param {string} parentMessageId The id of the parent message, if we want load a thread reply
|
|
1550
|
+
* @param {number} limit The page size if the message has to be queried from the server
|
|
1273
1551
|
*/
|
|
1274
1552
|
|
|
1275
1553
|
}, {
|
|
@@ -1478,7 +1756,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1478
1756
|
this.messageSets.push({
|
|
1479
1757
|
messages: [],
|
|
1480
1758
|
isCurrent: false,
|
|
1481
|
-
isLatest: false
|
|
1759
|
+
isLatest: false,
|
|
1760
|
+
pagination: DEFAULT_MESSAGE_SET_PAGINATION
|
|
1482
1761
|
});
|
|
1483
1762
|
targetMessageSetIndex = this.messageSets.length - 1;
|
|
1484
1763
|
}
|
|
@@ -1519,6 +1798,8 @@ var ChannelState = /*#__PURE__*/function () {
|
|
|
1519
1798
|
sources.forEach(function (messageSet) {
|
|
1520
1799
|
target.isLatest = target.isLatest || messageSet.isLatest;
|
|
1521
1800
|
target.isCurrent = target.isCurrent || messageSet.isCurrent;
|
|
1801
|
+
target.pagination.hasPrev = messageSet.messages[0].created_at < target.messages[0].created_at ? messageSet.pagination.hasPrev : target.pagination.hasPrev;
|
|
1802
|
+
target.pagination.hasNext = target.messages.slice(-1)[0].created_at < messageSet.messages.slice(-1)[0].created_at ? messageSet.pagination.hasNext : target.pagination.hasNext;
|
|
1522
1803
|
messagesToAdd = [].concat(_toConsumableArray__default['default'](messagesToAdd), _toConsumableArray__default['default'](messageSet.messages));
|
|
1523
1804
|
});
|
|
1524
1805
|
sources.forEach(function (s) {
|
|
@@ -1550,13 +1831,13 @@ function _unsupportedIterableToArray$3(o, minLen) { if (!o) return; if (typeof o
|
|
|
1550
1831
|
|
|
1551
1832
|
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; }
|
|
1552
1833
|
|
|
1553
|
-
function ownKeys$
|
|
1554
|
-
|
|
1555
|
-
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; }
|
|
1834
|
+
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; }
|
|
1556
1835
|
|
|
1836
|
+
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; }
|
|
1557
1837
|
/**
|
|
1558
1838
|
* Channel - The Channel class manages it's own state.
|
|
1559
1839
|
*/
|
|
1840
|
+
|
|
1560
1841
|
var Channel = /*#__PURE__*/function () {
|
|
1561
1842
|
/** */
|
|
1562
1843
|
|
|
@@ -1625,7 +1906,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1625
1906
|
while (1) {
|
|
1626
1907
|
switch (_context.prev = _context.next) {
|
|
1627
1908
|
case 0:
|
|
1628
|
-
defaultOptions = _objectSpread$
|
|
1909
|
+
defaultOptions = _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
1629
1910
|
watch: false,
|
|
1630
1911
|
state: false,
|
|
1631
1912
|
presence: false
|
|
@@ -1677,7 +1958,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1677
1958
|
throw new Error('channel id is not defined');
|
|
1678
1959
|
}
|
|
1679
1960
|
|
|
1680
|
-
return "".concat(_this.getClient().baseURL, "/channels/").concat(_this.type, "/").concat(_this.id);
|
|
1961
|
+
return "".concat(_this.getClient().baseURL, "/channels/").concat(encodeURIComponent(_this.type), "/").concat(encodeURIComponent(_this.id));
|
|
1681
1962
|
});
|
|
1682
1963
|
|
|
1683
1964
|
var validTypeRe = /^[\w_-]+$/;
|
|
@@ -1697,7 +1978,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1697
1978
|
|
|
1698
1979
|
this.data = data; // this._data is used for the requests...
|
|
1699
1980
|
|
|
1700
|
-
this._data = _objectSpread$
|
|
1981
|
+
this._data = _objectSpread$9({}, data);
|
|
1701
1982
|
this.cid = "".concat(type, ":").concat(id);
|
|
1702
1983
|
this.listeners = {}; // perhaps the state variable should be private
|
|
1703
1984
|
|
|
@@ -1759,7 +2040,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1759
2040
|
switch (_context2.prev = _context2.next) {
|
|
1760
2041
|
case 0:
|
|
1761
2042
|
_context2.next = 2;
|
|
1762
|
-
return this.getClient().post(this._channelURL() + '/message', _objectSpread$
|
|
2043
|
+
return this.getClient().post(this._channelURL() + '/message', _objectSpread$9({
|
|
1763
2044
|
message: message
|
|
1764
2045
|
}, options));
|
|
1765
2046
|
|
|
@@ -1875,7 +2156,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1875
2156
|
|
|
1876
2157
|
case 3:
|
|
1877
2158
|
// Return a list of channels
|
|
1878
|
-
payload = _objectSpread$
|
|
2159
|
+
payload = _objectSpread$9(_objectSpread$9({
|
|
1879
2160
|
filter_conditions: {
|
|
1880
2161
|
cid: this.cid
|
|
1881
2162
|
}
|
|
@@ -1972,7 +2253,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
1972
2253
|
|
|
1973
2254
|
_context5.next = 6;
|
|
1974
2255
|
return this.getClient().get(this.getClient().baseURL + '/members', {
|
|
1975
|
-
payload: _objectSpread$
|
|
2256
|
+
payload: _objectSpread$9({
|
|
1976
2257
|
type: type,
|
|
1977
2258
|
id: id,
|
|
1978
2259
|
members: members,
|
|
@@ -2033,7 +2314,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2033
2314
|
|
|
2034
2315
|
case 4:
|
|
2035
2316
|
_context6.next = 6;
|
|
2036
|
-
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(messageID, "/reaction"), _objectSpread$
|
|
2317
|
+
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(messageID), "/reaction"), _objectSpread$9({
|
|
2037
2318
|
reaction: reaction
|
|
2038
2319
|
}, options));
|
|
2039
2320
|
|
|
@@ -2073,7 +2354,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2073
2354
|
throw Error('Deleting a reaction requires specifying both the message and reaction type');
|
|
2074
2355
|
}
|
|
2075
2356
|
|
|
2076
|
-
var url = this.getClient().baseURL + "/messages/".concat(messageID, "/reaction/").concat(reactionType); //provided when server side request
|
|
2357
|
+
var url = this.getClient().baseURL + "/messages/".concat(encodeURIComponent(messageID), "/reaction/").concat(encodeURIComponent(reactionType)); //provided when server side request
|
|
2077
2358
|
|
|
2078
2359
|
if (user_id) {
|
|
2079
2360
|
return this.getClient().delete(url, {
|
|
@@ -2114,7 +2395,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2114
2395
|
delete channelData[key];
|
|
2115
2396
|
});
|
|
2116
2397
|
_context7.next = 7;
|
|
2117
|
-
return this._update(_objectSpread$
|
|
2398
|
+
return this._update(_objectSpread$9({
|
|
2118
2399
|
message: updateMessage,
|
|
2119
2400
|
data: channelData
|
|
2120
2401
|
}, options));
|
|
@@ -2286,7 +2567,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2286
2567
|
case 0:
|
|
2287
2568
|
options = _args11.length > 0 && _args11[0] !== undefined ? _args11[0] : {};
|
|
2288
2569
|
_context11.next = 3;
|
|
2289
|
-
return this.getClient().delete(this._channelURL(), _objectSpread$
|
|
2570
|
+
return this.getClient().delete(this._channelURL(), _objectSpread$9({}, options));
|
|
2290
2571
|
|
|
2291
2572
|
case 3:
|
|
2292
2573
|
return _context11.abrupt("return", _context11.sent);
|
|
@@ -2362,7 +2643,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2362
2643
|
case 0:
|
|
2363
2644
|
options = _args13.length > 0 && _args13[0] !== undefined ? _args13[0] : {};
|
|
2364
2645
|
_context13.next = 3;
|
|
2365
|
-
return this._update(_objectSpread$
|
|
2646
|
+
return this._update(_objectSpread$9({
|
|
2366
2647
|
accept_invite: true
|
|
2367
2648
|
}, options));
|
|
2368
2649
|
|
|
@@ -2403,7 +2684,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2403
2684
|
case 0:
|
|
2404
2685
|
options = _args14.length > 0 && _args14[0] !== undefined ? _args14[0] : {};
|
|
2405
2686
|
_context14.next = 3;
|
|
2406
|
-
return this._update(_objectSpread$
|
|
2687
|
+
return this._update(_objectSpread$9({
|
|
2407
2688
|
reject_invite: true
|
|
2408
2689
|
}, options));
|
|
2409
2690
|
|
|
@@ -2445,7 +2726,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2445
2726
|
case 0:
|
|
2446
2727
|
options = _args15.length > 2 && _args15[2] !== undefined ? _args15[2] : {};
|
|
2447
2728
|
_context15.next = 3;
|
|
2448
|
-
return this._update(_objectSpread$
|
|
2729
|
+
return this._update(_objectSpread$9({
|
|
2449
2730
|
add_members: members,
|
|
2450
2731
|
message: message
|
|
2451
2732
|
}, options));
|
|
@@ -2488,7 +2769,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2488
2769
|
case 0:
|
|
2489
2770
|
options = _args16.length > 2 && _args16[2] !== undefined ? _args16[2] : {};
|
|
2490
2771
|
_context16.next = 3;
|
|
2491
|
-
return this._update(_objectSpread$
|
|
2772
|
+
return this._update(_objectSpread$9({
|
|
2492
2773
|
add_moderators: members,
|
|
2493
2774
|
message: message
|
|
2494
2775
|
}, options));
|
|
@@ -2531,7 +2812,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2531
2812
|
case 0:
|
|
2532
2813
|
options = _args17.length > 2 && _args17[2] !== undefined ? _args17[2] : {};
|
|
2533
2814
|
_context17.next = 3;
|
|
2534
|
-
return this._update(_objectSpread$
|
|
2815
|
+
return this._update(_objectSpread$9({
|
|
2535
2816
|
assign_roles: roles,
|
|
2536
2817
|
message: message
|
|
2537
2818
|
}, options));
|
|
@@ -2574,7 +2855,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2574
2855
|
case 0:
|
|
2575
2856
|
options = _args18.length > 2 && _args18[2] !== undefined ? _args18[2] : {};
|
|
2576
2857
|
_context18.next = 3;
|
|
2577
|
-
return this._update(_objectSpread$
|
|
2858
|
+
return this._update(_objectSpread$9({
|
|
2578
2859
|
invites: members,
|
|
2579
2860
|
message: message
|
|
2580
2861
|
}, options));
|
|
@@ -2617,7 +2898,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2617
2898
|
case 0:
|
|
2618
2899
|
options = _args19.length > 2 && _args19[2] !== undefined ? _args19[2] : {};
|
|
2619
2900
|
_context19.next = 3;
|
|
2620
|
-
return this._update(_objectSpread$
|
|
2901
|
+
return this._update(_objectSpread$9({
|
|
2621
2902
|
remove_members: members,
|
|
2622
2903
|
message: message
|
|
2623
2904
|
}, options));
|
|
@@ -2660,7 +2941,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2660
2941
|
case 0:
|
|
2661
2942
|
options = _args20.length > 2 && _args20[2] !== undefined ? _args20[2] : {};
|
|
2662
2943
|
_context20.next = 3;
|
|
2663
|
-
return this._update(_objectSpread$
|
|
2944
|
+
return this._update(_objectSpread$9({
|
|
2664
2945
|
demote_moderators: members,
|
|
2665
2946
|
message: message
|
|
2666
2947
|
}, options));
|
|
@@ -2745,7 +3026,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2745
3026
|
case 0:
|
|
2746
3027
|
opts = _args22.length > 0 && _args22[0] !== undefined ? _args22[0] : {};
|
|
2747
3028
|
_context22.next = 3;
|
|
2748
|
-
return this.getClient().post(this.getClient().baseURL + '/moderation/mute/channel', _objectSpread$
|
|
3029
|
+
return this.getClient().post(this.getClient().baseURL + '/moderation/mute/channel', _objectSpread$9({
|
|
2749
3030
|
channel_cid: this.cid
|
|
2750
3031
|
}, opts));
|
|
2751
3032
|
|
|
@@ -2787,7 +3068,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2787
3068
|
case 0:
|
|
2788
3069
|
opts = _args23.length > 0 && _args23[0] !== undefined ? _args23[0] : {};
|
|
2789
3070
|
_context23.next = 3;
|
|
2790
|
-
return this.getClient().post(this.getClient().baseURL + '/moderation/unmute/channel', _objectSpread$
|
|
3071
|
+
return this.getClient().post(this.getClient().baseURL + '/moderation/unmute/channel', _objectSpread$9({
|
|
2791
3072
|
channel_cid: this.cid
|
|
2792
3073
|
}, opts));
|
|
2793
3074
|
|
|
@@ -2829,7 +3110,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2829
3110
|
throw Error("Message id is missing");
|
|
2830
3111
|
}
|
|
2831
3112
|
|
|
2832
|
-
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(messageID, "/action"), {
|
|
3113
|
+
return this.getClient().post(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(messageID), "/action"), {
|
|
2833
3114
|
message_id: messageID,
|
|
2834
3115
|
form_data: formData,
|
|
2835
3116
|
id: this.id,
|
|
@@ -2872,7 +3153,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2872
3153
|
|
|
2873
3154
|
this.lastTypingEvent = new Date();
|
|
2874
3155
|
_context24.next = 10;
|
|
2875
|
-
return this.sendEvent(_objectSpread$
|
|
3156
|
+
return this.sendEvent(_objectSpread$9({
|
|
2876
3157
|
type: 'typing.start',
|
|
2877
3158
|
parent_id: parent_id
|
|
2878
3159
|
}, options || {}));
|
|
@@ -2916,7 +3197,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
2916
3197
|
this.lastTypingEvent = null;
|
|
2917
3198
|
this.isTyping = false;
|
|
2918
3199
|
_context25.next = 6;
|
|
2919
|
-
return this.sendEvent(_objectSpread$
|
|
3200
|
+
return this.sendEvent(_objectSpread$9({
|
|
2920
3201
|
type: 'typing.stop',
|
|
2921
3202
|
parent_id: parent_id
|
|
2922
3203
|
}, options || {}));
|
|
@@ -3003,7 +3284,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3003
3284
|
|
|
3004
3285
|
case 4:
|
|
3005
3286
|
_context26.next = 6;
|
|
3006
|
-
return this.getClient().post(this._channelURL() + '/read', _objectSpread$
|
|
3287
|
+
return this.getClient().post(this._channelURL() + '/read', _objectSpread$9({}, data));
|
|
3007
3288
|
|
|
3008
3289
|
case 6:
|
|
3009
3290
|
return _context26.abrupt("return", _context26.sent);
|
|
@@ -3050,7 +3331,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3050
3331
|
|
|
3051
3332
|
case 3:
|
|
3052
3333
|
_context27.next = 5;
|
|
3053
|
-
return this.getClient().post(this._channelURL() + '/unread', _objectSpread$
|
|
3334
|
+
return this.getClient().post(this._channelURL() + '/unread', _objectSpread$9({}, data));
|
|
3054
3335
|
|
|
3055
3336
|
case 5:
|
|
3056
3337
|
return _context27.abrupt("return", _context27.sent);
|
|
@@ -3118,7 +3399,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3118
3399
|
defaultOptions.watch = false;
|
|
3119
3400
|
}
|
|
3120
3401
|
|
|
3121
|
-
combined = _objectSpread$
|
|
3402
|
+
combined = _objectSpread$9(_objectSpread$9({}, defaultOptions), options);
|
|
3122
3403
|
_context28.next = 7;
|
|
3123
3404
|
return this.query(combined, 'latest');
|
|
3124
3405
|
|
|
@@ -3191,7 +3472,9 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3191
3472
|
return stopWatching;
|
|
3192
3473
|
}()
|
|
3193
3474
|
/**
|
|
3194
|
-
* getReplies - List the message replies for a parent message
|
|
3475
|
+
* getReplies - List the message replies for a parent message.
|
|
3476
|
+
*
|
|
3477
|
+
* The recommended way of working with threads is to use the Thread class.
|
|
3195
3478
|
*
|
|
3196
3479
|
* @param {string} parent_id The message parent id, ie the top of the thread
|
|
3197
3480
|
* @param {MessagePaginationOptions & { user?: UserResponse<StreamChatGenerics>; user_id?: string }} options Pagination params, ie {limit:10, id_lte: 10}
|
|
@@ -3210,7 +3493,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3210
3493
|
case 0:
|
|
3211
3494
|
normalizedSort = sort ? normalizeQuerySort(sort) : undefined;
|
|
3212
3495
|
_context30.next = 3;
|
|
3213
|
-
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(parent_id, "/replies"), _objectSpread$
|
|
3496
|
+
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(parent_id), "/replies"), _objectSpread$9({
|
|
3214
3497
|
sort: normalizedSort
|
|
3215
3498
|
}, options));
|
|
3216
3499
|
|
|
@@ -3259,8 +3542,8 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3259
3542
|
case 0:
|
|
3260
3543
|
sort = _args31.length > 1 && _args31[1] !== undefined ? _args31[1] : [];
|
|
3261
3544
|
_context31.next = 3;
|
|
3262
|
-
return this.getClient().get(this.
|
|
3263
|
-
payload: _objectSpread$
|
|
3545
|
+
return this.getClient().get(this._channelURL() + '/pinned_messages', {
|
|
3546
|
+
payload: _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
3264
3547
|
sort: normalizeQuerySort(sort)
|
|
3265
3548
|
})
|
|
3266
3549
|
});
|
|
@@ -3294,7 +3577,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3294
3577
|
}, {
|
|
3295
3578
|
key: "getReactions",
|
|
3296
3579
|
value: function getReactions(message_id, options) {
|
|
3297
|
-
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(message_id, "/reactions"), _objectSpread$
|
|
3580
|
+
return this.getClient().get(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(message_id), "/reactions"), _objectSpread$9({}, options));
|
|
3298
3581
|
}
|
|
3299
3582
|
/**
|
|
3300
3583
|
* getMessagesById - Retrieves a list of messages by ID
|
|
@@ -3414,7 +3697,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3414
3697
|
*/
|
|
3415
3698
|
function () {
|
|
3416
3699
|
var _query = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee32(options) {
|
|
3417
|
-
var _this$data6, _this$data7;
|
|
3700
|
+
var _options$messages$lim, _options$messages, _this$data6, _this$data7;
|
|
3418
3701
|
|
|
3419
3702
|
var messageSetToAddToIfDoesNotExist,
|
|
3420
3703
|
queryURL,
|
|
@@ -3435,14 +3718,14 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3435
3718
|
return this.getClient().wsPromise;
|
|
3436
3719
|
|
|
3437
3720
|
case 3:
|
|
3438
|
-
queryURL = "".concat(this.getClient().baseURL, "/channels/").concat(this.type);
|
|
3721
|
+
queryURL = "".concat(this.getClient().baseURL, "/channels/").concat(encodeURIComponent(this.type));
|
|
3439
3722
|
|
|
3440
3723
|
if (this.id) {
|
|
3441
|
-
queryURL += "/".concat(this.id);
|
|
3724
|
+
queryURL += "/".concat(encodeURIComponent(this.id));
|
|
3442
3725
|
}
|
|
3443
3726
|
|
|
3444
3727
|
_context32.next = 7;
|
|
3445
|
-
return this.getClient().post(queryURL + '/query', _objectSpread$
|
|
3728
|
+
return this.getClient().post(queryURL + '/query', _objectSpread$9({
|
|
3446
3729
|
data: this._data,
|
|
3447
3730
|
state: true
|
|
3448
3731
|
}, options));
|
|
@@ -3477,6 +3760,13 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3477
3760
|
|
|
3478
3761
|
|
|
3479
3762
|
_this$_initializeStat = this._initializeState(state, messageSetToAddToIfDoesNotExist), messageSet = _this$_initializeStat.messageSet;
|
|
3763
|
+
messageSet.pagination = _objectSpread$9(_objectSpread$9({}, messageSet.pagination), messageSetPagination({
|
|
3764
|
+
parentSet: messageSet,
|
|
3765
|
+
messagePaginationOptions: options === null || options === void 0 ? void 0 : options.messages,
|
|
3766
|
+
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,
|
|
3767
|
+
returnedPage: state.messages,
|
|
3768
|
+
logger: this.getClient().logger
|
|
3769
|
+
}));
|
|
3480
3770
|
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();
|
|
3481
3771
|
this.data = state.channel;
|
|
3482
3772
|
this.offlineMode = false;
|
|
@@ -3498,7 +3788,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3498
3788
|
});
|
|
3499
3789
|
return _context32.abrupt("return", state);
|
|
3500
3790
|
|
|
3501
|
-
case
|
|
3791
|
+
case 18:
|
|
3502
3792
|
case "end":
|
|
3503
3793
|
return _context32.stop();
|
|
3504
3794
|
}
|
|
@@ -3531,7 +3821,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3531
3821
|
this._checkInitialized();
|
|
3532
3822
|
|
|
3533
3823
|
_context33.next = 3;
|
|
3534
|
-
return this.getClient().banUser(targetUserID, _objectSpread$
|
|
3824
|
+
return this.getClient().banUser(targetUserID, _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
3535
3825
|
type: this.type,
|
|
3536
3826
|
id: this.id
|
|
3537
3827
|
}));
|
|
@@ -3703,7 +3993,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
3703
3993
|
this._checkInitialized();
|
|
3704
3994
|
|
|
3705
3995
|
_context37.next = 3;
|
|
3706
|
-
return this.getClient().shadowBan(targetUserID, _objectSpread$
|
|
3996
|
+
return this.getClient().shadowBan(targetUserID, _objectSpread$9(_objectSpread$9({}, options), {}, {
|
|
3707
3997
|
type: this.type,
|
|
3708
3998
|
id: this.id
|
|
3709
3999
|
}));
|
|
@@ -4157,7 +4447,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
4157
4447
|
});
|
|
4158
4448
|
}
|
|
4159
4449
|
|
|
4160
|
-
channel.data = _objectSpread$
|
|
4450
|
+
channel.data = _objectSpread$9(_objectSpread$9({}, event.channel), {}, {
|
|
4161
4451
|
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,
|
|
4162
4452
|
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
|
|
4163
4453
|
});
|
|
@@ -4231,7 +4521,7 @@ var Channel = /*#__PURE__*/function () {
|
|
|
4231
4521
|
break;
|
|
4232
4522
|
|
|
4233
4523
|
case 'channel.hidden':
|
|
4234
|
-
channel.data = _objectSpread$
|
|
4524
|
+
channel.data = _objectSpread$9(_objectSpread$9({}, channel.data), {}, {
|
|
4235
4525
|
hidden: true
|
|
4236
4526
|
});
|
|
4237
4527
|
|
|
@@ -4242,26 +4532,26 @@ var Channel = /*#__PURE__*/function () {
|
|
|
4242
4532
|
break;
|
|
4243
4533
|
|
|
4244
4534
|
case 'channel.visible':
|
|
4245
|
-
channel.data = _objectSpread$
|
|
4535
|
+
channel.data = _objectSpread$9(_objectSpread$9({}, channel.data), {}, {
|
|
4246
4536
|
hidden: false
|
|
4247
4537
|
});
|
|
4248
4538
|
break;
|
|
4249
4539
|
|
|
4250
4540
|
case 'user.banned':
|
|
4251
4541
|
if (!((_event$user11 = event.user) !== null && _event$user11 !== void 0 && _event$user11.id)) break;
|
|
4252
|
-
channelState.members[event.user.id] = _objectSpread$
|
|
4542
|
+
channelState.members[event.user.id] = _objectSpread$9(_objectSpread$9({}, channelState.members[event.user.id] || {}), {}, {
|
|
4253
4543
|
shadow_banned: !!event.shadow,
|
|
4254
4544
|
banned: !event.shadow,
|
|
4255
|
-
user: _objectSpread$
|
|
4545
|
+
user: _objectSpread$9(_objectSpread$9({}, ((_channelState$members = channelState.members[event.user.id]) === null || _channelState$members === void 0 ? void 0 : _channelState$members.user) || {}), event.user)
|
|
4256
4546
|
});
|
|
4257
4547
|
break;
|
|
4258
4548
|
|
|
4259
4549
|
case 'user.unbanned':
|
|
4260
4550
|
if (!((_event$user12 = event.user) !== null && _event$user12 !== void 0 && _event$user12.id)) break;
|
|
4261
|
-
channelState.members[event.user.id] = _objectSpread$
|
|
4551
|
+
channelState.members[event.user.id] = _objectSpread$9(_objectSpread$9({}, channelState.members[event.user.id] || {}), {}, {
|
|
4262
4552
|
shadow_banned: false,
|
|
4263
4553
|
banned: false,
|
|
4264
|
-
user: _objectSpread$
|
|
4554
|
+
user: _objectSpread$9(_objectSpread$9({}, ((_channelState$members2 = channelState.members[event.user.id]) === null || _channelState$members2 === void 0 ? void 0 : _channelState$members2.user) || {}), event.user)
|
|
4265
4555
|
});
|
|
4266
4556
|
break;
|
|
4267
4557
|
} // any event can send over the online count
|
|
@@ -4515,9 +4805,9 @@ var ClientState = /*#__PURE__*/function () {
|
|
|
4515
4805
|
return ClientState;
|
|
4516
4806
|
}();
|
|
4517
4807
|
|
|
4518
|
-
function ownKeys$
|
|
4808
|
+
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; }
|
|
4519
4809
|
|
|
4520
|
-
function _objectSpread$
|
|
4810
|
+
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; }
|
|
4521
4811
|
var InsightMetrics = function InsightMetrics() {
|
|
4522
4812
|
_classCallCheck__default['default'](this, InsightMetrics);
|
|
4523
4813
|
|
|
@@ -4596,7 +4886,7 @@ var postInsights = /*#__PURE__*/function () {
|
|
|
4596
4886
|
};
|
|
4597
4887
|
}();
|
|
4598
4888
|
function buildWsFatalInsight(connection, event) {
|
|
4599
|
-
return _objectSpread$
|
|
4889
|
+
return _objectSpread$8(_objectSpread$8({}, event), buildWsBaseInsight(connection));
|
|
4600
4890
|
}
|
|
4601
4891
|
|
|
4602
4892
|
function buildWsBaseInsight(connection) {
|
|
@@ -4629,9 +4919,9 @@ function buildWsSuccessAfterFailureInsight(connection) {
|
|
|
4629
4919
|
return buildWsBaseInsight(connection);
|
|
4630
4920
|
}
|
|
4631
4921
|
|
|
4632
|
-
function ownKeys$
|
|
4922
|
+
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; }
|
|
4633
4923
|
|
|
4634
|
-
function _objectSpread$
|
|
4924
|
+
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; }
|
|
4635
4925
|
|
|
4636
4926
|
// Type guards to check WebSocket error type
|
|
4637
4927
|
var isCloseEvent = function isCloseEvent(res) {
|
|
@@ -4995,7 +5285,7 @@ var StableWSConnection = /*#__PURE__*/function () {
|
|
|
4995
5285
|
value: function _log(msg) {
|
|
4996
5286
|
var extra = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
4997
5287
|
var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'info';
|
|
4998
|
-
this.client.logger(level, 'connection:' + msg, _objectSpread$
|
|
5288
|
+
this.client.logger(level, 'connection:' + msg, _objectSpread$7({
|
|
4999
5289
|
tags: ['connection']
|
|
5000
5290
|
}, extra));
|
|
5001
5291
|
}
|
|
@@ -5586,9 +5876,9 @@ var StableWSConnection = /*#__PURE__*/function () {
|
|
|
5586
5876
|
return StableWSConnection;
|
|
5587
5877
|
}();
|
|
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
|
|
|
@@ -6019,9 +6309,9 @@ function isErrorResponse(res) {
|
|
|
6019
6309
|
return !res.status || res.status < 200 || 300 <= res.status;
|
|
6020
6310
|
}
|
|
6021
6311
|
|
|
6022
|
-
function ownKeys$
|
|
6312
|
+
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; }
|
|
6023
6313
|
|
|
6024
|
-
function _objectSpread$
|
|
6314
|
+
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; }
|
|
6025
6315
|
var ConnectionState;
|
|
6026
6316
|
|
|
6027
6317
|
(function (ConnectionState) {
|
|
@@ -6084,7 +6374,7 @@ var WSConnectionFallback = /*#__PURE__*/function () {
|
|
|
6084
6374
|
_context.next = 4;
|
|
6085
6375
|
return _this.client.doAxiosRequest('get', _this.client.baseURL.replace(':3030', ':8900') + '/longpoll', // replace port if present for testing with local API
|
|
6086
6376
|
undefined, {
|
|
6087
|
-
config: _objectSpread$
|
|
6377
|
+
config: _objectSpread$5(_objectSpread$5({}, config), {}, {
|
|
6088
6378
|
cancelToken: (_this$cancelToken2 = _this.cancelToken) === null || _this$cancelToken2 === void 0 ? void 0 : _this$cancelToken2.token
|
|
6089
6379
|
}),
|
|
6090
6380
|
params: params
|
|
@@ -6362,7 +6652,7 @@ var WSConnectionFallback = /*#__PURE__*/function () {
|
|
|
6362
6652
|
value: function _log(msg) {
|
|
6363
6653
|
var extra = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
6364
6654
|
var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'info';
|
|
6365
|
-
this.client.logger(level, 'WSConnectionFallback:' + msg, _objectSpread$
|
|
6655
|
+
this.client.logger(level, 'WSConnectionFallback:' + msg, _objectSpread$5({
|
|
6366
6656
|
tags: ['connection_fallback', 'connection']
|
|
6367
6657
|
}, extra));
|
|
6368
6658
|
}
|
|
@@ -6942,168 +7232,710 @@ exports.VotingVisibility = void 0;
|
|
|
6942
7232
|
VotingVisibility["public"] = "public";
|
|
6943
7233
|
})(exports.VotingVisibility || (exports.VotingVisibility = {}));
|
|
6944
7234
|
|
|
6945
|
-
|
|
7235
|
+
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; }
|
|
6946
7236
|
|
|
6947
|
-
function
|
|
7237
|
+
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; }
|
|
6948
7238
|
|
|
6949
|
-
function
|
|
7239
|
+
function isPatch(value) {
|
|
7240
|
+
return typeof value === 'function';
|
|
7241
|
+
}
|
|
6950
7242
|
|
|
6951
|
-
|
|
7243
|
+
var StateStore = function StateStore(value) {
|
|
7244
|
+
var _this = this;
|
|
6952
7245
|
|
|
6953
|
-
|
|
7246
|
+
_classCallCheck__default['default'](this, StateStore);
|
|
6954
7247
|
|
|
6955
|
-
|
|
7248
|
+
this.value = value;
|
|
7249
|
+
|
|
7250
|
+
_defineProperty__default['default'](this, "handlerSet", new Set());
|
|
7251
|
+
|
|
7252
|
+
_defineProperty__default['default'](this, "next", function (newValueOrPatch) {
|
|
7253
|
+
// newValue (or patch output) should never be mutated previous value
|
|
7254
|
+
var newValue = isPatch(newValueOrPatch) ? newValueOrPatch(_this.value) : newValueOrPatch; // do not notify subscribers if the value hasn't changed
|
|
7255
|
+
|
|
7256
|
+
if (newValue === _this.value) return;
|
|
7257
|
+
var oldValue = _this.value;
|
|
7258
|
+
_this.value = newValue;
|
|
7259
|
+
|
|
7260
|
+
_this.handlerSet.forEach(function (handler) {
|
|
7261
|
+
return handler(_this.value, oldValue);
|
|
7262
|
+
});
|
|
7263
|
+
});
|
|
7264
|
+
|
|
7265
|
+
_defineProperty__default['default'](this, "partialNext", function (partial) {
|
|
7266
|
+
return _this.next(function (current) {
|
|
7267
|
+
return _objectSpread$4(_objectSpread$4({}, current), partial);
|
|
7268
|
+
});
|
|
7269
|
+
});
|
|
7270
|
+
|
|
7271
|
+
_defineProperty__default['default'](this, "getLatestValue", function () {
|
|
7272
|
+
return _this.value;
|
|
7273
|
+
});
|
|
7274
|
+
|
|
7275
|
+
_defineProperty__default['default'](this, "subscribe", function (handler) {
|
|
7276
|
+
handler(_this.value, undefined);
|
|
7277
|
+
|
|
7278
|
+
_this.handlerSet.add(handler);
|
|
7279
|
+
|
|
7280
|
+
return function () {
|
|
7281
|
+
_this.handlerSet.delete(handler);
|
|
7282
|
+
};
|
|
7283
|
+
});
|
|
7284
|
+
|
|
7285
|
+
_defineProperty__default['default'](this, "subscribeWithSelector", function (selector, handler) {
|
|
7286
|
+
// begin with undefined to reduce amount of selector calls
|
|
7287
|
+
var selectedValues;
|
|
7288
|
+
|
|
7289
|
+
var wrappedHandler = function wrappedHandler(nextValue) {
|
|
7290
|
+
var _selectedValues$some, _selectedValues;
|
|
7291
|
+
|
|
7292
|
+
var newlySelectedValues = selector(nextValue);
|
|
7293
|
+
var hasUpdatedValues = (_selectedValues$some = (_selectedValues = selectedValues) === null || _selectedValues === void 0 ? void 0 : _selectedValues.some(function (value, index) {
|
|
7294
|
+
return value !== newlySelectedValues[index];
|
|
7295
|
+
})) !== null && _selectedValues$some !== void 0 ? _selectedValues$some : true;
|
|
7296
|
+
if (!hasUpdatedValues) return;
|
|
7297
|
+
var oldSelectedValues = selectedValues;
|
|
7298
|
+
selectedValues = newlySelectedValues;
|
|
7299
|
+
handler(newlySelectedValues, oldSelectedValues);
|
|
7300
|
+
};
|
|
7301
|
+
|
|
7302
|
+
return _this.subscribe(wrappedHandler);
|
|
7303
|
+
});
|
|
7304
|
+
};
|
|
7305
|
+
|
|
7306
|
+
var _excluded$1 = ["limit", "sort"];
|
|
7307
|
+
|
|
7308
|
+
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; }
|
|
7309
|
+
|
|
7310
|
+
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; }
|
|
7311
|
+
var DEFAULT_PAGE_LIMIT = 50;
|
|
7312
|
+
var DEFAULT_SORT = [{
|
|
7313
|
+
created_at: -1
|
|
7314
|
+
}];
|
|
7315
|
+
var MARK_AS_READ_THROTTLE_TIMEOUT = 1000;
|
|
6956
7316
|
var Thread = /*#__PURE__*/function () {
|
|
6957
|
-
|
|
6958
|
-
|
|
7317
|
+
function Thread(_ref) {
|
|
7318
|
+
var _this = this,
|
|
7319
|
+
_threadData$read,
|
|
7320
|
+
_threadData$reply_cou;
|
|
7321
|
+
|
|
7322
|
+
var client = _ref.client,
|
|
7323
|
+
threadData = _ref.threadData;
|
|
7324
|
+
|
|
6959
7325
|
_classCallCheck__default['default'](this, Thread);
|
|
6960
7326
|
|
|
7327
|
+
_defineProperty__default['default'](this, "state", void 0);
|
|
7328
|
+
|
|
6961
7329
|
_defineProperty__default['default'](this, "id", void 0);
|
|
6962
7330
|
|
|
6963
|
-
_defineProperty__default['default'](this, "
|
|
7331
|
+
_defineProperty__default['default'](this, "client", void 0);
|
|
6964
7332
|
|
|
6965
|
-
_defineProperty__default['default'](this, "
|
|
7333
|
+
_defineProperty__default['default'](this, "unsubscribeFunctions", new Set());
|
|
6966
7334
|
|
|
6967
|
-
_defineProperty__default['default'](this, "
|
|
7335
|
+
_defineProperty__default['default'](this, "failedRepliesMap", new Map());
|
|
6968
7336
|
|
|
6969
|
-
_defineProperty__default['default'](this, "
|
|
7337
|
+
_defineProperty__default['default'](this, "activate", function () {
|
|
7338
|
+
_this.state.partialNext({
|
|
7339
|
+
active: true
|
|
7340
|
+
});
|
|
7341
|
+
});
|
|
6970
7342
|
|
|
6971
|
-
_defineProperty__default['default'](this, "
|
|
7343
|
+
_defineProperty__default['default'](this, "deactivate", function () {
|
|
7344
|
+
_this.state.partialNext({
|
|
7345
|
+
active: false
|
|
7346
|
+
});
|
|
7347
|
+
});
|
|
6972
7348
|
|
|
6973
|
-
_defineProperty__default['default'](this, "
|
|
7349
|
+
_defineProperty__default['default'](this, "reload", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee() {
|
|
7350
|
+
var thread;
|
|
7351
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
7352
|
+
while (1) {
|
|
7353
|
+
switch (_context.prev = _context.next) {
|
|
7354
|
+
case 0:
|
|
7355
|
+
if (!_this.state.getLatestValue().isLoading) {
|
|
7356
|
+
_context.next = 2;
|
|
7357
|
+
break;
|
|
7358
|
+
}
|
|
6974
7359
|
|
|
6975
|
-
|
|
7360
|
+
return _context.abrupt("return");
|
|
6976
7361
|
|
|
6977
|
-
|
|
6978
|
-
|
|
6979
|
-
|
|
6980
|
-
|
|
6981
|
-
var parent_message_id = t.parent_message_id,
|
|
6982
|
-
parent_message = t.parent_message,
|
|
6983
|
-
latest_replies = t.latest_replies,
|
|
6984
|
-
thread_participants = t.thread_participants,
|
|
6985
|
-
reply_count = t.reply_count,
|
|
6986
|
-
channel = t.channel,
|
|
6987
|
-
read = t.read,
|
|
6988
|
-
data = _objectWithoutProperties__default['default'](t, _excluded$1);
|
|
6989
|
-
|
|
6990
|
-
this.id = parent_message_id;
|
|
6991
|
-
this.message = formatMessage(parent_message);
|
|
6992
|
-
this.latestReplies = latest_replies.map(formatMessage);
|
|
6993
|
-
this.participants = thread_participants;
|
|
6994
|
-
this.replyCount = reply_count;
|
|
6995
|
-
this.channel = channel;
|
|
6996
|
-
this._channel = client.channel(t.channel.type, t.channel.id);
|
|
6997
|
-
this._client = client;
|
|
7362
|
+
case 2:
|
|
7363
|
+
_this.state.partialNext({
|
|
7364
|
+
isLoading: true
|
|
7365
|
+
});
|
|
6998
7366
|
|
|
6999
|
-
|
|
7000
|
-
|
|
7001
|
-
|
|
7367
|
+
_context.prev = 3;
|
|
7368
|
+
_context.next = 6;
|
|
7369
|
+
return _this.client.getThread(_this.id, {
|
|
7370
|
+
watch: true
|
|
7371
|
+
});
|
|
7002
7372
|
|
|
7003
|
-
|
|
7004
|
-
|
|
7005
|
-
var r = _step.value;
|
|
7006
|
-
this.read[r.user.id] = _objectSpread$2(_objectSpread$2({}, r), {}, {
|
|
7007
|
-
last_read: new Date(r.last_read)
|
|
7008
|
-
});
|
|
7009
|
-
}
|
|
7010
|
-
} catch (err) {
|
|
7011
|
-
_iterator.e(err);
|
|
7012
|
-
} finally {
|
|
7013
|
-
_iterator.f();
|
|
7014
|
-
}
|
|
7015
|
-
}
|
|
7373
|
+
case 6:
|
|
7374
|
+
thread = _context.sent;
|
|
7016
7375
|
|
|
7017
|
-
|
|
7018
|
-
}
|
|
7376
|
+
_this.hydrateState(thread);
|
|
7019
7377
|
|
|
7020
|
-
|
|
7021
|
-
|
|
7022
|
-
value: function getClient() {
|
|
7023
|
-
return this._client;
|
|
7024
|
-
}
|
|
7025
|
-
/**
|
|
7026
|
-
* addReply - Adds or updates a latestReplies to the thread
|
|
7027
|
-
*
|
|
7028
|
-
* @param {MessageResponse<StreamChatGenerics>} message reply message to be added.
|
|
7029
|
-
*/
|
|
7378
|
+
case 8:
|
|
7379
|
+
_context.prev = 8;
|
|
7030
7380
|
|
|
7031
|
-
|
|
7032
|
-
|
|
7033
|
-
|
|
7034
|
-
if (message.parent_id !== this.message.id) {
|
|
7035
|
-
throw new Error('Message does not belong to this thread');
|
|
7036
|
-
}
|
|
7381
|
+
_this.state.partialNext({
|
|
7382
|
+
isLoading: false
|
|
7383
|
+
});
|
|
7037
7384
|
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
if (m.id === message.id) {
|
|
7045
|
-
return formatMessage(message);
|
|
7385
|
+
return _context.finish(8);
|
|
7386
|
+
|
|
7387
|
+
case 11:
|
|
7388
|
+
case "end":
|
|
7389
|
+
return _context.stop();
|
|
7390
|
+
}
|
|
7046
7391
|
}
|
|
7392
|
+
}, _callee, null, [[3,, 8, 11]]);
|
|
7393
|
+
})));
|
|
7047
7394
|
|
|
7048
|
-
|
|
7049
|
-
|
|
7050
|
-
|
|
7051
|
-
}, {
|
|
7052
|
-
key: "updateMessageOrReplyIfExists",
|
|
7053
|
-
value: function updateMessageOrReplyIfExists(message) {
|
|
7054
|
-
if (!message.parent_id && message.id !== this.message.id) {
|
|
7395
|
+
_defineProperty__default['default'](this, "hydrateState", function (thread) {
|
|
7396
|
+
if (thread === _this) {
|
|
7397
|
+
// skip if the instances are the same
|
|
7055
7398
|
return;
|
|
7056
7399
|
}
|
|
7057
7400
|
|
|
7058
|
-
if (
|
|
7059
|
-
|
|
7401
|
+
if (thread.id !== _this.id) {
|
|
7402
|
+
throw new Error("Cannot hydrate thread state with using thread's state");
|
|
7060
7403
|
}
|
|
7061
7404
|
|
|
7062
|
-
|
|
7063
|
-
|
|
7064
|
-
|
|
7065
|
-
|
|
7405
|
+
var _thread$state$getLate = thread.state.getLatestValue(),
|
|
7406
|
+
read = _thread$state$getLate.read,
|
|
7407
|
+
replyCount = _thread$state$getLate.replyCount,
|
|
7408
|
+
replies = _thread$state$getLate.replies,
|
|
7409
|
+
parentMessage = _thread$state$getLate.parentMessage,
|
|
7410
|
+
participants = _thread$state$getLate.participants,
|
|
7411
|
+
createdAt = _thread$state$getLate.createdAt,
|
|
7412
|
+
deletedAt = _thread$state$getLate.deletedAt,
|
|
7413
|
+
updatedAt = _thread$state$getLate.updatedAt; // Preserve pending replies and append them to the updated list of replies
|
|
7066
7414
|
|
|
7067
|
-
if (!message.parent_id && message.id === this.message.id) {
|
|
7068
|
-
this.message = formatMessage(message);
|
|
7069
|
-
}
|
|
7070
|
-
}
|
|
7071
|
-
}, {
|
|
7072
|
-
key: "addReaction",
|
|
7073
|
-
value: function addReaction(reaction, message, enforce_unique) {
|
|
7074
|
-
var _this = this;
|
|
7075
7415
|
|
|
7076
|
-
|
|
7077
|
-
this.latestReplies = this.latestReplies.map(function (m) {
|
|
7078
|
-
if (m.id === message.id) {
|
|
7079
|
-
return formatMessage(_this._channel.state.addReaction(reaction, message, enforce_unique));
|
|
7080
|
-
}
|
|
7416
|
+
var pendingReplies = Array.from(_this.failedRepliesMap.values());
|
|
7081
7417
|
|
|
7082
|
-
|
|
7418
|
+
_this.state.partialNext({
|
|
7419
|
+
read: read,
|
|
7420
|
+
replyCount: replyCount,
|
|
7421
|
+
replies: pendingReplies.length ? replies.concat(pendingReplies) : replies,
|
|
7422
|
+
parentMessage: parentMessage,
|
|
7423
|
+
participants: participants,
|
|
7424
|
+
createdAt: createdAt,
|
|
7425
|
+
deletedAt: deletedAt,
|
|
7426
|
+
updatedAt: updatedAt,
|
|
7427
|
+
isStateStale: false
|
|
7083
7428
|
});
|
|
7084
|
-
}
|
|
7085
|
-
}, {
|
|
7086
|
-
key: "removeReaction",
|
|
7087
|
-
value: function removeReaction(reaction, message) {
|
|
7088
|
-
var _this2 = this;
|
|
7429
|
+
});
|
|
7089
7430
|
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7094
|
-
|
|
7431
|
+
_defineProperty__default['default'](this, "registerSubscriptions", function () {
|
|
7432
|
+
if (_this.unsubscribeFunctions.size) {
|
|
7433
|
+
// Thread is already listening for events and changes
|
|
7434
|
+
return;
|
|
7435
|
+
}
|
|
7095
7436
|
|
|
7096
|
-
|
|
7097
|
-
});
|
|
7098
|
-
}
|
|
7099
|
-
}]);
|
|
7437
|
+
_this.unsubscribeFunctions.add(_this.subscribeMarkActiveThreadRead());
|
|
7100
7438
|
|
|
7101
|
-
|
|
7102
|
-
}();
|
|
7439
|
+
_this.unsubscribeFunctions.add(_this.subscribeReloadActiveStaleThread());
|
|
7103
7440
|
|
|
7104
|
-
|
|
7441
|
+
_this.unsubscribeFunctions.add(_this.subscribeMarkThreadStale());
|
|
7105
7442
|
|
|
7106
|
-
|
|
7443
|
+
_this.unsubscribeFunctions.add(_this.subscribeNewReplies());
|
|
7444
|
+
|
|
7445
|
+
_this.unsubscribeFunctions.add(_this.subscribeRepliesRead());
|
|
7446
|
+
|
|
7447
|
+
_this.unsubscribeFunctions.add(_this.subscribeReplyDeleted());
|
|
7448
|
+
|
|
7449
|
+
_this.unsubscribeFunctions.add(_this.subscribeMessageUpdated());
|
|
7450
|
+
});
|
|
7451
|
+
|
|
7452
|
+
_defineProperty__default['default'](this, "subscribeMarkActiveThreadRead", function () {
|
|
7453
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
7454
|
+
return [nextValue.active, ownUnreadCountSelector(_this.client.userID)(nextValue)];
|
|
7455
|
+
}, function (_ref3) {
|
|
7456
|
+
var _ref4 = _slicedToArray__default['default'](_ref3, 2),
|
|
7457
|
+
active = _ref4[0],
|
|
7458
|
+
unreadMessageCount = _ref4[1];
|
|
7459
|
+
|
|
7460
|
+
if (!active || !unreadMessageCount) return;
|
|
7461
|
+
|
|
7462
|
+
_this.throttledMarkAsRead();
|
|
7463
|
+
});
|
|
7464
|
+
});
|
|
7465
|
+
|
|
7466
|
+
_defineProperty__default['default'](this, "subscribeReloadActiveStaleThread", function () {
|
|
7467
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
7468
|
+
return [nextValue.active, nextValue.isStateStale];
|
|
7469
|
+
}, function (_ref5) {
|
|
7470
|
+
var _ref6 = _slicedToArray__default['default'](_ref5, 2),
|
|
7471
|
+
active = _ref6[0],
|
|
7472
|
+
isStateStale = _ref6[1];
|
|
7473
|
+
|
|
7474
|
+
if (active && isStateStale) {
|
|
7475
|
+
_this.reload();
|
|
7476
|
+
}
|
|
7477
|
+
});
|
|
7478
|
+
});
|
|
7479
|
+
|
|
7480
|
+
_defineProperty__default['default'](this, "subscribeMarkThreadStale", function () {
|
|
7481
|
+
return _this.client.on('user.watching.stop', function (event) {
|
|
7482
|
+
var _event$user, _event$channel;
|
|
7483
|
+
|
|
7484
|
+
var _this$state$getLatest = _this.state.getLatestValue(),
|
|
7485
|
+
channel = _this$state$getLatest.channel;
|
|
7486
|
+
|
|
7487
|
+
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) {
|
|
7488
|
+
return;
|
|
7489
|
+
}
|
|
7490
|
+
|
|
7491
|
+
_this.state.partialNext({
|
|
7492
|
+
isStateStale: true
|
|
7493
|
+
});
|
|
7494
|
+
}).unsubscribe;
|
|
7495
|
+
});
|
|
7496
|
+
|
|
7497
|
+
_defineProperty__default['default'](this, "subscribeNewReplies", function () {
|
|
7498
|
+
return _this.client.on('message.new', function (event) {
|
|
7499
|
+
var _event$message, _event$message$user;
|
|
7500
|
+
|
|
7501
|
+
if (!_this.client.userID || ((_event$message = event.message) === null || _event$message === void 0 ? void 0 : _event$message.parent_id) !== _this.id) {
|
|
7502
|
+
return;
|
|
7503
|
+
}
|
|
7504
|
+
|
|
7505
|
+
var isOwnMessage = ((_event$message$user = event.message.user) === null || _event$message$user === void 0 ? void 0 : _event$message$user.id) === _this.client.userID;
|
|
7506
|
+
|
|
7507
|
+
var _this$state$getLatest2 = _this.state.getLatestValue(),
|
|
7508
|
+
active = _this$state$getLatest2.active,
|
|
7509
|
+
read = _this$state$getLatest2.read;
|
|
7510
|
+
|
|
7511
|
+
_this.upsertReplyLocally({
|
|
7512
|
+
message: event.message,
|
|
7513
|
+
// Message from current user could have been added optimistically,
|
|
7514
|
+
// so the actual timestamp might differ in the event
|
|
7515
|
+
timestampChanged: isOwnMessage
|
|
7516
|
+
});
|
|
7517
|
+
|
|
7518
|
+
if (active) {
|
|
7519
|
+
_this.throttledMarkAsRead();
|
|
7520
|
+
}
|
|
7521
|
+
|
|
7522
|
+
var nextRead = {};
|
|
7523
|
+
|
|
7524
|
+
for (var _i = 0, _Object$keys = Object.keys(read); _i < _Object$keys.length; _i++) {
|
|
7525
|
+
var userId = _Object$keys[_i];
|
|
7526
|
+
var userRead = read[userId];
|
|
7527
|
+
|
|
7528
|
+
if (userRead) {
|
|
7529
|
+
var _event$user2;
|
|
7530
|
+
|
|
7531
|
+
var nextUserRead = userRead;
|
|
7532
|
+
|
|
7533
|
+
if (userId === ((_event$user2 = event.user) === null || _event$user2 === void 0 ? void 0 : _event$user2.id)) {
|
|
7534
|
+
// The user who just sent a message to the thread has no unread messages
|
|
7535
|
+
// in that thread
|
|
7536
|
+
nextUserRead = _objectSpread$3(_objectSpread$3({}, nextUserRead), {}, {
|
|
7537
|
+
lastReadAt: event.created_at ? new Date(event.created_at) : new Date(),
|
|
7538
|
+
user: event.user,
|
|
7539
|
+
unreadMessageCount: 0
|
|
7540
|
+
});
|
|
7541
|
+
} else if (active && userId === _this.client.userID) ; else {
|
|
7542
|
+
// Increment unread count for all users except the author of the new message
|
|
7543
|
+
nextUserRead = _objectSpread$3(_objectSpread$3({}, nextUserRead), {}, {
|
|
7544
|
+
unreadMessageCount: userRead.unreadMessageCount + 1
|
|
7545
|
+
});
|
|
7546
|
+
}
|
|
7547
|
+
|
|
7548
|
+
nextRead[userId] = nextUserRead;
|
|
7549
|
+
}
|
|
7550
|
+
}
|
|
7551
|
+
|
|
7552
|
+
_this.state.partialNext({
|
|
7553
|
+
read: nextRead
|
|
7554
|
+
});
|
|
7555
|
+
}).unsubscribe;
|
|
7556
|
+
});
|
|
7557
|
+
|
|
7558
|
+
_defineProperty__default['default'](this, "subscribeRepliesRead", function () {
|
|
7559
|
+
return _this.client.on('message.read', function (event) {
|
|
7560
|
+
if (!event.user || !event.created_at || !event.thread) return;
|
|
7561
|
+
if (event.thread.parent_message_id !== _this.id) return;
|
|
7562
|
+
var userId = event.user.id;
|
|
7563
|
+
var createdAt = event.created_at;
|
|
7564
|
+
var user = event.user;
|
|
7565
|
+
|
|
7566
|
+
_this.state.next(function (current) {
|
|
7567
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7568
|
+
read: _objectSpread$3(_objectSpread$3({}, current.read), {}, _defineProperty__default['default']({}, userId, {
|
|
7569
|
+
lastReadAt: new Date(createdAt),
|
|
7570
|
+
user: user,
|
|
7571
|
+
lastReadMessageId: event.last_read_message_id,
|
|
7572
|
+
unreadMessageCount: 0
|
|
7573
|
+
}))
|
|
7574
|
+
});
|
|
7575
|
+
});
|
|
7576
|
+
}).unsubscribe;
|
|
7577
|
+
});
|
|
7578
|
+
|
|
7579
|
+
_defineProperty__default['default'](this, "subscribeReplyDeleted", function () {
|
|
7580
|
+
return _this.client.on('message.deleted', function (event) {
|
|
7581
|
+
var _event$message2;
|
|
7582
|
+
|
|
7583
|
+
if (((_event$message2 = event.message) === null || _event$message2 === void 0 ? void 0 : _event$message2.parent_id) === _this.id && event.hard_delete) {
|
|
7584
|
+
return _this.deleteReplyLocally({
|
|
7585
|
+
message: event.message
|
|
7586
|
+
});
|
|
7587
|
+
}
|
|
7588
|
+
}).unsubscribe;
|
|
7589
|
+
});
|
|
7590
|
+
|
|
7591
|
+
_defineProperty__default['default'](this, "subscribeMessageUpdated", function () {
|
|
7592
|
+
var unsubscribeFunctions = ['message.updated', 'reaction.new', 'reaction.deleted'].map(function (eventType) {
|
|
7593
|
+
return _this.client.on(eventType, function (event) {
|
|
7594
|
+
if (event.message) {
|
|
7595
|
+
_this.updateParentMessageOrReplyLocally(event.message);
|
|
7596
|
+
}
|
|
7597
|
+
}).unsubscribe;
|
|
7598
|
+
});
|
|
7599
|
+
return function () {
|
|
7600
|
+
return unsubscribeFunctions.forEach(function (unsubscribe) {
|
|
7601
|
+
return unsubscribe();
|
|
7602
|
+
});
|
|
7603
|
+
};
|
|
7604
|
+
});
|
|
7605
|
+
|
|
7606
|
+
_defineProperty__default['default'](this, "unregisterSubscriptions", function () {
|
|
7607
|
+
_this.unsubscribeFunctions.forEach(function (cleanupFunction) {
|
|
7608
|
+
return cleanupFunction();
|
|
7609
|
+
});
|
|
7610
|
+
|
|
7611
|
+
_this.unsubscribeFunctions.clear();
|
|
7612
|
+
});
|
|
7613
|
+
|
|
7614
|
+
_defineProperty__default['default'](this, "deleteReplyLocally", function (_ref7) {
|
|
7615
|
+
var _replies$index, _replies;
|
|
7616
|
+
|
|
7617
|
+
var message = _ref7.message;
|
|
7618
|
+
|
|
7619
|
+
var _this$state$getLatest3 = _this.state.getLatestValue(),
|
|
7620
|
+
replies = _this$state$getLatest3.replies;
|
|
7621
|
+
|
|
7622
|
+
var index = findIndexInSortedArray({
|
|
7623
|
+
needle: formatMessage(message),
|
|
7624
|
+
sortedArray: replies,
|
|
7625
|
+
sortDirection: 'ascending',
|
|
7626
|
+
selectValueToCompare: function selectValueToCompare(reply) {
|
|
7627
|
+
return reply.created_at.getTime();
|
|
7628
|
+
}
|
|
7629
|
+
});
|
|
7630
|
+
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;
|
|
7631
|
+
|
|
7632
|
+
if (actualIndex === null) {
|
|
7633
|
+
return;
|
|
7634
|
+
}
|
|
7635
|
+
|
|
7636
|
+
var updatedReplies = _toConsumableArray__default['default'](replies);
|
|
7637
|
+
|
|
7638
|
+
updatedReplies.splice(actualIndex, 1);
|
|
7639
|
+
|
|
7640
|
+
_this.state.partialNext({
|
|
7641
|
+
replies: updatedReplies
|
|
7642
|
+
});
|
|
7643
|
+
});
|
|
7644
|
+
|
|
7645
|
+
_defineProperty__default['default'](this, "upsertReplyLocally", function (_ref8) {
|
|
7646
|
+
var message = _ref8.message,
|
|
7647
|
+
_ref8$timestampChange = _ref8.timestampChanged,
|
|
7648
|
+
timestampChanged = _ref8$timestampChange === void 0 ? false : _ref8$timestampChange;
|
|
7649
|
+
|
|
7650
|
+
if (message.parent_id !== _this.id) {
|
|
7651
|
+
throw new Error('Reply does not belong to this thread');
|
|
7652
|
+
}
|
|
7653
|
+
|
|
7654
|
+
var formattedMessage = formatMessage(message);
|
|
7655
|
+
|
|
7656
|
+
if (message.status === 'failed') {
|
|
7657
|
+
// store failed reply so that it's not lost when reloading or hydrating
|
|
7658
|
+
_this.failedRepliesMap.set(formattedMessage.id, formattedMessage);
|
|
7659
|
+
} else if (_this.failedRepliesMap.has(message.id)) {
|
|
7660
|
+
_this.failedRepliesMap.delete(message.id);
|
|
7661
|
+
}
|
|
7662
|
+
|
|
7663
|
+
_this.state.next(function (current) {
|
|
7664
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7665
|
+
replies: addToMessageList(current.replies, formattedMessage, timestampChanged)
|
|
7666
|
+
});
|
|
7667
|
+
});
|
|
7668
|
+
});
|
|
7669
|
+
|
|
7670
|
+
_defineProperty__default['default'](this, "updateParentMessageLocally", function (message) {
|
|
7671
|
+
if (message.id !== _this.id) {
|
|
7672
|
+
throw new Error('Message does not belong to this thread');
|
|
7673
|
+
}
|
|
7674
|
+
|
|
7675
|
+
_this.state.next(function (current) {
|
|
7676
|
+
var _message$reply_count;
|
|
7677
|
+
|
|
7678
|
+
var formattedMessage = formatMessage(message);
|
|
7679
|
+
|
|
7680
|
+
var newData = _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7681
|
+
deletedAt: formattedMessage.deleted_at,
|
|
7682
|
+
parentMessage: formattedMessage,
|
|
7683
|
+
replyCount: (_message$reply_count = message.reply_count) !== null && _message$reply_count !== void 0 ? _message$reply_count : current.replyCount
|
|
7684
|
+
}); // update channel on channelData change (unlikely but handled anyway)
|
|
7685
|
+
|
|
7686
|
+
|
|
7687
|
+
if (message.channel) {
|
|
7688
|
+
newData['channel'] = _this.client.channel(message.channel.type, message.channel.id, message.channel);
|
|
7689
|
+
}
|
|
7690
|
+
|
|
7691
|
+
return newData;
|
|
7692
|
+
});
|
|
7693
|
+
});
|
|
7694
|
+
|
|
7695
|
+
_defineProperty__default['default'](this, "updateParentMessageOrReplyLocally", function (message) {
|
|
7696
|
+
if (message.parent_id === _this.id) {
|
|
7697
|
+
_this.upsertReplyLocally({
|
|
7698
|
+
message: message
|
|
7699
|
+
});
|
|
7700
|
+
}
|
|
7701
|
+
|
|
7702
|
+
if (!message.parent_id && message.id === _this.id) {
|
|
7703
|
+
_this.updateParentMessageLocally(message);
|
|
7704
|
+
}
|
|
7705
|
+
});
|
|
7706
|
+
|
|
7707
|
+
_defineProperty__default['default'](this, "markAsRead", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2() {
|
|
7708
|
+
var _ref10,
|
|
7709
|
+
_ref10$force,
|
|
7710
|
+
force,
|
|
7711
|
+
_args2 = arguments;
|
|
7712
|
+
|
|
7713
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
7714
|
+
while (1) {
|
|
7715
|
+
switch (_context2.prev = _context2.next) {
|
|
7716
|
+
case 0:
|
|
7717
|
+
_ref10 = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {}, _ref10$force = _ref10.force, force = _ref10$force === void 0 ? false : _ref10$force;
|
|
7718
|
+
|
|
7719
|
+
if (!(_this.ownUnreadCount === 0 && !force)) {
|
|
7720
|
+
_context2.next = 3;
|
|
7721
|
+
break;
|
|
7722
|
+
}
|
|
7723
|
+
|
|
7724
|
+
return _context2.abrupt("return", null);
|
|
7725
|
+
|
|
7726
|
+
case 3:
|
|
7727
|
+
_context2.next = 5;
|
|
7728
|
+
return _this.channel.markRead({
|
|
7729
|
+
thread_id: _this.id
|
|
7730
|
+
});
|
|
7731
|
+
|
|
7732
|
+
case 5:
|
|
7733
|
+
return _context2.abrupt("return", _context2.sent);
|
|
7734
|
+
|
|
7735
|
+
case 6:
|
|
7736
|
+
case "end":
|
|
7737
|
+
return _context2.stop();
|
|
7738
|
+
}
|
|
7739
|
+
}
|
|
7740
|
+
}, _callee2);
|
|
7741
|
+
})));
|
|
7742
|
+
|
|
7743
|
+
_defineProperty__default['default'](this, "throttledMarkAsRead", throttle(function () {
|
|
7744
|
+
return _this.markAsRead();
|
|
7745
|
+
}, MARK_AS_READ_THROTTLE_TIMEOUT, {
|
|
7746
|
+
trailing: true
|
|
7747
|
+
}));
|
|
7748
|
+
|
|
7749
|
+
_defineProperty__default['default'](this, "queryReplies", function () {
|
|
7750
|
+
var _ref11 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7751
|
+
|
|
7752
|
+
var _ref11$limit = _ref11.limit,
|
|
7753
|
+
limit = _ref11$limit === void 0 ? DEFAULT_PAGE_LIMIT : _ref11$limit,
|
|
7754
|
+
_ref11$sort = _ref11.sort,
|
|
7755
|
+
sort = _ref11$sort === void 0 ? DEFAULT_SORT : _ref11$sort,
|
|
7756
|
+
otherOptions = _objectWithoutProperties__default['default'](_ref11, _excluded$1);
|
|
7757
|
+
|
|
7758
|
+
return _this.channel.getReplies(_this.id, _objectSpread$3({
|
|
7759
|
+
limit: limit
|
|
7760
|
+
}, otherOptions), sort);
|
|
7761
|
+
});
|
|
7762
|
+
|
|
7763
|
+
_defineProperty__default['default'](this, "loadNextPage", function () {
|
|
7764
|
+
var _ref12 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
7765
|
+
_ref12$limit = _ref12.limit,
|
|
7766
|
+
limit = _ref12$limit === void 0 ? DEFAULT_PAGE_LIMIT : _ref12$limit;
|
|
7767
|
+
|
|
7768
|
+
return _this.loadPage(limit);
|
|
7769
|
+
});
|
|
7770
|
+
|
|
7771
|
+
_defineProperty__default['default'](this, "loadPrevPage", function () {
|
|
7772
|
+
var _ref13 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
7773
|
+
_ref13$limit = _ref13.limit,
|
|
7774
|
+
limit = _ref13$limit === void 0 ? DEFAULT_PAGE_LIMIT : _ref13$limit;
|
|
7775
|
+
|
|
7776
|
+
return _this.loadPage(-limit);
|
|
7777
|
+
});
|
|
7778
|
+
|
|
7779
|
+
_defineProperty__default['default'](this, "loadPage", /*#__PURE__*/function () {
|
|
7780
|
+
var _ref14 = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(count) {
|
|
7781
|
+
var _this$state$getLatest4, pagination, _ref15, _ref16, loadingKey, cursorKey, insertionMethodKey, queryOptions, limit, _replies$at$id, _replies$at, data, replies, maybeNextCursor;
|
|
7782
|
+
|
|
7783
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
7784
|
+
while (1) {
|
|
7785
|
+
switch (_context3.prev = _context3.next) {
|
|
7786
|
+
case 0:
|
|
7787
|
+
_this$state$getLatest4 = _this.state.getLatestValue(), pagination = _this$state$getLatest4.pagination;
|
|
7788
|
+
_ref15 = count > 0 ? ['isLoadingNext', 'nextCursor', 'push'] : ['isLoadingPrev', 'prevCursor', 'unshift'], _ref16 = _slicedToArray__default['default'](_ref15, 3), loadingKey = _ref16[0], cursorKey = _ref16[1], insertionMethodKey = _ref16[2];
|
|
7789
|
+
|
|
7790
|
+
if (!(pagination[loadingKey] || pagination[cursorKey] === null)) {
|
|
7791
|
+
_context3.next = 4;
|
|
7792
|
+
break;
|
|
7793
|
+
}
|
|
7794
|
+
|
|
7795
|
+
return _context3.abrupt("return");
|
|
7796
|
+
|
|
7797
|
+
case 4:
|
|
7798
|
+
queryOptions = _defineProperty__default['default']({}, count > 0 ? 'id_gt' : 'id_lt', pagination[cursorKey]);
|
|
7799
|
+
limit = Math.abs(count);
|
|
7800
|
+
|
|
7801
|
+
_this.state.partialNext({
|
|
7802
|
+
pagination: _objectSpread$3(_objectSpread$3({}, pagination), {}, _defineProperty__default['default']({}, loadingKey, true))
|
|
7803
|
+
});
|
|
7804
|
+
|
|
7805
|
+
_context3.prev = 7;
|
|
7806
|
+
_context3.next = 10;
|
|
7807
|
+
return _this.queryReplies(_objectSpread$3(_objectSpread$3({}, queryOptions), {}, {
|
|
7808
|
+
limit: limit
|
|
7809
|
+
}));
|
|
7810
|
+
|
|
7811
|
+
case 10:
|
|
7812
|
+
data = _context3.sent;
|
|
7813
|
+
replies = data.messages.map(formatMessage);
|
|
7814
|
+
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;
|
|
7815
|
+
|
|
7816
|
+
_this.state.next(function (current) {
|
|
7817
|
+
var _objectSpread4;
|
|
7818
|
+
|
|
7819
|
+
var nextReplies = current.replies; // prevent re-creating array if there's nothing to add to the current one
|
|
7820
|
+
|
|
7821
|
+
if (replies.length > 0) {
|
|
7822
|
+
var _nextReplies;
|
|
7823
|
+
|
|
7824
|
+
nextReplies = _toConsumableArray__default['default'](current.replies);
|
|
7825
|
+
|
|
7826
|
+
(_nextReplies = nextReplies)[insertionMethodKey].apply(_nextReplies, _toConsumableArray__default['default'](replies));
|
|
7827
|
+
}
|
|
7828
|
+
|
|
7829
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7830
|
+
replies: nextReplies,
|
|
7831
|
+
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))
|
|
7832
|
+
});
|
|
7833
|
+
});
|
|
7834
|
+
|
|
7835
|
+
_context3.next = 20;
|
|
7836
|
+
break;
|
|
7837
|
+
|
|
7838
|
+
case 16:
|
|
7839
|
+
_context3.prev = 16;
|
|
7840
|
+
_context3.t0 = _context3["catch"](7);
|
|
7841
|
+
|
|
7842
|
+
_this.client.logger('error', _context3.t0.message);
|
|
7843
|
+
|
|
7844
|
+
_this.state.next(function (current) {
|
|
7845
|
+
return _objectSpread$3(_objectSpread$3({}, current), {}, {
|
|
7846
|
+
pagination: _objectSpread$3(_objectSpread$3({}, current.pagination), {}, _defineProperty__default['default']({}, loadingKey, false))
|
|
7847
|
+
});
|
|
7848
|
+
});
|
|
7849
|
+
|
|
7850
|
+
case 20:
|
|
7851
|
+
case "end":
|
|
7852
|
+
return _context3.stop();
|
|
7853
|
+
}
|
|
7854
|
+
}
|
|
7855
|
+
}, _callee3, null, [[7, 16]]);
|
|
7856
|
+
}));
|
|
7857
|
+
|
|
7858
|
+
return function (_x) {
|
|
7859
|
+
return _ref14.apply(this, arguments);
|
|
7860
|
+
};
|
|
7861
|
+
}());
|
|
7862
|
+
|
|
7863
|
+
this.state = new StateStore({
|
|
7864
|
+
active: false,
|
|
7865
|
+
channel: client.channel(threadData.channel.type, threadData.channel.id),
|
|
7866
|
+
createdAt: new Date(threadData.created_at),
|
|
7867
|
+
deletedAt: threadData.deleted_at ? new Date(threadData.deleted_at) : null,
|
|
7868
|
+
isLoading: false,
|
|
7869
|
+
isStateStale: false,
|
|
7870
|
+
pagination: repliesPaginationFromInitialThread(threadData),
|
|
7871
|
+
parentMessage: formatMessage(threadData.parent_message),
|
|
7872
|
+
participants: threadData.thread_participants,
|
|
7873
|
+
read: formatReadState((_threadData$read = threadData.read) !== null && _threadData$read !== void 0 ? _threadData$read : []),
|
|
7874
|
+
replies: threadData.latest_replies.map(formatMessage),
|
|
7875
|
+
replyCount: (_threadData$reply_cou = threadData.reply_count) !== null && _threadData$reply_cou !== void 0 ? _threadData$reply_cou : 0,
|
|
7876
|
+
updatedAt: threadData.updated_at ? new Date(threadData.updated_at) : null
|
|
7877
|
+
});
|
|
7878
|
+
this.id = threadData.parent_message_id;
|
|
7879
|
+
this.client = client;
|
|
7880
|
+
}
|
|
7881
|
+
|
|
7882
|
+
_createClass__default['default'](Thread, [{
|
|
7883
|
+
key: "channel",
|
|
7884
|
+
get: function get() {
|
|
7885
|
+
return this.state.getLatestValue().channel;
|
|
7886
|
+
}
|
|
7887
|
+
}, {
|
|
7888
|
+
key: "hasStaleState",
|
|
7889
|
+
get: function get() {
|
|
7890
|
+
return this.state.getLatestValue().isStateStale;
|
|
7891
|
+
}
|
|
7892
|
+
}, {
|
|
7893
|
+
key: "ownUnreadCount",
|
|
7894
|
+
get: function get() {
|
|
7895
|
+
return ownUnreadCountSelector(this.client.userID)(this.state.getLatestValue());
|
|
7896
|
+
}
|
|
7897
|
+
}]);
|
|
7898
|
+
|
|
7899
|
+
return Thread;
|
|
7900
|
+
}();
|
|
7901
|
+
|
|
7902
|
+
var formatReadState = function formatReadState(read) {
|
|
7903
|
+
return read.reduce(function (state, userRead) {
|
|
7904
|
+
var _userRead$unread_mess;
|
|
7905
|
+
|
|
7906
|
+
state[userRead.user.id] = {
|
|
7907
|
+
user: userRead.user,
|
|
7908
|
+
lastReadMessageId: userRead.last_read_message_id,
|
|
7909
|
+
unreadMessageCount: (_userRead$unread_mess = userRead.unread_messages) !== null && _userRead$unread_mess !== void 0 ? _userRead$unread_mess : 0,
|
|
7910
|
+
lastReadAt: new Date(userRead.last_read)
|
|
7911
|
+
};
|
|
7912
|
+
return state;
|
|
7913
|
+
}, {});
|
|
7914
|
+
};
|
|
7915
|
+
|
|
7916
|
+
var repliesPaginationFromInitialThread = function repliesPaginationFromInitialThread(thread) {
|
|
7917
|
+
var _thread$latest_replie, _thread$latest_replie2;
|
|
7918
|
+
|
|
7919
|
+
var latestRepliesContainsAllReplies = thread.latest_replies.length === thread.reply_count;
|
|
7920
|
+
return {
|
|
7921
|
+
nextCursor: null,
|
|
7922
|
+
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,
|
|
7923
|
+
isLoadingNext: false,
|
|
7924
|
+
isLoadingPrev: false
|
|
7925
|
+
};
|
|
7926
|
+
};
|
|
7927
|
+
|
|
7928
|
+
var ownUnreadCountSelector = function ownUnreadCountSelector(currentUserId) {
|
|
7929
|
+
return function (state) {
|
|
7930
|
+
var _state$read$currentUs;
|
|
7931
|
+
|
|
7932
|
+
return currentUserId && ((_state$read$currentUs = state.read[currentUserId]) === null || _state$read$currentUs === void 0 ? void 0 : _state$read$currentUs.unreadMessageCount) || 0;
|
|
7933
|
+
};
|
|
7934
|
+
};
|
|
7935
|
+
|
|
7936
|
+
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; }
|
|
7937
|
+
|
|
7938
|
+
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; }
|
|
7107
7939
|
var MODERATION_ENTITY_TYPES = {
|
|
7108
7940
|
user: 'stream:user',
|
|
7109
7941
|
message: 'stream:chat:v1:message'
|
|
@@ -7220,7 +8052,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7220
8052
|
case 0:
|
|
7221
8053
|
options = _args3.length > 4 && _args3[4] !== undefined ? _args3[4] : {};
|
|
7222
8054
|
_context3.next = 3;
|
|
7223
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/flag', _objectSpread$
|
|
8055
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/flag', _objectSpread$2({
|
|
7224
8056
|
entity_type: entityType,
|
|
7225
8057
|
entity_id: entityId,
|
|
7226
8058
|
entity_creator_id: entityCreatorID,
|
|
@@ -7265,7 +8097,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7265
8097
|
case 0:
|
|
7266
8098
|
options = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {};
|
|
7267
8099
|
_context4.next = 3;
|
|
7268
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/mute', _objectSpread$
|
|
8100
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/mute', _objectSpread$2({
|
|
7269
8101
|
target_ids: [targetID]
|
|
7270
8102
|
}, options));
|
|
7271
8103
|
|
|
@@ -7303,7 +8135,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7303
8135
|
switch (_context5.prev = _context5.next) {
|
|
7304
8136
|
case 0:
|
|
7305
8137
|
_context5.next = 2;
|
|
7306
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/unmute', _objectSpread$
|
|
8138
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/unmute', _objectSpread$2({
|
|
7307
8139
|
target_ids: [targetID]
|
|
7308
8140
|
}, options));
|
|
7309
8141
|
|
|
@@ -7345,7 +8177,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7345
8177
|
case 0:
|
|
7346
8178
|
options = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : {};
|
|
7347
8179
|
_context6.next = 3;
|
|
7348
|
-
return this.client.get(this.client.baseURL + "/api/v2/moderation/user_report", _objectSpread$
|
|
8180
|
+
return this.client.get(this.client.baseURL + "/api/v2/moderation/user_report", _objectSpread$2({
|
|
7349
8181
|
user_id: userID
|
|
7350
8182
|
}, options));
|
|
7351
8183
|
|
|
@@ -7389,7 +8221,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7389
8221
|
sort = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : [];
|
|
7390
8222
|
options = _args7.length > 2 && _args7[2] !== undefined ? _args7[2] : {};
|
|
7391
8223
|
_context7.next = 5;
|
|
7392
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/review_queue', _objectSpread$
|
|
8224
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/review_queue', _objectSpread$2({
|
|
7393
8225
|
filter: filterConditions,
|
|
7394
8226
|
sort: normalizeQuerySort(sort)
|
|
7395
8227
|
}, options));
|
|
@@ -7492,7 +8324,7 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7492
8324
|
case 0:
|
|
7493
8325
|
options = _args10.length > 2 && _args10[2] !== undefined ? _args10[2] : {};
|
|
7494
8326
|
_context10.next = 3;
|
|
7495
|
-
return this.client.post(this.client.baseURL + '/api/v2/moderation/submit_action', _objectSpread$
|
|
8327
|
+
return this.client.post(this.client.baseURL + '/api/v2/moderation/submit_action', _objectSpread$2({
|
|
7496
8328
|
action_type: actionType,
|
|
7497
8329
|
item_id: itemID
|
|
7498
8330
|
}, options));
|
|
@@ -7519,6 +8351,454 @@ var Moderation = /*#__PURE__*/function () {
|
|
|
7519
8351
|
return Moderation;
|
|
7520
8352
|
}();
|
|
7521
8353
|
|
|
8354
|
+
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; } } }; }
|
|
8355
|
+
|
|
8356
|
+
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); }
|
|
8357
|
+
|
|
8358
|
+
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; }
|
|
8359
|
+
|
|
8360
|
+
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; }
|
|
8361
|
+
|
|
8362
|
+
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; }
|
|
8363
|
+
var DEFAULT_CONNECTION_RECOVERY_THROTTLE_DURATION = 1000;
|
|
8364
|
+
var MAX_QUERY_THREADS_LIMIT = 25;
|
|
8365
|
+
var ThreadManager = /*#__PURE__*/function () {
|
|
8366
|
+
function ThreadManager(_ref) {
|
|
8367
|
+
var _this = this;
|
|
8368
|
+
|
|
8369
|
+
var client = _ref.client;
|
|
8370
|
+
|
|
8371
|
+
_classCallCheck__default['default'](this, ThreadManager);
|
|
8372
|
+
|
|
8373
|
+
_defineProperty__default['default'](this, "state", void 0);
|
|
8374
|
+
|
|
8375
|
+
_defineProperty__default['default'](this, "client", void 0);
|
|
8376
|
+
|
|
8377
|
+
_defineProperty__default['default'](this, "unsubscribeFunctions", new Set());
|
|
8378
|
+
|
|
8379
|
+
_defineProperty__default['default'](this, "threadsByIdGetterCache", void 0);
|
|
8380
|
+
|
|
8381
|
+
_defineProperty__default['default'](this, "activate", function () {
|
|
8382
|
+
_this.state.partialNext({
|
|
8383
|
+
active: true
|
|
8384
|
+
});
|
|
8385
|
+
});
|
|
8386
|
+
|
|
8387
|
+
_defineProperty__default['default'](this, "deactivate", function () {
|
|
8388
|
+
_this.state.partialNext({
|
|
8389
|
+
active: false
|
|
8390
|
+
});
|
|
8391
|
+
});
|
|
8392
|
+
|
|
8393
|
+
_defineProperty__default['default'](this, "registerSubscriptions", function () {
|
|
8394
|
+
if (_this.unsubscribeFunctions.size) return;
|
|
8395
|
+
|
|
8396
|
+
_this.unsubscribeFunctions.add(_this.subscribeUnreadThreadsCountChange());
|
|
8397
|
+
|
|
8398
|
+
_this.unsubscribeFunctions.add(_this.subscribeManageThreadSubscriptions());
|
|
8399
|
+
|
|
8400
|
+
_this.unsubscribeFunctions.add(_this.subscribeReloadOnActivation());
|
|
8401
|
+
|
|
8402
|
+
_this.unsubscribeFunctions.add(_this.subscribeNewReplies());
|
|
8403
|
+
|
|
8404
|
+
_this.unsubscribeFunctions.add(_this.subscribeRecoverAfterConnectionDrop());
|
|
8405
|
+
});
|
|
8406
|
+
|
|
8407
|
+
_defineProperty__default['default'](this, "subscribeUnreadThreadsCountChange", function () {
|
|
8408
|
+
var _ref3;
|
|
8409
|
+
|
|
8410
|
+
// initiate
|
|
8411
|
+
var _ref2 = (_ref3 = _this.client.user) !== null && _ref3 !== void 0 ? _ref3 : {},
|
|
8412
|
+
_ref2$unread_threads = _ref2.unread_threads,
|
|
8413
|
+
unreadThreadCount = _ref2$unread_threads === void 0 ? 0 : _ref2$unread_threads;
|
|
8414
|
+
|
|
8415
|
+
_this.state.partialNext({
|
|
8416
|
+
unreadThreadCount: unreadThreadCount
|
|
8417
|
+
});
|
|
8418
|
+
|
|
8419
|
+
var unsubscribeFunctions = ['health.check', 'notification.mark_read', 'notification.thread_message_new', 'notification.channel_deleted'].map(function (eventType) {
|
|
8420
|
+
return _this.client.on(eventType, function (event) {
|
|
8421
|
+
var _event$me;
|
|
8422
|
+
|
|
8423
|
+
var _ref4 = (_event$me = event.me) !== null && _event$me !== void 0 ? _event$me : event,
|
|
8424
|
+
unreadThreadCount = _ref4.unread_threads;
|
|
8425
|
+
|
|
8426
|
+
if (typeof unreadThreadCount === 'number') {
|
|
8427
|
+
_this.state.partialNext({
|
|
8428
|
+
unreadThreadCount: unreadThreadCount
|
|
8429
|
+
});
|
|
8430
|
+
}
|
|
8431
|
+
}).unsubscribe;
|
|
8432
|
+
});
|
|
8433
|
+
return function () {
|
|
8434
|
+
return unsubscribeFunctions.forEach(function (unsubscribe) {
|
|
8435
|
+
return unsubscribe();
|
|
8436
|
+
});
|
|
8437
|
+
};
|
|
8438
|
+
});
|
|
8439
|
+
|
|
8440
|
+
_defineProperty__default['default'](this, "subscribeManageThreadSubscriptions", function () {
|
|
8441
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
8442
|
+
return [nextValue.threads];
|
|
8443
|
+
}, function (_ref5, prev) {
|
|
8444
|
+
var _ref6 = _slicedToArray__default['default'](_ref5, 1),
|
|
8445
|
+
nextThreads = _ref6[0];
|
|
8446
|
+
|
|
8447
|
+
var _ref7 = prev !== null && prev !== void 0 ? prev : [],
|
|
8448
|
+
_ref8 = _slicedToArray__default['default'](_ref7, 1),
|
|
8449
|
+
_ref8$ = _ref8[0],
|
|
8450
|
+
prevThreads = _ref8$ === void 0 ? [] : _ref8$; // Thread instance was removed if there's no thread with the given id at all,
|
|
8451
|
+
// or it was replaced with a new instance
|
|
8452
|
+
|
|
8453
|
+
|
|
8454
|
+
var removedThreads = prevThreads.filter(function (thread) {
|
|
8455
|
+
return thread !== _this.threadsById[thread.id];
|
|
8456
|
+
});
|
|
8457
|
+
nextThreads.forEach(function (thread) {
|
|
8458
|
+
return thread.registerSubscriptions();
|
|
8459
|
+
});
|
|
8460
|
+
removedThreads.forEach(function (thread) {
|
|
8461
|
+
return thread.unregisterSubscriptions();
|
|
8462
|
+
});
|
|
8463
|
+
});
|
|
8464
|
+
});
|
|
8465
|
+
|
|
8466
|
+
_defineProperty__default['default'](this, "subscribeReloadOnActivation", function () {
|
|
8467
|
+
return _this.state.subscribeWithSelector(function (nextValue) {
|
|
8468
|
+
return [nextValue.active];
|
|
8469
|
+
}, function (_ref9) {
|
|
8470
|
+
var _ref10 = _slicedToArray__default['default'](_ref9, 1),
|
|
8471
|
+
active = _ref10[0];
|
|
8472
|
+
|
|
8473
|
+
if (active) _this.reload();
|
|
8474
|
+
});
|
|
8475
|
+
});
|
|
8476
|
+
|
|
8477
|
+
_defineProperty__default['default'](this, "subscribeNewReplies", function () {
|
|
8478
|
+
return _this.client.on('notification.thread_message_new', function (event) {
|
|
8479
|
+
var _event$message;
|
|
8480
|
+
|
|
8481
|
+
var parentId = (_event$message = event.message) === null || _event$message === void 0 ? void 0 : _event$message.parent_id;
|
|
8482
|
+
if (!parentId) return;
|
|
8483
|
+
|
|
8484
|
+
var _this$state$getLatest = _this.state.getLatestValue(),
|
|
8485
|
+
unseenThreadIds = _this$state$getLatest.unseenThreadIds,
|
|
8486
|
+
ready = _this$state$getLatest.ready;
|
|
8487
|
+
|
|
8488
|
+
if (!ready) return;
|
|
8489
|
+
|
|
8490
|
+
if (_this.threadsById[parentId]) {
|
|
8491
|
+
_this.state.partialNext({
|
|
8492
|
+
isThreadOrderStale: true
|
|
8493
|
+
});
|
|
8494
|
+
} else if (!unseenThreadIds.includes(parentId)) {
|
|
8495
|
+
_this.state.partialNext({
|
|
8496
|
+
unseenThreadIds: unseenThreadIds.concat(parentId)
|
|
8497
|
+
});
|
|
8498
|
+
}
|
|
8499
|
+
}).unsubscribe;
|
|
8500
|
+
});
|
|
8501
|
+
|
|
8502
|
+
_defineProperty__default['default'](this, "subscribeRecoverAfterConnectionDrop", function () {
|
|
8503
|
+
var unsubscribeConnectionDropped = _this.client.on('connection.changed', function (event) {
|
|
8504
|
+
if (event.online === false) {
|
|
8505
|
+
_this.state.next(function (current) {
|
|
8506
|
+
return current.lastConnectionDropAt ? current : _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8507
|
+
lastConnectionDropAt: new Date()
|
|
8508
|
+
});
|
|
8509
|
+
});
|
|
8510
|
+
}
|
|
8511
|
+
}).unsubscribe;
|
|
8512
|
+
|
|
8513
|
+
var throttledHandleConnectionRecovered = throttle(function () {
|
|
8514
|
+
var _this$state$getLatest2 = _this.state.getLatestValue(),
|
|
8515
|
+
lastConnectionDropAt = _this$state$getLatest2.lastConnectionDropAt;
|
|
8516
|
+
|
|
8517
|
+
if (!lastConnectionDropAt) return;
|
|
8518
|
+
|
|
8519
|
+
_this.reload({
|
|
8520
|
+
force: true
|
|
8521
|
+
});
|
|
8522
|
+
}, DEFAULT_CONNECTION_RECOVERY_THROTTLE_DURATION, {
|
|
8523
|
+
trailing: true
|
|
8524
|
+
});
|
|
8525
|
+
|
|
8526
|
+
var unsubscribeConnectionRecovered = _this.client.on('connection.recovered', throttledHandleConnectionRecovered).unsubscribe;
|
|
8527
|
+
|
|
8528
|
+
return function () {
|
|
8529
|
+
unsubscribeConnectionDropped();
|
|
8530
|
+
unsubscribeConnectionRecovered();
|
|
8531
|
+
};
|
|
8532
|
+
});
|
|
8533
|
+
|
|
8534
|
+
_defineProperty__default['default'](this, "unregisterSubscriptions", function () {
|
|
8535
|
+
_this.state.getLatestValue().threads.forEach(function (thread) {
|
|
8536
|
+
return thread.unregisterSubscriptions();
|
|
8537
|
+
});
|
|
8538
|
+
|
|
8539
|
+
_this.unsubscribeFunctions.forEach(function (cleanupFunction) {
|
|
8540
|
+
return cleanupFunction();
|
|
8541
|
+
});
|
|
8542
|
+
|
|
8543
|
+
_this.unsubscribeFunctions.clear();
|
|
8544
|
+
});
|
|
8545
|
+
|
|
8546
|
+
_defineProperty__default['default'](this, "reload", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee() {
|
|
8547
|
+
var _ref12,
|
|
8548
|
+
_ref12$force,
|
|
8549
|
+
force,
|
|
8550
|
+
_this$state$getLatest3,
|
|
8551
|
+
threads,
|
|
8552
|
+
unseenThreadIds,
|
|
8553
|
+
isThreadOrderStale,
|
|
8554
|
+
pagination,
|
|
8555
|
+
ready,
|
|
8556
|
+
limit,
|
|
8557
|
+
response,
|
|
8558
|
+
currentThreads,
|
|
8559
|
+
nextThreads,
|
|
8560
|
+
_iterator,
|
|
8561
|
+
_step,
|
|
8562
|
+
incomingThread,
|
|
8563
|
+
existingThread,
|
|
8564
|
+
_args = arguments;
|
|
8565
|
+
|
|
8566
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
8567
|
+
while (1) {
|
|
8568
|
+
switch (_context.prev = _context.next) {
|
|
8569
|
+
case 0:
|
|
8570
|
+
_ref12 = _args.length > 0 && _args[0] !== undefined ? _args[0] : {}, _ref12$force = _ref12.force, force = _ref12$force === void 0 ? false : _ref12$force;
|
|
8571
|
+
_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;
|
|
8572
|
+
|
|
8573
|
+
if (!pagination.isLoading) {
|
|
8574
|
+
_context.next = 4;
|
|
8575
|
+
break;
|
|
8576
|
+
}
|
|
8577
|
+
|
|
8578
|
+
return _context.abrupt("return");
|
|
8579
|
+
|
|
8580
|
+
case 4:
|
|
8581
|
+
if (!(!force && ready && !unseenThreadIds.length && !isThreadOrderStale)) {
|
|
8582
|
+
_context.next = 6;
|
|
8583
|
+
break;
|
|
8584
|
+
}
|
|
8585
|
+
|
|
8586
|
+
return _context.abrupt("return");
|
|
8587
|
+
|
|
8588
|
+
case 6:
|
|
8589
|
+
limit = threads.length + unseenThreadIds.length;
|
|
8590
|
+
_context.prev = 7;
|
|
8591
|
+
|
|
8592
|
+
_this.state.next(function (current) {
|
|
8593
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8594
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8595
|
+
isLoading: true
|
|
8596
|
+
})
|
|
8597
|
+
});
|
|
8598
|
+
});
|
|
8599
|
+
|
|
8600
|
+
_context.next = 11;
|
|
8601
|
+
return _this.queryThreads({
|
|
8602
|
+
limit: Math.min(limit, MAX_QUERY_THREADS_LIMIT)
|
|
8603
|
+
});
|
|
8604
|
+
|
|
8605
|
+
case 11:
|
|
8606
|
+
response = _context.sent;
|
|
8607
|
+
currentThreads = _this.threadsById;
|
|
8608
|
+
nextThreads = [];
|
|
8609
|
+
_iterator = _createForOfIteratorHelper$1(response.threads);
|
|
8610
|
+
|
|
8611
|
+
try {
|
|
8612
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
8613
|
+
incomingThread = _step.value;
|
|
8614
|
+
existingThread = currentThreads[incomingThread.id];
|
|
8615
|
+
|
|
8616
|
+
if (existingThread) {
|
|
8617
|
+
// Reuse thread instances if possible
|
|
8618
|
+
nextThreads.push(existingThread);
|
|
8619
|
+
|
|
8620
|
+
if (existingThread.hasStaleState) {
|
|
8621
|
+
existingThread.hydrateState(incomingThread);
|
|
8622
|
+
}
|
|
8623
|
+
} else {
|
|
8624
|
+
nextThreads.push(incomingThread);
|
|
8625
|
+
}
|
|
8626
|
+
}
|
|
8627
|
+
} catch (err) {
|
|
8628
|
+
_iterator.e(err);
|
|
8629
|
+
} finally {
|
|
8630
|
+
_iterator.f();
|
|
8631
|
+
}
|
|
8632
|
+
|
|
8633
|
+
_this.state.next(function (current) {
|
|
8634
|
+
var _response$next;
|
|
8635
|
+
|
|
8636
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8637
|
+
threads: nextThreads,
|
|
8638
|
+
unseenThreadIds: [],
|
|
8639
|
+
isThreadOrderStale: false,
|
|
8640
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8641
|
+
isLoading: false,
|
|
8642
|
+
nextCursor: (_response$next = response.next) !== null && _response$next !== void 0 ? _response$next : null
|
|
8643
|
+
}),
|
|
8644
|
+
ready: true
|
|
8645
|
+
});
|
|
8646
|
+
});
|
|
8647
|
+
|
|
8648
|
+
_context.next = 23;
|
|
8649
|
+
break;
|
|
8650
|
+
|
|
8651
|
+
case 19:
|
|
8652
|
+
_context.prev = 19;
|
|
8653
|
+
_context.t0 = _context["catch"](7);
|
|
8654
|
+
|
|
8655
|
+
_this.client.logger('error', _context.t0.message);
|
|
8656
|
+
|
|
8657
|
+
_this.state.next(function (current) {
|
|
8658
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8659
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8660
|
+
isLoading: false
|
|
8661
|
+
})
|
|
8662
|
+
});
|
|
8663
|
+
});
|
|
8664
|
+
|
|
8665
|
+
case 23:
|
|
8666
|
+
case "end":
|
|
8667
|
+
return _context.stop();
|
|
8668
|
+
}
|
|
8669
|
+
}
|
|
8670
|
+
}, _callee, null, [[7, 19]]);
|
|
8671
|
+
})));
|
|
8672
|
+
|
|
8673
|
+
_defineProperty__default['default'](this, "queryThreads", function () {
|
|
8674
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
8675
|
+
return _this.client.queryThreads(_objectSpread$1({
|
|
8676
|
+
limit: 25,
|
|
8677
|
+
participant_limit: 10,
|
|
8678
|
+
reply_limit: 10,
|
|
8679
|
+
watch: true
|
|
8680
|
+
}, options));
|
|
8681
|
+
});
|
|
8682
|
+
|
|
8683
|
+
_defineProperty__default['default'](this, "loadNextPage", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2() {
|
|
8684
|
+
var options,
|
|
8685
|
+
_this$state$getLatest4,
|
|
8686
|
+
pagination,
|
|
8687
|
+
response,
|
|
8688
|
+
_args2 = arguments;
|
|
8689
|
+
|
|
8690
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
8691
|
+
while (1) {
|
|
8692
|
+
switch (_context2.prev = _context2.next) {
|
|
8693
|
+
case 0:
|
|
8694
|
+
options = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {};
|
|
8695
|
+
_this$state$getLatest4 = _this.state.getLatestValue(), pagination = _this$state$getLatest4.pagination;
|
|
8696
|
+
|
|
8697
|
+
if (!(pagination.isLoadingNext || !pagination.nextCursor)) {
|
|
8698
|
+
_context2.next = 4;
|
|
8699
|
+
break;
|
|
8700
|
+
}
|
|
8701
|
+
|
|
8702
|
+
return _context2.abrupt("return");
|
|
8703
|
+
|
|
8704
|
+
case 4:
|
|
8705
|
+
_context2.prev = 4;
|
|
8706
|
+
|
|
8707
|
+
_this.state.partialNext({
|
|
8708
|
+
pagination: _objectSpread$1(_objectSpread$1({}, pagination), {}, {
|
|
8709
|
+
isLoadingNext: true
|
|
8710
|
+
})
|
|
8711
|
+
});
|
|
8712
|
+
|
|
8713
|
+
_context2.next = 8;
|
|
8714
|
+
return _this.queryThreads(_objectSpread$1(_objectSpread$1({}, options), {}, {
|
|
8715
|
+
next: pagination.nextCursor
|
|
8716
|
+
}));
|
|
8717
|
+
|
|
8718
|
+
case 8:
|
|
8719
|
+
response = _context2.sent;
|
|
8720
|
+
|
|
8721
|
+
_this.state.next(function (current) {
|
|
8722
|
+
var _response$next2;
|
|
8723
|
+
|
|
8724
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8725
|
+
threads: response.threads.length ? current.threads.concat(response.threads) : current.threads,
|
|
8726
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8727
|
+
nextCursor: (_response$next2 = response.next) !== null && _response$next2 !== void 0 ? _response$next2 : null,
|
|
8728
|
+
isLoadingNext: false
|
|
8729
|
+
})
|
|
8730
|
+
});
|
|
8731
|
+
});
|
|
8732
|
+
|
|
8733
|
+
_context2.next = 16;
|
|
8734
|
+
break;
|
|
8735
|
+
|
|
8736
|
+
case 12:
|
|
8737
|
+
_context2.prev = 12;
|
|
8738
|
+
_context2.t0 = _context2["catch"](4);
|
|
8739
|
+
|
|
8740
|
+
_this.client.logger('error', _context2.t0.message);
|
|
8741
|
+
|
|
8742
|
+
_this.state.next(function (current) {
|
|
8743
|
+
return _objectSpread$1(_objectSpread$1({}, current), {}, {
|
|
8744
|
+
pagination: _objectSpread$1(_objectSpread$1({}, current.pagination), {}, {
|
|
8745
|
+
isLoadingNext: false
|
|
8746
|
+
})
|
|
8747
|
+
});
|
|
8748
|
+
});
|
|
8749
|
+
|
|
8750
|
+
case 16:
|
|
8751
|
+
case "end":
|
|
8752
|
+
return _context2.stop();
|
|
8753
|
+
}
|
|
8754
|
+
}
|
|
8755
|
+
}, _callee2, null, [[4, 12]]);
|
|
8756
|
+
})));
|
|
8757
|
+
|
|
8758
|
+
this.client = client;
|
|
8759
|
+
this.state = new StateStore({
|
|
8760
|
+
active: false,
|
|
8761
|
+
isThreadOrderStale: false,
|
|
8762
|
+
threads: [],
|
|
8763
|
+
unreadThreadCount: 0,
|
|
8764
|
+
unseenThreadIds: [],
|
|
8765
|
+
lastConnectionDropAt: null,
|
|
8766
|
+
pagination: {
|
|
8767
|
+
isLoading: false,
|
|
8768
|
+
isLoadingNext: false,
|
|
8769
|
+
nextCursor: null
|
|
8770
|
+
},
|
|
8771
|
+
ready: false
|
|
8772
|
+
});
|
|
8773
|
+
this.threadsByIdGetterCache = {
|
|
8774
|
+
threads: [],
|
|
8775
|
+
threadsById: {}
|
|
8776
|
+
};
|
|
8777
|
+
}
|
|
8778
|
+
|
|
8779
|
+
_createClass__default['default'](ThreadManager, [{
|
|
8780
|
+
key: "threadsById",
|
|
8781
|
+
get: function get() {
|
|
8782
|
+
var _this$state$getLatest5 = this.state.getLatestValue(),
|
|
8783
|
+
threads = _this$state$getLatest5.threads;
|
|
8784
|
+
|
|
8785
|
+
if (threads === this.threadsByIdGetterCache.threads) {
|
|
8786
|
+
return this.threadsByIdGetterCache.threadsById;
|
|
8787
|
+
}
|
|
8788
|
+
|
|
8789
|
+
var threadsById = threads.reduce(function (newThreadsById, thread) {
|
|
8790
|
+
newThreadsById[thread.id] = thread;
|
|
8791
|
+
return newThreadsById;
|
|
8792
|
+
}, {});
|
|
8793
|
+
this.threadsByIdGetterCache.threads = threads;
|
|
8794
|
+
this.threadsByIdGetterCache.threadsById = threadsById;
|
|
8795
|
+
return threadsById;
|
|
8796
|
+
}
|
|
8797
|
+
}]);
|
|
8798
|
+
|
|
8799
|
+
return ThreadManager;
|
|
8800
|
+
}();
|
|
8801
|
+
|
|
7522
8802
|
var _excluded = ["created_at", "updated_at", "last_active", "online"],
|
|
7523
8803
|
_excluded2 = ["params", "headers"];
|
|
7524
8804
|
|
|
@@ -7547,6 +8827,8 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
7547
8827
|
|
|
7548
8828
|
_defineProperty__default['default'](this, "activeChannels", void 0);
|
|
7549
8829
|
|
|
8830
|
+
_defineProperty__default['default'](this, "threads", void 0);
|
|
8831
|
+
|
|
7550
8832
|
_defineProperty__default['default'](this, "anonymous", void 0);
|
|
7551
8833
|
|
|
7552
8834
|
_defineProperty__default['default'](this, "persistUserOnConnectionFailure", void 0);
|
|
@@ -7778,7 +9060,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
7778
9060
|
tags: ['connection', 'client']
|
|
7779
9061
|
});
|
|
7780
9062
|
|
|
7781
|
-
return _context3.abrupt("return"
|
|
9063
|
+
return _context3.abrupt("return");
|
|
7782
9064
|
|
|
7783
9065
|
case 8:
|
|
7784
9066
|
_this.clientID = "".concat(_this.userID, "--").concat(randomId());
|
|
@@ -8386,8 +9668,8 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
8386
9668
|
this.tokenManager = new TokenManager(this.secret);
|
|
8387
9669
|
this.consecutiveFailures = 0;
|
|
8388
9670
|
this.insightMetrics = new InsightMetrics();
|
|
8389
|
-
this.defaultWSTimeoutWithFallback =
|
|
8390
|
-
this.defaultWSTimeout =
|
|
9671
|
+
this.defaultWSTimeoutWithFallback = 6 * 1000;
|
|
9672
|
+
this.defaultWSTimeout = 15 * 1000;
|
|
8391
9673
|
this.axiosInstance.defaults.paramsSerializer = axiosParamsSerializer;
|
|
8392
9674
|
/**
|
|
8393
9675
|
* logger function should accept 3 parameters:
|
|
@@ -8442,6 +9724,9 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
8442
9724
|
return null;
|
|
8443
9725
|
};
|
|
8444
9726
|
this.recoverStateOnReconnect = this.options.recoverStateOnReconnect;
|
|
9727
|
+
this.threads = new ThreadManager({
|
|
9728
|
+
client: this
|
|
9729
|
+
});
|
|
8445
9730
|
}
|
|
8446
9731
|
/**
|
|
8447
9732
|
* Get a client instance
|
|
@@ -9592,7 +10877,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9592
10877
|
isLatestMessageSet: true
|
|
9593
10878
|
}
|
|
9594
10879
|
});
|
|
9595
|
-
return _context20.abrupt("return", this.hydrateActiveChannels(data.channels, stateOptions));
|
|
10880
|
+
return _context20.abrupt("return", this.hydrateActiveChannels(data.channels, stateOptions, options));
|
|
9596
10881
|
|
|
9597
10882
|
case 13:
|
|
9598
10883
|
case "end":
|
|
@@ -9642,7 +10927,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9642
10927
|
sort: normalizeQuerySort(sort)
|
|
9643
10928
|
}, options);
|
|
9644
10929
|
_context21.next = 7;
|
|
9645
|
-
return this.post(this.baseURL + '/messages/' + messageID + '/reactions', payload);
|
|
10930
|
+
return this.post(this.baseURL + '/messages/' + encodeURIComponent(messageID) + '/reactions', payload);
|
|
9646
10931
|
|
|
9647
10932
|
case 7:
|
|
9648
10933
|
return _context21.abrupt("return", _context21.sent);
|
|
@@ -9666,9 +10951,11 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9666
10951
|
value: function hydrateActiveChannels() {
|
|
9667
10952
|
var channelsFromApi = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
9668
10953
|
var stateOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
10954
|
+
var queryChannelsOptions = arguments.length > 2 ? arguments[2] : undefined;
|
|
9669
10955
|
var skipInitialization = stateOptions.skipInitialization,
|
|
9670
10956
|
_stateOptions$offline = stateOptions.offlineMode,
|
|
9671
10957
|
offlineMode = _stateOptions$offline === void 0 ? false : _stateOptions$offline;
|
|
10958
|
+
var channels = [];
|
|
9672
10959
|
|
|
9673
10960
|
var _iterator2 = _createForOfIteratorHelper(channelsFromApi),
|
|
9674
10961
|
_step2;
|
|
@@ -9678,40 +10965,42 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
9678
10965
|
var channelState = _step2.value;
|
|
9679
10966
|
|
|
9680
10967
|
this._addChannelConfig(channelState.channel);
|
|
9681
|
-
}
|
|
9682
|
-
} catch (err) {
|
|
9683
|
-
_iterator2.e(err);
|
|
9684
|
-
} finally {
|
|
9685
|
-
_iterator2.f();
|
|
9686
|
-
}
|
|
9687
|
-
|
|
9688
|
-
var channels = [];
|
|
9689
10968
|
|
|
9690
|
-
|
|
9691
|
-
|
|
9692
|
-
|
|
9693
|
-
try {
|
|
9694
|
-
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
9695
|
-
var _channelState = _step3.value;
|
|
9696
|
-
var c = this.channel(_channelState.channel.type, _channelState.channel.id);
|
|
9697
|
-
c.data = _channelState.channel;
|
|
10969
|
+
var c = this.channel(channelState.channel.type, channelState.channel.id);
|
|
10970
|
+
c.data = channelState.channel;
|
|
9698
10971
|
c.offlineMode = offlineMode;
|
|
9699
10972
|
c.initialized = !offlineMode;
|
|
10973
|
+
var updatedMessagesSet = void 0;
|
|
9700
10974
|
|
|
9701
10975
|
if (skipInitialization === undefined) {
|
|
9702
|
-
c._initializeState(
|
|
9703
|
-
|
|
10976
|
+
var _c$_initializeState = c._initializeState(channelState, 'latest'),
|
|
10977
|
+
messageSet = _c$_initializeState.messageSet;
|
|
10978
|
+
|
|
10979
|
+
updatedMessagesSet = messageSet;
|
|
10980
|
+
} else if (!skipInitialization.includes(channelState.channel.id)) {
|
|
9704
10981
|
c.state.clearMessages();
|
|
9705
10982
|
|
|
9706
|
-
c._initializeState(
|
|
10983
|
+
var _c$_initializeState2 = c._initializeState(channelState, 'latest'),
|
|
10984
|
+
_messageSet = _c$_initializeState2.messageSet;
|
|
10985
|
+
|
|
10986
|
+
updatedMessagesSet = _messageSet;
|
|
10987
|
+
}
|
|
10988
|
+
|
|
10989
|
+
if (updatedMessagesSet) {
|
|
10990
|
+
updatedMessagesSet.pagination = _objectSpread(_objectSpread({}, updatedMessagesSet.pagination), messageSetPagination({
|
|
10991
|
+
parentSet: updatedMessagesSet,
|
|
10992
|
+
requestedPageSize: (queryChannelsOptions === null || queryChannelsOptions === void 0 ? void 0 : queryChannelsOptions.message_limit) || DEFAULT_QUERY_CHANNELS_MESSAGE_LIST_PAGE_SIZE,
|
|
10993
|
+
returnedPage: channelState.messages,
|
|
10994
|
+
logger: this.logger
|
|
10995
|
+
}));
|
|
9707
10996
|
}
|
|
9708
10997
|
|
|
9709
10998
|
channels.push(c);
|
|
9710
10999
|
}
|
|
9711
11000
|
} catch (err) {
|
|
9712
|
-
|
|
11001
|
+
_iterator2.e(err);
|
|
9713
11002
|
} finally {
|
|
9714
|
-
|
|
11003
|
+
_iterator2.f();
|
|
9715
11004
|
}
|
|
9716
11005
|
|
|
9717
11006
|
return channels;
|
|
@@ -10184,25 +11473,25 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10184
11473
|
key: "upsertUsers",
|
|
10185
11474
|
value: function () {
|
|
10186
11475
|
var _upsertUsers = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee30(users) {
|
|
10187
|
-
var userMap,
|
|
11476
|
+
var userMap, _iterator3, _step3, userObject;
|
|
10188
11477
|
|
|
10189
11478
|
return _regeneratorRuntime__default['default'].wrap(function _callee30$(_context30) {
|
|
10190
11479
|
while (1) {
|
|
10191
11480
|
switch (_context30.prev = _context30.next) {
|
|
10192
11481
|
case 0:
|
|
10193
11482
|
userMap = {};
|
|
10194
|
-
|
|
11483
|
+
_iterator3 = _createForOfIteratorHelper(users);
|
|
10195
11484
|
_context30.prev = 2;
|
|
10196
11485
|
|
|
10197
|
-
|
|
11486
|
+
_iterator3.s();
|
|
10198
11487
|
|
|
10199
11488
|
case 4:
|
|
10200
|
-
if ((
|
|
11489
|
+
if ((_step3 = _iterator3.n()).done) {
|
|
10201
11490
|
_context30.next = 11;
|
|
10202
11491
|
break;
|
|
10203
11492
|
}
|
|
10204
11493
|
|
|
10205
|
-
userObject =
|
|
11494
|
+
userObject = _step3.value;
|
|
10206
11495
|
|
|
10207
11496
|
if (userObject.id) {
|
|
10208
11497
|
_context30.next = 8;
|
|
@@ -10226,12 +11515,12 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10226
11515
|
_context30.prev = 13;
|
|
10227
11516
|
_context30.t0 = _context30["catch"](2);
|
|
10228
11517
|
|
|
10229
|
-
|
|
11518
|
+
_iterator3.e(_context30.t0);
|
|
10230
11519
|
|
|
10231
11520
|
case 16:
|
|
10232
11521
|
_context30.prev = 16;
|
|
10233
11522
|
|
|
10234
|
-
|
|
11523
|
+
_iterator3.f();
|
|
10235
11524
|
|
|
10236
11525
|
return _context30.finish(16);
|
|
10237
11526
|
|
|
@@ -10301,24 +11590,24 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10301
11590
|
*/
|
|
10302
11591
|
function () {
|
|
10303
11592
|
var _partialUpdateUsers = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee31(users) {
|
|
10304
|
-
var
|
|
11593
|
+
var _iterator4, _step4, userObject;
|
|
10305
11594
|
|
|
10306
11595
|
return _regeneratorRuntime__default['default'].wrap(function _callee31$(_context31) {
|
|
10307
11596
|
while (1) {
|
|
10308
11597
|
switch (_context31.prev = _context31.next) {
|
|
10309
11598
|
case 0:
|
|
10310
|
-
|
|
11599
|
+
_iterator4 = _createForOfIteratorHelper(users);
|
|
10311
11600
|
_context31.prev = 1;
|
|
10312
11601
|
|
|
10313
|
-
|
|
11602
|
+
_iterator4.s();
|
|
10314
11603
|
|
|
10315
11604
|
case 3:
|
|
10316
|
-
if ((
|
|
11605
|
+
if ((_step4 = _iterator4.n()).done) {
|
|
10317
11606
|
_context31.next = 9;
|
|
10318
11607
|
break;
|
|
10319
11608
|
}
|
|
10320
11609
|
|
|
10321
|
-
userObject =
|
|
11610
|
+
userObject = _step4.value;
|
|
10322
11611
|
|
|
10323
11612
|
if (userObject.id) {
|
|
10324
11613
|
_context31.next = 7;
|
|
@@ -10339,12 +11628,12 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10339
11628
|
_context31.prev = 11;
|
|
10340
11629
|
_context31.t0 = _context31["catch"](1);
|
|
10341
11630
|
|
|
10342
|
-
|
|
11631
|
+
_iterator4.e(_context31.t0);
|
|
10343
11632
|
|
|
10344
11633
|
case 14:
|
|
10345
11634
|
_context31.prev = 14;
|
|
10346
11635
|
|
|
10347
|
-
|
|
11636
|
+
_iterator4.f();
|
|
10348
11637
|
|
|
10349
11638
|
return _context31.finish(14);
|
|
10350
11639
|
|
|
@@ -10380,7 +11669,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10380
11669
|
switch (_context32.prev = _context32.next) {
|
|
10381
11670
|
case 0:
|
|
10382
11671
|
_context32.next = 2;
|
|
10383
|
-
return this.delete(this.baseURL + "/users/".concat(userID), params);
|
|
11672
|
+
return this.delete(this.baseURL + "/users/".concat(encodeURIComponent(userID)), params);
|
|
10384
11673
|
|
|
10385
11674
|
case 2:
|
|
10386
11675
|
return _context32.abrupt("return", _context32.sent);
|
|
@@ -10455,7 +11744,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10455
11744
|
switch (_context34.prev = _context34.next) {
|
|
10456
11745
|
case 0:
|
|
10457
11746
|
_context34.next = 2;
|
|
10458
|
-
return this.post(this.baseURL + "/users/".concat(userID, "/reactivate"), _objectSpread({}, options));
|
|
11747
|
+
return this.post(this.baseURL + "/users/".concat(encodeURIComponent(userID), "/reactivate"), _objectSpread({}, options));
|
|
10459
11748
|
|
|
10460
11749
|
case 2:
|
|
10461
11750
|
return _context34.abrupt("return", _context34.sent);
|
|
@@ -10531,7 +11820,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10531
11820
|
switch (_context36.prev = _context36.next) {
|
|
10532
11821
|
case 0:
|
|
10533
11822
|
_context36.next = 2;
|
|
10534
|
-
return this.post(this.baseURL + "/users/".concat(userID, "/deactivate"), _objectSpread({}, options));
|
|
11823
|
+
return this.post(this.baseURL + "/users/".concat(encodeURIComponent(userID), "/deactivate"), _objectSpread({}, options));
|
|
10535
11824
|
|
|
10536
11825
|
case 2:
|
|
10537
11826
|
return _context36.abrupt("return", _context36.sent);
|
|
@@ -10598,7 +11887,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
10598
11887
|
switch (_context38.prev = _context38.next) {
|
|
10599
11888
|
case 0:
|
|
10600
11889
|
_context38.next = 2;
|
|
10601
|
-
return this.get(this.baseURL + "/users/".concat(userID, "/export"), _objectSpread({}, options));
|
|
11890
|
+
return this.get(this.baseURL + "/users/".concat(encodeURIComponent(userID), "/export"), _objectSpread({}, options));
|
|
10602
11891
|
|
|
10603
11892
|
case 2:
|
|
10604
11893
|
return _context38.abrupt("return", _context38.sent);
|
|
@@ -11140,7 +12429,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11140
12429
|
case 0:
|
|
11141
12430
|
options = _args52.length > 1 && _args52[1] !== undefined ? _args52[1] : {};
|
|
11142
12431
|
_context52.next = 3;
|
|
11143
|
-
return this.post(this.baseURL + "/calls/".concat(callID), _objectSpread({}, options));
|
|
12432
|
+
return this.post(this.baseURL + "/calls/".concat(encodeURIComponent(callID)), _objectSpread({}, options));
|
|
11144
12433
|
|
|
11145
12434
|
case 3:
|
|
11146
12435
|
return _context52.abrupt("return", _context52.sent);
|
|
@@ -11284,7 +12573,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11284
12573
|
case 0:
|
|
11285
12574
|
options = _args55.length > 2 && _args55[2] !== undefined ? _args55[2] : {};
|
|
11286
12575
|
_context55.next = 3;
|
|
11287
|
-
return this.patch(this.baseURL + "/moderation/reports/".concat(id), _objectSpread({
|
|
12576
|
+
return this.patch(this.baseURL + "/moderation/reports/".concat(encodeURIComponent(id)), _objectSpread({
|
|
11288
12577
|
review_result: reviewResult
|
|
11289
12578
|
}, options));
|
|
11290
12579
|
|
|
@@ -11393,17 +12682,17 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11393
12682
|
}, {
|
|
11394
12683
|
key: "getCommand",
|
|
11395
12684
|
value: function getCommand(name) {
|
|
11396
|
-
return this.get(this.baseURL + "/commands/".concat(name));
|
|
12685
|
+
return this.get(this.baseURL + "/commands/".concat(encodeURIComponent(name)));
|
|
11397
12686
|
}
|
|
11398
12687
|
}, {
|
|
11399
12688
|
key: "updateCommand",
|
|
11400
12689
|
value: function updateCommand(name, data) {
|
|
11401
|
-
return this.put(this.baseURL + "/commands/".concat(name), data);
|
|
12690
|
+
return this.put(this.baseURL + "/commands/".concat(encodeURIComponent(name)), data);
|
|
11402
12691
|
}
|
|
11403
12692
|
}, {
|
|
11404
12693
|
key: "deleteCommand",
|
|
11405
12694
|
value: function deleteCommand(name) {
|
|
11406
|
-
return this.delete(this.baseURL + "/commands/".concat(name));
|
|
12695
|
+
return this.delete(this.baseURL + "/commands/".concat(encodeURIComponent(name)));
|
|
11407
12696
|
}
|
|
11408
12697
|
}, {
|
|
11409
12698
|
key: "listCommands",
|
|
@@ -11422,17 +12711,17 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11422
12711
|
}, {
|
|
11423
12712
|
key: "getChannelType",
|
|
11424
12713
|
value: function getChannelType(channelType) {
|
|
11425
|
-
return this.get(this.baseURL + "/channeltypes/".concat(channelType));
|
|
12714
|
+
return this.get(this.baseURL + "/channeltypes/".concat(encodeURIComponent(channelType)));
|
|
11426
12715
|
}
|
|
11427
12716
|
}, {
|
|
11428
12717
|
key: "updateChannelType",
|
|
11429
12718
|
value: function updateChannelType(channelType, data) {
|
|
11430
|
-
return this.put(this.baseURL + "/channeltypes/".concat(channelType), data);
|
|
12719
|
+
return this.put(this.baseURL + "/channeltypes/".concat(encodeURIComponent(channelType)), data);
|
|
11431
12720
|
}
|
|
11432
12721
|
}, {
|
|
11433
12722
|
key: "deleteChannelType",
|
|
11434
12723
|
value: function deleteChannelType(channelType) {
|
|
11435
|
-
return this.delete(this.baseURL + "/channeltypes/".concat(channelType));
|
|
12724
|
+
return this.delete(this.baseURL + "/channeltypes/".concat(encodeURIComponent(channelType)));
|
|
11436
12725
|
}
|
|
11437
12726
|
}, {
|
|
11438
12727
|
key: "listChannelTypes",
|
|
@@ -11457,7 +12746,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11457
12746
|
switch (_context58.prev = _context58.next) {
|
|
11458
12747
|
case 0:
|
|
11459
12748
|
_context58.next = 2;
|
|
11460
|
-
return this.post(this.baseURL + "/messages/".concat(messageId, "/translate"), {
|
|
12749
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(messageId), "/translate"), {
|
|
11461
12750
|
language: language
|
|
11462
12751
|
});
|
|
11463
12752
|
|
|
@@ -11619,7 +12908,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11619
12908
|
}
|
|
11620
12909
|
|
|
11621
12910
|
_context59.next = 10;
|
|
11622
|
-
return this.post(this.baseURL + "/messages/".concat(message.id), _objectSpread({
|
|
12911
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(message.id)), _objectSpread({
|
|
11623
12912
|
message: clonedMessage
|
|
11624
12913
|
}, options));
|
|
11625
12914
|
|
|
@@ -11680,7 +12969,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11680
12969
|
}
|
|
11681
12970
|
|
|
11682
12971
|
_context60.next = 6;
|
|
11683
|
-
return this.put(this.baseURL + "/messages/".concat(id), _objectSpread(_objectSpread(_objectSpread({}, partialMessageObject), options), {}, {
|
|
12972
|
+
return this.put(this.baseURL + "/messages/".concat(encodeURIComponent(id)), _objectSpread(_objectSpread(_objectSpread({}, partialMessageObject), options), {}, {
|
|
11684
12973
|
user: user
|
|
11685
12974
|
}));
|
|
11686
12975
|
|
|
@@ -11719,7 +13008,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11719
13008
|
}
|
|
11720
13009
|
|
|
11721
13010
|
_context61.next = 4;
|
|
11722
|
-
return this.delete(this.baseURL + "/messages/".concat(messageID), params);
|
|
13011
|
+
return this.delete(this.baseURL + "/messages/".concat(encodeURIComponent(messageID)), params);
|
|
11723
13012
|
|
|
11724
13013
|
case 4:
|
|
11725
13014
|
return _context61.abrupt("return", _context61.sent);
|
|
@@ -11760,7 +13049,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11760
13049
|
switch (_context62.prev = _context62.next) {
|
|
11761
13050
|
case 0:
|
|
11762
13051
|
_context62.next = 2;
|
|
11763
|
-
return this.post(this.baseURL + "/messages/".concat(messageID, "/undelete"), {
|
|
13052
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(messageID), "/undelete"), {
|
|
11764
13053
|
undeleted_by: userID
|
|
11765
13054
|
});
|
|
11766
13055
|
|
|
@@ -11845,7 +13134,10 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11845
13134
|
res = _context64.sent;
|
|
11846
13135
|
return _context64.abrupt("return", {
|
|
11847
13136
|
threads: res.threads.map(function (thread) {
|
|
11848
|
-
return new Thread(
|
|
13137
|
+
return new Thread({
|
|
13138
|
+
client: _this5,
|
|
13139
|
+
threadData: thread
|
|
13140
|
+
});
|
|
11849
13141
|
}),
|
|
11850
13142
|
next: res.next
|
|
11851
13143
|
});
|
|
@@ -11904,11 +13196,14 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11904
13196
|
watch: true
|
|
11905
13197
|
}, options);
|
|
11906
13198
|
_context65.next = 6;
|
|
11907
|
-
return this.get(this.baseURL + "/threads/".concat(messageId), opts);
|
|
13199
|
+
return this.get(this.baseURL + "/threads/".concat(encodeURIComponent(messageId)), opts);
|
|
11908
13200
|
|
|
11909
13201
|
case 6:
|
|
11910
13202
|
res = _context65.sent;
|
|
11911
|
-
return _context65.abrupt("return", new Thread(
|
|
13203
|
+
return _context65.abrupt("return", new Thread({
|
|
13204
|
+
client: this,
|
|
13205
|
+
threadData: res.thread
|
|
13206
|
+
}));
|
|
11912
13207
|
|
|
11913
13208
|
case 8:
|
|
11914
13209
|
case "end":
|
|
@@ -11977,7 +13272,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11977
13272
|
|
|
11978
13273
|
case 10:
|
|
11979
13274
|
_context66.next = 12;
|
|
11980
|
-
return this.patch(this.baseURL + "/threads/".concat(messageId), partialThreadObject);
|
|
13275
|
+
return this.patch(this.baseURL + "/threads/".concat(encodeURIComponent(messageId)), partialThreadObject);
|
|
11981
13276
|
|
|
11982
13277
|
case 12:
|
|
11983
13278
|
return _context66.abrupt("return", _context66.sent);
|
|
@@ -11999,7 +13294,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
11999
13294
|
}, {
|
|
12000
13295
|
key: "getUserAgent",
|
|
12001
13296
|
value: function getUserAgent() {
|
|
12002
|
-
return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.
|
|
13297
|
+
return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.40.0");
|
|
12003
13298
|
}
|
|
12004
13299
|
}, {
|
|
12005
13300
|
key: "setUserAgent",
|
|
@@ -12109,7 +13404,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12109
13404
|
}, {
|
|
12110
13405
|
key: "getPermission",
|
|
12111
13406
|
value: function getPermission(name) {
|
|
12112
|
-
return this.get("".concat(this.baseURL, "/permissions/").concat(name));
|
|
13407
|
+
return this.get("".concat(this.baseURL, "/permissions/").concat(encodeURIComponent(name)));
|
|
12113
13408
|
}
|
|
12114
13409
|
/** createPermission - creates a custom permission
|
|
12115
13410
|
*
|
|
@@ -12132,7 +13427,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12132
13427
|
}, {
|
|
12133
13428
|
key: "updatePermission",
|
|
12134
13429
|
value: function updatePermission(id, permissionData) {
|
|
12135
|
-
return this.put("".concat(this.baseURL, "/permissions/").concat(id), _objectSpread({}, permissionData));
|
|
13430
|
+
return this.put("".concat(this.baseURL, "/permissions/").concat(encodeURIComponent(id)), _objectSpread({}, permissionData));
|
|
12136
13431
|
}
|
|
12137
13432
|
/** deletePermission - deletes a custom permission
|
|
12138
13433
|
*
|
|
@@ -12143,7 +13438,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12143
13438
|
}, {
|
|
12144
13439
|
key: "deletePermission",
|
|
12145
13440
|
value: function deletePermission(name) {
|
|
12146
|
-
return this.delete("".concat(this.baseURL, "/permissions/").concat(name));
|
|
13441
|
+
return this.delete("".concat(this.baseURL, "/permissions/").concat(encodeURIComponent(name)));
|
|
12147
13442
|
}
|
|
12148
13443
|
/** listPermissions - returns the list of all permissions for this application
|
|
12149
13444
|
*
|
|
@@ -12187,7 +13482,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12187
13482
|
}, {
|
|
12188
13483
|
key: "deleteRole",
|
|
12189
13484
|
value: function deleteRole(name) {
|
|
12190
|
-
return this.delete("".concat(this.baseURL, "/roles/").concat(name));
|
|
13485
|
+
return this.delete("".concat(this.baseURL, "/roles/").concat(encodeURIComponent(name)));
|
|
12191
13486
|
}
|
|
12192
13487
|
/** sync - returns all events that happened for a list of channels since last sync
|
|
12193
13488
|
* @param {string[]} channel_cids list of channel CIDs
|
|
@@ -12224,7 +13519,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12224
13519
|
switch (_context67.prev = _context67.next) {
|
|
12225
13520
|
case 0:
|
|
12226
13521
|
_context67.next = 2;
|
|
12227
|
-
return this.post("".concat(this.baseURL, "/users/").concat(targetUserID, "/event"), {
|
|
13522
|
+
return this.post("".concat(this.baseURL, "/users/").concat(encodeURIComponent(targetUserID), "/event"), {
|
|
12228
13523
|
event: event
|
|
12229
13524
|
});
|
|
12230
13525
|
|
|
@@ -12258,17 +13553,17 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12258
13553
|
}, {
|
|
12259
13554
|
key: "getBlockList",
|
|
12260
13555
|
value: function getBlockList(name) {
|
|
12261
|
-
return this.get("".concat(this.baseURL, "/blocklists/").concat(name));
|
|
13556
|
+
return this.get("".concat(this.baseURL, "/blocklists/").concat(encodeURIComponent(name)));
|
|
12262
13557
|
}
|
|
12263
13558
|
}, {
|
|
12264
13559
|
key: "updateBlockList",
|
|
12265
13560
|
value: function updateBlockList(name, data) {
|
|
12266
|
-
return this.put("".concat(this.baseURL, "/blocklists/").concat(name), data);
|
|
13561
|
+
return this.put("".concat(this.baseURL, "/blocklists/").concat(encodeURIComponent(name)), data);
|
|
12267
13562
|
}
|
|
12268
13563
|
}, {
|
|
12269
13564
|
key: "deleteBlockList",
|
|
12270
13565
|
value: function deleteBlockList(name) {
|
|
12271
|
-
return this.delete("".concat(this.baseURL, "/blocklists/").concat(name));
|
|
13566
|
+
return this.delete("".concat(this.baseURL, "/blocklists/").concat(encodeURIComponent(name)));
|
|
12272
13567
|
}
|
|
12273
13568
|
}, {
|
|
12274
13569
|
key: "exportChannels",
|
|
@@ -12294,7 +13589,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12294
13589
|
}, {
|
|
12295
13590
|
key: "getExportChannelStatus",
|
|
12296
13591
|
value: function getExportChannelStatus(id) {
|
|
12297
|
-
return this.get("".concat(this.baseURL, "/export_channels/").concat(id));
|
|
13592
|
+
return this.get("".concat(this.baseURL, "/export_channels/").concat(encodeURIComponent(id)));
|
|
12298
13593
|
}
|
|
12299
13594
|
}, {
|
|
12300
13595
|
key: "campaign",
|
|
@@ -12442,7 +13737,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12442
13737
|
switch (_context71.prev = _context71.next) {
|
|
12443
13738
|
case 0:
|
|
12444
13739
|
this.validateServerSideAuth();
|
|
12445
|
-
return _context71.abrupt("return", this.get(this.baseURL + "/segments/".concat(id)));
|
|
13740
|
+
return _context71.abrupt("return", this.get(this.baseURL + "/segments/".concat(encodeURIComponent(id))));
|
|
12446
13741
|
|
|
12447
13742
|
case 2:
|
|
12448
13743
|
case "end":
|
|
@@ -12476,7 +13771,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12476
13771
|
switch (_context72.prev = _context72.next) {
|
|
12477
13772
|
case 0:
|
|
12478
13773
|
this.validateServerSideAuth();
|
|
12479
|
-
return _context72.abrupt("return", this.put(this.baseURL + "/segments/".concat(id), data));
|
|
13774
|
+
return _context72.abrupt("return", this.put(this.baseURL + "/segments/".concat(encodeURIComponent(id)), data));
|
|
12480
13775
|
|
|
12481
13776
|
case 2:
|
|
12482
13777
|
case "end":
|
|
@@ -12514,7 +13809,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12514
13809
|
body = {
|
|
12515
13810
|
target_ids: targets
|
|
12516
13811
|
};
|
|
12517
|
-
return _context73.abrupt("return", this.post(this.baseURL + "/segments/".concat(id, "/addtargets"), body));
|
|
13812
|
+
return _context73.abrupt("return", this.post(this.baseURL + "/segments/".concat(encodeURIComponent(id), "/addtargets"), body));
|
|
12518
13813
|
|
|
12519
13814
|
case 3:
|
|
12520
13815
|
case "end":
|
|
@@ -12546,7 +13841,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12546
13841
|
sort = _args74.length > 2 && _args74[2] !== undefined ? _args74[2] : [];
|
|
12547
13842
|
options = _args74.length > 3 && _args74[3] !== undefined ? _args74[3] : {};
|
|
12548
13843
|
this.validateServerSideAuth();
|
|
12549
|
-
return _context74.abrupt("return", this.post(this.baseURL + "/segments/".concat(id, "/targets/query"), _objectSpread({
|
|
13844
|
+
return _context74.abrupt("return", this.post(this.baseURL + "/segments/".concat(encodeURIComponent(id), "/targets/query"), _objectSpread({
|
|
12550
13845
|
filter: filter || {},
|
|
12551
13846
|
sort: sort || []
|
|
12552
13847
|
}, options)));
|
|
@@ -12587,7 +13882,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12587
13882
|
body = {
|
|
12588
13883
|
target_ids: targets
|
|
12589
13884
|
};
|
|
12590
|
-
return _context75.abrupt("return", this.post(this.baseURL + "/segments/".concat(id, "/deletetargets"), body));
|
|
13885
|
+
return _context75.abrupt("return", this.post(this.baseURL + "/segments/".concat(encodeURIComponent(id), "/deletetargets"), body));
|
|
12591
13886
|
|
|
12592
13887
|
case 3:
|
|
12593
13888
|
case "end":
|
|
@@ -12660,7 +13955,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12660
13955
|
switch (_context77.prev = _context77.next) {
|
|
12661
13956
|
case 0:
|
|
12662
13957
|
this.validateServerSideAuth();
|
|
12663
|
-
return _context77.abrupt("return", this.delete(this.baseURL + "/segments/".concat(id)));
|
|
13958
|
+
return _context77.abrupt("return", this.delete(this.baseURL + "/segments/".concat(encodeURIComponent(id))));
|
|
12664
13959
|
|
|
12665
13960
|
case 2:
|
|
12666
13961
|
case "end":
|
|
@@ -12694,7 +13989,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12694
13989
|
switch (_context78.prev = _context78.next) {
|
|
12695
13990
|
case 0:
|
|
12696
13991
|
this.validateServerSideAuth();
|
|
12697
|
-
return _context78.abrupt("return", this.get(this.baseURL + "/segments/".concat(segmentId, "/target/").concat(targetId)));
|
|
13992
|
+
return _context78.abrupt("return", this.get(this.baseURL + "/segments/".concat(encodeURIComponent(segmentId), "/target/").concat(encodeURIComponent(targetId))));
|
|
12698
13993
|
|
|
12699
13994
|
case 2:
|
|
12700
13995
|
case "end":
|
|
@@ -12752,7 +14047,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12752
14047
|
switch (_context80.prev = _context80.next) {
|
|
12753
14048
|
case 0:
|
|
12754
14049
|
this.validateServerSideAuth();
|
|
12755
|
-
return _context80.abrupt("return", this.get(this.baseURL + "/campaigns/".concat(id)));
|
|
14050
|
+
return _context80.abrupt("return", this.get(this.baseURL + "/campaigns/".concat(encodeURIComponent(id))));
|
|
12756
14051
|
|
|
12757
14052
|
case 2:
|
|
12758
14053
|
case "end":
|
|
@@ -12777,7 +14072,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12777
14072
|
switch (_context81.prev = _context81.next) {
|
|
12778
14073
|
case 0:
|
|
12779
14074
|
this.validateServerSideAuth();
|
|
12780
|
-
return _context81.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(id, "/start"), {
|
|
14075
|
+
return _context81.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(encodeURIComponent(id), "/start"), {
|
|
12781
14076
|
scheduled_for: options === null || options === void 0 ? void 0 : options.scheduledFor,
|
|
12782
14077
|
stop_at: options === null || options === void 0 ? void 0 : options.stopAt
|
|
12783
14078
|
}));
|
|
@@ -12853,7 +14148,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12853
14148
|
switch (_context83.prev = _context83.next) {
|
|
12854
14149
|
case 0:
|
|
12855
14150
|
this.validateServerSideAuth();
|
|
12856
|
-
return _context83.abrupt("return", this.put(this.baseURL + "/campaigns/".concat(id), params));
|
|
14151
|
+
return _context83.abrupt("return", this.put(this.baseURL + "/campaigns/".concat(encodeURIComponent(id)), params));
|
|
12857
14152
|
|
|
12858
14153
|
case 2:
|
|
12859
14154
|
case "end":
|
|
@@ -12886,7 +14181,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12886
14181
|
switch (_context84.prev = _context84.next) {
|
|
12887
14182
|
case 0:
|
|
12888
14183
|
this.validateServerSideAuth();
|
|
12889
|
-
return _context84.abrupt("return", this.delete(this.baseURL + "/campaigns/".concat(id)));
|
|
14184
|
+
return _context84.abrupt("return", this.delete(this.baseURL + "/campaigns/".concat(encodeURIComponent(id))));
|
|
12890
14185
|
|
|
12891
14186
|
case 2:
|
|
12892
14187
|
case "end":
|
|
@@ -12919,7 +14214,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12919
14214
|
switch (_context85.prev = _context85.next) {
|
|
12920
14215
|
case 0:
|
|
12921
14216
|
this.validateServerSideAuth();
|
|
12922
|
-
return _context85.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(id, "/stop")));
|
|
14217
|
+
return _context85.abrupt("return", this.post(this.baseURL + "/campaigns/".concat(encodeURIComponent(id), "/stop")));
|
|
12923
14218
|
|
|
12924
14219
|
case 2:
|
|
12925
14220
|
case "end":
|
|
@@ -12984,7 +14279,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
12984
14279
|
while (1) {
|
|
12985
14280
|
switch (_context87.prev = _context87.next) {
|
|
12986
14281
|
case 0:
|
|
12987
|
-
return _context87.abrupt("return", this.get("".concat(this.baseURL, "/tasks/").concat(id)));
|
|
14282
|
+
return _context87.abrupt("return", this.get("".concat(this.baseURL, "/tasks/").concat(encodeURIComponent(id))));
|
|
12988
14283
|
|
|
12989
14284
|
case 1:
|
|
12990
14285
|
case "end":
|
|
@@ -13221,7 +14516,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13221
14516
|
switch (_context92.prev = _context92.next) {
|
|
13222
14517
|
case 0:
|
|
13223
14518
|
_context92.next = 2;
|
|
13224
|
-
return this.get(this.baseURL + "/imports/".concat(id));
|
|
14519
|
+
return this.get(this.baseURL + "/imports/".concat(encodeURIComponent(id)));
|
|
13225
14520
|
|
|
13226
14521
|
case 2:
|
|
13227
14522
|
return _context92.abrupt("return", _context92.sent);
|
|
@@ -13342,7 +14637,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13342
14637
|
case 0:
|
|
13343
14638
|
type = _ref10.type, name = _ref10.name;
|
|
13344
14639
|
_context95.next = 3;
|
|
13345
|
-
return this.delete(this.baseURL + "/push_providers/".concat(type, "/").concat(name));
|
|
14640
|
+
return this.delete(this.baseURL + "/push_providers/".concat(encodeURIComponent(type), "/").concat(encodeURIComponent(name)));
|
|
13346
14641
|
|
|
13347
14642
|
case 3:
|
|
13348
14643
|
return _context95.abrupt("return", _context95.sent);
|
|
@@ -13422,7 +14717,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13422
14717
|
switch (_context97.prev = _context97.next) {
|
|
13423
14718
|
case 0:
|
|
13424
14719
|
_context97.next = 2;
|
|
13425
|
-
return this.post(this.baseURL + "/messages/".concat(id, "/commit"));
|
|
14720
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(id), "/commit"));
|
|
13426
14721
|
|
|
13427
14722
|
case 2:
|
|
13428
14723
|
return _context97.abrupt("return", _context97.sent);
|
|
@@ -13494,7 +14789,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13494
14789
|
switch (_context99.prev = _context99.next) {
|
|
13495
14790
|
case 0:
|
|
13496
14791
|
_context99.next = 2;
|
|
13497
|
-
return this.get(this.baseURL + "/polls/".concat(id), userId ? {
|
|
14792
|
+
return this.get(this.baseURL + "/polls/".concat(encodeURIComponent(id)), userId ? {
|
|
13498
14793
|
user_id: userId
|
|
13499
14794
|
} : {});
|
|
13500
14795
|
|
|
@@ -13570,7 +14865,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13570
14865
|
switch (_context101.prev = _context101.next) {
|
|
13571
14866
|
case 0:
|
|
13572
14867
|
_context101.next = 2;
|
|
13573
|
-
return this.patch(this.baseURL + "/polls/".concat(id), _objectSpread(_objectSpread({}, partialPollObject), userId ? {
|
|
14868
|
+
return this.patch(this.baseURL + "/polls/".concat(encodeURIComponent(id)), _objectSpread(_objectSpread({}, partialPollObject), userId ? {
|
|
13574
14869
|
user_id: userId
|
|
13575
14870
|
} : {}));
|
|
13576
14871
|
|
|
@@ -13607,7 +14902,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13607
14902
|
switch (_context102.prev = _context102.next) {
|
|
13608
14903
|
case 0:
|
|
13609
14904
|
_context102.next = 2;
|
|
13610
|
-
return this.delete(this.baseURL + "/polls/".concat(id), _objectSpread({}, userId ? {
|
|
14905
|
+
return this.delete(this.baseURL + "/polls/".concat(encodeURIComponent(id)), _objectSpread({}, userId ? {
|
|
13611
14906
|
user_id: userId
|
|
13612
14907
|
} : {}));
|
|
13613
14908
|
|
|
@@ -13682,7 +14977,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13682
14977
|
switch (_context104.prev = _context104.next) {
|
|
13683
14978
|
case 0:
|
|
13684
14979
|
_context104.next = 2;
|
|
13685
|
-
return this.post(this.baseURL + "/polls/".concat(pollId, "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
14980
|
+
return this.post(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
13686
14981
|
user_id: userId
|
|
13687
14982
|
} : {}));
|
|
13688
14983
|
|
|
@@ -13720,7 +15015,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13720
15015
|
switch (_context105.prev = _context105.next) {
|
|
13721
15016
|
case 0:
|
|
13722
15017
|
_context105.next = 2;
|
|
13723
|
-
return this.get(this.baseURL + "/polls/".concat(pollId, "/options/").concat(optionId), userId ? {
|
|
15018
|
+
return this.get(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options/").concat(encodeURIComponent(optionId)), userId ? {
|
|
13724
15019
|
user_id: userId
|
|
13725
15020
|
} : {});
|
|
13726
15021
|
|
|
@@ -13758,7 +15053,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13758
15053
|
switch (_context106.prev = _context106.next) {
|
|
13759
15054
|
case 0:
|
|
13760
15055
|
_context106.next = 2;
|
|
13761
|
-
return this.put(this.baseURL + "/polls/".concat(pollId, "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
15056
|
+
return this.put(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options"), _objectSpread(_objectSpread({}, option), userId ? {
|
|
13762
15057
|
user_id: userId
|
|
13763
15058
|
} : {}));
|
|
13764
15059
|
|
|
@@ -13796,7 +15091,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13796
15091
|
switch (_context107.prev = _context107.next) {
|
|
13797
15092
|
case 0:
|
|
13798
15093
|
_context107.next = 2;
|
|
13799
|
-
return this.delete(this.baseURL + "/polls/".concat(pollId, "/options/").concat(optionId), userId ? {
|
|
15094
|
+
return this.delete(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/options/").concat(encodeURIComponent(optionId)), userId ? {
|
|
13800
15095
|
user_id: userId
|
|
13801
15096
|
} : {});
|
|
13802
15097
|
|
|
@@ -13835,7 +15130,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13835
15130
|
switch (_context108.prev = _context108.next) {
|
|
13836
15131
|
case 0:
|
|
13837
15132
|
_context108.next = 2;
|
|
13838
|
-
return this.post(this.baseURL + "/messages/".concat(messageId, "/polls/").concat(pollId, "/vote"), _objectSpread({
|
|
15133
|
+
return this.post(this.baseURL + "/messages/".concat(encodeURIComponent(messageId), "/polls/").concat(encodeURIComponent(pollId), "/vote"), _objectSpread({
|
|
13839
15134
|
vote: vote
|
|
13840
15135
|
}, userId ? {
|
|
13841
15136
|
user_id: userId
|
|
@@ -13901,7 +15196,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
13901
15196
|
switch (_context110.prev = _context110.next) {
|
|
13902
15197
|
case 0:
|
|
13903
15198
|
_context110.next = 2;
|
|
13904
|
-
return this.delete(this.baseURL + "/messages/".concat(messageId, "/polls/").concat(pollId, "/vote/").concat(voteId), _objectSpread({}, userId ? {
|
|
15199
|
+
return this.delete(this.baseURL + "/messages/".concat(encodeURIComponent(messageId), "/polls/").concat(encodeURIComponent(pollId), "/vote/").concat(encodeURIComponent(voteId)), _objectSpread({}, userId ? {
|
|
13905
15200
|
user_id: userId
|
|
13906
15201
|
} : {}));
|
|
13907
15202
|
|
|
@@ -14003,7 +15298,7 @@ var StreamChat = /*#__PURE__*/function () {
|
|
|
14003
15298
|
userId = _args112.length > 4 ? _args112[4] : undefined;
|
|
14004
15299
|
q = userId ? "?user_id=".concat(userId) : '';
|
|
14005
15300
|
_context112.next = 7;
|
|
14006
|
-
return this.post(this.baseURL + "/polls/".concat(pollId, "/votes").concat(q), _objectSpread({
|
|
15301
|
+
return this.post(this.baseURL + "/polls/".concat(encodeURIComponent(pollId), "/votes").concat(q), _objectSpread({
|
|
14007
15302
|
filter: filter,
|
|
14008
15303
|
sort: normalizeQuerySort(sort)
|
|
14009
15304
|
}, options));
|
|
@@ -14292,8 +15587,10 @@ exports.Moderation = Moderation;
|
|
|
14292
15587
|
exports.Permission = Permission;
|
|
14293
15588
|
exports.Segment = Segment;
|
|
14294
15589
|
exports.StableWSConnection = StableWSConnection;
|
|
15590
|
+
exports.StateStore = StateStore;
|
|
14295
15591
|
exports.StreamChat = StreamChat;
|
|
14296
15592
|
exports.Thread = Thread;
|
|
15593
|
+
exports.ThreadManager = ThreadManager;
|
|
14297
15594
|
exports.TokenManager = TokenManager;
|
|
14298
15595
|
exports.UserFromToken = UserFromToken;
|
|
14299
15596
|
exports.buildWsFatalInsight = buildWsFatalInsight;
|