"use client"; import { RefreshCw } from "lucide-react"; import { useEffect, useState } from "react"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; export function HealthCheckClient() { const [status, setStatus] = useState<"checking" | "online" | "offline">( "checking", ); const [checking, setChecking] = useState(false); async function checkEmulator() { setChecking(true); setStatus("checking"); try { const res = await fetch("/api/admin/devops/health"); if (res.ok) { const data = await res.json(); setStatus(data.emulator ? "online" : "offline"); } else { setStatus("offline"); } } catch { setStatus("offline"); } finally { setChecking(false); } } // biome-ignore lint/correctness/useExhaustiveDependencies: explicitly chosen here, see surrounding code useEffect(() => { checkEmulator(); }, []); return (
{status === "checking" ? "Checking..." : status === "online" ? "Online" : "Offline"}
); }