"use client"; import { useState, useEffect } from "react"; import { XCUQuantumBridge } from "../../components/xcuQuantumBridge"; export default function SupremeCommandPage() { const [activeRooms, setActiveRooms] = useState<{ id: string, status: string, name: string, type: string, participants: number, metrics?: { cpu: number, ram: number, threats: number } }[]>([]); const [glitch, setGlitch] = useState(false); const [currentTime, setCurrentTime] = useState(""); const [realLatency, setRealLatency] = useState(0); useEffect(() => { let timeInterval: NodeJS.Timeout; setTimeout(() => { setCurrentTime(new Date().toLocaleTimeString('en-US', { hour12: false })); timeInterval = setInterval(() => { setCurrentTime(new Date().toLocaleTimeString('en-US', { hour12: false })); }, 1000); }, 0); const fetchRooms = async () => { try { const startTime = performance.now(); const res = await fetch('/vc/api/xcu/rooms'); const endTime = performance.now(); const data = await res.json(); if (data.success) { setGlitch(true); setTimeout(() => setGlitch(false), 200); setActiveRooms(data.rooms); setRealLatency(Math.floor(endTime - startTime)); } } catch(e) { console.error("Gagal menarik data dari Omniversal API", e); } }; fetchRooms(); const interval = setInterval(fetchRooms, 3000); return () => { clearInterval(interval); if (timeInterval) clearInterval(timeInterval); }; }, []); return (
{room.type}