lamassu-server/new-lamassu-admin/src/utils/timezones.js
2021-11-24 23:02:24 +00:00

25 lines
825 B
JavaScript

import { zonedTimeToUtc, utcToZonedTime } from 'date-fns-tz/fp'
import { format } from 'date-fns/fp'
const toUtc = date => {
const browserTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone
return zonedTimeToUtc(browserTimezone, date)
}
const toTimezone = (date, timezone) => {
const browserTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone
return utcToZonedTime(timezone, zonedTimeToUtc(browserTimezone, date))
}
const formatDate = (date, timezone, pattern) => {
const browserTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone
const newDate = utcToZonedTime(
timezone,
zonedTimeToUtc(browserTimezone, date)
)
return format(pattern, newDate)
}
const formatDateNonUtc = (date, pattern) => format(pattern, date)
export { toUtc, toTimezone, formatDate, formatDateNonUtc }