@northguild/gmt 1.14.2
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/LICENSE +21 -0
- package/README.md +1626 -0
- package/dist/duration/calculate/absDuration.d.ts +20 -0
- package/dist/duration/calculate/absDuration.js +32 -0
- package/dist/duration/calculate/addDuration.d.ts +20 -0
- package/dist/duration/calculate/addDuration.js +32 -0
- package/dist/duration/calculate/durationAs.d.ts +38 -0
- package/dist/duration/calculate/durationAs.js +52 -0
- package/dist/duration/calculate/getDurationSign.d.ts +22 -0
- package/dist/duration/calculate/getDurationSign.js +34 -0
- package/dist/duration/calculate/getDurationUnit.d.ts +31 -0
- package/dist/duration/calculate/getDurationUnit.js +43 -0
- package/dist/duration/calculate/index.d.ts +7 -0
- package/dist/duration/calculate/index.js +7 -0
- package/dist/duration/calculate/negateDuration.d.ts +20 -0
- package/dist/duration/calculate/negateDuration.js +32 -0
- package/dist/duration/calculate/subtractDuration.d.ts +21 -0
- package/dist/duration/calculate/subtractDuration.js +33 -0
- package/dist/duration/compare/compareDurations.d.ts +37 -0
- package/dist/duration/compare/compareDurations.js +49 -0
- package/dist/duration/compare/index.d.ts +1 -0
- package/dist/duration/compare/index.js +1 -0
- package/dist/duration/format/formatDuration.d.ts +37 -0
- package/dist/duration/format/formatDuration.js +93 -0
- package/dist/duration/format/index.d.ts +1 -0
- package/dist/duration/format/index.js +1 -0
- package/dist/duration/index.d.ts +6 -0
- package/dist/duration/index.js +6 -0
- package/dist/duration/normalize/index.d.ts +1 -0
- package/dist/duration/normalize/index.js +1 -0
- package/dist/duration/normalize/normalizeDuration.d.ts +36 -0
- package/dist/duration/normalize/normalizeDuration.js +49 -0
- package/dist/duration/parse/index.d.ts +1 -0
- package/dist/duration/parse/index.js +1 -0
- package/dist/duration/parse/parseDuration.d.ts +24 -0
- package/dist/duration/parse/parseDuration.js +35 -0
- package/dist/duration/validate/index.d.ts +1 -0
- package/dist/duration/validate/index.js +1 -0
- package/dist/duration/validate/isValidDuration.d.ts +16 -0
- package/dist/duration/validate/isValidDuration.js +28 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +7 -0
- package/dist/internal/adjustZonedBusinessDays.d.ts +1 -0
- package/dist/internal/adjustZonedBusinessDays.js +16 -0
- package/dist/internal/advanceBusinessDays.d.ts +2 -0
- package/dist/internal/advanceBusinessDays.js +15 -0
- package/dist/internal/advanceToWeekday.d.ts +12 -0
- package/dist/internal/advanceToWeekday.js +24 -0
- package/dist/internal/calendarDatePairPolicy.d.ts +25 -0
- package/dist/internal/calendarDatePairPolicy.js +33 -0
- package/dist/internal/calendarDateString.d.ts +65 -0
- package/dist/internal/calendarDateString.js +103 -0
- package/dist/internal/calendarSystemIds.d.ts +4 -0
- package/dist/internal/calendarSystemIds.js +55 -0
- package/dist/internal/calendarValueOfDate.d.ts +22 -0
- package/dist/internal/calendarValueOfDate.js +41 -0
- package/dist/internal/calendarValueOfZoned.d.ts +38 -0
- package/dist/internal/calendarValueOfZoned.js +58 -0
- package/dist/internal/calendarZonedPairPolicy.d.ts +31 -0
- package/dist/internal/calendarZonedPairPolicy.js +39 -0
- package/dist/internal/calendarZonedString.d.ts +77 -0
- package/dist/internal/calendarZonedString.js +120 -0
- package/dist/internal/cycleFieldValue.d.ts +30 -0
- package/dist/internal/cycleFieldValue.js +48 -0
- package/dist/internal/dateCycleFieldBounds.d.ts +25 -0
- package/dist/internal/dateCycleFieldBounds.js +27 -0
- package/dist/internal/dateTimeUnitHelpers.d.ts +27 -0
- package/dist/internal/dateTimeUnitHelpers.js +50 -0
- package/dist/internal/dateUnitHelpers.d.ts +23 -0
- package/dist/internal/dateUnitHelpers.js +46 -0
- package/dist/internal/durationUntilString.d.ts +17 -0
- package/dist/internal/durationUntilString.js +13 -0
- package/dist/internal/englishCalendarNames.d.ts +2 -0
- package/dist/internal/englishCalendarNames.js +30 -0
- package/dist/internal/ethiopicFamilyCalendar.d.ts +47 -0
- package/dist/internal/ethiopicFamilyCalendar.js +136 -0
- package/dist/internal/formatDateInCalendar.d.ts +47 -0
- package/dist/internal/formatDateInCalendar.js +54 -0
- package/dist/internal/getLocaleFirstDayOfWeek.d.ts +11 -0
- package/dist/internal/getLocaleFirstDayOfWeek.js +26 -0
- package/dist/internal/getLocaleMinimalDaysInFirstWeek.d.ts +20 -0
- package/dist/internal/getLocaleMinimalDaysInFirstWeek.js +31 -0
- package/dist/internal/getLocaleWeekYearBounds.d.ts +19 -0
- package/dist/internal/getLocaleWeekYearBounds.js +44 -0
- package/dist/internal/getLocaleWeekendDays.d.ts +22 -0
- package/dist/internal/getLocaleWeekendDays.js +20 -0
- package/dist/internal/hasCalendarAnnotation.d.ts +27 -0
- package/dist/internal/hasCalendarAnnotation.js +29 -0
- package/dist/internal/index.d.ts +34 -0
- package/dist/internal/index.js +34 -0
- package/dist/internal/intervalCountHelpers.d.ts +26 -0
- package/dist/internal/intervalCountHelpers.js +62 -0
- package/dist/internal/isValidAmount.d.ts +9 -0
- package/dist/internal/isValidAmount.js +11 -0
- package/dist/internal/isValidDayOfWeek.d.ts +11 -0
- package/dist/internal/isValidDayOfWeek.js +13 -0
- package/dist/internal/joinDateTimeConnector.d.ts +37 -0
- package/dist/internal/joinDateTimeConnector.js +85 -0
- package/dist/internal/monthGridWeekRow.d.ts +12 -0
- package/dist/internal/monthGridWeekRow.js +14 -0
- package/dist/internal/normalizeDateTime.d.ts +14 -0
- package/dist/internal/normalizeDateTime.js +34 -0
- package/dist/internal/normalizeTimeZone.d.ts +14 -0
- package/dist/internal/normalizeTimeZone.js +22 -0
- package/dist/internal/patternToken.d.ts +45 -0
- package/dist/internal/patternToken.js +385 -0
- package/dist/internal/resolveDateTimeUnit.d.ts +11 -0
- package/dist/internal/resolveDateTimeUnit.js +23 -0
- package/dist/internal/resolveDurationRelativeTo.d.ts +29 -0
- package/dist/internal/resolveDurationRelativeTo.js +35 -0
- package/dist/internal/resolveDurationUnit.d.ts +10 -0
- package/dist/internal/resolveDurationUnit.js +23 -0
- package/dist/internal/resolveOverflow.d.ts +10 -0
- package/dist/internal/resolveOverflow.js +11 -0
- package/dist/internal/resolveRelativeRounding.d.ts +19 -0
- package/dist/internal/resolveRelativeRounding.js +20 -0
- package/dist/internal/resolveUnixTimeZone.d.ts +20 -0
- package/dist/internal/resolveUnixTimeZone.js +30 -0
- package/dist/internal/timeCycleFieldBounds.d.ts +16 -0
- package/dist/internal/timeCycleFieldBounds.js +24 -0
- package/dist/internal/toInstantFromUtc.d.ts +2 -0
- package/dist/internal/toInstantFromUtc.js +11 -0
- package/dist/plain/calculate/addBusinessDays.d.ts +17 -0
- package/dist/plain/calculate/addBusinessDays.js +35 -0
- package/dist/plain/calculate/addDate.d.ts +35 -0
- package/dist/plain/calculate/addDate.js +55 -0
- package/dist/plain/calculate/addDateTime.d.ts +22 -0
- package/dist/plain/calculate/addDateTime.js +38 -0
- package/dist/plain/calculate/addTime.d.ts +22 -0
- package/dist/plain/calculate/addTime.js +38 -0
- package/dist/plain/calculate/clampDate.d.ts +20 -0
- package/dist/plain/calculate/clampDate.js +46 -0
- package/dist/plain/calculate/closestDateTo.d.ts +18 -0
- package/dist/plain/calculate/closestDateTo.js +43 -0
- package/dist/plain/calculate/cycleDate.d.ts +44 -0
- package/dist/plain/calculate/cycleDate.js +56 -0
- package/dist/plain/calculate/cycleDateTime.d.ts +38 -0
- package/dist/plain/calculate/cycleDateTime.js +52 -0
- package/dist/plain/calculate/cycleTime.d.ts +38 -0
- package/dist/plain/calculate/cycleTime.js +50 -0
- package/dist/plain/calculate/diffDate.d.ts +32 -0
- package/dist/plain/calculate/diffDate.js +64 -0
- package/dist/plain/calculate/diffDateAsDuration.d.ts +36 -0
- package/dist/plain/calculate/diffDateAsDuration.js +49 -0
- package/dist/plain/calculate/diffDateTime.d.ts +25 -0
- package/dist/plain/calculate/diffDateTime.js +57 -0
- package/dist/plain/calculate/diffDateTimeAsDuration.d.ts +33 -0
- package/dist/plain/calculate/diffDateTimeAsDuration.js +48 -0
- package/dist/plain/calculate/diffTime.d.ts +25 -0
- package/dist/plain/calculate/diffTime.js +56 -0
- package/dist/plain/calculate/endOfDate.d.ts +17 -0
- package/dist/plain/calculate/endOfDate.js +51 -0
- package/dist/plain/calculate/endOfDateTime.d.ts +19 -0
- package/dist/plain/calculate/endOfDateTime.js +138 -0
- package/dist/plain/calculate/endOfQuarterForDate.d.ts +17 -0
- package/dist/plain/calculate/endOfQuarterForDate.js +34 -0
- package/dist/plain/calculate/endOfQuarterForDateTime.d.ts +15 -0
- package/dist/plain/calculate/endOfQuarterForDateTime.js +48 -0
- package/dist/plain/calculate/endOfTime.d.ts +20 -0
- package/dist/plain/calculate/endOfTime.js +91 -0
- package/dist/plain/calculate/getDayOfYear.d.ts +16 -0
- package/dist/plain/calculate/getDayOfYear.js +28 -0
- package/dist/plain/calculate/getDaysInMonth.d.ts +16 -0
- package/dist/plain/calculate/getDaysInMonth.js +28 -0
- package/dist/plain/calculate/getDaysInYear.d.ts +14 -0
- package/dist/plain/calculate/getDaysInYear.js +26 -0
- package/dist/plain/calculate/getLargestDateDurationUnit.d.ts +16 -0
- package/dist/plain/calculate/getLargestDateDurationUnit.js +24 -0
- package/dist/plain/calculate/getLargestDateTimeDurationUnit.d.ts +16 -0
- package/dist/plain/calculate/getLargestDateTimeDurationUnit.js +35 -0
- package/dist/plain/calculate/getLargestTimeDurationUnit.d.ts +16 -0
- package/dist/plain/calculate/getLargestTimeDurationUnit.js +31 -0
- package/dist/plain/calculate/getLocaleDayOfWeek.d.ts +20 -0
- package/dist/plain/calculate/getLocaleDayOfWeek.js +36 -0
- package/dist/plain/calculate/getLocaleEndOfWeek.d.ts +23 -0
- package/dist/plain/calculate/getLocaleEndOfWeek.js +40 -0
- package/dist/plain/calculate/getLocaleStartOfWeek.d.ts +23 -0
- package/dist/plain/calculate/getLocaleStartOfWeek.js +40 -0
- package/dist/plain/calculate/getLocaleWeekYear.d.ts +28 -0
- package/dist/plain/calculate/getLocaleWeekYear.js +45 -0
- package/dist/plain/calculate/getQuarterForDate.d.ts +17 -0
- package/dist/plain/calculate/getQuarterForDate.js +30 -0
- package/dist/plain/calculate/getQuarterForDateTime.d.ts +17 -0
- package/dist/plain/calculate/getQuarterForDateTime.js +30 -0
- package/dist/plain/calculate/getWeekNumber.d.ts +17 -0
- package/dist/plain/calculate/getWeekNumber.js +39 -0
- package/dist/plain/calculate/getWeekOfMonth.d.ts +26 -0
- package/dist/plain/calculate/getWeekOfMonth.js +43 -0
- package/dist/plain/calculate/getWeekYear.d.ts +21 -0
- package/dist/plain/calculate/getWeekYear.js +33 -0
- package/dist/plain/calculate/getWeeksInLocaleWeekYear.d.ts +24 -0
- package/dist/plain/calculate/getWeeksInLocaleWeekYear.js +43 -0
- package/dist/plain/calculate/getWeeksInMonth.d.ts +23 -0
- package/dist/plain/calculate/getWeeksInMonth.js +40 -0
- package/dist/plain/calculate/getWeeksInYear.d.ts +23 -0
- package/dist/plain/calculate/getWeeksInYear.js +43 -0
- package/dist/plain/calculate/index.d.ts +64 -0
- package/dist/plain/calculate/index.js +64 -0
- package/dist/plain/calculate/maxDate.d.ts +13 -0
- package/dist/plain/calculate/maxDate.js +33 -0
- package/dist/plain/calculate/maxDateTime.d.ts +13 -0
- package/dist/plain/calculate/maxDateTime.js +33 -0
- package/dist/plain/calculate/maxTime.d.ts +13 -0
- package/dist/plain/calculate/maxTime.js +33 -0
- package/dist/plain/calculate/minDate.d.ts +13 -0
- package/dist/plain/calculate/minDate.js +33 -0
- package/dist/plain/calculate/minDateTime.d.ts +13 -0
- package/dist/plain/calculate/minDateTime.js +33 -0
- package/dist/plain/calculate/minTime.d.ts +13 -0
- package/dist/plain/calculate/minTime.js +33 -0
- package/dist/plain/calculate/nextWeekday.d.ts +36 -0
- package/dist/plain/calculate/nextWeekday.js +47 -0
- package/dist/plain/calculate/previousWeekday.d.ts +36 -0
- package/dist/plain/calculate/previousWeekday.js +47 -0
- package/dist/plain/calculate/roundDate.d.ts +26 -0
- package/dist/plain/calculate/roundDate.js +72 -0
- package/dist/plain/calculate/roundDateTime.d.ts +26 -0
- package/dist/plain/calculate/roundDateTime.js +98 -0
- package/dist/plain/calculate/roundTime.d.ts +22 -0
- package/dist/plain/calculate/roundTime.js +42 -0
- package/dist/plain/calculate/setDate.d.ts +32 -0
- package/dist/plain/calculate/setDate.js +47 -0
- package/dist/plain/calculate/setDateTime.d.ts +31 -0
- package/dist/plain/calculate/setDateTime.js +46 -0
- package/dist/plain/calculate/setTime.d.ts +31 -0
- package/dist/plain/calculate/setTime.js +46 -0
- package/dist/plain/calculate/sortDateTimes.d.ts +14 -0
- package/dist/plain/calculate/sortDateTimes.js +33 -0
- package/dist/plain/calculate/sortDates.d.ts +14 -0
- package/dist/plain/calculate/sortDates.js +33 -0
- package/dist/plain/calculate/sortTimes.d.ts +14 -0
- package/dist/plain/calculate/sortTimes.js +33 -0
- package/dist/plain/calculate/startOfDate.d.ts +17 -0
- package/dist/plain/calculate/startOfDate.js +50 -0
- package/dist/plain/calculate/startOfDateTime.d.ts +19 -0
- package/dist/plain/calculate/startOfDateTime.js +85 -0
- package/dist/plain/calculate/startOfQuarterForDate.d.ts +17 -0
- package/dist/plain/calculate/startOfQuarterForDate.js +32 -0
- package/dist/plain/calculate/startOfQuarterForDateTime.d.ts +15 -0
- package/dist/plain/calculate/startOfQuarterForDateTime.js +32 -0
- package/dist/plain/calculate/startOfTime.d.ts +20 -0
- package/dist/plain/calculate/startOfTime.js +69 -0
- package/dist/plain/calculate/subtractBusinessDays.d.ts +18 -0
- package/dist/plain/calculate/subtractBusinessDays.js +36 -0
- package/dist/plain/calculate/subtractDate.d.ts +27 -0
- package/dist/plain/calculate/subtractDate.js +47 -0
- package/dist/plain/calculate/subtractDateTime.d.ts +22 -0
- package/dist/plain/calculate/subtractDateTime.js +38 -0
- package/dist/plain/calculate/subtractTime.d.ts +22 -0
- package/dist/plain/calculate/subtractTime.js +38 -0
- package/dist/plain/calculate/weekOfYear.d.ts +30 -0
- package/dist/plain/calculate/weekOfYear.js +57 -0
- package/dist/plain/chop/chopDate.d.ts +13 -0
- package/dist/plain/chop/chopDate.js +24 -0
- package/dist/plain/chop/chopMilliseconds.d.ts +15 -0
- package/dist/plain/chop/chopMilliseconds.js +34 -0
- package/dist/plain/chop/chopSeconds.d.ts +15 -0
- package/dist/plain/chop/chopSeconds.js +34 -0
- package/dist/plain/chop/chopTime.d.ts +13 -0
- package/dist/plain/chop/chopTime.js +24 -0
- package/dist/plain/chop/index.d.ts +5 -0
- package/dist/plain/chop/index.js +5 -0
- package/dist/plain/compare/areDateTimesEqual.d.ts +15 -0
- package/dist/plain/compare/areDateTimesEqual.js +37 -0
- package/dist/plain/compare/areDateTimesEqualBy.d.ts +37 -0
- package/dist/plain/compare/areDateTimesEqualBy.js +49 -0
- package/dist/plain/compare/areDatesEqual.d.ts +17 -0
- package/dist/plain/compare/areDatesEqual.js +33 -0
- package/dist/plain/compare/areDatesEqualBy.d.ts +34 -0
- package/dist/plain/compare/areDatesEqualBy.js +54 -0
- package/dist/plain/compare/areTimesEqual.d.ts +18 -0
- package/dist/plain/compare/areTimesEqual.js +37 -0
- package/dist/plain/compare/index.d.ts +20 -0
- package/dist/plain/compare/index.js +20 -0
- package/dist/plain/compare/isAfterDate.d.ts +16 -0
- package/dist/plain/compare/isAfterDate.js +28 -0
- package/dist/plain/compare/isAfterDateTime.d.ts +17 -0
- package/dist/plain/compare/isAfterDateTime.js +29 -0
- package/dist/plain/compare/isAfterTime.d.ts +17 -0
- package/dist/plain/compare/isAfterTime.js +29 -0
- package/dist/plain/compare/isBeforeDate.d.ts +17 -0
- package/dist/plain/compare/isBeforeDate.js +29 -0
- package/dist/plain/compare/isBeforeDateTime.d.ts +17 -0
- package/dist/plain/compare/isBeforeDateTime.js +29 -0
- package/dist/plain/compare/isBeforeTime.d.ts +17 -0
- package/dist/plain/compare/isBeforeTime.js +29 -0
- package/dist/plain/compare/isBetweenDate.d.ts +26 -0
- package/dist/plain/compare/isBetweenDate.js +49 -0
- package/dist/plain/compare/isBetweenDateTime.d.ts +26 -0
- package/dist/plain/compare/isBetweenDateTime.js +51 -0
- package/dist/plain/compare/isBetweenTime.d.ts +28 -0
- package/dist/plain/compare/isBetweenTime.js +51 -0
- package/dist/plain/compare/isBusinessDay.d.ts +21 -0
- package/dist/plain/compare/isBusinessDay.js +33 -0
- package/dist/plain/compare/isFuture.d.ts +21 -0
- package/dist/plain/compare/isFuture.js +33 -0
- package/dist/plain/compare/isPast.d.ts +21 -0
- package/dist/plain/compare/isPast.js +33 -0
- package/dist/plain/compare/isRelativeDay.d.ts +32 -0
- package/dist/plain/compare/isRelativeDay.js +49 -0
- package/dist/plain/compare/isThisUnit.d.ts +35 -0
- package/dist/plain/compare/isThisUnit.js +52 -0
- package/dist/plain/compare/isWeekend.d.ts +21 -0
- package/dist/plain/compare/isWeekend.js +37 -0
- package/dist/plain/convert/convertDateToCalendar.d.ts +44 -0
- package/dist/plain/convert/convertDateToCalendar.js +59 -0
- package/dist/plain/convert/index.d.ts +1 -0
- package/dist/plain/convert/index.js +1 -0
- package/dist/plain/format/formatCalendar.d.ts +43 -0
- package/dist/plain/format/formatCalendar.js +70 -0
- package/dist/plain/format/formatDate.d.ts +17 -0
- package/dist/plain/format/formatDate.js +31 -0
- package/dist/plain/format/formatDateRange.d.ts +19 -0
- package/dist/plain/format/formatDateRange.js +33 -0
- package/dist/plain/format/formatDateTime.d.ts +17 -0
- package/dist/plain/format/formatDateTime.js +31 -0
- package/dist/plain/format/formatDateTimeRange.d.ts +19 -0
- package/dist/plain/format/formatDateTimeRange.js +33 -0
- package/dist/plain/format/formatDateTimeToParts.d.ts +28 -0
- package/dist/plain/format/formatDateTimeToParts.js +48 -0
- package/dist/plain/format/formatDateToParts.d.ts +27 -0
- package/dist/plain/format/formatDateToParts.js +47 -0
- package/dist/plain/format/formatRelativeDate.d.ts +32 -0
- package/dist/plain/format/formatRelativeDate.js +57 -0
- package/dist/plain/format/formatRelativeDateTime.d.ts +32 -0
- package/dist/plain/format/formatRelativeDateTime.js +57 -0
- package/dist/plain/format/formatRelativeTime.d.ts +32 -0
- package/dist/plain/format/formatRelativeTime.js +49 -0
- package/dist/plain/format/formatSql.d.ts +20 -0
- package/dist/plain/format/formatSql.js +31 -0
- package/dist/plain/format/formatTime.d.ts +17 -0
- package/dist/plain/format/formatTime.js +31 -0
- package/dist/plain/format/index.d.ts +12 -0
- package/dist/plain/format/index.js +12 -0
- package/dist/plain/get/getDay.d.ts +13 -0
- package/dist/plain/get/getDay.js +27 -0
- package/dist/plain/get/getDayOfWeek.d.ts +13 -0
- package/dist/plain/get/getDayOfWeek.js +26 -0
- package/dist/plain/get/getHour.d.ts +13 -0
- package/dist/plain/get/getHour.js +27 -0
- package/dist/plain/get/getMicrosecond.d.ts +13 -0
- package/dist/plain/get/getMicrosecond.js +27 -0
- package/dist/plain/get/getMillisecond.d.ts +13 -0
- package/dist/plain/get/getMillisecond.js +27 -0
- package/dist/plain/get/getMinute.d.ts +13 -0
- package/dist/plain/get/getMinute.js +27 -0
- package/dist/plain/get/getMonth.d.ts +13 -0
- package/dist/plain/get/getMonth.js +27 -0
- package/dist/plain/get/getNanosecond.d.ts +13 -0
- package/dist/plain/get/getNanosecond.js +27 -0
- package/dist/plain/get/getNow.d.ts +11 -0
- package/dist/plain/get/getNow.js +24 -0
- package/dist/plain/get/getNowUnit.d.ts +27 -0
- package/dist/plain/get/getNowUnit.js +72 -0
- package/dist/plain/get/getSecond.d.ts +13 -0
- package/dist/plain/get/getSecond.js +27 -0
- package/dist/plain/get/getToday.d.ts +11 -0
- package/dist/plain/get/getToday.js +24 -0
- package/dist/plain/get/getWeekOfYear.d.ts +13 -0
- package/dist/plain/get/getWeekOfYear.js +32 -0
- package/dist/plain/get/getYear.d.ts +13 -0
- package/dist/plain/get/getYear.js +27 -0
- package/dist/plain/get/index.d.ts +14 -0
- package/dist/plain/get/index.js +14 -0
- package/dist/plain/index.d.ts +12 -0
- package/dist/plain/index.js +13 -0
- package/dist/plain/interval/index.d.ts +51 -0
- package/dist/plain/interval/index.js +51 -0
- package/dist/plain/interval/intervalAbutsDate.d.ts +26 -0
- package/dist/plain/interval/intervalAbutsDate.js +68 -0
- package/dist/plain/interval/intervalAbutsDateTime.d.ts +22 -0
- package/dist/plain/interval/intervalAbutsDateTime.js +63 -0
- package/dist/plain/interval/intervalAbutsTime.d.ts +22 -0
- package/dist/plain/interval/intervalAbutsTime.js +63 -0
- package/dist/plain/interval/intervalContainsDate.d.ts +26 -0
- package/dist/plain/interval/intervalContainsDate.js +63 -0
- package/dist/plain/interval/intervalContainsDateTime.d.ts +24 -0
- package/dist/plain/interval/intervalContainsDateTime.js +60 -0
- package/dist/plain/interval/intervalContainsTime.d.ts +24 -0
- package/dist/plain/interval/intervalContainsTime.js +60 -0
- package/dist/plain/interval/intervalCountDate.d.ts +31 -0
- package/dist/plain/interval/intervalCountDate.js +62 -0
- package/dist/plain/interval/intervalCountDateTime.d.ts +26 -0
- package/dist/plain/interval/intervalCountDateTime.js +73 -0
- package/dist/plain/interval/intervalCountTime.d.ts +26 -0
- package/dist/plain/interval/intervalCountTime.js +67 -0
- package/dist/plain/interval/intervalDifferenceDate.d.ts +30 -0
- package/dist/plain/interval/intervalDifferenceDate.js +87 -0
- package/dist/plain/interval/intervalDifferenceDateTime.d.ts +24 -0
- package/dist/plain/interval/intervalDifferenceDateTime.js +69 -0
- package/dist/plain/interval/intervalDifferenceTime.d.ts +25 -0
- package/dist/plain/interval/intervalDifferenceTime.js +70 -0
- package/dist/plain/interval/intervalDivideEquallyDate.d.ts +33 -0
- package/dist/plain/interval/intervalDivideEquallyDate.js +70 -0
- package/dist/plain/interval/intervalDivideEquallyDateTime.d.ts +27 -0
- package/dist/plain/interval/intervalDivideEquallyDateTime.js +62 -0
- package/dist/plain/interval/intervalDivideEquallyTime.d.ts +28 -0
- package/dist/plain/interval/intervalDivideEquallyTime.js +63 -0
- package/dist/plain/interval/intervalEngulfsDate.d.ts +24 -0
- package/dist/plain/interval/intervalEngulfsDate.js +57 -0
- package/dist/plain/interval/intervalEngulfsDateTime.d.ts +22 -0
- package/dist/plain/interval/intervalEngulfsDateTime.js +54 -0
- package/dist/plain/interval/intervalEngulfsTime.d.ts +22 -0
- package/dist/plain/interval/intervalEngulfsTime.js +54 -0
- package/dist/plain/interval/intervalFromDurationDate.d.ts +39 -0
- package/dist/plain/interval/intervalFromDurationDate.js +71 -0
- package/dist/plain/interval/intervalFromDurationDateTime.d.ts +33 -0
- package/dist/plain/interval/intervalFromDurationDateTime.js +58 -0
- package/dist/plain/interval/intervalFromDurationTime.d.ts +38 -0
- package/dist/plain/interval/intervalFromDurationTime.js +69 -0
- package/dist/plain/interval/intervalIntersectionDate.d.ts +28 -0
- package/dist/plain/interval/intervalIntersectionDate.js +70 -0
- package/dist/plain/interval/intervalIntersectionDateTime.d.ts +23 -0
- package/dist/plain/interval/intervalIntersectionDateTime.js +57 -0
- package/dist/plain/interval/intervalIntersectionTime.d.ts +24 -0
- package/dist/plain/interval/intervalIntersectionTime.js +58 -0
- package/dist/plain/interval/intervalLengthDate.d.ts +31 -0
- package/dist/plain/interval/intervalLengthDate.js +56 -0
- package/dist/plain/interval/intervalLengthDateTime.d.ts +24 -0
- package/dist/plain/interval/intervalLengthDateTime.js +50 -0
- package/dist/plain/interval/intervalLengthTime.d.ts +23 -0
- package/dist/plain/interval/intervalLengthTime.js +49 -0
- package/dist/plain/interval/intervalOverlappingDaysDate.d.ts +33 -0
- package/dist/plain/interval/intervalOverlappingDaysDate.js +78 -0
- package/dist/plain/interval/intervalOverlappingDaysDateTime.d.ts +28 -0
- package/dist/plain/interval/intervalOverlappingDaysDateTime.js +67 -0
- package/dist/plain/interval/intervalSplitAtDate.d.ts +34 -0
- package/dist/plain/interval/intervalSplitAtDate.js +73 -0
- package/dist/plain/interval/intervalSplitAtDateTime.d.ts +28 -0
- package/dist/plain/interval/intervalSplitAtDateTime.js +62 -0
- package/dist/plain/interval/intervalSplitAtTime.d.ts +30 -0
- package/dist/plain/interval/intervalSplitAtTime.js +64 -0
- package/dist/plain/interval/intervalUnionDate.d.ts +29 -0
- package/dist/plain/interval/intervalUnionDate.js +71 -0
- package/dist/plain/interval/intervalUnionDateTime.d.ts +24 -0
- package/dist/plain/interval/intervalUnionDateTime.js +58 -0
- package/dist/plain/interval/intervalUnionTime.d.ts +24 -0
- package/dist/plain/interval/intervalUnionTime.js +58 -0
- package/dist/plain/interval/intervalXorAllDate.d.ts +35 -0
- package/dist/plain/interval/intervalXorAllDate.js +89 -0
- package/dist/plain/interval/intervalXorAllDateTime.d.ts +29 -0
- package/dist/plain/interval/intervalXorAllDateTime.js +77 -0
- package/dist/plain/interval/intervalXorAllTime.d.ts +28 -0
- package/dist/plain/interval/intervalXorAllTime.js +76 -0
- package/dist/plain/interval/intervalXorDate.d.ts +30 -0
- package/dist/plain/interval/intervalXorDate.js +106 -0
- package/dist/plain/interval/intervalXorDateTime.d.ts +25 -0
- package/dist/plain/interval/intervalXorDateTime.js +90 -0
- package/dist/plain/interval/intervalXorTime.d.ts +26 -0
- package/dist/plain/interval/intervalXorTime.js +91 -0
- package/dist/plain/interval/intervalsOverlapDate.d.ts +23 -0
- package/dist/plain/interval/intervalsOverlapDate.js +56 -0
- package/dist/plain/interval/intervalsOverlapDateTime.d.ts +20 -0
- package/dist/plain/interval/intervalsOverlapDateTime.js +52 -0
- package/dist/plain/interval/intervalsOverlapTime.d.ts +21 -0
- package/dist/plain/interval/intervalsOverlapTime.js +53 -0
- package/dist/plain/interval/mergeIntervalsDate.d.ts +31 -0
- package/dist/plain/interval/mergeIntervalsDate.js +67 -0
- package/dist/plain/interval/mergeIntervalsDateTime.d.ts +26 -0
- package/dist/plain/interval/mergeIntervalsDateTime.js +58 -0
- package/dist/plain/interval/mergeIntervalsTime.d.ts +26 -0
- package/dist/plain/interval/mergeIntervalsTime.js +57 -0
- package/dist/plain/interval/splitIntervalByUnitDate.d.ts +32 -0
- package/dist/plain/interval/splitIntervalByUnitDate.js +80 -0
- package/dist/plain/interval/splitIntervalByUnitDateTime.d.ts +24 -0
- package/dist/plain/interval/splitIntervalByUnitDateTime.js +72 -0
- package/dist/plain/interval/splitIntervalByUnitTime.d.ts +25 -0
- package/dist/plain/interval/splitIntervalByUnitTime.js +73 -0
- package/dist/plain/interval/validate/index.d.ts +3 -0
- package/dist/plain/interval/validate/index.js +3 -0
- package/dist/plain/interval/validate/isValidDateInterval.d.ts +21 -0
- package/dist/plain/interval/validate/isValidDateInterval.js +37 -0
- package/dist/plain/interval/validate/isValidDateTimeInterval.d.ts +18 -0
- package/dist/plain/interval/validate/isValidDateTimeInterval.js +33 -0
- package/dist/plain/interval/validate/isValidTimeInterval.d.ts +18 -0
- package/dist/plain/interval/validate/isValidTimeInterval.js +48 -0
- package/dist/plain/locale/getLocaleEraNames.d.ts +23 -0
- package/dist/plain/locale/getLocaleEraNames.js +66 -0
- package/dist/plain/locale/getLocaleMeridiems.d.ts +19 -0
- package/dist/plain/locale/getLocaleMeridiems.js +44 -0
- package/dist/plain/locale/getLocaleMonthNames.d.ts +28 -0
- package/dist/plain/locale/getLocaleMonthNames.js +45 -0
- package/dist/plain/locale/getLocaleWeekdayNames.d.ts +25 -0
- package/dist/plain/locale/getLocaleWeekdayNames.js +48 -0
- package/dist/plain/locale/index.d.ts +4 -0
- package/dist/plain/locale/index.js +4 -0
- package/dist/plain/map/index.d.ts +2 -0
- package/dist/plain/map/index.js +2 -0
- package/dist/plain/map/mapDatesInRange.d.ts +19 -0
- package/dist/plain/map/mapDatesInRange.js +46 -0
- package/dist/plain/map/mapDaysInMonth.d.ts +15 -0
- package/dist/plain/map/mapDaysInMonth.js +31 -0
- package/dist/plain/parse/index.d.ts +29 -0
- package/dist/plain/parse/index.js +29 -0
- package/dist/plain/parse/parseDateTimeWithPattern.d.ts +85 -0
- package/dist/plain/parse/parseDateTimeWithPattern.js +116 -0
- package/dist/plain/parse/parseDateWithPattern.d.ts +68 -0
- package/dist/plain/parse/parseDateWithPattern.js +91 -0
- package/dist/plain/parse/parseDayFromDate.d.ts +13 -0
- package/dist/plain/parse/parseDayFromDate.js +25 -0
- package/dist/plain/parse/parseDayFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseDayFromDateTime.js +26 -0
- package/dist/plain/parse/parseDayOfWeekFromDate.d.ts +15 -0
- package/dist/plain/parse/parseDayOfWeekFromDate.js +28 -0
- package/dist/plain/parse/parseDayOfWeekFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseDayOfWeekFromDateTime.js +27 -0
- package/dist/plain/parse/parseHourFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseHourFromDateTime.js +26 -0
- package/dist/plain/parse/parseHourFromTime.d.ts +13 -0
- package/dist/plain/parse/parseHourFromTime.js +25 -0
- package/dist/plain/parse/parseMicrosecondFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseMicrosecondFromDateTime.js +26 -0
- package/dist/plain/parse/parseMicrosecondFromTime.d.ts +11 -0
- package/dist/plain/parse/parseMicrosecondFromTime.js +23 -0
- package/dist/plain/parse/parseMillisecondFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseMillisecondFromDateTime.js +26 -0
- package/dist/plain/parse/parseMillisecondFromTime.d.ts +14 -0
- package/dist/plain/parse/parseMillisecondFromTime.js +26 -0
- package/dist/plain/parse/parseMinuteFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseMinuteFromDateTime.js +26 -0
- package/dist/plain/parse/parseMinuteFromTime.d.ts +14 -0
- package/dist/plain/parse/parseMinuteFromTime.js +26 -0
- package/dist/plain/parse/parseMonthFromDate.d.ts +13 -0
- package/dist/plain/parse/parseMonthFromDate.js +25 -0
- package/dist/plain/parse/parseMonthFromDateTime.d.ts +13 -0
- package/dist/plain/parse/parseMonthFromDateTime.js +25 -0
- package/dist/plain/parse/parseNanosecondFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseNanosecondFromDateTime.js +26 -0
- package/dist/plain/parse/parseNanosecondFromTime.d.ts +14 -0
- package/dist/plain/parse/parseNanosecondFromTime.js +26 -0
- package/dist/plain/parse/parseSecondFromDateTime.d.ts +14 -0
- package/dist/plain/parse/parseSecondFromDateTime.js +26 -0
- package/dist/plain/parse/parseSecondFromTime.d.ts +14 -0
- package/dist/plain/parse/parseSecondFromTime.js +26 -0
- package/dist/plain/parse/parseSql.d.ts +23 -0
- package/dist/plain/parse/parseSql.js +36 -0
- package/dist/plain/parse/parseTimeWithPattern.d.ts +57 -0
- package/dist/plain/parse/parseTimeWithPattern.js +85 -0
- package/dist/plain/parse/parseUnitFromDate.d.ts +23 -0
- package/dist/plain/parse/parseUnitFromDate.js +49 -0
- package/dist/plain/parse/parseUnitFromDateTime.d.ts +22 -0
- package/dist/plain/parse/parseUnitFromDateTime.js +56 -0
- package/dist/plain/parse/parseUnitFromTime.d.ts +18 -0
- package/dist/plain/parse/parseUnitFromTime.js +42 -0
- package/dist/plain/parse/parseWeekFromDate.d.ts +19 -0
- package/dist/plain/parse/parseWeekFromDate.js +30 -0
- package/dist/plain/parse/parseWeekFromDateTime.d.ts +18 -0
- package/dist/plain/parse/parseWeekFromDateTime.js +29 -0
- package/dist/plain/parse/parseYearFromDate.d.ts +13 -0
- package/dist/plain/parse/parseYearFromDate.js +25 -0
- package/dist/plain/parse/parseYearFromDateTime.d.ts +13 -0
- package/dist/plain/parse/parseYearFromDateTime.js +25 -0
- package/dist/plain/validate/index.d.ts +19 -0
- package/dist/plain/validate/index.js +19 -0
- package/dist/plain/validate/isLeapSecond.d.ts +16 -0
- package/dist/plain/validate/isLeapSecond.js +19 -0
- package/dist/plain/validate/isLeapYear.d.ts +14 -0
- package/dist/plain/validate/isLeapYear.js +23 -0
- package/dist/plain/validate/isValidCalendarDate.d.ts +17 -0
- package/dist/plain/validate/isValidCalendarDate.js +29 -0
- package/dist/plain/validate/isValidDate.d.ts +16 -0
- package/dist/plain/validate/isValidDate.js +33 -0
- package/dist/plain/validate/isValidDateCycleField.d.ts +21 -0
- package/dist/plain/validate/isValidDateCycleField.js +25 -0
- package/dist/plain/validate/isValidDateDurationUnit.d.ts +16 -0
- package/dist/plain/validate/isValidDateDurationUnit.js +17 -0
- package/dist/plain/validate/isValidDateRange.d.ts +26 -0
- package/dist/plain/validate/isValidDateRange.js +47 -0
- package/dist/plain/validate/isValidDateTime.d.ts +16 -0
- package/dist/plain/validate/isValidDateTime.js +33 -0
- package/dist/plain/validate/isValidDateTimeCycleField.d.ts +16 -0
- package/dist/plain/validate/isValidDateTimeCycleField.js +19 -0
- package/dist/plain/validate/isValidDateTimeDurationUnit.d.ts +16 -0
- package/dist/plain/validate/isValidDateTimeDurationUnit.js +26 -0
- package/dist/plain/validate/isValidDateTimeRange.d.ts +24 -0
- package/dist/plain/validate/isValidDateTimeRange.js +39 -0
- package/dist/plain/validate/isValidDateTimeUnit.d.ts +19 -0
- package/dist/plain/validate/isValidDateTimeUnit.js +32 -0
- package/dist/plain/validate/isValidDateUnit.d.ts +21 -0
- package/dist/plain/validate/isValidDateUnit.js +25 -0
- package/dist/plain/validate/isValidIsoDateLike.d.ts +17 -0
- package/dist/plain/validate/isValidIsoDateLike.js +43 -0
- package/dist/plain/validate/isValidTime.d.ts +16 -0
- package/dist/plain/validate/isValidTime.js +33 -0
- package/dist/plain/validate/isValidTimeCycleField.d.ts +18 -0
- package/dist/plain/validate/isValidTimeCycleField.js +27 -0
- package/dist/plain/validate/isValidTimeDurationUnit.d.ts +16 -0
- package/dist/plain/validate/isValidTimeDurationUnit.js +22 -0
- package/dist/plain/validate/isValidTimeRange.d.ts +24 -0
- package/dist/plain/validate/isValidTimeRange.js +51 -0
- package/dist/plain/validate/isValidTimeUnit.d.ts +19 -0
- package/dist/plain/validate/isValidTimeUnit.js +28 -0
- package/dist/regex/calendar-date.d.ts +1 -0
- package/dist/regex/calendar-date.js +11 -0
- package/dist/regex/calendar-zoned-date-time.d.ts +1 -0
- package/dist/regex/calendar-zoned-date-time.js +41 -0
- package/dist/regex/date-time.d.ts +1 -0
- package/dist/regex/date-time.js +2 -0
- package/dist/regex/date.d.ts +4 -0
- package/dist/regex/date.js +5 -0
- package/dist/regex/http-date.d.ts +1 -0
- package/dist/regex/http-date.js +7 -0
- package/dist/regex/index.d.ts +13 -0
- package/dist/regex/index.js +13 -0
- package/dist/regex/leap-second.d.ts +1 -0
- package/dist/regex/leap-second.js +2 -0
- package/dist/regex/rfc-2822.d.ts +1 -0
- package/dist/regex/rfc-2822.js +9 -0
- package/dist/regex/rfc-3339.d.ts +1 -0
- package/dist/regex/rfc-3339.js +7 -0
- package/dist/regex/sql-date-time.d.ts +1 -0
- package/dist/regex/sql-date-time.js +7 -0
- package/dist/regex/time-zone-like.d.ts +1 -0
- package/dist/regex/time-zone-like.js +1 -0
- package/dist/regex/time.d.ts +6 -0
- package/dist/regex/time.js +9 -0
- package/dist/regex/unix.d.ts +2 -0
- package/dist/regex/unix.js +2 -0
- package/dist/regex/utc-date-time.d.ts +1 -0
- package/dist/regex/utc-date-time.js +2 -0
- package/dist/types/calendar-system.d.ts +1 -0
- package/dist/types/calendar-system.js +0 -0
- package/dist/types/date-cycle-field.d.ts +1 -0
- package/dist/types/date-cycle-field.js +0 -0
- package/dist/types/date-duration-unit.d.ts +2 -0
- package/dist/types/date-duration-unit.js +0 -0
- package/dist/types/date-time-cycle-field.d.ts +3 -0
- package/dist/types/date-time-cycle-field.js +0 -0
- package/dist/types/date-time-duration-units.d.ts +2 -0
- package/dist/types/date-time-duration-units.js +0 -0
- package/dist/types/date-time-unit.d.ts +2 -0
- package/dist/types/date-time-unit.js +0 -0
- package/dist/types/date-unit.d.ts +2 -0
- package/dist/types/date-unit.js +0 -0
- package/dist/types/disambiguation.d.ts +2 -0
- package/dist/types/disambiguation.js +0 -0
- package/dist/types/duration-relative-to.d.ts +2 -0
- package/dist/types/duration-relative-to.js +0 -0
- package/dist/types/duration-string-options.d.ts +6 -0
- package/dist/types/duration-string-options.js +0 -0
- package/dist/types/fractional-digit.d.ts +1 -0
- package/dist/types/fractional-digit.js +0 -0
- package/dist/types/index.d.ts +18 -0
- package/dist/types/index.js +18 -0
- package/dist/types/offset.d.ts +2 -0
- package/dist/types/offset.js +0 -0
- package/dist/types/overflow.d.ts +2 -0
- package/dist/types/overflow.js +0 -0
- package/dist/types/relative-rounding-method.d.ts +1 -0
- package/dist/types/relative-rounding-method.js +0 -0
- package/dist/types/rounding-options.d.ts +6 -0
- package/dist/types/rounding-options.js +0 -0
- package/dist/types/time-cycle-field.d.ts +1 -0
- package/dist/types/time-cycle-field.js +0 -0
- package/dist/types/time-duration-unit.d.ts +2 -0
- package/dist/types/time-duration-unit.js +0 -0
- package/dist/types/time-unit.d.ts +2 -0
- package/dist/types/time-unit.js +0 -0
- package/dist/unix/calculate/addUnix.d.ts +25 -0
- package/dist/unix/calculate/addUnix.js +51 -0
- package/dist/unix/calculate/diffUnix.d.ts +30 -0
- package/dist/unix/calculate/diffUnix.js +66 -0
- package/dist/unix/calculate/diffUnixAsDuration.d.ts +35 -0
- package/dist/unix/calculate/diffUnixAsDuration.js +56 -0
- package/dist/unix/calculate/endOfQuarterForUnix.d.ts +23 -0
- package/dist/unix/calculate/endOfQuarterForUnix.js +56 -0
- package/dist/unix/calculate/endOfUnix.d.ts +30 -0
- package/dist/unix/calculate/endOfUnix.js +26 -0
- package/dist/unix/calculate/index.d.ts +14 -0
- package/dist/unix/calculate/index.js +14 -0
- package/dist/unix/calculate/isBetweenUnix.d.ts +23 -0
- package/dist/unix/calculate/isBetweenUnix.js +54 -0
- package/dist/unix/calculate/maxUnix.d.ts +13 -0
- package/dist/unix/calculate/maxUnix.js +21 -0
- package/dist/unix/calculate/minUnix.d.ts +13 -0
- package/dist/unix/calculate/minUnix.js +21 -0
- package/dist/unix/calculate/roundUnix.d.ts +27 -0
- package/dist/unix/calculate/roundUnix.js +62 -0
- package/dist/unix/calculate/setUnix.d.ts +35 -0
- package/dist/unix/calculate/setUnix.js +60 -0
- package/dist/unix/calculate/sortUnix.d.ts +16 -0
- package/dist/unix/calculate/sortUnix.js +28 -0
- package/dist/unix/calculate/startOfQuarterForUnix.d.ts +23 -0
- package/dist/unix/calculate/startOfQuarterForUnix.js +46 -0
- package/dist/unix/calculate/startOfUnix.d.ts +30 -0
- package/dist/unix/calculate/startOfUnix.js +26 -0
- package/dist/unix/calculate/startOrEndOfUnix.d.ts +9 -0
- package/dist/unix/calculate/startOrEndOfUnix.js +122 -0
- package/dist/unix/calculate/subtractUnix.d.ts +25 -0
- package/dist/unix/calculate/subtractUnix.js +51 -0
- package/dist/unix/compare/areUnixEqual.d.ts +21 -0
- package/dist/unix/compare/areUnixEqual.js +33 -0
- package/dist/unix/compare/areUnixEqualBy.d.ts +31 -0
- package/dist/unix/compare/areUnixEqualBy.js +39 -0
- package/dist/unix/compare/index.d.ts +4 -0
- package/dist/unix/compare/index.js +4 -0
- package/dist/unix/compare/isAfterUnix.d.ts +19 -0
- package/dist/unix/compare/isAfterUnix.js +31 -0
- package/dist/unix/compare/isBeforeUnix.d.ts +21 -0
- package/dist/unix/compare/isBeforeUnix.js +33 -0
- package/dist/unix/convert/convertUnixToPlainDate.d.ts +19 -0
- package/dist/unix/convert/convertUnixToPlainDate.js +38 -0
- package/dist/unix/convert/convertUnixToPlainDateTime.d.ts +19 -0
- package/dist/unix/convert/convertUnixToPlainDateTime.js +38 -0
- package/dist/unix/convert/convertUnixToPlainTime.d.ts +19 -0
- package/dist/unix/convert/convertUnixToPlainTime.js +38 -0
- package/dist/unix/convert/convertUnixToUtc.d.ts +17 -0
- package/dist/unix/convert/convertUnixToUtc.js +31 -0
- package/dist/unix/convert/convertUnixToZoned.d.ts +18 -0
- package/dist/unix/convert/convertUnixToZoned.js +35 -0
- package/dist/unix/convert/index.d.ts +5 -0
- package/dist/unix/convert/index.js +5 -0
- package/dist/unix/format/formatCalendarUnix.d.ts +29 -0
- package/dist/unix/format/formatCalendarUnix.js +107 -0
- package/dist/unix/format/formatRelativeUnix.d.ts +34 -0
- package/dist/unix/format/formatRelativeUnix.js +118 -0
- package/dist/unix/format/formatUnix.d.ts +6 -0
- package/dist/unix/format/formatUnix.js +41 -0
- package/dist/unix/format/index.d.ts +3 -0
- package/dist/unix/format/index.js +3 -0
- package/dist/unix/get/getUnixDay.d.ts +13 -0
- package/dist/unix/get/getUnixDay.js +24 -0
- package/dist/unix/get/getUnixHour.d.ts +13 -0
- package/dist/unix/get/getUnixHour.js +24 -0
- package/dist/unix/get/getUnixMicrosecond.d.ts +13 -0
- package/dist/unix/get/getUnixMicrosecond.js +23 -0
- package/dist/unix/get/getUnixMillisecond.d.ts +13 -0
- package/dist/unix/get/getUnixMillisecond.js +24 -0
- package/dist/unix/get/getUnixMinute.d.ts +13 -0
- package/dist/unix/get/getUnixMinute.js +24 -0
- package/dist/unix/get/getUnixMonth.d.ts +13 -0
- package/dist/unix/get/getUnixMonth.js +24 -0
- package/dist/unix/get/getUnixNanosecond.d.ts +13 -0
- package/dist/unix/get/getUnixNanosecond.js +23 -0
- package/dist/unix/get/getUnixNow.d.ts +15 -0
- package/dist/unix/get/getUnixNow.js +28 -0
- package/dist/unix/get/getUnixNowUnit.d.ts +18 -0
- package/dist/unix/get/getUnixNowUnit.js +61 -0
- package/dist/unix/get/getUnixSecond.d.ts +13 -0
- package/dist/unix/get/getUnixSecond.js +24 -0
- package/dist/unix/get/getUnixYear.d.ts +13 -0
- package/dist/unix/get/getUnixYear.js +24 -0
- package/dist/unix/get/index.d.ts +11 -0
- package/dist/unix/get/index.js +11 -0
- package/dist/unix/index.d.ts +8 -0
- package/dist/unix/index.js +8 -0
- package/dist/unix/interval/index.d.ts +18 -0
- package/dist/unix/interval/index.js +18 -0
- package/dist/unix/interval/intervalAbutsUnix.d.ts +22 -0
- package/dist/unix/interval/intervalAbutsUnix.js +54 -0
- package/dist/unix/interval/intervalContainsUnix.d.ts +25 -0
- package/dist/unix/interval/intervalContainsUnix.js +60 -0
- package/dist/unix/interval/intervalCountUnix.d.ts +28 -0
- package/dist/unix/interval/intervalCountUnix.js +44 -0
- package/dist/unix/interval/intervalDifferenceUnix.d.ts +24 -0
- package/dist/unix/interval/intervalDifferenceUnix.js +57 -0
- package/dist/unix/interval/intervalDivideEquallyUnix.d.ts +27 -0
- package/dist/unix/interval/intervalDivideEquallyUnix.js +54 -0
- package/dist/unix/interval/intervalEngulfsUnix.d.ts +22 -0
- package/dist/unix/interval/intervalEngulfsUnix.js +46 -0
- package/dist/unix/interval/intervalFromDurationUnix.d.ts +37 -0
- package/dist/unix/interval/intervalFromDurationUnix.js +73 -0
- package/dist/unix/interval/intervalIntersectionUnix.d.ts +24 -0
- package/dist/unix/interval/intervalIntersectionUnix.js +57 -0
- package/dist/unix/interval/intervalLengthUnix.d.ts +24 -0
- package/dist/unix/interval/intervalLengthUnix.js +39 -0
- package/dist/unix/interval/intervalOverlappingDaysUnix.d.ts +34 -0
- package/dist/unix/interval/intervalOverlappingDaysUnix.js +89 -0
- package/dist/unix/interval/intervalSplitAtUnix.d.ts +26 -0
- package/dist/unix/interval/intervalSplitAtUnix.js +55 -0
- package/dist/unix/interval/intervalUnionUnix.d.ts +25 -0
- package/dist/unix/interval/intervalUnionUnix.js +58 -0
- package/dist/unix/interval/intervalXorAllUnix.d.ts +28 -0
- package/dist/unix/interval/intervalXorAllUnix.js +77 -0
- package/dist/unix/interval/intervalXorUnix.d.ts +25 -0
- package/dist/unix/interval/intervalXorUnix.js +70 -0
- package/dist/unix/interval/intervalsOverlapUnix.d.ts +21 -0
- package/dist/unix/interval/intervalsOverlapUnix.js +51 -0
- package/dist/unix/interval/mergeIntervalsUnix.d.ts +25 -0
- package/dist/unix/interval/mergeIntervalsUnix.js +55 -0
- package/dist/unix/interval/resolveUnixIntervalPair.d.ts +7 -0
- package/dist/unix/interval/resolveUnixIntervalPair.js +36 -0
- package/dist/unix/interval/splitIntervalByUnitUnix.d.ts +27 -0
- package/dist/unix/interval/splitIntervalByUnitUnix.js +85 -0
- package/dist/unix/interval/validate/index.d.ts +1 -0
- package/dist/unix/interval/validate/index.js +1 -0
- package/dist/unix/interval/validate/isValidUnixInterval.d.ts +18 -0
- package/dist/unix/interval/validate/isValidUnixInterval.js +31 -0
- package/dist/unix/parse/index.d.ts +12 -0
- package/dist/unix/parse/index.js +12 -0
- package/dist/unix/parse/parseDateFromUnix.d.ts +20 -0
- package/dist/unix/parse/parseDateFromUnix.js +45 -0
- package/dist/unix/parse/parseDayFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseDayFromUnix.js +17 -0
- package/dist/unix/parse/parseDayOfWeekFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseDayOfWeekFromUnix.js +44 -0
- package/dist/unix/parse/parseHourFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseHourFromUnix.js +17 -0
- package/dist/unix/parse/parseMicrosecondFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseMicrosecondFromUnix.js +17 -0
- package/dist/unix/parse/parseMillisecondFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseMillisecondFromUnix.js +17 -0
- package/dist/unix/parse/parseMinuteFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseMinuteFromUnix.js +17 -0
- package/dist/unix/parse/parseMonthFromUnix.d.ts +19 -0
- package/dist/unix/parse/parseMonthFromUnix.js +18 -0
- package/dist/unix/parse/parseNanosecondFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseNanosecondFromUnix.js +17 -0
- package/dist/unix/parse/parseSecondFromUnix.d.ts +18 -0
- package/dist/unix/parse/parseSecondFromUnix.js +17 -0
- package/dist/unix/parse/parseTimeFromUnix.d.ts +20 -0
- package/dist/unix/parse/parseTimeFromUnix.js +45 -0
- package/dist/unix/parse/parseUnitFromUnix.d.ts +25 -0
- package/dist/unix/parse/parseUnitFromUnix.js +77 -0
- package/dist/unix/parse/parseWeekFromUnix.d.ts +20 -0
- package/dist/unix/parse/parseWeekFromUnix.js +47 -0
- package/dist/unix/parse/parseYearFromUnix.d.ts +19 -0
- package/dist/unix/parse/parseYearFromUnix.js +18 -0
- package/dist/unix/validate/index.d.ts +4 -0
- package/dist/unix/validate/index.js +4 -0
- package/dist/unix/validate/isValidUnixMilliseconds.d.ts +14 -0
- package/dist/unix/validate/isValidUnixMilliseconds.js +19 -0
- package/dist/unix/validate/isValidUnixRange.d.ts +24 -0
- package/dist/unix/validate/isValidUnixRange.js +34 -0
- package/dist/unix/validate/isValidUnixSeconds.d.ts +14 -0
- package/dist/unix/validate/isValidUnixSeconds.js +19 -0
- package/dist/unix/validate/isValidUnixUnit.d.ts +18 -0
- package/dist/unix/validate/isValidUnixUnit.js +22 -0
- package/dist/utc/calculate/addUtc.d.ts +23 -0
- package/dist/utc/calculate/addUtc.js +42 -0
- package/dist/utc/calculate/diffUtc.d.ts +27 -0
- package/dist/utc/calculate/diffUtc.js +61 -0
- package/dist/utc/calculate/diffUtcAsDuration.d.ts +31 -0
- package/dist/utc/calculate/diffUtcAsDuration.js +50 -0
- package/dist/utc/calculate/endOfQuarterForUtc.d.ts +14 -0
- package/dist/utc/calculate/endOfQuarterForUtc.js +49 -0
- package/dist/utc/calculate/endOfUtc.d.ts +22 -0
- package/dist/utc/calculate/endOfUtc.js +21 -0
- package/dist/utc/calculate/index.d.ts +14 -0
- package/dist/utc/calculate/index.js +14 -0
- package/dist/utc/calculate/isBetweenUtc.d.ts +21 -0
- package/dist/utc/calculate/isBetweenUtc.js +52 -0
- package/dist/utc/calculate/maxUtc.d.ts +15 -0
- package/dist/utc/calculate/maxUtc.js +35 -0
- package/dist/utc/calculate/minUtc.d.ts +15 -0
- package/dist/utc/calculate/minUtc.js +35 -0
- package/dist/utc/calculate/roundUtc.d.ts +26 -0
- package/dist/utc/calculate/roundUtc.js +56 -0
- package/dist/utc/calculate/setUtc.d.ts +38 -0
- package/dist/utc/calculate/setUtc.js +54 -0
- package/dist/utc/calculate/sortUtc.d.ts +17 -0
- package/dist/utc/calculate/sortUtc.js +36 -0
- package/dist/utc/calculate/startOfQuarterForUtc.d.ts +13 -0
- package/dist/utc/calculate/startOfQuarterForUtc.js +32 -0
- package/dist/utc/calculate/startOfUtc.d.ts +22 -0
- package/dist/utc/calculate/startOfUtc.js +21 -0
- package/dist/utc/calculate/startOrEndOfUtc.d.ts +6 -0
- package/dist/utc/calculate/startOrEndOfUtc.js +143 -0
- package/dist/utc/calculate/subtractUtc.d.ts +23 -0
- package/dist/utc/calculate/subtractUtc.js +42 -0
- package/dist/utc/chop/chopUtc.d.ts +14 -0
- package/dist/utc/chop/chopUtc.js +21 -0
- package/dist/utc/chop/index.d.ts +1 -0
- package/dist/utc/chop/index.js +1 -0
- package/dist/utc/compare/areUtcEqual.d.ts +15 -0
- package/dist/utc/compare/areUtcEqual.js +29 -0
- package/dist/utc/compare/areUtcEqualBy.d.ts +30 -0
- package/dist/utc/compare/areUtcEqualBy.js +45 -0
- package/dist/utc/compare/index.d.ts +4 -0
- package/dist/utc/compare/index.js +4 -0
- package/dist/utc/compare/isAfterUtc.d.ts +15 -0
- package/dist/utc/compare/isAfterUtc.js +28 -0
- package/dist/utc/compare/isBeforeUtc.d.ts +15 -0
- package/dist/utc/compare/isBeforeUtc.js +29 -0
- package/dist/utc/convert/convertUtcToPlainDate.d.ts +18 -0
- package/dist/utc/convert/convertUtcToPlainDate.js +35 -0
- package/dist/utc/convert/convertUtcToPlainDateTime.d.ts +18 -0
- package/dist/utc/convert/convertUtcToPlainDateTime.js +41 -0
- package/dist/utc/convert/convertUtcToPlainTime.d.ts +18 -0
- package/dist/utc/convert/convertUtcToPlainTime.js +35 -0
- package/dist/utc/convert/convertUtcToUnix.d.ts +17 -0
- package/dist/utc/convert/convertUtcToUnix.js +33 -0
- package/dist/utc/convert/convertUtcToZoned.d.ts +15 -0
- package/dist/utc/convert/convertUtcToZoned.js +28 -0
- package/dist/utc/convert/index.d.ts +5 -0
- package/dist/utc/convert/index.js +5 -0
- package/dist/utc/format/formatCalendarUtc.d.ts +28 -0
- package/dist/utc/format/formatCalendarUtc.js +68 -0
- package/dist/utc/format/formatHttp.d.ts +22 -0
- package/dist/utc/format/formatHttp.js +42 -0
- package/dist/utc/format/formatRelativeUtc.d.ts +33 -0
- package/dist/utc/format/formatRelativeUtc.js +76 -0
- package/dist/utc/format/formatUtc.d.ts +5 -0
- package/dist/utc/format/formatUtc.js +23 -0
- package/dist/utc/format/index.d.ts +4 -0
- package/dist/utc/format/index.js +4 -0
- package/dist/utc/get/getUtcDay.d.ts +13 -0
- package/dist/utc/get/getUtcDay.js +24 -0
- package/dist/utc/get/getUtcHour.d.ts +13 -0
- package/dist/utc/get/getUtcHour.js +24 -0
- package/dist/utc/get/getUtcMicrosecond.d.ts +13 -0
- package/dist/utc/get/getUtcMicrosecond.js +23 -0
- package/dist/utc/get/getUtcMillisecond.d.ts +13 -0
- package/dist/utc/get/getUtcMillisecond.js +24 -0
- package/dist/utc/get/getUtcMinute.d.ts +13 -0
- package/dist/utc/get/getUtcMinute.js +24 -0
- package/dist/utc/get/getUtcMonth.d.ts +13 -0
- package/dist/utc/get/getUtcMonth.js +24 -0
- package/dist/utc/get/getUtcNanosecond.d.ts +13 -0
- package/dist/utc/get/getUtcNanosecond.js +23 -0
- package/dist/utc/get/getUtcNow.d.ts +12 -0
- package/dist/utc/get/getUtcNow.js +20 -0
- package/dist/utc/get/getUtcNowUnit.d.ts +18 -0
- package/dist/utc/get/getUtcNowUnit.js +61 -0
- package/dist/utc/get/getUtcSecond.d.ts +13 -0
- package/dist/utc/get/getUtcSecond.js +24 -0
- package/dist/utc/get/getUtcYear.d.ts +13 -0
- package/dist/utc/get/getUtcYear.js +24 -0
- package/dist/utc/get/index.d.ts +11 -0
- package/dist/utc/get/index.js +11 -0
- package/dist/utc/index.d.ts +9 -0
- package/dist/utc/index.js +9 -0
- package/dist/utc/interval/index.d.ts +18 -0
- package/dist/utc/interval/index.js +18 -0
- package/dist/utc/interval/intervalAbutsUtc.d.ts +22 -0
- package/dist/utc/interval/intervalAbutsUtc.js +70 -0
- package/dist/utc/interval/intervalContainsUtc.d.ts +23 -0
- package/dist/utc/interval/intervalContainsUtc.js +66 -0
- package/dist/utc/interval/intervalCountUtc.d.ts +28 -0
- package/dist/utc/interval/intervalCountUtc.js +68 -0
- package/dist/utc/interval/intervalDifferenceUtc.d.ts +24 -0
- package/dist/utc/interval/intervalDifferenceUtc.js +76 -0
- package/dist/utc/interval/intervalDivideEquallyUtc.d.ts +26 -0
- package/dist/utc/interval/intervalDivideEquallyUtc.js +65 -0
- package/dist/utc/interval/intervalEngulfsUtc.d.ts +22 -0
- package/dist/utc/interval/intervalEngulfsUtc.js +61 -0
- package/dist/utc/interval/intervalFromDurationUtc.d.ts +35 -0
- package/dist/utc/interval/intervalFromDurationUtc.js +64 -0
- package/dist/utc/interval/intervalIntersectionUtc.d.ts +23 -0
- package/dist/utc/interval/intervalIntersectionUtc.js +64 -0
- package/dist/utc/interval/intervalLengthUtc.d.ts +22 -0
- package/dist/utc/interval/intervalLengthUtc.js +52 -0
- package/dist/utc/interval/intervalOverlappingDaysUtc.d.ts +29 -0
- package/dist/utc/interval/intervalOverlappingDaysUtc.js +75 -0
- package/dist/utc/interval/intervalSplitAtUtc.d.ts +27 -0
- package/dist/utc/interval/intervalSplitAtUtc.js +64 -0
- package/dist/utc/interval/intervalUnionUtc.d.ts +24 -0
- package/dist/utc/interval/intervalUnionUtc.js +65 -0
- package/dist/utc/interval/intervalXorAllUtc.d.ts +28 -0
- package/dist/utc/interval/intervalXorAllUtc.js +81 -0
- package/dist/utc/interval/intervalXorUtc.d.ts +25 -0
- package/dist/utc/interval/intervalXorUtc.js +97 -0
- package/dist/utc/interval/intervalsOverlapUtc.d.ts +20 -0
- package/dist/utc/interval/intervalsOverlapUtc.js +59 -0
- package/dist/utc/interval/mergeIntervalsUtc.d.ts +25 -0
- package/dist/utc/interval/mergeIntervalsUtc.js +61 -0
- package/dist/utc/interval/splitIntervalByUnitUtc.d.ts +25 -0
- package/dist/utc/interval/splitIntervalByUnitUtc.js +78 -0
- package/dist/utc/interval/validate/index.d.ts +1 -0
- package/dist/utc/interval/validate/index.js +1 -0
- package/dist/utc/interval/validate/isValidUtcInterval.d.ts +19 -0
- package/dist/utc/interval/validate/isValidUtcInterval.js +40 -0
- package/dist/utc/parse/index.d.ts +15 -0
- package/dist/utc/parse/index.js +15 -0
- package/dist/utc/parse/parseDateFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseDateFromUtc.js +27 -0
- package/dist/utc/parse/parseDayFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseDayFromUtc.js +26 -0
- package/dist/utc/parse/parseDayOfWeekFromUtc.d.ts +14 -0
- package/dist/utc/parse/parseDayOfWeekFromUtc.js +27 -0
- package/dist/utc/parse/parseHourFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseHourFromUtc.js +26 -0
- package/dist/utc/parse/parseHttp.d.ts +24 -0
- package/dist/utc/parse/parseHttp.js +51 -0
- package/dist/utc/parse/parseMicrosecondFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseMicrosecondFromUtc.js +26 -0
- package/dist/utc/parse/parseMillisecondFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseMillisecondFromUtc.js +26 -0
- package/dist/utc/parse/parseMinuteFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseMinuteFromUtc.js +26 -0
- package/dist/utc/parse/parseMonthFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseMonthFromUtc.js +26 -0
- package/dist/utc/parse/parseNanosecondFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseNanosecondFromUtc.js +26 -0
- package/dist/utc/parse/parseSecondFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseSecondFromUtc.js +26 -0
- package/dist/utc/parse/parseTimeFromUtc.d.ts +18 -0
- package/dist/utc/parse/parseTimeFromUtc.js +35 -0
- package/dist/utc/parse/parseUnitFromUtc.d.ts +21 -0
- package/dist/utc/parse/parseUnitFromUtc.js +55 -0
- package/dist/utc/parse/parseWeekFromUtc.d.ts +16 -0
- package/dist/utc/parse/parseWeekFromUtc.js +30 -0
- package/dist/utc/parse/parseYearFromUtc.d.ts +13 -0
- package/dist/utc/parse/parseYearFromUtc.js +26 -0
- package/dist/utc/validate/index.d.ts +2 -0
- package/dist/utc/validate/index.js +2 -0
- package/dist/utc/validate/isValidUtc.d.ts +17 -0
- package/dist/utc/validate/isValidUtc.js +34 -0
- package/dist/utc/validate/isValidUtcRange.d.ts +25 -0
- package/dist/utc/validate/isValidUtcRange.js +44 -0
- package/dist/zoned/calculate/addZoned.d.ts +50 -0
- package/dist/zoned/calculate/addZoned.js +88 -0
- package/dist/zoned/calculate/addZonedBusinessDays.d.ts +18 -0
- package/dist/zoned/calculate/addZonedBusinessDays.js +30 -0
- package/dist/zoned/calculate/clampZoned.d.ts +20 -0
- package/dist/zoned/calculate/clampZoned.js +48 -0
- package/dist/zoned/calculate/closestZonedTo.d.ts +18 -0
- package/dist/zoned/calculate/closestZonedTo.js +46 -0
- package/dist/zoned/calculate/cycleZoned.d.ts +44 -0
- package/dist/zoned/calculate/cycleZoned.js +58 -0
- package/dist/zoned/calculate/diffZoned.d.ts +39 -0
- package/dist/zoned/calculate/diffZoned.js +76 -0
- package/dist/zoned/calculate/diffZonedAsDuration.d.ts +36 -0
- package/dist/zoned/calculate/diffZonedAsDuration.js +55 -0
- package/dist/zoned/calculate/endOfQuarterForZoned.d.ts +25 -0
- package/dist/zoned/calculate/endOfQuarterForZoned.js +50 -0
- package/dist/zoned/calculate/endOfZoned.d.ts +28 -0
- package/dist/zoned/calculate/endOfZoned.js +130 -0
- package/dist/zoned/calculate/getHoursInZonedDay.d.ts +22 -0
- package/dist/zoned/calculate/getHoursInZonedDay.js +45 -0
- package/dist/zoned/calculate/getLocaleZonedDayOfWeek.d.ts +20 -0
- package/dist/zoned/calculate/getLocaleZonedDayOfWeek.js +36 -0
- package/dist/zoned/calculate/getLocaleZonedEndOfWeek.d.ts +44 -0
- package/dist/zoned/calculate/getLocaleZonedEndOfWeek.js +68 -0
- package/dist/zoned/calculate/getLocaleZonedStartOfWeek.d.ts +44 -0
- package/dist/zoned/calculate/getLocaleZonedStartOfWeek.js +68 -0
- package/dist/zoned/calculate/getQuarterForZoned.d.ts +15 -0
- package/dist/zoned/calculate/getQuarterForZoned.js +28 -0
- package/dist/zoned/calculate/index.d.ts +23 -0
- package/dist/zoned/calculate/index.js +23 -0
- package/dist/zoned/calculate/maxZoned.d.ts +15 -0
- package/dist/zoned/calculate/maxZoned.js +35 -0
- package/dist/zoned/calculate/minZoned.d.ts +15 -0
- package/dist/zoned/calculate/minZoned.js +35 -0
- package/dist/zoned/calculate/roundZoned.d.ts +23 -0
- package/dist/zoned/calculate/roundZoned.js +55 -0
- package/dist/zoned/calculate/setZoned.d.ts +39 -0
- package/dist/zoned/calculate/setZoned.js +56 -0
- package/dist/zoned/calculate/sortZoned.d.ts +17 -0
- package/dist/zoned/calculate/sortZoned.js +36 -0
- package/dist/zoned/calculate/startOfQuarterForZoned.d.ts +25 -0
- package/dist/zoned/calculate/startOfQuarterForZoned.js +40 -0
- package/dist/zoned/calculate/startOfZoned.d.ts +27 -0
- package/dist/zoned/calculate/startOfZoned.js +122 -0
- package/dist/zoned/calculate/subtractZoned.d.ts +47 -0
- package/dist/zoned/calculate/subtractZoned.js +82 -0
- package/dist/zoned/calculate/subtractZonedBusinessDays.d.ts +18 -0
- package/dist/zoned/calculate/subtractZonedBusinessDays.js +28 -0
- package/dist/zoned/chop/chopZonedDate.d.ts +13 -0
- package/dist/zoned/chop/chopZonedDate.js +24 -0
- package/dist/zoned/chop/chopZonedDateTime.d.ts +13 -0
- package/dist/zoned/chop/chopZonedDateTime.js +26 -0
- package/dist/zoned/chop/chopZonedMilliseconds.d.ts +13 -0
- package/dist/zoned/chop/chopZonedMilliseconds.js +26 -0
- package/dist/zoned/chop/chopZonedSeconds.d.ts +13 -0
- package/dist/zoned/chop/chopZonedSeconds.js +26 -0
- package/dist/zoned/chop/chopZonedTime.d.ts +13 -0
- package/dist/zoned/chop/chopZonedTime.js +24 -0
- package/dist/zoned/chop/chopZonedTimezone.d.ts +13 -0
- package/dist/zoned/chop/chopZonedTimezone.js +24 -0
- package/dist/zoned/chop/index.d.ts +6 -0
- package/dist/zoned/chop/index.js +6 -0
- package/dist/zoned/compare/areZonedEqual.d.ts +15 -0
- package/dist/zoned/compare/areZonedEqual.js +45 -0
- package/dist/zoned/compare/areZonedEqualBy.d.ts +30 -0
- package/dist/zoned/compare/areZonedEqualBy.js +49 -0
- package/dist/zoned/compare/index.d.ts +12 -0
- package/dist/zoned/compare/index.js +12 -0
- package/dist/zoned/compare/isAfterZoned.d.ts +15 -0
- package/dist/zoned/compare/isAfterZoned.js +36 -0
- package/dist/zoned/compare/isBeforeZoned.d.ts +15 -0
- package/dist/zoned/compare/isBeforeZoned.js +36 -0
- package/dist/zoned/compare/isBetweenZoned.d.ts +19 -0
- package/dist/zoned/compare/isBetweenZoned.js +55 -0
- package/dist/zoned/compare/isInDaylightSaving.d.ts +25 -0
- package/dist/zoned/compare/isInDaylightSaving.js +68 -0
- package/dist/zoned/compare/isZonedBusinessDay.d.ts +22 -0
- package/dist/zoned/compare/isZonedBusinessDay.js +34 -0
- package/dist/zoned/compare/isZonedFuture.d.ts +18 -0
- package/dist/zoned/compare/isZonedFuture.js +31 -0
- package/dist/zoned/compare/isZonedPast.d.ts +18 -0
- package/dist/zoned/compare/isZonedPast.js +31 -0
- package/dist/zoned/compare/isZonedRelativeDay.d.ts +25 -0
- package/dist/zoned/compare/isZonedRelativeDay.js +40 -0
- package/dist/zoned/compare/isZonedThisUnit.d.ts +28 -0
- package/dist/zoned/compare/isZonedThisUnit.js +52 -0
- package/dist/zoned/compare/isZonedWeekend.d.ts +23 -0
- package/dist/zoned/compare/isZonedWeekend.js +39 -0
- package/dist/zoned/convert/convertPlainDateTimeToZoned.d.ts +26 -0
- package/dist/zoned/convert/convertPlainDateTimeToZoned.js +42 -0
- package/dist/zoned/convert/convertZonedToCalendar.d.ts +49 -0
- package/dist/zoned/convert/convertZonedToCalendar.js +67 -0
- package/dist/zoned/convert/convertZonedToPlainDateTime.d.ts +13 -0
- package/dist/zoned/convert/convertZonedToPlainDateTime.js +25 -0
- package/dist/zoned/convert/convertZonedToUnix.d.ts +17 -0
- package/dist/zoned/convert/convertZonedToUnix.js +34 -0
- package/dist/zoned/convert/convertZonedToUtc.d.ts +13 -0
- package/dist/zoned/convert/convertZonedToUtc.js +25 -0
- package/dist/zoned/convert/convertZonedToZoned.d.ts +14 -0
- package/dist/zoned/convert/convertZonedToZoned.js +27 -0
- package/dist/zoned/convert/index.d.ts +6 -0
- package/dist/zoned/convert/index.js +6 -0
- package/dist/zoned/format/formatCalendarZoned.d.ts +34 -0
- package/dist/zoned/format/formatCalendarZoned.js +65 -0
- package/dist/zoned/format/formatRelativeZoned.d.ts +44 -0
- package/dist/zoned/format/formatRelativeZoned.js +79 -0
- package/dist/zoned/format/formatRfc2822.d.ts +22 -0
- package/dist/zoned/format/formatRfc2822.js +47 -0
- package/dist/zoned/format/formatRfc3339.d.ts +24 -0
- package/dist/zoned/format/formatRfc3339.js +37 -0
- package/dist/zoned/format/formatTimeZoneName.d.ts +39 -0
- package/dist/zoned/format/formatTimeZoneName.js +56 -0
- package/dist/zoned/format/formatZonedDateTime.d.ts +17 -0
- package/dist/zoned/format/formatZonedDateTime.js +32 -0
- package/dist/zoned/format/formatZonedRange.d.ts +18 -0
- package/dist/zoned/format/formatZonedRange.js +48 -0
- package/dist/zoned/format/formatZonedToParts.d.ts +29 -0
- package/dist/zoned/format/formatZonedToParts.js +48 -0
- package/dist/zoned/format/index.d.ts +8 -0
- package/dist/zoned/format/index.js +8 -0
- package/dist/zoned/get/getDstTransitions.d.ts +36 -0
- package/dist/zoned/get/getDstTransitions.js +62 -0
- package/dist/zoned/get/getSystemTimeZone.d.ts +11 -0
- package/dist/zoned/get/getSystemTimeZone.js +19 -0
- package/dist/zoned/get/getTimeZoneOffset.d.ts +21 -0
- package/dist/zoned/get/getTimeZoneOffset.js +33 -0
- package/dist/zoned/get/getTimeZones.d.ts +12 -0
- package/dist/zoned/get/getTimeZones.js +19 -0
- package/dist/zoned/get/getZonedDay.d.ts +13 -0
- package/dist/zoned/get/getZonedDay.js +26 -0
- package/dist/zoned/get/getZonedDayOfWeek.d.ts +14 -0
- package/dist/zoned/get/getZonedDayOfWeek.js +26 -0
- package/dist/zoned/get/getZonedHour.d.ts +13 -0
- package/dist/zoned/get/getZonedHour.js +26 -0
- package/dist/zoned/get/getZonedMicrosecond.d.ts +13 -0
- package/dist/zoned/get/getZonedMicrosecond.js +26 -0
- package/dist/zoned/get/getZonedMillisecond.d.ts +13 -0
- package/dist/zoned/get/getZonedMillisecond.js +26 -0
- package/dist/zoned/get/getZonedMinute.d.ts +13 -0
- package/dist/zoned/get/getZonedMinute.js +26 -0
- package/dist/zoned/get/getZonedMonth.d.ts +13 -0
- package/dist/zoned/get/getZonedMonth.js +26 -0
- package/dist/zoned/get/getZonedNanosecond.d.ts +13 -0
- package/dist/zoned/get/getZonedNanosecond.js +26 -0
- package/dist/zoned/get/getZonedNow.d.ts +17 -0
- package/dist/zoned/get/getZonedNow.js +31 -0
- package/dist/zoned/get/getZonedNowUnit.d.ts +16 -0
- package/dist/zoned/get/getZonedNowUnit.js +72 -0
- package/dist/zoned/get/getZonedSecond.d.ts +13 -0
- package/dist/zoned/get/getZonedSecond.js +26 -0
- package/dist/zoned/get/getZonedToday.d.ts +13 -0
- package/dist/zoned/get/getZonedToday.js +26 -0
- package/dist/zoned/get/getZonedWeekOfYear.d.ts +14 -0
- package/dist/zoned/get/getZonedWeekOfYear.js +26 -0
- package/dist/zoned/get/getZonedYear.d.ts +13 -0
- package/dist/zoned/get/getZonedYear.js +26 -0
- package/dist/zoned/get/index.d.ts +18 -0
- package/dist/zoned/get/index.js +18 -0
- package/dist/zoned/index.d.ts +11 -0
- package/dist/zoned/index.js +12 -0
- package/dist/zoned/interval/index.d.ts +18 -0
- package/dist/zoned/interval/index.js +18 -0
- package/dist/zoned/interval/intervalAbutsZoned.d.ts +30 -0
- package/dist/zoned/interval/intervalAbutsZoned.js +74 -0
- package/dist/zoned/interval/intervalContainsZoned.d.ts +31 -0
- package/dist/zoned/interval/intervalContainsZoned.js +70 -0
- package/dist/zoned/interval/intervalCountZoned.d.ts +39 -0
- package/dist/zoned/interval/intervalCountZoned.js +82 -0
- package/dist/zoned/interval/intervalDifferenceZoned.d.ts +38 -0
- package/dist/zoned/interval/intervalDifferenceZoned.js +94 -0
- package/dist/zoned/interval/intervalDivideEquallyZoned.d.ts +35 -0
- package/dist/zoned/interval/intervalDivideEquallyZoned.js +80 -0
- package/dist/zoned/interval/intervalEngulfsZoned.d.ts +30 -0
- package/dist/zoned/interval/intervalEngulfsZoned.js +65 -0
- package/dist/zoned/interval/intervalFromDurationZoned.d.ts +45 -0
- package/dist/zoned/interval/intervalFromDurationZoned.js +85 -0
- package/dist/zoned/interval/intervalIntersectionZoned.d.ts +36 -0
- package/dist/zoned/interval/intervalIntersectionZoned.js +77 -0
- package/dist/zoned/interval/intervalLengthZoned.d.ts +31 -0
- package/dist/zoned/interval/intervalLengthZoned.js +61 -0
- package/dist/zoned/interval/intervalOverlappingDaysZoned.d.ts +42 -0
- package/dist/zoned/interval/intervalOverlappingDaysZoned.js +89 -0
- package/dist/zoned/interval/intervalSplitAtZoned.d.ts +36 -0
- package/dist/zoned/interval/intervalSplitAtZoned.js +84 -0
- package/dist/zoned/interval/intervalUnionZoned.d.ts +38 -0
- package/dist/zoned/interval/intervalUnionZoned.js +79 -0
- package/dist/zoned/interval/intervalXorAllZoned.d.ts +37 -0
- package/dist/zoned/interval/intervalXorAllZoned.js +108 -0
- package/dist/zoned/interval/intervalXorZoned.d.ts +39 -0
- package/dist/zoned/interval/intervalXorZoned.js +118 -0
- package/dist/zoned/interval/intervalsOverlapZoned.d.ts +27 -0
- package/dist/zoned/interval/intervalsOverlapZoned.js +62 -0
- package/dist/zoned/interval/mergeIntervalsZoned.d.ts +36 -0
- package/dist/zoned/interval/mergeIntervalsZoned.js +77 -0
- package/dist/zoned/interval/splitIntervalByUnitZoned.d.ts +31 -0
- package/dist/zoned/interval/splitIntervalByUnitZoned.js +77 -0
- package/dist/zoned/interval/validate/index.d.ts +2 -0
- package/dist/zoned/interval/validate/index.js +2 -0
- package/dist/zoned/interval/validate/isValidCalendarZonedInterval.d.ts +31 -0
- package/dist/zoned/interval/validate/isValidCalendarZonedInterval.js +45 -0
- package/dist/zoned/interval/validate/isValidZonedInterval.d.ts +23 -0
- package/dist/zoned/interval/validate/isValidZonedInterval.js +44 -0
- package/dist/zoned/map/index.d.ts +2 -0
- package/dist/zoned/map/index.js +2 -0
- package/dist/zoned/map/mapZonedDatesInRange.d.ts +16 -0
- package/dist/zoned/map/mapZonedDatesInRange.js +56 -0
- package/dist/zoned/map/mapZonedHoursInDay.d.ts +23 -0
- package/dist/zoned/map/mapZonedHoursInDay.js +47 -0
- package/dist/zoned/parse/getZonedOffset.d.ts +17 -0
- package/dist/zoned/parse/getZonedOffset.js +29 -0
- package/dist/zoned/parse/getZonedOffsetAs.d.ts +29 -0
- package/dist/zoned/parse/getZonedOffsetAs.js +44 -0
- package/dist/zoned/parse/index.d.ts +20 -0
- package/dist/zoned/parse/index.js +20 -0
- package/dist/zoned/parse/parseDateFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseDateFromZoned.js +26 -0
- package/dist/zoned/parse/parseDateTimeFromZoned.d.ts +14 -0
- package/dist/zoned/parse/parseDateTimeFromZoned.js +27 -0
- package/dist/zoned/parse/parseDayFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseDayFromZoned.js +26 -0
- package/dist/zoned/parse/parseDayOfWeekFromZoned.d.ts +14 -0
- package/dist/zoned/parse/parseDayOfWeekFromZoned.js +27 -0
- package/dist/zoned/parse/parseHourFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseHourFromZoned.js +26 -0
- package/dist/zoned/parse/parseMicrosecondFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseMicrosecondFromZoned.js +26 -0
- package/dist/zoned/parse/parseMillisecondFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseMillisecondFromZoned.js +26 -0
- package/dist/zoned/parse/parseMinuteFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseMinuteFromZoned.js +26 -0
- package/dist/zoned/parse/parseMonthFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseMonthFromZoned.js +26 -0
- package/dist/zoned/parse/parseNanosecondFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseNanosecondFromZoned.js +26 -0
- package/dist/zoned/parse/parseRfc2822.d.ts +26 -0
- package/dist/zoned/parse/parseRfc2822.js +71 -0
- package/dist/zoned/parse/parseRfc3339.d.ts +23 -0
- package/dist/zoned/parse/parseRfc3339.js +42 -0
- package/dist/zoned/parse/parseSecondFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseSecondFromZoned.js +26 -0
- package/dist/zoned/parse/parseTimeFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseTimeFromZoned.js +26 -0
- package/dist/zoned/parse/parseTimeZoneFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseTimeZoneFromZoned.js +25 -0
- package/dist/zoned/parse/parseUnitFromZoned.d.ts +19 -0
- package/dist/zoned/parse/parseUnitFromZoned.js +71 -0
- package/dist/zoned/parse/parseWeekFromZoned.d.ts +17 -0
- package/dist/zoned/parse/parseWeekFromZoned.js +30 -0
- package/dist/zoned/parse/parseYearFromZoned.d.ts +13 -0
- package/dist/zoned/parse/parseYearFromZoned.js +26 -0
- package/dist/zoned/validate/hasDaylightSaving.d.ts +17 -0
- package/dist/zoned/validate/hasDaylightSaving.js +43 -0
- package/dist/zoned/validate/index.d.ts +5 -0
- package/dist/zoned/validate/index.js +5 -0
- package/dist/zoned/validate/isValidCalendarZonedDateTime.d.ts +30 -0
- package/dist/zoned/validate/isValidCalendarZonedDateTime.js +41 -0
- package/dist/zoned/validate/isValidTimeZone.d.ts +15 -0
- package/dist/zoned/validate/isValidTimeZone.js +33 -0
- package/dist/zoned/validate/isValidZonedDateTime.d.ts +22 -0
- package/dist/zoned/validate/isValidZonedDateTime.js +39 -0
- package/dist/zoned/validate/isValidZonedRange.d.ts +26 -0
- package/dist/zoned/validate/isValidZonedRange.js +43 -0
- package/package.json +113 -0
- package/skills/_artifacts/domain_map.yaml +547 -0
- package/skills/_artifacts/skill_spec.md +67 -0
- package/skills/_artifacts/skill_tree.yaml +278 -0
- package/skills/api-expansion-workflow/SKILL.md +52 -0
- package/skills/app-integration/SKILL.md +38 -0
- package/skills/calculate-dates/SKILL.md +432 -0
- package/skills/compare-dates/SKILL.md +412 -0
- package/skills/convert-types/SKILL.md +305 -0
- package/skills/durations/SKILL.md +418 -0
- package/skills/format-date-time/SKILL.md +486 -0
- package/skills/format-date-time/references/format-api.md +34 -0
- package/skills/format-relative-time/SKILL.md +223 -0
- package/skills/get-current/SKILL.md +229 -0
- package/skills/interval-ops/SKILL.md +432 -0
- package/skills/issue-creation/SKILL.md +118 -0
- package/skills/lint-package-suggestion/SKILL.md +37 -0
- package/skills/new-method-implementation/SKILL.md +71 -0
- package/skills/parse-date-time/SKILL.md +349 -0
- package/skills/pr-contribution/SKILL.md +180 -0
- package/skills/unit-test-generation/SKILL.md +56 -0
- package/skills/validate-dates/SKILL.md +438 -0
- package/skills/zoned-date-ops/SKILL.md +422 -0
- package/skills/zoned-date-ops/references/timezones.md +13 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import { advanceToWeekday, isValidDayOfWeek } from "../../internal/index.js";
|
|
3
|
+
import { isValidDate } from "../validate/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Return a PlainDate ISO string for the next occurrence of `dayOfWeek` on or after `value`.
|
|
6
|
+
*
|
|
7
|
+
* - `dayOfWeek` uses Temporal's ISO numbering: 1 (Monday) through 7 (Sunday), consistent with
|
|
8
|
+
* `getDayOfWeek`/`parseDayOfWeekFromDate`.
|
|
9
|
+
* - `options.inclusive` (default `false`) controls what happens when `value` already falls on
|
|
10
|
+
* `dayOfWeek`: `false` advances a full week (matching date-fns), `true` returns `value` as-is.
|
|
11
|
+
* - Returns "" on invalid input.
|
|
12
|
+
*
|
|
13
|
+
* Replaces date-fns's sixteen `next*` functions with one parameterized call:
|
|
14
|
+
*
|
|
15
|
+
* | date-fns | gmt |
|
|
16
|
+
* | ----------------- | ----------------------------- |
|
|
17
|
+
* | `nextMonday` | `nextWeekday(value, 1)` |
|
|
18
|
+
* | `nextTuesday` | `nextWeekday(value, 2)` |
|
|
19
|
+
* | `nextWednesday` | `nextWeekday(value, 3)` |
|
|
20
|
+
* | `nextThursday` | `nextWeekday(value, 4)` |
|
|
21
|
+
* | `nextFriday` | `nextWeekday(value, 5)` |
|
|
22
|
+
* | `nextSaturday` | `nextWeekday(value, 6)` |
|
|
23
|
+
* | `nextSunday` | `nextWeekday(value, 7)` |
|
|
24
|
+
* | `nextDay(v, n)` | `nextWeekday(value, n)` |
|
|
25
|
+
*
|
|
26
|
+
* @param value ISO PlainDate string
|
|
27
|
+
* @param dayOfWeek target ISO day of week (1-7, Monday-Sunday)
|
|
28
|
+
* @param options optional: inclusive (boolean, default false)
|
|
29
|
+
* @returns ISO PlainDate string for the next occurrence of `dayOfWeek`, or "" on invalid input
|
|
30
|
+
*
|
|
31
|
+
* @example nextWeekday("2024-03-15", 5) // "2024-03-22" (2024-03-15 is already a Friday, so it advances a full week)
|
|
32
|
+
* @example nextWeekday("2024-03-15", 5, { inclusive: true }) // "2024-03-15"
|
|
33
|
+
* @example nextWeekday("2024-03-13", 5) // "2024-03-15" (Wednesday -> next Friday)
|
|
34
|
+
* @example nextWeekday("invalid", 5) // ""
|
|
35
|
+
* @example nextWeekday("2024-03-15", 8) // "" (dayOfWeek out of range)
|
|
36
|
+
*/
|
|
37
|
+
export function nextWeekday(value, dayOfWeek, options) {
|
|
38
|
+
if (!isValidDate(value) || !isValidDayOfWeek(dayOfWeek))
|
|
39
|
+
return "";
|
|
40
|
+
try {
|
|
41
|
+
const date = Temporal.PlainDate.from(value);
|
|
42
|
+
return advanceToWeekday(date, dayOfWeek, 1, options?.inclusive ?? false).toString();
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return "";
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Return a PlainDate ISO string for the previous occurrence of `dayOfWeek` on or before `value`.
|
|
3
|
+
*
|
|
4
|
+
* - `dayOfWeek` uses Temporal's ISO numbering: 1 (Monday) through 7 (Sunday), consistent with
|
|
5
|
+
* `getDayOfWeek`/`parseDayOfWeekFromDate`.
|
|
6
|
+
* - `options.inclusive` (default `false`) controls what happens when `value` already falls on
|
|
7
|
+
* `dayOfWeek`: `false` goes back a full week (matching date-fns), `true` returns `value` as-is.
|
|
8
|
+
* - Returns "" on invalid input.
|
|
9
|
+
*
|
|
10
|
+
* Replaces date-fns's sixteen `previous*` functions with one parameterized call:
|
|
11
|
+
*
|
|
12
|
+
* | date-fns | gmt |
|
|
13
|
+
* | ---------------------- | --------------------------------- |
|
|
14
|
+
* | `previousMonday` | `previousWeekday(value, 1)` |
|
|
15
|
+
* | `previousTuesday` | `previousWeekday(value, 2)` |
|
|
16
|
+
* | `previousWednesday` | `previousWeekday(value, 3)` |
|
|
17
|
+
* | `previousThursday` | `previousWeekday(value, 4)` |
|
|
18
|
+
* | `previousFriday` | `previousWeekday(value, 5)` |
|
|
19
|
+
* | `previousSaturday` | `previousWeekday(value, 6)` |
|
|
20
|
+
* | `previousSunday` | `previousWeekday(value, 7)` |
|
|
21
|
+
* | `previousDay(v, n)` | `previousWeekday(value, n)` |
|
|
22
|
+
*
|
|
23
|
+
* @param value ISO PlainDate string
|
|
24
|
+
* @param dayOfWeek target ISO day of week (1-7, Monday-Sunday)
|
|
25
|
+
* @param options optional: inclusive (boolean, default false)
|
|
26
|
+
* @returns ISO PlainDate string for the previous occurrence of `dayOfWeek`, or "" on invalid input
|
|
27
|
+
*
|
|
28
|
+
* @example previousWeekday("2024-03-15", 5) // "2024-03-08" (2024-03-15 is already a Friday, so it goes back a full week)
|
|
29
|
+
* @example previousWeekday("2024-03-15", 5, { inclusive: true }) // "2024-03-15"
|
|
30
|
+
* @example previousWeekday("2024-03-13", 5) // "2024-03-08" (Wednesday -> previous Friday)
|
|
31
|
+
* @example previousWeekday("invalid", 5) // ""
|
|
32
|
+
* @example previousWeekday("2024-03-15", 0) // "" (dayOfWeek out of range)
|
|
33
|
+
*/
|
|
34
|
+
export declare function previousWeekday(value: string, dayOfWeek: number, options?: {
|
|
35
|
+
inclusive?: boolean;
|
|
36
|
+
}): string;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import { advanceToWeekday, isValidDayOfWeek } from "../../internal/index.js";
|
|
3
|
+
import { isValidDate } from "../validate/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Return a PlainDate ISO string for the previous occurrence of `dayOfWeek` on or before `value`.
|
|
6
|
+
*
|
|
7
|
+
* - `dayOfWeek` uses Temporal's ISO numbering: 1 (Monday) through 7 (Sunday), consistent with
|
|
8
|
+
* `getDayOfWeek`/`parseDayOfWeekFromDate`.
|
|
9
|
+
* - `options.inclusive` (default `false`) controls what happens when `value` already falls on
|
|
10
|
+
* `dayOfWeek`: `false` goes back a full week (matching date-fns), `true` returns `value` as-is.
|
|
11
|
+
* - Returns "" on invalid input.
|
|
12
|
+
*
|
|
13
|
+
* Replaces date-fns's sixteen `previous*` functions with one parameterized call:
|
|
14
|
+
*
|
|
15
|
+
* | date-fns | gmt |
|
|
16
|
+
* | ---------------------- | --------------------------------- |
|
|
17
|
+
* | `previousMonday` | `previousWeekday(value, 1)` |
|
|
18
|
+
* | `previousTuesday` | `previousWeekday(value, 2)` |
|
|
19
|
+
* | `previousWednesday` | `previousWeekday(value, 3)` |
|
|
20
|
+
* | `previousThursday` | `previousWeekday(value, 4)` |
|
|
21
|
+
* | `previousFriday` | `previousWeekday(value, 5)` |
|
|
22
|
+
* | `previousSaturday` | `previousWeekday(value, 6)` |
|
|
23
|
+
* | `previousSunday` | `previousWeekday(value, 7)` |
|
|
24
|
+
* | `previousDay(v, n)` | `previousWeekday(value, n)` |
|
|
25
|
+
*
|
|
26
|
+
* @param value ISO PlainDate string
|
|
27
|
+
* @param dayOfWeek target ISO day of week (1-7, Monday-Sunday)
|
|
28
|
+
* @param options optional: inclusive (boolean, default false)
|
|
29
|
+
* @returns ISO PlainDate string for the previous occurrence of `dayOfWeek`, or "" on invalid input
|
|
30
|
+
*
|
|
31
|
+
* @example previousWeekday("2024-03-15", 5) // "2024-03-08" (2024-03-15 is already a Friday, so it goes back a full week)
|
|
32
|
+
* @example previousWeekday("2024-03-15", 5, { inclusive: true }) // "2024-03-15"
|
|
33
|
+
* @example previousWeekday("2024-03-13", 5) // "2024-03-08" (Wednesday -> previous Friday)
|
|
34
|
+
* @example previousWeekday("invalid", 5) // ""
|
|
35
|
+
* @example previousWeekday("2024-03-15", 0) // "" (dayOfWeek out of range)
|
|
36
|
+
*/
|
|
37
|
+
export function previousWeekday(value, dayOfWeek, options) {
|
|
38
|
+
if (!isValidDate(value) || !isValidDayOfWeek(dayOfWeek))
|
|
39
|
+
return "";
|
|
40
|
+
try {
|
|
41
|
+
const date = Temporal.PlainDate.from(value);
|
|
42
|
+
return advanceToWeekday(date, dayOfWeek, -1, options?.inclusive ?? false).toString();
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return "";
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import type { DateUnit } from "../../types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Round an ISO 8601 date string to the specified date unit.
|
|
5
|
+
*
|
|
6
|
+
* - Returns "" for invalid inputs.
|
|
7
|
+
* - Accepts date units: "year", "month", "week", "day".
|
|
8
|
+
* - Time units ("hour", "minute", etc.) are rejected and return "".
|
|
9
|
+
* - All date units use manual start-of-unit rounding.
|
|
10
|
+
* - Wraps all Temporal calls in try-catch; returns "" on any error.
|
|
11
|
+
*
|
|
12
|
+
* @param value ISO 8601 date string
|
|
13
|
+
* @param options Rounding options: smallestUnit, optional roundingIncrement and roundingMode
|
|
14
|
+
* @returns Rounded ISO 8601 date string, or "" on invalid input
|
|
15
|
+
*
|
|
16
|
+
* @example roundDate("2024-06-15", { smallestUnit: "year" }) // "2024-01-01"
|
|
17
|
+
* @example roundDate("2024-06-15", { smallestUnit: "month" }) // "2024-07-01"
|
|
18
|
+
* @example roundDate("2024-06-15", { smallestUnit: "week" }) // "2024-06-16"
|
|
19
|
+
* @example roundDate("2024-06-15", { smallestUnit: "day" }) // "2024-06-15"
|
|
20
|
+
* @example roundDate("invalid", { smallestUnit: "year" }) // ""
|
|
21
|
+
*/
|
|
22
|
+
export declare function roundDate(value: string, options: {
|
|
23
|
+
smallestUnit: DateUnit;
|
|
24
|
+
roundingIncrement?: number;
|
|
25
|
+
roundingMode?: Temporal.RoundingMode;
|
|
26
|
+
}): string;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import { addDateUnit, getStartOfDateUnit, } from "../../internal/dateUnitHelpers.js";
|
|
3
|
+
import { isValidDate, isValidDateUnit } from "../validate/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Round an ISO 8601 date string to the specified date unit.
|
|
6
|
+
*
|
|
7
|
+
* - Returns "" for invalid inputs.
|
|
8
|
+
* - Accepts date units: "year", "month", "week", "day".
|
|
9
|
+
* - Time units ("hour", "minute", etc.) are rejected and return "".
|
|
10
|
+
* - All date units use manual start-of-unit rounding.
|
|
11
|
+
* - Wraps all Temporal calls in try-catch; returns "" on any error.
|
|
12
|
+
*
|
|
13
|
+
* @param value ISO 8601 date string
|
|
14
|
+
* @param options Rounding options: smallestUnit, optional roundingIncrement and roundingMode
|
|
15
|
+
* @returns Rounded ISO 8601 date string, or "" on invalid input
|
|
16
|
+
*
|
|
17
|
+
* @example roundDate("2024-06-15", { smallestUnit: "year" }) // "2024-01-01"
|
|
18
|
+
* @example roundDate("2024-06-15", { smallestUnit: "month" }) // "2024-07-01"
|
|
19
|
+
* @example roundDate("2024-06-15", { smallestUnit: "week" }) // "2024-06-16"
|
|
20
|
+
* @example roundDate("2024-06-15", { smallestUnit: "day" }) // "2024-06-15"
|
|
21
|
+
* @example roundDate("invalid", { smallestUnit: "year" }) // ""
|
|
22
|
+
*/
|
|
23
|
+
export function roundDate(value, options) {
|
|
24
|
+
const { smallestUnit, roundingIncrement, roundingMode } = options;
|
|
25
|
+
if (!isValidDate(value) || !isValidDateUnit(smallestUnit))
|
|
26
|
+
return "";
|
|
27
|
+
try {
|
|
28
|
+
const source = Temporal.PlainDate.from(value);
|
|
29
|
+
// Manual rounding for all date units (year, month, week, day)
|
|
30
|
+
const startOfCurrent = getStartOfDateUnit(source, smallestUnit);
|
|
31
|
+
const increment = roundingIncrement ?? 1;
|
|
32
|
+
if (increment <= 0)
|
|
33
|
+
return "";
|
|
34
|
+
const startOfNext = addDateUnit(startOfCurrent, smallestUnit, increment);
|
|
35
|
+
const elapsed = source.since(startOfCurrent);
|
|
36
|
+
const total = startOfNext.since(startOfCurrent);
|
|
37
|
+
const fraction = elapsed.total("days") / total.total("days");
|
|
38
|
+
let rounded;
|
|
39
|
+
const mode = roundingMode ?? "halfExpand";
|
|
40
|
+
switch (mode) {
|
|
41
|
+
case "ceil":
|
|
42
|
+
case "expand":
|
|
43
|
+
rounded =
|
|
44
|
+
Temporal.PlainDate.compare(source, startOfCurrent) > 0
|
|
45
|
+
? startOfNext
|
|
46
|
+
: startOfCurrent;
|
|
47
|
+
break;
|
|
48
|
+
case "floor":
|
|
49
|
+
case "trunc":
|
|
50
|
+
rounded = startOfCurrent;
|
|
51
|
+
break;
|
|
52
|
+
case "halfExpand":
|
|
53
|
+
case "halfCeil":
|
|
54
|
+
rounded = fraction >= 0.5 ? startOfNext : startOfCurrent;
|
|
55
|
+
break;
|
|
56
|
+
case "halfTrunc":
|
|
57
|
+
case "halfFloor":
|
|
58
|
+
rounded = fraction > 0.5 ? startOfNext : startOfCurrent;
|
|
59
|
+
break;
|
|
60
|
+
case "halfEven":
|
|
61
|
+
// Simplified: use halfExpand behavior
|
|
62
|
+
rounded = fraction >= 0.5 ? startOfNext : startOfCurrent;
|
|
63
|
+
break;
|
|
64
|
+
default:
|
|
65
|
+
rounded = startOfCurrent;
|
|
66
|
+
}
|
|
67
|
+
return rounded.toString();
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
return "";
|
|
71
|
+
}
|
|
72
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import type { DateTimeUnit } from "../../types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Round an ISO 8601 datetime string to the specified date-time unit.
|
|
5
|
+
*
|
|
6
|
+
* - Returns "" for invalid inputs.
|
|
7
|
+
* - Accepts all date and time units: "year", "month", "week", "day", "hour", "minute", "second", "millisecond", "microsecond", "nanosecond".
|
|
8
|
+
* - Time units use Temporal.PlainDateTime.round() directly.
|
|
9
|
+
* - Date units (year, month, week) use manual start-of-unit rounding.
|
|
10
|
+
* - Wraps all Temporal calls in try-catch; returns "" on any error.
|
|
11
|
+
*
|
|
12
|
+
* @param value ISO 8601 datetime string
|
|
13
|
+
* @param options Rounding options: smallestUnit, optional roundingIncrement and roundingMode
|
|
14
|
+
* @returns Rounded ISO 8601 datetime string, or "" on invalid input
|
|
15
|
+
*
|
|
16
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "year" }) // "2024-01-01T00:00:00"
|
|
17
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "month" }) // "2024-07-01T00:00:00"
|
|
18
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "day" }) // "2024-06-16T00:00:00"
|
|
19
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "hour" }) // "2024-06-15T13:00:00"
|
|
20
|
+
* @example roundDateTime("invalid", { smallestUnit: "year" }) // ""
|
|
21
|
+
*/
|
|
22
|
+
export declare function roundDateTime(value: string, options: {
|
|
23
|
+
smallestUnit: DateTimeUnit;
|
|
24
|
+
roundingIncrement?: number;
|
|
25
|
+
roundingMode?: Temporal.RoundingMode;
|
|
26
|
+
}): string;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import { addDateTimeUnit, getStartOfDateTimeUnit, } from "../../internal/dateTimeUnitHelpers.js";
|
|
3
|
+
import { isValidDateTime, isValidDateTimeUnit } from "../validate/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Round an ISO 8601 datetime string to the specified date-time unit.
|
|
6
|
+
*
|
|
7
|
+
* - Returns "" for invalid inputs.
|
|
8
|
+
* - Accepts all date and time units: "year", "month", "week", "day", "hour", "minute", "second", "millisecond", "microsecond", "nanosecond".
|
|
9
|
+
* - Time units use Temporal.PlainDateTime.round() directly.
|
|
10
|
+
* - Date units (year, month, week) use manual start-of-unit rounding.
|
|
11
|
+
* - Wraps all Temporal calls in try-catch; returns "" on any error.
|
|
12
|
+
*
|
|
13
|
+
* @param value ISO 8601 datetime string
|
|
14
|
+
* @param options Rounding options: smallestUnit, optional roundingIncrement and roundingMode
|
|
15
|
+
* @returns Rounded ISO 8601 datetime string, or "" on invalid input
|
|
16
|
+
*
|
|
17
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "year" }) // "2024-01-01T00:00:00"
|
|
18
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "month" }) // "2024-07-01T00:00:00"
|
|
19
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "day" }) // "2024-06-16T00:00:00"
|
|
20
|
+
* @example roundDateTime("2024-06-15T12:34:56", { smallestUnit: "hour" }) // "2024-06-15T13:00:00"
|
|
21
|
+
* @example roundDateTime("invalid", { smallestUnit: "year" }) // ""
|
|
22
|
+
*/
|
|
23
|
+
export function roundDateTime(value, options) {
|
|
24
|
+
const { smallestUnit, roundingIncrement, roundingMode } = options;
|
|
25
|
+
if (!isValidDateTime(value) || !isValidDateTimeUnit(smallestUnit))
|
|
26
|
+
return "";
|
|
27
|
+
try {
|
|
28
|
+
const source = Temporal.PlainDateTime.from(value);
|
|
29
|
+
// PlainDateTime.round() in this polyfill supports day and time units
|
|
30
|
+
const timeUnits = [
|
|
31
|
+
"day",
|
|
32
|
+
"hour",
|
|
33
|
+
"minute",
|
|
34
|
+
"second",
|
|
35
|
+
"millisecond",
|
|
36
|
+
"microsecond",
|
|
37
|
+
"nanosecond",
|
|
38
|
+
];
|
|
39
|
+
if (timeUnits.includes(smallestUnit)) {
|
|
40
|
+
const timeUnit = smallestUnit;
|
|
41
|
+
const result = source.round({
|
|
42
|
+
smallestUnit: timeUnit,
|
|
43
|
+
roundingIncrement,
|
|
44
|
+
roundingMode,
|
|
45
|
+
});
|
|
46
|
+
// Handle default precision: 0 for > sec, 3 for ms, 6 for µs, 9 for ns
|
|
47
|
+
const precisionMap = {
|
|
48
|
+
millisecond: 3,
|
|
49
|
+
microsecond: 6,
|
|
50
|
+
nanosecond: 9,
|
|
51
|
+
};
|
|
52
|
+
const fractionalDigits = precisionMap[smallestUnit] || 0;
|
|
53
|
+
return result.toString({ fractionalSecondDigits: fractionalDigits });
|
|
54
|
+
}
|
|
55
|
+
// Manual rounding for date units (year, month, week)
|
|
56
|
+
const startOfCurrent = getStartOfDateTimeUnit(source, smallestUnit);
|
|
57
|
+
const increment = roundingIncrement ?? 1;
|
|
58
|
+
if (increment <= 0)
|
|
59
|
+
return "";
|
|
60
|
+
const startOfNext = addDateTimeUnit(startOfCurrent, smallestUnit, increment);
|
|
61
|
+
const elapsed = source.since(startOfCurrent);
|
|
62
|
+
const total = startOfNext.since(startOfCurrent);
|
|
63
|
+
const fraction = elapsed.total("milliseconds") / total.total("milliseconds");
|
|
64
|
+
let rounded;
|
|
65
|
+
const mode = roundingMode ?? "halfExpand";
|
|
66
|
+
switch (mode) {
|
|
67
|
+
case "ceil":
|
|
68
|
+
case "expand":
|
|
69
|
+
rounded =
|
|
70
|
+
Temporal.PlainDateTime.compare(source, startOfCurrent) > 0
|
|
71
|
+
? startOfNext
|
|
72
|
+
: startOfCurrent;
|
|
73
|
+
break;
|
|
74
|
+
case "floor":
|
|
75
|
+
case "trunc":
|
|
76
|
+
rounded = startOfCurrent;
|
|
77
|
+
break;
|
|
78
|
+
case "halfExpand":
|
|
79
|
+
case "halfCeil":
|
|
80
|
+
rounded = fraction >= 0.5 ? startOfNext : startOfCurrent;
|
|
81
|
+
break;
|
|
82
|
+
case "halfTrunc":
|
|
83
|
+
case "halfFloor":
|
|
84
|
+
rounded = fraction > 0.5 ? startOfNext : startOfCurrent;
|
|
85
|
+
break;
|
|
86
|
+
case "halfEven":
|
|
87
|
+
// Simplified: use halfExpand behavior
|
|
88
|
+
rounded = fraction >= 0.5 ? startOfNext : startOfCurrent;
|
|
89
|
+
break;
|
|
90
|
+
default:
|
|
91
|
+
rounded = startOfCurrent;
|
|
92
|
+
}
|
|
93
|
+
return rounded.toString();
|
|
94
|
+
}
|
|
95
|
+
catch {
|
|
96
|
+
return "";
|
|
97
|
+
}
|
|
98
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
/**
|
|
3
|
+
* Round an ISO 8601 time string to the specified time unit.
|
|
4
|
+
*
|
|
5
|
+
* - Returns "" for invalid inputs.
|
|
6
|
+
* - Only time units are accepted: "hour", "minute", "second", "millisecond", "microsecond", "nanosecond".
|
|
7
|
+
* - Wraps Temporal.PlainTime.round() which throws on invalid options.
|
|
8
|
+
*
|
|
9
|
+
* @param value ISO 8601 time string
|
|
10
|
+
* @param options Rounding options: smallestUnit, optional roundingIncrement and roundingMode
|
|
11
|
+
* @returns Rounded ISO 8601 time string, or "" on invalid input
|
|
12
|
+
*
|
|
13
|
+
* @example roundTime("12:34:56", { smallestUnit: "hour" }) // "13:00:00"
|
|
14
|
+
* @example roundTime("12:34:56", { smallestUnit: "minute" }) // "12:35:00"
|
|
15
|
+
* @example roundTime("12:34:56", { smallestUnit: "second", roundingMode: "floor" }) // "12:34:56"
|
|
16
|
+
* @example roundTime("invalid", { smallestUnit: "hour" }) // ""
|
|
17
|
+
*/
|
|
18
|
+
export declare function roundTime(value: string, options: {
|
|
19
|
+
smallestUnit: Temporal.SmallestUnit<"hour">;
|
|
20
|
+
roundingIncrement?: number;
|
|
21
|
+
roundingMode?: Temporal.RoundingMode;
|
|
22
|
+
}): string;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import { isValidTime, isValidTimeUnit } from "../validate/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Round an ISO 8601 time string to the specified time unit.
|
|
5
|
+
*
|
|
6
|
+
* - Returns "" for invalid inputs.
|
|
7
|
+
* - Only time units are accepted: "hour", "minute", "second", "millisecond", "microsecond", "nanosecond".
|
|
8
|
+
* - Wraps Temporal.PlainTime.round() which throws on invalid options.
|
|
9
|
+
*
|
|
10
|
+
* @param value ISO 8601 time string
|
|
11
|
+
* @param options Rounding options: smallestUnit, optional roundingIncrement and roundingMode
|
|
12
|
+
* @returns Rounded ISO 8601 time string, or "" on invalid input
|
|
13
|
+
*
|
|
14
|
+
* @example roundTime("12:34:56", { smallestUnit: "hour" }) // "13:00:00"
|
|
15
|
+
* @example roundTime("12:34:56", { smallestUnit: "minute" }) // "12:35:00"
|
|
16
|
+
* @example roundTime("12:34:56", { smallestUnit: "second", roundingMode: "floor" }) // "12:34:56"
|
|
17
|
+
* @example roundTime("invalid", { smallestUnit: "hour" }) // ""
|
|
18
|
+
*/
|
|
19
|
+
export function roundTime(value, options) {
|
|
20
|
+
const { smallestUnit, roundingIncrement, roundingMode } = options;
|
|
21
|
+
if (!isValidTime(value) || !isValidTimeUnit(smallestUnit))
|
|
22
|
+
return "";
|
|
23
|
+
try {
|
|
24
|
+
const source = Temporal.PlainTime.from(value);
|
|
25
|
+
const result = source.round({
|
|
26
|
+
smallestUnit,
|
|
27
|
+
roundingIncrement,
|
|
28
|
+
roundingMode,
|
|
29
|
+
});
|
|
30
|
+
// Handle default precision: 0 for > sec, 3 for ms, 6 for µs, 9 for ns
|
|
31
|
+
const precisionMap = {
|
|
32
|
+
millisecond: 3,
|
|
33
|
+
microsecond: 6,
|
|
34
|
+
nanosecond: 9,
|
|
35
|
+
};
|
|
36
|
+
const fractionalDigits = precisionMap[smallestUnit] || 0;
|
|
37
|
+
return result.toString({ fractionalSecondDigits: fractionalDigits });
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return "";
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import type { Overflow } from "../../types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Return a PlainDate ISO string with the given `fields` set on `value`.
|
|
5
|
+
*
|
|
6
|
+
* - Wraps `Temporal.PlainDate.prototype.with()`, which resolves every supplied field in a
|
|
7
|
+
* single atomic overflow pass. This is the safe alternative to composing `addDate()` calls
|
|
8
|
+
* field-by-field: each sequential `.add()` resolves overflow against its own intermediate
|
|
9
|
+
* value, so setting month-then-day vs. day-then-month on the same target can silently
|
|
10
|
+
* diverge — `.with()` has no such order-dependence.
|
|
11
|
+
* - `fields` may set `year`, `month`, `monthCode`, `day`, `era`, and/or `eraYear`; omitted
|
|
12
|
+
* fields keep their current value. An empty object is a no-op.
|
|
13
|
+
* - Returns "" for invalid input.
|
|
14
|
+
*
|
|
15
|
+
* `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. setting
|
|
16
|
+
* `month: 2` on a date whose `day` is 31: "constrain" clamps to Feb 29/28, "reject" throws
|
|
17
|
+
* (resulting in "").
|
|
18
|
+
*
|
|
19
|
+
* @param value ISO PlainDate string
|
|
20
|
+
* @param fields Partial<Temporal.PlainDateLike> object specifying fields to set
|
|
21
|
+
* @param options optional: overflow ("constrain" | "reject")
|
|
22
|
+
* @returns ISO PlainDate string with fields set, or "" on invalid input
|
|
23
|
+
*
|
|
24
|
+
* @example setDate("2024-03-10", { year: 2025 }) // "2025-03-10"
|
|
25
|
+
* @example setDate("2024-01-31", { month: 2 }) // "2024-02-29" (constrain clamps to the last valid day)
|
|
26
|
+
* @example setDate("2024-01-31", { month: 2 }, { overflow: "reject" }) // ""
|
|
27
|
+
* @example setDate("2024-03-10", {}) // "2024-03-10" (empty fields object is a no-op)
|
|
28
|
+
* @example setDate("invalid", { year: 2025 }) // ""
|
|
29
|
+
*/
|
|
30
|
+
export declare function setDate(value: string, fields: Omit<Temporal.PlainDateLike, "calendar">, options?: {
|
|
31
|
+
overflow?: Overflow;
|
|
32
|
+
}): string;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import { resolveOverflow } from "../../internal/index.js";
|
|
3
|
+
import { isValidDate } from "../validate/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Return a PlainDate ISO string with the given `fields` set on `value`.
|
|
6
|
+
*
|
|
7
|
+
* - Wraps `Temporal.PlainDate.prototype.with()`, which resolves every supplied field in a
|
|
8
|
+
* single atomic overflow pass. This is the safe alternative to composing `addDate()` calls
|
|
9
|
+
* field-by-field: each sequential `.add()` resolves overflow against its own intermediate
|
|
10
|
+
* value, so setting month-then-day vs. day-then-month on the same target can silently
|
|
11
|
+
* diverge — `.with()` has no such order-dependence.
|
|
12
|
+
* - `fields` may set `year`, `month`, `monthCode`, `day`, `era`, and/or `eraYear`; omitted
|
|
13
|
+
* fields keep their current value. An empty object is a no-op.
|
|
14
|
+
* - Returns "" for invalid input.
|
|
15
|
+
*
|
|
16
|
+
* `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. setting
|
|
17
|
+
* `month: 2` on a date whose `day` is 31: "constrain" clamps to Feb 29/28, "reject" throws
|
|
18
|
+
* (resulting in "").
|
|
19
|
+
*
|
|
20
|
+
* @param value ISO PlainDate string
|
|
21
|
+
* @param fields Partial<Temporal.PlainDateLike> object specifying fields to set
|
|
22
|
+
* @param options optional: overflow ("constrain" | "reject")
|
|
23
|
+
* @returns ISO PlainDate string with fields set, or "" on invalid input
|
|
24
|
+
*
|
|
25
|
+
* @example setDate("2024-03-10", { year: 2025 }) // "2025-03-10"
|
|
26
|
+
* @example setDate("2024-01-31", { month: 2 }) // "2024-02-29" (constrain clamps to the last valid day)
|
|
27
|
+
* @example setDate("2024-01-31", { month: 2 }, { overflow: "reject" }) // ""
|
|
28
|
+
* @example setDate("2024-03-10", {}) // "2024-03-10" (empty fields object is a no-op)
|
|
29
|
+
* @example setDate("invalid", { year: 2025 }) // ""
|
|
30
|
+
*/
|
|
31
|
+
export function setDate(value, fields, options) {
|
|
32
|
+
if (!isValidDate(value))
|
|
33
|
+
return "";
|
|
34
|
+
try {
|
|
35
|
+
const date = Temporal.PlainDate.from(value);
|
|
36
|
+
// Temporal.PlainDate.prototype.with() throws on an empty fields object ("no supported
|
|
37
|
+
// properties found") rather than treating it as a no-op, so short-circuit here.
|
|
38
|
+
if (Object.keys(fields).length === 0)
|
|
39
|
+
return date.toString();
|
|
40
|
+
return date
|
|
41
|
+
.with(fields, { overflow: resolveOverflow(options?.overflow) })
|
|
42
|
+
.toString();
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return "";
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import type { Overflow } from "../../types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Return a PlainDateTime ISO string with the given `fields` set on `value`.
|
|
5
|
+
*
|
|
6
|
+
* - Wraps `Temporal.PlainDateTime.prototype.with()`, which resolves every supplied field in a
|
|
7
|
+
* single atomic overflow pass — see `setDate`'s doc for why that matters over composing
|
|
8
|
+
* `addDateTime()` calls field-by-field.
|
|
9
|
+
* - `fields` may set any of `year`, `month`, `monthCode`, `day`, `hour`, `minute`, `second`,
|
|
10
|
+
* `millisecond`, `microsecond`, `nanosecond`, `era`, and/or `eraYear`; omitted fields keep
|
|
11
|
+
* their current value. An empty object is a no-op.
|
|
12
|
+
* - Returns "" for invalid input.
|
|
13
|
+
*
|
|
14
|
+
* `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. setting
|
|
15
|
+
* `month: 2` on a datetime whose `day` is 31: "constrain" clamps to Feb 29/28, "reject" throws
|
|
16
|
+
* (resulting in "").
|
|
17
|
+
*
|
|
18
|
+
* @param value ISO PlainDateTime string
|
|
19
|
+
* @param fields Partial<Temporal.PlainDateTimeLike> object specifying fields to set
|
|
20
|
+
* @param options optional: overflow ("constrain" | "reject")
|
|
21
|
+
* @returns ISO PlainDateTime string with fields set, or "" on invalid input
|
|
22
|
+
*
|
|
23
|
+
* @example setDateTime("2024-03-10T12:00:00", { hour: 9 }) // "2024-03-10T09:00:00"
|
|
24
|
+
* @example setDateTime("2024-01-31T12:00:00", { month: 2 }) // "2024-02-29T12:00:00" (constrain clamps to the last valid day)
|
|
25
|
+
* @example setDateTime("2024-01-31T12:00:00", { month: 2 }, { overflow: "reject" }) // ""
|
|
26
|
+
* @example setDateTime("2024-03-10T12:00:00", {}) // "2024-03-10T12:00:00" (empty fields object is a no-op)
|
|
27
|
+
* @example setDateTime("invalid", { hour: 9 }) // ""
|
|
28
|
+
*/
|
|
29
|
+
export declare function setDateTime(value: string, fields: Omit<Temporal.PlainDateTimeLike, "calendar">, options?: {
|
|
30
|
+
overflow?: Overflow;
|
|
31
|
+
}): string;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import { resolveOverflow } from "../../internal/index.js";
|
|
3
|
+
import { isValidDateTime } from "../validate/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Return a PlainDateTime ISO string with the given `fields` set on `value`.
|
|
6
|
+
*
|
|
7
|
+
* - Wraps `Temporal.PlainDateTime.prototype.with()`, which resolves every supplied field in a
|
|
8
|
+
* single atomic overflow pass — see `setDate`'s doc for why that matters over composing
|
|
9
|
+
* `addDateTime()` calls field-by-field.
|
|
10
|
+
* - `fields` may set any of `year`, `month`, `monthCode`, `day`, `hour`, `minute`, `second`,
|
|
11
|
+
* `millisecond`, `microsecond`, `nanosecond`, `era`, and/or `eraYear`; omitted fields keep
|
|
12
|
+
* their current value. An empty object is a no-op.
|
|
13
|
+
* - Returns "" for invalid input.
|
|
14
|
+
*
|
|
15
|
+
* `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. setting
|
|
16
|
+
* `month: 2` on a datetime whose `day` is 31: "constrain" clamps to Feb 29/28, "reject" throws
|
|
17
|
+
* (resulting in "").
|
|
18
|
+
*
|
|
19
|
+
* @param value ISO PlainDateTime string
|
|
20
|
+
* @param fields Partial<Temporal.PlainDateTimeLike> object specifying fields to set
|
|
21
|
+
* @param options optional: overflow ("constrain" | "reject")
|
|
22
|
+
* @returns ISO PlainDateTime string with fields set, or "" on invalid input
|
|
23
|
+
*
|
|
24
|
+
* @example setDateTime("2024-03-10T12:00:00", { hour: 9 }) // "2024-03-10T09:00:00"
|
|
25
|
+
* @example setDateTime("2024-01-31T12:00:00", { month: 2 }) // "2024-02-29T12:00:00" (constrain clamps to the last valid day)
|
|
26
|
+
* @example setDateTime("2024-01-31T12:00:00", { month: 2 }, { overflow: "reject" }) // ""
|
|
27
|
+
* @example setDateTime("2024-03-10T12:00:00", {}) // "2024-03-10T12:00:00" (empty fields object is a no-op)
|
|
28
|
+
* @example setDateTime("invalid", { hour: 9 }) // ""
|
|
29
|
+
*/
|
|
30
|
+
export function setDateTime(value, fields, options) {
|
|
31
|
+
if (!isValidDateTime(value))
|
|
32
|
+
return "";
|
|
33
|
+
try {
|
|
34
|
+
const dateTime = Temporal.PlainDateTime.from(value);
|
|
35
|
+
// Temporal.PlainDateTime.prototype.with() throws on an empty fields object ("no supported
|
|
36
|
+
// properties found") rather than treating it as a no-op, so short-circuit here.
|
|
37
|
+
if (Object.keys(fields).length === 0)
|
|
38
|
+
return dateTime.toString();
|
|
39
|
+
return dateTime
|
|
40
|
+
.with(fields, { overflow: resolveOverflow(options?.overflow) })
|
|
41
|
+
.toString();
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return "";
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
2
|
+
import type { Overflow } from "../../types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Return a PlainTime ISO string with the given `fields` set on `value`.
|
|
5
|
+
*
|
|
6
|
+
* - Wraps `Temporal.PlainTime.prototype.with()`, which resolves every supplied field in a
|
|
7
|
+
* single atomic overflow pass — see `setDate`'s doc for why that matters over composing
|
|
8
|
+
* `addTime()` calls field-by-field.
|
|
9
|
+
* - `fields` may set any of `hour`, `minute`, `second`, `millisecond`, `microsecond`, and/or
|
|
10
|
+
* `nanosecond`; omitted fields keep their current value. An empty object is a no-op.
|
|
11
|
+
* - Returns "" for invalid input.
|
|
12
|
+
*
|
|
13
|
+
* `overflow` ("constrain" (default) | "reject") controls out-of-range field values, e.g.
|
|
14
|
+
* `hour: 25`: "constrain" clamps to 23, "reject" throws (resulting in ""). Unlike `addTime`
|
|
15
|
+
* (where `overflow` is inert because addition always wraps around the clock), `overflow` has
|
|
16
|
+
* a real effect here because `.with()` assigns fixed field values rather than adding a delta.
|
|
17
|
+
*
|
|
18
|
+
* @param value ISO PlainTime string
|
|
19
|
+
* @param fields Partial<Temporal.PlainTimeLike> object specifying fields to set
|
|
20
|
+
* @param options optional: overflow ("constrain" | "reject")
|
|
21
|
+
* @returns ISO PlainTime string with fields set, or "" on invalid input
|
|
22
|
+
*
|
|
23
|
+
* @example setTime("12:00:00", { hour: 9 }) // "09:00:00"
|
|
24
|
+
* @example setTime("12:00:00", { hour: 25 }) // "23:00:00" (constrain clamps to the max valid hour)
|
|
25
|
+
* @example setTime("12:00:00", { hour: 25 }, { overflow: "reject" }) // ""
|
|
26
|
+
* @example setTime("12:00:00", {}) // "12:00:00" (empty fields object is a no-op)
|
|
27
|
+
* @example setTime("invalid", { hour: 9 }) // ""
|
|
28
|
+
*/
|
|
29
|
+
export declare function setTime(value: string, fields: Temporal.PlainTimeLike, options?: {
|
|
30
|
+
overflow?: Overflow;
|
|
31
|
+
}): string;
|