'use client'; import Link from 'next/link'; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; import type { CrmDashboardSummary } from '../api/types'; function formatNumber(value: number) { return new Intl.NumberFormat('en-US', { maximumFractionDigits: 2 }).format(value); } function SummaryCard({ title, description, items, href }: { title: string; description: string; items: Array<{ label: string; value: number; suffix?: string }>; href?: string; }) { const content = ( {title} {description} {items.map((item) => (
{item.label}
{formatNumber(item.value)} {item.suffix ? {item.suffix} : null}
))}
); return href ? {content} : content; } export function DashboardSummaryCards({ summary, canViewCommercialData }: { summary: CrmDashboardSummary; canViewCommercialData: boolean; }) { return (
{canViewCommercialData ? ( ) : null} {canViewCommercialData ? ( ) : null}
); }