"use client";

import { SportsAdminShell } from "@/components/sports-admin-shell";
import { useSportsAdminClientState } from "@/components/use-sports-admin-client-state";
import type { BallboxStoreSportsAdminData } from "@/lib/sports-backend-events";

type SportsAdminClientProps = {
  initialData: BallboxStoreSportsAdminData;
};

export function SportsAdminClient({ initialData }: SportsAdminClientProps) {
  const { data, setData, busy, message, coachForm, setCoachForm, openMatchForm, setOpenMatchForm, classForm, setClassForm, runMutation } =
    useSportsAdminClientState(initialData);

  return (
    <SportsAdminShell
      data={data}
      setData={setData}
      busy={busy}
      message={message}
      coachForm={coachForm}
      setCoachForm={setCoachForm}
      openMatchForm={openMatchForm}
      setOpenMatchForm={setOpenMatchForm}
      classForm={classForm}
      setClassForm={setClassForm}
      runMutation={runMutation}
    />
  );
}
