diff --git a/src/app/chat/page.tsx b/src/app/chat/page.tsx index 3cbcd61..b9ab8d1 100644 --- a/src/app/chat/page.tsx +++ b/src/app/chat/page.tsx @@ -13,32 +13,46 @@ import { motion } from "framer-motion"; import { ChevronLeft, ChevronRight, - MessageCircle, Users, Settings, - PlusCircle, + TrendingUp, + NetworkIcon, + MessagesSquare, } from "lucide-react"; import Link from "next/link"; import StartNewDM from "./StartNewDM"; import AsyncValue from "@/components/AsyncValue"; +import { useRouter } from "next/navigation"; +import Cookies from "js-cookie"; +import { toast } from "sonner"; export default function ChatHub() { + const router = useRouter(); + const app = useApp(); - - const recentDMs = app.dms?.slice(0, 5) || []; - const activeServers: Server[] = Object.values(app.servers).slice(0, 5) || []; - const suggestedServers: Server[] = [ - { id: "1", name: "Frontend Devs", icon_url: "", channels: [] }, - { id: "2", name: "Gamers Lounge", icon_url: "", channels: [] }, - { id: "3", name: "Music Hub", icon_url: "", channels: [] }, + const recentPeople = app.dms.slice(0, 3); + const activeServers: Server[] = Object.values(app.servers).slice(0, 3); + const trendingServers: Server[] = [ + { + id: "cee6b20f-7e6a-4071-8df1-aab37f52bbb9", + name: "ORUS", + icon_url: "https://github.com/orus-dev.png", + channels: [], + }, + { + id: "cee6b20f-7e6a-4071-8df1-aab37f52bbb9", + name: "Saturn Client", + icon_url: "https://github.com/saturnclientmc.png", + channels: [], + }, + { + id: "cee6b20f-7e6a-4071-8df1-aab37f52bbb9", + name: "OSUI Rust Hub", + icon_url: "https://github.com/osui-rs.png", + channels: [], + }, ]; - const recentActivity = app.messages.slice(0, 5); - - const stats = { - dms: app.dms?.length || 0, - servers: app.servers?.length || 0, - // friends: app.friends?.length || 0, - }; + const recentActivity = app.messages.slice(0, 3); return ( @@ -56,7 +70,7 @@ export default function ChatHub() { Hey {app.profile?.display_name || "there"}!

- Here’s what’s happening in your network today. + Here's what's happening in your network today.

@@ -66,13 +80,13 @@ export default function ChatHub() { - - Recent DMs + + Recently chatted with - {recentDMs.length ? ( - recentDMs.map((dm) => ( + {recentPeople.length ? ( + recentPeople.map((dm) => ( - + Active Servers @@ -137,7 +151,7 @@ export default function ChatHub() { - + Recent Activity @@ -184,26 +198,43 @@ export default function ChatHub() { - - Discover Servers + + Trending Servers
- {suggestedServers.map((srv) => ( + {trendingServers.map((srv) => ( - + { + try { + Cookies.set( + "servers", + Object.keys({ + ...app.servers, + [srv.id]: srv, + }).join(",") + ); + + app.setServers((prev) => ({ + ...prev, + [srv.id]: srv, + })); + router.push(`/server/${srv.id}`); + } catch (e: any) { + toast.error(e); + } + }} + >

{srv.name}

-