Skip to content

Commit 362ff75

Browse files
committed
fix: cover all edge cases
1 parent 28b3674 commit 362ff75

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

package/src/components/Channel/Channel.tsx

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -948,8 +948,8 @@ const ChannelWithContext = <
948948
}
949949
}
950950
const hasLatestMessages = channel.state.latestMessages.length > 0;
951-
channel.state.setIsUpToDate(!hasLatestMessages);
952-
setHasNoMoreRecentMessagesToLoad(!hasLatestMessages);
951+
channel.state.setIsUpToDate(hasLatestMessages);
952+
setHasNoMoreRecentMessagesToLoad(hasLatestMessages);
953953
copyChannelState();
954954
if (scrollToMessageIndex !== -1) {
955955
// since we need to scroll after immediately do this without throttle
@@ -1204,9 +1204,10 @@ const ChannelWithContext = <
12041204
if (latestSet) latestSet.messages = [];
12051205
}
12061206
if (channel.state.latestMessages.length === 0) {
1207-
await channel.query({ messages: { limit: 30 } }, 'latest');
1207+
await channel.query({}, 'latest');
12081208
}
12091209
await channel.state.loadMessageIntoState('latest');
1210+
setMessages([...channel.state.messages]);
12101211
});
12111212

12121213
const loadChannel = () =>
@@ -1403,13 +1404,17 @@ const ChannelWithContext = <
14031404
}, [enableOfflineSupport, shouldSyncChannel]);
14041405

14051406
const reloadChannel = () =>
1406-
channelQueryCallRef.current(async () => {
1407-
setLoading(true);
1408-
await loadLatestMessagesRef.current(true);
1409-
setLoading(false);
1410-
channel?.state.setIsUpToDate(true);
1411-
setHasNoMoreRecentMessagesToLoad(true);
1412-
});
1407+
channelQueryCallRef.current(
1408+
async () => {
1409+
setLoading(true);
1410+
await loadLatestMessagesRef.current(true);
1411+
setLoading(false);
1412+
},
1413+
() => {
1414+
channel?.state.setIsUpToDate(true);
1415+
setHasNoMoreRecentMessagesToLoad(true);
1416+
},
1417+
);
14131418

14141419
/**
14151420
* @deprecated

package/src/components/MessageList/MessageList.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -862,9 +862,7 @@ const MessageListWithContext = <
862862

863863
const goToNewMessages = async () => {
864864
const isNotLatestSet = channel.state.messages !== channel.state.latestMessages;
865-
if (isNotLatestSet && hasNoMoreRecentMessagesToLoad) {
866-
loadChannelAroundMessage({});
867-
} else if (!hasNoMoreRecentMessagesToLoad) {
865+
if (isNotLatestSet) {
868866
resetPaginationTrackersRef.current();
869867
await reloadChannel();
870868
} else if (flatListRef.current) {

0 commit comments

Comments
 (0)