UNPKG

vremel

Version:

JavaScript date utility library for Temporal API

35 lines 1.01 kB
import { isPlainDate, isPlainYearMonth, isZonedDateTime, } from "../type-utils.js"; import { endOfTimeForZonedDateTime } from "./_endOfTimeForZonedDateTime.js"; /** * Returns the end of a year for the given datetime * @param dt datetime object which includes date info * @returns Temporal object which represents the end of a year */ export function endOfYear(dt) { if (isPlainYearMonth(dt)) { return dt.with({ month: dt.monthsInYear, }); } if (isPlainDate(dt)) { return dt.with({ month: dt.monthsInYear, day: Number.MAX_VALUE, }); } const withArg = { month: dt.monthsInYear, day: Number.MAX_VALUE, hour: 23, minute: 59, second: 59, millisecond: 999, microsecond: 999, nanosecond: 999, }; if (!isZonedDateTime(dt)) { return dt.with(withArg); } return endOfTimeForZonedDateTime(dt, withArg); } //# sourceMappingURL=endOfYear.js.map