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