import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from '@/components/ui/card'; import {Button} from '@/components/ui/button'; import {useAppSelector} from '@/store'; import { AreaChart, Area, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, } from 'recharts'; // Demo data for the chart const demoData = [ {month: 'Jan', netWorth: 45000}, {month: 'Feb', netWorth: 47500}, {month: 'Mar', netWorth: 46200}, {month: 'Apr', netWorth: 52000}, {month: 'May', netWorth: 55800}, {month: 'Jun', netWorth: 58200}, ]; export default function NetWorthPage() { const {assets, liabilities} = useAppSelector(state => state.netWorth); const totalAssets = assets.reduce((sum, a) => sum + a.value, 0); const totalLiabilities = liabilities.reduce((sum, l) => sum + l.balance, 0); const netWorth = totalAssets - totalLiabilities; const formatCurrency = (value: number) => new Intl.NumberFormat('en-US', {style: 'currency', currency: 'USD'}).format(value); return (

Net Worth

Track your wealth over time

{/* Summary Cards */}
Total Assets

{formatCurrency(totalAssets)}

Total Liabilities

{formatCurrency(totalLiabilities)}

Net Worth

{formatCurrency(netWorth)}

{/* Chart */} Net Worth Over Time
`$${value / 1000}k`} /> [formatCurrency(value), 'Net Worth']} />
{/* Assets & Liabilities */}
Assets What you own
{assets.length === 0 ? (

No assets added yet

) : (
    {assets.map(asset => (
  • {asset.name} {formatCurrency(asset.value)}
  • ))}
)}
Liabilities What you owe
{liabilities.length === 0 ? (

No liabilities added yet

) : (
    {liabilities.map(liability => (
  • {liability.name} {formatCurrency(liability.balance)}
  • ))}
)}
); }