export function formatCurrency(amount: number, currency = "USD") { return new Intl.NumberFormat("en-US", { style: "currency", currency, maximumFractionDigits: 2, }).format(amount); } export function formatDate(date: Date | string) { return new Date(date).toLocaleDateString("en-US", { month: "short", day: "numeric", year: "numeric", }); } export function formatDateTime(date: Date | string) { return new Date(date).toLocaleString("en-US", { month: "short", day: "numeric", hour: "numeric", minute: "2-digit", }); } export function formatDuration(seconds: number) { const h = Math.floor(seconds / 3600); const m = Math.floor((seconds % 3600) / 60); const s = seconds % 60; if (h > 0) { return `${h}:${String(m).padStart(2, "0")}:${String(s).padStart(2, "0")}`; } return `${m}:${String(s).padStart(2, "0")}`; }