(date: T, calendar: Calendar)
| 336 | |
| 337 | /** Converts a date from one calendar system to another. */ |
| 338 | export function toCalendar<T extends AnyCalendarDate>(date: T, calendar: Calendar): T { |
| 339 | if (isEqualCalendar(date.calendar, calendar)) { |
| 340 | return date; |
| 341 | } |
| 342 | |
| 343 | let calendarDate = calendar.fromJulianDay(date.calendar.toJulianDay(date)); |
| 344 | let copy: Mutable<T> = date.copy(); |
| 345 | copy.calendar = calendar; |
| 346 | copy.era = calendarDate.era; |
| 347 | copy.year = calendarDate.year; |
| 348 | copy.month = calendarDate.month; |
| 349 | copy.day = calendarDate.day; |
| 350 | constrain(copy); |
| 351 | return copy; |
| 352 | } |
| 353 | |
| 354 | /** |
| 355 | * Converts a date value to a `ZonedDateTime` in the provided time zone. The `disambiguation` option |
no test coverage detected