From 4f9ce94209e9df115675316a20d8fb8fe71f7fa4 Mon Sep 17 00:00:00 2001 From: Leo dev Date: Wed, 15 Oct 2025 12:09:27 +0200 Subject: [PATCH] Message caching with last message --- src/app/server/[ip]/page.tsx | 8 +------- src/components/Sidebar.tsx | 3 +-- src/lib/auth.ts | 3 +-- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/src/app/server/[ip]/page.tsx b/src/app/server/[ip]/page.tsx index cf89d1f..cddc71f 100644 --- a/src/app/server/[ip]/page.tsx +++ b/src/app/server/[ip]/page.tsx @@ -21,13 +21,7 @@ export default function Server() { useEffect(() => { if (!ip) return; - auth( - ip, - wsServerRef, - setServer, - (ms) => ms.forEach(addMessage), - addMessage - ); + auth(ip, wsServerRef, setServer, addMessage); }, [ip]); return ( diff --git a/src/components/Sidebar.tsx b/src/components/Sidebar.tsx index ce1b29d..db7367d 100644 --- a/src/components/Sidebar.tsx +++ b/src/components/Sidebar.tsx @@ -79,7 +79,7 @@ export default function AppSidebar({ user?.node_address, wsRef, () => {}, - (ms) => ms.forEach(addMessage), + addMessage, (m) => { if (m.from !== chatWith && m.from !== user.id) toast( @@ -95,7 +95,6 @@ export default function AppSidebar({ if (onNewMessage) onNewMessage(m); }, - undefined, messages ? messages[messages.length - 1].id : undefined ); setUserList((prev) => { diff --git a/src/lib/auth.ts b/src/lib/auth.ts index 8df5ffd..29eaf8c 100644 --- a/src/lib/auth.ts +++ b/src/lib/auth.ts @@ -7,7 +7,6 @@ export default async function auth( id: string, wsRef: RefObject, setServer: Dispatch>, - setMessages: (m: Message[]) => void, addMessage: (m: Message) => void, onNewMessage?: (m: Message) => void, lastMessage?: number @@ -47,7 +46,7 @@ export default async function auth( switch (data.type) { case "authenticated": - setMessages(data.params.messages); + data.params.messages.forEach(addMessage); break; case "message_create":