From 89fd63c8d7924c35ac174b2fdd6ecc978174fc4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20FAMIBELLE-PRONZOLA?= Date: Thu, 24 Jul 2025 07:51:05 +0400 Subject: [PATCH] =?UTF-8?q?fix:=20corrig=C3=A9=20affichage=20erreurs=20vot?= =?UTF-8?q?e=20backend?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Extraction message d'erreur depuis objet Directus - Gestion fallback pour différents formats d'erreur - Affichage correct messages extension backend en français --- components/versions/vote-buttons.js | 2 +- lib/directus.js | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/components/versions/vote-buttons.js b/components/versions/vote-buttons.js index 3b5d05e..03c1385 100644 --- a/components/versions/vote-buttons.js +++ b/components/versions/vote-buttons.js @@ -55,7 +55,7 @@ export default function VoteButtons({versionId, isDisabled = false, hasCountsVis if (onVoteResult) { onVoteResult({ success: false, - message: `Erreur lors du vote: ${error}` + message: error.message || 'Erreur lors du vote' }) } } diff --git a/lib/directus.js b/lib/directus.js index eae680f..a8d0157 100644 --- a/lib/directus.js +++ b/lib/directus.js @@ -326,7 +326,19 @@ export async function handleVote({ return voteValue } catch (error) { console.error('Error voting:', error) - throw error + + // Extract error message from Directus error object + let errorMessage = 'Une erreur est survenue lors du vote' + + if (error?.errors?.[0]?.message) { + errorMessage = error.errors[0].message + } else if (error?.message) { + errorMessage = error.message + } else if (typeof error === 'string') { + errorMessage = error + } + + throw new Error(errorMessage) } }