@zag-js/date-utils 0.10.4 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/index.d.mts +145 -0
  2. package/dist/index.d.ts +145 -20
  3. package/dist/index.js +744 -74
  4. package/dist/index.js.map +1 -0
  5. package/dist/index.mjs +687 -19
  6. package/dist/index.mjs.map +1 -0
  7. package/package.json +2 -2
  8. package/src/parse-date.ts +12 -9
  9. package/dist/align.d.ts +0 -4
  10. package/dist/align.js +0 -29
  11. package/dist/align.mjs +0 -24
  12. package/dist/assertion.d.ts +0 -10
  13. package/dist/assertion.js +0 -47
  14. package/dist/assertion.mjs +0 -36
  15. package/dist/constrain.d.ts +0 -6
  16. package/dist/constrain.js +0 -66
  17. package/dist/constrain.mjs +0 -58
  18. package/dist/duration.d.ts +0 -8
  19. package/dist/duration.js +0 -23
  20. package/dist/duration.mjs +0 -18
  21. package/dist/format-date.d.ts +0 -6
  22. package/dist/format-date.js +0 -57
  23. package/dist/format-date.mjs +0 -53
  24. package/dist/format-range.d.ts +0 -2
  25. package/dist/format-range.js +0 -28
  26. package/dist/format-range.mjs +0 -24
  27. package/dist/format-selected-date.d.ts +0 -2
  28. package/dist/format-selected-date.js +0 -19
  29. package/dist/format-selected-date.mjs +0 -15
  30. package/dist/format-visible-range.d.ts +0 -2
  31. package/dist/format-visible-range.js +0 -26
  32. package/dist/format-visible-range.mjs +0 -22
  33. package/dist/get-day-formatter.d.ts +0 -2
  34. package/dist/get-day-formatter.js +0 -20
  35. package/dist/get-day-formatter.mjs +0 -16
  36. package/dist/get-decade-range.d.ts +0 -1
  37. package/dist/get-decade-range.js +0 -15
  38. package/dist/get-decade-range.mjs +0 -11
  39. package/dist/get-end-of-week.d.ts +0 -2
  40. package/dist/get-era-format.d.ts +0 -2
  41. package/dist/get-era-format.js +0 -9
  42. package/dist/get-era-format.mjs +0 -5
  43. package/dist/get-month-days.d.ts +0 -3
  44. package/dist/get-month-days.js +0 -29
  45. package/dist/get-month-days.mjs +0 -24
  46. package/dist/get-month-formatter.d.ts +0 -2
  47. package/dist/get-month-formatter.js +0 -19
  48. package/dist/get-month-formatter.mjs +0 -15
  49. package/dist/get-month-names.d.ts +0 -1
  50. package/dist/get-month-names.js +0 -15
  51. package/dist/get-month-names.mjs +0 -11
  52. package/dist/get-start-of-week.d.ts +0 -2
  53. package/dist/get-start-of-week.js +0 -13
  54. package/dist/get-start-of-week.mjs +0 -9
  55. package/dist/get-week-days.d.ts +0 -7
  56. package/dist/get-week-days.js +0 -15
  57. package/dist/get-week-days.mjs +0 -11
  58. package/dist/get-weekday-formats.d.ts +0 -7
  59. package/dist/get-weekday-formats.js +0 -22
  60. package/dist/get-weekday-formats.mjs +0 -18
  61. package/dist/get-year-range.d.ts +0 -5
  62. package/dist/get-year-range.js +0 -13
  63. package/dist/get-year-range.mjs +0 -9
  64. package/dist/mutation.d.ts +0 -10
  65. package/dist/mutation.js +0 -51
  66. package/dist/mutation.mjs +0 -40
  67. package/dist/pagination.d.ts +0 -49
  68. package/dist/pagination.js +0 -191
  69. package/dist/pagination.mjs +0 -179
  70. package/dist/parse-date.d.ts +0 -2
  71. package/dist/parse-date.js +0 -44
  72. package/dist/parse-date.mjs +0 -40
  73. package/dist/types.d.ts +0 -18
@@ -1,24 +0,0 @@
1
- function formatRange(startDate, endDate, formatter, toString, timeZone) {
2
- let parts = formatter.formatRangeToParts(startDate.toDate(timeZone), endDate.toDate(timeZone));
3
- let separatorIndex = -1;
4
- for (let i = 0; i < parts.length; i++) {
5
- let part = parts[i];
6
- if (part.source === "shared" && part.type === "literal") {
7
- separatorIndex = i;
8
- } else if (part.source === "endRange") {
9
- break;
10
- }
11
- }
12
- let start = "";
13
- let end = "";
14
- for (let i = 0; i < parts.length; i++) {
15
- if (i < separatorIndex) {
16
- start += parts[i].value;
17
- } else if (i > separatorIndex) {
18
- end += parts[i].value;
19
- }
20
- }
21
- return toString(start, end);
22
- }
23
-
24
- export { formatRange };
@@ -1,2 +0,0 @@
1
- import { type DateValue } from "@internationalized/date";
2
- export declare function formatSelectedDate(startDate: DateValue, endDate: DateValue | null, locale: string, timeZone: string): string;
@@ -1,19 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
- const formatRange = require('./format-range.js');
7
- const getDayFormatter = require('./get-day-formatter.js');
8
-
9
- function formatSelectedDate(startDate, endDate, locale, timeZone) {
10
- let start = startDate;
11
- let end = endDate ?? startDate;
12
- let formatter = getDayFormatter.getDayFormatter(locale, timeZone);
13
- if (date.isSameDay(start, end)) {
14
- return formatter.format(start.toDate(timeZone));
15
- }
16
- return formatRange.formatRange(start, end, formatter, (start2, end2) => `${start2} – ${end2}`, timeZone);
17
- }
18
-
19
- exports.formatSelectedDate = formatSelectedDate;
@@ -1,15 +0,0 @@
1
- import { isSameDay } from '@internationalized/date';
2
- import { formatRange } from './format-range.mjs';
3
- import { getDayFormatter } from './get-day-formatter.mjs';
4
-
5
- function formatSelectedDate(startDate, endDate, locale, timeZone) {
6
- let start = startDate;
7
- let end = endDate ?? startDate;
8
- let formatter = getDayFormatter(locale, timeZone);
9
- if (isSameDay(start, end)) {
10
- return formatter.format(start.toDate(timeZone));
11
- }
12
- return formatRange(start, end, formatter, (start2, end2) => `${start2} – ${end2}`, timeZone);
13
- }
14
-
15
- export { formatSelectedDate };
@@ -1,2 +0,0 @@
1
- import { type DateValue } from "@internationalized/date";
2
- export declare function formatVisibleRange(startDate: DateValue, endDate: DateValue | null, locale: string, timeZone: string): string;
@@ -1,26 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
- const getDayFormatter = require('./get-day-formatter.js');
7
- const getMonthFormatter = require('./get-month-formatter.js');
8
-
9
- function formatVisibleRange(startDate, endDate, locale, timeZone) {
10
- const start = startDate;
11
- const end = endDate ?? startDate;
12
- const dayFormatter = getDayFormatter.getDayFormatter(locale, timeZone);
13
- if (!date.isSameDay(start, date.startOfMonth(start))) {
14
- return dayFormatter.formatRange(start.toDate(timeZone), end.toDate(timeZone));
15
- }
16
- const monthFormatter = getMonthFormatter.getMonthFormatter(locale, timeZone);
17
- if (date.isSameDay(end, date.endOfMonth(start))) {
18
- return monthFormatter.format(start.toDate(timeZone));
19
- }
20
- if (date.isSameDay(end, date.endOfMonth(end))) {
21
- return monthFormatter.formatRange(start.toDate(timeZone), end.toDate(timeZone));
22
- }
23
- return "";
24
- }
25
-
26
- exports.formatVisibleRange = formatVisibleRange;
@@ -1,22 +0,0 @@
1
- import { isSameDay, startOfMonth, endOfMonth } from '@internationalized/date';
2
- import { getDayFormatter } from './get-day-formatter.mjs';
3
- import { getMonthFormatter } from './get-month-formatter.mjs';
4
-
5
- function formatVisibleRange(startDate, endDate, locale, timeZone) {
6
- const start = startDate;
7
- const end = endDate ?? startDate;
8
- const dayFormatter = getDayFormatter(locale, timeZone);
9
- if (!isSameDay(start, startOfMonth(start))) {
10
- return dayFormatter.formatRange(start.toDate(timeZone), end.toDate(timeZone));
11
- }
12
- const monthFormatter = getMonthFormatter(locale, timeZone);
13
- if (isSameDay(end, endOfMonth(start))) {
14
- return monthFormatter.format(start.toDate(timeZone));
15
- }
16
- if (isSameDay(end, endOfMonth(end))) {
17
- return monthFormatter.formatRange(start.toDate(timeZone), end.toDate(timeZone));
18
- }
19
- return "";
20
- }
21
-
22
- export { formatVisibleRange };
@@ -1,2 +0,0 @@
1
- import { DateFormatter } from "@internationalized/date";
2
- export declare function getDayFormatter(locale: string, timeZone: string): DateFormatter;
@@ -1,20 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
- const getEraFormat = require('./get-era-format.js');
7
-
8
- function getDayFormatter(locale, timeZone) {
9
- const date$1 = date.toCalendarDateTime(date.today(timeZone));
10
- return new date.DateFormatter(locale, {
11
- weekday: "long",
12
- month: "long",
13
- year: "numeric",
14
- day: "numeric",
15
- era: getEraFormat.getEraFormat(date$1),
16
- timeZone
17
- });
18
- }
19
-
20
- exports.getDayFormatter = getDayFormatter;
@@ -1,16 +0,0 @@
1
- import { toCalendarDateTime, today, DateFormatter } from '@internationalized/date';
2
- import { getEraFormat } from './get-era-format.mjs';
3
-
4
- function getDayFormatter(locale, timeZone) {
5
- const date = toCalendarDateTime(today(timeZone));
6
- return new DateFormatter(locale, {
7
- weekday: "long",
8
- month: "long",
9
- year: "numeric",
10
- day: "numeric",
11
- era: getEraFormat(date),
12
- timeZone
13
- });
14
- }
15
-
16
- export { getDayFormatter };
@@ -1 +0,0 @@
1
- export declare function getDecadeRange(year: number): number[];
@@ -1,15 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- function getDecadeRange(year) {
6
- const computedYear = year - year % 10 - 1;
7
- const years = [];
8
- for (let i = 0; i < 12; i += 1) {
9
- const value = computedYear + i;
10
- years.push(value);
11
- }
12
- return years;
13
- }
14
-
15
- exports.getDecadeRange = getDecadeRange;
@@ -1,11 +0,0 @@
1
- function getDecadeRange(year) {
2
- const computedYear = year - year % 10 - 1;
3
- const years = [];
4
- for (let i = 0; i < 12; i += 1) {
5
- const value = computedYear + i;
6
- years.push(value);
7
- }
8
- return years;
9
- }
10
-
11
- export { getDecadeRange };
@@ -1,2 +0,0 @@
1
- import { CalendarDate, CalendarDateTime, ZonedDateTime, DateValue } from '@internationalized/date';
2
- export declare function getEndOfWeek(date: DateValue, locale: string, firstDayOfWeek?: number): CalendarDate | CalendarDateTime | ZonedDateTime;
@@ -1,2 +0,0 @@
1
- import type { DateValue } from "@internationalized/date";
2
- export declare function getEraFormat(date: DateValue | undefined): "short" | undefined;
@@ -1,9 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- function getEraFormat(date) {
6
- return date?.calendar.identifier === "gregory" && date.era === "BC" ? "short" : void 0;
7
- }
8
-
9
- exports.getEraFormat = getEraFormat;
@@ -1,5 +0,0 @@
1
- function getEraFormat(date) {
2
- return date?.calendar.identifier === "gregory" && date.era === "BC" ? "short" : void 0;
3
- }
4
-
5
- export { getEraFormat };
@@ -1,3 +0,0 @@
1
- import { type DateValue } from "@internationalized/date";
2
- export declare function getDaysInWeek(weekIndex: number, from: DateValue, locale: string, firstDayOfWeek?: number): DateValue[];
3
- export declare function getMonthDays(from: DateValue, locale: string, numOfWeeks?: number, firstDayOfWeek?: number): DateValue[][];
@@ -1,29 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
- const getStartOfWeek = require('./get-start-of-week.js');
7
-
8
- function getDaysInWeek(weekIndex, from, locale, firstDayOfWeek) {
9
- const weekDate = from.add({ weeks: weekIndex });
10
- const dates = [];
11
- let date$1 = getStartOfWeek.getStartOfWeek(weekDate, locale, firstDayOfWeek);
12
- while (dates.length < 7) {
13
- dates.push(date$1);
14
- let nextDate = date$1.add({ days: 1 });
15
- if (date.isSameDay(date$1, nextDate)) {
16
- break;
17
- }
18
- date$1 = nextDate;
19
- }
20
- return dates;
21
- }
22
- function getMonthDays(from, locale, numOfWeeks, firstDayOfWeek) {
23
- const monthWeeks = date.getWeeksInMonth(from, locale);
24
- const weeks = [...new Array(numOfWeeks ?? monthWeeks).keys()];
25
- return weeks.map((week) => getDaysInWeek(week, from, locale, firstDayOfWeek));
26
- }
27
-
28
- exports.getDaysInWeek = getDaysInWeek;
29
- exports.getMonthDays = getMonthDays;
@@ -1,24 +0,0 @@
1
- import { isSameDay, getWeeksInMonth } from '@internationalized/date';
2
- import { getStartOfWeek } from './get-start-of-week.mjs';
3
-
4
- function getDaysInWeek(weekIndex, from, locale, firstDayOfWeek) {
5
- const weekDate = from.add({ weeks: weekIndex });
6
- const dates = [];
7
- let date = getStartOfWeek(weekDate, locale, firstDayOfWeek);
8
- while (dates.length < 7) {
9
- dates.push(date);
10
- let nextDate = date.add({ days: 1 });
11
- if (isSameDay(date, nextDate)) {
12
- break;
13
- }
14
- date = nextDate;
15
- }
16
- return dates;
17
- }
18
- function getMonthDays(from, locale, numOfWeeks, firstDayOfWeek) {
19
- const monthWeeks = getWeeksInMonth(from, locale);
20
- const weeks = [...new Array(numOfWeeks ?? monthWeeks).keys()];
21
- return weeks.map((week) => getDaysInWeek(week, from, locale, firstDayOfWeek));
22
- }
23
-
24
- export { getDaysInWeek, getMonthDays };
@@ -1,2 +0,0 @@
1
- import { DateFormatter } from "@internationalized/date";
2
- export declare function getMonthFormatter(locale: string, timeZone: string): DateFormatter;
@@ -1,19 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
- const getEraFormat = require('./get-era-format.js');
7
-
8
- function getMonthFormatter(locale, timeZone) {
9
- const date$1 = date.toCalendarDate(date.today(timeZone));
10
- return new date.DateFormatter(locale, {
11
- month: "long",
12
- year: "numeric",
13
- era: getEraFormat.getEraFormat(date$1),
14
- calendar: date$1?.calendar.identifier,
15
- timeZone
16
- });
17
- }
18
-
19
- exports.getMonthFormatter = getMonthFormatter;
@@ -1,15 +0,0 @@
1
- import { toCalendarDate, today, DateFormatter } from '@internationalized/date';
2
- import { getEraFormat } from './get-era-format.mjs';
3
-
4
- function getMonthFormatter(locale, timeZone) {
5
- const date = toCalendarDate(today(timeZone));
6
- return new DateFormatter(locale, {
7
- month: "long",
8
- year: "numeric",
9
- era: getEraFormat(date),
10
- calendar: date?.calendar.identifier,
11
- timeZone
12
- });
13
- }
14
-
15
- export { getMonthFormatter };
@@ -1 +0,0 @@
1
- export declare function getMonthNames(locale: string, format?: Intl.DateTimeFormatOptions["month"]): string[];
@@ -1,15 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- function getMonthNames(locale, format = "long") {
6
- const date = new Date(2021, 0, 1);
7
- const monthNames = [];
8
- for (let i = 0; i < 12; i++) {
9
- monthNames.push(date.toLocaleString(locale, { month: format }));
10
- date.setMonth(date.getMonth() + 1);
11
- }
12
- return monthNames;
13
- }
14
-
15
- exports.getMonthNames = getMonthNames;
@@ -1,11 +0,0 @@
1
- function getMonthNames(locale, format = "long") {
2
- const date = new Date(2021, 0, 1);
3
- const monthNames = [];
4
- for (let i = 0; i < 12; i++) {
5
- monthNames.push(date.toLocaleString(locale, { month: format }));
6
- date.setMonth(date.getMonth() + 1);
7
- }
8
- return monthNames;
9
- }
10
-
11
- export { getMonthNames };
@@ -1,2 +0,0 @@
1
- import { CalendarDate, CalendarDateTime, ZonedDateTime, type DateValue } from '@internationalized/date';
2
- export declare function getStartOfWeek(date: DateValue, locale: string, firstDayOfWeek?: number): CalendarDate | CalendarDateTime | ZonedDateTime;
@@ -1,13 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
-
7
- function getStartOfWeek(date$1, locale, firstDayOfWeek = 0) {
8
- const day = date.getDayOfWeek(date$1, locale);
9
- const diff = (day - firstDayOfWeek + 7) % 7;
10
- return date$1.subtract({ days: diff });
11
- }
12
-
13
- exports.getStartOfWeek = getStartOfWeek;
@@ -1,9 +0,0 @@
1
- import { getDayOfWeek } from '@internationalized/date';
2
-
3
- function getStartOfWeek(date, locale, firstDayOfWeek = 0) {
4
- const day = getDayOfWeek(date, locale);
5
- const diff = (day - firstDayOfWeek + 7) % 7;
6
- return date.subtract({ days: diff });
7
- }
8
-
9
- export { getStartOfWeek };
@@ -1,7 +0,0 @@
1
- import { CalendarDate, CalendarDateTime, ZonedDateTime, DateValue } from '@internationalized/date';
2
- export declare function getWeekDays(date: DateValue, startOfWeekProp: number | undefined, timeZone: string, locale: string): {
3
- value: CalendarDate | CalendarDateTime | ZonedDateTime;
4
- short: string;
5
- long: string;
6
- narrow: string;
7
- }[];
@@ -1,15 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const getWeekdayFormats = require('./get-weekday-formats.js');
6
- const getStartOfWeek = require('./get-start-of-week.js');
7
-
8
- function getWeekDays(date, startOfWeekProp, timeZone, locale) {
9
- const firstDayOfWeek = getStartOfWeek.getStartOfWeek(date, locale, startOfWeekProp);
10
- const weeks = [...new Array(7).keys()];
11
- const format = getWeekdayFormats.getWeekdayFormats(locale, timeZone);
12
- return weeks.map((index) => format(firstDayOfWeek.add({ days: index })));
13
- }
14
-
15
- exports.getWeekDays = getWeekDays;
@@ -1,11 +0,0 @@
1
- import { getWeekdayFormats } from './get-weekday-formats.mjs';
2
- import { getStartOfWeek } from './get-start-of-week.mjs';
3
-
4
- function getWeekDays(date, startOfWeekProp, timeZone, locale) {
5
- const firstDayOfWeek = getStartOfWeek(date, locale, startOfWeekProp);
6
- const weeks = [...new Array(7).keys()];
7
- const format = getWeekdayFormats(locale, timeZone);
8
- return weeks.map((index) => format(firstDayOfWeek.add({ days: index })));
9
- }
10
-
11
- export { getWeekDays };
@@ -1,7 +0,0 @@
1
- import { type DateValue } from "@internationalized/date";
2
- export declare function getWeekdayFormats(locale: string, timeZone: string): <T extends DateValue | Date>(value: T) => {
3
- value: T;
4
- short: string;
5
- long: string;
6
- narrow: string;
7
- };
@@ -1,22 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
-
7
- function getWeekdayFormats(locale, timeZone) {
8
- const longFormat = new date.DateFormatter(locale, { weekday: "long", timeZone });
9
- const shortFormat = new date.DateFormatter(locale, { weekday: "short", timeZone });
10
- const narrowFormat = new date.DateFormatter(locale, { weekday: "narrow", timeZone });
11
- return (value) => {
12
- const date = value instanceof Date ? value : value.toDate(timeZone);
13
- return {
14
- value,
15
- short: shortFormat.format(date),
16
- long: longFormat.format(date),
17
- narrow: narrowFormat.format(date)
18
- };
19
- };
20
- }
21
-
22
- exports.getWeekdayFormats = getWeekdayFormats;
@@ -1,18 +0,0 @@
1
- import { DateFormatter } from '@internationalized/date';
2
-
3
- function getWeekdayFormats(locale, timeZone) {
4
- const longFormat = new DateFormatter(locale, { weekday: "long", timeZone });
5
- const shortFormat = new DateFormatter(locale, { weekday: "short", timeZone });
6
- const narrowFormat = new DateFormatter(locale, { weekday: "narrow", timeZone });
7
- return (value) => {
8
- const date = value instanceof Date ? value : value.toDate(timeZone);
9
- return {
10
- value,
11
- short: shortFormat.format(date),
12
- long: longFormat.format(date),
13
- narrow: narrowFormat.format(date)
14
- };
15
- };
16
- }
17
-
18
- export { getWeekdayFormats };
@@ -1,5 +0,0 @@
1
- export interface YearsRange {
2
- from: number;
3
- to: number;
4
- }
5
- export declare function getYearsRange(range: YearsRange): number[];
@@ -1,13 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- function getYearsRange(range) {
6
- const years = [];
7
- for (let year = range.from; year <= range.to; year += 1) {
8
- years.push(year);
9
- }
10
- return years;
11
- }
12
-
13
- exports.getYearsRange = getYearsRange;
@@ -1,9 +0,0 @@
1
- function getYearsRange(range) {
2
- const years = [];
3
- for (let year = range.from; year <= range.to; year += 1) {
4
- years.push(year);
5
- }
6
- return years;
7
- }
8
-
9
- export { getYearsRange };
@@ -1,10 +0,0 @@
1
- import { CalendarDate, CalendarDateTime, ZonedDateTime, type Calendar, type DateValue } from '@internationalized/date';
2
- import type { DateAvailableFn } from "./types";
3
- export declare function getTodayDate(timeZone?: string): CalendarDate;
4
- export declare function getNextDay(date: DateValue): CalendarDate | CalendarDateTime | ZonedDateTime;
5
- export declare function getPreviousDay(date: DateValue): CalendarDate | CalendarDateTime | ZonedDateTime;
6
- export declare function setMonth(date: DateValue, month: number): CalendarDate | CalendarDateTime | ZonedDateTime;
7
- export declare function setYear(date: DateValue, year: number): CalendarDate | CalendarDateTime | ZonedDateTime;
8
- export declare function setCalendar(date: DateValue, calendar: Calendar): CalendarDateTime;
9
- export declare function setDate(date: DateValue, startDate: DateValue, isDateUnavailable: DateAvailableFn, locale: string, minValue: DateValue, maxValue: DateValue): DateValue | undefined;
10
- export declare function getPreviousAvailableDate(date: DateValue, minValue: DateValue, locale: string, isDateUnavailable?: DateAvailableFn): DateValue | undefined;
package/dist/mutation.js DELETED
@@ -1,51 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
-
5
- const date = require('@internationalized/date');
6
- const constrain = require('./constrain.js');
7
-
8
- function getTodayDate(timeZone) {
9
- return date.today(timeZone ?? date.getLocalTimeZone());
10
- }
11
- function getNextDay(date) {
12
- return date.add({ days: 1 });
13
- }
14
- function getPreviousDay(date) {
15
- return date.subtract({ days: 1 });
16
- }
17
- function setMonth(date, month) {
18
- return date.set({ month });
19
- }
20
- function setYear(date, year) {
21
- return date.set({ year });
22
- }
23
- function setCalendar(date$1, calendar) {
24
- return date.toCalendar(date.toCalendarDateTime(date$1), calendar);
25
- }
26
- function setDate(date, startDate, isDateUnavailable, locale, minValue, maxValue) {
27
- let result;
28
- result = constrain.constrainValue(date, minValue, maxValue);
29
- result = getPreviousAvailableDate(date, startDate, locale, isDateUnavailable);
30
- return result;
31
- }
32
- function getPreviousAvailableDate(date, minValue, locale, isDateUnavailable) {
33
- if (!isDateUnavailable) {
34
- return date;
35
- }
36
- while (date.compare(minValue) >= 0 && isDateUnavailable(date, locale)) {
37
- date = date.subtract({ days: 1 });
38
- }
39
- if (date.compare(minValue) >= 0) {
40
- return date;
41
- }
42
- }
43
-
44
- exports.getNextDay = getNextDay;
45
- exports.getPreviousAvailableDate = getPreviousAvailableDate;
46
- exports.getPreviousDay = getPreviousDay;
47
- exports.getTodayDate = getTodayDate;
48
- exports.setCalendar = setCalendar;
49
- exports.setDate = setDate;
50
- exports.setMonth = setMonth;
51
- exports.setYear = setYear;
package/dist/mutation.mjs DELETED
@@ -1,40 +0,0 @@
1
- import { today, getLocalTimeZone, toCalendar, toCalendarDateTime } from '@internationalized/date';
2
- import { constrainValue } from './constrain.mjs';
3
-
4
- function getTodayDate(timeZone) {
5
- return today(timeZone ?? getLocalTimeZone());
6
- }
7
- function getNextDay(date) {
8
- return date.add({ days: 1 });
9
- }
10
- function getPreviousDay(date) {
11
- return date.subtract({ days: 1 });
12
- }
13
- function setMonth(date, month) {
14
- return date.set({ month });
15
- }
16
- function setYear(date, year) {
17
- return date.set({ year });
18
- }
19
- function setCalendar(date, calendar) {
20
- return toCalendar(toCalendarDateTime(date), calendar);
21
- }
22
- function setDate(date, startDate, isDateUnavailable, locale, minValue, maxValue) {
23
- let result;
24
- result = constrainValue(date, minValue, maxValue);
25
- result = getPreviousAvailableDate(date, startDate, locale, isDateUnavailable);
26
- return result;
27
- }
28
- function getPreviousAvailableDate(date, minValue, locale, isDateUnavailable) {
29
- if (!isDateUnavailable) {
30
- return date;
31
- }
32
- while (date.compare(minValue) >= 0 && isDateUnavailable(date, locale)) {
33
- date = date.subtract({ days: 1 });
34
- }
35
- if (date.compare(minValue) >= 0) {
36
- return date;
37
- }
38
- }
39
-
40
- export { getNextDay, getPreviousAvailableDate, getPreviousDay, getTodayDate, setCalendar, setDate, setMonth, setYear };