Fix load chat history on page load

This commit is contained in:
Kalle 2026-03-23 18:43:45 +02:00
parent 31f81e41c8
commit 8d0881343c

View File

@ -486,6 +486,8 @@ function ChatProviderInner({
unsubscribe,
setRooms,
setMessagesByRoom,
requestHistory,
messagesByRoom,
});
const contextValue = React.useMemo(
@ -542,6 +544,8 @@ function useChatRouteSync({
unsubscribe,
setRooms,
setMessagesByRoom,
requestHistory,
messagesByRoom,
}: {
rooms: RoomInfo[];
userId: number;
@ -555,6 +559,8 @@ function useChatRouteSync({
setMessagesByRoom: React.Dispatch<
React.SetStateAction<Record<string, ChatMessage[]>>
>;
requestHistory: (chatCode: string) => void;
messagesByRoom: Record<string, ChatMessage[]>;
}) {
const rawChatCode = useCurrentRouteChatCode();
const chatCodesKey = rawChatCode
@ -615,6 +621,9 @@ function useChatRouteSync({
if (routeChatCodeChanged) {
setActiveRoom(chatCodes[0]);
if (!messagesByRoom[chatCodes[0]]) {
requestHistory(chatCodes[0]);
}
if (layoutSize === "desktop") {
setChatOpen(true);
}
@ -632,6 +641,9 @@ function useChatRouteSync({
if (matchedRoom) {
setActiveRoom(matchedRoom.chatCode);
if (!messagesByRoom[matchedRoom.chatCode]) {
requestHistory(matchedRoom.chatCode);
}
if (layoutSize === "desktop") {
setChatOpen(true);
}
@ -652,6 +664,8 @@ function useChatRouteSync({
unsubscribe,
setRooms,
setMessagesByRoom,
requestHistory,
messagesByRoom,
]);
}