'use client'; import { useParams } from 'next/navigation'; import Card from '@/components/ui/Card'; import LeagueSchedule from '@/components/leagues/LeagueSchedule'; import ScheduleRaceForm from '@/components/leagues/ScheduleRaceForm'; import { useState, useEffect } from 'react'; import { useRouter } from 'next/navigation'; import { useEffectiveDriverId } from '@/lib/currentDriver'; import { isLeagueAdminOrHigherRole } from '@/lib/leagueRoles'; export default function LeagueSchedulePage() { const params = useParams(); const router = useRouter(); const leagueId = params.id as string; const currentDriverId = useEffectiveDriverId(); const [isAdmin, setIsAdmin] = useState(false); const [showCreateForm, setShowCreateForm] = useState(false); useEffect(() => { async function checkAdmin() { const membershipRepo = getLeagueMembershipRepository(); const membership = await membershipRepo.getMembership(leagueId, currentDriverId); setIsAdmin(membership ? isLeagueAdminOrHigherRole(membership.role) : false); } checkAdmin(); }, [leagueId, currentDriverId]); return (