import { NextResponse } from "next/server";
import { galeraDoServidor } from "@/app/lojas/galera-do-servidor";

/**
 * Estado ao vivo da vitrine: ranking completo + totais, numa chamada so.
 *
 * A pagina consulta isso de tempos em tempos para atualizar sem recarregar.
 * A busca, a memoria de 15 s e o ultimo valor bom moram em
 * app/lojas/galera-do-servidor.ts (o mesmo do HTML da pagina): com 50 pessoas
 * na pagina o banco continua vendo poucas consultas por minuto.
 *
 * So sai numero agregado por loja — nenhum evento, sessao, cliente ou
 * pagamento individual passa por aqui. Sem resposta do banco e sem valor bom
 * guardado, sai `ok: false` e a tela mantem o que tem (antes saia uma lista
 * vazia e a pagina dizia "0 lojas").
 */
export const dynamic = "force-dynamic";

export async function GET() {
  const galera = await galeraDoServidor();
  return NextResponse.json(galera ? { ok: true, ...galera, em: Date.now() } : { ok: false }, {
    headers: { "cache-control": "no-store" },
  });
}
