UNPKG

vremel

Version:

JavaScript date utility library for Temporal API

24 lines (22 loc) 901 B
import type { Temporal } from "../types.js"; import { formatIsoFromDateObject } from "./_formatIsoFromDateObject.js"; /** * Returns Temporal instance which represents clock (local) time of given date. * @param date `Date` object * @param TemporalClass Temporal class (such as `Temporal.Plaindate`) which will be returned * @returns an instance of Temporal class specified in `temporalClass` argument, which represents the clock time of original date */ export function toTemporalFromClockTime< TemporalClassType extends | typeof Temporal.PlainDate | typeof Temporal.PlainTime | typeof Temporal.PlainDateTime | typeof Temporal.PlainYearMonth | typeof Temporal.PlainMonthDay, >( date: Date, TemporalClass: TemporalClassType, ): InstanceType<TemporalClassType> { const dateIso = formatIsoFromDateObject(date); return TemporalClass.from(dateIso) as InstanceType<TemporalClassType>; }