UNPKG

@burglekitt/gmt

Version:

Temporal-based date and time utilities with timezone support and polyfill integration

27 lines (26 loc) 802 B
import { Temporal } from "@js-temporal/polyfill"; import { isValidTimeZone } from "../validate/index.js"; /** * Return today's date in the given IANA timeZone as an ISO date string. * * - Uses Temporal.Now.zonedDateTimeISO to get current date in timezone. * - Returns "" for invalid timezone. * * @param ianaTimezone IANA timeZone identifier * @returns ISO date string (YYYY-MM-DD) or "" when invalid * * @example getZonedToday("America/New_York") // "2024-02-29" * @example getZonedToday("invalid") // "" */ export function getZonedToday(ianaTimezone) { if (!isValidTimeZone(ianaTimezone)) { return ""; } try { const today = Temporal.Now.zonedDateTimeISO(ianaTimezone).toPlainDate(); return today.toString(); } catch { return ""; } }