/** * Trouve-KA — compteur vivant des pages indexées (homepage) * Author: Simon-Pierre Boucher * Contact: contact@spboucher.ai */ "use client"; import { useEffect, useState } from "react"; import { formatNumber } from "@/lib/format"; import type { StatusResponse } from "@/lib/types"; const REFRESH_MS = 30_000; export function IndexCounter() { const [status, setStatus] = useState(null); useEffect(() => { let active = true; async function load() { try { const res = await fetch("/api/status"); if (!res.ok) return; const data = (await res.json()) as StatusResponse; if (active) setStatus(data); } catch { // Backend injoignable : le compteur reste simplement absent. } } load(); const id = setInterval(load, REFRESH_MS); return () => { active = false; clearInterval(id); }; }, []); // Espace réservé pour éviter tout saut de mise en page. if (!status) { return (