import './ErrorState.css'; import { InwinkApiError } from '../../hooks/useInwinkApi'; interface ErrorStateProps { error: unknown; /** Callback de relance ; affiche un bouton « Réessayer » si fourni. */ onRetry?: () => void; } function describe(error: unknown): string { if (error instanceof InwinkApiError) { return error.status === 403 ? "Vous n'avez pas les droits pour cette action (403)." : `Erreur lors de l'appel à l'API inwink (code ${error.status}).`; } if (error instanceof Error) return error.message; return String(error); } /** Affiche une erreur d'appel API de façon lisible (gère `InwinkApiError`). */ export default function ErrorState({ error, onRetry }: ErrorStateProps) { return (
{describe(error)}
{onRetry && }