From f75a5dbb963802dd84d53e30837689c7c7b048ce Mon Sep 17 00:00:00 2001 From: Kalle <38327916+Sendouc@users.noreply.github.com> Date: Sun, 3 Mar 2024 11:37:48 +0200 Subject: [PATCH] Fix getting initial follow up bracket state from loader data --- app/features/calendar/routes/calendar.new.tsx | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/app/features/calendar/routes/calendar.new.tsx b/app/features/calendar/routes/calendar.new.tsx index 5521b6e9a..8f09a6e78 100644 --- a/app/features/calendar/routes/calendar.new.tsx +++ b/app/features/calendar/routes/calendar.new.tsx @@ -879,9 +879,24 @@ function TournamentFormatSelector() { } function FollowUpBrackets({ teamsPerGroup }: { teamsPerGroup: number }) { - const [_brackets, setBrackets] = React.useState>([ - { name: "Top cut", placements: [1, 2] }, - ]); + const data = useLoaderData(); + const [_brackets, setBrackets] = React.useState>( + () => { + if ( + data.tournamentCtx && + data.tournamentCtx.settings.bracketProgression[0].type === "round_robin" + ) { + return data.tournamentCtx.settings.bracketProgression + .slice(1) + .map((b) => ({ + name: b.name, + placements: b.sources?.flatMap((s) => s.placements) ?? [], + })); + } + + return [{ name: "Top cut", placements: [1, 2] }]; + }, + ); const brackets = _brackets.map((b) => ({ ...b,