From e53d5944d0abceaba6b058b97c66e9d8072dd249 Mon Sep 17 00:00:00 2001 From: Sean O'Connor Date: Fri, 1 Aug 2025 00:18:11 -0400 Subject: [PATCH] Graph styling --- .../_components/invoice-status-chart.tsx | 11 +++-- .../_components/monthly-metrics-chart.tsx | 46 +++++++++++++------ .../dashboard/_components/revenue-chart.tsx | 16 +++---- 3 files changed, 45 insertions(+), 28 deletions(-) diff --git a/src/app/dashboard/_components/invoice-status-chart.tsx b/src/app/dashboard/_components/invoice-status-chart.tsx index 15cac77..e720384 100644 --- a/src/app/dashboard/_components/invoice-status-chart.tsx +++ b/src/app/dashboard/_components/invoice-status-chart.tsx @@ -45,10 +45,11 @@ export function InvoiceStatusChart({ invoices }: InvoiceStatusChartProps) { // Use theme-aware colors const COLORS = { - draft: "hsl(var(--muted-foreground))", - sent: "oklch(var(--chart-1))", - paid: "oklch(var(--chart-2))", - overdue: "oklch(var(--chart-3))", + draft: "hsl(0, 0%, 60%)", // grey + sent: "hsl(214, 100%, 50%)", // blue + pending: "hsl(45, 100%, 50%)", // yellow + paid: "hsl(142, 76%, 36%)", // green + overdue: "hsl(0, 84%, 60%)", // red }; const formatCurrency = (value: number) => { @@ -110,7 +111,7 @@ export function InvoiceStatusChart({ invoices }: InvoiceStatusChartProps) { cy="50%" innerRadius={40} outerRadius={80} - paddingAngle={2} + stroke="none" dataKey="count" > {chartData.map((entry, index) => ( diff --git a/src/app/dashboard/_components/monthly-metrics-chart.tsx b/src/app/dashboard/_components/monthly-metrics-chart.tsx index a1587f0..138db05 100644 --- a/src/app/dashboard/_components/monthly-metrics-chart.tsx +++ b/src/app/dashboard/_components/monthly-metrics-chart.tsx @@ -40,6 +40,7 @@ export function MonthlyMetricsChart({ invoices }: MonthlyMetricsChartProps) { paidInvoices: 0, pendingInvoices: 0, overdueInvoices: 0, + draftInvoices: 0, }; acc[monthKey].totalInvoices += 1; @@ -54,6 +55,9 @@ export function MonthlyMetricsChart({ invoices }: MonthlyMetricsChartProps) { case "overdue": acc[monthKey].overdueInvoices += 1; break; + case "draft": + acc[monthKey].draftInvoices += 1; + break; } return acc; @@ -66,6 +70,7 @@ export function MonthlyMetricsChart({ invoices }: MonthlyMetricsChartProps) { paidInvoices: number; pendingInvoices: number; overdueInvoices: number; + draftInvoices: number; } >, ); @@ -93,6 +98,7 @@ export function MonthlyMetricsChart({ invoices }: MonthlyMetricsChartProps) { paidInvoices: number; pendingInvoices: number; overdueInvoices: number; + draftInvoices: number; totalInvoices: number; }; }>; @@ -104,15 +110,16 @@ export function MonthlyMetricsChart({ invoices }: MonthlyMetricsChartProps) {

{label}

-

- Paid: {data.paidInvoices} -

-

+

Paid: {data.paidInvoices}

+

Pending: {data.pendingInvoices}

-

+

Overdue: {data.overdueInvoices}

+

+ Draft: {data.draftInvoices} +

Total: {data.totalInvoices}

@@ -147,30 +154,36 @@ export function MonthlyMetricsChart({ invoices }: MonthlyMetricsChartProps) { dataKey="monthLabel" axisLine={false} tickLine={false} - tick={{ fontSize: 12, fill: "hsl(var(--muted-foreground))" }} + tick={{ fontSize: 12, fill: "var(--muted-foreground)" }} /> } /> + @@ -182,21 +195,28 @@ export function MonthlyMetricsChart({ invoices }: MonthlyMetricsChartProps) {
+ Draft +
+
+
Paid
Pending
Overdue
diff --git a/src/app/dashboard/_components/revenue-chart.tsx b/src/app/dashboard/_components/revenue-chart.tsx index 456cf53..79b24f9 100644 --- a/src/app/dashboard/_components/revenue-chart.tsx +++ b/src/app/dashboard/_components/revenue-chart.tsx @@ -87,7 +87,7 @@ export function RevenueChart({ invoices }: RevenueChartProps) { return (

{label}

-

+

Revenue: {formatCurrency(data.revenue)}

@@ -120,14 +120,10 @@ export function RevenueChart({ invoices }: RevenueChartProps) { - + @@ -136,19 +132,19 @@ export function RevenueChart({ invoices }: RevenueChartProps) { dataKey="monthLabel" axisLine={false} tickLine={false} - tick={{ fontSize: 12, fill: "hsl(var(--muted-foreground))" }} + tick={{ fontSize: 12, fill: "var(--muted-foreground)" }} /> } />