@zag-js/date-utils 0.1.2 → 0.1.3

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 (85) hide show
  1. package/dist/chunk-5HGHDJ3L.mjs +14 -0
  2. package/dist/chunk-AMZ7CJ5F.mjs +18 -0
  3. package/dist/chunk-CAYCTIEJ.mjs +29 -0
  4. package/dist/chunk-G4VVKINZ.mjs +14 -0
  5. package/dist/chunk-KFJ757ZA.mjs +32 -0
  6. package/dist/chunk-KLHRN7WS.mjs +20 -0
  7. package/dist/chunk-KN3YMOSL.mjs +8 -0
  8. package/dist/chunk-LGEGBP3O.mjs +20 -0
  9. package/dist/{chunk-NXMEZINO.mjs → chunk-LQAXQPWP.mjs} +4 -7
  10. package/dist/chunk-ODG5YF5H.mjs +21 -0
  11. package/dist/chunk-SI75FOJ2.mjs +11 -0
  12. package/dist/chunk-UHOBXAHP.mjs +17 -0
  13. package/dist/conversion.d.ts +5 -0
  14. package/dist/conversion.js +41 -0
  15. package/dist/conversion.mjs +6 -0
  16. package/dist/format-selected-date.d.ts +1 -2
  17. package/dist/format-selected-date.js +14 -14
  18. package/dist/format-selected-date.mjs +3 -2
  19. package/dist/format-visible-range.d.ts +1 -2
  20. package/dist/format-visible-range.js +29 -50
  21. package/dist/format-visible-range.mjs +4 -3
  22. package/dist/get-day-formatter.d.ts +5 -0
  23. package/dist/{placeholder.js → get-day-formatter.js} +22 -21
  24. package/dist/get-day-formatter.mjs +7 -0
  25. package/dist/get-decade-range.d.ts +3 -0
  26. package/dist/get-decade-range.js +38 -0
  27. package/dist/get-decade-range.mjs +6 -0
  28. package/dist/get-end-of-week.d.ts +5 -0
  29. package/dist/{segment-constants.js → get-end-of-week.js} +17 -32
  30. package/dist/get-end-of-week.mjs +11 -0
  31. package/dist/get-era-format.d.ts +5 -0
  32. package/dist/get-era-format.js +32 -0
  33. package/dist/get-era-format.mjs +6 -0
  34. package/dist/get-month-days.d.ts +6 -0
  35. package/dist/{get-month-dates.js → get-month-days.js} +26 -27
  36. package/dist/get-month-days.mjs +9 -0
  37. package/dist/get-month-formatter.d.ts +5 -0
  38. package/dist/{get-formatter.js → get-month-formatter.js} +14 -26
  39. package/dist/get-month-formatter.mjs +7 -0
  40. package/dist/get-month-names.d.ts +3 -0
  41. package/dist/get-month-names.js +38 -0
  42. package/dist/get-month-names.mjs +6 -0
  43. package/dist/get-start-of-week.d.ts +5 -0
  44. package/dist/get-start-of-week.js +35 -0
  45. package/dist/get-start-of-week.mjs +6 -0
  46. package/dist/get-week-days.d.ts +10 -0
  47. package/dist/get-week-days.js +62 -0
  48. package/dist/get-week-days.mjs +8 -0
  49. package/dist/get-weekday-formats.d.ts +10 -0
  50. package/dist/get-weekday-formats.js +44 -0
  51. package/dist/get-weekday-formats.mjs +6 -0
  52. package/dist/index.d.ts +9 -8
  53. package/dist/index.js +148 -311
  54. package/dist/index.mjs +36 -41
  55. package/dist/types.d.ts +1 -2
  56. package/package.json +2 -2
  57. package/dist/chunk-55BYHK5B.mjs +0 -31
  58. package/dist/chunk-DZM5JUL2.mjs +0 -22
  59. package/dist/chunk-ETRHBIGD.mjs +0 -66
  60. package/dist/chunk-GLQDJRSE.mjs +0 -31
  61. package/dist/chunk-JZVHAOWX.mjs +0 -35
  62. package/dist/chunk-MGRIF22W.mjs +0 -18
  63. package/dist/chunk-SQCHVCXH.mjs +0 -42
  64. package/dist/chunk-TSOWYV6W.mjs +0 -34
  65. package/dist/chunk-U6WRBS5P.mjs +0 -77
  66. package/dist/get-formatter.d.ts +0 -8
  67. package/dist/get-formatter.mjs +0 -8
  68. package/dist/get-month-dates.d.ts +0 -5
  69. package/dist/get-month-dates.mjs +0 -7
  70. package/dist/get-week-dates.d.ts +0 -7
  71. package/dist/get-week-dates.js +0 -60
  72. package/dist/get-week-dates.mjs +0 -8
  73. package/dist/placeholder.d.ts +0 -7
  74. package/dist/placeholder.mjs +0 -8
  75. package/dist/segment-constants.d.ts +0 -27
  76. package/dist/segment-constants.mjs +0 -10
  77. package/dist/segment-limit.d.ts +0 -10
  78. package/dist/segment-limit.js +0 -101
  79. package/dist/segment-limit.mjs +0 -6
  80. package/dist/segment-mutation.d.ts +0 -7
  81. package/dist/segment-mutation.js +0 -91
  82. package/dist/segment-mutation.mjs +0 -8
  83. package/dist/segment-parts.d.ts +0 -27
  84. package/dist/segment-parts.js +0 -159
  85. package/dist/segment-parts.mjs +0 -11
@@ -17,41 +17,26 @@ var __copyProps = (to, from, except, desc) => {
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
 
20
- // src/segment-constants.ts
21
- var segment_constants_exports = {};
22
- __export(segment_constants_exports, {
23
- SEGMENT_PAGE_STEP: () => SEGMENT_PAGE_STEP,
24
- getSegmentPageStep: () => getSegmentPageStep,
25
- isSegmentEditable: () => isSegmentEditable
20
+ // src/get-end-of-week.ts
21
+ var get_end_of_week_exports = {};
22
+ __export(get_end_of_week_exports, {
23
+ getEndOfWeek: () => getEndOfWeek
26
24
  });
27
- module.exports = __toCommonJS(segment_constants_exports);
28
- var EDITABLE_SEGMENTS = {
29
- year: true,
30
- month: true,
31
- day: true,
32
- hour: true,
33
- minute: true,
34
- second: true,
35
- dayPeriod: true,
36
- era: true
37
- };
38
- var SEGMENT_PAGE_STEP = {
39
- year: 5,
40
- month: 2,
41
- day: 7,
42
- hour: 2,
43
- minute: 15,
44
- second: 15
45
- };
46
- function isSegmentEditable(segment) {
47
- return EDITABLE_SEGMENTS[segment];
25
+ module.exports = __toCommonJS(get_end_of_week_exports);
26
+
27
+ // src/get-start-of-week.ts
28
+ var import_date = require("@internationalized/date");
29
+ function getStartOfWeek(date, locale, firstDayOfWeek = 0) {
30
+ const day = (0, import_date.getDayOfWeek)(date, locale);
31
+ const diff = (day - firstDayOfWeek + 7) % 7;
32
+ return date.subtract({ days: diff });
48
33
  }
49
- function getSegmentPageStep(segment) {
50
- return SEGMENT_PAGE_STEP[segment] ?? 1;
34
+
35
+ // src/get-end-of-week.ts
36
+ function getEndOfWeek(date, locale, firstDayOfWeek = 0) {
37
+ return getStartOfWeek(date, locale, firstDayOfWeek).add({ days: 6 });
51
38
  }
52
39
  // Annotate the CommonJS export names for ESM import in node:
53
40
  0 && (module.exports = {
54
- SEGMENT_PAGE_STEP,
55
- getSegmentPageStep,
56
- isSegmentEditable
41
+ getEndOfWeek
57
42
  });
@@ -0,0 +1,11 @@
1
+ import {
2
+ getStartOfWeek
3
+ } from "./chunk-SI75FOJ2.mjs";
4
+
5
+ // src/get-end-of-week.ts
6
+ function getEndOfWeek(date, locale, firstDayOfWeek = 0) {
7
+ return getStartOfWeek(date, locale, firstDayOfWeek).add({ days: 6 });
8
+ }
9
+ export {
10
+ getEndOfWeek
11
+ };
@@ -0,0 +1,5 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+
3
+ declare function getEraFormat(date: CalendarDate | undefined): "short" | undefined;
4
+
5
+ export { getEraFormat };
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/get-era-format.ts
21
+ var get_era_format_exports = {};
22
+ __export(get_era_format_exports, {
23
+ getEraFormat: () => getEraFormat
24
+ });
25
+ module.exports = __toCommonJS(get_era_format_exports);
26
+ function getEraFormat(date) {
27
+ return date?.calendar.identifier === "gregory" && date.era === "BC" ? "short" : void 0;
28
+ }
29
+ // Annotate the CommonJS export names for ESM import in node:
30
+ 0 && (module.exports = {
31
+ getEraFormat
32
+ });
@@ -0,0 +1,6 @@
1
+ import {
2
+ getEraFormat
3
+ } from "./chunk-KN3YMOSL.mjs";
4
+ export {
5
+ getEraFormat
6
+ };
@@ -0,0 +1,6 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+
3
+ declare function getDaysInWeek(weekIndex: number, from: CalendarDate, locale: string, firstDayOfWeek?: number): (CalendarDate | null)[];
4
+ declare function getMonthDays(from: CalendarDate, locale: string, numOfWeeks?: number, firstDayOfWeek?: number): (CalendarDate | null)[][];
5
+
6
+ export { getDaysInWeek, getMonthDays };
@@ -17,48 +17,47 @@ var __copyProps = (to, from, except, desc) => {
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
 
20
- // src/get-month-dates.ts
21
- var get_month_dates_exports = {};
22
- __export(get_month_dates_exports, {
23
- getMonthDates: () => getMonthDates
20
+ // src/get-month-days.ts
21
+ var get_month_days_exports = {};
22
+ __export(get_month_days_exports, {
23
+ getDaysInWeek: () => getDaysInWeek,
24
+ getMonthDays: () => getMonthDays
24
25
  });
25
- module.exports = __toCommonJS(get_month_dates_exports);
26
+ module.exports = __toCommonJS(get_month_days_exports);
26
27
  var import_date2 = require("@internationalized/date");
27
28
 
28
- // src/get-week-dates.ts
29
+ // src/get-start-of-week.ts
29
30
  var import_date = require("@internationalized/date");
30
- function getDatesInWeek(weekIndex, fromDate, locale) {
31
- let date = fromDate.add({ weeks: weekIndex });
32
- let dates = [];
33
- date = (0, import_date.startOfWeek)(date, locale);
34
- let dayOfWeek = (0, import_date.getDayOfWeek)(date, locale);
35
- for (let i = 0; i < dayOfWeek; i++) {
36
- dates.push(null);
37
- }
31
+ function getStartOfWeek(date, locale, firstDayOfWeek = 0) {
32
+ const day = (0, import_date.getDayOfWeek)(date, locale);
33
+ const diff = (day - firstDayOfWeek + 7) % 7;
34
+ return date.subtract({ days: diff });
35
+ }
36
+
37
+ // src/get-month-days.ts
38
+ function getDaysInWeek(weekIndex, from, locale, firstDayOfWeek) {
39
+ const weekDate = from.add({ weeks: weekIndex });
40
+ const dates = [];
41
+ let date = getStartOfWeek(weekDate, locale, firstDayOfWeek);
38
42
  while (dates.length < 7) {
39
43
  dates.push(date);
40
44
  let nextDate = date.add({ days: 1 });
41
- if ((0, import_date.isSameDay)(date, nextDate)) {
45
+ if ((0, import_date2.isSameDay)(date, nextDate)) {
42
46
  break;
43
47
  }
44
48
  date = nextDate;
45
49
  }
46
- while (dates.length < 7) {
47
- dates.push(null);
48
- }
49
50
  return dates;
50
51
  }
51
-
52
- // src/get-month-dates.ts
53
- function getMonthDates(startDate, duration, locale) {
54
- let weeksInMonth = (0, import_date2.getWeeksInMonth)(startDate, locale);
55
- let numOfWeeks = duration.weeks ?? weeksInMonth;
56
- let weekArr = [...new Array(numOfWeeks).keys()];
57
- return weekArr.map((index) => {
58
- return getDatesInWeek(index, startDate, locale);
52
+ function getMonthDays(from, locale, numOfWeeks, firstDayOfWeek) {
53
+ const monthWeeks = (0, import_date2.getWeeksInMonth)(from, locale);
54
+ const weeks = [...new Array(numOfWeeks ?? monthWeeks).keys()];
55
+ return weeks.map((week) => {
56
+ return getDaysInWeek(week, from, locale, firstDayOfWeek);
59
57
  });
60
58
  }
61
59
  // Annotate the CommonJS export names for ESM import in node:
62
60
  0 && (module.exports = {
63
- getMonthDates
61
+ getDaysInWeek,
62
+ getMonthDays
64
63
  });
@@ -0,0 +1,9 @@
1
+ import {
2
+ getDaysInWeek,
3
+ getMonthDays
4
+ } from "./chunk-KFJ757ZA.mjs";
5
+ import "./chunk-SI75FOJ2.mjs";
6
+ export {
7
+ getDaysInWeek,
8
+ getMonthDays
9
+ };
@@ -0,0 +1,5 @@
1
+ import { DateFormatter } from '@internationalized/date';
2
+
3
+ declare function getMonthFormatter(locale: string, timeZone: string): DateFormatter;
4
+
5
+ export { getMonthFormatter };
@@ -17,43 +17,31 @@ var __copyProps = (to, from, except, desc) => {
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
 
20
- // src/get-formatter.ts
21
- var get_formatter_exports = {};
22
- __export(get_formatter_exports, {
23
- getDateFormatter: () => getDateFormatter,
20
+ // src/get-month-formatter.ts
21
+ var get_month_formatter_exports = {};
22
+ __export(get_month_formatter_exports, {
24
23
  getMonthFormatter: () => getMonthFormatter
25
24
  });
26
- module.exports = __toCommonJS(get_formatter_exports);
25
+ module.exports = __toCommonJS(get_month_formatter_exports);
26
+ var import_date = require("@internationalized/date");
27
+
28
+ // src/get-era-format.ts
27
29
  function getEraFormat(date) {
28
30
  return date?.calendar.identifier === "gregory" && date.era === "BC" ? "short" : void 0;
29
31
  }
30
- function getDateFormatter(startDate, endDate, getDateFormatter2, timeZone) {
31
- let start = startDate;
32
- let end = endDate ?? startDate;
33
- let era = getEraFormat(start) || getEraFormat(end);
34
- return getDateFormatter2({
35
- weekday: "long",
36
- month: "long",
37
- year: "numeric",
38
- day: "numeric",
39
- era,
40
- timeZone
41
- });
42
- }
43
- function getMonthFormatter(startDate, endDate, getDateFormatter2, timeZone) {
44
- let start = startDate;
45
- let end = endDate ?? startDate;
46
- let era = getEraFormat(start) || getEraFormat(end);
47
- return getDateFormatter2({
32
+
33
+ // src/get-month-formatter.ts
34
+ function getMonthFormatter(locale, timeZone) {
35
+ const date = (0, import_date.toCalendarDate)((0, import_date.today)(timeZone));
36
+ return new import_date.DateFormatter(locale, {
48
37
  month: "long",
49
38
  year: "numeric",
50
- era,
51
- calendar: start?.calendar.identifier,
39
+ era: getEraFormat(date),
40
+ calendar: date?.calendar.identifier,
52
41
  timeZone
53
42
  });
54
43
  }
55
44
  // Annotate the CommonJS export names for ESM import in node:
56
45
  0 && (module.exports = {
57
- getDateFormatter,
58
46
  getMonthFormatter
59
47
  });
@@ -0,0 +1,7 @@
1
+ import {
2
+ getMonthFormatter
3
+ } from "./chunk-LGEGBP3O.mjs";
4
+ import "./chunk-KN3YMOSL.mjs";
5
+ export {
6
+ getMonthFormatter
7
+ };
@@ -0,0 +1,3 @@
1
+ declare function getMonthNames(locale: string, format?: Intl.DateTimeFormatOptions["month"]): string[];
2
+
3
+ export { getMonthNames };
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/get-month-names.ts
21
+ var get_month_names_exports = {};
22
+ __export(get_month_names_exports, {
23
+ getMonthNames: () => getMonthNames
24
+ });
25
+ module.exports = __toCommonJS(get_month_names_exports);
26
+ function getMonthNames(locale, format = "long") {
27
+ const date = new Date(2021, 0, 1);
28
+ const monthNames = [];
29
+ for (let i = 0; i < 12; i++) {
30
+ monthNames.push(date.toLocaleString(locale, { month: format }));
31
+ date.setMonth(date.getMonth() + 1);
32
+ }
33
+ return monthNames;
34
+ }
35
+ // Annotate the CommonJS export names for ESM import in node:
36
+ 0 && (module.exports = {
37
+ getMonthNames
38
+ });
@@ -0,0 +1,6 @@
1
+ import {
2
+ getMonthNames
3
+ } from "./chunk-5HGHDJ3L.mjs";
4
+ export {
5
+ getMonthNames
6
+ };
@@ -0,0 +1,5 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+
3
+ declare function getStartOfWeek(date: CalendarDate, locale: string, firstDayOfWeek?: number): CalendarDate;
4
+
5
+ export { getStartOfWeek };
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/get-start-of-week.ts
21
+ var get_start_of_week_exports = {};
22
+ __export(get_start_of_week_exports, {
23
+ getStartOfWeek: () => getStartOfWeek
24
+ });
25
+ module.exports = __toCommonJS(get_start_of_week_exports);
26
+ var import_date = require("@internationalized/date");
27
+ function getStartOfWeek(date, locale, firstDayOfWeek = 0) {
28
+ const day = (0, import_date.getDayOfWeek)(date, locale);
29
+ const diff = (day - firstDayOfWeek + 7) % 7;
30
+ return date.subtract({ days: diff });
31
+ }
32
+ // Annotate the CommonJS export names for ESM import in node:
33
+ 0 && (module.exports = {
34
+ getStartOfWeek
35
+ });
@@ -0,0 +1,6 @@
1
+ import {
2
+ getStartOfWeek
3
+ } from "./chunk-SI75FOJ2.mjs";
4
+ export {
5
+ getStartOfWeek
6
+ };
@@ -0,0 +1,10 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+
3
+ declare function getWeekDays(date: CalendarDate, startOfWeekProp: number | undefined, timeZone: string, locale: string): {
4
+ value: CalendarDate;
5
+ short: string;
6
+ long: string;
7
+ narrow: string;
8
+ }[];
9
+
10
+ export { getWeekDays };
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/get-week-days.ts
21
+ var get_week_days_exports = {};
22
+ __export(get_week_days_exports, {
23
+ getWeekDays: () => getWeekDays
24
+ });
25
+ module.exports = __toCommonJS(get_week_days_exports);
26
+
27
+ // src/get-weekday-formats.ts
28
+ var import_date = require("@internationalized/date");
29
+ function getWeekdayFormats(locale, timeZone) {
30
+ const longFormat = new import_date.DateFormatter(locale, { weekday: "long", timeZone });
31
+ const shortFormat = new import_date.DateFormatter(locale, { weekday: "short", timeZone });
32
+ const narrowFormat = new import_date.DateFormatter(locale, { weekday: "narrow", timeZone });
33
+ return (value) => {
34
+ const date = value instanceof Date ? value : value.toDate(timeZone);
35
+ return {
36
+ value,
37
+ short: shortFormat.format(date),
38
+ long: longFormat.format(date),
39
+ narrow: narrowFormat.format(date)
40
+ };
41
+ };
42
+ }
43
+
44
+ // src/get-start-of-week.ts
45
+ var import_date2 = require("@internationalized/date");
46
+ function getStartOfWeek(date, locale, firstDayOfWeek = 0) {
47
+ const day = (0, import_date2.getDayOfWeek)(date, locale);
48
+ const diff = (day - firstDayOfWeek + 7) % 7;
49
+ return date.subtract({ days: diff });
50
+ }
51
+
52
+ // src/get-week-days.ts
53
+ function getWeekDays(date, startOfWeekProp, timeZone, locale) {
54
+ const firstDayOfWeek = getStartOfWeek(date, locale, startOfWeekProp);
55
+ const weeks = [...new Array(7).keys()];
56
+ const format = getWeekdayFormats(locale, timeZone);
57
+ return weeks.map((index) => format(firstDayOfWeek.add({ days: index })));
58
+ }
59
+ // Annotate the CommonJS export names for ESM import in node:
60
+ 0 && (module.exports = {
61
+ getWeekDays
62
+ });
@@ -0,0 +1,8 @@
1
+ import {
2
+ getWeekDays
3
+ } from "./chunk-AMZ7CJ5F.mjs";
4
+ import "./chunk-KLHRN7WS.mjs";
5
+ import "./chunk-SI75FOJ2.mjs";
6
+ export {
7
+ getWeekDays
8
+ };
@@ -0,0 +1,10 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+
3
+ declare function getWeekdayFormats(locale: string, timeZone: string): <T extends CalendarDate | Date>(value: T) => {
4
+ value: T;
5
+ short: string;
6
+ long: string;
7
+ narrow: string;
8
+ };
9
+
10
+ export { getWeekdayFormats };
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/get-weekday-formats.ts
21
+ var get_weekday_formats_exports = {};
22
+ __export(get_weekday_formats_exports, {
23
+ getWeekdayFormats: () => getWeekdayFormats
24
+ });
25
+ module.exports = __toCommonJS(get_weekday_formats_exports);
26
+ var import_date = require("@internationalized/date");
27
+ function getWeekdayFormats(locale, timeZone) {
28
+ const longFormat = new import_date.DateFormatter(locale, { weekday: "long", timeZone });
29
+ const shortFormat = new import_date.DateFormatter(locale, { weekday: "short", timeZone });
30
+ const narrowFormat = new import_date.DateFormatter(locale, { weekday: "narrow", timeZone });
31
+ return (value) => {
32
+ const date = value instanceof Date ? value : value.toDate(timeZone);
33
+ return {
34
+ value,
35
+ short: shortFormat.format(date),
36
+ long: longFormat.format(date),
37
+ narrow: narrowFormat.format(date)
38
+ };
39
+ };
40
+ }
41
+ // Annotate the CommonJS export names for ESM import in node:
42
+ 0 && (module.exports = {
43
+ getWeekdayFormats
44
+ });
@@ -0,0 +1,6 @@
1
+ import {
2
+ getWeekdayFormats
3
+ } from "./chunk-KLHRN7WS.mjs";
4
+ export {
5
+ getWeekdayFormats
6
+ };
package/dist/index.d.ts CHANGED
@@ -1,19 +1,20 @@
1
1
  export { alignDate, alignStartDate } from './align.js';
2
2
  export { isDateDisabled, isDateEqual, isDateInvalid, isDateOutsideVisibleRange, isDateUnavailable, isNextVisibleRangeInvalid, isPreviousVisibleRangeInvalid, isTodayDate } from './assertion.js';
3
3
  export { alignCenter, alignEnd, alignStart, constrainStart, constrainValue } from './constrain.js';
4
+ export { parseDateString } from './conversion.js';
4
5
  export { getEndDate, getUnitDuration } from './duration.js';
5
6
  export { formatRange } from './format-range.js';
6
7
  export { formatSelectedDate } from './format-selected-date.js';
7
8
  export { formatVisibleRange } from './format-visible-range.js';
8
- export { getMonthDates } from './get-month-dates.js';
9
- export { DatesInWeek, getDatesInWeek, getWeekDates } from './get-week-dates.js';
9
+ export { getDayFormatter } from './get-day-formatter.js';
10
+ export { getDecadeRange } from './get-decade-range.js';
11
+ export { getDaysInWeek, getMonthDays } from './get-month-days.js';
12
+ export { getMonthFormatter } from './get-month-formatter.js';
13
+ export { getMonthNames } from './get-month-names.js';
14
+ export { getWeekDays } from './get-week-days.js';
15
+ export { getWeekdayFormats } from './get-weekday-formats.js';
10
16
  export { YearsRange, getYearsRange } from './get-year-range.js';
11
17
  export { getNextDay, getPreviousAvailableDate, getPreviousDay, getTodayDate, setCalendar, setDate, setMonth, setYear } from './mutation.js';
12
18
  export { getAdjustedDateFn, getNextPage, getNextRow, getNextSection, getPreviousPage, getPreviousRow, getPreviousSection, getSectionEnd, getSectionStart } from './pagination.js';
13
- export { createPlaceholderDate, getTodayPlaceholderDate } from './placeholder.js';
14
- export { DateSegment, DateSegments, SEGMENT_PAGE_STEP, getSegmentPageStep, isSegmentEditable } from './segment-constants.js';
15
- export { getSegmentLimits } from './segment-limit.js';
16
- export { addSegment, setSegment } from './segment-mutation.js';
17
- export { DateSegmentDetails, getAllSegments, getSegments } from './segment-parts.js';
18
- export { DateAdjustFn, DateGranularity, DateSegmentPart } from './types.js';
19
+ export { DateAdjustFn, DateGranularity } from './types.js';
19
20
  import '@internationalized/date';