import Link from "next/link"; import { notFound } from "next/navigation"; import { createClient } from "@/lib/supabase/server"; import { CompetitionSidebar } from "@/components/layout/Sidebar"; import { YaltopiaFooter } from "@/components/layout/YaltopiaFooter"; export default async function CompetitionLayout({ children, params, }: { children: React.ReactNode; params: Promise<{ leagueId: string; competitionId: string }>; }) { const { leagueId, competitionId } = await params; const supabase = await createClient(); const { data: { user }, } = await supabase.auth.getUser(); const { data: competition } = await supabase .from("competitions") .select("*, leagues(name)") .eq("id", competitionId) .single(); if (!competition) notFound(); let showMyTeam = false; if (user) { const { data: compTeams } = await supabase .from("teams") .select("id") .eq("competition_id", competitionId); const ids = compTeams?.map((t) => t.id) ?? []; if (ids.length > 0) { const { count } = await supabase .from("team_members") .select("id", { count: "exact", head: true }) .eq("user_id", user.id) .eq("role", "manager") .in("team_id", ids); showMyTeam = (count ?? 0) > 0; } } return (