|
|
| import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; |
| import type { LucideIcon } from "lucide-react"; |
|
|
| interface StatCardProps { |
| title: string; |
| value: string | number; |
| icon: LucideIcon; |
| description?: string; |
| } |
|
|
| export function StatCard({ title, value, icon: Icon, description }: StatCardProps) { |
| return ( |
| <Card className="shadow-md hover:shadow-lg transition-shadow"> |
| <CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2"> |
| <CardTitle className="text-sm font-medium text-muted-foreground">{title}</CardTitle> |
| <Icon className="h-5 w-5 text-primary" /> |
| </CardHeader> |
| <CardContent> |
| <div className="text-3xl font-bold text-foreground">{value}</div> |
| {description && <p className="text-xs text-muted-foreground pt-1">{description}</p>} |
| </CardContent> |
| </Card> |
| ); |
| } |
|
|