// Sold archive — header stats + table + gallery const SoldPage = ({ showToast }) => { useLucide(); const [view, setView] = React.useState('gallery'); const [yearFilter, setYearFilter] = React.useState('all'); const filtered = SITE_DATA.sold.filter(s => { if (yearFilter === 'all') return true; return (s.soldDate || '').startsWith(yearFilter); }); const totals = SITE_DATA.careerTotals || {}; return (
Closed transactions

Sold properties

Two decades of negotiated outcomes across Metro Vancouver — houses, townhomes, and condos, from first homes to multi-million-dollar properties. A selection of recent sales is shown below.

{/* Stats strip */}
{totals.homesSold} Homes sold
{totals.combinedValue} Combined sale value
Showing {filtered.length} recent sales
{view === 'gallery' && (
{filtered.map(s => ( showToast(s.daysOnMarket != null ? `${s.address} — sold ${formatFullPrice(s.soldPrice)} in ${s.daysOnMarket} days` : `${s.address} — sold ${formatFullPrice(s.soldPrice)}`)} /> ))}
)} {view === 'table' && (
Property Neighbourhood Sold Specs DOM Date
{filtered.map(s => { const overAsk = s.soldPrice - s.askPrice; const overAskPct = ((overAsk / s.askPrice) * 100).toFixed(1); return (
{s.address}
{s.city}
{s.neighbourhood} {formatFullPrice(s.soldPrice)} {overAsk > 0 &&
+{overAskPct}% over ask
} {overAsk < 0 &&
{overAskPct}% under ask
}
{s.beds}bd · {s.baths}ba · {s.sqft.toLocaleString()} sf {s.daysOnMarket != null ? s.daysOnMarket + 'd' : '—'} {s.soldDate ? new Date(s.soldDate).toLocaleDateString('en-CA', { month: 'short', year: 'numeric' }) : '—'}
); })}
)}
); }; window.SoldPage = SoldPage;