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;