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.
- package/dist/cjs/index.browser.js +46 -18
- package/dist/cjs/index.browser.js.map +2 -2
- package/dist/cjs/index.node.js +46 -18
- package/dist/cjs/index.node.js.map +2 -2
- package/dist/esm/index.mjs +46 -18
- package/dist/esm/index.mjs.map +2 -2
- package/dist/types/channel.d.ts +1 -0
- package/dist/types/channel_state.d.ts +2 -0
- package/dist/types/utils.d.ts +1 -0
- package/package.json +1 -1
- package/src/channel.ts +9 -2
- package/src/channel_state.ts +5 -1
- package/src/client.ts +10 -2
- package/src/utils.ts +26 -10
|
@@ -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
|
-
|
|
1071
|
-
|
|
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 [
|
|
1106
|
+
const [firstFilteredPageMsg, lastFilteredPageMsg] = [
|
|
1107
|
+
filteredReturnedPage[0],
|
|
1108
|
+
filteredReturnedPage.slice(-1)[0]
|
|
1109
|
+
];
|
|
1101
1110
|
const [firstPageMsgIsFirstInSet, lastPageMsgIsLastInSet] = [
|
|
1102
|
-
|
|
1103
|
-
|
|
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 [
|
|
1153
|
+
const [firstFilteredPageMsg, lastFilteredPageMsg] = [
|
|
1154
|
+
filteredReturnedPage[0],
|
|
1155
|
+
filteredReturnedPage.slice(-1)[0]
|
|
1156
|
+
];
|
|
1144
1157
|
const [firstPageMsgIsFirstInSet, lastPageMsgIsLastInSet] = [
|
|
1145
|
-
|
|
1146
|
-
|
|
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
|
-
|
|
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(
|
|
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.
|
|
15269
|
+
const version = "9.41.1";
|
|
15242
15270
|
const clientBundle = "browser-cjs";
|
|
15243
15271
|
let userAgentString = "";
|
|
15244
15272
|
if (this.sdkIdentifier) {
|