@cdx-ui/formatters 0.0.1-beta.132
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +108 -0
- package/lib/commonjs/dates/calendar/formatCalendarMonthYear.js +28 -0
- package/lib/commonjs/dates/calendar/formatCalendarMonthYear.js.map +1 -0
- package/lib/commonjs/dates/calendar/formatDateTimeListDateRow.js +40 -0
- package/lib/commonjs/dates/calendar/formatDateTimeListDateRow.js.map +1 -0
- package/lib/commonjs/dates/calendar/formatMonthCalendarMonth.js +28 -0
- package/lib/commonjs/dates/calendar/formatMonthCalendarMonth.js.map +1 -0
- package/lib/commonjs/dates/calendar/formatMonthCalendarYear.js +16 -0
- package/lib/commonjs/dates/calendar/formatMonthCalendarYear.js.map +1 -0
- package/lib/commonjs/dates/calendar/getCalendarWeekdayLabels.js +23 -0
- package/lib/commonjs/dates/calendar/getCalendarWeekdayLabels.js.map +1 -0
- package/lib/commonjs/dates/datetime/clampDateTimeId.js +27 -0
- package/lib/commonjs/dates/datetime/clampDateTimeId.js.map +1 -0
- package/lib/commonjs/dates/datetime/compareDateTimeIds.js +28 -0
- package/lib/commonjs/dates/datetime/compareDateTimeIds.js.map +1 -0
- package/lib/commonjs/dates/datetime/dateTimeId.js +38 -0
- package/lib/commonjs/dates/datetime/dateTimeId.js.map +1 -0
- package/lib/commonjs/dates/datetime/formatDateTimeId.js +27 -0
- package/lib/commonjs/dates/datetime/formatDateTimeId.js.map +1 -0
- package/lib/commonjs/dates/datetime/formatDateTimeListHour.js +21 -0
- package/lib/commonjs/dates/datetime/formatDateTimeListHour.js.map +1 -0
- package/lib/commonjs/dates/datetime/formatDateTimeListMinute.js +16 -0
- package/lib/commonjs/dates/datetime/formatDateTimeListMinute.js.map +1 -0
- package/lib/commonjs/dates/datetime/formatDateTimeListPeriod.js +17 -0
- package/lib/commonjs/dates/datetime/formatDateTimeListPeriod.js.map +1 -0
- package/lib/commonjs/dates/datetime/isLocaleHour12.js +30 -0
- package/lib/commonjs/dates/datetime/isLocaleHour12.js.map +1 -0
- package/lib/commonjs/dates/datetime/isValidDateTimeId.js +23 -0
- package/lib/commonjs/dates/datetime/isValidDateTimeId.js.map +1 -0
- package/lib/commonjs/dates/datetime/nowDateTimeId.js +57 -0
- package/lib/commonjs/dates/datetime/nowDateTimeId.js.map +1 -0
- package/lib/commonjs/dates/datetime/parseDateTimeId.js +29 -0
- package/lib/commonjs/dates/datetime/parseDateTimeId.js.map +1 -0
- package/lib/commonjs/dates/display/formatDateForDisplay.js +28 -0
- package/lib/commonjs/dates/display/formatDateForDisplay.js.map +1 -0
- package/lib/commonjs/dates/display/formatDateRangeForDisplay.js +25 -0
- package/lib/commonjs/dates/display/formatDateRangeForDisplay.js.map +1 -0
- package/lib/commonjs/dates/display/formatDateTimeForDisplay.js +34 -0
- package/lib/commonjs/dates/display/formatDateTimeForDisplay.js.map +1 -0
- package/lib/commonjs/dates/display/formatMonthForDisplay.js +33 -0
- package/lib/commonjs/dates/display/formatMonthForDisplay.js.map +1 -0
- package/lib/commonjs/dates/index.js +367 -0
- package/lib/commonjs/dates/index.js.map +1 -0
- package/lib/commonjs/dates/internal/brand.js +19 -0
- package/lib/commonjs/dates/internal/brand.js.map +1 -0
- package/lib/commonjs/dates/internal/calendarHelpers.js +22 -0
- package/lib/commonjs/dates/internal/calendarHelpers.js.map +1 -0
- package/lib/commonjs/dates/internal/clampHelpers.js +20 -0
- package/lib/commonjs/dates/internal/clampHelpers.js.map +1 -0
- package/lib/commonjs/dates/internal/dateIdToNativeDate.js +20 -0
- package/lib/commonjs/dates/internal/dateIdToNativeDate.js.map +1 -0
- package/lib/commonjs/dates/internal/intlCache.js +52 -0
- package/lib/commonjs/dates/internal/intlCache.js.map +1 -0
- package/lib/commonjs/dates/internal/intlCopy.js +72 -0
- package/lib/commonjs/dates/internal/intlCopy.js.map +1 -0
- package/lib/commonjs/dates/internal/segmentBuilders.js +98 -0
- package/lib/commonjs/dates/internal/segmentBuilders.js.map +1 -0
- package/lib/commonjs/dates/labels/dateComponentLabels.js +57 -0
- package/lib/commonjs/dates/labels/dateComponentLabels.js.map +1 -0
- package/lib/commonjs/dates/ranges/compareDateIds.js +26 -0
- package/lib/commonjs/dates/ranges/compareDateIds.js.map +1 -0
- package/lib/commonjs/dates/ranges/compareMonthIds.js +31 -0
- package/lib/commonjs/dates/ranges/compareMonthIds.js.map +1 -0
- package/lib/commonjs/dates/ranges/dateRangeAroundDay.js +25 -0
- package/lib/commonjs/dates/ranges/dateRangeAroundDay.js.map +1 -0
- package/lib/commonjs/dates/ranges/dateRangeFromLastNDays.js +28 -0
- package/lib/commonjs/dates/ranges/dateRangeFromLastNDays.js.map +1 -0
- package/lib/commonjs/dates/ranges/eachDateIdInRange.js +29 -0
- package/lib/commonjs/dates/ranges/eachDateIdInRange.js.map +1 -0
- package/lib/commonjs/dates/ranges/normalizeDateRange.js +23 -0
- package/lib/commonjs/dates/ranges/normalizeDateRange.js.map +1 -0
- package/lib/commonjs/dates/segments/applyDateSegmentChange.js +77 -0
- package/lib/commonjs/dates/segments/applyDateSegmentChange.js.map +1 -0
- package/lib/commonjs/dates/segments/formatDateSegment.js +19 -0
- package/lib/commonjs/dates/segments/formatDateSegment.js.map +1 -0
- package/lib/commonjs/dates/segments/getDateFieldSegments.js +44 -0
- package/lib/commonjs/dates/segments/getDateFieldSegments.js.map +1 -0
- package/lib/commonjs/dates/segments/getDateTimeFieldSegments.js +150 -0
- package/lib/commonjs/dates/segments/getDateTimeFieldSegments.js.map +1 -0
- package/lib/commonjs/dates/segments/getDateTimeSegmentVisibility.js +15 -0
- package/lib/commonjs/dates/segments/getDateTimeSegmentVisibility.js.map +1 -0
- package/lib/commonjs/dates/segments/getEmptyDateSegmentText.js +17 -0
- package/lib/commonjs/dates/segments/getEmptyDateSegmentText.js.map +1 -0
- package/lib/commonjs/dates/segments/parseDateSegment.js +26 -0
- package/lib/commonjs/dates/segments/parseDateSegment.js.map +1 -0
- package/lib/commonjs/dates/types.js +2 -0
- package/lib/commonjs/dates/types.js.map +1 -0
- package/lib/commonjs/dates/wire/clampDateParts.js +26 -0
- package/lib/commonjs/dates/wire/clampDateParts.js.map +1 -0
- package/lib/commonjs/dates/wire/clampMonthParts.js +23 -0
- package/lib/commonjs/dates/wire/clampMonthParts.js.map +1 -0
- package/lib/commonjs/dates/wire/dateId.js +50 -0
- package/lib/commonjs/dates/wire/dateId.js.map +1 -0
- package/lib/commonjs/dates/wire/formatDateId.js +25 -0
- package/lib/commonjs/dates/wire/formatDateId.js.map +1 -0
- package/lib/commonjs/dates/wire/formatMonthId.js +21 -0
- package/lib/commonjs/dates/wire/formatMonthId.js.map +1 -0
- package/lib/commonjs/dates/wire/isValidDateId.js +27 -0
- package/lib/commonjs/dates/wire/isValidDateId.js.map +1 -0
- package/lib/commonjs/dates/wire/isValidDateParts.js +18 -0
- package/lib/commonjs/dates/wire/isValidDateParts.js.map +1 -0
- package/lib/commonjs/dates/wire/isValidMonthId.js +27 -0
- package/lib/commonjs/dates/wire/isValidMonthId.js.map +1 -0
- package/lib/commonjs/dates/wire/isValidMonthParts.js +16 -0
- package/lib/commonjs/dates/wire/isValidMonthParts.js.map +1 -0
- package/lib/commonjs/dates/wire/monthId.js +47 -0
- package/lib/commonjs/dates/wire/monthId.js.map +1 -0
- package/lib/commonjs/dates/wire/parseDateId.js +29 -0
- package/lib/commonjs/dates/wire/parseDateId.js.map +1 -0
- package/lib/commonjs/dates/wire/parseMonthId.js +28 -0
- package/lib/commonjs/dates/wire/parseMonthId.js.map +1 -0
- package/lib/commonjs/dates/wire/toMonthId.js +22 -0
- package/lib/commonjs/dates/wire/toMonthId.js.map +1 -0
- package/lib/commonjs/dates/wire/todayDateId.js +17 -0
- package/lib/commonjs/dates/wire/todayDateId.js.map +1 -0
- package/lib/commonjs/dates/wire/todayMonthId.js +17 -0
- package/lib/commonjs/dates/wire/todayMonthId.js.map +1 -0
- package/lib/commonjs/formatNumber.js +50 -0
- package/lib/commonjs/formatNumber.js.map +1 -0
- package/lib/commonjs/index.js +326 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/types.js +2 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/commonjs/utils.js +33 -0
- package/lib/commonjs/utils.js.map +1 -0
- package/lib/module/dates/calendar/formatCalendarMonthYear.js +24 -0
- package/lib/module/dates/calendar/formatCalendarMonthYear.js.map +1 -0
- package/lib/module/dates/calendar/formatDateTimeListDateRow.js +36 -0
- package/lib/module/dates/calendar/formatDateTimeListDateRow.js.map +1 -0
- package/lib/module/dates/calendar/formatMonthCalendarMonth.js +24 -0
- package/lib/module/dates/calendar/formatMonthCalendarMonth.js.map +1 -0
- package/lib/module/dates/calendar/formatMonthCalendarYear.js +12 -0
- package/lib/module/dates/calendar/formatMonthCalendarYear.js.map +1 -0
- package/lib/module/dates/calendar/getCalendarWeekdayLabels.js +19 -0
- package/lib/module/dates/calendar/getCalendarWeekdayLabels.js.map +1 -0
- package/lib/module/dates/datetime/clampDateTimeId.js +24 -0
- package/lib/module/dates/datetime/clampDateTimeId.js.map +1 -0
- package/lib/module/dates/datetime/compareDateTimeIds.js +24 -0
- package/lib/module/dates/datetime/compareDateTimeIds.js.map +1 -0
- package/lib/module/dates/datetime/dateTimeId.js +35 -0
- package/lib/module/dates/datetime/dateTimeId.js.map +1 -0
- package/lib/module/dates/datetime/formatDateTimeId.js +23 -0
- package/lib/module/dates/datetime/formatDateTimeId.js.map +1 -0
- package/lib/module/dates/datetime/formatDateTimeListHour.js +17 -0
- package/lib/module/dates/datetime/formatDateTimeListHour.js.map +1 -0
- package/lib/module/dates/datetime/formatDateTimeListMinute.js +12 -0
- package/lib/module/dates/datetime/formatDateTimeListMinute.js.map +1 -0
- package/lib/module/dates/datetime/formatDateTimeListPeriod.js +13 -0
- package/lib/module/dates/datetime/formatDateTimeListPeriod.js.map +1 -0
- package/lib/module/dates/datetime/isLocaleHour12.js +26 -0
- package/lib/module/dates/datetime/isLocaleHour12.js.map +1 -0
- package/lib/module/dates/datetime/isValidDateTimeId.js +19 -0
- package/lib/module/dates/datetime/isValidDateTimeId.js.map +1 -0
- package/lib/module/dates/datetime/nowDateTimeId.js +54 -0
- package/lib/module/dates/datetime/nowDateTimeId.js.map +1 -0
- package/lib/module/dates/datetime/parseDateTimeId.js +26 -0
- package/lib/module/dates/datetime/parseDateTimeId.js.map +1 -0
- package/lib/module/dates/display/formatDateForDisplay.js +24 -0
- package/lib/module/dates/display/formatDateForDisplay.js.map +1 -0
- package/lib/module/dates/display/formatDateRangeForDisplay.js +22 -0
- package/lib/module/dates/display/formatDateRangeForDisplay.js.map +1 -0
- package/lib/module/dates/display/formatDateTimeForDisplay.js +30 -0
- package/lib/module/dates/display/formatDateTimeForDisplay.js.map +1 -0
- package/lib/module/dates/display/formatMonthForDisplay.js +29 -0
- package/lib/module/dates/display/formatMonthForDisplay.js.map +1 -0
- package/lib/module/dates/index.js +59 -0
- package/lib/module/dates/index.js.map +1 -0
- package/lib/module/dates/internal/brand.js +12 -0
- package/lib/module/dates/internal/brand.js.map +1 -0
- package/lib/module/dates/internal/calendarHelpers.js +19 -0
- package/lib/module/dates/internal/calendarHelpers.js.map +1 -0
- package/lib/module/dates/internal/clampHelpers.js +14 -0
- package/lib/module/dates/internal/clampHelpers.js.map +1 -0
- package/lib/module/dates/internal/dateIdToNativeDate.js +16 -0
- package/lib/module/dates/internal/dateIdToNativeDate.js.map +1 -0
- package/lib/module/dates/internal/intlCache.js +47 -0
- package/lib/module/dates/internal/intlCache.js.map +1 -0
- package/lib/module/dates/internal/intlCopy.js +66 -0
- package/lib/module/dates/internal/intlCopy.js.map +1 -0
- package/lib/module/dates/internal/segmentBuilders.js +91 -0
- package/lib/module/dates/internal/segmentBuilders.js.map +1 -0
- package/lib/module/dates/labels/dateComponentLabels.js +50 -0
- package/lib/module/dates/labels/dateComponentLabels.js.map +1 -0
- package/lib/module/dates/ranges/compareDateIds.js +22 -0
- package/lib/module/dates/ranges/compareDateIds.js.map +1 -0
- package/lib/module/dates/ranges/compareMonthIds.js +27 -0
- package/lib/module/dates/ranges/compareMonthIds.js.map +1 -0
- package/lib/module/dates/ranges/dateRangeAroundDay.js +21 -0
- package/lib/module/dates/ranges/dateRangeAroundDay.js.map +1 -0
- package/lib/module/dates/ranges/dateRangeFromLastNDays.js +24 -0
- package/lib/module/dates/ranges/dateRangeFromLastNDays.js.map +1 -0
- package/lib/module/dates/ranges/eachDateIdInRange.js +26 -0
- package/lib/module/dates/ranges/eachDateIdInRange.js.map +1 -0
- package/lib/module/dates/ranges/normalizeDateRange.js +20 -0
- package/lib/module/dates/ranges/normalizeDateRange.js.map +1 -0
- package/lib/module/dates/segments/applyDateSegmentChange.js +73 -0
- package/lib/module/dates/segments/applyDateSegmentChange.js.map +1 -0
- package/lib/module/dates/segments/formatDateSegment.js +15 -0
- package/lib/module/dates/segments/formatDateSegment.js.map +1 -0
- package/lib/module/dates/segments/getDateFieldSegments.js +40 -0
- package/lib/module/dates/segments/getDateFieldSegments.js.map +1 -0
- package/lib/module/dates/segments/getDateTimeFieldSegments.js +147 -0
- package/lib/module/dates/segments/getDateTimeFieldSegments.js.map +1 -0
- package/lib/module/dates/segments/getDateTimeSegmentVisibility.js +11 -0
- package/lib/module/dates/segments/getDateTimeSegmentVisibility.js.map +1 -0
- package/lib/module/dates/segments/getEmptyDateSegmentText.js +13 -0
- package/lib/module/dates/segments/getEmptyDateSegmentText.js.map +1 -0
- package/lib/module/dates/segments/parseDateSegment.js +22 -0
- package/lib/module/dates/segments/parseDateSegment.js.map +1 -0
- package/lib/module/dates/types.js +2 -0
- package/lib/module/dates/types.js.map +1 -0
- package/lib/module/dates/wire/clampDateParts.js +22 -0
- package/lib/module/dates/wire/clampDateParts.js.map +1 -0
- package/lib/module/dates/wire/clampMonthParts.js +19 -0
- package/lib/module/dates/wire/clampMonthParts.js.map +1 -0
- package/lib/module/dates/wire/dateId.js +47 -0
- package/lib/module/dates/wire/dateId.js.map +1 -0
- package/lib/module/dates/wire/formatDateId.js +22 -0
- package/lib/module/dates/wire/formatDateId.js.map +1 -0
- package/lib/module/dates/wire/formatMonthId.js +17 -0
- package/lib/module/dates/wire/formatMonthId.js.map +1 -0
- package/lib/module/dates/wire/isValidDateId.js +23 -0
- package/lib/module/dates/wire/isValidDateId.js.map +1 -0
- package/lib/module/dates/wire/isValidDateParts.js +14 -0
- package/lib/module/dates/wire/isValidDateParts.js.map +1 -0
- package/lib/module/dates/wire/isValidMonthId.js +23 -0
- package/lib/module/dates/wire/isValidMonthId.js.map +1 -0
- package/lib/module/dates/wire/isValidMonthParts.js +12 -0
- package/lib/module/dates/wire/isValidMonthParts.js.map +1 -0
- package/lib/module/dates/wire/monthId.js +44 -0
- package/lib/module/dates/wire/monthId.js.map +1 -0
- package/lib/module/dates/wire/parseDateId.js +26 -0
- package/lib/module/dates/wire/parseDateId.js.map +1 -0
- package/lib/module/dates/wire/parseMonthId.js +25 -0
- package/lib/module/dates/wire/parseMonthId.js.map +1 -0
- package/lib/module/dates/wire/toMonthId.js +18 -0
- package/lib/module/dates/wire/toMonthId.js.map +1 -0
- package/lib/module/dates/wire/todayDateId.js +13 -0
- package/lib/module/dates/wire/todayDateId.js.map +1 -0
- package/lib/module/dates/wire/todayMonthId.js +13 -0
- package/lib/module/dates/wire/todayMonthId.js.map +1 -0
- package/lib/module/formatNumber.js +46 -0
- package/lib/module/formatNumber.js.map +1 -0
- package/lib/module/index.js +17 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/module/utils.js +29 -0
- package/lib/module/utils.js.map +1 -0
- package/lib/typescript/dates/calendar/formatCalendarMonthYear.d.ts +12 -0
- package/lib/typescript/dates/calendar/formatCalendarMonthYear.d.ts.map +1 -0
- package/lib/typescript/dates/calendar/formatDateTimeListDateRow.d.ts +13 -0
- package/lib/typescript/dates/calendar/formatDateTimeListDateRow.d.ts.map +1 -0
- package/lib/typescript/dates/calendar/formatMonthCalendarMonth.d.ts +13 -0
- package/lib/typescript/dates/calendar/formatMonthCalendarMonth.d.ts.map +1 -0
- package/lib/typescript/dates/calendar/formatMonthCalendarYear.d.ts +8 -0
- package/lib/typescript/dates/calendar/formatMonthCalendarYear.d.ts.map +1 -0
- package/lib/typescript/dates/calendar/getCalendarWeekdayLabels.d.ts +12 -0
- package/lib/typescript/dates/calendar/getCalendarWeekdayLabels.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/clampDateTimeId.d.ts +16 -0
- package/lib/typescript/dates/datetime/clampDateTimeId.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/compareDateTimeIds.d.ts +13 -0
- package/lib/typescript/dates/datetime/compareDateTimeIds.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/dateTimeId.d.ts +18 -0
- package/lib/typescript/dates/datetime/dateTimeId.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/formatDateTimeId.d.ts +12 -0
- package/lib/typescript/dates/datetime/formatDateTimeId.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/formatDateTimeListHour.d.ts +11 -0
- package/lib/typescript/dates/datetime/formatDateTimeListHour.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/formatDateTimeListMinute.d.ts +8 -0
- package/lib/typescript/dates/datetime/formatDateTimeListMinute.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/formatDateTimeListPeriod.d.ts +9 -0
- package/lib/typescript/dates/datetime/formatDateTimeListPeriod.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/isLocaleHour12.d.ts +12 -0
- package/lib/typescript/dates/datetime/isLocaleHour12.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/isValidDateTimeId.d.ts +9 -0
- package/lib/typescript/dates/datetime/isValidDateTimeId.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/nowDateTimeId.d.ts +14 -0
- package/lib/typescript/dates/datetime/nowDateTimeId.d.ts.map +1 -0
- package/lib/typescript/dates/datetime/parseDateTimeId.d.ts +9 -0
- package/lib/typescript/dates/datetime/parseDateTimeId.d.ts.map +1 -0
- package/lib/typescript/dates/display/formatDateForDisplay.d.ts +13 -0
- package/lib/typescript/dates/display/formatDateForDisplay.d.ts.map +1 -0
- package/lib/typescript/dates/display/formatDateRangeForDisplay.d.ts +16 -0
- package/lib/typescript/dates/display/formatDateRangeForDisplay.d.ts.map +1 -0
- package/lib/typescript/dates/display/formatDateTimeForDisplay.d.ts +13 -0
- package/lib/typescript/dates/display/formatDateTimeForDisplay.d.ts.map +1 -0
- package/lib/typescript/dates/display/formatMonthForDisplay.d.ts +13 -0
- package/lib/typescript/dates/display/formatMonthForDisplay.d.ts.map +1 -0
- package/lib/typescript/dates/index.d.ts +58 -0
- package/lib/typescript/dates/index.d.ts.map +1 -0
- package/lib/typescript/dates/internal/brand.d.ts +11 -0
- package/lib/typescript/dates/internal/brand.d.ts.map +1 -0
- package/lib/typescript/dates/internal/calendarHelpers.d.ts +8 -0
- package/lib/typescript/dates/internal/calendarHelpers.d.ts.map +1 -0
- package/lib/typescript/dates/internal/clampHelpers.d.ts +5 -0
- package/lib/typescript/dates/internal/clampHelpers.d.ts.map +1 -0
- package/lib/typescript/dates/internal/dateIdToNativeDate.d.ts +12 -0
- package/lib/typescript/dates/internal/dateIdToNativeDate.d.ts.map +1 -0
- package/lib/typescript/dates/internal/intlCache.d.ts +12 -0
- package/lib/typescript/dates/internal/intlCache.d.ts.map +1 -0
- package/lib/typescript/dates/internal/intlCopy.d.ts +10 -0
- package/lib/typescript/dates/internal/intlCopy.d.ts.map +1 -0
- package/lib/typescript/dates/internal/segmentBuilders.d.ts +12 -0
- package/lib/typescript/dates/internal/segmentBuilders.d.ts.map +1 -0
- package/lib/typescript/dates/labels/dateComponentLabels.d.ts +31 -0
- package/lib/typescript/dates/labels/dateComponentLabels.d.ts.map +1 -0
- package/lib/typescript/dates/ranges/compareDateIds.d.ts +10 -0
- package/lib/typescript/dates/ranges/compareDateIds.d.ts.map +1 -0
- package/lib/typescript/dates/ranges/compareMonthIds.d.ts +10 -0
- package/lib/typescript/dates/ranges/compareMonthIds.d.ts.map +1 -0
- package/lib/typescript/dates/ranges/dateRangeAroundDay.d.ts +14 -0
- package/lib/typescript/dates/ranges/dateRangeAroundDay.d.ts.map +1 -0
- package/lib/typescript/dates/ranges/dateRangeFromLastNDays.d.ts +16 -0
- package/lib/typescript/dates/ranges/dateRangeFromLastNDays.d.ts.map +1 -0
- package/lib/typescript/dates/ranges/eachDateIdInRange.d.ts +10 -0
- package/lib/typescript/dates/ranges/eachDateIdInRange.d.ts.map +1 -0
- package/lib/typescript/dates/ranges/normalizeDateRange.d.ts +15 -0
- package/lib/typescript/dates/ranges/normalizeDateRange.d.ts.map +1 -0
- package/lib/typescript/dates/segments/applyDateSegmentChange.d.ts +21 -0
- package/lib/typescript/dates/segments/applyDateSegmentChange.d.ts.map +1 -0
- package/lib/typescript/dates/segments/formatDateSegment.d.ts +13 -0
- package/lib/typescript/dates/segments/formatDateSegment.d.ts.map +1 -0
- package/lib/typescript/dates/segments/getDateFieldSegments.d.ts +13 -0
- package/lib/typescript/dates/segments/getDateFieldSegments.d.ts.map +1 -0
- package/lib/typescript/dates/segments/getDateTimeFieldSegments.d.ts +14 -0
- package/lib/typescript/dates/segments/getDateTimeFieldSegments.d.ts.map +1 -0
- package/lib/typescript/dates/segments/getDateTimeSegmentVisibility.d.ts +8 -0
- package/lib/typescript/dates/segments/getDateTimeSegmentVisibility.d.ts.map +1 -0
- package/lib/typescript/dates/segments/getEmptyDateSegmentText.d.ts +9 -0
- package/lib/typescript/dates/segments/getEmptyDateSegmentText.d.ts.map +1 -0
- package/lib/typescript/dates/segments/parseDateSegment.d.ts +13 -0
- package/lib/typescript/dates/segments/parseDateSegment.d.ts.map +1 -0
- package/lib/typescript/dates/types.d.ts +66 -0
- package/lib/typescript/dates/types.d.ts.map +1 -0
- package/lib/typescript/dates/wire/clampDateParts.d.ts +12 -0
- package/lib/typescript/dates/wire/clampDateParts.d.ts.map +1 -0
- package/lib/typescript/dates/wire/clampMonthParts.d.ts +12 -0
- package/lib/typescript/dates/wire/clampMonthParts.d.ts.map +1 -0
- package/lib/typescript/dates/wire/dateId.d.ts +24 -0
- package/lib/typescript/dates/wire/dateId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/formatDateId.d.ts +12 -0
- package/lib/typescript/dates/wire/formatDateId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/formatMonthId.d.ts +12 -0
- package/lib/typescript/dates/wire/formatMonthId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/isValidDateId.d.ts +13 -0
- package/lib/typescript/dates/wire/isValidDateId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/isValidDateParts.d.ts +9 -0
- package/lib/typescript/dates/wire/isValidDateParts.d.ts.map +1 -0
- package/lib/typescript/dates/wire/isValidMonthId.d.ts +13 -0
- package/lib/typescript/dates/wire/isValidMonthId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/isValidMonthParts.d.ts +9 -0
- package/lib/typescript/dates/wire/isValidMonthParts.d.ts.map +1 -0
- package/lib/typescript/dates/wire/monthId.d.ts +22 -0
- package/lib/typescript/dates/wire/monthId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/parseDateId.d.ts +12 -0
- package/lib/typescript/dates/wire/parseDateId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/parseMonthId.d.ts +12 -0
- package/lib/typescript/dates/wire/parseMonthId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/toMonthId.d.ts +12 -0
- package/lib/typescript/dates/wire/toMonthId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/todayDateId.d.ts +8 -0
- package/lib/typescript/dates/wire/todayDateId.d.ts.map +1 -0
- package/lib/typescript/dates/wire/todayMonthId.d.ts +8 -0
- package/lib/typescript/dates/wire/todayMonthId.d.ts.map +1 -0
- package/lib/typescript/formatNumber.d.ts +19 -0
- package/lib/typescript/formatNumber.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +5 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +2 -0
- package/lib/typescript/types.d.ts.map +1 -0
- package/lib/typescript/utils.d.ts +10 -0
- package/lib/typescript/utils.d.ts.map +1 -0
- package/package.json +50 -0
- package/src/__tests__/applyDateSegmentChange.test.ts +26 -0
- package/src/__tests__/calendarFormatters.test.ts +35 -0
- package/src/__tests__/clampDateParts.test.ts +16 -0
- package/src/__tests__/compareDateIds.test.ts +7 -0
- package/src/__tests__/compareMonthIds.test.ts +19 -0
- package/src/__tests__/dateComponentLabels.test.ts +25 -0
- package/src/__tests__/dateRangeAroundDay.test.ts +10 -0
- package/src/__tests__/dateRangeFromLastNDays.test.ts +8 -0
- package/src/__tests__/dateSegmentHelpers.test.ts +24 -0
- package/src/__tests__/datetimeHelpers.test.ts +65 -0
- package/src/__tests__/displayFormatters.test.ts +34 -0
- package/src/__tests__/eachDateIdInRange.test.ts +11 -0
- package/src/__tests__/formatCalendarMonthYear.test.ts +9 -0
- package/src/__tests__/formatDateForDisplay.test.ts +11 -0
- package/src/__tests__/formatDateId.test.ts +15 -0
- package/src/__tests__/formatMonthId.test.ts +7 -0
- package/src/__tests__/formatNumber.test.ts +35 -0
- package/src/__tests__/getDateFieldSegments.test.ts +35 -0
- package/src/__tests__/getDateTimeFieldSegments.test.ts +140 -0
- package/src/__tests__/getDateTimeSegmentVisibility.test.ts +12 -0
- package/src/__tests__/intlCopy.test.ts +64 -0
- package/src/__tests__/isValidDateId.test.ts +8 -0
- package/src/__tests__/isValidMonthId.test.ts +8 -0
- package/src/__tests__/normalizeDateRange.test.ts +10 -0
- package/src/__tests__/toMonthId.test.ts +7 -0
- package/src/__tests__/todayDateId.test.ts +7 -0
- package/src/__tests__/wireConstructors.test.ts +74 -0
- package/src/dates/calendar/formatCalendarMonthYear.ts +21 -0
- package/src/dates/calendar/formatDateTimeListDateRow.ts +41 -0
- package/src/dates/calendar/formatMonthCalendarMonth.ts +21 -0
- package/src/dates/calendar/formatMonthCalendarYear.ts +9 -0
- package/src/dates/calendar/getCalendarWeekdayLabels.ts +23 -0
- package/src/dates/datetime/clampDateTimeId.ts +25 -0
- package/src/dates/datetime/compareDateTimeIds.ts +23 -0
- package/src/dates/datetime/dateTimeId.ts +36 -0
- package/src/dates/datetime/formatDateTimeId.ts +35 -0
- package/src/dates/datetime/formatDateTimeListHour.ts +14 -0
- package/src/dates/datetime/formatDateTimeListMinute.ts +9 -0
- package/src/dates/datetime/formatDateTimeListPeriod.ts +12 -0
- package/src/dates/datetime/isLocaleHour12.ts +23 -0
- package/src/dates/datetime/isValidDateTimeId.ts +18 -0
- package/src/dates/datetime/nowDateTimeId.ts +53 -0
- package/src/dates/datetime/parseDateTimeId.ts +24 -0
- package/src/dates/display/formatDateForDisplay.ts +21 -0
- package/src/dates/display/formatDateRangeForDisplay.ts +23 -0
- package/src/dates/display/formatDateTimeForDisplay.ts +37 -0
- package/src/dates/display/formatMonthForDisplay.ts +26 -0
- package/src/dates/index.ts +86 -0
- package/src/dates/internal/brand.ts +11 -0
- package/src/dates/internal/calendarHelpers.ts +18 -0
- package/src/dates/internal/clampHelpers.ts +15 -0
- package/src/dates/internal/dateIdToNativeDate.ts +15 -0
- package/src/dates/internal/intlCache.ts +40 -0
- package/src/dates/internal/intlCopy.ts +75 -0
- package/src/dates/internal/segmentBuilders.ts +94 -0
- package/src/dates/labels/dateComponentLabels.ts +79 -0
- package/src/dates/ranges/compareDateIds.ts +21 -0
- package/src/dates/ranges/compareMonthIds.ts +26 -0
- package/src/dates/ranges/dateRangeAroundDay.ts +24 -0
- package/src/dates/ranges/dateRangeFromLastNDays.ts +26 -0
- package/src/dates/ranges/eachDateIdInRange.ts +21 -0
- package/src/dates/ranges/normalizeDateRange.ts +18 -0
- package/src/dates/segments/applyDateSegmentChange.ts +57 -0
- package/src/dates/segments/formatDateSegment.ts +18 -0
- package/src/dates/segments/getDateFieldSegments.ts +45 -0
- package/src/dates/segments/getDateTimeFieldSegments.ts +126 -0
- package/src/dates/segments/getDateTimeSegmentVisibility.ts +14 -0
- package/src/dates/segments/getEmptyDateSegmentText.ts +12 -0
- package/src/dates/segments/parseDateSegment.ts +25 -0
- package/src/dates/types.ts +80 -0
- package/src/dates/wire/clampDateParts.ts +17 -0
- package/src/dates/wire/clampMonthParts.ts +15 -0
- package/src/dates/wire/dateId.ts +44 -0
- package/src/dates/wire/formatDateId.ts +20 -0
- package/src/dates/wire/formatMonthId.ts +16 -0
- package/src/dates/wire/isValidDateId.ts +22 -0
- package/src/dates/wire/isValidDateParts.ts +17 -0
- package/src/dates/wire/isValidMonthId.ts +22 -0
- package/src/dates/wire/isValidMonthParts.ts +11 -0
- package/src/dates/wire/monthId.ts +42 -0
- package/src/dates/wire/parseDateId.ts +20 -0
- package/src/dates/wire/parseMonthId.ts +20 -0
- package/src/dates/wire/toMonthId.ts +17 -0
- package/src/dates/wire/todayDateId.ts +12 -0
- package/src/dates/wire/todayMonthId.ts +12 -0
- package/src/formatNumber.ts +56 -0
- package/src/index.ts +82 -0
- package/src/types.ts +1 -0
- package/src/utils.ts +29 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getDateFieldSegments = getDateFieldSegments;
|
|
7
|
+
var _brand = require("../internal/brand");
|
|
8
|
+
var _segmentBuilders = require("../internal/segmentBuilders");
|
|
9
|
+
var _parseDateId = require("../wire/parseDateId");
|
|
10
|
+
var _parseMonthId = require("../wire/parseMonthId");
|
|
11
|
+
/**
|
|
12
|
+
* Builds ordered editable and literal segments for a date or month field from a wire value.
|
|
13
|
+
*
|
|
14
|
+
* @param value - Wire `DateId` or `MonthId`, or empty for placeholder segments.
|
|
15
|
+
* @param options - Field mode and optional locale.
|
|
16
|
+
* @returns Ordered `DateSegment` array matching locale field order.
|
|
17
|
+
*/
|
|
18
|
+
function getDateFieldSegments(value, options) {
|
|
19
|
+
const locale = options.locale ?? 'en-US';
|
|
20
|
+
if (!value) {
|
|
21
|
+
return (0, _segmentBuilders.buildEmptyDateFieldSegments)(options.mode, locale);
|
|
22
|
+
}
|
|
23
|
+
if (options.mode === 'month') {
|
|
24
|
+
const parts = (0, _parseMonthId.parseMonthId)((0, _brand.asMonthId)(value));
|
|
25
|
+
if (!parts) {
|
|
26
|
+
return (0, _segmentBuilders.buildEmptyDateFieldSegments)('month', locale);
|
|
27
|
+
}
|
|
28
|
+
return (0, _segmentBuilders.buildDateFieldSegments)({
|
|
29
|
+
year: parts.year,
|
|
30
|
+
month: parts.month,
|
|
31
|
+
day: 1
|
|
32
|
+
}, 'month', locale);
|
|
33
|
+
}
|
|
34
|
+
const parts = (0, _parseDateId.parseDateId)((0, _brand.asDateId)(value));
|
|
35
|
+
if (!parts) {
|
|
36
|
+
return (0, _segmentBuilders.buildEmptyDateFieldSegments)('date', locale);
|
|
37
|
+
}
|
|
38
|
+
return (0, _segmentBuilders.buildDateFieldSegments)({
|
|
39
|
+
year: parts.year,
|
|
40
|
+
month: parts.month,
|
|
41
|
+
day: parts.day
|
|
42
|
+
}, 'date', locale);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=getDateFieldSegments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_brand","require","_segmentBuilders","_parseDateId","_parseMonthId","getDateFieldSegments","value","options","locale","buildEmptyDateFieldSegments","mode","parts","parseMonthId","asMonthId","buildDateFieldSegments","year","month","day","parseDateId","asDateId"],"sourceRoot":"../../../../src","sources":["dates/segments/getDateFieldSegments.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASI,oBAAoBA,CAClCC,KAA0C,EAC1CC,OAAiD,EAClC;EACf,MAAMC,MAAM,GAAGD,OAAO,CAACC,MAAM,IAAI,OAAO;EAExC,IAAI,CAACF,KAAK,EAAE;IACV,OAAO,IAAAG,4CAA2B,EAACF,OAAO,CAACG,IAAI,EAAEF,MAAM,CAAC;EAC1D;EAEA,IAAID,OAAO,CAACG,IAAI,KAAK,OAAO,EAAE;IAC5B,MAAMC,KAAK,GAAG,IAAAC,0BAAY,EAAC,IAAAC,gBAAS,EAACP,KAAK,CAAC,CAAC;IAC5C,IAAI,CAACK,KAAK,EAAE;MACV,OAAO,IAAAF,4CAA2B,EAAC,OAAO,EAAED,MAAM,CAAC;IACrD;IACA,OAAO,IAAAM,uCAAsB,EAC3B;MAAEC,IAAI,EAAEJ,KAAK,CAACI,IAAI;MAAEC,KAAK,EAAEL,KAAK,CAACK,KAAK;MAAEC,GAAG,EAAE;IAAE,CAAC,EAChD,OAAO,EACPT,MACF,CAAC;EACH;EAEA,MAAMG,KAAK,GAAG,IAAAO,wBAAW,EAAC,IAAAC,eAAQ,EAACb,KAAK,CAAC,CAAC;EAC1C,IAAI,CAACK,KAAK,EAAE;IACV,OAAO,IAAAF,4CAA2B,EAAC,MAAM,EAAED,MAAM,CAAC;EACpD;EACA,OAAO,IAAAM,uCAAsB,EAC3B;IAAEC,IAAI,EAAEJ,KAAK,CAACI,IAAI;IAAEC,KAAK,EAAEL,KAAK,CAACK,KAAK;IAAEC,GAAG,EAAEN,KAAK,CAACM;EAAI,CAAC,EACxD,MAAM,EACNT,MACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getDateTimeFieldSegments = getDateTimeFieldSegments;
|
|
7
|
+
var _intlCopy = require("../internal/intlCopy");
|
|
8
|
+
var _segmentBuilders = require("../internal/segmentBuilders");
|
|
9
|
+
var _formatDateId = require("../wire/formatDateId");
|
|
10
|
+
var _isLocaleHour = require("../datetime/isLocaleHour12");
|
|
11
|
+
var _parseDateTimeId = require("../datetime/parseDateTimeId");
|
|
12
|
+
var _getDateFieldSegments = require("./getDateFieldSegments");
|
|
13
|
+
var _getDateTimeSegmentVisibility = require("./getDateTimeSegmentVisibility");
|
|
14
|
+
/**
|
|
15
|
+
* Builds ordered segments for a date-time field for the given granularity.
|
|
16
|
+
*
|
|
17
|
+
* @param value - Wire `DateTimeId`, or empty for placeholder segments.
|
|
18
|
+
* @param options - Granularity, locale, and 12/24-hour preference.
|
|
19
|
+
* @returns Ordered `DateSegment` array including date and time parts.
|
|
20
|
+
*/
|
|
21
|
+
function getDateTimeFieldSegments(value, options) {
|
|
22
|
+
const parts = value ? (0, _parseDateTimeId.parseDateTimeId)(value) : null;
|
|
23
|
+
const locale = options.locale ?? 'en-US';
|
|
24
|
+
const hour12 = options.hour12 ?? (0, _isLocaleHour.isLocaleHour12)(locale);
|
|
25
|
+
const segments = (0, _getDateFieldSegments.getDateFieldSegments)(parts ? (0, _formatDateId.formatDateId)(parts) : undefined, {
|
|
26
|
+
mode: 'date',
|
|
27
|
+
locale: options.locale
|
|
28
|
+
});
|
|
29
|
+
if (options.granularity === 'day') {
|
|
30
|
+
return segments;
|
|
31
|
+
}
|
|
32
|
+
const {
|
|
33
|
+
showMinute,
|
|
34
|
+
showSecond
|
|
35
|
+
} = (0, _getDateTimeSegmentVisibility.getDateTimeSegmentVisibility)(options.granularity);
|
|
36
|
+
if (!parts) {
|
|
37
|
+
segments.push({
|
|
38
|
+
type: 'literal',
|
|
39
|
+
text: ' ',
|
|
40
|
+
isEditable: false
|
|
41
|
+
});
|
|
42
|
+
segments.push({
|
|
43
|
+
type: 'hour',
|
|
44
|
+
text: hour12 ? _segmentBuilders.EMPTY_TIME_SEGMENT_TEXT.hour : 'HH',
|
|
45
|
+
isEditable: true
|
|
46
|
+
});
|
|
47
|
+
if (showMinute) {
|
|
48
|
+
segments.push({
|
|
49
|
+
type: 'literal',
|
|
50
|
+
text: ':',
|
|
51
|
+
isEditable: false
|
|
52
|
+
});
|
|
53
|
+
segments.push({
|
|
54
|
+
type: 'minute',
|
|
55
|
+
text: _segmentBuilders.EMPTY_TIME_SEGMENT_TEXT.minute,
|
|
56
|
+
isEditable: true
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
if (showSecond) {
|
|
60
|
+
segments.push({
|
|
61
|
+
type: 'literal',
|
|
62
|
+
text: ':',
|
|
63
|
+
isEditable: false
|
|
64
|
+
});
|
|
65
|
+
segments.push({
|
|
66
|
+
type: 'second',
|
|
67
|
+
text: _segmentBuilders.EMPTY_TIME_SEGMENT_TEXT.second,
|
|
68
|
+
isEditable: true
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
if (hour12) {
|
|
72
|
+
segments.push({
|
|
73
|
+
type: 'literal',
|
|
74
|
+
text: ' ',
|
|
75
|
+
isEditable: false
|
|
76
|
+
});
|
|
77
|
+
segments.push({
|
|
78
|
+
type: 'dayPeriod',
|
|
79
|
+
text: _segmentBuilders.EMPTY_TIME_SEGMENT_TEXT.dayPeriod,
|
|
80
|
+
isEditable: true
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
return segments;
|
|
84
|
+
}
|
|
85
|
+
const hour = parts.hour;
|
|
86
|
+
const minute = parts.minute;
|
|
87
|
+
segments.push({
|
|
88
|
+
type: 'literal',
|
|
89
|
+
text: ' ',
|
|
90
|
+
isEditable: false
|
|
91
|
+
});
|
|
92
|
+
if (hour12) {
|
|
93
|
+
const hour12Value = hour % 12 || 12;
|
|
94
|
+
segments.push({
|
|
95
|
+
type: 'hour',
|
|
96
|
+
text: String(hour12Value),
|
|
97
|
+
value: hour12Value,
|
|
98
|
+
isEditable: true
|
|
99
|
+
});
|
|
100
|
+
} else {
|
|
101
|
+
segments.push({
|
|
102
|
+
type: 'hour',
|
|
103
|
+
text: (0, _segmentBuilders.padSegment)('hour', hour),
|
|
104
|
+
value: hour,
|
|
105
|
+
isEditable: true
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
if (showMinute) {
|
|
109
|
+
segments.push({
|
|
110
|
+
type: 'literal',
|
|
111
|
+
text: ':',
|
|
112
|
+
isEditable: false
|
|
113
|
+
});
|
|
114
|
+
segments.push({
|
|
115
|
+
type: 'minute',
|
|
116
|
+
text: (0, _segmentBuilders.padSegment)('minute', minute),
|
|
117
|
+
value: minute,
|
|
118
|
+
isEditable: true
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
if (showSecond) {
|
|
122
|
+
segments.push({
|
|
123
|
+
type: 'literal',
|
|
124
|
+
text: ':',
|
|
125
|
+
isEditable: false
|
|
126
|
+
});
|
|
127
|
+
segments.push({
|
|
128
|
+
type: 'second',
|
|
129
|
+
text: (0, _segmentBuilders.padSegment)('second', parts.second ?? 0),
|
|
130
|
+
value: parts.second ?? 0,
|
|
131
|
+
isEditable: true
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
if (hour12) {
|
|
135
|
+
const isPm = hour >= 12;
|
|
136
|
+
segments.push({
|
|
137
|
+
type: 'literal',
|
|
138
|
+
text: ' ',
|
|
139
|
+
isEditable: false
|
|
140
|
+
});
|
|
141
|
+
segments.push({
|
|
142
|
+
type: 'dayPeriod',
|
|
143
|
+
text: (0, _intlCopy.formatDayPeriodFromHour)(isPm ? 13 : 9, locale),
|
|
144
|
+
value: isPm ? 1 : 0,
|
|
145
|
+
isEditable: true
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
return segments;
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=getDateTimeFieldSegments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_intlCopy","require","_segmentBuilders","_formatDateId","_isLocaleHour","_parseDateTimeId","_getDateFieldSegments","_getDateTimeSegmentVisibility","getDateTimeFieldSegments","value","options","parts","parseDateTimeId","locale","hour12","isLocaleHour12","segments","getDateFieldSegments","formatDateId","undefined","mode","granularity","showMinute","showSecond","getDateTimeSegmentVisibility","push","type","text","isEditable","EMPTY_TIME_SEGMENT_TEXT","hour","minute","second","dayPeriod","hour12Value","String","padSegment","isPm","formatDayPeriodFromHour"],"sourceRoot":"../../../../src","sources":["dates/segments/getDateTimeFieldSegments.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AAEA,IAAAK,qBAAA,GAAAL,OAAA;AACA,IAAAM,6BAAA,GAAAN,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASO,wBAAwBA,CACtCC,KAAoC,EACpCC,OAAgF,EACjE;EACf,MAAMC,KAAK,GAAGF,KAAK,GAAG,IAAAG,gCAAe,EAACH,KAAK,CAAC,GAAG,IAAI;EACnD,MAAMI,MAAM,GAAGH,OAAO,CAACG,MAAM,IAAI,OAAO;EACxC,MAAMC,MAAM,GAAGJ,OAAO,CAACI,MAAM,IAAI,IAAAC,4BAAc,EAACF,MAAM,CAAC;EACvD,MAAMG,QAAuB,GAAG,IAAAC,0CAAoB,EAACN,KAAK,GAAG,IAAAO,0BAAY,EAACP,KAAK,CAAC,GAAGQ,SAAS,EAAE;IAC5FC,IAAI,EAAE,MAAM;IACZP,MAAM,EAAEH,OAAO,CAACG;EAClB,CAAC,CAAC;EAEF,IAAIH,OAAO,CAACW,WAAW,KAAK,KAAK,EAAE;IACjC,OAAOL,QAAQ;EACjB;EAEA,MAAM;IAAEM,UAAU;IAAEC;EAAW,CAAC,GAAG,IAAAC,0DAA4B,EAACd,OAAO,CAACW,WAAW,CAAC;EAEpF,IAAI,CAACV,KAAK,EAAE;IACVK,QAAQ,CAACS,IAAI,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEC,IAAI,EAAE,GAAG;MAAEC,UAAU,EAAE;IAAM,CAAC,CAAC;IAChEZ,QAAQ,CAACS,IAAI,CAAC;MACZC,IAAI,EAAE,MAAM;MACZC,IAAI,EAAEb,MAAM,GAAGe,wCAAuB,CAACC,IAAI,GAAG,IAAI;MAClDF,UAAU,EAAE;IACd,CAAC,CAAC;IAEF,IAAIN,UAAU,EAAE;MACdN,QAAQ,CAACS,IAAI,CAAC;QAAEC,IAAI,EAAE,SAAS;QAAEC,IAAI,EAAE,GAAG;QAAEC,UAAU,EAAE;MAAM,CAAC,CAAC;MAChEZ,QAAQ,CAACS,IAAI,CAAC;QACZC,IAAI,EAAE,QAAQ;QACdC,IAAI,EAAEE,wCAAuB,CAACE,MAAM;QACpCH,UAAU,EAAE;MACd,CAAC,CAAC;IACJ;IAEA,IAAIL,UAAU,EAAE;MACdP,QAAQ,CAACS,IAAI,CAAC;QAAEC,IAAI,EAAE,SAAS;QAAEC,IAAI,EAAE,GAAG;QAAEC,UAAU,EAAE;MAAM,CAAC,CAAC;MAChEZ,QAAQ,CAACS,IAAI,CAAC;QACZC,IAAI,EAAE,QAAQ;QACdC,IAAI,EAAEE,wCAAuB,CAACG,MAAM;QACpCJ,UAAU,EAAE;MACd,CAAC,CAAC;IACJ;IAEA,IAAId,MAAM,EAAE;MACVE,QAAQ,CAACS,IAAI,CAAC;QAAEC,IAAI,EAAE,SAAS;QAAEC,IAAI,EAAE,GAAG;QAAEC,UAAU,EAAE;MAAM,CAAC,CAAC;MAChEZ,QAAQ,CAACS,IAAI,CAAC;QACZC,IAAI,EAAE,WAAW;QACjBC,IAAI,EAAEE,wCAAuB,CAACI,SAAS;QACvCL,UAAU,EAAE;MACd,CAAC,CAAC;IACJ;IAEA,OAAOZ,QAAQ;EACjB;EAEA,MAAMc,IAAI,GAAGnB,KAAK,CAACmB,IAAI;EACvB,MAAMC,MAAM,GAAGpB,KAAK,CAACoB,MAAM;EAE3Bf,QAAQ,CAACS,IAAI,CAAC;IAAEC,IAAI,EAAE,SAAS;IAAEC,IAAI,EAAE,GAAG;IAAEC,UAAU,EAAE;EAAM,CAAC,CAAC;EAChE,IAAId,MAAM,EAAE;IACV,MAAMoB,WAAW,GAAGJ,IAAI,GAAG,EAAE,IAAI,EAAE;IACnCd,QAAQ,CAACS,IAAI,CAAC;MACZC,IAAI,EAAE,MAAM;MACZC,IAAI,EAAEQ,MAAM,CAACD,WAAW,CAAC;MACzBzB,KAAK,EAAEyB,WAAW;MAClBN,UAAU,EAAE;IACd,CAAC,CAAC;EACJ,CAAC,MAAM;IACLZ,QAAQ,CAACS,IAAI,CAAC;MACZC,IAAI,EAAE,MAAM;MACZC,IAAI,EAAE,IAAAS,2BAAU,EAAC,MAAM,EAAEN,IAAI,CAAC;MAC9BrB,KAAK,EAAEqB,IAAI;MACXF,UAAU,EAAE;IACd,CAAC,CAAC;EACJ;EAEA,IAAIN,UAAU,EAAE;IACdN,QAAQ,CAACS,IAAI,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEC,IAAI,EAAE,GAAG;MAAEC,UAAU,EAAE;IAAM,CAAC,CAAC;IAChEZ,QAAQ,CAACS,IAAI,CAAC;MACZC,IAAI,EAAE,QAAQ;MACdC,IAAI,EAAE,IAAAS,2BAAU,EAAC,QAAQ,EAAEL,MAAM,CAAC;MAClCtB,KAAK,EAAEsB,MAAM;MACbH,UAAU,EAAE;IACd,CAAC,CAAC;EACJ;EAEA,IAAIL,UAAU,EAAE;IACdP,QAAQ,CAACS,IAAI,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEC,IAAI,EAAE,GAAG;MAAEC,UAAU,EAAE;IAAM,CAAC,CAAC;IAChEZ,QAAQ,CAACS,IAAI,CAAC;MACZC,IAAI,EAAE,QAAQ;MACdC,IAAI,EAAE,IAAAS,2BAAU,EAAC,QAAQ,EAAEzB,KAAK,CAACqB,MAAM,IAAI,CAAC,CAAC;MAC7CvB,KAAK,EAAEE,KAAK,CAACqB,MAAM,IAAI,CAAC;MACxBJ,UAAU,EAAE;IACd,CAAC,CAAC;EACJ;EAEA,IAAId,MAAM,EAAE;IACV,MAAMuB,IAAI,GAAGP,IAAI,IAAI,EAAE;IACvBd,QAAQ,CAACS,IAAI,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEC,IAAI,EAAE,GAAG;MAAEC,UAAU,EAAE;IAAM,CAAC,CAAC;IAChEZ,QAAQ,CAACS,IAAI,CAAC;MACZC,IAAI,EAAE,WAAW;MACjBC,IAAI,EAAE,IAAAW,iCAAuB,EAACD,IAAI,GAAG,EAAE,GAAG,CAAC,EAAExB,MAAM,CAAC;MACpDJ,KAAK,EAAE4B,IAAI,GAAG,CAAC,GAAG,CAAC;MACnBT,UAAU,EAAE;IACd,CAAC,CAAC;EACJ;EAEA,OAAOZ,QAAQ;AACjB","ignoreList":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getDateTimeSegmentVisibility = getDateTimeSegmentVisibility;
|
|
7
|
+
/** Which time segments/columns are visible for a given `DateTimeGranularity`. */
|
|
8
|
+
function getDateTimeSegmentVisibility(granularity) {
|
|
9
|
+
return {
|
|
10
|
+
showTime: granularity !== 'day',
|
|
11
|
+
showMinute: granularity === 'minute' || granularity === 'second',
|
|
12
|
+
showSecond: granularity === 'second'
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=getDateTimeSegmentVisibility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getDateTimeSegmentVisibility","granularity","showTime","showMinute","showSecond"],"sourceRoot":"../../../../src","sources":["dates/segments/getDateTimeSegmentVisibility.ts"],"mappings":";;;;;;AAEA;AACO,SAASA,4BAA4BA,CAACC,WAAgC,EAI3E;EACA,OAAO;IACLC,QAAQ,EAAED,WAAW,KAAK,KAAK;IAC/BE,UAAU,EAAEF,WAAW,KAAK,QAAQ,IAAIA,WAAW,KAAK,QAAQ;IAChEG,UAAU,EAAEH,WAAW,KAAK;EAC9B,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getEmptyDateSegmentText = getEmptyDateSegmentText;
|
|
7
|
+
var _segmentBuilders = require("../internal/segmentBuilders");
|
|
8
|
+
/**
|
|
9
|
+
* Returns placeholder text for an empty editable segment (e.g. `MM`, `DD`, `YYYY`).
|
|
10
|
+
*
|
|
11
|
+
* @param type - Segment type.
|
|
12
|
+
* @returns Placeholder string, or `''` for types without a placeholder.
|
|
13
|
+
*/
|
|
14
|
+
function getEmptyDateSegmentText(type) {
|
|
15
|
+
return _segmentBuilders.EMPTY_DATE_SEGMENT_TEXT[type] ?? '';
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=getEmptyDateSegmentText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_segmentBuilders","require","getEmptyDateSegmentText","type","EMPTY_DATE_SEGMENT_TEXT"],"sourceRoot":"../../../../src","sources":["dates/segments/getEmptyDateSegmentText.ts"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,uBAAuBA,CAACC,IAAqB,EAAU;EACrE,OAAOC,wCAAuB,CAACD,IAAI,CAAC,IAAI,EAAE;AAC5C","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.parseDateSegment = parseDateSegment;
|
|
7
|
+
/**
|
|
8
|
+
* Parses user-entered segment text into a number, or `null` when not parseable.
|
|
9
|
+
*
|
|
10
|
+
* @param type - Segment type being edited.
|
|
11
|
+
* @param text - Raw segment text from the field.
|
|
12
|
+
* @param _options - Reserved for future locale-aware parsing.
|
|
13
|
+
* @returns Parsed number, or `null` for empty or non-numeric input.
|
|
14
|
+
*/
|
|
15
|
+
function parseDateSegment(type, text, _options) {
|
|
16
|
+
const trimmed = text.trim();
|
|
17
|
+
if (!trimmed || type === 'literal' || type === 'dayPeriod') {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
const parsed = Number(trimmed);
|
|
21
|
+
if (Number.isNaN(parsed)) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
return parsed;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=parseDateSegment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["parseDateSegment","type","text","_options","trimmed","trim","parsed","Number","isNaN"],"sourceRoot":"../../../../src","sources":["dates/segments/parseDateSegment.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,gBAAgBA,CAC9BC,IAAqB,EACrBC,IAAY,EACZC,QAA8B,EACf;EACf,MAAMC,OAAO,GAAGF,IAAI,CAACG,IAAI,CAAC,CAAC;EAC3B,IAAI,CAACD,OAAO,IAAIH,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,WAAW,EAAE;IAC1D,OAAO,IAAI;EACb;EACA,MAAMK,MAAM,GAAGC,MAAM,CAACH,OAAO,CAAC;EAC9B,IAAIG,MAAM,CAACC,KAAK,CAACF,MAAM,CAAC,EAAE;IACxB,OAAO,IAAI;EACb;EACA,OAAOA,MAAM;AACf","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["dates/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.clampDateParts = clampDateParts;
|
|
7
|
+
var _clampHelpers = require("../internal/clampHelpers");
|
|
8
|
+
/**
|
|
9
|
+
* Clamps date parts so month is 1–12 and day fits the month length (no `Date` rollover).
|
|
10
|
+
*
|
|
11
|
+
* @param parts - Year, month, and day values to clamp.
|
|
12
|
+
* @returns Clamped `DateParts` with a valid calendar day for the given month.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* clampDateParts({ year: 2026, month: 2, day: 31 }) // { year: 2026, month: 2, day: 28 }
|
|
16
|
+
*/
|
|
17
|
+
function clampDateParts(parts) {
|
|
18
|
+
const month = (0, _clampHelpers.clampMonth)(parts.month);
|
|
19
|
+
const day = (0, _clampHelpers.clampDay)(parts.year, month, parts.day);
|
|
20
|
+
return {
|
|
21
|
+
year: parts.year,
|
|
22
|
+
month,
|
|
23
|
+
day
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=clampDateParts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_clampHelpers","require","clampDateParts","parts","month","clampMonth","day","clampDay","year"],"sourceRoot":"../../../../src","sources":["dates/wire/clampDateParts.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAACC,KAAgB,EAAa;EAC1D,MAAMC,KAAK,GAAG,IAAAC,wBAAU,EAACF,KAAK,CAACC,KAAK,CAAC;EACrC,MAAME,GAAG,GAAG,IAAAC,sBAAQ,EAACJ,KAAK,CAACK,IAAI,EAAEJ,KAAK,EAAED,KAAK,CAACG,GAAG,CAAC;EAClD,OAAO;IAAEE,IAAI,EAAEL,KAAK,CAACK,IAAI;IAAEJ,KAAK;IAAEE;EAAI,CAAC;AACzC","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.clampMonthParts = clampMonthParts;
|
|
7
|
+
var _clampHelpers = require("../internal/clampHelpers");
|
|
8
|
+
/**
|
|
9
|
+
* Clamps month parts so month is between 1 and 12.
|
|
10
|
+
*
|
|
11
|
+
* @param parts - Year and month values to clamp.
|
|
12
|
+
* @returns Clamped `MonthParts`.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* clampMonthParts({ year: 2026, month: 13 }) // { year: 2026, month: 12 }
|
|
16
|
+
*/
|
|
17
|
+
function clampMonthParts(parts) {
|
|
18
|
+
return {
|
|
19
|
+
year: parts.year,
|
|
20
|
+
month: (0, _clampHelpers.clampMonth)(parts.month)
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=clampMonthParts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_clampHelpers","require","clampMonthParts","parts","year","month","clampMonth"],"sourceRoot":"../../../../src","sources":["dates/wire/clampMonthParts.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,eAAeA,CAACC,KAAiB,EAAc;EAC7D,OAAO;IAAEC,IAAI,EAAED,KAAK,CAACC,IAAI;IAAEC,KAAK,EAAE,IAAAC,wBAAU,EAACH,KAAK,CAACE,KAAK;EAAE,CAAC;AAC7D","ignoreList":[]}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.dateId = dateId;
|
|
7
|
+
var _brand = require("../internal/brand");
|
|
8
|
+
var _formatDateId = require("./formatDateId");
|
|
9
|
+
var _isValidDateId = require("./isValidDateId");
|
|
10
|
+
var _isValidDateParts = require("./isValidDateParts");
|
|
11
|
+
/**
|
|
12
|
+
* Validating smart constructor for a wire {@link DateId} (`YYYY-MM-DD`).
|
|
13
|
+
*
|
|
14
|
+
* Accepts either a wire string or numeric parts. Throws `RangeError` on input
|
|
15
|
+
* that is not a real calendar date — use this at the boundary where you first
|
|
16
|
+
* introduce a date value so a bad id never enters your form state.
|
|
17
|
+
*
|
|
18
|
+
* @param iso - A wire date string (`YYYY-MM-DD`).
|
|
19
|
+
* @returns The branded `DateId`.
|
|
20
|
+
* @throws RangeError when the string is not a valid `DateId`.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* dateId('2026-08-07'); // DateId
|
|
24
|
+
* dateId(2026, 8, 7); // DateId
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* @param year - Full year (e.g. `2026`).
|
|
29
|
+
* @param month - Month `1`–`12`.
|
|
30
|
+
* @param day - Day of month `1`–`31`.
|
|
31
|
+
*/
|
|
32
|
+
|
|
33
|
+
function dateId(yearOrIso, month, day) {
|
|
34
|
+
if (typeof yearOrIso === 'string') {
|
|
35
|
+
if (!(0, _isValidDateId.isValidDateId)(yearOrIso)) {
|
|
36
|
+
throw new RangeError(`Invalid DateId: "${yearOrIso}". Expected a real calendar date as "YYYY-MM-DD".`);
|
|
37
|
+
}
|
|
38
|
+
return yearOrIso;
|
|
39
|
+
}
|
|
40
|
+
const parts = {
|
|
41
|
+
year: yearOrIso,
|
|
42
|
+
month: month ?? NaN,
|
|
43
|
+
day: day ?? NaN
|
|
44
|
+
};
|
|
45
|
+
if (!(0, _isValidDateParts.isValidDateParts)(parts)) {
|
|
46
|
+
throw new RangeError(`Invalid DateId parts: ${JSON.stringify(parts)}.`);
|
|
47
|
+
}
|
|
48
|
+
return (0, _brand.asDateId)((0, _formatDateId.formatDateId)(parts));
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=dateId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_brand","require","_formatDateId","_isValidDateId","_isValidDateParts","dateId","yearOrIso","month","day","isValidDateId","RangeError","parts","year","NaN","isValidDateParts","JSON","stringify","asDateId","formatDateId"],"sourceRoot":"../../../../src","sources":["dates/wire/dateId.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEO,SAASI,MAAMA,CAACC,SAA0B,EAAEC,KAAc,EAAEC,GAAY,EAAU;EACvF,IAAI,OAAOF,SAAS,KAAK,QAAQ,EAAE;IACjC,IAAI,CAAC,IAAAG,4BAAa,EAACH,SAAS,CAAC,EAAE;MAC7B,MAAM,IAAII,UAAU,CAClB,oBAAoBJ,SAAS,mDAC/B,CAAC;IACH;IACA,OAAOA,SAAS;EAClB;EAEA,MAAMK,KAAK,GAAG;IAAEC,IAAI,EAAEN,SAAS;IAAEC,KAAK,EAAEA,KAAK,IAAIM,GAAG;IAAEL,GAAG,EAAEA,GAAG,IAAIK;EAAI,CAAC;EACvE,IAAI,CAAC,IAAAC,kCAAgB,EAACH,KAAK,CAAC,EAAE;IAC5B,MAAM,IAAID,UAAU,CAAC,yBAAyBK,IAAI,CAACC,SAAS,CAACL,KAAK,CAAC,GAAG,CAAC;EACzE;EACA,OAAO,IAAAM,eAAQ,EAAC,IAAAC,0BAAY,EAACP,KAAK,CAAC,CAAC;AACtC","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.formatDateId = formatDateId;
|
|
7
|
+
var _brand = require("../internal/brand");
|
|
8
|
+
var _clampDateParts = require("./clampDateParts");
|
|
9
|
+
/**
|
|
10
|
+
* Builds a wire `DateId`, clamping day to the month length (no `Date` rollover).
|
|
11
|
+
*
|
|
12
|
+
* @param parts - Year, month, and day values.
|
|
13
|
+
* @returns Wire `DateId` string (`YYYY-MM-DD`).
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* formatDateId({ year: 2026, month: 7, day: 28 }) // '2026-07-28'
|
|
17
|
+
*/
|
|
18
|
+
function formatDateId(parts) {
|
|
19
|
+
const clamped = (0, _clampDateParts.clampDateParts)(parts);
|
|
20
|
+
const year = String(clamped.year).padStart(4, '0');
|
|
21
|
+
const month = String(clamped.month).padStart(2, '0');
|
|
22
|
+
const day = String(clamped.day).padStart(2, '0');
|
|
23
|
+
return (0, _brand.asDateId)(`${year}-${month}-${day}`);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=formatDateId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_brand","require","_clampDateParts","formatDateId","parts","clamped","clampDateParts","year","String","padStart","month","day","asDateId"],"sourceRoot":"../../../../src","sources":["dates/wire/formatDateId.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,eAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,YAAYA,CAACC,KAAgB,EAAU;EACrD,MAAMC,OAAO,GAAG,IAAAC,8BAAc,EAACF,KAAK,CAAC;EACrC,MAAMG,IAAI,GAAGC,MAAM,CAACH,OAAO,CAACE,IAAI,CAAC,CAACE,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;EAClD,MAAMC,KAAK,GAAGF,MAAM,CAACH,OAAO,CAACK,KAAK,CAAC,CAACD,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;EACpD,MAAME,GAAG,GAAGH,MAAM,CAACH,OAAO,CAACM,GAAG,CAAC,CAACF,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;EAChD,OAAO,IAAAG,eAAQ,EAAC,GAAGL,IAAI,IAAIG,KAAK,IAAIC,GAAG,EAAE,CAAC;AAC5C","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.formatMonthId = formatMonthId;
|
|
7
|
+
var _dateFns = require("date-fns");
|
|
8
|
+
var _brand = require("../internal/brand");
|
|
9
|
+
/**
|
|
10
|
+
* Builds a wire `MonthId` (`YYYY-MM-01`).
|
|
11
|
+
*
|
|
12
|
+
* @param parts - Year and month values.
|
|
13
|
+
* @returns Wire `MonthId` string.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* formatMonthId({ year: 2026, month: 7 }) // '2026-07-01'
|
|
17
|
+
*/
|
|
18
|
+
function formatMonthId(parts) {
|
|
19
|
+
return (0, _brand.asMonthId)((0, _dateFns.format)(new Date(parts.year, parts.month - 1, 1), 'yyyy-MM-dd'));
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=formatMonthId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dateFns","require","_brand","formatMonthId","parts","asMonthId","format","Date","year","month"],"sourceRoot":"../../../../src","sources":["dates/wire/formatMonthId.ts"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,aAAaA,CAACC,KAAiB,EAAW;EACxD,OAAO,IAAAC,gBAAS,EAAC,IAAAC,eAAM,EAAC,IAAIC,IAAI,CAACH,KAAK,CAACI,IAAI,EAAEJ,KAAK,CAACK,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AAClF","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isValidDateId = isValidDateId;
|
|
7
|
+
var _dateFns = require("date-fns");
|
|
8
|
+
const DATE_ID_PATTERN = /^\d{4}-\d{2}-\d{2}$/;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Type guard for wire `DateId` strings (`YYYY-MM-DD`).
|
|
12
|
+
*
|
|
13
|
+
* @param dateId - Candidate wire date string.
|
|
14
|
+
* @returns `true` when `dateId` is a valid `DateId`.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* isValidDateId('2026-07-28') // true
|
|
18
|
+
* isValidDateId('07/28/2026') // false
|
|
19
|
+
*/
|
|
20
|
+
function isValidDateId(dateId) {
|
|
21
|
+
if (!DATE_ID_PATTERN.test(dateId)) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
const parsed = (0, _dateFns.parse)(dateId, 'yyyy-MM-dd', new Date());
|
|
25
|
+
return (0, _dateFns.isValid)(parsed) && (0, _dateFns.format)(parsed, 'yyyy-MM-dd') === dateId;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=isValidDateId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dateFns","require","DATE_ID_PATTERN","isValidDateId","dateId","test","parsed","parse","Date","isValid","format"],"sourceRoot":"../../../../src","sources":["dates/wire/isValidDateId.ts"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAGA,MAAMC,eAAe,GAAG,qBAAqB;;AAE7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,aAAaA,CAACC,MAAc,EAAoB;EAC9D,IAAI,CAACF,eAAe,CAACG,IAAI,CAACD,MAAM,CAAC,EAAE;IACjC,OAAO,KAAK;EACd;EACA,MAAME,MAAM,GAAG,IAAAC,cAAK,EAACH,MAAM,EAAE,YAAY,EAAE,IAAII,IAAI,CAAC,CAAC,CAAC;EACtD,OAAO,IAAAC,gBAAO,EAACH,MAAM,CAAC,IAAI,IAAAI,eAAM,EAACJ,MAAM,EAAE,YAAY,CAAC,KAAKF,MAAM;AACnE","ignoreList":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isValidDateParts = isValidDateParts;
|
|
7
|
+
var _clampHelpers = require("../internal/clampHelpers");
|
|
8
|
+
/**
|
|
9
|
+
* Returns whether the given parts form a valid calendar date.
|
|
10
|
+
*
|
|
11
|
+
* @param parts - Year, month, and day values to validate.
|
|
12
|
+
* @returns `true` when the parts match a real calendar date.
|
|
13
|
+
*/
|
|
14
|
+
function isValidDateParts(parts) {
|
|
15
|
+
const date = (0, _clampHelpers.partsToDate)(parts);
|
|
16
|
+
return date.getFullYear() === parts.year && date.getMonth() === parts.month - 1 && date.getDate() === parts.day;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=isValidDateParts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_clampHelpers","require","isValidDateParts","parts","date","partsToDate","getFullYear","year","getMonth","month","getDate","day"],"sourceRoot":"../../../../src","sources":["dates/wire/isValidDateParts.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,gBAAgBA,CAACC,KAAgB,EAAW;EAC1D,MAAMC,IAAI,GAAG,IAAAC,yBAAW,EAACF,KAAK,CAAC;EAC/B,OACEC,IAAI,CAACE,WAAW,CAAC,CAAC,KAAKH,KAAK,CAACI,IAAI,IACjCH,IAAI,CAACI,QAAQ,CAAC,CAAC,KAAKL,KAAK,CAACM,KAAK,GAAG,CAAC,IACnCL,IAAI,CAACM,OAAO,CAAC,CAAC,KAAKP,KAAK,CAACQ,GAAG;AAEhC","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isValidMonthId = isValidMonthId;
|
|
7
|
+
var _dateFns = require("date-fns");
|
|
8
|
+
const MONTH_ID_PATTERN = /^\d{4}-\d{2}-01$/;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Type guard for wire `MonthId` strings (`YYYY-MM-01`).
|
|
12
|
+
*
|
|
13
|
+
* @param monthId - Candidate wire month string.
|
|
14
|
+
* @returns `true` when `monthId` is a valid `MonthId`.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* isValidMonthId('2026-07-01') // true
|
|
18
|
+
* isValidMonthId('2026-07-15') // false
|
|
19
|
+
*/
|
|
20
|
+
function isValidMonthId(monthId) {
|
|
21
|
+
if (!MONTH_ID_PATTERN.test(monthId)) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
const parsed = (0, _dateFns.parse)(monthId, 'yyyy-MM-dd', new Date());
|
|
25
|
+
return (0, _dateFns.isValid)(parsed) && (0, _dateFns.format)(parsed, 'yyyy-MM-dd') === monthId;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=isValidMonthId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dateFns","require","MONTH_ID_PATTERN","isValidMonthId","monthId","test","parsed","parse","Date","isValid","format"],"sourceRoot":"../../../../src","sources":["dates/wire/isValidMonthId.ts"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAGA,MAAMC,gBAAgB,GAAG,kBAAkB;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAACC,OAAe,EAAsB;EAClE,IAAI,CAACF,gBAAgB,CAACG,IAAI,CAACD,OAAO,CAAC,EAAE;IACnC,OAAO,KAAK;EACd;EACA,MAAME,MAAM,GAAG,IAAAC,cAAK,EAACH,OAAO,EAAE,YAAY,EAAE,IAAII,IAAI,CAAC,CAAC,CAAC;EACvD,OAAO,IAAAC,gBAAO,EAACH,MAAM,CAAC,IAAI,IAAAI,eAAM,EAACJ,MAAM,EAAE,YAAY,CAAC,KAAKF,OAAO;AACpE","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isValidMonthParts = isValidMonthParts;
|
|
7
|
+
/**
|
|
8
|
+
* Returns whether the given parts form a valid month (1–12).
|
|
9
|
+
*
|
|
10
|
+
* @param parts - Year and month values to validate.
|
|
11
|
+
* @returns `true` when month is between 1 and 12.
|
|
12
|
+
*/
|
|
13
|
+
function isValidMonthParts(parts) {
|
|
14
|
+
return parts.month >= 1 && parts.month <= 12;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=isValidMonthParts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isValidMonthParts","parts","month"],"sourceRoot":"../../../../src","sources":["dates/wire/isValidMonthParts.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,iBAAiBA,CAACC,KAAiB,EAAW;EAC5D,OAAOA,KAAK,CAACC,KAAK,IAAI,CAAC,IAAID,KAAK,CAACC,KAAK,IAAI,EAAE;AAC9C","ignoreList":[]}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.monthId = monthId;
|
|
7
|
+
var _brand = require("../internal/brand");
|
|
8
|
+
var _formatMonthId = require("./formatMonthId");
|
|
9
|
+
var _isValidMonthId = require("./isValidMonthId");
|
|
10
|
+
var _isValidMonthParts = require("./isValidMonthParts");
|
|
11
|
+
/**
|
|
12
|
+
* Validating smart constructor for a wire {@link MonthId} (`YYYY-MM-01`).
|
|
13
|
+
*
|
|
14
|
+
* Accepts either a wire string or numeric parts. Throws `RangeError` on input
|
|
15
|
+
* that is not a valid month.
|
|
16
|
+
*
|
|
17
|
+
* @param iso - A wire month string (`YYYY-MM-01`).
|
|
18
|
+
* @returns The branded `MonthId`.
|
|
19
|
+
* @throws RangeError when the string is not a valid `MonthId`.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* monthId('2026-08-01'); // MonthId
|
|
23
|
+
* monthId(2026, 8); // MonthId
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @param year - Full year (e.g. `2026`).
|
|
28
|
+
* @param month - Month `1`–`12`.
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
function monthId(yearOrIso, month) {
|
|
32
|
+
if (typeof yearOrIso === 'string') {
|
|
33
|
+
if (!(0, _isValidMonthId.isValidMonthId)(yearOrIso)) {
|
|
34
|
+
throw new RangeError(`Invalid MonthId: "${yearOrIso}". Expected the first of a month as "YYYY-MM-01".`);
|
|
35
|
+
}
|
|
36
|
+
return yearOrIso;
|
|
37
|
+
}
|
|
38
|
+
const parts = {
|
|
39
|
+
year: yearOrIso,
|
|
40
|
+
month: month ?? NaN
|
|
41
|
+
};
|
|
42
|
+
if (!(0, _isValidMonthParts.isValidMonthParts)(parts)) {
|
|
43
|
+
throw new RangeError(`Invalid MonthId parts: ${JSON.stringify(parts)}. Month must be 1–12.`);
|
|
44
|
+
}
|
|
45
|
+
return (0, _brand.asMonthId)((0, _formatMonthId.formatMonthId)(parts));
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=monthId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_brand","require","_formatMonthId","_isValidMonthId","_isValidMonthParts","monthId","yearOrIso","month","isValidMonthId","RangeError","parts","year","NaN","isValidMonthParts","JSON","stringify","asMonthId","formatMonthId"],"sourceRoot":"../../../../src","sources":["dates/wire/monthId.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEO,SAASI,OAAOA,CAACC,SAA0B,EAAEC,KAAc,EAAW;EAC3E,IAAI,OAAOD,SAAS,KAAK,QAAQ,EAAE;IACjC,IAAI,CAAC,IAAAE,8BAAc,EAACF,SAAS,CAAC,EAAE;MAC9B,MAAM,IAAIG,UAAU,CAClB,qBAAqBH,SAAS,mDAChC,CAAC;IACH;IACA,OAAOA,SAAS;EAClB;EAEA,MAAMI,KAAK,GAAG;IAAEC,IAAI,EAAEL,SAAS;IAAEC,KAAK,EAAEA,KAAK,IAAIK;EAAI,CAAC;EACtD,IAAI,CAAC,IAAAC,oCAAiB,EAACH,KAAK,CAAC,EAAE;IAC7B,MAAM,IAAID,UAAU,CAAC,0BAA0BK,IAAI,CAACC,SAAS,CAACL,KAAK,CAAC,uBAAuB,CAAC;EAC9F;EACA,OAAO,IAAAM,gBAAS,EAAC,IAAAC,4BAAa,EAACP,KAAK,CAAC,CAAC;AACxC","ignoreList":[]}
|