import {DateTime, IANAZone} from 'luxon'; import {luxonIANAZonesByProfile as timezones} from '../lib/luxon-timezones.js'; const getTimezone = (profile) => { let timezone; if (timezones.has(profile)) { timezone = timezones.get(profile); } else { timezone = new IANAZone(profile.timezone); timezones.set(profile, timezone); } return timezone; }; const formatTime = (profile, when, includeOffset = false) => { const timezone = getTimezone(profile); return DateTime .fromMillis(Number(when), { locale: profile.locale, zone: timezone, }) .startOf('second') .toISO({includeOffset: includeOffset, suppressMilliseconds: true}); }; const formatTimeOfDay = (profile, when) => { const timezone = getTimezone(profile); return DateTime .fromMillis(Number(when), { locale: profile.locale, zone: timezone, }) .toFormat('HH:mm'); }; export { formatTime, formatTimeOfDay, };