import { PublicLive } from "@/components/public-live" import { PublicIndividualLive } from "@/components/public-individual-live" // Server-side, IKKE nettleser-fetch -- samme mønster som app/logg-inn/ // page.tsx og generateMetadata i app/t/[id]/page.tsx (peker direkte på // API-et, går IKKE gjennom next.config.mjs sin rewrites()). Avgjør // format_type FØR noe rendres, slik at en individuell turnering aldri // (heller ikke kortvarig) viser Cup-formatets side -- se CHANGELOG.md // 2026-08-21 for hele bakgrunnen (tournament-router.tsx sin tilsvarende // klient-side feil, som denne siden bevisst unngår ved å avgjøre server- // side i stedet). const API_ORIGIN = process.env.TEECUP_API_ORIGIN || "http://localhost:8000" export default async function PublicLivePage({ params, searchParams, }: { params: Promise<{ id: string }> searchParams: Promise<{ code?: string }> }) { const { id } = await params const { code } = await searchParams let formatType = "team" try { const url = `${API_ORIGIN}/public/tournaments/${id}${code ? `?code=${encodeURIComponent(code)}` : ""}` const res = await fetch(url, { cache: "no-store" }) if (res.ok) { const data: { format_type?: string } = await res.json() formatType = data.format_type === "individual" ? "individual" : "team" } } catch { // Klarte ikke å avgjøre format server-side -- fall tilbake til Cup- // siden sin egen feilhåndtering (samme "trygg fallback"-prinsipp som // resten av appen), ikke en hard krasj her. } if (formatType === "individual") { return } return }