"use client"; import Link from "next/link"; import { useStatements } from "@/lib/hooks"; function formatDate(d: string | null) { if (!d) return "-"; return new Date(d).toLocaleDateString("en-AU", { day: "2-digit", month: "short", year: "numeric", }); } function formatCurrency(amount: number | null, currency = "AUD") { if (amount === null || amount === undefined) return "-"; return new Intl.NumberFormat("en-AU", { style: "currency", currency, }).format(amount); } export default function StatementsPage() { const { data: statements, isLoading } = useStatements(); return (

Statements

{isLoading ? (

Loading...

) : !statements?.length ? (

No statements found

) : (
{statements.map((s) => (

{s.bank_name}

{s.currency}
{s.card_name && (

{s.card_name}

)}

Account: {s.account_number}

Period: {formatDate(s.billing_start_date)} - {formatDate(s.billing_end_date)}

Due: {formatDate(s.payment_due_date)}

{formatCurrency(s.total_amount_due, s.currency)}

{s.transaction_count} transactions

View
))}
)}
); }