From 6835e3a7b80adb956c9bd4349666277a2937982f Mon Sep 17 00:00:00 2001 From: FragginWagon Date: Thu, 29 Jan 2026 02:03:33 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=AE=20Refactor=20tournament=20details?= =?UTF-8?q?=20handling=20to=20use=20`tournamentDetailsState`=20with=20erro?= =?UTF-8?q?r=20management=20and=20remove=20redundant=20assignments?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pokedex.online/src/views/ChallongeTest.vue | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/code/websites/pokedex.online/src/views/ChallongeTest.vue b/code/websites/pokedex.online/src/views/ChallongeTest.vue index ded13b0..3cf9850 100644 --- a/code/websites/pokedex.online/src/views/ChallongeTest.vue +++ b/code/websites/pokedex.online/src/views/ChallongeTest.vue @@ -658,27 +658,26 @@ async function changePerPage(newLimit) { async function toggleTournamentDetails(tournamentId) { if (expandedTournamentId.value === tournamentId) { expandedTournamentId.value = null; - tournamentDetails.value = null; + tournamentDetailsState.reset(); return; } expandedTournamentId.value = tournamentId; - tournamentDetails.value = null; - try { + await tournamentDetailsState.execute(async () => { if (apiVersion.value === 'v1') { - const result = await client.value.tournaments.get(tournamentId, { + return await client.value.tournaments.get(tournamentId, { includeParticipants: true, includeMatches: true }); - tournamentDetails.value = result; } else { // v2.1 get tournament - const result = await client.value.tournaments.get(tournamentId); - tournamentDetails.value = result; + return await client.value.tournaments.get(tournamentId); } - } catch (err) { - handleError(err); + }); + + // Reset expanded state if there was an error + if (tournamentDetailsState.error.value) { expandedTournamentId.value = null; } }