stream-chat 9.41.0 → 9.41.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.
@@ -1034,6 +1034,7 @@ var messagePaginationCreatedAtAround = ({
1034
1034
  parentSet,
1035
1035
  requestedPageSize,
1036
1036
  returnedPage,
1037
+ filteredReturnedPage,
1037
1038
  messagePaginationOptions
1038
1039
  }) => {
1039
1040
  const newPagination = { ...parentSet.pagination };
@@ -1066,9 +1067,13 @@ var messagePaginationCreatedAtAround = ({
1066
1067
  hasNext = hasPrev = false;
1067
1068
  updateHasPrev = updateHasNext = true;
1068
1069
  } else {
1070
+ const [firstFilteredPageMsg, lastFilteredPageMsg] = [
1071
+ filteredReturnedPage[0],
1072
+ filteredReturnedPage.slice(-1)[0]
1073
+ ];
1069
1074
  const [firstPageMsgIsFirstInSet, lastPageMsgIsLastInSet] = [
1070
- firstPageMsg?.id && firstPageMsg.id === parentSet.messages[0]?.id,
1071
- lastPageMsg?.id && lastPageMsg.id === parentSet.messages.slice(-1)[0]?.id
1075
+ firstFilteredPageMsg?.id && firstFilteredPageMsg.id === parentSet.messages[0]?.id,
1076
+ lastFilteredPageMsg?.id && lastFilteredPageMsg.id === parentSet.messages.slice(-1)[0]?.id
1072
1077
  ];
1073
1078
  updateHasPrev = firstPageMsgIsFirstInSet;
1074
1079
  updateHasNext = lastPageMsgIsLastInSet;
@@ -1090,6 +1095,7 @@ var messagePaginationIdAround = ({
1090
1095
  parentSet,
1091
1096
  requestedPageSize,
1092
1097
  returnedPage,
1098
+ filteredReturnedPage,
1093
1099
  messagePaginationOptions
1094
1100
  }) => {
1095
1101
  const newPagination = { ...parentSet.pagination };
@@ -1097,10 +1103,13 @@ var messagePaginationIdAround = ({
1097
1103
  if (!id_around) return newPagination;
1098
1104
  let hasPrev;
1099
1105
  let hasNext;
1100
- const [firstPageMsg, lastPageMsg] = [returnedPage[0], returnedPage.slice(-1)[0]];
1106
+ const [firstFilteredPageMsg, lastFilteredPageMsg] = [
1107
+ filteredReturnedPage[0],
1108
+ filteredReturnedPage.slice(-1)[0]
1109
+ ];
1101
1110
  const [firstPageMsgIsFirstInSet, lastPageMsgIsLastInSet] = [
1102
- firstPageMsg?.id === parentSet.messages[0]?.id,
1103
- lastPageMsg?.id === parentSet.messages.slice(-1)[0]?.id
1111
+ firstFilteredPageMsg?.id === parentSet.messages[0]?.id,
1112
+ lastFilteredPageMsg?.id === parentSet.messages.slice(-1)[0]?.id
1104
1113
  ];
1105
1114
  let updateHasPrev = firstPageMsgIsFirstInSet;
1106
1115
  let updateHasNext = lastPageMsgIsLastInSet;
@@ -1135,15 +1144,19 @@ var messagePaginationLinear = ({
1135
1144
  parentSet,
1136
1145
  requestedPageSize,
1137
1146
  returnedPage,
1147
+ filteredReturnedPage,
1138
1148
  messagePaginationOptions
1139
1149
  }) => {
1140
1150
  const newPagination = { ...parentSet.pagination };
1141
1151
  let hasPrev;
1142
1152
  let hasNext;
1143
- const [firstPageMsg, lastPageMsg] = [returnedPage[0], returnedPage.slice(-1)[0]];
1153
+ const [firstFilteredPageMsg, lastFilteredPageMsg] = [
1154
+ filteredReturnedPage[0],
1155
+ filteredReturnedPage.slice(-1)[0]
1156
+ ];
1144
1157
  const [firstPageMsgIsFirstInSet, lastPageMsgIsLastInSet] = [
1145
- firstPageMsg?.id && firstPageMsg.id === parentSet.messages[0]?.id,
1146
- lastPageMsg?.id && lastPageMsg.id === parentSet.messages.slice(-1)[0]?.id
1158
+ firstFilteredPageMsg?.id && firstFilteredPageMsg.id === parentSet.messages[0]?.id,
1159
+ lastFilteredPageMsg?.id && lastFilteredPageMsg.id === parentSet.messages.slice(-1)[0]?.id
1147
1160
  ];
1148
1161
  const queriedNextMessages = messagePaginationOptions && (messagePaginationOptions.created_at_after_or_equal || messagePaginationOptions.created_at_after || messagePaginationOptions.id_gt || messagePaginationOptions.id_gte);
1149
1162
  const queriedPrevMessages = typeof messagePaginationOptions === "undefined" ? true : messagePaginationOptions.created_at_before_or_equal || messagePaginationOptions.created_at_before || messagePaginationOptions.id_lt || messagePaginationOptions.id_lte || messagePaginationOptions.offset;
@@ -1163,8 +1176,7 @@ var messagePaginationLinear = ({
1163
1176
  return newPagination;
1164
1177
  };
1165
1178
  var messageSetPagination = (params) => {
1166
- const messagesFilteredLocally = params.returnedPage.filter(({ shadowed }) => shadowed);
1167
- if (params.parentSet.messages.length + messagesFilteredLocally.length < params.returnedPage.length) {
1179
+ if (params.parentSet.messages.length + (params.returnedPage.length - params.filteredReturnedPage.length) < params.returnedPage.length) {
1168
1180
  params.logger?.(
1169
1181
  "error",
1170
1182
  "Corrupted message set state: parent set size < returned page size"
@@ -1511,9 +1523,11 @@ var ChannelState = class {
1511
1523
  addIfDoesNotExist,
1512
1524
  messageSetToAddToIfDoesNotExist
1513
1525
  );
1526
+ const filteredMessageIds = [];
1514
1527
  for (let i = 0; i < messagesToAdd.length; i += 1) {
1515
1528
  const isFromShadowBannedUser = messagesToAdd[i].shadowed;
1516
- if (isFromShadowBannedUser) {
1529
+ if (isFromShadowBannedUser && addIfDoesNotExist) {
1530
+ filteredMessageIds.push(messagesToAdd[i].id);
1517
1531
  continue;
1518
1532
  }
1519
1533
  const isMessageFormatted = messagesToAdd[i].created_at instanceof Date;
@@ -1555,7 +1569,8 @@ var ChannelState = class {
1555
1569
  }
1556
1570
  }
1557
1571
  return {
1558
- messageSet: this.messageSets[targetMessageSetIndex]
1572
+ messageSet: this.messageSets[targetMessageSetIndex],
1573
+ filteredMessageIds
1559
1574
  };
1560
1575
  }
1561
1576
  /**
@@ -9291,7 +9306,10 @@ var Channel = class {
9291
9306
  location: { enabled: state.channel.config.shared_locations }
9292
9307
  });
9293
9308
  }
9294
- const { messageSet } = this._initializeState(state, messageSetToAddToIfDoesNotExist);
9309
+ const { messageSet, filteredMessageIds } = this._initializeState(
9310
+ state,
9311
+ messageSetToAddToIfDoesNotExist
9312
+ );
9295
9313
  messageSet.pagination = {
9296
9314
  ...messageSet.pagination,
9297
9315
  ...messageSetPagination({
@@ -9299,6 +9317,9 @@ var Channel = class {
9299
9317
  messagePaginationOptions: options?.messages,
9300
9318
  requestedPageSize: options?.messages?.limit ?? DEFAULT_QUERY_CHANNEL_MESSAGE_LIST_PAGE_SIZE,
9301
9319
  returnedPage: state.messages,
9320
+ filteredReturnedPage: state.messages.filter(
9321
+ (m) => !filteredMessageIds.includes(m.id)
9322
+ ),
9302
9323
  logger: this.getClient().logger
9303
9324
  })
9304
9325
  };
@@ -9918,7 +9939,7 @@ var Channel = class {
9918
9939
  if (!this.state.messages) {
9919
9940
  this.state.initMessages();
9920
9941
  }
9921
- const { messageSet } = this.state.addMessagesSorted(
9942
+ const { messageSet, filteredMessageIds } = this.state.addMessagesSorted(
9922
9943
  messages,
9923
9944
  false,
9924
9945
  true,
@@ -9970,7 +9991,8 @@ var Channel = class {
9970
9991
  this.messageReceiptsTracker.ingestInitial(state.read);
9971
9992
  }
9972
9993
  return {
9973
- messageSet
9994
+ messageSet,
9995
+ filteredMessageIds
9974
9996
  };
9975
9997
  }
9976
9998
  _extendEventWithOwnReactions(event) {
@@ -14173,12 +14195,15 @@ var StreamChat = class _StreamChat {
14173
14195
  c.initialized = !offlineMode;
14174
14196
  c.push_preferences = channelState.push_preferences;
14175
14197
  let updatedMessagesSet;
14198
+ let filteredMessageIds = [];
14176
14199
  if (skipInitialization === void 0) {
14177
- const { messageSet } = c._initializeState(channelState, "latest");
14200
+ const { messageSet, filteredMessageIds: _filteredMessageIds } = c._initializeState(channelState, "latest");
14201
+ filteredMessageIds = _filteredMessageIds;
14178
14202
  updatedMessagesSet = messageSet;
14179
14203
  } else if (!skipInitialization.includes(channelState.channel.id)) {
14180
14204
  c.state.clearMessages();
14181
- const { messageSet } = c._initializeState(channelState, "latest");
14205
+ const { messageSet, filteredMessageIds: _filteredMessageIds } = c._initializeState(channelState, "latest");
14206
+ filteredMessageIds = _filteredMessageIds;
14182
14207
  updatedMessagesSet = messageSet;
14183
14208
  }
14184
14209
  if (updatedMessagesSet) {
@@ -14188,6 +14213,9 @@ var StreamChat = class _StreamChat {
14188
14213
  parentSet: updatedMessagesSet,
14189
14214
  requestedPageSize: queryChannelsOptions?.message_limit || DEFAULT_QUERY_CHANNELS_MESSAGE_LIST_PAGE_SIZE,
14190
14215
  returnedPage: channelState.messages,
14216
+ filteredReturnedPage: channelState.messages.filter(
14217
+ (m) => !filteredMessageIds.includes(m.id)
14218
+ ),
14191
14219
  logger: this.logger
14192
14220
  })
14193
14221
  };
@@ -15238,7 +15266,7 @@ var StreamChat = class _StreamChat {
15238
15266
  if (this.userAgent) {
15239
15267
  return this.userAgent;
15240
15268
  }
15241
- const version = "9.41.0";
15269
+ const version = "9.41.1";
15242
15270
  const clientBundle = "browser-cjs";
15243
15271
  let userAgentString = "";
15244
15272
  if (this.sdkIdentifier) {