import { Link, useNavigate } from 'react-router-dom'; import { Button } from '@/components/ui/button'; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from '@/components/ui/card'; import { Home, RefreshCw, AlertTriangle, Mail, Clock, CheckCircle } from 'lucide-react'; import { useState } from 'react'; /** * FE-PAGE-018: Improved 500 error page with helpful messages and recovery actions */ function ServerErrorPage() { const navigate = useNavigate(); const [isRetrying, setIsRetrying] = useState(false); const handleRefresh = async () => { setIsRetrying(true); // Wait a bit before reloading to show feedback setTimeout(() => { window.location.reload(); }, 500); }; const handleGoHome = () => { navigate('/dashboard'); }; return (
Erreur serveur Une erreur interne s'est produite. Notre équipe a été notifiée.
500

Nous nous excusons pour la gêne occasionnée. Notre équipe technique a été automatiquement notifiée et travaille à résoudre le problème.

{/* Status Info */}

Que faire maintenant ?

  • Attendez quelques instants et réessayez
  • Vérifiez votre connexion internet
  • Si le problème persiste, contactez le support
{/* Actions */}
{/* Help Section */}

Besoin d'aide ?

L'erreur a été automatiquement signalée à notre équipe
Contactez le support si le problème persiste après plusieurs tentatives
{/* Technical Details (Collapsible) */}
Détails techniques

Code d'erreur: 500 Internal Server Error

Timestamp: {new Date().toISOString()}

User Agent: {navigator.userAgent}

); } export default ServerErrorPage;