/** * Renders an array of slot objects into
  • DOM nodes for display in summary lists. * Each slot must have start_utc, end_utc, price fields. */ export function render_slot_items(slots, locale, currency) { const time_opts = { hour: '2-digit', minute: '2-digit' }; return slots.map(slot => { const start = new Date(slot.start_utc); const end = new Date(slot.end_utc); const li = document.createElement('li'); li.className = 'rsv-summary-item'; li.innerHTML = `
    ${start.toLocaleDateString(locale, { weekday: 'long', day: 'numeric', month: 'long' })} ${start.toLocaleTimeString(locale, time_opts)} – ${end.toLocaleTimeString(locale, time_opts)}
    ${slot.price > 0 ? `${slot.price} ${currency}` : ''} `; return li; }); }