const HOUR_MS = 60 * 60 * 1000; const DAY_MS = 24 * HOUR_MS; /** How long until a date, in whole days or hours: "6 days", "3 hours". */ export const timeLeft = (until: string | Date): string => { const ms = new Date(until).getTime() - Date.now(); if (ms >= DAY_MS) { const days = Math.ceil(ms / DAY_MS); return `${days} ${days === 1 ? 'day' : 'days'}`; } const hours = Math.max(1, Math.ceil(ms / HOUR_MS)); return `${hours} ${hours === 1 ? 'hour' : 'hours'}`; };