"use client"; import { Broadcast } from "@phosphor-icons/react/ssr"; import type { Config } from "@/lib/config/schema"; import { useConfigSubscription, useConnectionStatus } from "@/lib/ws/client"; import { GroupSection } from "./GroupSection"; import { ThemeToggle } from "./ThemeToggle"; import { PulseMark } from "./PulseMark"; import { ToastStack } from "./Toast"; function LiveIndicator() { const status = useConnectionStatus(); const label = status === "connected" ? "live" : status === "reconnecting" ? "reconnecting…" : "connecting…"; return (
{label}
); } export function Dashboard({ config: initialConfig }: { config: Config }) { const config = useConfigSubscription(initialConfig); return (
{config.settings.title}
{config.groups.map((group, groupIndex) => ( ))}
); }