From e4ffdd1bae65284379251ffc5b1a501e91dc654b Mon Sep 17 00:00:00 2001 From: "Kalle (Sendou)" <38327916+Sendouc@users.noreply.github.com> Date: Mon, 17 Jan 2022 09:44:27 +0200 Subject: [PATCH] Define TeamRosterInputTeam interface --- .../tournament/TeamRosterInputs.tsx | 19 +++++++++++++++---- .../tournament/TeamRosterInputsCheckboxes.tsx | 5 ++--- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/app/components/tournament/TeamRosterInputs.tsx b/app/components/tournament/TeamRosterInputs.tsx index 6477c0933..3d24c4487 100644 --- a/app/components/tournament/TeamRosterInputs.tsx +++ b/app/components/tournament/TeamRosterInputs.tsx @@ -1,10 +1,21 @@ import clone from "just-clone"; import { TOURNAMENT_TEAM_ROSTER_MIN_SIZE } from "~/constants"; -import { FindTournamentByNameForUrlI } from "~/services/tournament"; -import { Unpacked } from "~/utils"; import { Label } from "../Label"; import { TeamRosterInputsCheckboxes } from "./TeamRosterInputsCheckboxes"; +/** Fields of a tournament team required to render `` */ +export interface TeamRosterInputTeam { + name: string; + id: string; + members: { + member: { + id: string; + discordName: string; + }; + }[]; +} + +/** Inputs to select who played for teams in a match as well as the winner. Can also be used in a presentational way. */ export function TeamRosterInputs({ teamOne, teamTwo, @@ -13,8 +24,8 @@ export function TeamRosterInputs({ checkedPlayers, setCheckedPlayers, }: { - teamOne: Unpacked; - teamTwo: Unpacked; + teamOne: TeamRosterInputTeam; + teamTwo: TeamRosterInputTeam; winnerId?: string; setWinnerId: (newId: string) => void; checkedPlayers: [string[], string[]]; diff --git a/app/components/tournament/TeamRosterInputsCheckboxes.tsx b/app/components/tournament/TeamRosterInputsCheckboxes.tsx index ace7d00e2..17a06fab1 100644 --- a/app/components/tournament/TeamRosterInputsCheckboxes.tsx +++ b/app/components/tournament/TeamRosterInputsCheckboxes.tsx @@ -1,8 +1,7 @@ import clsx from "clsx"; import { TOURNAMENT_TEAM_ROSTER_MIN_SIZE } from "~/constants"; -import type { FindTournamentByNameForUrlI } from "~/services/tournament"; -import { Unpacked } from "~/utils"; import { Label } from "../Label"; +import { TeamRosterInputTeam } from "./TeamRosterInputs"; export function TeamRosterInputsCheckboxes({ team, @@ -10,7 +9,7 @@ export function TeamRosterInputsCheckboxes({ handlePlayerClick, disabled, }: { - team: Unpacked; + team: TeamRosterInputTeam; checkedPlayers: string[]; handlePlayerClick: (playerId: string) => void; disabled: boolean;