stream-chat 8.56.0 → 8.56.1

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.
@@ -398,8 +398,8 @@ function normalizeQuerySort(sort) {
398
398
 
399
399
  try {
400
400
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
401
- var item = _step.value;
402
- var entries = Object.entries(item);
401
+ var _item = _step.value;
402
+ var entries = Object.entries(_item);
403
403
 
404
404
  if (entries.length > 1) {
405
405
  console.warn("client._buildSort() - multiple fields in a single sort object detected. Object's field order is not guaranteed");
@@ -807,6 +807,28 @@ var throttle = function throttle(fn) {
807
807
  runningTimeout = setTimeout(timeoutHandler, timeout);
808
808
  };
809
809
  };
810
+
811
+ var get = function get(obj, path) {
812
+ return path.split('.').reduce(function (acc, key) {
813
+ if (acc && _typeof(acc) === 'object' && key in acc) {
814
+ return acc[key];
815
+ }
816
+
817
+ return undefined;
818
+ }, obj);
819
+ }; // works exactly the same as lodash.uniqBy
820
+
821
+
822
+ var uniqBy = function uniqBy(array, iteratee) {
823
+ if (!Array.isArray(array)) return [];
824
+ var seen = new Set();
825
+ return array.filter(function (item) {
826
+ var key = typeof iteratee === 'function' ? iteratee(item) : get(item, iteratee);
827
+ if (seen.has(key)) return false;
828
+ seen.add(key);
829
+ return true;
830
+ });
831
+ };
810
832
  function binarySearchByDateEqualOrNearestGreater(array, targetDate) {
811
833
  var left = 0;
812
834
  var right = array.length - 1;
@@ -10950,13 +10972,13 @@ var ChannelManager = function ChannelManager(_ref) {
10950
10972
  }());
10951
10973
 
10952
10974
  _defineProperty(this, "loadNext", /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
10953
- var _this$state$getLatest3, pagination, channels, initialized, filters, sort, options, isLoadingNext, hasNext, _nextChannels$length, _nextChannels$length2, _DEFAULT_CHANNEL_MANA2, offset, limit, nextChannels, newOffset, newOptions;
10975
+ var _this$state$getLatest3, pagination, initialized, filters, sort, options, isLoadingNext, hasNext, _nextChannels$length, _nextChannels$length2, _DEFAULT_CHANNEL_MANA2, offset, limit, nextChannels, _this$state$getLatest4, channels, newOffset, newOptions;
10954
10976
 
10955
10977
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
10956
10978
  while (1) {
10957
10979
  switch (_context2.prev = _context2.next) {
10958
10980
  case 0:
10959
- _this$state$getLatest3 = _this.state.getLatestValue(), pagination = _this$state$getLatest3.pagination, channels = _this$state$getLatest3.channels, initialized = _this$state$getLatest3.initialized;
10981
+ _this$state$getLatest3 = _this.state.getLatestValue(), pagination = _this$state$getLatest3.pagination, initialized = _this$state$getLatest3.initialized;
10960
10982
  filters = pagination.filters, sort = pagination.sort, options = pagination.options, isLoadingNext = pagination.isLoadingNext, hasNext = pagination.hasNext;
10961
10983
 
10962
10984
  if (!(!initialized || isLoadingNext || !hasNext)) {
@@ -10982,13 +11004,14 @@ var ChannelManager = function ChannelManager(_ref) {
10982
11004
 
10983
11005
  case 9:
10984
11006
  nextChannels = _context2.sent;
11007
+ _this$state$getLatest4 = _this.state.getLatestValue(), channels = _this$state$getLatest4.channels;
10985
11008
  newOffset = offset + ((_nextChannels$length = nextChannels === null || nextChannels === void 0 ? void 0 : nextChannels.length) !== null && _nextChannels$length !== void 0 ? _nextChannels$length : 0);
10986
11009
  newOptions = _objectSpread$2(_objectSpread$2({}, options), {}, {
10987
11010
  offset: newOffset
10988
11011
  });
10989
11012
 
10990
11013
  _this.state.partialNext({
10991
- channels: [].concat(_toConsumableArray(channels || []), _toConsumableArray(nextChannels)),
11014
+ channels: uniqBy([].concat(_toConsumableArray(channels || []), _toConsumableArray(nextChannels)), 'cid'),
10992
11015
  pagination: _objectSpread$2(_objectSpread$2({}, pagination), {}, {
10993
11016
  hasNext: ((_nextChannels$length2 = nextChannels === null || nextChannels === void 0 ? void 0 : nextChannels.length) !== null && _nextChannels$length2 !== void 0 ? _nextChannels$length2 : 0) >= limit,
10994
11017
  isLoading: false,
@@ -10997,11 +11020,11 @@ var ChannelManager = function ChannelManager(_ref) {
10997
11020
  })
10998
11021
  });
10999
11022
 
11000
- _context2.next = 20;
11023
+ _context2.next = 21;
11001
11024
  break;
11002
11025
 
11003
- case 15:
11004
- _context2.prev = 15;
11026
+ case 16:
11027
+ _context2.prev = 16;
11005
11028
  _context2.t0 = _context2["catch"](4);
11006
11029
 
11007
11030
  _this.client.logger('error', _context2.t0.message);
@@ -11016,19 +11039,19 @@ var ChannelManager = function ChannelManager(_ref) {
11016
11039
 
11017
11040
  throw _context2.t0;
11018
11041
 
11019
- case 20:
11042
+ case 21:
11020
11043
  case "end":
11021
11044
  return _context2.stop();
11022
11045
  }
11023
11046
  }
11024
- }, _callee2, null, [[4, 15]]);
11047
+ }, _callee2, null, [[4, 16]]);
11025
11048
  })));
11026
11049
 
11027
11050
  _defineProperty(this, "notificationAddedToChannelHandler", /*#__PURE__*/function () {
11028
11051
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(event) {
11029
11052
  var _event$channel, _this$options$allowNo;
11030
11053
 
11031
- var _ref7, id, type, members, channel, _this$state$getLatest4, pagination, channels, _ref9, sort;
11054
+ var _ref7, id, type, members, channel, _this$state$getLatest5, pagination, channels, _ref9, sort;
11032
11055
 
11033
11056
  return _regeneratorRuntime.wrap(function _callee3$(_context3) {
11034
11057
  while (1) {
@@ -11064,7 +11087,7 @@ var ChannelManager = function ChannelManager(_ref) {
11064
11087
 
11065
11088
  case 5:
11066
11089
  channel = _context3.sent;
11067
- _this$state$getLatest4 = _this.state.getLatestValue(), pagination = _this$state$getLatest4.pagination, channels = _this$state$getLatest4.channels;
11090
+ _this$state$getLatest5 = _this.state.getLatestValue(), pagination = _this$state$getLatest5.pagination, channels = _this$state$getLatest5.channels;
11068
11091
 
11069
11092
  if (channels) {
11070
11093
  _context3.next = 9;
@@ -11096,8 +11119,8 @@ var ChannelManager = function ChannelManager(_ref) {
11096
11119
  }());
11097
11120
 
11098
11121
  _defineProperty(this, "channelDeletedHandler", function (event) {
11099
- var _this$state$getLatest5 = _this.state.getLatestValue(),
11100
- channels = _this$state$getLatest5.channels;
11122
+ var _this$state$getLatest6 = _this.state.getLatestValue(),
11123
+ channels = _this$state$getLatest6.channels;
11101
11124
 
11102
11125
  if (!channels) {
11103
11126
  return;
@@ -11125,9 +11148,9 @@ var ChannelManager = function ChannelManager(_ref) {
11125
11148
  _defineProperty(this, "newMessageHandler", function (event) {
11126
11149
  var _this$options$allowNo2;
11127
11150
 
11128
- var _this$state$getLatest6 = _this.state.getLatestValue(),
11129
- pagination = _this$state$getLatest6.pagination,
11130
- channels = _this$state$getLatest6.channels;
11151
+ var _this$state$getLatest7 = _this.state.getLatestValue(),
11152
+ pagination = _this$state$getLatest7.pagination,
11153
+ channels = _this$state$getLatest7.channels;
11131
11154
 
11132
11155
  if (!channels) {
11133
11156
  return;
@@ -11174,37 +11197,37 @@ var ChannelManager = function ChannelManager(_ref) {
11174
11197
  var _ref11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(event) {
11175
11198
  var _event$channel3, _this$options$allowNo3;
11176
11199
 
11177
- var _ref12, id, type, _this$state$getLatest7, channels, pagination, _ref13, filters, sort, channel, considerArchivedChannels, isTargetChannelArchived;
11200
+ var _ref12, id, type, channel, _this$state$getLatest8, channels, pagination, _ref13, filters, sort, considerArchivedChannels, isTargetChannelArchived;
11178
11201
 
11179
11202
  return _regeneratorRuntime.wrap(function _callee4$(_context4) {
11180
11203
  while (1) {
11181
11204
  switch (_context4.prev = _context4.next) {
11182
11205
  case 0:
11183
11206
  _ref12 = (_event$channel3 = event === null || event === void 0 ? void 0 : event.channel) !== null && _event$channel3 !== void 0 ? _event$channel3 : {}, id = _ref12.id, type = _ref12.type;
11184
- _this$state$getLatest7 = _this.state.getLatestValue(), channels = _this$state$getLatest7.channels, pagination = _this$state$getLatest7.pagination;
11185
- _ref13 = pagination !== null && pagination !== void 0 ? pagination : {}, filters = _ref13.filters, sort = _ref13.sort;
11186
11207
 
11187
- if (!(!channels || !id || !type)) {
11188
- _context4.next = 5;
11208
+ if (!(!id || !type)) {
11209
+ _context4.next = 3;
11189
11210
  break;
11190
11211
  }
11191
11212
 
11192
11213
  return _context4.abrupt("return");
11193
11214
 
11194
- case 5:
11195
- _context4.next = 7;
11215
+ case 3:
11216
+ _context4.next = 5;
11196
11217
  return getAndWatchChannel({
11197
11218
  client: _this.client,
11198
11219
  id: id,
11199
11220
  type: type
11200
11221
  });
11201
11222
 
11202
- case 7:
11223
+ case 5:
11203
11224
  channel = _context4.sent;
11225
+ _this$state$getLatest8 = _this.state.getLatestValue(), channels = _this$state$getLatest8.channels, pagination = _this$state$getLatest8.pagination;
11226
+ _ref13 = pagination !== null && pagination !== void 0 ? pagination : {}, filters = _ref13.filters, sort = _ref13.sort;
11204
11227
  considerArchivedChannels = shouldConsiderArchivedChannels(filters);
11205
11228
  isTargetChannelArchived = isChannelArchived(channel);
11206
11229
 
11207
- if (!(considerArchivedChannels && isTargetChannelArchived && !filters.archived || considerArchivedChannels && !isTargetChannelArchived && filters.archived || !((_this$options$allowNo3 = _this.options.allowNotLoadedChannelPromotionForEvent) !== null && _this$options$allowNo3 !== void 0 && _this$options$allowNo3['notification.message_new']))) {
11230
+ if (!(!channels || considerArchivedChannels && isTargetChannelArchived && !filters.archived || considerArchivedChannels && !isTargetChannelArchived && filters.archived || !((_this$options$allowNo3 = _this.options.allowNotLoadedChannelPromotionForEvent) !== null && _this$options$allowNo3 !== void 0 && _this$options$allowNo3['notification.message_new']))) {
11208
11231
  _context4.next = 12;
11209
11232
  break;
11210
11233
  }
@@ -11235,37 +11258,37 @@ var ChannelManager = function ChannelManager(_ref) {
11235
11258
  var _ref14 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(event) {
11236
11259
  var _this$options$allowNo4;
11237
11260
 
11238
- var _this$state$getLatest8, channels, pagination, _ref15, sort, filters, channelType, channelId, channel, considerArchivedChannels, isTargetChannelArchived;
11261
+ var channelType, channelId, channel, _this$state$getLatest9, channels, pagination, _ref15, sort, filters, considerArchivedChannels, isTargetChannelArchived;
11239
11262
 
11240
11263
  return _regeneratorRuntime.wrap(function _callee5$(_context5) {
11241
11264
  while (1) {
11242
11265
  switch (_context5.prev = _context5.next) {
11243
11266
  case 0:
11244
- _this$state$getLatest8 = _this.state.getLatestValue(), channels = _this$state$getLatest8.channels, pagination = _this$state$getLatest8.pagination;
11245
- _ref15 = pagination !== null && pagination !== void 0 ? pagination : {}, sort = _ref15.sort, filters = _ref15.filters;
11246
11267
  channelType = event.channel_type, channelId = event.channel_id;
11247
11268
 
11248
- if (!(!channels || !channelType || !channelId)) {
11249
- _context5.next = 5;
11269
+ if (!(!channelType || !channelId)) {
11270
+ _context5.next = 3;
11250
11271
  break;
11251
11272
  }
11252
11273
 
11253
11274
  return _context5.abrupt("return");
11254
11275
 
11255
- case 5:
11256
- _context5.next = 7;
11276
+ case 3:
11277
+ _context5.next = 5;
11257
11278
  return getAndWatchChannel({
11258
11279
  client: _this.client,
11259
11280
  id: event.channel_id,
11260
11281
  type: event.channel_type
11261
11282
  });
11262
11283
 
11263
- case 7:
11284
+ case 5:
11264
11285
  channel = _context5.sent;
11286
+ _this$state$getLatest9 = _this.state.getLatestValue(), channels = _this$state$getLatest9.channels, pagination = _this$state$getLatest9.pagination;
11287
+ _ref15 = pagination !== null && pagination !== void 0 ? pagination : {}, sort = _ref15.sort, filters = _ref15.filters;
11265
11288
  considerArchivedChannels = shouldConsiderArchivedChannels(filters);
11266
11289
  isTargetChannelArchived = isChannelArchived(channel);
11267
11290
 
11268
- if (!(considerArchivedChannels && isTargetChannelArchived && !filters.archived || considerArchivedChannels && !isTargetChannelArchived && filters.archived || !((_this$options$allowNo4 = _this.options.allowNotLoadedChannelPromotionForEvent) !== null && _this$options$allowNo4 !== void 0 && _this$options$allowNo4['channel.visible']))) {
11291
+ if (!(!channels || considerArchivedChannels && isTargetChannelArchived && !filters.archived || considerArchivedChannels && !isTargetChannelArchived && filters.archived || !((_this$options$allowNo4 = _this.options.allowNotLoadedChannelPromotionForEvent) !== null && _this$options$allowNo4 !== void 0 && _this$options$allowNo4['channel.visible']))) {
11269
11292
  _context5.next = 12;
11270
11293
  break;
11271
11294
  }
@@ -11297,9 +11320,9 @@ var ChannelManager = function ChannelManager(_ref) {
11297
11320
  _defineProperty(this, "memberUpdatedHandler", function (event) {
11298
11321
  var _event$member;
11299
11322
 
11300
- var _this$state$getLatest9 = _this.state.getLatestValue(),
11301
- pagination = _this$state$getLatest9.pagination,
11302
- channels = _this$state$getLatest9.channels;
11323
+ var _this$state$getLatest10 = _this.state.getLatestValue(),
11324
+ pagination = _this$state$getLatest10.pagination,
11325
+ channels = _this$state$getLatest10.channels;
11303
11326
 
11304
11327
  var filters = pagination.filters,
11305
11328
  sort = pagination.sort;
@@ -16059,7 +16082,7 @@ var StreamChat = /*#__PURE__*/function () {
16059
16082
  }, {
16060
16083
  key: "getUserAgent",
16061
16084
  value: function getUserAgent() {
16062
- return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.56.0");
16085
+ return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.56.1");
16063
16086
  }
16064
16087
  }, {
16065
16088
  key: "setUserAgent",