veza/apps/web/src/features/error/pages/NotFoundPage.tsx

55 lines
1.8 KiB
TypeScript
Raw Normal View History

import { Link } from 'react-router-dom';
import { Button } from '@/components/ui/button';
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from '@/components/ui/card';
import { Home, ArrowLeft, Search } from 'lucide-react';
function NotFoundPage() {
return (
<div className='min-h-screen flex items-center justify-center bg-gray-50 dark:bg-gray-900 p-4'>
<Card className='w-full max-w-md text-center'>
<CardHeader>
<div className='mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-blue-100 dark:bg-blue-900'>
<Search className='h-8 w-8 text-blue-600 dark:text-blue-400' />
</div>
<CardTitle className='text-2xl'>Page non trouvée</CardTitle>
<CardDescription>
La page que vous recherchez n'existe pas ou a é déplacée.
</CardDescription>
</CardHeader>
<CardContent className='space-y-4'>
<div className='text-6xl font-bold text-gray-300 dark:text-gray-700'>
404
</div>
<p className='text-gray-600 dark:text-gray-400'>
Il semble que vous ayez suivi un lien cassé ou tapé une URL
incorrecte.
</p>
<div className='flex flex-col sm:flex-row gap-2'>
<Button asChild className='flex-1'>
<Link to='/'>
<Home className='mr-2 h-4 w-4' />
Retour à l'accueil
</Link>
</Button>
<Button
variant='outline'
onClick={() => window.history.back()}
className='flex-1'
>
<ArrowLeft className='mr-2 h-4 w-4' />
Page précédente
</Button>
</div>
</CardContent>
</Card>
</div>
);
}
export default NotFoundPage;