@northguild/gmt 1.17.0 → 1.19.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 +55 -2480
- package/dist/calendar/calculate/bucketRange.d.ts +12 -4
- package/dist/calendar/calculate/bucketRange.js +20 -63
- package/dist/calendar/calculate/floorToZone.d.ts +14 -4
- package/dist/calendar/calculate/floorToZone.js +18 -9
- package/dist/calendar/calculate/getFiscalPeriod.d.ts +21 -8
- package/dist/calendar/calculate/getFiscalPeriod.js +9 -8
- package/dist/calendar/calculate/getIsoWeekDate.d.ts +10 -5
- package/dist/calendar/calculate/getIsoWeekDate.js +1 -5
- package/dist/calendar/calculate/getOrdinalDate.d.ts +10 -3
- package/dist/calendar/calculate/getOrdinalDate.js +2 -3
- package/dist/calendar/calculate/getQuarter.d.ts +21 -9
- package/dist/calendar/calculate/getQuarter.js +8 -12
- package/dist/calendar/hours/addOperatingTime.d.ts +59 -0
- package/dist/calendar/hours/addOperatingTime.js +65 -0
- package/dist/calendar/hours/index.d.ts +7 -0
- package/dist/calendar/hours/index.js +7 -0
- package/dist/calendar/hours/isOpenAt.d.ts +45 -0
- package/dist/calendar/hours/isOpenAt.js +50 -0
- package/dist/calendar/hours/nextCloseAt.d.ts +55 -0
- package/dist/calendar/hours/nextCloseAt.js +57 -0
- package/dist/calendar/hours/nextOpenAt.d.ts +51 -0
- package/dist/calendar/hours/nextOpenAt.js +53 -0
- package/dist/calendar/hours/operatingIntervals.d.ts +48 -0
- package/dist/calendar/hours/operatingIntervals.js +57 -0
- package/dist/calendar/hours/operatingTimeBetween.d.ts +45 -0
- package/dist/calendar/hours/operatingTimeBetween.js +54 -0
- package/dist/calendar/hours/recurringWindows.d.ts +68 -0
- package/dist/calendar/hours/recurringWindows.js +88 -0
- package/dist/calendar/index.d.ts +1 -0
- package/dist/calendar/index.js +1 -0
- package/dist/duration/calculate/durationFromUnits.d.ts +47 -0
- package/dist/duration/calculate/durationFromUnits.js +67 -0
- package/dist/duration/calculate/getDurationUnit.d.ts +2 -2
- package/dist/duration/calculate/getDurationUnit.js +2 -2
- package/dist/duration/calculate/index.d.ts +3 -1
- package/dist/duration/calculate/index.js +3 -1
- package/dist/duration/calculate/negateDuration.d.ts +1 -1
- package/dist/duration/calculate/negateDuration.js +1 -1
- package/dist/duration/calculate/totalDuration.d.ts +73 -0
- package/dist/duration/calculate/{durationAs.js → totalDuration.js} +29 -27
- package/dist/duration/calculate/totalUnits.d.ts +49 -0
- package/dist/duration/calculate/totalUnits.js +73 -0
- package/dist/duration/compare/compareDurations.d.ts +13 -7
- package/dist/duration/compare/compareDurations.js +4 -7
- package/dist/duration/format/formatDuration.d.ts +16 -4
- package/dist/duration/format/formatDuration.js +4 -5
- package/dist/duration/normalize/normalizeDuration.d.ts +39 -14
- package/dist/duration/normalize/normalizeDuration.js +6 -15
- package/dist/duration/parse/parseDuration.d.ts +21 -3
- package/dist/duration/parse/parseDuration.js +1 -3
- package/dist/duty/calculate/dutyDayFor.d.ts +38 -0
- package/dist/duty/calculate/dutyDayFor.js +71 -0
- package/dist/duty/calculate/dutyTotals.d.ts +24 -0
- package/dist/duty/calculate/dutyTotals.js +41 -0
- package/dist/duty/calculate/dutyViolations.d.ts +74 -0
- package/dist/duty/calculate/dutyViolations.js +65 -0
- package/dist/duty/calculate/evaluateDutyLog.d.ts +77 -0
- package/dist/duty/calculate/evaluateDutyLog.js +75 -0
- package/dist/duty/calculate/index.d.ts +7 -0
- package/dist/duty/calculate/index.js +7 -0
- package/dist/duty/calculate/longestRun.d.ts +28 -0
- package/dist/duty/calculate/longestRun.js +54 -0
- package/dist/duty/calculate/qualifyingRestPairs.d.ts +37 -0
- package/dist/duty/calculate/qualifyingRestPairs.js +58 -0
- package/dist/duty/calculate/qualifyingRests.d.ts +27 -0
- package/dist/duty/calculate/qualifyingRests.js +49 -0
- package/dist/duty/index.d.ts +3 -0
- package/dist/duty/index.js +4 -0
- package/dist/duty/validate/index.d.ts +1 -0
- package/dist/duty/validate/index.js +1 -0
- package/dist/duty/validate/isValidDutyLog.d.ts +24 -0
- package/dist/duty/validate/isValidDutyLog.js +34 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/instant/convert/classifyLocal.d.ts +5 -1
- package/dist/instant/convert/classifyLocal.js +16 -6
- package/dist/instant/convert/fromOffsetInstant.d.ts +7 -1
- package/dist/instant/convert/fromOffsetInstant.js +9 -2
- package/dist/instant/convert/resolveLocal.d.ts +18 -8
- package/dist/instant/convert/resolveLocal.js +21 -17
- package/dist/instant/convert/toOffsetInstant.d.ts +33 -16
- package/dist/instant/convert/toOffsetInstant.js +28 -13
- package/dist/instant/index.d.ts +1 -0
- package/dist/instant/index.js +1 -0
- package/dist/instant/validate/index.d.ts +1 -0
- package/dist/instant/validate/index.js +1 -0
- package/dist/instant/validate/isValidUtcOffset.d.ts +32 -0
- package/dist/instant/validate/isValidUtcOffset.js +35 -0
- package/dist/intermodal/calculate/billingTimeline.d.ts +31 -11
- package/dist/intermodal/calculate/billingTimeline.js +2 -2
- package/dist/intermodal/calculate/chargeableDays.d.ts +19 -11
- package/dist/intermodal/calculate/chargeableDays.js +13 -10
- package/dist/intermodal/calculate/demurrageClock.d.ts +16 -7
- package/dist/intermodal/calculate/demurrageClock.js +7 -7
- package/dist/intermodal/calculate/freeTimeExpiry.d.ts +12 -4
- package/dist/intermodal/calculate/freeTimeExpiry.js +19 -8
- package/dist/intermodal/calculate/index.d.ts +1 -0
- package/dist/intermodal/calculate/index.js +1 -0
- package/dist/intermodal/calculate/multimodalETA.d.ts +76 -0
- package/dist/intermodal/calculate/multimodalETA.js +145 -0
- package/dist/intermodal/format/bolTimestamp.d.ts +76 -0
- package/dist/intermodal/format/bolTimestamp.js +78 -0
- package/dist/intermodal/format/formatEdifactDate.d.ts +34 -0
- package/dist/intermodal/format/formatEdifactDate.js +42 -0
- package/dist/intermodal/format/formatEdifactDatePeriod.d.ts +35 -0
- package/dist/intermodal/format/formatEdifactDatePeriod.js +43 -0
- package/dist/intermodal/format/formatEdifactDateTime.d.ts +37 -0
- package/dist/intermodal/format/formatEdifactDateTime.js +45 -0
- package/dist/intermodal/format/formatEdifactDateTimePeriod.d.ts +40 -0
- package/dist/intermodal/format/formatEdifactDateTimePeriod.js +48 -0
- package/dist/intermodal/format/formatEdifactOffsetDateTime.d.ts +62 -0
- package/dist/intermodal/format/formatEdifactOffsetDateTime.js +70 -0
- package/dist/intermodal/format/formatEdifactTime.d.ts +35 -0
- package/dist/intermodal/format/formatEdifactTime.js +43 -0
- package/dist/intermodal/format/formatEpcisEvent.d.ts +47 -0
- package/dist/intermodal/format/formatEpcisEvent.js +79 -0
- package/dist/intermodal/format/formatX12Date.d.ts +35 -0
- package/dist/intermodal/format/formatX12Date.js +43 -0
- package/dist/intermodal/format/formatX12DateRange.d.ts +37 -0
- package/dist/intermodal/format/formatX12DateRange.js +45 -0
- package/dist/intermodal/format/formatX12DateTime.d.ts +39 -0
- package/dist/intermodal/format/formatX12DateTime.js +47 -0
- package/dist/intermodal/format/formatX12DateTimeRange.d.ts +40 -0
- package/dist/intermodal/format/formatX12DateTimeRange.js +48 -0
- package/dist/intermodal/format/formatX12Time.d.ts +42 -0
- package/dist/intermodal/format/formatX12Time.js +50 -0
- package/dist/intermodal/format/formatX12TimeElement.d.ts +46 -0
- package/dist/intermodal/format/formatX12TimeElement.js +54 -0
- package/dist/intermodal/format/index.d.ts +14 -0
- package/dist/intermodal/format/index.js +14 -0
- package/dist/intermodal/index.d.ts +3 -0
- package/dist/intermodal/index.js +3 -0
- package/dist/intermodal/parse/classifyEdifactDtmFormat.d.ts +48 -0
- package/dist/intermodal/parse/classifyEdifactDtmFormat.js +55 -0
- package/dist/intermodal/parse/classifyX12DateTimePeriodFormat.d.ts +50 -0
- package/dist/intermodal/parse/classifyX12DateTimePeriodFormat.js +57 -0
- package/dist/intermodal/parse/classifyX12TimeCode.d.ts +46 -0
- package/dist/intermodal/parse/classifyX12TimeCode.js +57 -0
- package/dist/intermodal/parse/index.d.ts +18 -0
- package/dist/intermodal/parse/index.js +18 -0
- package/dist/intermodal/parse/parseEdifactDate.d.ts +37 -0
- package/dist/intermodal/parse/parseEdifactDate.js +45 -0
- package/dist/intermodal/parse/parseEdifactDatePeriod.d.ts +43 -0
- package/dist/intermodal/parse/parseEdifactDatePeriod.js +51 -0
- package/dist/intermodal/parse/parseEdifactDateTime.d.ts +43 -0
- package/dist/intermodal/parse/parseEdifactDateTime.js +51 -0
- package/dist/intermodal/parse/parseEdifactDateTimePeriod.d.ts +45 -0
- package/dist/intermodal/parse/parseEdifactDateTimePeriod.js +53 -0
- package/dist/intermodal/parse/parseEdifactOffsetDateTime.d.ts +60 -0
- package/dist/intermodal/parse/parseEdifactOffsetDateTime.js +68 -0
- package/dist/intermodal/parse/parseEdifactTime.d.ts +37 -0
- package/dist/intermodal/parse/parseEdifactTime.js +45 -0
- package/dist/intermodal/parse/parseEpcisEvent.d.ts +95 -0
- package/dist/intermodal/parse/parseEpcisEvent.js +102 -0
- package/dist/intermodal/parse/parseX12Date.d.ts +39 -0
- package/dist/intermodal/parse/parseX12Date.js +47 -0
- package/dist/intermodal/parse/parseX12DateAndTime.d.ts +52 -0
- package/dist/intermodal/parse/parseX12DateAndTime.js +61 -0
- package/dist/intermodal/parse/parseX12DateRange.d.ts +44 -0
- package/dist/intermodal/parse/parseX12DateRange.js +52 -0
- package/dist/intermodal/parse/parseX12DateTime.d.ts +45 -0
- package/dist/intermodal/parse/parseX12DateTime.js +53 -0
- package/dist/intermodal/parse/parseX12DateTimeRange.d.ts +46 -0
- package/dist/intermodal/parse/parseX12DateTimeRange.js +54 -0
- package/dist/intermodal/parse/parseX12Time.d.ts +65 -0
- package/dist/intermodal/parse/parseX12Time.js +77 -0
- package/dist/intermodal/parse/x12TimeCodeOffset.d.ts +57 -0
- package/dist/intermodal/parse/x12TimeCodeOffset.js +110 -0
- package/dist/intermodal/parse/x12TimeCodeZone.d.ts +57 -0
- package/dist/intermodal/parse/x12TimeCodeZone.js +105 -0
- package/dist/intermodal/validate/index.d.ts +18 -0
- package/dist/intermodal/validate/index.js +18 -0
- package/dist/intermodal/validate/isValidEdifactDate.d.ts +26 -0
- package/dist/intermodal/validate/isValidEdifactDate.js +28 -0
- package/dist/intermodal/validate/isValidEdifactDatePeriod.d.ts +28 -0
- package/dist/intermodal/validate/isValidEdifactDatePeriod.js +30 -0
- package/dist/intermodal/validate/isValidEdifactDateTime.d.ts +30 -0
- package/dist/intermodal/validate/isValidEdifactDateTime.js +32 -0
- package/dist/intermodal/validate/isValidEdifactDateTimePeriod.d.ts +28 -0
- package/dist/intermodal/validate/isValidEdifactDateTimePeriod.js +30 -0
- package/dist/intermodal/validate/isValidEdifactDtmFormat.d.ts +39 -0
- package/dist/intermodal/validate/isValidEdifactDtmFormat.js +42 -0
- package/dist/intermodal/validate/isValidEdifactOffsetDateTime.d.ts +36 -0
- package/dist/intermodal/validate/isValidEdifactOffsetDateTime.js +38 -0
- package/dist/intermodal/validate/isValidEdifactTime.d.ts +28 -0
- package/dist/intermodal/validate/isValidEdifactTime.js +30 -0
- package/dist/intermodal/validate/isValidEpcisEvent.d.ts +41 -0
- package/dist/intermodal/validate/isValidEpcisEvent.js +58 -0
- package/dist/intermodal/validate/isValidEpcisEventTime.d.ts +33 -0
- package/dist/intermodal/validate/isValidEpcisEventTime.js +48 -0
- package/dist/intermodal/validate/isValidEpcisTimeZoneOffset.d.ts +30 -0
- package/dist/intermodal/validate/isValidEpcisTimeZoneOffset.js +38 -0
- package/dist/intermodal/validate/isValidX12Date.d.ts +28 -0
- package/dist/intermodal/validate/isValidX12Date.js +30 -0
- package/dist/intermodal/validate/isValidX12DateAndTime.d.ts +32 -0
- package/dist/intermodal/validate/isValidX12DateAndTime.js +35 -0
- package/dist/intermodal/validate/isValidX12DateRange.d.ts +29 -0
- package/dist/intermodal/validate/isValidX12DateRange.js +31 -0
- package/dist/intermodal/validate/isValidX12DateTime.d.ts +30 -0
- package/dist/intermodal/validate/isValidX12DateTime.js +32 -0
- package/dist/intermodal/validate/isValidX12DateTimePeriodFormat.d.ts +43 -0
- package/dist/intermodal/validate/isValidX12DateTimePeriodFormat.js +46 -0
- package/dist/intermodal/validate/isValidX12DateTimeRange.d.ts +31 -0
- package/dist/intermodal/validate/isValidX12DateTimeRange.js +33 -0
- package/dist/intermodal/validate/isValidX12Time.d.ts +38 -0
- package/dist/intermodal/validate/isValidX12Time.js +40 -0
- package/dist/intermodal/validate/isValidX12TimeCode.d.ts +38 -0
- package/dist/intermodal/validate/isValidX12TimeCode.js +41 -0
- package/dist/internal/businessCalendar.d.ts +5 -0
- package/dist/internal/businessCalendar.js +9 -10
- package/dist/internal/cycleFieldValue.d.ts +6 -4
- package/dist/internal/cycleFieldValue.js +6 -4
- package/dist/internal/daylightTime.d.ts +33 -0
- package/dist/internal/daylightTime.js +164 -0
- package/dist/internal/durationUntilString.js +4 -3
- package/dist/internal/dutyEngine.d.ts +125 -0
- package/dist/internal/dutyEngine.js +1746 -0
- package/dist/internal/dutyLog.d.ts +27 -0
- package/dist/internal/dutyLog.js +47 -0
- package/dist/internal/dutyPeriods.d.ts +135 -0
- package/dist/internal/dutyPeriods.js +369 -0
- package/dist/internal/dutyRules.d.ts +197 -0
- package/dist/internal/dutyRules.js +484 -0
- package/dist/internal/ediDateTimeFields.d.ts +97 -0
- package/dist/internal/ediDateTimeFields.js +288 -0
- package/dist/internal/ediDateTimeWriter.d.ts +92 -0
- package/dist/internal/ediDateTimeWriter.js +298 -0
- package/dist/internal/ediGrammar.d.ts +158 -0
- package/dist/internal/ediGrammar.js +384 -0
- package/dist/internal/englishCalendarNames.d.ts +3 -1
- package/dist/internal/englishCalendarNames.js +4 -3
- package/dist/internal/epochNanoseconds.d.ts +2 -0
- package/dist/internal/epochNanoseconds.js +2 -0
- package/dist/internal/exactDuration.d.ts +37 -0
- package/dist/internal/exactDuration.js +64 -0
- package/dist/internal/exactMoment.d.ts +72 -0
- package/dist/internal/exactMoment.js +114 -0
- package/dist/internal/fiscalCalendar.d.ts +4 -3
- package/dist/internal/fiscalCalendar.js +4 -3
- package/dist/internal/formatCalendarDays.d.ts +2 -2
- package/dist/internal/formatRelativeDuration.d.ts +21 -1
- package/dist/internal/formatRelativeDuration.js +47 -7
- package/dist/internal/freeTimeLedger.d.ts +5 -0
- package/dist/internal/freeTimeLedger.js +11 -2
- package/dist/internal/index.d.ts +12 -4
- package/dist/internal/index.js +16 -4
- package/dist/internal/instantFormatOptions.js +2 -1
- package/dist/internal/instantNanoseconds.d.ts +75 -9
- package/dist/internal/instantNanoseconds.js +192 -11
- package/dist/internal/intervalNanoseconds.js +2 -1
- package/dist/internal/isObject.d.ts +13 -6
- package/dist/internal/isObject.js +14 -7
- package/dist/internal/isoYearString.d.ts +21 -0
- package/dist/internal/isoYearString.js +27 -0
- package/dist/internal/joinDateTimeConnector.d.ts +1 -1
- package/dist/internal/maxPieces.js +2 -1
- package/dist/internal/monthGridWeekRow.d.ts +2 -1
- package/dist/internal/monthGridWeekRow.js +2 -1
- package/dist/internal/normalizeTimeZone.d.ts +5 -2
- package/dist/internal/normalizeTimeZone.js +5 -2
- package/dist/internal/operatingSchedule.d.ts +138 -0
- package/dist/internal/operatingSchedule.js +756 -0
- package/dist/internal/optionOrDefault.d.ts +18 -0
- package/dist/internal/optionOrDefault.js +20 -0
- package/dist/internal/patternToken.d.ts +12 -5
- package/dist/internal/patternToken.js +59 -25
- package/dist/internal/plainDateUntil.js +10 -6
- package/dist/internal/punctuality.d.ts +38 -0
- package/dist/internal/punctuality.js +59 -0
- package/dist/internal/readDateTimeFormatOptions.d.ts +30 -0
- package/dist/internal/readDateTimeFormatOptions.js +93 -0
- package/dist/internal/readDurationUnits.d.ts +34 -0
- package/dist/internal/readDurationUnits.js +78 -0
- package/dist/internal/readSetFields.d.ts +50 -0
- package/dist/internal/readSetFields.js +179 -0
- package/dist/internal/resolveDurationRelativeTo.d.ts +4 -0
- package/dist/internal/resolveDurationRelativeTo.js +11 -1
- package/dist/internal/resolveRelativeRounding.d.ts +17 -6
- package/dist/internal/resolveRelativeRounding.js +27 -7
- package/dist/internal/resolveRelativeUnit.d.ts +30 -0
- package/dist/internal/resolveRelativeUnit.js +40 -0
- package/dist/internal/resolveUnixIntervalPair.d.ts +8 -2
- package/dist/internal/resolveUnixIntervalPair.js +11 -7
- package/dist/internal/splitStep.d.ts +24 -1
- package/dist/internal/splitStep.js +34 -2
- package/dist/internal/startOrEndOfUnix.d.ts +2 -1
- package/dist/internal/startOrEndOfUnix.js +9 -6
- package/dist/internal/startOrEndOfZoned.js +2 -3
- package/dist/internal/temporalCompat/capabilities.d.ts +26 -0
- package/dist/internal/temporalCompat/capabilities.js +35 -3
- package/dist/internal/temporalCompat/fieldSearch.js +1 -1
- package/dist/internal/temporalCompat/index.d.ts +1 -1
- package/dist/internal/temporalCompat/index.js +1 -1
- package/dist/internal/temporalCompat/repros.d.ts +1 -1
- package/dist/internal/temporalCompat/repros.js +157 -0
- package/dist/internal/timestampEvents.d.ts +32 -0
- package/dist/internal/timestampEvents.js +76 -0
- package/dist/internal/twoDigitYear.d.ts +19 -0
- package/dist/internal/twoDigitYear.js +22 -0
- package/dist/internal/unixEpochValue.js +3 -2
- package/dist/internal/unixWallClock.d.ts +24 -0
- package/dist/internal/unixWallClock.js +35 -0
- package/dist/internal/utcWallClock.d.ts +20 -0
- package/dist/internal/utcWallClock.js +32 -0
- package/dist/internal/yearWindowStart.d.ts +28 -0
- package/dist/internal/yearWindowStart.js +52 -0
- package/dist/internal/zoneBucketCap.d.ts +18 -0
- package/dist/internal/zoneBucketCap.js +64 -0
- package/dist/internal/zoneFrame.d.ts +180 -0
- package/dist/internal/zoneFrame.js +221 -0
- package/dist/internal/zonedBucket.js +8 -6
- package/dist/internal/zonedLocalDates.js +1 -1
- package/dist/internal/zonedNowUnitValue.d.ts +7 -4
- package/dist/internal/zonedNowUnitValue.js +8 -4
- package/dist/internal/zonedTransitionSearch.d.ts +27 -0
- package/dist/internal/zonedTransitionSearch.js +218 -0
- package/dist/internal/zonedWallClock.d.ts +21 -7
- package/dist/internal/zonedWallClock.js +87 -18
- package/dist/internal/zonedWallClockDifference.js +4 -4
- package/dist/internal/zonedWallClockOperations.d.ts +31 -15
- package/dist/internal/zonedWallClockOperations.js +93 -43
- package/dist/interval/validate/isValidInterval.d.ts +6 -3
- package/dist/interval/validate/isValidInterval.js +6 -3
- package/dist/plain/calculate/addDate.d.ts +11 -8
- package/dist/plain/calculate/addDate.js +9 -15
- package/dist/plain/calculate/addDateTime.d.ts +7 -4
- package/dist/plain/calculate/addDateTime.js +5 -11
- package/dist/plain/calculate/addTime.js +4 -7
- package/dist/plain/calculate/cycleDate.d.ts +16 -7
- package/dist/plain/calculate/cycleDate.js +3 -7
- package/dist/plain/calculate/cycleDateTime.d.ts +14 -4
- package/dist/plain/calculate/cycleDateTime.js +1 -4
- package/dist/plain/calculate/cycleTime.d.ts +10 -5
- package/dist/plain/calculate/cycleTime.js +3 -5
- package/dist/plain/calculate/diffDate.d.ts +1 -1
- package/dist/plain/calculate/diffDate.js +1 -1
- package/dist/plain/calculate/diffDateAsDuration.d.ts +1 -1
- package/dist/plain/calculate/diffDateAsDuration.js +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 +8 -3
- package/dist/plain/calculate/endOfDate.js +1 -3
- package/dist/plain/calculate/endOfDateTime.d.ts +15 -5
- package/dist/plain/calculate/endOfDateTime.js +1 -5
- package/dist/plain/calculate/endOfTime.d.ts +9 -3
- package/dist/plain/calculate/endOfTime.js +1 -2
- package/dist/plain/calculate/getLocaleWeekYear.d.ts +16 -9
- package/dist/plain/calculate/getLocaleWeekYear.js +9 -9
- package/dist/plain/calculate/getWeekOfMonth.d.ts +7 -4
- package/dist/plain/calculate/getWeekOfMonth.js +7 -4
- package/dist/plain/calculate/getWeeksInLocaleWeekYear.d.ts +13 -6
- package/dist/plain/calculate/getWeeksInLocaleWeekYear.js +6 -6
- package/dist/plain/calculate/getWeeksInMonth.d.ts +5 -2
- package/dist/plain/calculate/getWeeksInMonth.js +5 -2
- package/dist/plain/calculate/nextWeekday.d.ts +7 -3
- package/dist/plain/calculate/nextWeekday.js +1 -3
- package/dist/plain/calculate/previousWeekday.d.ts +7 -3
- package/dist/plain/calculate/previousWeekday.js +1 -3
- package/dist/plain/calculate/roundDate.d.ts +20 -7
- package/dist/plain/calculate/roundDate.js +3 -10
- package/dist/plain/calculate/roundDateTime.d.ts +22 -8
- package/dist/plain/calculate/roundDateTime.js +3 -11
- package/dist/plain/calculate/roundTime.d.ts +20 -4
- package/dist/plain/calculate/roundTime.js +3 -7
- package/dist/plain/calculate/setDate.d.ts +27 -8
- package/dist/plain/calculate/setDate.js +28 -12
- package/dist/plain/calculate/setDateTime.d.ts +23 -8
- package/dist/plain/calculate/setDateTime.js +23 -12
- package/dist/plain/calculate/setTime.d.ts +23 -7
- package/dist/plain/calculate/setTime.js +25 -12
- package/dist/plain/calculate/startOfDate.d.ts +8 -2
- package/dist/plain/calculate/startOfDate.js +1 -2
- package/dist/plain/calculate/startOfDateTime.d.ts +15 -2
- package/dist/plain/calculate/startOfDateTime.js +1 -2
- package/dist/plain/calculate/startOfTime.d.ts +9 -2
- package/dist/plain/calculate/startOfTime.js +1 -1
- package/dist/plain/calculate/subtractDate.d.ts +7 -4
- package/dist/plain/calculate/subtractDate.js +5 -11
- package/dist/plain/calculate/subtractDateTime.d.ts +7 -4
- package/dist/plain/calculate/subtractDateTime.js +5 -11
- package/dist/plain/calculate/subtractTime.js +4 -7
- package/dist/plain/compare/areDateTimesEqualBy.d.ts +13 -5
- package/dist/plain/compare/areDateTimesEqualBy.js +6 -5
- package/dist/plain/compare/areDatesEqualBy.d.ts +15 -6
- package/dist/plain/compare/areDatesEqualBy.js +8 -6
- package/dist/plain/compare/isBetweenDate.d.ts +13 -2
- package/dist/plain/compare/isBetweenDate.js +4 -4
- package/dist/plain/compare/isBetweenDateTime.d.ts +13 -2
- package/dist/plain/compare/isBetweenDateTime.js +4 -4
- package/dist/plain/compare/isBetweenTime.d.ts +13 -2
- package/dist/plain/compare/isBetweenTime.js +4 -4
- package/dist/plain/compare/isRelativeDay.d.ts +1 -1
- package/dist/plain/compare/isRelativeDay.js +1 -1
- package/dist/plain/compare/isThisUnit.d.ts +1 -1
- package/dist/plain/compare/isThisUnit.js +1 -1
- package/dist/plain/format/formatCalendar.d.ts +21 -14
- package/dist/plain/format/formatCalendar.js +23 -17
- package/dist/plain/format/formatDate.js +5 -3
- package/dist/plain/format/formatDateRange.js +4 -2
- package/dist/plain/format/formatDateTime.js +4 -2
- package/dist/plain/format/formatDateTimeRange.js +4 -2
- package/dist/plain/format/formatDateTimeToParts.d.ts +15 -4
- package/dist/plain/format/formatDateTimeToParts.js +10 -6
- package/dist/plain/format/formatDateToParts.d.ts +13 -2
- package/dist/plain/format/formatDateToParts.js +8 -4
- package/dist/plain/format/formatRelativeDate.d.ts +16 -3
- package/dist/plain/format/formatRelativeDate.js +28 -16
- package/dist/plain/format/formatRelativeDateTime.d.ts +16 -3
- package/dist/plain/format/formatRelativeDateTime.js +10 -6
- package/dist/plain/format/formatRelativeTime.d.ts +16 -3
- package/dist/plain/format/formatRelativeTime.js +23 -14
- package/dist/plain/format/{formatSql.d.ts → formatSqlDateTime.d.ts} +7 -7
- package/dist/plain/format/{formatSql.js → formatSqlDateTime.js} +7 -7
- package/dist/plain/format/formatTime.js +4 -2
- package/dist/plain/format/index.d.ts +1 -1
- package/dist/plain/format/index.js +1 -1
- package/dist/plain/get/getNowUnit.d.ts +2 -0
- package/dist/plain/get/getNowUnit.js +2 -0
- package/dist/plain/get/getYear.d.ts +2 -0
- package/dist/plain/get/getYear.js +4 -3
- package/dist/plain/interval/intervalDifferenceDate.d.ts +9 -0
- package/dist/plain/interval/intervalDifferenceDateTime.d.ts +9 -0
- package/dist/plain/interval/intervalDifferenceTime.d.ts +9 -0
- package/dist/plain/interval/intervalDivideEquallyDate.d.ts +19 -4
- package/dist/plain/interval/intervalDivideEquallyDate.js +3 -4
- package/dist/plain/interval/intervalDivideEquallyDateTime.d.ts +19 -4
- package/dist/plain/interval/intervalDivideEquallyDateTime.js +3 -4
- package/dist/plain/interval/intervalDivideEquallyTime.d.ts +19 -4
- package/dist/plain/interval/intervalDivideEquallyTime.js +3 -4
- package/dist/plain/interval/intervalFromDurationDate.d.ts +16 -3
- package/dist/plain/interval/intervalFromDurationDate.js +1 -3
- package/dist/plain/interval/intervalFromDurationDateTime.d.ts +16 -3
- package/dist/plain/interval/intervalFromDurationDateTime.js +1 -3
- package/dist/plain/interval/intervalFromDurationTime.d.ts +9 -0
- package/dist/plain/interval/intervalIntersectionDate.d.ts +9 -0
- package/dist/plain/interval/intervalIntersectionDateTime.d.ts +9 -0
- package/dist/plain/interval/intervalIntersectionTime.d.ts +9 -0
- package/dist/plain/interval/intervalSplitAtDate.d.ts +11 -0
- package/dist/plain/interval/intervalSplitAtDate.js +2 -0
- package/dist/plain/interval/intervalSplitAtDateTime.d.ts +11 -0
- package/dist/plain/interval/intervalSplitAtDateTime.js +2 -0
- package/dist/plain/interval/intervalSplitAtTime.d.ts +11 -0
- package/dist/plain/interval/intervalSplitAtTime.js +2 -0
- package/dist/plain/interval/intervalUnionDate.d.ts +9 -0
- package/dist/plain/interval/intervalUnionDateTime.d.ts +9 -0
- package/dist/plain/interval/intervalUnionTime.d.ts +9 -0
- package/dist/plain/interval/intervalXorAllDate.d.ts +9 -0
- package/dist/plain/interval/intervalXorAllDate.js +2 -2
- package/dist/plain/interval/intervalXorAllDateTime.d.ts +9 -0
- package/dist/plain/interval/intervalXorAllDateTime.js +2 -2
- package/dist/plain/interval/intervalXorAllTime.d.ts +9 -0
- package/dist/plain/interval/intervalXorAllTime.js +2 -2
- package/dist/plain/interval/intervalXorDate.d.ts +9 -0
- package/dist/plain/interval/intervalXorDateTime.d.ts +9 -0
- package/dist/plain/interval/intervalXorTime.d.ts +9 -0
- package/dist/plain/interval/mergeIntervalsDate.d.ts +9 -0
- package/dist/plain/interval/mergeIntervalsDate.js +2 -2
- package/dist/plain/interval/mergeIntervalsDateTime.d.ts +9 -0
- package/dist/plain/interval/mergeIntervalsDateTime.js +2 -2
- package/dist/plain/interval/mergeIntervalsTime.d.ts +9 -0
- package/dist/plain/interval/mergeIntervalsTime.js +2 -2
- package/dist/plain/interval/splitIntervalByUnitDate.d.ts +23 -7
- package/dist/plain/interval/splitIntervalByUnitDate.js +7 -7
- package/dist/plain/interval/splitIntervalByUnitDateTime.d.ts +22 -6
- package/dist/plain/interval/splitIntervalByUnitDateTime.js +6 -6
- package/dist/plain/interval/splitIntervalByUnitTime.d.ts +17 -4
- package/dist/plain/interval/splitIntervalByUnitTime.js +1 -4
- package/dist/plain/map/mapDatesInRange.d.ts +8 -4
- package/dist/plain/map/mapDatesInRange.js +1 -4
- package/dist/plain/parse/index.d.ts +1 -1
- package/dist/plain/parse/index.js +1 -1
- package/dist/plain/parse/parseDateTimeWithPattern.d.ts +25 -9
- package/dist/plain/parse/parseDateTimeWithPattern.js +29 -11
- package/dist/plain/parse/parseDateWithPattern.d.ts +26 -9
- package/dist/plain/parse/parseDateWithPattern.js +30 -11
- package/dist/plain/parse/{parseSql.d.ts → parseSqlDateTime.d.ts} +8 -8
- package/dist/plain/parse/{parseSql.js → parseSqlDateTime.js} +8 -8
- package/dist/plain/parse/parseTimeWithPattern.d.ts +10 -7
- package/dist/plain/parse/parseTimeWithPattern.js +11 -7
- package/dist/plain/parse/parseUnitFromDate.d.ts +14 -3
- package/dist/plain/parse/parseUnitFromDate.js +8 -4
- package/dist/plain/parse/parseUnitFromDateTime.d.ts +14 -3
- package/dist/plain/parse/parseUnitFromDateTime.js +8 -4
- package/dist/plain/parse/parseWeekFromDate.d.ts +10 -6
- package/dist/plain/parse/parseWeekFromDate.js +2 -6
- package/dist/plain/parse/parseWeekFromDateTime.d.ts +10 -6
- package/dist/plain/parse/parseWeekFromDateTime.js +2 -6
- package/dist/plain/parse/parseYearFromDate.d.ts +5 -2
- package/dist/plain/parse/parseYearFromDate.js +7 -3
- package/dist/plain/parse/parseYearFromDateTime.d.ts +4 -2
- package/dist/plain/parse/parseYearFromDateTime.js +6 -3
- package/dist/plain/validate/index.d.ts +1 -0
- package/dist/plain/validate/index.js +1 -0
- package/dist/plain/validate/isValidDateRange.d.ts +19 -4
- package/dist/plain/validate/isValidDateRange.js +1 -4
- package/dist/plain/validate/isValidDateTimeRange.d.ts +20 -5
- package/dist/plain/validate/isValidDateTimeRange.js +2 -5
- package/dist/plain/validate/isValidSqlDateTime.d.ts +33 -0
- package/dist/plain/validate/isValidSqlDateTime.js +36 -0
- package/dist/plain/validate/isValidTimeRange.d.ts +20 -5
- package/dist/plain/validate/isValidTimeRange.js +2 -5
- package/dist/precision/convert/fromExcelSerial.d.ts +10 -4
- package/dist/precision/convert/fromExcelSerial.js +4 -5
- package/dist/precision/convert/fromNanoseconds.d.ts +9 -3
- package/dist/precision/convert/fromNanoseconds.js +9 -3
- package/dist/precision/convert/toExcelSerial.d.ts +9 -3
- package/dist/precision/convert/toExcelSerial.js +3 -4
- package/dist/precision/convert/toNanoseconds.d.ts +11 -6
- package/dist/precision/convert/toNanoseconds.js +11 -6
- package/dist/precision/validate/isValidInstant.d.ts +12 -3
- package/dist/precision/validate/isValidInstant.js +12 -3
- package/dist/regex/epcis.d.ts +60 -0
- package/dist/regex/epcis.js +60 -0
- package/dist/regex/http-date.d.ts +6 -4
- package/dist/regex/http-date.js +6 -4
- package/dist/regex/index.d.ts +1 -0
- package/dist/regex/index.js +1 -0
- package/dist/regex/rfc-2822.d.ts +2 -0
- package/dist/regex/rfc-2822.js +2 -0
- package/dist/regex/rfc-3339.d.ts +3 -1
- package/dist/regex/rfc-3339.js +3 -1
- package/dist/regex/sql-date-time.d.ts +2 -1
- package/dist/regex/sql-date-time.js +2 -1
- package/dist/regex/time-zone-like.d.ts +3 -2
- package/dist/regex/time-zone-like.js +3 -2
- package/dist/regex/utc-offset.d.ts +2 -1
- package/dist/regex/utc-offset.js +2 -1
- package/dist/span/calculate/spanMs.d.ts +10 -4
- package/dist/span/calculate/spanMs.js +10 -4
- package/dist/span/calculate/spanNs.d.ts +10 -4
- package/dist/span/calculate/spanNs.js +10 -4
- package/dist/span/validate/isValidSpan.d.ts +8 -3
- package/dist/span/validate/isValidSpan.js +8 -3
- package/dist/transport/calculate/bestAvailable.d.ts +47 -0
- package/dist/transport/calculate/bestAvailable.js +76 -0
- package/dist/transport/calculate/crossingTime.d.ts +63 -0
- package/dist/transport/calculate/crossingTime.js +81 -0
- package/dist/transport/calculate/cutoffAt.d.ts +95 -0
- package/dist/transport/calculate/cutoffAt.js +211 -0
- package/dist/transport/calculate/cutoffSchedule.d.ts +75 -0
- package/dist/transport/calculate/cutoffSchedule.js +73 -0
- package/dist/transport/calculate/dwellTime.d.ts +22 -8
- package/dist/transport/calculate/dwellTime.js +18 -9
- package/dist/transport/calculate/estimateDrift.d.ts +65 -0
- package/dist/transport/calculate/estimateDrift.js +75 -0
- package/dist/transport/calculate/index.d.ts +8 -0
- package/dist/transport/calculate/index.js +8 -0
- package/dist/transport/calculate/nextDeparture.d.ts +78 -0
- package/dist/transport/calculate/nextDeparture.js +131 -0
- package/dist/transport/calculate/punctualityRate.d.ts +42 -0
- package/dist/transport/calculate/punctualityRate.js +59 -0
- package/dist/transport/calculate/scheduleDelivery.d.ts +158 -0
- package/dist/transport/calculate/scheduleDelivery.js +305 -0
- package/dist/transport/calculate/transitTime.d.ts +21 -3
- package/dist/transport/calculate/transitTime.js +29 -46
- package/dist/transport/compare/classifyPunctuality.d.ts +46 -0
- package/dist/transport/compare/classifyPunctuality.js +64 -0
- package/dist/transport/compare/index.d.ts +4 -0
- package/dist/transport/compare/index.js +4 -0
- package/dist/transport/compare/isPastCutoff.d.ts +33 -0
- package/dist/transport/compare/isPastCutoff.js +48 -0
- package/dist/transport/compare/scheduleDeviation.d.ts +37 -0
- package/dist/transport/compare/scheduleDeviation.js +53 -0
- package/dist/transport/compare/timeToCutoff.d.ts +31 -0
- package/dist/transport/compare/timeToCutoff.js +47 -0
- package/dist/transport/convert/etaAtZone.d.ts +13 -1
- package/dist/transport/convert/etaAtZone.js +15 -5
- package/dist/transport/index.d.ts +1 -0
- package/dist/transport/index.js +1 -0
- package/dist/types/business-calendar.d.ts +20 -14
- package/dist/types/calendar-options.d.ts +15 -3
- package/dist/types/date-cycle-field.d.ts +5 -0
- package/dist/types/date-duration-unit.d.ts +4 -0
- package/dist/types/date-time-cycle-field.d.ts +4 -0
- package/dist/types/date-time-duration-units.d.ts +4 -0
- package/dist/types/date-time-unit.d.ts +4 -0
- package/dist/types/date-unit.d.ts +4 -0
- package/dist/types/disambiguation.d.ts +8 -0
- package/dist/types/duration-relative-to.d.ts +8 -0
- package/dist/types/duration-string-options.d.ts +28 -0
- package/dist/types/duty.d.ts +777 -0
- package/dist/types/edi.d.ts +407 -0
- package/dist/types/edi.js +0 -0
- package/dist/types/epcis.d.ts +25 -0
- package/dist/types/epcis.js +0 -0
- package/dist/types/exact-duration-unit.d.ts +8 -0
- package/dist/types/exact-duration-unit.js +0 -0
- package/dist/types/fiscal-calendar.d.ts +1 -1
- package/dist/types/fractional-digit.d.ts +5 -0
- package/dist/types/free-time-options.d.ts +22 -11
- package/dist/types/index.d.ts +7 -1
- package/dist/types/index.js +7 -1
- package/dist/types/interval.d.ts +8 -1
- package/dist/types/offset.d.ts +9 -0
- package/dist/types/operating-schedule.d.ts +72 -0
- package/dist/types/operating-schedule.js +0 -0
- package/dist/types/overflow.d.ts +6 -0
- package/dist/types/relative-rounding-method.d.ts +6 -0
- package/dist/types/relative-time-options.d.ts +33 -5
- package/dist/types/rounding-options.d.ts +27 -0
- package/dist/types/time-cycle-field.d.ts +4 -0
- package/dist/types/time-duration-unit.d.ts +4 -0
- package/dist/types/time-unit.d.ts +4 -0
- package/dist/types/transport-timestamps.d.ts +54 -0
- package/dist/types/transport-timestamps.js +0 -0
- package/dist/types/two-digit-year.d.ts +23 -0
- package/dist/types/two-digit-year.js +0 -0
- package/dist/types/zone-bucket-unit.d.ts +1 -1
- package/dist/unix/calculate/addUnix.d.ts +28 -5
- package/dist/unix/calculate/addUnix.js +15 -16
- package/dist/unix/calculate/diffUnix.d.ts +21 -3
- package/dist/unix/calculate/diffUnix.js +12 -9
- package/dist/unix/calculate/diffUnixAsDuration.d.ts +21 -3
- package/dist/unix/calculate/diffUnixAsDuration.js +11 -8
- package/dist/unix/calculate/endOfQuarterForUnix.d.ts +21 -3
- package/dist/unix/calculate/endOfQuarterForUnix.js +7 -3
- package/dist/unix/calculate/endOfUnix.d.ts +29 -4
- package/dist/unix/calculate/endOfUnix.js +8 -4
- package/dist/unix/calculate/isBetweenUnix.d.ts +27 -4
- package/dist/unix/calculate/isBetweenUnix.js +7 -9
- package/dist/unix/calculate/roundUnix.d.ts +39 -3
- package/dist/unix/calculate/roundUnix.js +16 -12
- package/dist/unix/calculate/setUnix.d.ts +58 -12
- package/dist/unix/calculate/setUnix.js +37 -25
- package/dist/unix/calculate/startOfQuarterForUnix.d.ts +21 -3
- package/dist/unix/calculate/startOfQuarterForUnix.js +7 -3
- package/dist/unix/calculate/startOfUnix.d.ts +29 -4
- package/dist/unix/calculate/startOfUnix.js +8 -4
- package/dist/unix/calculate/subtractUnix.d.ts +27 -5
- package/dist/unix/calculate/subtractUnix.js +14 -16
- package/dist/unix/compare/areUnixEqual.d.ts +7 -1
- package/dist/unix/compare/areUnixEqual.js +1 -1
- package/dist/unix/compare/areUnixEqualBy.d.ts +33 -7
- package/dist/unix/compare/areUnixEqualBy.js +20 -9
- package/dist/unix/compare/isAfterUnix.d.ts +7 -1
- package/dist/unix/compare/isAfterUnix.js +1 -1
- package/dist/unix/compare/isBeforeUnix.d.ts +7 -1
- package/dist/unix/compare/isBeforeUnix.js +1 -1
- package/dist/unix/convert/convertUnixToPlainDate.d.ts +17 -4
- package/dist/unix/convert/convertUnixToPlainDate.js +7 -8
- package/dist/unix/convert/convertUnixToPlainDateTime.d.ts +17 -4
- package/dist/unix/convert/convertUnixToPlainDateTime.js +7 -8
- package/dist/unix/convert/convertUnixToPlainTime.d.ts +17 -4
- package/dist/unix/convert/convertUnixToPlainTime.js +7 -8
- package/dist/unix/convert/convertUnixToUtc.d.ts +9 -4
- package/dist/unix/convert/convertUnixToUtc.js +3 -4
- package/dist/unix/convert/convertUnixToZoned.d.ts +14 -5
- package/dist/unix/convert/convertUnixToZoned.js +8 -5
- package/dist/unix/format/formatCalendarUnix.d.ts +31 -19
- package/dist/unix/format/formatCalendarUnix.js +10 -6
- package/dist/unix/format/formatRelativeUnix.d.ts +62 -5
- package/dist/unix/format/formatRelativeUnix.js +16 -10
- package/dist/unix/format/formatUnix.d.ts +29 -6
- package/dist/unix/format/formatUnix.js +12 -7
- package/dist/unix/get/getUnixDay.d.ts +1 -3
- package/dist/unix/get/getUnixDay.js +5 -12
- package/dist/unix/get/getUnixHour.d.ts +1 -3
- package/dist/unix/get/getUnixHour.js +5 -12
- package/dist/unix/get/getUnixMicrosecond.d.ts +1 -3
- package/dist/unix/get/getUnixMicrosecond.js +4 -11
- package/dist/unix/get/getUnixMillisecond.d.ts +1 -3
- package/dist/unix/get/getUnixMillisecond.js +5 -12
- package/dist/unix/get/getUnixMinute.d.ts +1 -3
- package/dist/unix/get/getUnixMinute.js +5 -12
- package/dist/unix/get/getUnixMonth.d.ts +1 -3
- package/dist/unix/get/getUnixMonth.js +5 -12
- package/dist/unix/get/getUnixNanosecond.d.ts +1 -3
- package/dist/unix/get/getUnixNanosecond.js +4 -11
- package/dist/unix/get/getUnixNow.d.ts +8 -3
- package/dist/unix/get/getUnixNow.js +1 -3
- package/dist/unix/get/getUnixNowUnit.d.ts +2 -0
- package/dist/unix/get/getUnixNowUnit.js +2 -0
- package/dist/unix/get/getUnixSecond.d.ts +1 -3
- package/dist/unix/get/getUnixSecond.js +5 -12
- package/dist/unix/get/getUnixYear.d.ts +3 -3
- package/dist/unix/get/getUnixYear.js +5 -12
- package/dist/unix/interval/intervalCountUnix.d.ts +23 -5
- package/dist/unix/interval/intervalCountUnix.js +9 -5
- package/dist/unix/interval/intervalDifferenceUnix.d.ts +6 -0
- package/dist/unix/interval/intervalDivideEquallyUnix.d.ts +18 -4
- package/dist/unix/interval/intervalDivideEquallyUnix.js +5 -4
- package/dist/unix/interval/intervalFromDurationUnix.d.ts +41 -5
- package/dist/unix/interval/intervalFromDurationUnix.js +18 -12
- package/dist/unix/interval/intervalIntersectionUnix.d.ts +6 -0
- package/dist/unix/interval/intervalLengthUnix.d.ts +24 -6
- package/dist/unix/interval/intervalLengthUnix.js +10 -6
- package/dist/unix/interval/intervalOverlappingDaysUnix.d.ts +21 -3
- package/dist/unix/interval/intervalOverlappingDaysUnix.js +11 -8
- package/dist/unix/interval/intervalSplitAtUnix.d.ts +8 -0
- package/dist/unix/interval/intervalSplitAtUnix.js +2 -0
- package/dist/unix/interval/intervalUnionUnix.d.ts +6 -0
- package/dist/unix/interval/intervalXorAllUnix.d.ts +6 -0
- package/dist/unix/interval/intervalXorUnix.d.ts +6 -0
- package/dist/unix/interval/mergeIntervalsUnix.d.ts +6 -0
- package/dist/unix/interval/splitIntervalByUnitUnix.d.ts +50 -11
- package/dist/unix/interval/splitIntervalByUnitUnix.js +33 -22
- package/dist/unix/parse/parseDateFromUnix.d.ts +15 -2
- package/dist/unix/parse/parseDateFromUnix.js +4 -5
- package/dist/unix/parse/parseDayFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseDayFromUnix.js +2 -2
- package/dist/unix/parse/parseDayOfWeekFromUnix.d.ts +15 -1
- package/dist/unix/parse/parseDayOfWeekFromUnix.js +3 -3
- package/dist/unix/parse/parseHourFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseHourFromUnix.js +2 -2
- package/dist/unix/parse/parseMicrosecondFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseMicrosecondFromUnix.js +2 -2
- package/dist/unix/parse/parseMillisecondFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseMillisecondFromUnix.js +2 -2
- package/dist/unix/parse/parseMinuteFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseMinuteFromUnix.js +2 -2
- package/dist/unix/parse/parseMonthFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseMonthFromUnix.js +2 -2
- package/dist/unix/parse/parseNanosecondFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseNanosecondFromUnix.js +2 -2
- package/dist/unix/parse/parseSecondFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseSecondFromUnix.js +2 -2
- package/dist/unix/parse/parseTimeFromUnix.d.ts +16 -2
- package/dist/unix/parse/parseTimeFromUnix.js +5 -5
- package/dist/unix/parse/parseUnitFromUnix.d.ts +29 -4
- package/dist/unix/parse/parseUnitFromUnix.js +23 -17
- package/dist/unix/parse/parseWeekFromUnix.d.ts +24 -7
- package/dist/unix/parse/parseWeekFromUnix.js +7 -11
- package/dist/unix/parse/parseYearFromUnix.d.ts +20 -3
- package/dist/unix/parse/parseYearFromUnix.js +6 -3
- package/dist/unix/validate/isValidUnixRange.d.ts +20 -4
- package/dist/unix/validate/isValidUnixRange.js +1 -4
- package/dist/unix/validate/isValidUnixUnit.d.ts +1 -1
- package/dist/utc/calculate/addUtc.d.ts +7 -4
- package/dist/utc/calculate/addUtc.js +5 -11
- 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/endOfUtc.d.ts +16 -3
- package/dist/utc/calculate/endOfUtc.js +2 -3
- package/dist/utc/calculate/isBetweenUtc.d.ts +13 -2
- package/dist/utc/calculate/isBetweenUtc.js +4 -4
- package/dist/utc/calculate/roundUtc.d.ts +26 -9
- package/dist/utc/calculate/roundUtc.js +3 -12
- package/dist/utc/calculate/setUtc.d.ts +23 -7
- package/dist/utc/calculate/setUtc.js +23 -12
- package/dist/utc/calculate/startOfUtc.d.ts +15 -2
- package/dist/utc/calculate/startOfUtc.js +1 -2
- package/dist/utc/calculate/subtractUtc.d.ts +7 -4
- package/dist/utc/calculate/subtractUtc.js +5 -11
- package/dist/utc/compare/areUtcEqualBy.d.ts +9 -3
- package/dist/utc/compare/areUtcEqualBy.js +2 -3
- package/dist/utc/convert/convertUtcToPlainDate.d.ts +14 -3
- package/dist/utc/convert/convertUtcToPlainDate.js +12 -10
- package/dist/utc/convert/convertUtcToPlainDateTime.d.ts +15 -3
- package/dist/utc/convert/convertUtcToPlainDateTime.js +14 -16
- package/dist/utc/convert/convertUtcToPlainTime.d.ts +11 -3
- package/dist/utc/convert/convertUtcToPlainTime.js +9 -9
- package/dist/utc/convert/convertUtcToUnix.d.ts +9 -4
- package/dist/utc/convert/convertUtcToUnix.js +3 -4
- package/dist/utc/convert/convertUtcToZoned.d.ts +5 -1
- package/dist/utc/convert/convertUtcToZoned.js +5 -1
- package/dist/utc/format/formatCalendarUtc.d.ts +23 -8
- package/dist/utc/format/formatCalendarUtc.js +14 -7
- package/dist/utc/format/{formatHttp.d.ts → formatHttpDate.d.ts} +8 -8
- package/dist/utc/format/{formatHttp.js → formatHttpDate.js} +8 -8
- package/dist/utc/format/formatRelativeUtc.d.ts +38 -10
- package/dist/utc/format/formatRelativeUtc.js +22 -16
- package/dist/utc/format/formatUtc.d.ts +22 -15
- package/dist/utc/format/formatUtc.js +12 -8
- package/dist/utc/format/index.d.ts +1 -1
- package/dist/utc/format/index.js +1 -1
- package/dist/utc/get/getUtcDay.d.ts +1 -3
- package/dist/utc/get/getUtcDay.js +5 -12
- package/dist/utc/get/getUtcHour.d.ts +1 -3
- package/dist/utc/get/getUtcHour.js +5 -12
- package/dist/utc/get/getUtcMicrosecond.d.ts +1 -3
- package/dist/utc/get/getUtcMicrosecond.js +4 -11
- package/dist/utc/get/getUtcMillisecond.d.ts +1 -3
- package/dist/utc/get/getUtcMillisecond.js +5 -12
- package/dist/utc/get/getUtcMinute.d.ts +1 -3
- package/dist/utc/get/getUtcMinute.js +5 -12
- package/dist/utc/get/getUtcMonth.d.ts +1 -3
- package/dist/utc/get/getUtcMonth.js +5 -12
- package/dist/utc/get/getUtcNanosecond.d.ts +1 -3
- package/dist/utc/get/getUtcNanosecond.js +4 -11
- package/dist/utc/get/getUtcNow.d.ts +1 -3
- package/dist/utc/get/getUtcNow.js +2 -9
- package/dist/utc/get/getUtcNowUnit.d.ts +2 -0
- package/dist/utc/get/getUtcNowUnit.js +2 -0
- package/dist/utc/get/getUtcSecond.d.ts +1 -3
- package/dist/utc/get/getUtcSecond.js +5 -12
- package/dist/utc/get/getUtcYear.d.ts +3 -3
- package/dist/utc/get/getUtcYear.js +5 -12
- package/dist/utc/interval/intervalDifferenceUtc.d.ts +6 -0
- package/dist/utc/interval/intervalDivideEquallyUtc.d.ts +18 -4
- package/dist/utc/interval/intervalDivideEquallyUtc.js +5 -4
- package/dist/utc/interval/intervalFromDurationUtc.d.ts +13 -3
- package/dist/utc/interval/intervalFromDurationUtc.js +1 -3
- package/dist/utc/interval/intervalIntersectionUtc.d.ts +6 -0
- package/dist/utc/interval/intervalSplitAtUtc.d.ts +8 -0
- package/dist/utc/interval/intervalSplitAtUtc.js +2 -0
- package/dist/utc/interval/intervalUnionUtc.d.ts +6 -0
- package/dist/utc/interval/intervalXorAllUtc.d.ts +6 -0
- package/dist/utc/interval/intervalXorAllUtc.js +2 -2
- package/dist/utc/interval/intervalXorUtc.d.ts +6 -0
- package/dist/utc/interval/mergeIntervalsUtc.d.ts +6 -0
- package/dist/utc/interval/mergeIntervalsUtc.js +2 -2
- package/dist/utc/interval/splitIntervalByUnitUtc.d.ts +19 -6
- package/dist/utc/interval/splitIntervalByUnitUtc.js +6 -6
- package/dist/utc/parse/index.d.ts +1 -1
- package/dist/utc/parse/index.js +1 -1
- package/dist/utc/parse/parseDateFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseDateFromUtc.js +3 -5
- package/dist/utc/parse/parseDayFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseDayFromUtc.js +3 -5
- package/dist/utc/parse/parseDayOfWeekFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseDayOfWeekFromUtc.js +5 -7
- package/dist/utc/parse/parseHourFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseHourFromUtc.js +3 -5
- package/dist/utc/parse/{parseHttp.d.ts → parseHttpDate.d.ts} +12 -12
- package/dist/utc/parse/{parseHttp.js → parseHttpDate.js} +12 -12
- package/dist/utc/parse/parseMicrosecondFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseMicrosecondFromUtc.js +3 -5
- package/dist/utc/parse/parseMillisecondFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseMillisecondFromUtc.js +3 -5
- package/dist/utc/parse/parseMinuteFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseMinuteFromUtc.js +3 -5
- package/dist/utc/parse/parseMonthFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseMonthFromUtc.js +3 -5
- package/dist/utc/parse/parseNanosecondFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseNanosecondFromUtc.js +3 -5
- package/dist/utc/parse/parseSecondFromUtc.d.ts +9 -3
- package/dist/utc/parse/parseSecondFromUtc.js +3 -5
- package/dist/utc/parse/parseTimeFromUtc.d.ts +11 -3
- package/dist/utc/parse/parseTimeFromUtc.js +7 -7
- package/dist/utc/parse/parseUnitFromUtc.d.ts +25 -6
- package/dist/utc/parse/parseUnitFromUtc.js +14 -10
- package/dist/utc/parse/parseWeekFromUtc.d.ts +20 -10
- package/dist/utc/parse/parseWeekFromUtc.js +8 -14
- package/dist/utc/parse/parseYearFromUtc.d.ts +13 -5
- package/dist/utc/parse/parseYearFromUtc.js +9 -8
- package/dist/utc/validate/index.d.ts +2 -0
- package/dist/utc/validate/index.js +2 -0
- package/dist/utc/validate/isValidHttpDate.d.ts +35 -0
- package/dist/utc/validate/isValidHttpDate.js +38 -0
- package/dist/utc/validate/isValidUtc.d.ts +4 -0
- package/dist/utc/validate/isValidUtc.js +4 -0
- package/dist/utc/validate/isValidUtcRange.d.ts +16 -5
- package/dist/utc/validate/isValidUtcRange.js +2 -5
- package/dist/utc/validate/isValidUtcTimestamp.d.ts +43 -0
- package/dist/utc/validate/isValidUtcTimestamp.js +48 -0
- package/dist/zoned/calculate/addZoned.d.ts +20 -10
- package/dist/zoned/calculate/addZoned.js +10 -20
- package/dist/zoned/calculate/cycleZoned.d.ts +33 -8
- package/dist/zoned/calculate/cycleZoned.js +1 -8
- package/dist/zoned/calculate/diffZoned.d.ts +1 -1
- package/dist/zoned/calculate/diffZoned.js +1 -1
- package/dist/zoned/calculate/diffZonedAsDuration.d.ts +1 -1
- package/dist/zoned/calculate/diffZonedAsDuration.js +1 -1
- package/dist/zoned/calculate/endOfQuarterForZoned.d.ts +9 -2
- package/dist/zoned/calculate/endOfQuarterForZoned.js +4 -5
- package/dist/zoned/calculate/endOfZoned.d.ts +16 -3
- package/dist/zoned/calculate/endOfZoned.js +2 -3
- package/dist/zoned/calculate/getLocaleZonedEndOfWeek.d.ts +10 -3
- package/dist/zoned/calculate/getLocaleZonedEndOfWeek.js +5 -6
- package/dist/zoned/calculate/getLocaleZonedStartOfWeek.d.ts +7 -1
- package/dist/zoned/calculate/getLocaleZonedStartOfWeek.js +3 -4
- package/dist/zoned/calculate/roundZoned.d.ts +21 -4
- package/dist/zoned/calculate/roundZoned.js +3 -7
- package/dist/zoned/calculate/setZoned.d.ts +44 -13
- package/dist/zoned/calculate/setZoned.js +30 -21
- package/dist/zoned/calculate/startOfQuarterForZoned.d.ts +7 -2
- package/dist/zoned/calculate/startOfQuarterForZoned.js +3 -5
- package/dist/zoned/calculate/startOfZoned.d.ts +15 -3
- package/dist/zoned/calculate/startOfZoned.js +1 -3
- package/dist/zoned/calculate/subtractZoned.d.ts +20 -10
- package/dist/zoned/calculate/subtractZoned.js +10 -20
- package/dist/zoned/compare/areZonedEqualBy.d.ts +14 -5
- package/dist/zoned/compare/areZonedEqualBy.js +7 -5
- package/dist/zoned/compare/isBetweenZoned.d.ts +13 -1
- package/dist/zoned/compare/isBetweenZoned.js +4 -3
- package/dist/zoned/compare/isInDaylightSaving.d.ts +38 -11
- package/dist/zoned/compare/isInDaylightSaving.js +40 -44
- package/dist/zoned/convert/convertPlainDateTimeToZoned.d.ts +21 -5
- package/dist/zoned/convert/convertPlainDateTimeToZoned.js +9 -11
- package/dist/zoned/convert/convertZonedToUnix.d.ts +9 -4
- package/dist/zoned/convert/convertZonedToUnix.js +2 -4
- package/dist/zoned/convert/convertZonedToZoned.d.ts +5 -1
- package/dist/zoned/convert/convertZonedToZoned.js +5 -1
- package/dist/zoned/format/formatCalendarZoned.d.ts +18 -12
- package/dist/zoned/format/formatCalendarZoned.js +15 -10
- package/dist/zoned/format/formatRelativeZoned.d.ts +41 -12
- package/dist/zoned/format/formatRelativeZoned.js +9 -5
- package/dist/zoned/format/formatRfc2822.d.ts +2 -2
- package/dist/zoned/format/formatRfc2822.js +2 -2
- package/dist/zoned/format/formatRfc3339.d.ts +2 -3
- package/dist/zoned/format/formatRfc3339.js +2 -3
- package/dist/zoned/format/formatTimeZoneName.d.ts +16 -3
- package/dist/zoned/format/formatTimeZoneName.js +9 -4
- package/dist/zoned/format/formatZonedDateTime.js +2 -1
- package/dist/zoned/format/formatZonedRange.js +2 -1
- package/dist/zoned/format/formatZonedToParts.d.ts +15 -4
- package/dist/zoned/format/formatZonedToParts.js +8 -5
- package/dist/zoned/get/getDstTransitions.d.ts +11 -10
- package/dist/zoned/get/getDstTransitions.js +21 -7
- package/dist/zoned/get/getSystemTimeZone.d.ts +3 -1
- package/dist/zoned/get/getSystemTimeZone.js +5 -2
- package/dist/zoned/get/getTimeZoneOffset.d.ts +13 -2
- package/dist/zoned/get/getTimeZoneOffset.js +22 -6
- package/dist/zoned/get/getZonedDay.d.ts +2 -1
- package/dist/zoned/get/getZonedDay.js +6 -7
- package/dist/zoned/get/getZonedDayOfWeek.d.ts +2 -1
- package/dist/zoned/get/getZonedDayOfWeek.js +6 -5
- package/dist/zoned/get/getZonedHour.d.ts +2 -1
- package/dist/zoned/get/getZonedHour.js +6 -7
- package/dist/zoned/get/getZonedMicrosecond.d.ts +2 -1
- package/dist/zoned/get/getZonedMicrosecond.js +6 -5
- package/dist/zoned/get/getZonedMillisecond.d.ts +2 -1
- package/dist/zoned/get/getZonedMillisecond.js +6 -7
- package/dist/zoned/get/getZonedMinute.d.ts +2 -1
- package/dist/zoned/get/getZonedMinute.js +6 -7
- package/dist/zoned/get/getZonedMonth.d.ts +2 -1
- package/dist/zoned/get/getZonedMonth.js +6 -7
- package/dist/zoned/get/getZonedNanosecond.d.ts +2 -1
- package/dist/zoned/get/getZonedNanosecond.js +6 -5
- package/dist/zoned/get/getZonedNow.d.ts +18 -2
- package/dist/zoned/get/getZonedNow.js +17 -4
- package/dist/zoned/get/getZonedNowUnit.d.ts +6 -3
- package/dist/zoned/get/getZonedNowUnit.js +10 -7
- package/dist/zoned/get/getZonedSecond.d.ts +2 -1
- package/dist/zoned/get/getZonedSecond.js +6 -7
- package/dist/zoned/get/getZonedToday.d.ts +2 -1
- package/dist/zoned/get/getZonedToday.js +6 -5
- package/dist/zoned/get/getZonedWeekOfYear.d.ts +2 -1
- package/dist/zoned/get/getZonedWeekOfYear.js +6 -5
- package/dist/zoned/get/getZonedYear.d.ts +4 -1
- package/dist/zoned/get/getZonedYear.js +9 -7
- package/dist/zoned/interval/intervalDifferenceZoned.d.ts +9 -0
- package/dist/zoned/interval/intervalDivideEquallyZoned.d.ts +22 -4
- package/dist/zoned/interval/intervalDivideEquallyZoned.js +6 -4
- package/dist/zoned/interval/intervalFromDurationZoned.d.ts +29 -10
- package/dist/zoned/interval/intervalFromDurationZoned.js +6 -13
- package/dist/zoned/interval/intervalIntersectionZoned.d.ts +9 -0
- package/dist/zoned/interval/intervalSplitAtZoned.d.ts +11 -0
- package/dist/zoned/interval/intervalSplitAtZoned.js +2 -0
- package/dist/zoned/interval/intervalUnionZoned.d.ts +9 -0
- package/dist/zoned/interval/intervalXorAllZoned.d.ts +9 -0
- package/dist/zoned/interval/intervalXorAllZoned.js +2 -2
- package/dist/zoned/interval/intervalXorZoned.d.ts +9 -0
- package/dist/zoned/interval/mergeIntervalsZoned.d.ts +9 -0
- package/dist/zoned/interval/mergeIntervalsZoned.js +2 -2
- package/dist/zoned/interval/splitIntervalByUnitZoned.d.ts +27 -6
- package/dist/zoned/interval/splitIntervalByUnitZoned.js +11 -6
- package/dist/zoned/map/mapZonedDatesInRange.d.ts +9 -4
- package/dist/zoned/map/mapZonedDatesInRange.js +2 -4
- package/dist/zoned/parse/parseRfc2822.d.ts +1 -1
- package/dist/zoned/parse/parseRfc2822.js +1 -1
- package/dist/zoned/parse/parseUnitFromZoned.d.ts +13 -4
- package/dist/zoned/parse/parseUnitFromZoned.js +6 -4
- package/dist/zoned/parse/parseWeekFromZoned.d.ts +10 -3
- package/dist/zoned/parse/parseWeekFromZoned.js +2 -3
- package/dist/zoned/parse/parseYearFromZoned.d.ts +4 -2
- package/dist/zoned/parse/parseYearFromZoned.js +6 -3
- package/dist/zoned/validate/hasDaylightSaving.d.ts +45 -12
- package/dist/zoned/validate/hasDaylightSaving.js +54 -32
- package/dist/zoned/validate/index.d.ts +2 -0
- package/dist/zoned/validate/index.js +2 -0
- package/dist/zoned/validate/isValidRfc2822DateTime.d.ts +32 -0
- package/dist/zoned/validate/isValidRfc2822DateTime.js +35 -0
- package/dist/zoned/validate/isValidRfc3339DateTime.d.ts +31 -0
- package/dist/zoned/validate/isValidRfc3339DateTime.js +34 -0
- package/dist/zoned/validate/isValidTimeZone.d.ts +5 -1
- package/dist/zoned/validate/isValidTimeZone.js +6 -2
- package/dist/zoned/validate/isValidZonedDateTime.d.ts +13 -0
- package/dist/zoned/validate/isValidZonedDateTime.js +14 -1
- package/dist/zoned/validate/isValidZonedRange.d.ts +15 -4
- package/dist/zoned/validate/isValidZonedRange.js +1 -4
- package/package.json +67 -5
- package/skills/gmt-arithmetic/SKILL.md +99 -12
- package/skills/gmt-basics/SKILL.md +64 -13
- package/skills/gmt-integration/SKILL.md +33 -13
- package/skills/gmt-timezone/SKILL.md +265 -31
- package/dist/duration/calculate/durationAs.d.ts +0 -62
- package/dist/internal/resolveReadingTimeZone.d.ts +0 -11
- package/dist/internal/resolveReadingTimeZone.js +0 -18
- package/dist/internal/unixZonedDateTime.d.ts +0 -22
- package/dist/internal/unixZonedDateTime.js +0 -32
- package/dist/internal/utcZonedDateTime.d.ts +0 -16
- package/dist/internal/utcZonedDateTime.js +0 -28
- package/dist/types/duration-unit.d.ts +0 -5
- /package/dist/types/{duration-unit.js → duty.js} +0 -0
|
@@ -12,24 +12,20 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
12
12
|
* overflow into January of the *next* year. Reach for `addDate` when you want calendar
|
|
13
13
|
* arithmetic; reach for `cycleDate` when a single field (e.g. a datepicker segment) must stay
|
|
14
14
|
* isolated from the others.
|
|
15
|
-
* - `year` has no upper/lower wrap — cycling it is plain addition (or
|
|
15
|
+
* - `year` has no upper/lower wrap — cycling it is plain addition (or a step to a multiple, with
|
|
16
|
+
* `round`): `2022` by `+5` with `round: true` lands on `2025`, the next multiple of 5.
|
|
16
17
|
* `month` wraps `1–12`. `day` wraps `1`–the **current** month's day count, so cycling `day`
|
|
17
18
|
* never changes `month`.
|
|
18
19
|
* - Cycling `month` or `year` can still shift `day` via `overflow` — e.g. cycling `month` from a
|
|
19
20
|
* 31st into a shorter month clamps under the default `"constrain"` (or returns `""` under
|
|
20
21
|
* `"reject"`) exactly the way `setDate`'s own `.with()` call does; this is the same clamping
|
|
21
22
|
* `addDate`'s Jan 31 + 1 month case produces, not new behavior.
|
|
22
|
-
* - `options.round` does **not** round to the nearest increment — it steps to the *next* multiple
|
|
23
|
-
* of `amount` in the direction of its sign (ceiling for positive, floor for negative), matching
|
|
24
|
-
* `@internationalized/date`'s `CycleOptions.round`. E.g. cycling `year` `2022` by `+5` with
|
|
25
|
-
* `round: true` lands on `2025` (the next multiple of 5 above 2022), not `2020` (the nearest
|
|
26
|
-
* multiple).
|
|
27
23
|
* - Returns "" for an invalid `value`, an invalid `field`, or an `amount` that is not a finite number.
|
|
28
24
|
*
|
|
29
25
|
* @param value ISO PlainDate string
|
|
30
26
|
* @param field the field to cycle: "year" | "month" | "day"
|
|
31
27
|
* @param amount signed amount to cycle by
|
|
32
|
-
* @param options
|
|
28
|
+
* @param options How the field is stepped and an out-of-range day is handled
|
|
33
29
|
* @returns ISO PlainDate string with `field` cycled, or "" on invalid input
|
|
34
30
|
*
|
|
35
31
|
* @example cycleDate("2024-06-15", "month", 1) // "2024-07-15"
|
|
@@ -14,15 +14,12 @@ import type { DateTimeCycleField, Overflow } from "../../types/index.js";
|
|
|
14
14
|
* why).
|
|
15
15
|
* - Cycling `month` or `year` can still shift `day` via `overflow`, exactly as `setDateTime`'s
|
|
16
16
|
* `.with()` call does.
|
|
17
|
-
* - `options.round` steps to the *next* multiple of `amount` in the direction of its sign
|
|
18
|
-
* (ceiling for positive, floor for negative) — not the nearest one. See `cycleDate`/`cycleTime`'s
|
|
19
|
-
* docs for worked examples.
|
|
20
17
|
* - Returns "" for an invalid `value`, an invalid `field`, or an `amount` that is not a finite number.
|
|
21
18
|
*
|
|
22
19
|
* @param value ISO PlainDateTime string
|
|
23
20
|
* @param field the field to cycle: "year" | "month" | "day" | "hour" | "minute" | "second" | "millisecond" | "microsecond" | "nanosecond"
|
|
24
21
|
* @param amount signed amount to cycle by
|
|
25
|
-
* @param options
|
|
22
|
+
* @param options How the field is stepped and an out-of-range day is handled
|
|
26
23
|
* @returns ISO PlainDateTime string with `field` cycled, or "" on invalid input
|
|
27
24
|
*
|
|
28
25
|
* @example cycleDateTime("2024-06-15T09:30:00", "hour", 1) // "2024-06-15T10:30:00"
|
|
@@ -33,6 +30,19 @@ import type { DateTimeCycleField, Overflow } from "../../types/index.js";
|
|
|
33
30
|
* @example cycleDateTime("invalid", "hour", 1) // ""
|
|
34
31
|
*/
|
|
35
32
|
export declare function cycleDateTime(value: string, field: DateTimeCycleField, amount: number, options?: {
|
|
33
|
+
/**
|
|
34
|
+
* Whether to step to a multiple of `amount` instead of adding it. `true` moves to the next
|
|
35
|
+
* multiple in the direction of the sign of `amount` (the ceiling for a positive amount, the
|
|
36
|
+
* floor for a negative one), not to the nearest one; `false` adds `amount`.
|
|
37
|
+
*
|
|
38
|
+
* @defaultValue `false`
|
|
39
|
+
*/
|
|
36
40
|
round?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* What to do when the cycled `month` or `year` leaves `day` past the end of its month.
|
|
43
|
+
* `"constrain"` clamps `day` to the last day of that month; `"reject"` returns `""`.
|
|
44
|
+
*
|
|
45
|
+
* @defaultValue `"constrain"`, Temporal's default.
|
|
46
|
+
*/
|
|
37
47
|
overflow?: Overflow;
|
|
38
48
|
}): string;
|
|
@@ -18,15 +18,12 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
18
18
|
* why).
|
|
19
19
|
* - Cycling `month` or `year` can still shift `day` via `overflow`, exactly as `setDateTime`'s
|
|
20
20
|
* `.with()` call does.
|
|
21
|
-
* - `options.round` steps to the *next* multiple of `amount` in the direction of its sign
|
|
22
|
-
* (ceiling for positive, floor for negative) — not the nearest one. See `cycleDate`/`cycleTime`'s
|
|
23
|
-
* docs for worked examples.
|
|
24
21
|
* - Returns "" for an invalid `value`, an invalid `field`, or an `amount` that is not a finite number.
|
|
25
22
|
*
|
|
26
23
|
* @param value ISO PlainDateTime string
|
|
27
24
|
* @param field the field to cycle: "year" | "month" | "day" | "hour" | "minute" | "second" | "millisecond" | "microsecond" | "nanosecond"
|
|
28
25
|
* @param amount signed amount to cycle by
|
|
29
|
-
* @param options
|
|
26
|
+
* @param options How the field is stepped and an out-of-range day is handled
|
|
30
27
|
* @returns ISO PlainDateTime string with `field` cycled, or "" on invalid input
|
|
31
28
|
*
|
|
32
29
|
* @example cycleDateTime("2024-06-15T09:30:00", "hour", 1) // "2024-06-15T10:30:00"
|
|
@@ -9,10 +9,8 @@ import type { TimeCycleField } from "../../types/index.js";
|
|
|
9
9
|
* is no ISO representation for "this hour, but staying AM" to round-trip through GMT's string
|
|
10
10
|
* contract.
|
|
11
11
|
* - `minute`/`second` wrap `0–59`; `millisecond`/`microsecond`/`nanosecond` wrap `0–999`.
|
|
12
|
-
* - `
|
|
13
|
-
*
|
|
14
|
-
* `@internationalized/date`'s `CycleOptions.round`. E.g. cycling minute `22` by `+15` with
|
|
15
|
-
* `round: true` lands on `30` (the next multiple of 15 above 22), not `15` (the nearest one).
|
|
12
|
+
* - With `round: true`, minute `22` by `+15` lands on `30`, the next multiple of 15 above 22, not
|
|
13
|
+
* on `15`, the nearest one.
|
|
16
14
|
* - There is no `overflow` option (removed in 1.16.0): time fields don't share bounds the way `day`
|
|
17
15
|
* shares a month with `month`/`year`, so the wrapped value is always already valid and there is
|
|
18
16
|
* nothing to constrain or reject.
|
|
@@ -21,7 +19,7 @@ import type { TimeCycleField } from "../../types/index.js";
|
|
|
21
19
|
* @param value ISO PlainTime string
|
|
22
20
|
* @param field the field to cycle: "hour" | "minute" | "second" | "millisecond" | "microsecond" | "nanosecond"
|
|
23
21
|
* @param amount signed amount to cycle by
|
|
24
|
-
* @param options
|
|
22
|
+
* @param options How the field is stepped
|
|
25
23
|
* @returns ISO PlainTime string with `field` cycled, or "" on invalid input
|
|
26
24
|
*
|
|
27
25
|
* @example cycleTime("09:30:00", "hour", 1) // "10:30:00"
|
|
@@ -32,5 +30,12 @@ import type { TimeCycleField } from "../../types/index.js";
|
|
|
32
30
|
* @example cycleTime("invalid", "hour", 1) // ""
|
|
33
31
|
*/
|
|
34
32
|
export declare function cycleTime(value: string, field: TimeCycleField, amount: number, options?: {
|
|
33
|
+
/**
|
|
34
|
+
* Whether to step to a multiple of `amount` instead of adding it. `true` moves to the next
|
|
35
|
+
* multiple in the direction of the sign of `amount` (the ceiling for a positive amount, the
|
|
36
|
+
* floor for a negative one), not to the nearest one; `false` adds `amount`.
|
|
37
|
+
*
|
|
38
|
+
* @defaultValue `false`
|
|
39
|
+
*/
|
|
35
40
|
round?: boolean;
|
|
36
41
|
}): string;
|
|
@@ -13,10 +13,8 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
13
13
|
* is no ISO representation for "this hour, but staying AM" to round-trip through GMT's string
|
|
14
14
|
* contract.
|
|
15
15
|
* - `minute`/`second` wrap `0–59`; `millisecond`/`microsecond`/`nanosecond` wrap `0–999`.
|
|
16
|
-
* - `
|
|
17
|
-
*
|
|
18
|
-
* `@internationalized/date`'s `CycleOptions.round`. E.g. cycling minute `22` by `+15` with
|
|
19
|
-
* `round: true` lands on `30` (the next multiple of 15 above 22), not `15` (the nearest one).
|
|
16
|
+
* - With `round: true`, minute `22` by `+15` lands on `30`, the next multiple of 15 above 22, not
|
|
17
|
+
* on `15`, the nearest one.
|
|
20
18
|
* - There is no `overflow` option (removed in 1.16.0): time fields don't share bounds the way `day`
|
|
21
19
|
* shares a month with `month`/`year`, so the wrapped value is always already valid and there is
|
|
22
20
|
* nothing to constrain or reject.
|
|
@@ -25,7 +23,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
25
23
|
* @param value ISO PlainTime string
|
|
26
24
|
* @param field the field to cycle: "hour" | "minute" | "second" | "millisecond" | "microsecond" | "nanosecond"
|
|
27
25
|
* @param amount signed amount to cycle by
|
|
28
|
-
* @param options
|
|
26
|
+
* @param options How the field is stepped
|
|
29
27
|
* @returns ISO PlainTime string with `field` cycled, or "" on invalid input
|
|
30
28
|
*
|
|
31
29
|
* @example cycleTime("09:30:00", "hour", 1) // "10:30:00"
|
|
@@ -34,7 +34,7 @@ import type { DateDurationUnit, RoundingOptions } from "../../types/index.js";
|
|
|
34
34
|
* @param date2 ISO PlainDate string for the end, optionally calendar-annotated
|
|
35
35
|
* @param unitArg date unit or units to measure the difference, singular or plural (`"day"` or
|
|
36
36
|
* `"days"`); a record result keeps the plural keys
|
|
37
|
-
* @param options optional:
|
|
37
|
+
* @param options optional: how the difference is rounded; a non-object value (such as `null`) is invalid
|
|
38
38
|
* @returns numeric difference in the requested unit, or null on invalid input
|
|
39
39
|
*
|
|
40
40
|
* @example diffDate("2024-03-10", "2024-03-15", "days") // 5
|
|
@@ -38,7 +38,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
38
38
|
* @param date2 ISO PlainDate string for the end, optionally calendar-annotated
|
|
39
39
|
* @param unitArg date unit or units to measure the difference, singular or plural (`"day"` or
|
|
40
40
|
* `"days"`); a record result keeps the plural keys
|
|
41
|
-
* @param options optional:
|
|
41
|
+
* @param options optional: how the difference is rounded; a non-object value (such as `null`) is invalid
|
|
42
42
|
* @returns numeric difference in the requested unit, or null on invalid input
|
|
43
43
|
*
|
|
44
44
|
* @example diffDate("2024-03-10", "2024-03-15", "days") // 5
|
|
@@ -27,7 +27,7 @@ import type { DateDurationUnit, DurationStringOptions, RoundingOptions } from ".
|
|
|
27
27
|
* @param date1 ISO PlainDate string for the start, optionally calendar-annotated
|
|
28
28
|
* @param date2 ISO PlainDate string for the end, optionally calendar-annotated
|
|
29
29
|
* @param unit date unit, singular or plural (`"day"` or `"days"`), to use as the duration's largestUnit
|
|
30
|
-
* @param options optional:
|
|
30
|
+
* @param options optional: how the difference is rounded and how the string is rendered; a non-object value (such as `null`) is invalid
|
|
31
31
|
* @returns ISO 8601 duration string, or "" on invalid input
|
|
32
32
|
*
|
|
33
33
|
* @example diffDateAsDuration("2024-03-10", "2024-04-05", "days") // "P26D"
|
|
@@ -29,7 +29,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
29
29
|
* @param date1 ISO PlainDate string for the start, optionally calendar-annotated
|
|
30
30
|
* @param date2 ISO PlainDate string for the end, optionally calendar-annotated
|
|
31
31
|
* @param unit date unit, singular or plural (`"day"` or `"days"`), to use as the duration's largestUnit
|
|
32
|
-
* @param options optional:
|
|
32
|
+
* @param options optional: how the difference is rounded and how the string is rendered; a non-object value (such as `null`) is invalid
|
|
33
33
|
* @returns ISO 8601 duration string, or "" on invalid input
|
|
34
34
|
*
|
|
35
35
|
* @example diffDateAsDuration("2024-03-10", "2024-04-05", "days") // "P26D"
|
|
@@ -27,7 +27,7 @@ import type { DateTimeDurationUnit, RoundingOptions } from "../../types/index.js
|
|
|
27
27
|
* @param dateTime1 ISO PlainDateTime string for the start
|
|
28
28
|
* @param dateTime2 ISO PlainDateTime string for the end
|
|
29
29
|
* @param units DateTimeDurationUnit | DateTimeDurationUnit[] to measure the difference
|
|
30
|
-
* @param options optional:
|
|
30
|
+
* @param options optional: how the difference is rounded; a non-object value (such as `null`) is invalid
|
|
31
31
|
* @returns numeric difference in the requested unit, or null on invalid input
|
|
32
32
|
*
|
|
33
33
|
* @example diffDateTime("2024-03-10T12:00:00", "2024-03-15T12:00:00", "days") // 5
|
|
@@ -33,7 +33,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
33
33
|
* @param dateTime1 ISO PlainDateTime string for the start
|
|
34
34
|
* @param dateTime2 ISO PlainDateTime string for the end
|
|
35
35
|
* @param units DateTimeDurationUnit | DateTimeDurationUnit[] to measure the difference
|
|
36
|
-
* @param options optional:
|
|
36
|
+
* @param options optional: how the difference is rounded; a non-object value (such as `null`) is invalid
|
|
37
37
|
* @returns numeric difference in the requested unit, or null on invalid input
|
|
38
38
|
*
|
|
39
39
|
* @example diffDateTime("2024-03-10T12:00:00", "2024-03-15T12:00:00", "days") // 5
|
|
@@ -21,7 +21,7 @@ import type { DateTimeDurationUnit, DurationStringOptions, RoundingOptions } fro
|
|
|
21
21
|
* @param dateTime1 ISO PlainDateTime string for the start
|
|
22
22
|
* @param dateTime2 ISO PlainDateTime string for the end
|
|
23
23
|
* @param unit DateTimeDurationUnit to use as the duration's largestUnit
|
|
24
|
-
* @param options optional:
|
|
24
|
+
* @param options optional: how the difference is rounded and how the string is rendered; a non-object value (such as `null`) is invalid
|
|
25
25
|
* @returns ISO 8601 duration string, or "" on invalid input
|
|
26
26
|
*
|
|
27
27
|
* @example diffDateTimeAsDuration("2024-03-10T00:00:00", "2024-03-11T02:00:00", "days") // "P1DT2H"
|
|
@@ -24,7 +24,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
24
24
|
* @param dateTime1 ISO PlainDateTime string for the start
|
|
25
25
|
* @param dateTime2 ISO PlainDateTime string for the end
|
|
26
26
|
* @param unit DateTimeDurationUnit to use as the duration's largestUnit
|
|
27
|
-
* @param options optional:
|
|
27
|
+
* @param options optional: how the difference is rounded and how the string is rendered; a non-object value (such as `null`) is invalid
|
|
28
28
|
* @returns ISO 8601 duration string, or "" on invalid input
|
|
29
29
|
*
|
|
30
30
|
* @example diffDateTimeAsDuration("2024-03-10T00:00:00", "2024-03-11T02:00:00", "days") // "P1DT2H"
|
|
@@ -28,7 +28,7 @@ import type { RoundingOptions, TimeDurationUnit } from "../../types/index.js";
|
|
|
28
28
|
* @param time1 ISO PlainTime string for the start
|
|
29
29
|
* @param time2 ISO PlainTime string for the end
|
|
30
30
|
* @param units TimeDurationUnit | TimeDurationUnit[] to measure the difference
|
|
31
|
-
* @param options optional:
|
|
31
|
+
* @param options optional: how the difference is rounded; a non-object value (such as `null`) is invalid
|
|
32
32
|
* @returns numeric difference in the requested unit, or null on invalid input
|
|
33
33
|
*
|
|
34
34
|
* @example diffTime("12:00:00", "14:30:00", "hours") // 2
|
|
@@ -33,7 +33,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
33
33
|
* @param time1 ISO PlainTime string for the start
|
|
34
34
|
* @param time2 ISO PlainTime string for the end
|
|
35
35
|
* @param units TimeDurationUnit | TimeDurationUnit[] to measure the difference
|
|
36
|
-
* @param options optional:
|
|
36
|
+
* @param options optional: how the difference is rounded; a non-object value (such as `null`) is invalid
|
|
37
37
|
* @returns numeric difference in the requested unit, or null on invalid input
|
|
38
38
|
*
|
|
39
39
|
* @example diffTime("12:00:00", "14:30:00", "hours") // 2
|
|
@@ -2,16 +2,14 @@ import { Temporal } from "@js-temporal/polyfill";
|
|
|
2
2
|
/**
|
|
3
3
|
* Return the end of the specified date `unit` for a given ISO 8601 date string.
|
|
4
4
|
*
|
|
5
|
-
* - A Sunday-first week runs Sunday to Saturday, so a Sunday ends its week six days later.
|
|
6
5
|
* - The end is computed forward from `value`, so it is returned even when the unit began before
|
|
7
6
|
* the first representable date (`-271821-04-19`).
|
|
8
7
|
* - `unit` accepts the singular or plural name (`"month"` or `"months"`), as Temporal does.
|
|
9
|
-
* - `weekStartsOn` other than `"monday"` or `"sunday"` returns "".
|
|
10
8
|
* - Returns "" for invalid inputs.
|
|
11
9
|
*
|
|
12
10
|
* @param value ISO 8601 date string
|
|
13
11
|
* @param unit date unit, singular or plural, to specify the unit for the end
|
|
14
|
-
* @param optionsArg
|
|
12
|
+
* @param optionsArg How the week is defined
|
|
15
13
|
* @returns ISO 8601 string representing the end of the specified unit, or "" on invalid input
|
|
16
14
|
*
|
|
17
15
|
* @example endOfDate("2024-02-29", "month") // "2024-02-29"
|
|
@@ -21,5 +19,12 @@ import { Temporal } from "@js-temporal/polyfill";
|
|
|
21
19
|
* @example endOfDate("invalid-date", "month") // ""
|
|
22
20
|
*/
|
|
23
21
|
export declare function endOfDate(value: string, unit: Temporal.SmallestUnit<Temporal.DateUnit>, optionsArg?: {
|
|
22
|
+
/**
|
|
23
|
+
* The first day of the week, which sets where a `"week"` unit starts. `"monday"` is the ISO
|
|
24
|
+
* 8601 week, Monday to Sunday; `"sunday"` runs Sunday to Saturday. Any other value returns
|
|
25
|
+
* `""`, whatever the unit.
|
|
26
|
+
*
|
|
27
|
+
* @defaultValue `"monday"`
|
|
28
|
+
*/
|
|
24
29
|
weekStartsOn?: "monday" | "sunday";
|
|
25
30
|
}): string;
|
|
@@ -8,16 +8,14 @@ const supported = ["year", "month", "week", "day"];
|
|
|
8
8
|
/**
|
|
9
9
|
* Return the end of the specified date `unit` for a given ISO 8601 date string.
|
|
10
10
|
*
|
|
11
|
-
* - A Sunday-first week runs Sunday to Saturday, so a Sunday ends its week six days later.
|
|
12
11
|
* - The end is computed forward from `value`, so it is returned even when the unit began before
|
|
13
12
|
* the first representable date (`-271821-04-19`).
|
|
14
13
|
* - `unit` accepts the singular or plural name (`"month"` or `"months"`), as Temporal does.
|
|
15
|
-
* - `weekStartsOn` other than `"monday"` or `"sunday"` returns "".
|
|
16
14
|
* - Returns "" for invalid inputs.
|
|
17
15
|
*
|
|
18
16
|
* @param value ISO 8601 date string
|
|
19
17
|
* @param unit date unit, singular or plural, to specify the unit for the end
|
|
20
|
-
* @param optionsArg
|
|
18
|
+
* @param optionsArg How the week is defined
|
|
21
19
|
* @returns ISO 8601 string representing the end of the specified unit, or "" on invalid input
|
|
22
20
|
*
|
|
23
21
|
* @example endOfDate("2024-02-29", "month") // "2024-02-29"
|
|
@@ -3,13 +3,9 @@ import type { FractionalDigit } from "../../types/index.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* Return the end of the specified date-time `unit` for a given ISO 8601 datetime string.
|
|
5
5
|
*
|
|
6
|
-
* - A Sunday-first week runs Sunday to Saturday, so a Sunday ends its week six days later.
|
|
7
6
|
* - The end is computed forward from `value`, so it is returned even when the unit began before
|
|
8
7
|
* the first representable date (`-271821-04-19`).
|
|
9
|
-
* - The end is written at nanosecond precision by default, so the string names the end itself; an
|
|
10
|
-
* explicit `fractionalSecondDigits` (0, 3, 6 or 9) truncates it, as Temporal's `toString` does.
|
|
11
8
|
* - `unit` accepts the singular or plural name (`"month"` or `"months"`), as Temporal does.
|
|
12
|
-
* - `weekStartsOn` other than `"monday"` or `"sunday"` returns "".
|
|
13
9
|
* - Returns "" for invalid inputs.
|
|
14
10
|
* - **Compatibility:** before 1.16.0 the default printed only the digits the unit names — none for
|
|
15
11
|
* `second` and coarser, 3 for `millisecond`, 6 for `microsecond` — which wrote a moment earlier
|
|
@@ -17,7 +13,7 @@ import type { FractionalDigit } from "../../types/index.js";
|
|
|
17
13
|
*
|
|
18
14
|
* @param value ISO 8601 datetime string
|
|
19
15
|
* @param unit date or time unit, singular or plural, to specify the unit for the end
|
|
20
|
-
* @param optionsArg
|
|
16
|
+
* @param optionsArg How the week is defined and how the result is written
|
|
21
17
|
* @returns ISO 8601 string representing the end of the specified unit, or "" on invalid input
|
|
22
18
|
*
|
|
23
19
|
* @example endOfDateTime("2024-02-29T12:34:56", "month") // "2024-02-29T23:59:59.999999999"
|
|
@@ -29,6 +25,20 @@ import type { FractionalDigit } from "../../types/index.js";
|
|
|
29
25
|
* @example endOfDateTime("invalid-date", "month") // ""
|
|
30
26
|
*/
|
|
31
27
|
export declare function endOfDateTime(value: string, unit: Temporal.SmallestUnit<Temporal.DateTimeUnit>, optionsArg?: {
|
|
28
|
+
/**
|
|
29
|
+
* The first day of the week, which sets where a `"week"` unit starts. `"monday"` is the ISO
|
|
30
|
+
* 8601 week, Monday to Sunday; `"sunday"` runs Sunday to Saturday. Any other value returns
|
|
31
|
+
* `""`, whatever the unit.
|
|
32
|
+
*
|
|
33
|
+
* @defaultValue `"monday"`
|
|
34
|
+
*/
|
|
32
35
|
weekStartsOn?: "monday" | "sunday";
|
|
36
|
+
/**
|
|
37
|
+
* The number of fractional-second digits the result is written with, `0` to `9`, or `"auto"` to
|
|
38
|
+
* drop trailing zeros. Fewer than 9 digits truncate the string, as Temporal's `toString` does,
|
|
39
|
+
* so it names a moment before the end.
|
|
40
|
+
*
|
|
41
|
+
* @defaultValue `9`
|
|
42
|
+
*/
|
|
33
43
|
fractionalSecondDigits?: FractionalDigit;
|
|
34
44
|
}): string;
|
|
@@ -19,13 +19,9 @@ const supported = [
|
|
|
19
19
|
/**
|
|
20
20
|
* Return the end of the specified date-time `unit` for a given ISO 8601 datetime string.
|
|
21
21
|
*
|
|
22
|
-
* - A Sunday-first week runs Sunday to Saturday, so a Sunday ends its week six days later.
|
|
23
22
|
* - The end is computed forward from `value`, so it is returned even when the unit began before
|
|
24
23
|
* the first representable date (`-271821-04-19`).
|
|
25
|
-
* - The end is written at nanosecond precision by default, so the string names the end itself; an
|
|
26
|
-
* explicit `fractionalSecondDigits` (0, 3, 6 or 9) truncates it, as Temporal's `toString` does.
|
|
27
24
|
* - `unit` accepts the singular or plural name (`"month"` or `"months"`), as Temporal does.
|
|
28
|
-
* - `weekStartsOn` other than `"monday"` or `"sunday"` returns "".
|
|
29
25
|
* - Returns "" for invalid inputs.
|
|
30
26
|
* - **Compatibility:** before 1.16.0 the default printed only the digits the unit names — none for
|
|
31
27
|
* `second` and coarser, 3 for `millisecond`, 6 for `microsecond` — which wrote a moment earlier
|
|
@@ -33,7 +29,7 @@ const supported = [
|
|
|
33
29
|
*
|
|
34
30
|
* @param value ISO 8601 datetime string
|
|
35
31
|
* @param unit date or time unit, singular or plural, to specify the unit for the end
|
|
36
|
-
* @param optionsArg
|
|
32
|
+
* @param optionsArg How the week is defined and how the result is written
|
|
37
33
|
* @returns ISO 8601 string representing the end of the specified unit, or "" on invalid input
|
|
38
34
|
*
|
|
39
35
|
* @example endOfDateTime("2024-02-29T12:34:56", "month") // "2024-02-29T23:59:59.999999999"
|
|
@@ -8,11 +8,10 @@ import type { FractionalDigit } from "../../types/index.js";
|
|
|
8
8
|
* import { EndOfTimeUnit } from "@northguild/gmt/plain";
|
|
9
9
|
* const unit: EndOfTimeUnit = "minutes";
|
|
10
10
|
*/
|
|
11
|
-
export type EndOfTimeUnit = Temporal.SmallestUnit<Temporal.TimeUnit
|
|
11
|
+
export type EndOfTimeUnit = Temporal.SmallestUnit<"day" | Temporal.TimeUnit>;
|
|
12
12
|
/**
|
|
13
13
|
* Return the end of the specified time `unit` for a given ISO 8601 time string.
|
|
14
14
|
*
|
|
15
|
-
* - The end is written at nanosecond precision by default, so the string names the end itself; an explicit `fractionalSecondDigits` (0, 3, 6 or 9) truncates it, as Temporal's `toString` does.
|
|
16
15
|
* - `unit` accepts the singular or plural name (`"hour"` or `"hours"`), as Temporal does.
|
|
17
16
|
* - Returns "" for invalid inputs.
|
|
18
17
|
* - **Compatibility:** before 1.16.0 the default printed only the digits the unit names — none for
|
|
@@ -21,7 +20,7 @@ export type EndOfTimeUnit = Temporal.SmallestUnit<Temporal.TimeUnit | "day">;
|
|
|
21
20
|
*
|
|
22
21
|
* @param value ISO 8601 time string
|
|
23
22
|
* @param unit EndOfTimeUnit to specify the unit for the end
|
|
24
|
-
* @param optionsArg
|
|
23
|
+
* @param optionsArg How the result is written
|
|
25
24
|
* @returns ISO 8601 string representing the end of the specified unit, or "" on invalid input
|
|
26
25
|
*
|
|
27
26
|
* @example endOfTime("12:34:56", "hour") // "12:59:59.999999999"
|
|
@@ -30,5 +29,12 @@ export type EndOfTimeUnit = Temporal.SmallestUnit<Temporal.TimeUnit | "day">;
|
|
|
30
29
|
* @example endOfTime("invalid", "hour") // ""
|
|
31
30
|
*/
|
|
32
31
|
export declare function endOfTime(value: string, unit: EndOfTimeUnit, optionsArg?: {
|
|
32
|
+
/**
|
|
33
|
+
* The number of fractional-second digits the result is written with, `0` to `9`, or `"auto"` to
|
|
34
|
+
* drop trailing zeros. Fewer than 9 digits truncate the string, as Temporal's `toString` does,
|
|
35
|
+
* so it names a moment before the end.
|
|
36
|
+
*
|
|
37
|
+
* @defaultValue `9`
|
|
38
|
+
*/
|
|
33
39
|
fractionalSecondDigits?: FractionalDigit;
|
|
34
40
|
}): string;
|
|
@@ -15,7 +15,6 @@ const supported = [
|
|
|
15
15
|
/**
|
|
16
16
|
* Return the end of the specified time `unit` for a given ISO 8601 time string.
|
|
17
17
|
*
|
|
18
|
-
* - The end is written at nanosecond precision by default, so the string names the end itself; an explicit `fractionalSecondDigits` (0, 3, 6 or 9) truncates it, as Temporal's `toString` does.
|
|
19
18
|
* - `unit` accepts the singular or plural name (`"hour"` or `"hours"`), as Temporal does.
|
|
20
19
|
* - Returns "" for invalid inputs.
|
|
21
20
|
* - **Compatibility:** before 1.16.0 the default printed only the digits the unit names — none for
|
|
@@ -24,7 +23,7 @@ const supported = [
|
|
|
24
23
|
*
|
|
25
24
|
* @param value ISO 8601 time string
|
|
26
25
|
* @param unit EndOfTimeUnit to specify the unit for the end
|
|
27
|
-
* @param optionsArg
|
|
26
|
+
* @param optionsArg How the result is written
|
|
28
27
|
* @returns ISO 8601 string representing the end of the specified unit, or "" on invalid input
|
|
29
28
|
*
|
|
30
29
|
* @example endOfTime("12:34:56", "hour") // "12:59:59.999999999"
|
|
@@ -7,21 +7,21 @@
|
|
|
7
7
|
* - Week 1 is the week starting on `locale`'s first day of week that holds at least `minimalDays`
|
|
8
8
|
* days of January (UTS #35 Part 4, Week Data). The first day of week comes from
|
|
9
9
|
* `Intl.Locale.prototype.getWeekInfo`.
|
|
10
|
-
* -
|
|
11
|
-
* a locale's minimal days: Intl Locale Info returns only
|
|
12
|
-
* (tc39/proposal-intl-locale-info#86), so older runtimes that still
|
|
13
|
-
* newer ones about the same date. Pass CLDR's value when you need a
|
|
14
|
-
* `weekData`, the world default (`001`) is `1
|
|
15
|
-
* `
|
|
16
|
-
*
|
|
17
|
-
* - Returns null if `value` or `locale` is invalid
|
|
10
|
+
* - The minimal-days rule comes from the caller, never the runtime, so one input has one answer
|
|
11
|
+
* everywhere. ECMA-402 does not expose a locale's minimal days: Intl Locale Info returns only
|
|
12
|
+
* `firstDay` and `weekend` (tc39/proposal-intl-locale-info#86), so older runtimes that still
|
|
13
|
+
* reported it disagreed with newer ones about the same date. Pass CLDR's value when you need a
|
|
14
|
+
* locale's own rule: in CLDR 48 `weekData`, the world default (`001`) is `1`, as in `US`, `CA`,
|
|
15
|
+
* `MX`, `JP` and `CN`, and `4` is set for a list of mostly European regions such as `GB`, `DE`
|
|
16
|
+
* and `FR`.
|
|
17
|
+
* - Returns null if `value` or `locale` is invalid.
|
|
18
18
|
* - **Compatibility:** before 1.16.0 the default read the runtime's `minimalDays` where one was
|
|
19
19
|
* exposed (Node 22), so a locale such as `en-US` got `1` there and `4` on Node 24 and later. Pass
|
|
20
20
|
* `{ minimalDays: 1 }` to keep the Node 22 result for such a locale on every runtime.
|
|
21
21
|
*
|
|
22
22
|
* @param value ISO PlainDate string
|
|
23
23
|
* @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), 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 null
|
|
24
|
-
* @param options
|
|
24
|
+
* @param options The minimal-days-in-first-week rule
|
|
25
25
|
* @returns locale-relative week-numbering year, or null on invalid input
|
|
26
26
|
*
|
|
27
27
|
* @example getLocaleWeekYear("2024-06-15", "en-US") // 2024
|
|
@@ -34,5 +34,12 @@
|
|
|
34
34
|
* @example getLocaleWeekYear("2024-12-29", ["en-US", "fr-FR"]) // 2025
|
|
35
35
|
*/
|
|
36
36
|
export declare function getLocaleWeekYear(value: string, locale: string | string[], options?: {
|
|
37
|
+
/**
|
|
38
|
+
* How many days of January the first week must hold to be week 1 (UTS #35 Part 4, Week
|
|
39
|
+
* Data). `4` is the ISO 8601 rule; `1` puts January 1 in week 1 every year, as CLDR's world
|
|
40
|
+
* default does. A value that is not an integer from 1 to 7 returns `null`.
|
|
41
|
+
*
|
|
42
|
+
* @defaultValue `4`
|
|
43
|
+
*/
|
|
37
44
|
minimalDays?: number;
|
|
38
45
|
}): number | null;
|
|
@@ -12,21 +12,21 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
12
12
|
* - Week 1 is the week starting on `locale`'s first day of week that holds at least `minimalDays`
|
|
13
13
|
* days of January (UTS #35 Part 4, Week Data). The first day of week comes from
|
|
14
14
|
* `Intl.Locale.prototype.getWeekInfo`.
|
|
15
|
-
* -
|
|
16
|
-
* a locale's minimal days: Intl Locale Info returns only
|
|
17
|
-
* (tc39/proposal-intl-locale-info#86), so older runtimes that still
|
|
18
|
-
* newer ones about the same date. Pass CLDR's value when you need a
|
|
19
|
-
* `weekData`, the world default (`001`) is `1
|
|
20
|
-
* `
|
|
21
|
-
*
|
|
22
|
-
* - Returns null if `value` or `locale` is invalid
|
|
15
|
+
* - The minimal-days rule comes from the caller, never the runtime, so one input has one answer
|
|
16
|
+
* everywhere. ECMA-402 does not expose a locale's minimal days: Intl Locale Info returns only
|
|
17
|
+
* `firstDay` and `weekend` (tc39/proposal-intl-locale-info#86), so older runtimes that still
|
|
18
|
+
* reported it disagreed with newer ones about the same date. Pass CLDR's value when you need a
|
|
19
|
+
* locale's own rule: in CLDR 48 `weekData`, the world default (`001`) is `1`, as in `US`, `CA`,
|
|
20
|
+
* `MX`, `JP` and `CN`, and `4` is set for a list of mostly European regions such as `GB`, `DE`
|
|
21
|
+
* and `FR`.
|
|
22
|
+
* - Returns null if `value` or `locale` is invalid.
|
|
23
23
|
* - **Compatibility:** before 1.16.0 the default read the runtime's `minimalDays` where one was
|
|
24
24
|
* exposed (Node 22), so a locale such as `en-US` got `1` there and `4` on Node 24 and later. Pass
|
|
25
25
|
* `{ minimalDays: 1 }` to keep the Node 22 result for such a locale on every runtime.
|
|
26
26
|
*
|
|
27
27
|
* @param value ISO PlainDate string
|
|
28
28
|
* @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), 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 null
|
|
29
|
-
* @param options
|
|
29
|
+
* @param options The minimal-days-in-first-week rule
|
|
30
30
|
* @returns locale-relative week-numbering year, or null on invalid input
|
|
31
31
|
*
|
|
32
32
|
* @example getLocaleWeekYear("2024-06-15", "en-US") // 2024
|
|
@@ -3,10 +3,13 @@
|
|
|
3
3
|
* grid, using `locale`'s first day of week.
|
|
4
4
|
*
|
|
5
5
|
* - Week 1 is the row containing the 1st of the month, even when that row
|
|
6
|
-
* is a partial week
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
6
|
+
* is a partial week. This is GMT's own rule, not a standard's: a month
|
|
7
|
+
* grid draws every day of the month, so its first row always holds the 1st.
|
|
8
|
+
* - Not CLDR's week-of-month field (`W`, UTS #35): that count applies the
|
|
9
|
+
* locale's `minDays`, so a short leading week may not count as part of
|
|
10
|
+
* the month.
|
|
11
|
+
* - Comparison: date-fns's `getWeekOfMonth` returns the same number for the
|
|
12
|
+
* same first day of week.
|
|
10
13
|
* - Distinct from ISO `weekOfYear`: this counts rows within a single
|
|
11
14
|
* month's grid, reset every month, rather than weeks since Jan 1.
|
|
12
15
|
* - Resolves the locale's first day of week via
|
|
@@ -7,10 +7,13 @@ import { isValidDate } from "../validate/index.js";
|
|
|
7
7
|
* grid, using `locale`'s first day of week.
|
|
8
8
|
*
|
|
9
9
|
* - Week 1 is the row containing the 1st of the month, even when that row
|
|
10
|
-
* is a partial week
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
10
|
+
* is a partial week. This is GMT's own rule, not a standard's: a month
|
|
11
|
+
* grid draws every day of the month, so its first row always holds the 1st.
|
|
12
|
+
* - Not CLDR's week-of-month field (`W`, UTS #35): that count applies the
|
|
13
|
+
* locale's `minDays`, so a short leading week may not count as part of
|
|
14
|
+
* the month.
|
|
15
|
+
* - Comparison: date-fns's `getWeekOfMonth` returns the same number for the
|
|
16
|
+
* same first day of week.
|
|
14
17
|
* - Distinct from ISO `weekOfYear`: this counts rows within a single
|
|
15
18
|
* month's grid, reset every month, rather than weeks since Jan 1.
|
|
16
19
|
* - Resolves the locale's first day of week via
|
|
@@ -7,18 +7,18 @@
|
|
|
7
7
|
* - Computed as the calendar days between this week-year's start and the next one's, divided by 7 —
|
|
8
8
|
* always whole, since both starts fall on the locale's first day of week. Counted by day
|
|
9
9
|
* arithmetic, so a start outside the representable range still counts.
|
|
10
|
-
* -
|
|
11
|
-
*
|
|
12
|
-
* (`US` included) and `4` is set for mostly European regions; pass the locale's value when
|
|
13
|
-
*
|
|
14
|
-
* - Returns null if `value` or `locale` is invalid
|
|
10
|
+
* - The minimal-days rule comes from the caller, never the runtime: ECMA-402 does not expose a
|
|
11
|
+
* locale's minimal days (tc39/proposal-intl-locale-info#86). CLDR 48's world default is `1`
|
|
12
|
+
* (`US` included) and `4` is set for mostly European regions; pass the locale's value when you
|
|
13
|
+
* need its own rule. See `getLocaleWeekYear`.
|
|
14
|
+
* - Returns null if `value` or `locale` is invalid.
|
|
15
15
|
* - **Compatibility:** before 1.16.0 the default read the runtime's `minimalDays` where one was
|
|
16
16
|
* exposed (Node 22), so a locale such as `en-US` got `1` there and `4` on Node 24 and later. Pass
|
|
17
17
|
* `{ minimalDays: 1 }` to keep the Node 22 result for such a locale on every runtime.
|
|
18
18
|
*
|
|
19
19
|
* @param value ISO PlainDate string
|
|
20
20
|
* @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), 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 null
|
|
21
|
-
* @param options
|
|
21
|
+
* @param options The minimal-days-in-first-week rule
|
|
22
22
|
* @returns 52 or 53, or null on invalid input
|
|
23
23
|
*
|
|
24
24
|
* @example getWeeksInLocaleWeekYear("2024-06-15", "en-US") // 52
|
|
@@ -31,5 +31,12 @@
|
|
|
31
31
|
* @example getWeeksInLocaleWeekYear("2024-12-29", ["fr-FR", "en-US"]) // 52
|
|
32
32
|
*/
|
|
33
33
|
export declare function getWeeksInLocaleWeekYear(value: string, locale: string | string[], options?: {
|
|
34
|
+
/**
|
|
35
|
+
* How many days of January the first week must hold to be week 1 (UTS #35 Part 4, Week
|
|
36
|
+
* Data). `4` is the ISO 8601 rule; `1` puts January 1 in week 1 every year, as CLDR's world
|
|
37
|
+
* default does. A value that is not an integer from 1 to 7 returns `null`.
|
|
38
|
+
*
|
|
39
|
+
* @defaultValue `4`
|
|
40
|
+
*/
|
|
34
41
|
minimalDays?: number;
|
|
35
42
|
}): number | null;
|
|
@@ -12,18 +12,18 @@ import { isOptionsArgument } from "../../internal/isObject.js";
|
|
|
12
12
|
* - Computed as the calendar days between this week-year's start and the next one's, divided by 7 —
|
|
13
13
|
* always whole, since both starts fall on the locale's first day of week. Counted by day
|
|
14
14
|
* arithmetic, so a start outside the representable range still counts.
|
|
15
|
-
* -
|
|
16
|
-
*
|
|
17
|
-
* (`US` included) and `4` is set for mostly European regions; pass the locale's value when
|
|
18
|
-
*
|
|
19
|
-
* - Returns null if `value` or `locale` is invalid
|
|
15
|
+
* - The minimal-days rule comes from the caller, never the runtime: ECMA-402 does not expose a
|
|
16
|
+
* locale's minimal days (tc39/proposal-intl-locale-info#86). CLDR 48's world default is `1`
|
|
17
|
+
* (`US` included) and `4` is set for mostly European regions; pass the locale's value when you
|
|
18
|
+
* need its own rule. See `getLocaleWeekYear`.
|
|
19
|
+
* - Returns null if `value` or `locale` is invalid.
|
|
20
20
|
* - **Compatibility:** before 1.16.0 the default read the runtime's `minimalDays` where one was
|
|
21
21
|
* exposed (Node 22), so a locale such as `en-US` got `1` there and `4` on Node 24 and later. Pass
|
|
22
22
|
* `{ minimalDays: 1 }` to keep the Node 22 result for such a locale on every runtime.
|
|
23
23
|
*
|
|
24
24
|
* @param value ISO PlainDate string
|
|
25
25
|
* @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), 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 null
|
|
26
|
-
* @param options
|
|
26
|
+
* @param options The minimal-days-in-first-week rule
|
|
27
27
|
* @returns 52 or 53, or null on invalid input
|
|
28
28
|
*
|
|
29
29
|
* @example getWeeksInLocaleWeekYear("2024-06-15", "en-US") // 52
|