@burglekitt/gmt
Version:
Temporal-based date and time utilities with timezone support and polyfill integration
27 lines (26 loc) • 802 B
JavaScript
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 "";
}
}