@northguild/gmt 1.19.0 → 1.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -12
- package/dist/calendar/business/businessDaysBetween.d.ts +2 -2
- package/dist/calendar/business/businessDaysBetween.js +11 -35
- package/dist/calendar/business/mergeCalendars.d.ts +1 -1
- package/dist/calendar/business/mergeCalendars.js +8 -9
- package/dist/calendar/business/nextBusinessDay.d.ts +2 -2
- package/dist/calendar/business/nextBusinessDay.js +2 -2
- package/dist/calendar/business/previousBusinessDay.d.ts +2 -2
- package/dist/calendar/business/previousBusinessDay.js +2 -2
- package/dist/calendar/business/rollDate.d.ts +3 -3
- package/dist/calendar/business/rollDate.js +10 -43
- package/dist/calendar/calculate/bucketRange.d.ts +9 -9
- package/dist/calendar/calculate/bucketRange.js +9 -9
- package/dist/calendar/calculate/floorToZone.d.ts +2 -2
- package/dist/calendar/calculate/floorToZone.js +1 -1
- package/dist/calendar/calculate/getFiscalPeriod.d.ts +50 -40
- package/dist/calendar/calculate/getFiscalPeriod.js +78 -57
- package/dist/calendar/calculate/getQuarter.d.ts +26 -21
- package/dist/calendar/calculate/getQuarter.js +48 -19
- package/dist/calendar/hours/addOperatingTime.d.ts +3 -3
- package/dist/calendar/hours/addOperatingTime.js +3 -3
- package/dist/calendar/hours/isOpenAt.d.ts +3 -3
- package/dist/calendar/hours/isOpenAt.js +3 -3
- package/dist/calendar/hours/nextCloseAt.d.ts +2 -2
- package/dist/calendar/hours/nextCloseAt.js +2 -2
- package/dist/calendar/hours/nextOpenAt.d.ts +3 -3
- package/dist/calendar/hours/nextOpenAt.js +3 -3
- package/dist/calendar/hours/operatingIntervals.d.ts +2 -2
- package/dist/calendar/hours/operatingIntervals.js +4 -6
- package/dist/calendar/hours/operatingTimeBetween.d.ts +3 -3
- package/dist/calendar/hours/operatingTimeBetween.js +6 -8
- package/dist/calendar/hours/recurringWindows.d.ts +5 -5
- package/dist/calendar/hours/recurringWindows.js +9 -10
- package/dist/calendar/index.d.ts +1 -1
- package/dist/calendar/index.js +2 -2
- package/dist/calendar/validate/index.d.ts +3 -0
- package/dist/calendar/validate/index.js +3 -0
- package/dist/calendar/validate/isValidFiscalCalendar.d.ts +23 -0
- package/dist/calendar/validate/isValidFiscalCalendar.js +44 -0
- package/dist/calendar/validate/isValidFiscalExtraWeek.d.ts +19 -0
- package/dist/calendar/validate/isValidFiscalExtraWeek.js +23 -0
- package/dist/calendar/validate/isValidFiscalPattern.d.ts +7 -7
- package/dist/calendar/validate/isValidFiscalPattern.js +7 -7
- package/dist/calendar/validate/isValidFiscalYearLabel.d.ts +20 -0
- package/dist/calendar/validate/isValidFiscalYearLabel.js +24 -0
- package/dist/calendar/validate/isValidRollConvention.js +2 -10
- package/dist/calendar/validate/isValidZoneBucketUnit.d.ts +1 -1
- package/dist/duration/calculate/absDuration.js +1 -1
- package/dist/duration/calculate/addDuration.js +1 -1
- package/dist/duration/calculate/durationFromUnits.js +1 -1
- package/dist/duration/calculate/getDurationSign.js +1 -1
- package/dist/duration/calculate/getDurationUnit.d.ts +1 -1
- package/dist/duration/calculate/getDurationUnit.js +1 -1
- package/dist/duration/calculate/negateDuration.js +1 -1
- package/dist/duration/calculate/subtractDuration.js +1 -1
- package/dist/duration/calculate/totalDuration.d.ts +4 -4
- package/dist/duration/calculate/totalDuration.js +4 -4
- package/dist/duration/calculate/totalUnits.js +1 -1
- package/dist/duration/compare/compareDurations.d.ts +3 -3
- package/dist/duration/compare/compareDurations.js +3 -3
- package/dist/duration/format/formatDuration.d.ts +9 -9
- package/dist/duration/format/formatDuration.js +14 -13
- package/dist/duration/index.d.ts +1 -1
- package/dist/duration/index.js +2 -2
- package/dist/duration/normalize/normalizeDuration.d.ts +3 -3
- package/dist/duration/normalize/normalizeDuration.js +3 -3
- package/dist/duration/parse/parseDuration.d.ts +1 -1
- package/dist/duration/parse/parseDuration.js +1 -1
- package/dist/duration/validate/isValidDuration.js +2 -11
- package/dist/gnss/convert/gnssToUtc.d.ts +24 -0
- package/dist/gnss/convert/gnssToUtc.js +39 -0
- package/dist/gnss/convert/gnssWeekToUtc.d.ts +53 -0
- package/dist/gnss/convert/gnssWeekToUtc.js +80 -0
- package/dist/gnss/convert/index.d.ts +6 -0
- package/dist/gnss/convert/index.js +6 -0
- package/dist/gnss/convert/rinexWeekToUtc.d.ts +34 -0
- package/dist/gnss/convert/rinexWeekToUtc.js +57 -0
- package/dist/gnss/convert/utcToGnss.d.ts +38 -0
- package/dist/gnss/convert/utcToGnss.js +53 -0
- package/dist/gnss/convert/utcToGnssWeek.d.ts +24 -0
- package/dist/gnss/convert/utcToGnssWeek.js +40 -0
- package/dist/gnss/convert/utcToRinexWeek.d.ts +19 -0
- package/dist/gnss/convert/utcToRinexWeek.js +45 -0
- package/dist/gnss/index.d.ts +2 -0
- package/dist/gnss/index.js +3 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.js +4 -2
- package/dist/instant/convert/classifyLocal.d.ts +4 -4
- package/dist/instant/convert/classifyLocal.js +8 -19
- package/dist/instant/convert/fromOffsetInstant.d.ts +4 -4
- package/dist/instant/convert/fromOffsetInstant.js +5 -5
- package/dist/instant/convert/resolveLocal.d.ts +9 -9
- package/dist/instant/convert/resolveLocal.js +9 -9
- package/dist/instant/convert/toOffsetInstant.d.ts +11 -11
- package/dist/instant/convert/toOffsetInstant.js +11 -28
- package/dist/instant/index.d.ts +1 -1
- package/dist/instant/index.js +2 -2
- package/dist/instant/validate/isValidUtcOffset.d.ts +1 -1
- package/dist/instant/validate/isValidUtcOffset.js +1 -1
- package/dist/intermodal/calculate/billingTimeline.js +1 -1
- package/dist/intermodal/calculate/chargeableDays.d.ts +12 -12
- package/dist/intermodal/calculate/chargeableDays.js +17 -16
- package/dist/intermodal/calculate/demurrageClock.d.ts +1 -1
- package/dist/intermodal/calculate/demurrageClock.js +2 -2
- package/dist/intermodal/calculate/freeTimeExpiry.d.ts +10 -10
- package/dist/intermodal/calculate/freeTimeExpiry.js +19 -15
- package/dist/intermodal/calculate/multimodalETA.d.ts +1 -1
- package/dist/intermodal/calculate/multimodalETA.js +2 -2
- package/dist/intermodal/format/bolTimestamp.d.ts +6 -6
- package/dist/intermodal/format/bolTimestamp.js +6 -6
- package/dist/intermodal/format/formatEpcisEvent.d.ts +1 -1
- package/dist/intermodal/format/formatEpcisEvent.js +2 -2
- package/dist/intermodal/index.d.ts +1 -1
- package/dist/intermodal/index.js +2 -2
- package/dist/intermodal/parse/parseEpcisEvent.js +1 -1
- package/dist/intermodal/validate/isValidEpcisEventTime.js +1 -1
- package/dist/internal/advanceToWeekday.d.ts +1 -1
- package/dist/internal/businessCalendar.d.ts +28 -12
- package/dist/internal/businessCalendar.js +129 -118
- package/dist/internal/businessDayValues.js +1 -1
- package/dist/internal/calendarDatePairPolicy.d.ts +1 -1
- package/dist/internal/calendarDateString.d.ts +1 -1
- package/dist/internal/calendarDateString.js +1 -1
- package/dist/internal/calendarSystemIds.js +1 -1
- package/dist/internal/calendarValueOfDate.js +1 -1
- package/dist/internal/calendarZonedPairPolicy.d.ts +1 -1
- package/dist/internal/calendarZonedString.d.ts +3 -3
- package/dist/internal/calendarZonedString.js +4 -4
- package/dist/internal/compareUnixEpochs.js +1 -1
- package/dist/internal/cutoffAtResolved.d.ts +62 -0
- package/dist/internal/cutoffAtResolved.js +162 -0
- package/dist/internal/cycleFieldValue.d.ts +0 -2
- package/dist/internal/cycleFieldValue.js +0 -2
- package/dist/internal/dateTimeUnitHelpers.d.ts +1 -1
- package/dist/internal/dateUnitHelpers.d.ts +1 -1
- package/dist/internal/daylightTime.d.ts +1 -1
- package/dist/internal/differenceRecord.d.ts +1 -1
- package/dist/internal/durationUntilString.d.ts +1 -1
- package/dist/internal/durationUntilString.js +1 -1
- package/dist/internal/dutyEngine.d.ts +6 -6
- package/dist/internal/dutyEngine.js +206 -197
- package/dist/internal/dutyPeriods.d.ts +1 -1
- package/dist/internal/dutyPeriods.js +8 -2
- package/dist/internal/dutyRules.d.ts +2 -1
- package/dist/internal/dutyRules.js +1 -1
- package/dist/internal/dutyRunIndex.d.ts +150 -0
- package/dist/internal/dutyRunIndex.js +398 -0
- package/dist/internal/earlierOccurrence.d.ts +41 -0
- package/dist/internal/earlierOccurrence.js +57 -0
- package/dist/internal/ediDateTimeFields.js +1 -1
- package/dist/internal/ediDateTimeWriter.js +1 -1
- package/dist/internal/englishCalendarNames.d.ts +1 -1
- package/dist/internal/epochDay.d.ts +41 -0
- package/dist/internal/epochDay.js +129 -0
- package/dist/internal/exactDuration.js +1 -1
- package/dist/internal/exactMoment.d.ts +4 -4
- package/dist/internal/exactMoment.js +5 -5
- package/dist/internal/fiscalCalendar.d.ts +41 -7
- package/dist/internal/fiscalCalendar.js +77 -9
- package/dist/internal/foreignEpochs.d.ts +5 -0
- package/dist/internal/foreignEpochs.js +5 -0
- package/dist/internal/formatCalendarDays.d.ts +4 -4
- package/dist/internal/formatCalendarDays.js +6 -5
- package/dist/internal/formatDateInCalendar.d.ts +1 -1
- package/dist/internal/formatRelativeDuration.d.ts +7 -7
- package/dist/internal/formatRelativeDuration.js +8 -7
- package/dist/internal/formatterCache.d.ts +40 -0
- package/dist/internal/formatterCache.js +181 -0
- package/dist/internal/freeTimeLedger.d.ts +31 -43
- package/dist/internal/freeTimeLedger.js +322 -30
- package/dist/internal/getLocaleWeekYearBounds.d.ts +1 -1
- package/dist/internal/gnssTimeScales.d.ts +53 -0
- package/dist/internal/gnssTimeScales.js +128 -0
- package/dist/internal/gnssWeek.d.ts +92 -0
- package/dist/internal/gnssWeek.js +212 -0
- package/dist/internal/halfOpenIntervals.d.ts +1 -1
- package/dist/internal/halfOpenIntervals.js +1 -1
- package/dist/internal/hasCalendarAnnotation.d.ts +3 -3
- package/dist/internal/hasCalendarAnnotation.js +3 -3
- package/dist/internal/hourDurationString.js +1 -1
- package/dist/internal/httpDateFields.js +1 -1
- package/dist/internal/index.d.ts +9 -3
- package/dist/internal/index.js +9 -3
- package/dist/internal/inputChecks.d.ts +53 -0
- package/dist/internal/inputChecks.js +132 -0
- package/dist/internal/instantFormatOptions.d.ts +1 -1
- package/dist/internal/instantFormatOptions.js +4 -8
- package/dist/internal/instantIntervalText.js +1 -1
- package/dist/internal/instantNanoseconds.d.ts +2 -2
- package/dist/internal/instantNanoseconds.js +2 -2
- package/dist/internal/intervalCountHelpers.d.ts +1 -1
- package/dist/internal/isoStringBody.d.ts +2 -2
- package/dist/internal/isoStringBody.js +2 -2
- package/dist/internal/joinDateTimeConnector.js +3 -2
- package/dist/internal/leapSeconds.d.ts +63 -0
- package/dist/internal/leapSeconds.js +162 -0
- package/dist/internal/localeWeekInfo.d.ts +1 -1
- package/dist/internal/localeWeekInfo.js +1 -1
- package/dist/internal/monthGridWeekRow.d.ts +1 -1
- package/dist/internal/normalizeDateTime.d.ts +2 -1
- package/dist/internal/normalizeDateTime.js +3 -2
- package/dist/internal/normalizeTimeZone.d.ts +1 -1
- package/dist/internal/normalizeTimeZone.js +1 -1
- package/dist/internal/offsetTimeline.d.ts +56 -0
- package/dist/internal/offsetTimeline.js +166 -0
- package/dist/internal/operatingSchedule.d.ts +28 -32
- package/dist/internal/operatingSchedule.js +538 -176
- package/dist/internal/patternToken.js +10 -7
- package/dist/internal/plainDateAdd.d.ts +1 -1
- package/dist/internal/plainDateAdd.js +1 -1
- package/dist/internal/plainDateUntil.d.ts +1 -1
- package/dist/internal/plainDateUntil.js +1 -1
- package/dist/internal/readSetFields.js +1 -1
- package/dist/internal/resolveDurationRelativeTo.d.ts +1 -1
- package/dist/internal/resolveDurationRelativeTo.js +1 -1
- package/dist/internal/resolveLocale.d.ts +2 -2
- package/dist/internal/resolveLocale.js +2 -2
- package/dist/internal/resolveManualRoundingOptions.d.ts +1 -1
- package/dist/internal/resolveUnixIntervalPair.d.ts +1 -1
- package/dist/internal/rinexWeek.d.ts +22 -0
- package/dist/internal/rinexWeek.js +30 -0
- package/dist/internal/rollBusinessDate.d.ts +15 -0
- package/dist/internal/rollBusinessDate.js +46 -0
- package/dist/internal/splitStep.d.ts +1 -1
- package/dist/internal/splitStep.js +1 -1
- package/dist/internal/startOrEndOfUnix.d.ts +1 -1
- package/dist/internal/startOrEndOfUtc.d.ts +1 -1
- package/dist/internal/startOrEndOfUtc.js +1 -1
- package/dist/internal/startOrEndOfZoned.d.ts +1 -1
- package/dist/internal/temporal.d.ts +5 -0
- package/dist/internal/temporal.js +5 -0
- package/dist/internal/temporalCompat/calendarDateArithmetic.d.ts +1 -1
- package/dist/internal/temporalCompat/calendarDateFromFields.d.ts +1 -1
- package/dist/internal/temporalCompat/calendarDateFromFields.js +1 -1
- package/dist/internal/temporalCompat/calendarFields.d.ts +1 -1
- package/dist/internal/temporalCompat/capabilities.d.ts +27 -5
- package/dist/internal/temporalCompat/capabilities.js +28 -4
- package/dist/internal/temporalCompat/fieldSearch.d.ts +1 -1
- package/dist/internal/temporalCompat/fieldSearch.js +1 -1
- package/dist/internal/temporalCompat/fixedDay.d.ts +1 -1
- package/dist/internal/temporalCompat/fixedDay.js +1 -1
- package/dist/internal/temporalCompat/index.d.ts +1 -1
- package/dist/internal/temporalCompat/index.js +1 -1
- package/dist/internal/temporalCompat/largeMonthSpan.js +1 -1
- package/dist/internal/temporalCompat/nonIsoArithmetic.d.ts +1 -1
- package/dist/internal/temporalCompat/nonIsoArithmetic.js +1 -1
- package/dist/internal/temporalCompat/probeRepros.d.ts +35 -0
- package/dist/internal/temporalCompat/probeRepros.js +571 -0
- package/dist/internal/temporalCompat/readArithmeticModel.js +2 -2
- package/dist/internal/temporalCompat/repros.d.ts +3 -10
- package/dist/internal/temporalCompat/repros.js +13 -520
- package/dist/internal/timeScaleString.d.ts +47 -0
- package/dist/internal/timeScaleString.js +86 -0
- package/dist/internal/toInstantFromUtc.d.ts +1 -1
- package/dist/internal/toInstantFromUtc.js +1 -1
- package/dist/internal/unixEpochValue.d.ts +1 -1
- package/dist/internal/unixEpochValue.js +1 -1
- package/dist/internal/unixFormatReference.d.ts +1 -1
- package/dist/internal/unixFormatReference.js +1 -1
- package/dist/internal/unixWallClock.d.ts +1 -1
- package/dist/internal/utcOffsetString.d.ts +16 -0
- package/dist/internal/utcOffsetString.js +31 -1
- package/dist/internal/utcReading.d.ts +59 -0
- package/dist/internal/utcReading.js +113 -0
- package/dist/internal/utcWallClock.d.ts +1 -1
- package/dist/internal/utcWallClock.js +1 -1
- package/dist/internal/validatedZones.d.ts +20 -0
- package/dist/internal/validatedZones.js +33 -0
- package/dist/internal/wallClockAtOffset.d.ts +1 -1
- package/dist/internal/yearWindowStart.js +1 -1
- package/dist/internal/zoneBucketCap.d.ts +1 -1
- package/dist/internal/zoneBucketCap.js +2 -2
- package/dist/internal/zoneFrame.d.ts +4 -4
- package/dist/internal/zoneFrame.js +4 -4
- package/dist/internal/zonedBucket.d.ts +2 -2
- package/dist/internal/zonedBucket.js +92 -21
- package/dist/internal/zonedFormatReference.d.ts +1 -1
- package/dist/internal/zonedFormatReference.js +1 -1
- package/dist/internal/zonedLocalDates.d.ts +1 -1
- package/dist/internal/zonedLocalDates.js +22 -19
- package/dist/internal/zonedNowUnitValue.d.ts +1 -1
- package/dist/internal/zonedNowUnitValue.js +1 -1
- package/dist/internal/zonedTransitionSearch.d.ts +2 -0
- package/dist/internal/zonedTransitionSearch.js +165 -16
- package/dist/internal/zonedWallClock.d.ts +15 -4
- package/dist/internal/zonedWallClock.js +34 -6
- package/dist/internal/zonedWallClockDifference.d.ts +1 -1
- package/dist/internal/zonedWallClockDifference.js +2 -2
- package/dist/internal/zonedWallClockOperations.d.ts +2 -2
- package/dist/internal/zonedWallClockOperations.js +51 -6
- package/dist/internal/zonelessCalendarDate.d.ts +1 -1
- package/dist/internal/zonelessCalendarDate.js +1 -1
- package/dist/interval/index.d.ts +1 -1
- package/dist/interval/index.js +2 -2
- package/dist/plain/calculate/addBusinessDays.d.ts +2 -2
- package/dist/plain/calculate/addBusinessDays.js +2 -2
- package/dist/plain/calculate/addDateTime.js +1 -1
- package/dist/plain/calculate/addTime.js +1 -1
- package/dist/plain/calculate/clampDate.js +1 -1
- package/dist/plain/calculate/closestDateTo.js +1 -1
- package/dist/plain/calculate/cycleDate.js +1 -1
- package/dist/plain/calculate/cycleDateTime.js +1 -1
- package/dist/plain/calculate/cycleTime.js +1 -1
- package/dist/plain/calculate/diffDate.d.ts +1 -1
- package/dist/plain/calculate/diffDateAsDuration.d.ts +1 -1
- package/dist/plain/calculate/diffDateTime.d.ts +1 -1
- package/dist/plain/calculate/diffDateTime.js +1 -1
- package/dist/plain/calculate/diffDateTimeAsDuration.d.ts +1 -1
- package/dist/plain/calculate/diffDateTimeAsDuration.js +1 -1
- package/dist/plain/calculate/diffTime.d.ts +1 -1
- package/dist/plain/calculate/diffTime.js +1 -1
- package/dist/plain/calculate/endOfDate.d.ts +1 -1
- package/dist/plain/calculate/endOfDate.js +1 -1
- package/dist/plain/calculate/endOfDateTime.d.ts +1 -1
- package/dist/plain/calculate/endOfDateTime.js +1 -1
- package/dist/plain/calculate/endOfQuarterForDate.js +1 -1
- package/dist/plain/calculate/endOfQuarterForDateTime.js +1 -1
- package/dist/plain/calculate/endOfTime.d.ts +1 -1
- package/dist/plain/calculate/endOfTime.js +1 -1
- package/dist/plain/calculate/getDayOfYear.js +1 -1
- package/dist/plain/calculate/getDaysInMonth.js +1 -1
- package/dist/plain/calculate/getDaysInYear.js +1 -1
- package/dist/plain/calculate/getLargestDateDurationUnit.d.ts +1 -1
- package/dist/plain/calculate/getLargestDateTimeDurationUnit.d.ts +1 -1
- package/dist/plain/calculate/getLargestTimeDurationUnit.d.ts +1 -1
- package/dist/plain/calculate/getLocaleDayOfWeek.d.ts +6 -6
- package/dist/plain/calculate/getLocaleDayOfWeek.js +7 -7
- package/dist/plain/calculate/getLocaleEndOfWeek.d.ts +4 -4
- package/dist/plain/calculate/getLocaleEndOfWeek.js +5 -5
- package/dist/plain/calculate/getLocaleStartOfWeek.d.ts +5 -5
- package/dist/plain/calculate/getLocaleStartOfWeek.js +6 -6
- package/dist/plain/calculate/getLocaleWeekYear.d.ts +10 -10
- package/dist/plain/calculate/getLocaleWeekYear.js +11 -11
- package/dist/plain/calculate/getQuarterForDate.js +1 -1
- package/dist/plain/calculate/getQuarterForDateTime.js +1 -1
- package/dist/plain/calculate/getWeekNumber.js +1 -1
- package/dist/plain/calculate/getWeekOfMonth.d.ts +10 -14
- package/dist/plain/calculate/getWeekOfMonth.js +11 -15
- package/dist/plain/calculate/getWeekYear.js +1 -1
- package/dist/plain/calculate/getWeeksInLocaleWeekYear.d.ts +7 -7
- package/dist/plain/calculate/getWeeksInLocaleWeekYear.js +8 -8
- package/dist/plain/calculate/getWeeksInMonth.d.ts +8 -11
- package/dist/plain/calculate/getWeeksInMonth.js +9 -12
- package/dist/plain/calculate/getWeeksInYear.js +1 -1
- package/dist/plain/calculate/maxDate.js +1 -1
- package/dist/plain/calculate/maxDateTime.js +1 -1
- package/dist/plain/calculate/maxTime.js +1 -1
- package/dist/plain/calculate/minDate.js +1 -1
- package/dist/plain/calculate/minDateTime.js +1 -1
- package/dist/plain/calculate/minTime.js +1 -1
- package/dist/plain/calculate/nextWeekday.d.ts +14 -12
- package/dist/plain/calculate/nextWeekday.js +15 -13
- package/dist/plain/calculate/previousWeekday.d.ts +14 -12
- package/dist/plain/calculate/previousWeekday.js +15 -13
- package/dist/plain/calculate/roundDate.d.ts +1 -1
- package/dist/plain/calculate/roundDate.js +1 -1
- package/dist/plain/calculate/roundDateTime.d.ts +1 -1
- package/dist/plain/calculate/roundDateTime.js +1 -1
- package/dist/plain/calculate/roundTime.d.ts +1 -1
- package/dist/plain/calculate/roundTime.js +1 -1
- package/dist/plain/calculate/setDate.d.ts +1 -1
- package/dist/plain/calculate/setDate.js +1 -1
- package/dist/plain/calculate/setDateTime.d.ts +1 -1
- package/dist/plain/calculate/setDateTime.js +1 -1
- package/dist/plain/calculate/setTime.d.ts +1 -1
- package/dist/plain/calculate/setTime.js +1 -1
- package/dist/plain/calculate/sortDateTimes.js +1 -1
- package/dist/plain/calculate/sortDates.js +1 -1
- package/dist/plain/calculate/sortTimes.js +1 -1
- package/dist/plain/calculate/startOfDate.d.ts +1 -1
- package/dist/plain/calculate/startOfDate.js +1 -1
- package/dist/plain/calculate/startOfDateTime.d.ts +1 -1
- package/dist/plain/calculate/startOfDateTime.js +1 -1
- package/dist/plain/calculate/startOfQuarterForDate.js +1 -1
- package/dist/plain/calculate/startOfQuarterForDateTime.js +1 -1
- package/dist/plain/calculate/startOfTime.d.ts +1 -1
- package/dist/plain/calculate/startOfTime.js +1 -1
- package/dist/plain/calculate/subtractBusinessDays.d.ts +2 -2
- package/dist/plain/calculate/subtractBusinessDays.js +2 -2
- package/dist/plain/calculate/subtractDate.js +1 -1
- package/dist/plain/calculate/subtractDateTime.js +1 -1
- package/dist/plain/calculate/subtractTime.js +1 -1
- package/dist/plain/calculate/weekOfYearForDate.js +1 -1
- package/dist/plain/calculate/weekOfYearForDateTime.js +1 -1
- package/dist/plain/chop/chopDate.js +1 -1
- package/dist/plain/chop/chopMilliseconds.js +1 -1
- package/dist/plain/chop/chopSeconds.js +1 -1
- package/dist/plain/chop/chopTime.js +1 -1
- package/dist/plain/compare/areDateTimesEqual.js +1 -1
- package/dist/plain/compare/areDateTimesEqualBy.d.ts +2 -4
- package/dist/plain/compare/areDateTimesEqualBy.js +2 -4
- package/dist/plain/compare/areDatesEqual.js +1 -1
- package/dist/plain/compare/areDatesEqualBy.d.ts +5 -5
- package/dist/plain/compare/areDatesEqualBy.js +5 -5
- package/dist/plain/compare/areTimesEqual.js +1 -1
- package/dist/plain/compare/isAfterDate.js +1 -1
- package/dist/plain/compare/isAfterDateTime.js +1 -1
- package/dist/plain/compare/isAfterTime.js +1 -1
- package/dist/plain/compare/isBeforeDate.js +1 -1
- package/dist/plain/compare/isBeforeDateTime.js +1 -1
- package/dist/plain/compare/isBeforeTime.js +1 -1
- package/dist/plain/compare/isBetweenDate.js +1 -1
- package/dist/plain/compare/isBetweenDateTime.js +1 -1
- package/dist/plain/compare/isBetweenTime.js +1 -1
- package/dist/plain/compare/isBusinessDay.d.ts +2 -2
- package/dist/plain/compare/isBusinessDay.js +3 -3
- package/dist/plain/compare/isRelativeDay.d.ts +1 -1
- package/dist/plain/compare/isRelativeDay.js +1 -1
- package/dist/plain/compare/isThisUnit.d.ts +8 -6
- package/dist/plain/compare/isThisUnit.js +7 -5
- package/dist/plain/compare/isWeekend.d.ts +5 -5
- package/dist/plain/compare/isWeekend.js +6 -6
- package/dist/plain/format/formatCalendar.d.ts +3 -5
- package/dist/plain/format/formatCalendar.js +10 -9
- package/dist/plain/format/formatDate.d.ts +4 -4
- package/dist/plain/format/formatDate.js +8 -7
- package/dist/plain/format/formatDateRange.d.ts +4 -4
- package/dist/plain/format/formatDateRange.js +8 -7
- package/dist/plain/format/formatDateTime.d.ts +4 -4
- package/dist/plain/format/formatDateTime.js +8 -7
- package/dist/plain/format/formatDateTimeRange.d.ts +4 -4
- package/dist/plain/format/formatDateTimeRange.js +8 -7
- package/dist/plain/format/formatDateTimeToParts.d.ts +6 -6
- package/dist/plain/format/formatDateTimeToParts.js +10 -9
- package/dist/plain/format/formatDateToParts.d.ts +6 -6
- package/dist/plain/format/formatDateToParts.js +10 -9
- package/dist/plain/format/formatRelativeDate.d.ts +3 -3
- package/dist/plain/format/formatRelativeDate.js +4 -4
- package/dist/plain/format/formatRelativeDateTime.d.ts +3 -3
- package/dist/plain/format/formatRelativeDateTime.js +4 -4
- package/dist/plain/format/formatRelativeTime.d.ts +3 -3
- package/dist/plain/format/formatRelativeTime.js +4 -4
- package/dist/plain/format/formatSqlDateTime.js +1 -1
- package/dist/plain/format/formatTime.d.ts +4 -4
- package/dist/plain/format/formatTime.js +8 -7
- package/dist/plain/get/getDay.js +1 -1
- package/dist/plain/get/getDayOfWeek.js +1 -1
- package/dist/plain/get/getHour.js +1 -1
- package/dist/plain/get/getMicrosecond.js +1 -1
- package/dist/plain/get/getMillisecond.js +1 -1
- package/dist/plain/get/getMinute.js +1 -1
- package/dist/plain/get/getMonth.js +1 -1
- package/dist/plain/get/getNanosecond.js +1 -1
- package/dist/plain/get/getNow.js +1 -1
- package/dist/plain/get/getNowUnit.js +1 -1
- package/dist/plain/get/getSecond.js +1 -1
- package/dist/plain/get/getToday.js +1 -1
- package/dist/plain/get/getWeekOfYear.js +1 -1
- package/dist/plain/get/getYear.js +1 -1
- package/dist/plain/index.d.ts +1 -1
- package/dist/plain/index.js +2 -2
- package/dist/plain/interval/intervalAbutsDate.d.ts +1 -2
- package/dist/plain/interval/intervalAbutsDate.js +2 -3
- package/dist/plain/interval/intervalAbutsDateTime.js +1 -1
- package/dist/plain/interval/intervalAbutsTime.js +1 -1
- package/dist/plain/interval/intervalContainsDate.d.ts +1 -1
- package/dist/plain/interval/intervalContainsDate.js +2 -2
- package/dist/plain/interval/intervalContainsDateTime.js +1 -1
- package/dist/plain/interval/intervalContainsTime.js +1 -1
- package/dist/plain/interval/intervalCountDate.js +1 -1
- package/dist/plain/interval/intervalCountDateTime.js +1 -1
- package/dist/plain/interval/intervalCountTime.js +1 -1
- package/dist/plain/interval/intervalDifferenceDate.d.ts +1 -1
- package/dist/plain/interval/intervalDifferenceDate.js +2 -2
- package/dist/plain/interval/intervalDifferenceDateTime.js +1 -1
- package/dist/plain/interval/intervalDifferenceTime.js +1 -1
- package/dist/plain/interval/intervalDivideEquallyDate.d.ts +3 -3
- package/dist/plain/interval/intervalDivideEquallyDate.js +3 -3
- package/dist/plain/interval/intervalDivideEquallyDateTime.js +1 -1
- package/dist/plain/interval/intervalDivideEquallyTime.js +1 -1
- package/dist/plain/interval/intervalEngulfsDate.d.ts +1 -1
- package/dist/plain/interval/intervalEngulfsDate.js +2 -2
- package/dist/plain/interval/intervalEngulfsDateTime.js +1 -1
- package/dist/plain/interval/intervalEngulfsTime.js +1 -1
- package/dist/plain/interval/intervalFromDurationDate.js +1 -1
- package/dist/plain/interval/intervalFromDurationDateTime.js +1 -1
- package/dist/plain/interval/intervalFromDurationTime.js +1 -1
- package/dist/plain/interval/intervalIntersectionDate.d.ts +1 -1
- package/dist/plain/interval/intervalIntersectionDate.js +2 -2
- package/dist/plain/interval/intervalIntersectionDateTime.js +1 -1
- package/dist/plain/interval/intervalIntersectionTime.js +1 -1
- package/dist/plain/interval/intervalLengthDateTime.js +1 -1
- package/dist/plain/interval/intervalLengthTime.js +1 -1
- package/dist/plain/interval/intervalOverlappingDaysDate.js +1 -1
- package/dist/plain/interval/intervalOverlappingDaysDateTime.js +1 -1
- package/dist/plain/interval/intervalSplitAtDate.d.ts +1 -1
- package/dist/plain/interval/intervalSplitAtDate.js +2 -2
- package/dist/plain/interval/intervalSplitAtDateTime.js +1 -1
- package/dist/plain/interval/intervalSplitAtTime.js +1 -1
- package/dist/plain/interval/intervalUnionDate.d.ts +2 -2
- package/dist/plain/interval/intervalUnionDate.js +3 -3
- package/dist/plain/interval/intervalUnionDateTime.js +1 -1
- package/dist/plain/interval/intervalUnionTime.js +1 -1
- package/dist/plain/interval/intervalXorAllDate.d.ts +1 -1
- package/dist/plain/interval/intervalXorAllDate.js +2 -2
- package/dist/plain/interval/intervalXorAllDateTime.js +1 -1
- package/dist/plain/interval/intervalXorAllTime.js +1 -1
- package/dist/plain/interval/intervalXorDate.d.ts +1 -1
- package/dist/plain/interval/intervalXorDate.js +2 -2
- package/dist/plain/interval/intervalXorDateTime.js +1 -1
- package/dist/plain/interval/intervalXorTime.js +1 -1
- package/dist/plain/interval/intervalsOverlapDate.d.ts +1 -1
- package/dist/plain/interval/intervalsOverlapDate.js +2 -2
- package/dist/plain/interval/intervalsOverlapDateTime.js +1 -1
- package/dist/plain/interval/intervalsOverlapTime.js +1 -1
- package/dist/plain/interval/mergeIntervalsDate.d.ts +1 -1
- package/dist/plain/interval/mergeIntervalsDate.js +2 -2
- package/dist/plain/interval/mergeIntervalsDateTime.js +1 -1
- package/dist/plain/interval/mergeIntervalsTime.js +1 -1
- package/dist/plain/interval/splitIntervalByUnitDate.d.ts +2 -3
- package/dist/plain/interval/splitIntervalByUnitDate.js +3 -4
- package/dist/plain/interval/splitIntervalByUnitDateTime.d.ts +2 -1
- package/dist/plain/interval/splitIntervalByUnitDateTime.js +3 -2
- package/dist/plain/interval/splitIntervalByUnitTime.js +1 -1
- package/dist/plain/interval/validate/isValidDateInterval.d.ts +1 -1
- package/dist/plain/interval/validate/isValidDateInterval.js +2 -2
- package/dist/plain/interval/validate/isValidDateTimeInterval.js +1 -1
- package/dist/plain/interval/validate/isValidTimeInterval.js +1 -1
- package/dist/plain/locale/getLocaleEraNames.d.ts +6 -6
- package/dist/plain/locale/getLocaleEraNames.js +8 -7
- package/dist/plain/locale/getLocaleMeridiems.d.ts +5 -5
- package/dist/plain/locale/getLocaleMeridiems.js +7 -6
- package/dist/plain/locale/getLocaleMonthNames.d.ts +6 -6
- package/dist/plain/locale/getLocaleMonthNames.js +17 -11
- package/dist/plain/locale/getLocaleWeekdayNames.d.ts +3 -3
- package/dist/plain/locale/getLocaleWeekdayNames.js +12 -5
- package/dist/plain/map/mapDatesInRange.js +1 -1
- package/dist/plain/map/mapDaysInMonth.js +1 -1
- package/dist/plain/parse/parseDateTimeWithPattern.d.ts +14 -13
- package/dist/plain/parse/parseDateTimeWithPattern.js +15 -14
- package/dist/plain/parse/parseDateWithPattern.d.ts +18 -17
- package/dist/plain/parse/parseDateWithPattern.js +19 -18
- package/dist/plain/parse/parseDayFromDate.js +1 -1
- package/dist/plain/parse/parseDayFromDateTime.js +1 -1
- package/dist/plain/parse/parseDayOfWeekFromDate.js +1 -1
- package/dist/plain/parse/parseDayOfWeekFromDateTime.js +1 -1
- package/dist/plain/parse/parseHourFromDateTime.js +1 -1
- package/dist/plain/parse/parseHourFromTime.js +1 -1
- package/dist/plain/parse/parseMicrosecondFromDateTime.js +1 -1
- package/dist/plain/parse/parseMicrosecondFromTime.js +1 -1
- package/dist/plain/parse/parseMillisecondFromDateTime.js +1 -1
- package/dist/plain/parse/parseMillisecondFromTime.js +1 -1
- package/dist/plain/parse/parseMinuteFromDateTime.js +1 -1
- package/dist/plain/parse/parseMinuteFromTime.js +1 -1
- package/dist/plain/parse/parseMonthFromDate.js +1 -1
- package/dist/plain/parse/parseMonthFromDateTime.js +1 -1
- package/dist/plain/parse/parseNanosecondFromDateTime.js +1 -1
- package/dist/plain/parse/parseNanosecondFromTime.js +1 -1
- package/dist/plain/parse/parseSecondFromDateTime.js +1 -1
- package/dist/plain/parse/parseSecondFromTime.js +1 -1
- package/dist/plain/parse/parseSqlDateTime.js +1 -1
- package/dist/plain/parse/parseTimeWithPattern.d.ts +6 -4
- package/dist/plain/parse/parseTimeWithPattern.js +7 -5
- package/dist/plain/parse/parseUnitFromDate.d.ts +1 -1
- package/dist/plain/parse/parseUnitFromDate.js +1 -1
- package/dist/plain/parse/parseUnitFromDateTime.d.ts +1 -1
- package/dist/plain/parse/parseUnitFromDateTime.js +1 -1
- package/dist/plain/parse/parseUnitFromTime.d.ts +1 -1
- package/dist/plain/parse/parseUnitFromTime.js +1 -1
- package/dist/plain/parse/parseWeekFromDateTime.js +1 -1
- package/dist/plain/parse/parseYearFromDate.js +1 -1
- package/dist/plain/parse/parseYearFromDateTime.js +1 -1
- package/dist/plain/validate/{isLeapSecond.d.ts → hasSecond60.d.ts} +16 -14
- package/dist/plain/validate/{isLeapSecond.js → hasSecond60.js} +16 -14
- package/dist/plain/validate/index.d.ts +1 -1
- package/dist/plain/validate/index.js +1 -1
- package/dist/plain/validate/isLeapYear.js +1 -1
- package/dist/plain/validate/isValidDate.js +2 -17
- package/dist/plain/validate/isValidDateRange.js +1 -1
- package/dist/plain/validate/isValidDateTime.d.ts +1 -1
- package/dist/plain/validate/isValidDateTime.js +4 -4
- package/dist/plain/validate/isValidDateTimeRange.js +1 -1
- package/dist/plain/validate/isValidIsoDateLike.js +3 -3
- package/dist/plain/validate/isValidTime.js +2 -18
- package/dist/plain/validate/isValidTimeRange.js +1 -1
- package/dist/precision/convert/fromNanoseconds.d.ts +2 -2
- package/dist/precision/convert/fromNanoseconds.js +3 -3
- package/dist/precision/convert/toNanoseconds.d.ts +2 -2
- package/dist/precision/convert/toNanoseconds.js +2 -2
- package/dist/precision/index.d.ts +1 -1
- package/dist/precision/index.js +2 -2
- package/dist/precision/validate/isValidInstant.d.ts +1 -1
- package/dist/precision/validate/isValidInstant.js +1 -1
- package/dist/regex/calendar-zoned-date-time.d.ts +4 -4
- package/dist/regex/calendar-zoned-date-time.js +4 -4
- package/dist/regex/index.d.ts +1 -1
- package/dist/regex/index.js +2 -2
- package/dist/regex/leap-second.d.ts +1 -1
- package/dist/regex/leap-second.js +1 -1
- package/dist/regex/time-zone-like.d.ts +2 -2
- package/dist/regex/time-zone-like.js +2 -2
- package/dist/span/calculate/spanMs.d.ts +4 -3
- package/dist/span/calculate/spanMs.js +4 -3
- package/dist/span/calculate/spanNs.d.ts +4 -3
- package/dist/span/calculate/spanNs.js +4 -3
- package/dist/span/calculate/spanWallClock.d.ts +12 -12
- package/dist/span/calculate/spanWallClock.js +13 -13
- package/dist/span/index.d.ts +1 -1
- package/dist/span/index.js +2 -2
- package/dist/span/validate/isValidSpan.d.ts +3 -3
- package/dist/span/validate/isValidSpan.js +3 -3
- package/dist/timescale/calculate/index.d.ts +3 -0
- package/dist/timescale/calculate/index.js +3 -0
- package/dist/timescale/calculate/leapSecondsBetween.d.ts +26 -0
- package/dist/timescale/calculate/leapSecondsBetween.js +62 -0
- package/dist/timescale/calculate/nextLeapSecond.d.ts +18 -0
- package/dist/timescale/calculate/nextLeapSecond.js +33 -0
- package/dist/timescale/calculate/taiMinusUtc.d.ts +21 -0
- package/dist/timescale/calculate/taiMinusUtc.js +38 -0
- package/dist/timescale/convert/fromTAI.d.ts +22 -0
- package/dist/timescale/convert/fromTAI.js +35 -0
- package/dist/timescale/convert/index.d.ts +2 -0
- package/dist/timescale/convert/index.js +2 -0
- package/dist/timescale/convert/toTAI.d.ts +23 -0
- package/dist/timescale/convert/toTAI.js +39 -0
- package/dist/timescale/index.d.ts +4 -0
- package/dist/timescale/index.js +5 -0
- package/dist/timescale/validate/index.d.ts +1 -0
- package/dist/timescale/validate/index.js +1 -0
- package/dist/timescale/validate/isLeapSecond.d.ts +25 -0
- package/dist/timescale/validate/isLeapSecond.js +36 -0
- package/dist/transport/calculate/crossingTime.d.ts +2 -2
- package/dist/transport/calculate/crossingTime.js +3 -3
- package/dist/transport/calculate/cutoffAt.d.ts +4 -4
- package/dist/transport/calculate/cutoffAt.js +24 -133
- package/dist/transport/calculate/cutoffSchedule.d.ts +2 -2
- package/dist/transport/calculate/cutoffSchedule.js +52 -20
- package/dist/transport/calculate/dwellTime.d.ts +3 -3
- package/dist/transport/calculate/dwellTime.js +4 -4
- package/dist/transport/calculate/estimateDrift.d.ts +1 -1
- package/dist/transport/calculate/estimateDrift.js +1 -1
- package/dist/transport/calculate/nextDeparture.d.ts +2 -2
- package/dist/transport/calculate/nextDeparture.js +2 -2
- package/dist/transport/calculate/scheduleDelivery.d.ts +2 -2
- package/dist/transport/calculate/scheduleDelivery.js +3 -3
- package/dist/transport/calculate/transitTime.d.ts +11 -11
- package/dist/transport/calculate/transitTime.js +11 -11
- package/dist/transport/compare/classifyPunctuality.d.ts +1 -1
- package/dist/transport/compare/classifyPunctuality.js +1 -1
- package/dist/transport/compare/isPastCutoff.d.ts +1 -1
- package/dist/transport/compare/isPastCutoff.js +2 -2
- package/dist/transport/compare/scheduleDeviation.d.ts +1 -1
- package/dist/transport/compare/scheduleDeviation.js +1 -1
- package/dist/transport/compare/timeToCutoff.d.ts +1 -1
- package/dist/transport/compare/timeToCutoff.js +1 -1
- package/dist/transport/convert/etaAtZone.d.ts +2 -2
- package/dist/transport/convert/etaAtZone.js +2 -2
- package/dist/transport/index.d.ts +1 -1
- package/dist/transport/index.js +2 -2
- package/dist/types/date-duration-unit.d.ts +1 -1
- package/dist/types/date-time-duration-units.d.ts +1 -1
- package/dist/types/date-time-unit.d.ts +1 -1
- package/dist/types/date-unit.d.ts +1 -1
- package/dist/types/disambiguation.d.ts +1 -1
- package/dist/types/duration-relative-to.d.ts +1 -1
- package/dist/types/duration-string-options.d.ts +1 -1
- package/dist/types/exact-duration-unit.d.ts +1 -1
- package/dist/types/fiscal-calendar.d.ts +40 -4
- package/dist/types/gnss.d.ts +51 -0
- package/dist/types/gnss.js +0 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +2 -0
- package/dist/types/now-unit.d.ts +1 -1
- package/dist/types/offset.d.ts +1 -1
- package/dist/types/overflow.d.ts +1 -1
- package/dist/types/rounding-options.d.ts +1 -1
- package/dist/types/stored-zoned-classification.d.ts +83 -0
- package/dist/types/stored-zoned-classification.js +0 -0
- package/dist/types/time-duration-unit.d.ts +1 -1
- package/dist/types/time-unit.d.ts +1 -1
- package/dist/types/utc-now-unit.d.ts +1 -1
- package/dist/unix/calculate/diffUnix.d.ts +1 -1
- package/dist/unix/calculate/diffUnixAsDuration.d.ts +1 -1
- package/dist/unix/calculate/endOfUnix.d.ts +2 -2
- package/dist/unix/calculate/endOfUnix.js +1 -1
- package/dist/unix/calculate/isBetweenUnix.js +1 -1
- package/dist/unix/calculate/roundUnix.d.ts +7 -5
- package/dist/unix/calculate/roundUnix.js +6 -4
- package/dist/unix/calculate/setUnix.d.ts +3 -3
- package/dist/unix/calculate/setUnix.js +2 -2
- package/dist/unix/calculate/startOfUnix.d.ts +2 -2
- package/dist/unix/calculate/startOfUnix.js +1 -1
- package/dist/unix/compare/areUnixEqualBy.d.ts +6 -6
- package/dist/unix/compare/areUnixEqualBy.js +5 -5
- package/dist/unix/convert/convertUnixToPlainTime.d.ts +1 -1
- package/dist/unix/convert/convertUnixToPlainTime.js +1 -1
- package/dist/unix/convert/convertUnixToZoned.d.ts +1 -1
- package/dist/unix/convert/convertUnixToZoned.js +1 -1
- package/dist/unix/format/formatCalendarUnix.d.ts +10 -9
- package/dist/unix/format/formatCalendarUnix.js +6 -6
- package/dist/unix/format/formatRelativeUnix.d.ts +7 -7
- package/dist/unix/format/formatRelativeUnix.js +7 -7
- package/dist/unix/format/formatUnix.d.ts +9 -9
- package/dist/unix/format/formatUnix.js +9 -9
- package/dist/unix/get/getUnixDay.js +1 -1
- package/dist/unix/get/getUnixHour.js +1 -1
- package/dist/unix/get/getUnixMicrosecond.js +1 -1
- package/dist/unix/get/getUnixMillisecond.js +1 -1
- package/dist/unix/get/getUnixMinute.js +1 -1
- package/dist/unix/get/getUnixMonth.js +1 -1
- package/dist/unix/get/getUnixNanosecond.js +1 -1
- package/dist/unix/get/getUnixNow.js +1 -1
- package/dist/unix/get/getUnixNowUnit.d.ts +1 -1
- package/dist/unix/get/getUnixNowUnit.js +1 -1
- package/dist/unix/get/getUnixSecond.js +1 -1
- package/dist/unix/get/getUnixYear.js +1 -1
- package/dist/unix/index.d.ts +1 -1
- package/dist/unix/index.js +2 -2
- package/dist/unix/interval/intervalFromDurationUnix.js +1 -1
- package/dist/unix/interval/intervalLengthUnix.d.ts +2 -2
- package/dist/unix/interval/intervalLengthUnix.js +2 -2
- package/dist/unix/interval/splitIntervalByUnitUnix.d.ts +3 -2
- package/dist/unix/interval/splitIntervalByUnitUnix.js +4 -3
- package/dist/unix/parse/parseUnitFromUnix.d.ts +1 -1
- package/dist/utc/calculate/addUtc.js +1 -1
- package/dist/utc/calculate/diffUtc.d.ts +1 -1
- package/dist/utc/calculate/diffUtc.js +1 -1
- package/dist/utc/calculate/diffUtcAsDuration.d.ts +1 -1
- package/dist/utc/calculate/diffUtcAsDuration.js +1 -1
- package/dist/utc/calculate/endOfQuarterForUtc.js +1 -1
- package/dist/utc/calculate/endOfUtc.d.ts +1 -1
- package/dist/utc/calculate/isBetweenUtc.js +1 -1
- package/dist/utc/calculate/maxUtc.js +1 -1
- package/dist/utc/calculate/minUtc.js +1 -1
- package/dist/utc/calculate/roundUtc.d.ts +1 -1
- package/dist/utc/calculate/roundUtc.js +1 -1
- package/dist/utc/calculate/setUtc.d.ts +1 -1
- package/dist/utc/calculate/setUtc.js +1 -1
- package/dist/utc/calculate/sortUtc.js +1 -1
- package/dist/utc/calculate/startOfQuarterForUtc.js +1 -1
- package/dist/utc/calculate/startOfUtc.d.ts +1 -1
- package/dist/utc/calculate/subtractUtc.js +1 -1
- package/dist/utc/compare/areUtcEqual.js +1 -1
- package/dist/utc/compare/areUtcEqualBy.d.ts +2 -2
- package/dist/utc/compare/areUtcEqualBy.js +2 -2
- package/dist/utc/compare/isAfterUtc.js +1 -1
- package/dist/utc/compare/isBeforeUtc.js +1 -1
- package/dist/utc/convert/convertUtcToPlainDate.d.ts +1 -1
- package/dist/utc/convert/convertUtcToPlainDate.js +2 -2
- package/dist/utc/convert/convertUtcToPlainDateTime.d.ts +1 -1
- package/dist/utc/convert/convertUtcToPlainDateTime.js +2 -2
- package/dist/utc/convert/convertUtcToPlainTime.d.ts +1 -1
- package/dist/utc/convert/convertUtcToPlainTime.js +2 -2
- package/dist/utc/convert/convertUtcToUnix.js +1 -1
- package/dist/utc/convert/convertUtcToZoned.d.ts +1 -1
- package/dist/utc/convert/convertUtcToZoned.js +2 -2
- package/dist/utc/format/formatCalendarUtc.d.ts +6 -5
- package/dist/utc/format/formatCalendarUtc.js +3 -3
- package/dist/utc/format/formatHttpDate.js +1 -1
- package/dist/utc/format/formatRelativeUtc.d.ts +5 -5
- package/dist/utc/format/formatRelativeUtc.js +5 -5
- package/dist/utc/format/formatUtc.d.ts +8 -8
- package/dist/utc/format/formatUtc.js +8 -8
- package/dist/utc/get/getUtcDay.js +1 -1
- package/dist/utc/get/getUtcHour.js +1 -1
- package/dist/utc/get/getUtcMicrosecond.js +1 -1
- package/dist/utc/get/getUtcMillisecond.js +1 -1
- package/dist/utc/get/getUtcMinute.js +1 -1
- package/dist/utc/get/getUtcMonth.js +1 -1
- package/dist/utc/get/getUtcNanosecond.js +1 -1
- package/dist/utc/get/getUtcNow.js +1 -1
- package/dist/utc/get/getUtcNowUnit.js +1 -1
- package/dist/utc/get/getUtcSecond.js +1 -1
- package/dist/utc/get/getUtcYear.js +1 -1
- package/dist/utc/index.d.ts +1 -1
- package/dist/utc/index.js +2 -2
- package/dist/utc/interval/intervalAbutsUtc.js +1 -1
- package/dist/utc/interval/intervalContainsUtc.js +1 -1
- package/dist/utc/interval/intervalCountUtc.js +1 -1
- package/dist/utc/interval/intervalDivideEquallyUtc.js +1 -1
- package/dist/utc/interval/intervalEngulfsUtc.js +1 -1
- package/dist/utc/interval/intervalFromDurationUtc.js +1 -1
- package/dist/utc/interval/intervalLengthUtc.js +1 -1
- package/dist/utc/interval/intervalOverlappingDaysUtc.js +1 -1
- package/dist/utc/interval/intervalSplitAtUtc.js +1 -1
- package/dist/utc/interval/intervalXorAllUtc.js +1 -1
- package/dist/utc/interval/intervalXorUtc.js +1 -1
- package/dist/utc/interval/splitIntervalByUnitUtc.d.ts +2 -1
- package/dist/utc/interval/splitIntervalByUnitUtc.js +3 -2
- package/dist/utc/interval/validate/isValidUtcInterval.js +1 -1
- package/dist/utc/parse/parseDateFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseDateFromUtc.js +1 -1
- package/dist/utc/parse/parseDayFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseDayFromUtc.js +1 -1
- package/dist/utc/parse/parseDayOfWeekFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseDayOfWeekFromUtc.js +2 -2
- package/dist/utc/parse/parseHourFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseHourFromUtc.js +1 -1
- package/dist/utc/parse/parseHttpDate.js +1 -1
- package/dist/utc/parse/parseMicrosecondFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseMicrosecondFromUtc.js +1 -1
- package/dist/utc/parse/parseMillisecondFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseMillisecondFromUtc.js +1 -1
- package/dist/utc/parse/parseMonthFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseMonthFromUtc.js +1 -1
- package/dist/utc/parse/parseNanosecondFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseNanosecondFromUtc.js +1 -1
- package/dist/utc/parse/parseSecondFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseSecondFromUtc.js +1 -1
- package/dist/utc/parse/parseTimeFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseTimeFromUtc.js +2 -2
- package/dist/utc/parse/parseUnitFromUtc.d.ts +2 -2
- package/dist/utc/parse/parseUnitFromUtc.js +2 -2
- package/dist/utc/parse/parseWeekFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseWeekFromUtc.js +2 -2
- package/dist/utc/parse/parseYearFromUtc.d.ts +1 -1
- package/dist/utc/parse/parseYearFromUtc.js +1 -1
- package/dist/utc/validate/isValidUtc.js +3 -3
- package/dist/utc/validate/isValidUtcRange.js +1 -1
- package/dist/{duty → workforce}/calculate/dutyDayFor.js +1 -1
- package/dist/{duty → workforce}/calculate/evaluateDutyLog.js +1 -1
- package/dist/{duty → workforce}/calculate/longestRun.js +1 -1
- package/dist/{duty → workforce}/calculate/qualifyingRestPairs.js +1 -1
- package/dist/{duty → workforce}/calculate/qualifyingRests.js +1 -1
- package/dist/workforce/index.d.ts +3 -0
- package/dist/workforce/index.js +4 -0
- package/dist/{duty → workforce}/validate/isValidDutyLog.d.ts +2 -2
- package/dist/{duty → workforce}/validate/isValidDutyLog.js +2 -2
- package/dist/zoned/calculate/addZoned.d.ts +15 -15
- package/dist/zoned/calculate/addZoned.js +15 -15
- package/dist/zoned/calculate/addZonedBusinessDays.d.ts +5 -4
- package/dist/zoned/calculate/addZonedBusinessDays.js +5 -4
- package/dist/zoned/calculate/clampZoned.js +1 -1
- package/dist/zoned/calculate/diffZoned.d.ts +8 -8
- package/dist/zoned/calculate/diffZoned.js +7 -7
- package/dist/zoned/calculate/diffZonedAsDuration.d.ts +5 -5
- package/dist/zoned/calculate/diffZonedAsDuration.js +4 -4
- package/dist/zoned/calculate/endOfZoned.d.ts +3 -3
- package/dist/zoned/calculate/endOfZoned.js +2 -2
- package/dist/zoned/calculate/getHoursInZonedDay.d.ts +2 -2
- package/dist/zoned/calculate/getHoursInZonedDay.js +2 -2
- package/dist/zoned/calculate/getLocaleZonedDayOfWeek.d.ts +6 -5
- package/dist/zoned/calculate/getLocaleZonedDayOfWeek.js +6 -5
- package/dist/zoned/calculate/getLocaleZonedEndOfWeek.d.ts +5 -5
- package/dist/zoned/calculate/getLocaleZonedEndOfWeek.js +5 -5
- package/dist/zoned/calculate/getLocaleZonedStartOfWeek.d.ts +6 -6
- package/dist/zoned/calculate/getLocaleZonedStartOfWeek.js +6 -6
- package/dist/zoned/calculate/maxZoned.d.ts +2 -2
- package/dist/zoned/calculate/maxZoned.js +3 -3
- package/dist/zoned/calculate/minZoned.d.ts +2 -2
- package/dist/zoned/calculate/minZoned.js +3 -3
- package/dist/zoned/calculate/roundZoned.d.ts +11 -9
- package/dist/zoned/calculate/roundZoned.js +11 -9
- package/dist/zoned/calculate/setZoned.d.ts +8 -8
- package/dist/zoned/calculate/setZoned.js +8 -8
- package/dist/zoned/calculate/sortZoned.d.ts +3 -3
- package/dist/zoned/calculate/sortZoned.js +4 -4
- package/dist/zoned/calculate/startOfZoned.d.ts +3 -3
- package/dist/zoned/calculate/startOfZoned.js +2 -2
- package/dist/zoned/calculate/subtractZoned.d.ts +14 -14
- package/dist/zoned/calculate/subtractZoned.js +14 -14
- package/dist/zoned/calculate/subtractZonedBusinessDays.d.ts +5 -4
- package/dist/zoned/calculate/subtractZonedBusinessDays.js +5 -4
- package/dist/zoned/chop/chopZonedDate.d.ts +1 -1
- package/dist/zoned/chop/chopZonedDate.js +1 -1
- package/dist/zoned/chop/chopZonedMilliseconds.d.ts +1 -1
- package/dist/zoned/chop/chopZonedMilliseconds.js +1 -1
- package/dist/zoned/chop/chopZonedSeconds.d.ts +1 -1
- package/dist/zoned/chop/chopZonedSeconds.js +1 -1
- package/dist/zoned/chop/chopZonedTime.d.ts +1 -1
- package/dist/zoned/chop/chopZonedTime.js +1 -1
- package/dist/zoned/chop/chopZonedTimezone.d.ts +1 -1
- package/dist/zoned/chop/chopZonedTimezone.js +1 -1
- package/dist/zoned/classify/classifyStoredZoned.d.ts +46 -0
- package/dist/zoned/classify/classifyStoredZoned.js +177 -0
- package/dist/zoned/classify/index.d.ts +1 -0
- package/dist/zoned/classify/index.js +1 -0
- package/dist/zoned/compare/areZonedEqual.js +1 -1
- package/dist/zoned/compare/areZonedEqualBy.d.ts +8 -10
- package/dist/zoned/compare/areZonedEqualBy.js +8 -10
- package/dist/zoned/compare/isAfterZoned.js +1 -1
- package/dist/zoned/compare/isBeforeZoned.d.ts +2 -2
- package/dist/zoned/compare/isBeforeZoned.js +3 -3
- package/dist/zoned/compare/isBetweenZoned.js +1 -1
- package/dist/zoned/compare/isInDaylightSaving.d.ts +2 -2
- package/dist/zoned/compare/isInDaylightSaving.js +2 -2
- package/dist/zoned/compare/isZonedBusinessDay.d.ts +7 -6
- package/dist/zoned/compare/isZonedBusinessDay.js +7 -6
- package/dist/zoned/compare/isZonedFuture.js +1 -1
- package/dist/zoned/compare/isZonedPast.js +1 -1
- package/dist/zoned/compare/isZonedRelativeDay.d.ts +2 -2
- package/dist/zoned/compare/isZonedRelativeDay.js +3 -3
- package/dist/zoned/compare/isZonedThisUnit.d.ts +7 -7
- package/dist/zoned/compare/isZonedThisUnit.js +7 -7
- package/dist/zoned/compare/isZonedWeekend.d.ts +5 -5
- package/dist/zoned/compare/isZonedWeekend.js +5 -5
- package/dist/zoned/convert/convertPlainDateTimeToZoned.d.ts +6 -6
- package/dist/zoned/convert/convertPlainDateTimeToZoned.js +6 -6
- package/dist/zoned/convert/convertZonedToCalendar.d.ts +5 -5
- package/dist/zoned/convert/convertZonedToCalendar.js +5 -5
- package/dist/zoned/convert/convertZonedToPlainDateTime.d.ts +3 -3
- package/dist/zoned/convert/convertZonedToPlainDateTime.js +3 -3
- package/dist/zoned/convert/convertZonedToZoned.d.ts +2 -2
- package/dist/zoned/convert/convertZonedToZoned.js +2 -2
- package/dist/zoned/format/formatCalendarZoned.d.ts +7 -6
- package/dist/zoned/format/formatCalendarZoned.js +5 -5
- package/dist/zoned/format/formatRelativeZoned.d.ts +3 -3
- package/dist/zoned/format/formatRelativeZoned.js +4 -4
- package/dist/zoned/format/formatRfc2822.d.ts +3 -3
- package/dist/zoned/format/formatRfc2822.js +3 -3
- package/dist/zoned/format/formatRfc3339.d.ts +2 -2
- package/dist/zoned/format/formatRfc3339.js +2 -2
- package/dist/zoned/format/formatTimeZoneName.d.ts +17 -17
- package/dist/zoned/format/formatTimeZoneName.js +13 -12
- package/dist/zoned/format/formatZonedDateTime.d.ts +10 -10
- package/dist/zoned/format/formatZonedDateTime.js +12 -11
- package/dist/zoned/format/formatZonedRange.d.ts +7 -7
- package/dist/zoned/format/formatZonedRange.js +9 -8
- package/dist/zoned/format/formatZonedToParts.d.ts +11 -11
- package/dist/zoned/format/formatZonedToParts.js +13 -12
- package/dist/zoned/get/getDstTransitions.d.ts +9 -9
- package/dist/zoned/get/getDstTransitions.js +3 -3
- package/dist/zoned/get/getSystemTimeZone.d.ts +2 -2
- package/dist/zoned/get/getSystemTimeZone.js +2 -2
- package/dist/zoned/get/getTimeZoneOffset.d.ts +5 -5
- package/dist/zoned/get/getTimeZoneOffset.js +5 -5
- package/dist/zoned/get/getTimeZones.d.ts +1 -1
- package/dist/zoned/get/getTimeZones.js +1 -1
- package/dist/zoned/get/getZonedDay.d.ts +1 -1
- package/dist/zoned/get/getZonedDay.js +1 -1
- package/dist/zoned/get/getZonedDayOfWeek.d.ts +1 -1
- package/dist/zoned/get/getZonedDayOfWeek.js +1 -1
- package/dist/zoned/get/getZonedHour.d.ts +1 -1
- package/dist/zoned/get/getZonedHour.js +1 -1
- package/dist/zoned/get/getZonedMicrosecond.d.ts +1 -1
- package/dist/zoned/get/getZonedMicrosecond.js +1 -1
- package/dist/zoned/get/getZonedMillisecond.d.ts +1 -1
- package/dist/zoned/get/getZonedMillisecond.js +1 -1
- package/dist/zoned/get/getZonedMinute.d.ts +1 -1
- package/dist/zoned/get/getZonedMinute.js +1 -1
- package/dist/zoned/get/getZonedMonth.d.ts +1 -1
- package/dist/zoned/get/getZonedMonth.js +1 -1
- package/dist/zoned/get/getZonedNanosecond.d.ts +1 -1
- package/dist/zoned/get/getZonedNanosecond.js +1 -1
- package/dist/zoned/get/getZonedNow.d.ts +4 -4
- package/dist/zoned/get/getZonedNow.js +4 -4
- package/dist/zoned/get/getZonedNowUnit.d.ts +2 -2
- package/dist/zoned/get/getZonedNowUnit.js +1 -1
- package/dist/zoned/get/getZonedSecond.d.ts +1 -1
- package/dist/zoned/get/getZonedSecond.js +1 -1
- package/dist/zoned/get/getZonedToday.d.ts +1 -1
- package/dist/zoned/get/getZonedToday.js +1 -1
- package/dist/zoned/get/getZonedWeekOfYear.d.ts +1 -1
- package/dist/zoned/get/getZonedWeekOfYear.js +1 -1
- package/dist/zoned/get/getZonedYear.d.ts +1 -1
- package/dist/zoned/get/getZonedYear.js +1 -1
- package/dist/zoned/index.d.ts +2 -1
- package/dist/zoned/index.js +3 -2
- package/dist/zoned/interval/intervalAbutsZoned.d.ts +2 -2
- package/dist/zoned/interval/intervalAbutsZoned.js +3 -3
- package/dist/zoned/interval/intervalContainsZoned.d.ts +1 -1
- package/dist/zoned/interval/intervalContainsZoned.js +2 -2
- package/dist/zoned/interval/intervalCountZoned.d.ts +4 -4
- package/dist/zoned/interval/intervalCountZoned.js +5 -5
- package/dist/zoned/interval/intervalDifferenceZoned.js +1 -1
- package/dist/zoned/interval/intervalDivideEquallyZoned.d.ts +1 -1
- package/dist/zoned/interval/intervalDivideEquallyZoned.js +2 -2
- package/dist/zoned/interval/intervalEngulfsZoned.d.ts +1 -1
- package/dist/zoned/interval/intervalEngulfsZoned.js +2 -2
- package/dist/zoned/interval/intervalFromDurationZoned.d.ts +6 -6
- package/dist/zoned/interval/intervalFromDurationZoned.js +7 -7
- package/dist/zoned/interval/intervalIntersectionZoned.js +1 -1
- package/dist/zoned/interval/intervalLengthZoned.d.ts +5 -5
- package/dist/zoned/interval/intervalLengthZoned.js +5 -5
- package/dist/zoned/interval/intervalOverlappingDaysZoned.d.ts +2 -2
- package/dist/zoned/interval/intervalOverlappingDaysZoned.js +3 -3
- package/dist/zoned/interval/intervalSplitAtZoned.js +14 -16
- package/dist/zoned/interval/intervalUnionZoned.js +1 -1
- package/dist/zoned/interval/intervalXorAllZoned.js +1 -1
- package/dist/zoned/interval/intervalXorZoned.js +1 -1
- package/dist/zoned/interval/intervalsOverlapZoned.d.ts +2 -2
- package/dist/zoned/interval/intervalsOverlapZoned.js +3 -3
- package/dist/zoned/interval/mergeIntervalsZoned.js +1 -1
- package/dist/zoned/interval/splitIntervalByUnitZoned.d.ts +2 -1
- package/dist/zoned/interval/splitIntervalByUnitZoned.js +3 -2
- package/dist/zoned/interval/validate/isValidCalendarZonedInterval.d.ts +2 -2
- package/dist/zoned/interval/validate/isValidCalendarZonedInterval.js +3 -3
- package/dist/zoned/interval/validate/isValidZonedInterval.d.ts +1 -1
- package/dist/zoned/interval/validate/isValidZonedInterval.js +2 -2
- package/dist/zoned/map/mapZonedDatesInRange.js +1 -1
- package/dist/zoned/map/mapZonedHoursInDay.d.ts +1 -1
- package/dist/zoned/map/mapZonedHoursInDay.js +2 -2
- package/dist/zoned/parse/getZonedOffset.d.ts +1 -1
- package/dist/zoned/parse/getZonedOffset.js +1 -1
- package/dist/zoned/parse/getZonedOffsetAs.d.ts +6 -6
- package/dist/zoned/parse/getZonedOffsetAs.js +3 -3
- package/dist/zoned/parse/parseDateTimeFromZoned.js +2 -2
- package/dist/zoned/parse/parseRfc2822.js +1 -1
- package/dist/zoned/parse/parseRfc3339.js +1 -1
- package/dist/zoned/parse/parseUnitFromZoned.d.ts +1 -1
- package/dist/zoned/validate/hasDaylightSaving.d.ts +2 -2
- package/dist/zoned/validate/hasDaylightSaving.js +3 -3
- package/dist/zoned/validate/isValidCalendarZonedDateTime.d.ts +8 -8
- package/dist/zoned/validate/isValidCalendarZonedDateTime.js +8 -8
- package/dist/zoned/validate/isValidTimeZone.d.ts +1 -1
- package/dist/zoned/validate/isValidTimeZone.js +3 -18
- package/dist/zoned/validate/isValidZonedDateTime.d.ts +7 -7
- package/dist/zoned/validate/isValidZonedDateTime.js +9 -9
- package/dist/zoned/validate/isValidZonedRange.d.ts +1 -1
- package/dist/zoned/validate/isValidZonedRange.js +5 -5
- package/package.json +71 -21
- package/skills/gmt-arithmetic/SKILL.md +18 -59
- package/skills/gmt-basics/SKILL.md +32 -12
- package/skills/gmt-gnss/SKILL.md +92 -0
- package/skills/gmt-integration/SKILL.md +48 -15
- package/skills/gmt-intermodal/SKILL.md +189 -0
- package/skills/gmt-timezone/SKILL.md +34 -257
- package/skills/gmt-transport/SKILL.md +133 -0
- package/skills/gmt-workforce/SKILL.md +84 -0
- package/dist/duty/index.d.ts +0 -3
- package/dist/duty/index.js +0 -4
- /package/dist/{duty → workforce}/calculate/dutyDayFor.d.ts +0 -0
- /package/dist/{duty → workforce}/calculate/dutyTotals.d.ts +0 -0
- /package/dist/{duty → workforce}/calculate/dutyTotals.js +0 -0
- /package/dist/{duty → workforce}/calculate/dutyViolations.d.ts +0 -0
- /package/dist/{duty → workforce}/calculate/dutyViolations.js +0 -0
- /package/dist/{duty → workforce}/calculate/evaluateDutyLog.d.ts +0 -0
- /package/dist/{duty → workforce}/calculate/index.d.ts +0 -0
- /package/dist/{duty → workforce}/calculate/index.js +0 -0
- /package/dist/{duty → workforce}/calculate/longestRun.d.ts +0 -0
- /package/dist/{duty → workforce}/calculate/qualifyingRestPairs.d.ts +0 -0
- /package/dist/{duty → workforce}/calculate/qualifyingRests.d.ts +0 -0
- /package/dist/{duty → workforce}/validate/index.d.ts +0 -0
- /package/dist/{duty → workforce}/validate/index.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { isValidDateTime, isValidTime } from "../validate/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Return a string with millisecond precision removed from a PlainDateTime or PlainTime value.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { isValidDateTime, isValidTime } from "../validate/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Return an ISO string with second precision removed from a PlainDateTime or PlainTime value.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { isValidDateTime } from "../validate/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Return true if two PlainDateTime ISO strings represent the same instant of local date/time components.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
/**
|
|
3
3
|
* Compare two ISO datetime strings for equality at a given unit.
|
|
4
4
|
*
|
|
@@ -6,8 +6,6 @@ import { Temporal } from "@js-temporal/polyfill";
|
|
|
6
6
|
* `"month"` requires the same month AND year — March 2023 and March 2024 are
|
|
7
7
|
* NOT equal by month. A calendar month is a year and a month together, as in
|
|
8
8
|
* Temporal's `PlainYearMonth`, not a bare month-of-year number.
|
|
9
|
-
* - Comparison: date-fns's `isSameMonth` and Luxon's `dt.hasSame(other, "month")`
|
|
10
|
-
* give the same answer.
|
|
11
9
|
* - Supports the full `Temporal.DateUnit | Temporal.TimeUnit` range, down to
|
|
12
10
|
* `"nanosecond"`.
|
|
13
11
|
* - `unit` accepts the singular or plural name (`"day"` or `"days"`), as Temporal does.
|
|
@@ -16,7 +14,7 @@ import { Temporal } from "@js-temporal/polyfill";
|
|
|
16
14
|
* digits cannot change which bucket a value is in. That ignored option was removed in 1.16.0; to
|
|
17
15
|
* compare more coarsely, pass a coarser unit (0 digits is `"second"`, 3 is `"millisecond"`).
|
|
18
16
|
*
|
|
19
|
-
*
|
|
17
|
+
* Migrating from date-fns:
|
|
20
18
|
* - `isSameDay(a, b)` → `areDateTimesEqualBy(a, b, "day")`
|
|
21
19
|
* - `isSameHour(a, b)` → `areDateTimesEqualBy(a, b, "hour")`
|
|
22
20
|
* - `isSameMinute(a, b)` → `areDateTimesEqualBy(a, b, "minute")`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { resolveDateTimeUnit } from "../../internal/resolveDateTimeUnit.js";
|
|
3
3
|
import { resolveWeekStartsOn } from "../../internal/resolveWeekStartsOn.js";
|
|
4
4
|
import { startOfDateTime } from "../calculate/startOfDateTime.js";
|
|
@@ -11,8 +11,6 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
11
11
|
* `"month"` requires the same month AND year — March 2023 and March 2024 are
|
|
12
12
|
* NOT equal by month. A calendar month is a year and a month together, as in
|
|
13
13
|
* Temporal's `PlainYearMonth`, not a bare month-of-year number.
|
|
14
|
-
* - Comparison: date-fns's `isSameMonth` and Luxon's `dt.hasSame(other, "month")`
|
|
15
|
-
* give the same answer.
|
|
16
14
|
* - Supports the full `Temporal.DateUnit | Temporal.TimeUnit` range, down to
|
|
17
15
|
* `"nanosecond"`.
|
|
18
16
|
* - `unit` accepts the singular or plural name (`"day"` or `"days"`), as Temporal does.
|
|
@@ -21,7 +19,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
21
19
|
* digits cannot change which bucket a value is in. That ignored option was removed in 1.16.0; to
|
|
22
20
|
* compare more coarsely, pass a coarser unit (0 digits is `"second"`, 3 is `"millisecond"`).
|
|
23
21
|
*
|
|
24
|
-
*
|
|
22
|
+
* Migrating from date-fns:
|
|
25
23
|
* - `isSameDay(a, b)` → `areDateTimesEqualBy(a, b, "day")`
|
|
26
24
|
* - `isSameHour(a, b)` → `areDateTimesEqualBy(a, b, "hour")`
|
|
27
25
|
* - `isSameMinute(a, b)` → `areDateTimesEqualBy(a, b, "minute")`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
/**
|
|
3
3
|
* Compare two ISO date strings for equality at a given calendar unit.
|
|
4
4
|
*
|
|
@@ -8,8 +8,6 @@ import { Temporal } from "@js-temporal/polyfill";
|
|
|
8
8
|
* Temporal's `PlainYearMonth`, not a bare month-of-year number. This is a
|
|
9
9
|
* common point of confusion for callers expecting a bare "same month-of-year"
|
|
10
10
|
* comparison.
|
|
11
|
-
* - Comparison: date-fns's `isSameMonth` and Luxon's `dt.hasSame(other, "month")`
|
|
12
|
-
* give the same answer.
|
|
13
11
|
* - `"day"` matches `areDatesEqual` for PlainDate inputs only: `areDatesEqual` also accepts
|
|
14
12
|
* PlainDateTime strings (`areDatesEqual("2024-01-01", "2024-01-01T10:00")` is `true`), while this
|
|
15
13
|
* function accepts PlainDate strings only (`areDatesEqualBy` with those inputs and `"day"` is
|
|
@@ -18,9 +16,11 @@ import { Temporal } from "@js-temporal/polyfill";
|
|
|
18
16
|
* - `unit` accepts the singular or plural name (`"day"` or `"days"`), as Temporal does.
|
|
19
17
|
* - Returns false for an unsupported unit or invalid input.
|
|
20
18
|
*
|
|
21
|
-
*
|
|
19
|
+
* Migrating from date-fns:
|
|
22
20
|
* - `isSameDay(a, b)` → `areDatesEqualBy(a, b, "day")`
|
|
23
|
-
* - `isSameWeek(a, b
|
|
21
|
+
* - `isSameWeek(a, b)` → `areDatesEqualBy(a, b, "week", { weekStartsOn: "sunday" })`: date-fns
|
|
22
|
+
* starts the week on Sunday (`weekStartsOn: 0`) by default, GMT on Monday
|
|
23
|
+
* - `isSameWeek(a, b, { weekStartsOn: 1 })` → `areDatesEqualBy(a, b, "week")`
|
|
24
24
|
* - `isSameMonth(a, b)` → `areDatesEqualBy(a, b, "month")`
|
|
25
25
|
* - `isSameYear(a, b)` → `areDatesEqualBy(a, b, "year")`
|
|
26
26
|
*
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { resolveDateTimeUnit } from "../../internal/resolveDateTimeUnit.js";
|
|
3
3
|
import { resolveWeekStartsOn } from "../../internal/resolveWeekStartsOn.js";
|
|
4
4
|
import { startOfDate } from "../calculate/startOfDate.js";
|
|
@@ -15,8 +15,6 @@ const supported = ["year", "month", "week", "day"];
|
|
|
15
15
|
* Temporal's `PlainYearMonth`, not a bare month-of-year number. This is a
|
|
16
16
|
* common point of confusion for callers expecting a bare "same month-of-year"
|
|
17
17
|
* comparison.
|
|
18
|
-
* - Comparison: date-fns's `isSameMonth` and Luxon's `dt.hasSame(other, "month")`
|
|
19
|
-
* give the same answer.
|
|
20
18
|
* - `"day"` matches `areDatesEqual` for PlainDate inputs only: `areDatesEqual` also accepts
|
|
21
19
|
* PlainDateTime strings (`areDatesEqual("2024-01-01", "2024-01-01T10:00")` is `true`), while this
|
|
22
20
|
* function accepts PlainDate strings only (`areDatesEqualBy` with those inputs and `"day"` is
|
|
@@ -25,9 +23,11 @@ const supported = ["year", "month", "week", "day"];
|
|
|
25
23
|
* - `unit` accepts the singular or plural name (`"day"` or `"days"`), as Temporal does.
|
|
26
24
|
* - Returns false for an unsupported unit or invalid input.
|
|
27
25
|
*
|
|
28
|
-
*
|
|
26
|
+
* Migrating from date-fns:
|
|
29
27
|
* - `isSameDay(a, b)` → `areDatesEqualBy(a, b, "day")`
|
|
30
|
-
* - `isSameWeek(a, b
|
|
28
|
+
* - `isSameWeek(a, b)` → `areDatesEqualBy(a, b, "week", { weekStartsOn: "sunday" })`: date-fns
|
|
29
|
+
* starts the week on Sunday (`weekStartsOn: 0`) by default, GMT on Monday
|
|
30
|
+
* - `isSameWeek(a, b, { weekStartsOn: 1 })` → `areDatesEqualBy(a, b, "week")`
|
|
31
31
|
* - `isSameMonth(a, b)` → `areDatesEqualBy(a, b, "month")`
|
|
32
32
|
* - `isSameYear(a, b)` → `areDatesEqualBy(a, b, "year")`
|
|
33
33
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// fallow-ignore-file code-duplication -- cross-family Temporal type clone, by design (rule 5)
|
|
2
|
-
import { Temporal } from "
|
|
2
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
3
3
|
import { isValidDate } from "../validate/index.js";
|
|
4
4
|
import { isOptionsArgument } from "../../internal/isObject.js";
|
|
5
5
|
import { optionOrDefault } from "../../internal/optionOrDefault.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// fallow-ignore-file code-duplication -- cross-family Temporal type clone, by design (rule 5)
|
|
2
|
-
import { Temporal } from "
|
|
2
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
3
3
|
import { isValidDateTime } from "../validate/index.js";
|
|
4
4
|
import { isOptionsArgument } from "../../internal/isObject.js";
|
|
5
5
|
import { optionOrDefault } from "../../internal/optionOrDefault.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// fallow-ignore-file code-duplication -- cross-family Temporal type clone, by design (rule 5)
|
|
2
|
-
import { Temporal } from "
|
|
2
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
3
3
|
import { isValidTime } from "../validate/index.js";
|
|
4
4
|
import { isOptionsArgument } from "../../internal/isObject.js";
|
|
5
5
|
import { optionOrDefault } from "../../internal/optionOrDefault.js";
|
|
@@ -25,8 +25,8 @@ import type { BusinessCalendar } from "../../types/index.js";
|
|
|
25
25
|
*
|
|
26
26
|
* @example isBusinessDay("2024-02-05") // true (Monday)
|
|
27
27
|
* @example isBusinessDay("2024-02-10") // false (Saturday)
|
|
28
|
-
* @example isBusinessDay("2024-07-04", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "
|
|
29
|
-
* @example isBusinessDay("2024-07-05", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "
|
|
28
|
+
* @example isBusinessDay("2024-07-04", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "Africa/Kigali" }) // false (holiday)
|
|
29
|
+
* @example isBusinessDay("2024-07-05", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "Africa/Kigali" }) // true
|
|
30
30
|
* @example isBusinessDay("2024-07-07", { weekend: [5, 6], holidays: [], timeZone: "Asia/Riyadh" }) // true (Sunday is a working day there)
|
|
31
31
|
* @example isBusinessDay("2024-07-05", { weekend: [5, 6], holidays: [], timeZone: "Asia/Riyadh" }) // false (Friday is weekend there)
|
|
32
32
|
* @example isBusinessDay("invalid") // false
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { isBusinessDate, resolveBusinessCalendar, } from "../../internal/businessCalendar.js";
|
|
3
3
|
import { isValidDate } from "../validate/index.js";
|
|
4
4
|
/**
|
|
@@ -27,8 +27,8 @@ import { isValidDate } from "../validate/index.js";
|
|
|
27
27
|
*
|
|
28
28
|
* @example isBusinessDay("2024-02-05") // true (Monday)
|
|
29
29
|
* @example isBusinessDay("2024-02-10") // false (Saturday)
|
|
30
|
-
* @example isBusinessDay("2024-07-04", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "
|
|
31
|
-
* @example isBusinessDay("2024-07-05", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "
|
|
30
|
+
* @example isBusinessDay("2024-07-04", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "Africa/Kigali" }) // false (holiday)
|
|
31
|
+
* @example isBusinessDay("2024-07-05", { weekend: [6, 7], holidays: ["2024-07-04"], timeZone: "Africa/Kigali" }) // true
|
|
32
32
|
* @example isBusinessDay("2024-07-07", { weekend: [5, 6], holidays: [], timeZone: "Asia/Riyadh" }) // true (Sunday is a working day there)
|
|
33
33
|
* @example isBusinessDay("2024-07-05", { weekend: [5, 6], holidays: [], timeZone: "Asia/Riyadh" }) // false (Friday is weekend there)
|
|
34
34
|
* @example isBusinessDay("invalid") // false
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* - `offsetDays` must be an integer; non-integer or non-finite values return false.
|
|
15
15
|
* - Returns false if `value` is invalid or the system timeZone is unavailable.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* Migrating from date-fns:
|
|
18
18
|
* - `isToday(value)` → `isRelativeDay(value, 0)`
|
|
19
19
|
* - `isYesterday(value)` → `isRelativeDay(value, -1)`
|
|
20
20
|
* - `isTomorrow(value)` → `isRelativeDay(value, 1)`
|
|
@@ -18,7 +18,7 @@ import { areDatesEqual } from "./areDatesEqual.js";
|
|
|
18
18
|
* - `offsetDays` must be an integer; non-integer or non-finite values return false.
|
|
19
19
|
* - Returns false if `value` is invalid or the system timeZone is unavailable.
|
|
20
20
|
*
|
|
21
|
-
*
|
|
21
|
+
* Migrating from date-fns:
|
|
22
22
|
* - `isToday(value)` → `isRelativeDay(value, 0)`
|
|
23
23
|
* - `isYesterday(value)` → `isRelativeDay(value, -1)`
|
|
24
24
|
* - `isTomorrow(value)` → `isRelativeDay(value, 1)`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Temporal } from "
|
|
1
|
+
import type { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
/**
|
|
3
3
|
* Return true when `value` falls in the same `unit` as today, per the
|
|
4
4
|
* system clock and system timeZone.
|
|
@@ -7,7 +7,7 @@ import type { Temporal } from "@js-temporal/polyfill";
|
|
|
7
7
|
* the same `Temporal.DateUnit` `areDatesEqualBy` uses.
|
|
8
8
|
* - `"day"` is equivalent to `isRelativeDay(value, 0)`.
|
|
9
9
|
* - `locale` only affects the `"week"` case — which day the week starts on
|
|
10
|
-
* varies by locale (e.g.
|
|
10
|
+
* varies by locale (e.g. fr-FR: Monday, pt-BR: Sunday). When `unit` is
|
|
11
11
|
* `"week"` and `locale` is given, the comparison uses `getLocaleStartOfWeek`
|
|
12
12
|
* instead of the ISO Monday-start default `areDatesEqualBy` otherwise uses.
|
|
13
13
|
* - Compares against `getToday()`, so this depends on the **system clock and
|
|
@@ -21,14 +21,16 @@ import type { Temporal } from "@js-temporal/polyfill";
|
|
|
21
21
|
* unit, so an invalid locale returns false for `"day"`, `"month"` and `"year"` too.
|
|
22
22
|
* - **Compatibility:** before 1.16.0 an invalid locale was ignored for every unit but `"week"`.
|
|
23
23
|
*
|
|
24
|
-
*
|
|
25
|
-
* - `isThisWeek(value
|
|
24
|
+
* Migrating from date-fns:
|
|
25
|
+
* - `isThisWeek(value)` → `isThisUnit(value, "week", "pt-BR")`, or any locale whose week starts on
|
|
26
|
+
* Sunday: date-fns starts the week on Sunday (`weekStartsOn: 0`) by default, GMT on Monday
|
|
27
|
+
* - `isThisWeek(value, { weekStartsOn: 1 })` → `isThisUnit(value, "week")`
|
|
26
28
|
* - `isThisMonth(value)` → `isThisUnit(value, "month")`
|
|
27
29
|
* - `isThisYear(value)` → `isThisUnit(value, "year")`
|
|
28
30
|
*
|
|
29
31
|
* @param value ISO PlainDate string
|
|
30
32
|
* @param unit date unit to compare by ("year" | "month" | "week" | "day", or its plural)
|
|
31
|
-
* @param locale optional BCP 47 locale tag or preference list — sets the "week" start (e.g. "
|
|
33
|
+
* @param locale optional BCP 47 locale tag or preference list — sets the "week" start (e.g. "fr-FR", ["pt-BR", "fr-FR"])
|
|
32
34
|
* @returns true if `value` falls in the same `unit` as today, false on an unsupported unit or invalid input
|
|
33
35
|
*
|
|
34
36
|
* @example isThisUnit("2024-03-15", "month") // true, if today is any day in March 2024
|
|
@@ -39,6 +41,6 @@ import type { Temporal } from "@js-temporal/polyfill";
|
|
|
39
41
|
* @example isThisUnit("2024-03-15", "week", "not-a-locale-!!") // false (invalid locale)
|
|
40
42
|
* @example isThisUnit("2024-03-15", "day", "not-a-locale-!!") // false (invalid locale, for every unit)
|
|
41
43
|
* @example isThisUnit("2024-03-15", "months") // true, if today is any day in March 2024
|
|
42
|
-
* @example isThisUnit("2024-02-25", "week", ["
|
|
44
|
+
* @example isThisUnit("2024-02-25", "week", ["pt-BR", "fr-FR"]) // true, if today is 2024-02-29 (pt-BR Sunday-start week)
|
|
43
45
|
*/
|
|
44
46
|
export declare function isThisUnit(value: string, unit: Temporal.SmallestUnit<Temporal.DateUnit>, locale?: string | string[]): boolean;
|
|
@@ -12,7 +12,7 @@ import { areDatesEqualBy } from "./areDatesEqualBy.js";
|
|
|
12
12
|
* the same `Temporal.DateUnit` `areDatesEqualBy` uses.
|
|
13
13
|
* - `"day"` is equivalent to `isRelativeDay(value, 0)`.
|
|
14
14
|
* - `locale` only affects the `"week"` case — which day the week starts on
|
|
15
|
-
* varies by locale (e.g.
|
|
15
|
+
* varies by locale (e.g. fr-FR: Monday, pt-BR: Sunday). When `unit` is
|
|
16
16
|
* `"week"` and `locale` is given, the comparison uses `getLocaleStartOfWeek`
|
|
17
17
|
* instead of the ISO Monday-start default `areDatesEqualBy` otherwise uses.
|
|
18
18
|
* - Compares against `getToday()`, so this depends on the **system clock and
|
|
@@ -26,14 +26,16 @@ import { areDatesEqualBy } from "./areDatesEqualBy.js";
|
|
|
26
26
|
* unit, so an invalid locale returns false for `"day"`, `"month"` and `"year"` too.
|
|
27
27
|
* - **Compatibility:** before 1.16.0 an invalid locale was ignored for every unit but `"week"`.
|
|
28
28
|
*
|
|
29
|
-
*
|
|
30
|
-
* - `isThisWeek(value
|
|
29
|
+
* Migrating from date-fns:
|
|
30
|
+
* - `isThisWeek(value)` → `isThisUnit(value, "week", "pt-BR")`, or any locale whose week starts on
|
|
31
|
+
* Sunday: date-fns starts the week on Sunday (`weekStartsOn: 0`) by default, GMT on Monday
|
|
32
|
+
* - `isThisWeek(value, { weekStartsOn: 1 })` → `isThisUnit(value, "week")`
|
|
31
33
|
* - `isThisMonth(value)` → `isThisUnit(value, "month")`
|
|
32
34
|
* - `isThisYear(value)` → `isThisUnit(value, "year")`
|
|
33
35
|
*
|
|
34
36
|
* @param value ISO PlainDate string
|
|
35
37
|
* @param unit date unit to compare by ("year" | "month" | "week" | "day", or its plural)
|
|
36
|
-
* @param locale optional BCP 47 locale tag or preference list — sets the "week" start (e.g. "
|
|
38
|
+
* @param locale optional BCP 47 locale tag or preference list — sets the "week" start (e.g. "fr-FR", ["pt-BR", "fr-FR"])
|
|
37
39
|
* @returns true if `value` falls in the same `unit` as today, false on an unsupported unit or invalid input
|
|
38
40
|
*
|
|
39
41
|
* @example isThisUnit("2024-03-15", "month") // true, if today is any day in March 2024
|
|
@@ -44,7 +46,7 @@ import { areDatesEqualBy } from "./areDatesEqualBy.js";
|
|
|
44
46
|
* @example isThisUnit("2024-03-15", "week", "not-a-locale-!!") // false (invalid locale)
|
|
45
47
|
* @example isThisUnit("2024-03-15", "day", "not-a-locale-!!") // false (invalid locale, for every unit)
|
|
46
48
|
* @example isThisUnit("2024-03-15", "months") // true, if today is any day in March 2024
|
|
47
|
-
* @example isThisUnit("2024-02-25", "week", ["
|
|
49
|
+
* @example isThisUnit("2024-02-25", "week", ["pt-BR", "fr-FR"]) // true, if today is 2024-02-29 (pt-BR Sunday-start week)
|
|
48
50
|
*/
|
|
49
51
|
export function isThisUnit(value, unit, locale) {
|
|
50
52
|
try {
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Return true when `value` falls on a weekend day for `locale`.
|
|
3
3
|
*
|
|
4
4
|
* - Uses `Intl.Locale.prototype.weekInfo` to resolve which ISO weekday
|
|
5
|
-
* numbers count as "weekend" for the locale (e.g.
|
|
6
|
-
* he-IL/ar-SA: Fri/Sat).
|
|
5
|
+
* numbers count as "weekend" for the locale (e.g. fr-FR: Sat/Sun,
|
|
6
|
+
* he-IL/ar-SA: Fri/Sat, hi-IN: Sun).
|
|
7
7
|
* - Falls back to Saturday/Sunday if the runtime's `weekInfo` data doesn't
|
|
8
8
|
* resolve a weekend for the locale.
|
|
9
9
|
* - Returns false if `value` is invalid or `locale` is not a well-formed BCP 47 tag
|
|
@@ -12,13 +12,13 @@
|
|
|
12
12
|
* default locale, as ECMA-402 `ResolveLocale` requires.
|
|
13
13
|
*
|
|
14
14
|
* @param value ISO PlainDate string
|
|
15
|
-
* @param locale BCP 47 locale tag (e.g. "
|
|
15
|
+
* @param locale BCP 47 locale tag (e.g. "fr-FR", "he-IL"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns false
|
|
16
16
|
* @returns true if `value` is a weekend day in `locale`, false on invalid input
|
|
17
17
|
*
|
|
18
|
-
* @example isWeekend("2024-02-03", "
|
|
18
|
+
* @example isWeekend("2024-02-03", "fr-FR") // true (Saturday, fr-FR weekend is Sat/Sun)
|
|
19
19
|
* @example isWeekend("2024-02-02", "he-IL") // true (Friday, he-IL weekend is Fri/Sat)
|
|
20
20
|
* @example isWeekend("2024-02-04", "he-IL") // false (Sunday, not part of he-IL's weekend)
|
|
21
|
-
* @example isWeekend("invalid", "
|
|
21
|
+
* @example isWeekend("invalid", "ja-JP") // false
|
|
22
22
|
* @example isWeekend("2024-02-03", "not-a-locale-!!") // false
|
|
23
23
|
* @example isWeekend("2024-05-17", ["ar-EG", "fr-FR"]) // true (Friday is an ar-EG weekend day)
|
|
24
24
|
*/
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { getLocaleWeekendDays } from "../../internal/index.js";
|
|
3
3
|
import { isValidDate } from "../validate/index.js";
|
|
4
4
|
/**
|
|
5
5
|
* Return true when `value` falls on a weekend day for `locale`.
|
|
6
6
|
*
|
|
7
7
|
* - Uses `Intl.Locale.prototype.weekInfo` to resolve which ISO weekday
|
|
8
|
-
* numbers count as "weekend" for the locale (e.g.
|
|
9
|
-
* he-IL/ar-SA: Fri/Sat).
|
|
8
|
+
* numbers count as "weekend" for the locale (e.g. fr-FR: Sat/Sun,
|
|
9
|
+
* he-IL/ar-SA: Fri/Sat, hi-IN: Sun).
|
|
10
10
|
* - Falls back to Saturday/Sunday if the runtime's `weekInfo` data doesn't
|
|
11
11
|
* resolve a weekend for the locale.
|
|
12
12
|
* - Returns false if `value` is invalid or `locale` is not a well-formed BCP 47 tag
|
|
@@ -15,13 +15,13 @@ import { isValidDate } from "../validate/index.js";
|
|
|
15
15
|
* default locale, as ECMA-402 `ResolveLocale` requires.
|
|
16
16
|
*
|
|
17
17
|
* @param value ISO PlainDate string
|
|
18
|
-
* @param locale BCP 47 locale tag (e.g. "
|
|
18
|
+
* @param locale BCP 47 locale tag (e.g. "fr-FR", "he-IL"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns false
|
|
19
19
|
* @returns true if `value` is a weekend day in `locale`, false on invalid input
|
|
20
20
|
*
|
|
21
|
-
* @example isWeekend("2024-02-03", "
|
|
21
|
+
* @example isWeekend("2024-02-03", "fr-FR") // true (Saturday, fr-FR weekend is Sat/Sun)
|
|
22
22
|
* @example isWeekend("2024-02-02", "he-IL") // true (Friday, he-IL weekend is Fri/Sat)
|
|
23
23
|
* @example isWeekend("2024-02-04", "he-IL") // false (Sunday, not part of he-IL's weekend)
|
|
24
|
-
* @example isWeekend("invalid", "
|
|
24
|
+
* @example isWeekend("invalid", "ja-JP") // false
|
|
25
25
|
* @example isWeekend("2024-02-03", "not-a-locale-!!") // false
|
|
26
26
|
* @example isWeekend("2024-05-17", ["ar-EG", "fr-FR"]) // true (Friday is an ar-EG weekend day)
|
|
27
27
|
*/
|
|
@@ -29,8 +29,6 @@ export interface FormatCalendarOptions extends CalendarOptions {
|
|
|
29
29
|
* `timeStyle` string with no relative wording. The one-week limit is
|
|
30
30
|
* GMT's own rule, not a standard's: from 7 days out a date is easier to
|
|
31
31
|
* place than a day count.
|
|
32
|
-
* - Comparison: Moment's `.calendar()` switches to a date at the same
|
|
33
|
-
* distance (its `sameElse` case); its wording inside the week differs.
|
|
34
32
|
* - The connector between the day label and the time is read from CLDR's
|
|
35
33
|
* own combined date+time pattern for the locale (see
|
|
36
34
|
* `internal/joinDateTimeConnector.ts`), not hardcoded — this is what lets
|
|
@@ -47,10 +45,10 @@ export interface FormatCalendarOptions extends CalendarOptions {
|
|
|
47
45
|
* @param options What the value is compared with and how the time is written
|
|
48
46
|
* @returns the formatted calendar string, or "" on invalid input
|
|
49
47
|
*
|
|
50
|
-
* @example formatCalendar("2026-03-16T14:30:00", "en-
|
|
51
|
-
* @example formatCalendar("2026-03-08T14:30:00", "
|
|
48
|
+
* @example formatCalendar("2026-03-16T14:30:00", "en-GB", { reference: "2026-03-15T09:00:00" }) // "tomorrow at 14:30"
|
|
49
|
+
* @example formatCalendar("2026-03-08T14:30:00", "pt-BR", { reference: "2026-03-15T09:00:00" }) // "8 de março de 2026 às 14:30" (7 days out — beyond the threshold, absolute fallback)
|
|
52
50
|
* @example formatCalendar("not-a-date") // ""
|
|
53
51
|
* @example formatCalendar("2024-03-16T14:30:00", ["fr-FR", "en-US"], { reference: "2024-03-15T09:00:00" }) // "demain à 14:30"
|
|
54
|
-
* @example formatCalendar("2024-03-12T10:00:00", "
|
|
52
|
+
* @example formatCalendar("2024-03-12T10:00:00", "zh-CN", null as never) // "" (null options)
|
|
55
53
|
*/
|
|
56
54
|
export declare function formatCalendar(value: string, locale?: string | string[], options?: FormatCalendarOptions): string;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { cachedFormatter } from "../../internal/formatterCache.js";
|
|
1
2
|
// fallow-ignore-file code-duplication -- cross-family Temporal type clone, by design (rule 5)
|
|
2
|
-
import { Temporal } from "
|
|
3
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
3
4
|
import { joinDateTimeConnector, normalizeDateTime } from "../../internal/index.js";
|
|
4
5
|
import { plainTimeStyle } from "../../internal/plainFormatOptions.js";
|
|
5
6
|
import { isValidDateTime } from "../validate/index.js";
|
|
@@ -24,8 +25,6 @@ const ABS_DAY_THRESHOLD = 6;
|
|
|
24
25
|
* `timeStyle` string with no relative wording. The one-week limit is
|
|
25
26
|
* GMT's own rule, not a standard's: from 7 days out a date is easier to
|
|
26
27
|
* place than a day count.
|
|
27
|
-
* - Comparison: Moment's `.calendar()` switches to a date at the same
|
|
28
|
-
* distance (its `sameElse` case); its wording inside the week differs.
|
|
29
28
|
* - The connector between the day label and the time is read from CLDR's
|
|
30
29
|
* own combined date+time pattern for the locale (see
|
|
31
30
|
* `internal/joinDateTimeConnector.ts`), not hardcoded — this is what lets
|
|
@@ -42,11 +41,11 @@ const ABS_DAY_THRESHOLD = 6;
|
|
|
42
41
|
* @param options What the value is compared with and how the time is written
|
|
43
42
|
* @returns the formatted calendar string, or "" on invalid input
|
|
44
43
|
*
|
|
45
|
-
* @example formatCalendar("2026-03-16T14:30:00", "en-
|
|
46
|
-
* @example formatCalendar("2026-03-08T14:30:00", "
|
|
44
|
+
* @example formatCalendar("2026-03-16T14:30:00", "en-GB", { reference: "2026-03-15T09:00:00" }) // "tomorrow at 14:30"
|
|
45
|
+
* @example formatCalendar("2026-03-08T14:30:00", "pt-BR", { reference: "2026-03-15T09:00:00" }) // "8 de março de 2026 às 14:30" (7 days out — beyond the threshold, absolute fallback)
|
|
47
46
|
* @example formatCalendar("not-a-date") // ""
|
|
48
47
|
* @example formatCalendar("2024-03-16T14:30:00", ["fr-FR", "en-US"], { reference: "2024-03-15T09:00:00" }) // "demain à 14:30"
|
|
49
|
-
* @example formatCalendar("2024-03-12T10:00:00", "
|
|
48
|
+
* @example formatCalendar("2024-03-12T10:00:00", "zh-CN", null as never) // "" (null options)
|
|
50
49
|
*/
|
|
51
50
|
export function formatCalendar(value, locale, options = {}) {
|
|
52
51
|
try {
|
|
@@ -69,19 +68,21 @@ export function formatCalendar(value, locale, options = {}) {
|
|
|
69
68
|
// "long"/"full" are outside the type but reachable from JS; their zone
|
|
70
69
|
// name would describe the UTC anchor, not the value. Temporal's
|
|
71
70
|
// PlainDateTime format drops timeZoneName (AdjustDateTimeStyleFormat).
|
|
72
|
-
|
|
71
|
+
// GetOption converts the value once (ToString), so `new String("long")`
|
|
72
|
+
// is mapped as "long" is; a symbol throws, and that is invalid input.
|
|
73
|
+
const timeStyle = plainTimeStyle(`${optionOrDefault(options.timeStyle, "short")}`);
|
|
73
74
|
// Plain values carry no timezone. UTC is an arbitrary but stable anchor
|
|
74
75
|
// for reusing Intl's part-level formatting — any fixed zone reproduces
|
|
75
76
|
// the same wall-clock fields since there's no real zone to get wrong.
|
|
76
77
|
const epochMilliseconds = target.toZonedDateTime("UTC").epochMilliseconds;
|
|
77
78
|
if (Math.abs(diffDays) > ABS_DAY_THRESHOLD) {
|
|
78
|
-
return normalizeDateTime(
|
|
79
|
+
return normalizeDateTime(cachedFormatter("DateTimeFormat", locale, {
|
|
79
80
|
dateStyle: "long",
|
|
80
81
|
timeStyle,
|
|
81
82
|
timeZone: "UTC",
|
|
82
83
|
}).format(epochMilliseconds));
|
|
83
84
|
}
|
|
84
|
-
const dayLabel =
|
|
85
|
+
const dayLabel = cachedFormatter("RelativeTimeFormat", locale, {
|
|
85
86
|
numeric: "auto",
|
|
86
87
|
}).format(diffDays, "day");
|
|
87
88
|
return normalizeDateTime(joinDateTimeConnector(epochMilliseconds, "UTC", locale, dayLabel, timeStyle));
|
|
@@ -22,13 +22,13 @@ import type { DateTimeFormatOptions } from "../../types/index.js";
|
|
|
22
22
|
* @param options optional Intl.DateTimeFormatOptions
|
|
23
23
|
* @returns localized date string or "" on invalid input
|
|
24
24
|
*
|
|
25
|
-
* @example formatDate("2024-03-15", "
|
|
25
|
+
* @example formatDate("2024-03-15", "pt-BR", { year: "numeric", month: "long", day: "numeric" }) // "15 de março de 2024"
|
|
26
26
|
* @example formatDate("2024-03-15", "de-DE", { year: "numeric", month: "long", day: "numeric" }) // "15. März 2024"
|
|
27
27
|
* @example formatDate("2024-02-03", "ja-JP-u-ca-japanese", { year: "numeric", month: "long" }) // "令和6年2月"
|
|
28
28
|
* @example formatDate("2024-02-03", "ja-JP-u-ca-japanese", { year: "numeric", month: "numeric" }) // "R6/2" — the pre-1.16.0 text
|
|
29
|
-
* @example formatDate("2024-02-03", "
|
|
30
|
-
* @example formatDate("2024-02-03", "en-
|
|
31
|
-
* @example formatDate("2024-02-03", "en-
|
|
29
|
+
* @example formatDate("2024-02-03", "hi-IN", { timeZoneName: "long" }) // "3/2/2024"
|
|
30
|
+
* @example formatDate("2024-02-03", "en-GB", { dateStyle: "short", timeStyle: "short" }) // "" — a PlainDate has no time
|
|
31
|
+
* @example formatDate("2024-02-03", "en-GB", { dateStyle: "short" }) // "03/02/2024" — the pre-1.16.0 text
|
|
32
32
|
* @example formatDate("invalid") // ""
|
|
33
33
|
* @example formatDate("2024-02-03", ["fr-FR", "en-US"], { year: "numeric", month: "2-digit", day: "2-digit" }) // "03/02/2024" (the first listed locale)
|
|
34
34
|
*/
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Temporal } from "
|
|
1
|
+
import { Temporal } from "../../internal/temporal.js";
|
|
2
2
|
import { normalizeDateTime } from "../../internal/index.js";
|
|
3
3
|
import { plainDateFormatOptions } from "../../internal/plainFormatOptions.js";
|
|
4
4
|
import { isValidDate } from "../validate/index.js";
|
|
5
5
|
import { readDateTimeFormatOptions } from "../../internal/readDateTimeFormatOptions.js";
|
|
6
|
+
import { cachedFormatter, checkFormatterArguments, } from "../../internal/formatterCache.js";
|
|
6
7
|
/**
|
|
7
8
|
* Return a localized string for a PlainDate ISO input using Intl options.
|
|
8
9
|
*
|
|
@@ -26,13 +27,13 @@ import { readDateTimeFormatOptions } from "../../internal/readDateTimeFormatOpti
|
|
|
26
27
|
* @param options optional Intl.DateTimeFormatOptions
|
|
27
28
|
* @returns localized date string or "" on invalid input
|
|
28
29
|
*
|
|
29
|
-
* @example formatDate("2024-03-15", "
|
|
30
|
+
* @example formatDate("2024-03-15", "pt-BR", { year: "numeric", month: "long", day: "numeric" }) // "15 de março de 2024"
|
|
30
31
|
* @example formatDate("2024-03-15", "de-DE", { year: "numeric", month: "long", day: "numeric" }) // "15. März 2024"
|
|
31
32
|
* @example formatDate("2024-02-03", "ja-JP-u-ca-japanese", { year: "numeric", month: "long" }) // "令和6年2月"
|
|
32
33
|
* @example formatDate("2024-02-03", "ja-JP-u-ca-japanese", { year: "numeric", month: "numeric" }) // "R6/2" — the pre-1.16.0 text
|
|
33
|
-
* @example formatDate("2024-02-03", "
|
|
34
|
-
* @example formatDate("2024-02-03", "en-
|
|
35
|
-
* @example formatDate("2024-02-03", "en-
|
|
34
|
+
* @example formatDate("2024-02-03", "hi-IN", { timeZoneName: "long" }) // "3/2/2024"
|
|
35
|
+
* @example formatDate("2024-02-03", "en-GB", { dateStyle: "short", timeStyle: "short" }) // "" — a PlainDate has no time
|
|
36
|
+
* @example formatDate("2024-02-03", "en-GB", { dateStyle: "short" }) // "03/02/2024" — the pre-1.16.0 text
|
|
36
37
|
* @example formatDate("invalid") // ""
|
|
37
38
|
* @example formatDate("2024-02-03", ["fr-FR", "en-US"], { year: "numeric", month: "2-digit", day: "2-digit" }) // "03/02/2024" (the first listed locale)
|
|
38
39
|
*/
|
|
@@ -47,7 +48,7 @@ export function formatDate(value, locale, options) {
|
|
|
47
48
|
// widths are kept. Constructing with the caller's options first surfaces
|
|
48
49
|
// the TypeError or RangeError Intl.DateTimeFormat raises for invalid ones.
|
|
49
50
|
const read = readDateTimeFormatOptions(options);
|
|
50
|
-
|
|
51
|
+
checkFormatterArguments("DateTimeFormat", locale, read);
|
|
51
52
|
// CreateDateTimeFormat: required ~date~ with a timeStyle is a TypeError.
|
|
52
53
|
if (read.timeStyle !== undefined) {
|
|
53
54
|
return "";
|
|
@@ -57,7 +58,7 @@ export function formatDate(value, locale, options) {
|
|
|
57
58
|
return "";
|
|
58
59
|
}
|
|
59
60
|
const epochMilliseconds = Temporal.PlainDate.from(value).toZonedDateTime("UTC").epochMilliseconds;
|
|
60
|
-
return normalizeDateTime(
|
|
61
|
+
return normalizeDateTime(cachedFormatter("DateTimeFormat", locale, resolved).format(epochMilliseconds));
|
|
61
62
|
}
|
|
62
63
|
catch {
|
|
63
64
|
return "";
|
|
@@ -24,10 +24,10 @@ import type { DateTimeFormatOptions } from "../../types/index.js";
|
|
|
24
24
|
* @param options optional Intl.DateTimeFormatOptions
|
|
25
25
|
* @returns localized range string or "" when invalid
|
|
26
26
|
*
|
|
27
|
-
* @example formatDateRange("2024-02-03", "2024-02-05", "en-
|
|
28
|
-
* @example formatDateRange("2024-02-03", "2024-06-10", "
|
|
29
|
-
* @example formatDateRange("2024-02-03", "2024-02-05", "
|
|
30
|
-
* @example formatDateRange("invalid", "2024-02-05", "
|
|
27
|
+
* @example formatDateRange("2024-02-03", "2024-02-05", "en-GB", { dateStyle: "long" }) // "3 - 5 February 2024"
|
|
28
|
+
* @example formatDateRange("2024-02-03", "2024-06-10", "pt-BR", { dateStyle: "long" }) // "3 de fevereiro - 10 de junho de 2024"
|
|
29
|
+
* @example formatDateRange("2024-02-03", "2024-02-05", "hi-IN", { timeZoneName: "short" }) // "3/2/2024 - 5/2/2024"
|
|
30
|
+
* @example formatDateRange("invalid", "2024-02-05", "ja-JP") // "" (invalid input)
|
|
31
31
|
* @example formatDateRange("2024-02-03", "2024-02-05", ["fr-FR", "en-US"], { dateStyle: "long" }) // "3-5 février 2024" (GMT writes range dashes as ASCII hyphens)
|
|
32
32
|
*/
|
|
33
33
|
export declare function formatDateRange(start: string, end: string, locale?: string | string[], options?: DateTimeFormatOptions): string;
|