Deploy to VPS / deploy (push) Failing after 42s
Complete migration from services/frontend.old/ (Leptos 0.7 WASM + Rust) to services/frontend/ (Next.js 16 static export + TypeScript + Tailwind v4). Summary: - Port all shared types (message, guild, voice, media, dashboard, recording, ui) - Build fetch-based API client covering all 30+ backend endpoints - WebSocket client with auto-reconnect (exponential backoff, 20 attempts) - React context provider for WS with typed event subscription (22 event types) - Login page with localStorage auth + auto-redirect - Dashboard layout with sidebar, header (WS status + theme toggle) - Messages: feed, search, images tab, review tab, channel filter, detail modal - Live: voice connection, music player, recordings, mic transmit, active speakers - Dashboard: stats, user list, channel list, detail views - Mascot chatbot with history + clear - uiStateApi persistence for selected tab - Add static export config, update deploy scripts and CI
21 lines
568 B
TypeScript
21 lines
568 B
TypeScript
"use client";
|
|
|
|
import { useSearchParams } from "next/navigation";
|
|
import { DashboardPanel } from "@/features/dashboard/dashboard-panel";
|
|
import { LivePanel } from "@/features/live/live-panel";
|
|
import { MessagesPanel } from "@/features/messages/messages-panel";
|
|
|
|
export default function DashboardPage() {
|
|
const searchParams = useSearchParams();
|
|
const tab = searchParams.get("tab") ?? "messages";
|
|
|
|
switch (tab) {
|
|
case "live":
|
|
return <LivePanel />;
|
|
case "dashboard":
|
|
return <DashboardPanel />;
|
|
default:
|
|
return <MessagesPanel />;
|
|
}
|
|
}
|