import { ReactNode } from 'react'; import { Button } from './button'; import { Card, CardContent } from './card'; import { cn } from '@/lib/utils'; // FE-COMP-003: Add empty states to all list views export interface EmptyStateProps { icon?: ReactNode; title: string; description?: string; action?: { label: string; onClick: () => void; variant?: 'default' | 'outline' | 'ghost'; }; className?: string; size?: 'sm' | 'md' | 'lg'; } /** * EmptyState - Composant réutilisable pour afficher des états vides dans les listes * FE-COMP-003: Add empty states to all list views */ export function EmptyState({ icon, title, description, action, className, size = 'md', }: EmptyStateProps) { const sizeClasses = { sm: 'py-6', md: 'py-12', lg: 'py-16', }; const iconSizeClasses = { sm: 'h-8 w-8', md: 'h-12 w-12', lg: 'h-16 w-16', }; return ( {icon && (
{icon}
)}

{title}

{description && (

{description}

)} {action && ( )}
); }