diff --git a/lib/lovatAPI/getScouterSchedule.ts b/lib/lovatAPI/getScouterSchedule.ts index bf39a79..b58e87b 100644 --- a/lib/lovatAPI/getScouterSchedule.ts +++ b/lib/lovatAPI/getScouterSchedule.ts @@ -38,11 +38,19 @@ type ScouterScheduleScouterEntry = { allianceColor: AllianceColor; }; -export async function getScouterSchedule(): Promise { +export async function getScouterSchedule(): Promise< + ScouterSchedule | undefined +> { const tournamentKey = useTournamentStore.getState().value!.key; const response = await get("/v1/manager/scouterschedules/" + tournamentKey); if (!response.ok) { + const json = await response.json(); + + if (json["error"] === "Matches are not available for this tournamnet") { + return; + } + throw new Error("Error fetching scouter schedule"); } diff --git a/lib/services.ts b/lib/services.ts index 087db54..472eb13 100644 --- a/lib/services.ts +++ b/lib/services.ts @@ -79,11 +79,9 @@ export function createGenericServiceStore( ); } -export const useScouterScheduleStore = - createGenericServiceStore( - getScouterSchedule, - "scouterScheduleStore", - ); +export const useScouterScheduleStore = createGenericServiceStore< + ScouterSchedule | undefined +>(getScouterSchedule, "scouterScheduleStore"); export const useTeamScoutersStore = createGenericServiceStore( getTeamScouters,