diff --git a/enjoy/src/renderer/components/posts/posts.tsx b/enjoy/src/renderer/components/posts/posts.tsx index e39a12ba..fed473a1 100644 --- a/enjoy/src/renderer/components/posts/posts.tsx +++ b/enjoy/src/renderer/components/posts/posts.tsx @@ -1,11 +1,12 @@ import { useContext, useEffect, useState } from "react"; import { AppSettingsProviderContext } from "@renderer/context"; -import { PostCard } from "@renderer/components"; +import { PostCard, LoaderSpin } from "@renderer/components"; import { useToast } from "@renderer/components//ui"; import { t } from "i18next"; export const Posts = () => { const { webApi } = useContext(AppSettingsProviderContext); + const [loading, setLoading] = useState(true); const [posts, setPosts] = useState([]); const { toast } = useToast(); @@ -28,20 +29,30 @@ export const Posts = () => { }; const fetchPosts = async () => { - webApi.posts().then( - (res) => { + webApi + .posts() + .then((res) => { setPosts(res.posts); - }, - (err) => { - console.error(err); - } - ); + }) + .catch((err) => { + toast({ + description: err.message, + variant: "destructive", + }); + }) + .finally(() => { + setLoading(false); + }); }; useEffect(() => { fetchPosts(); }, []); + if (loading) { + return ; + } + return (
{posts.length === 0 && ( diff --git a/enjoy/src/renderer/pages/community.tsx b/enjoy/src/renderer/pages/community.tsx index 47c9a44d..393d4e5d 100644 --- a/enjoy/src/renderer/pages/community.tsx +++ b/enjoy/src/renderer/pages/community.tsx @@ -26,16 +26,22 @@ export default () => { {t("square")} - {t("rankings")} + + {t("rankings")} + - - - +