From a493fc2fe9fb51c445eb16c65615e3985933c622 Mon Sep 17 00:00:00 2001 From: klotske Date: Sat, 7 Jan 2023 16:14:36 +0300 Subject: [PATCH] Changed some links to NextJS & Fixed messages page --- website/src/components/Header/UserMenu.tsx | 2 ++ website/src/components/SideMenu.tsx | 3 ++- website/src/pages/messages/index.tsx | 15 ++++++++++++--- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/website/src/components/Header/UserMenu.tsx b/website/src/components/Header/UserMenu.tsx index 2e06606c..c5ca92bd 100644 --- a/website/src/components/Header/UserMenu.tsx +++ b/website/src/components/Header/UserMenu.tsx @@ -2,6 +2,7 @@ import { Box, Link, Text, useColorModeValue } from "@chakra-ui/react"; import { Popover } from "@headlessui/react"; import { AnimatePresence, motion } from "framer-motion"; import Image from "next/image"; +import NextLink from "next/link"; import { signOut, useSession } from "next-auth/react"; import React from "react"; import { FiLayout, FiLogOut, FiSettings } from "react-icons/fi"; @@ -77,6 +78,7 @@ export function UserMenu() { {accountOptions.map((item) => ( { const [messages, setMessages] = useState([]); const [userMessages, setUserMessages] = useState([]); - const { isLoading: isLoadingAll } = useSWRImmutable("/api/messages", fetcher, { + const { isLoading: isLoadingAll, mutate: mutateAll } = useSWRImmutable("/api/messages", fetcher, { onSuccess: (data) => { setMessages(data); }, }); - const { isLoading: isLoadingUser } = useSWRImmutable(`/api/messages/user`, fetcher, { + const { isLoading: isLoadingUser, mutate: mutateUser } = useSWRImmutable(`/api/messages/user`, fetcher, { onSuccess: (data) => { setUserMessages(data); }, }); + useEffect(() => { + if (messages.length == 0) { + mutateAll(); + } + if (userMessages.length == 0) { + mutateUser(); + } + }, [messages, userMessages]); + return ( <>