@react-aria/calendar 3.0.0-nightly.3180 → 3.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.js +200 -146
- package/dist/main.js.map +1 -1
- package/dist/module.js +197 -130
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +16 -15
- package/dist/types.d.ts.map +1 -1
- package/package.json +11 -12
- package/src/index.ts +9 -5
- package/src/useCalendar.ts +1 -2
- package/src/useCalendarBase.ts +40 -14
- package/src/useCalendarCell.ts +63 -19
- package/src/useCalendarGrid.ts +36 -36
- package/src/useRangeCalendar.ts +16 -11
- package/src/utils.ts +59 -10
- package/src/types.ts +0 -40
package/dist/module.js
CHANGED
|
@@ -1,156 +1,152 @@
|
|
|
1
1
|
import {announce as $amWdn$announce} from "@react-aria/live-announcer";
|
|
2
|
-
import {
|
|
3
|
-
import {useMessageFormatter as $amWdn$useMessageFormatter, useDateFormatter as $amWdn$useDateFormatter, useLocale as $amWdn$useLocale} from "@react-aria/i18n";
|
|
2
|
+
import {filterDOMProps as $amWdn$filterDOMProps, useUpdateEffect as $amWdn$useUpdateEffect, useSlotId as $amWdn$useSlotId, useLabels as $amWdn$useLabels, mergeProps as $amWdn$mergeProps, useEvent as $amWdn$useEvent, useDescription as $amWdn$useDescription, focusWithoutScrolling as $amWdn$focusWithoutScrolling} from "@react-aria/utils";
|
|
4
3
|
import {useRef as $amWdn$useRef, useMemo as $amWdn$useMemo, useEffect as $amWdn$useEffect} from "react";
|
|
4
|
+
import {useMessageFormatter as $amWdn$useMessageFormatter, useDateFormatter as $amWdn$useDateFormatter, useLocale as $amWdn$useLocale} from "@react-aria/i18n";
|
|
5
5
|
import {isSameDay as $amWdn$isSameDay, startOfMonth as $amWdn$startOfMonth, endOfMonth as $amWdn$endOfMonth, startOfWeek as $amWdn$startOfWeek, isEqualDay as $amWdn$isEqualDay, isToday as $amWdn$isToday} from "@internationalized/date";
|
|
6
|
-
import {usePress as $amWdn$usePress} from "@react-aria/interactions";
|
|
6
|
+
import {usePress as $amWdn$usePress, getInteractionModality as $amWdn$getInteractionModality} from "@react-aria/interactions";
|
|
7
7
|
|
|
8
|
-
function $parcel$export(e, n, v, s) {
|
|
9
|
-
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
|
|
10
|
-
}
|
|
11
8
|
function $parcel$interopDefault(a) {
|
|
12
9
|
return a && a.__esModule ? a.default : a;
|
|
13
10
|
}
|
|
14
|
-
var $9942cad8a072a530$exports = {};
|
|
15
11
|
|
|
16
|
-
|
|
12
|
+
|
|
17
13
|
|
|
18
14
|
|
|
19
15
|
var $0fbdc3429b133a50$exports = {};
|
|
20
16
|
var $39324ace0d945f59$exports = {};
|
|
21
|
-
$39324ace0d945f59$exports = JSON.parse("{\"
|
|
17
|
+
$39324ace0d945f59$exports = JSON.parse("{\"dateRange\":\"{startDate} إلى {endDate}\",\"dateSelected\":\"{date} المحدد\",\"finishRangeSelectionPrompt\":\"انقر لإنهاء عملية تحديد نطاق التاريخ\",\"maximumDate\":\"آخر تاريخ متاح\",\"minimumDate\":\"أول تاريخ متاح\",\"next\":\"التالي\",\"previous\":\"السابق\",\"selectedDateDescription\":\"تاريخ محدد: {date}\",\"selectedRangeDescription\":\"المدى الزمني المحدد: {dateRange}\",\"startRangeSelectionPrompt\":\"انقر لبدء عملية تحديد نطاق التاريخ\",\"todayDate\":\"اليوم، {date}\",\"todayDateSelected\":\"اليوم، {date} محدد\"}");
|
|
22
18
|
|
|
23
19
|
|
|
24
20
|
var $1830a539e98c7baf$exports = {};
|
|
25
|
-
$1830a539e98c7baf$exports = JSON.parse("{\"dateSelected\":\"
|
|
21
|
+
$1830a539e98c7baf$exports = JSON.parse("{\"dateRange\":\"{startDate} до {endDate}\",\"dateSelected\":\"Избрано е {date}\",\"finishRangeSelectionPrompt\":\"Натиснете, за да довършите избора на времеви интервал\",\"maximumDate\":\"Последна налична дата\",\"minimumDate\":\"Първа налична дата\",\"next\":\"Напред\",\"previous\":\"Назад\",\"selectedDateDescription\":\"Избрана дата: {date}\",\"selectedRangeDescription\":\"Избран диапазон: {dateRange}\",\"startRangeSelectionPrompt\":\"Натиснете, за да пристъпите към избора на времеви интервал\",\"todayDate\":\"Днес, {date}\",\"todayDateSelected\":\"Днес, {date} са избрани\"}");
|
|
26
22
|
|
|
27
23
|
|
|
28
24
|
var $f4b92528965aab97$exports = {};
|
|
29
|
-
$f4b92528965aab97$exports = JSON.parse("{\"dateSelected\":\"Vybráno
|
|
25
|
+
$f4b92528965aab97$exports = JSON.parse("{\"dateRange\":\"{startDate} až {endDate}\",\"dateSelected\":\"Vybráno {date}\",\"finishRangeSelectionPrompt\":\"Kliknutím dokončíte výběr rozsahu dat\",\"maximumDate\":\"Poslední dostupné datum\",\"minimumDate\":\"První dostupné datum\",\"next\":\"Další\",\"previous\":\"Předchozí\",\"selectedDateDescription\":\"Vybrané datum: {date}\",\"selectedRangeDescription\":\"Vybrané období: {dateRange}\",\"startRangeSelectionPrompt\":\"Kliknutím zahájíte výběr rozsahu dat\",\"todayDate\":\"Dnes, {date}\",\"todayDateSelected\":\"Dnes, vybráno {date}\"}");
|
|
30
26
|
|
|
31
27
|
|
|
32
28
|
var $1cd578ef0547c8f1$exports = {};
|
|
33
|
-
$1cd578ef0547c8f1$exports = JSON.parse("{\"
|
|
29
|
+
$1cd578ef0547c8f1$exports = JSON.parse("{\"dateRange\":\"{startDate} til {endDate}\",\"dateSelected\":\"{date} valgt\",\"finishRangeSelectionPrompt\":\"Klik for at fuldføre valg af datoområde\",\"maximumDate\":\"Sidste ledige dato\",\"minimumDate\":\"Første ledige dato\",\"next\":\"Næste\",\"previous\":\"Forrige\",\"selectedDateDescription\":\"Valgt dato: {date}\",\"selectedRangeDescription\":\"Valgt interval: {dateRange}\",\"startRangeSelectionPrompt\":\"Klik for at starte valg af datoområde\",\"todayDate\":\"I dag, {date}\",\"todayDateSelected\":\"I dag, {date} valgt\"}");
|
|
34
30
|
|
|
35
31
|
|
|
36
32
|
var $db55a8973925d619$exports = {};
|
|
37
|
-
$db55a8973925d619$exports = JSON.parse("{\"
|
|
33
|
+
$db55a8973925d619$exports = JSON.parse("{\"dateRange\":\"{startDate} bis {endDate}\",\"dateSelected\":\"{date} ausgewählt\",\"finishRangeSelectionPrompt\":\"Klicken, um die Auswahl des Datumsbereichs zu beenden\",\"maximumDate\":\"Letztes verfügbares Datum\",\"minimumDate\":\"Erstes verfügbares Datum\",\"next\":\"Weiter\",\"previous\":\"Zurück\",\"selectedDateDescription\":\"Ausgewähltes Datum: {date}\",\"selectedRangeDescription\":\"Ausgewählter Bereich: {dateRange}\",\"startRangeSelectionPrompt\":\"Klicken, um die Auswahl des Datumsbereichs zu beginnen\",\"todayDate\":\"Heute, {date}\",\"todayDateSelected\":\"Heute, {date} ausgewählt\"}");
|
|
38
34
|
|
|
39
35
|
|
|
40
36
|
var $ec6937d58566d443$exports = {};
|
|
41
|
-
$ec6937d58566d443$exports = JSON.parse("{\"dateSelected\":\"
|
|
37
|
+
$ec6937d58566d443$exports = JSON.parse("{\"dateRange\":\"{startDate} έως {endDate}\",\"dateSelected\":\"Επιλέχθηκε {date}\",\"finishRangeSelectionPrompt\":\"Κάντε κλικ για να ολοκληρώσετε την επιλογή εύρους ημερομηνιών\",\"maximumDate\":\"Τελευταία διαθέσιμη ημερομηνία\",\"minimumDate\":\"Πρώτη διαθέσιμη ημερομηνία\",\"next\":\"Επόμενο\",\"previous\":\"Προηγούμενο\",\"selectedDateDescription\":\"Επιλεγμένη ημερομηνία: {date}\",\"selectedRangeDescription\":\"Επιλεγμένο εύρος: {dateRange}\",\"startRangeSelectionPrompt\":\"Κάντε κλικ για να ξεκινήσετε την επιλογή εύρους ημερομηνιών\",\"todayDate\":\"Σήμερα, {date}\",\"todayDateSelected\":\"Σήμερα, επιλέχτηκε {date}\"}");
|
|
42
38
|
|
|
43
39
|
|
|
44
40
|
var $1f5cea0742dc284a$exports = {};
|
|
45
|
-
$1f5cea0742dc284a$exports = JSON.parse("{\"previous\":\"Previous\",\"next\":\"Next\",\"selectedDateDescription\":\"Selected Date: {date
|
|
41
|
+
$1f5cea0742dc284a$exports = JSON.parse("{\"previous\":\"Previous\",\"next\":\"Next\",\"selectedDateDescription\":\"Selected Date: {date}\",\"selectedRangeDescription\":\"Selected Range: {dateRange}\",\"todayDate\":\"Today, {date}\",\"todayDateSelected\":\"Today, {date} selected\",\"dateSelected\":\"{date} selected\",\"startRangeSelectionPrompt\":\"Click to start selecting date range\",\"finishRangeSelectionPrompt\":\"Click to finish selecting date range\",\"minimumDate\":\"First available date\",\"maximumDate\":\"Last available date\",\"dateRange\":\"{startDate} to {endDate}\"}");
|
|
46
42
|
|
|
47
43
|
|
|
48
44
|
var $2ca7ea366384817b$exports = {};
|
|
49
|
-
$2ca7ea366384817b$exports = JSON.parse("{\"
|
|
45
|
+
$2ca7ea366384817b$exports = JSON.parse("{\"dateRange\":\"{startDate} a {endDate}\",\"dateSelected\":\"{date} seleccionado\",\"finishRangeSelectionPrompt\":\"Haga clic para terminar de seleccionar rango de fechas\",\"maximumDate\":\"Última fecha disponible\",\"minimumDate\":\"Primera fecha disponible\",\"next\":\"Siguiente\",\"previous\":\"Anterior\",\"selectedDateDescription\":\"Fecha seleccionada: {date}\",\"selectedRangeDescription\":\"Intervalo seleccionado: {dateRange}\",\"startRangeSelectionPrompt\":\"Haga clic para comenzar a seleccionar un rango de fechas\",\"todayDate\":\"Hoy, {date}\",\"todayDateSelected\":\"Hoy, {date} seleccionado\"}");
|
|
50
46
|
|
|
51
47
|
|
|
52
48
|
var $97874a7fe9cd091f$exports = {};
|
|
53
|
-
$97874a7fe9cd091f$exports = JSON.parse("{\"
|
|
49
|
+
$97874a7fe9cd091f$exports = JSON.parse("{\"dateRange\":\"{startDate} kuni {endDate}\",\"dateSelected\":\"{date} valitud\",\"finishRangeSelectionPrompt\":\"Klõpsake kuupäevavahemiku valimise lõpetamiseks\",\"maximumDate\":\"Viimane saadaolev kuupäev\",\"minimumDate\":\"Esimene saadaolev kuupäev\",\"next\":\"Järgmine\",\"previous\":\"Eelmine\",\"selectedDateDescription\":\"Valitud kuupäev: {date}\",\"selectedRangeDescription\":\"Valitud vahemik: {dateRange}\",\"startRangeSelectionPrompt\":\"Klõpsake kuupäevavahemiku valimiseks\",\"todayDate\":\"Täna, {date}\",\"todayDateSelected\":\"Täna, {date} valitud\"}");
|
|
54
50
|
|
|
55
51
|
|
|
56
52
|
var $5d376b7fce1a45b2$exports = {};
|
|
57
|
-
$5d376b7fce1a45b2$exports = JSON.parse("{\"
|
|
53
|
+
$5d376b7fce1a45b2$exports = JSON.parse("{\"dateRange\":\"{startDate} – {endDate}\",\"dateSelected\":\"{date} valittu\",\"finishRangeSelectionPrompt\":\"Lopeta päivämääräalueen valinta napsauttamalla tätä.\",\"maximumDate\":\"Viimeinen varattavissa oleva päivämäärä\",\"minimumDate\":\"Ensimmäinen varattavissa oleva päivämäärä\",\"next\":\"Seuraava\",\"previous\":\"Edellinen\",\"selectedDateDescription\":\"Valittu päivämäärä: {date}\",\"selectedRangeDescription\":\"Valittu aikaväli: {dateRange}\",\"startRangeSelectionPrompt\":\"Aloita päivämääräalueen valinta napsauttamalla tätä.\",\"todayDate\":\"Tänään, {date}\",\"todayDateSelected\":\"Tänään, {date} valittu\"}");
|
|
58
54
|
|
|
59
55
|
|
|
60
56
|
var $3bf722b362aaf54d$exports = {};
|
|
61
|
-
$3bf722b362aaf54d$exports = JSON.parse("{\"
|
|
57
|
+
$3bf722b362aaf54d$exports = JSON.parse("{\"dateRange\":\"{startDate} à {endDate}\",\"dateSelected\":\"{date} sélectionné\",\"finishRangeSelectionPrompt\":\"Cliquer pour finir de sélectionner la plage de dates\",\"maximumDate\":\"Dernière date disponible\",\"minimumDate\":\"Première date disponible\",\"next\":\"Suivant\",\"previous\":\"Précédent\",\"selectedDateDescription\":\"Date sélectionnée : {date}\",\"selectedRangeDescription\":\"Plage sélectionnée : {dateRange}\",\"startRangeSelectionPrompt\":\"Cliquer pour commencer à sélectionner la plage de dates\",\"todayDate\":\"Aujourd'hui, {date}\",\"todayDateSelected\":\"Aujourd’hui, {date} sélectionné\"}");
|
|
62
58
|
|
|
63
59
|
|
|
64
60
|
var $38c43f8322316031$exports = {};
|
|
65
|
-
$38c43f8322316031$exports = JSON.parse("{\"
|
|
61
|
+
$38c43f8322316031$exports = JSON.parse("{\"dateRange\":\"{startDate} עד {endDate}\",\"dateSelected\":\"{date} נבחר\",\"finishRangeSelectionPrompt\":\"חץ כדי לסיים את בחירת טווח התאריכים\",\"maximumDate\":\"תאריך פנוי אחרון\",\"minimumDate\":\"תאריך פנוי ראשון\",\"next\":\"הבא\",\"previous\":\"הקודם\",\"selectedDateDescription\":\"תאריך נבחר: {date}\",\"selectedRangeDescription\":\"טווח נבחר: {dateRange}\",\"startRangeSelectionPrompt\":\"לחץ כדי להתחיל בבחירת טווח התאריכים\",\"todayDate\":\"היום, {date}\",\"todayDateSelected\":\"היום, {date} נבחר\"}");
|
|
66
62
|
|
|
67
63
|
|
|
68
64
|
var $c90e0f32b44630bf$exports = {};
|
|
69
|
-
$c90e0f32b44630bf$exports = JSON.parse("{\"
|
|
65
|
+
$c90e0f32b44630bf$exports = JSON.parse("{\"dateRange\":\"{startDate} do {endDate}\",\"dateSelected\":\"{date} odabran\",\"finishRangeSelectionPrompt\":\"Kliknite da dovršite raspon odabranih datuma\",\"maximumDate\":\"Posljednji raspoloživi datum\",\"minimumDate\":\"Prvi raspoloživi datum\",\"next\":\"Sljedeći\",\"previous\":\"Prethodni\",\"selectedDateDescription\":\"Odabrani datum: {date}\",\"selectedRangeDescription\":\"Odabrani raspon: {dateRange}\",\"startRangeSelectionPrompt\":\"Kliknite da započnete raspon odabranih datuma\",\"todayDate\":\"Danas, {date}\",\"todayDateSelected\":\"Danas, odabran {date}\"}");
|
|
70
66
|
|
|
71
67
|
|
|
72
68
|
var $715875e6e7a338f4$exports = {};
|
|
73
|
-
$715875e6e7a338f4$exports = JSON.parse("{\"dateSelected\":\"{date
|
|
69
|
+
$715875e6e7a338f4$exports = JSON.parse("{\"dateRange\":\"{startDate}–{endDate}\",\"dateSelected\":\"{date} kiválasztva\",\"finishRangeSelectionPrompt\":\"Kattintson a dátumtartomány kijelölésének befejezéséhez\",\"maximumDate\":\"Utolsó elérhető dátum\",\"minimumDate\":\"Az első elérhető dátum\",\"next\":\"Következő\",\"previous\":\"Előző\",\"selectedDateDescription\":\"Kijelölt dátum: {date}\",\"selectedRangeDescription\":\"Kijelölt tartomány: {dateRange}\",\"startRangeSelectionPrompt\":\"Kattintson a dátumtartomány kijelölésének indításához\",\"todayDate\":\"Ma, {date}\",\"todayDateSelected\":\"Ma, {date} kijelölve\"}");
|
|
74
70
|
|
|
75
71
|
|
|
76
72
|
var $37d77c66e34daccf$exports = {};
|
|
77
|
-
$37d77c66e34daccf$exports = JSON.parse("{\"
|
|
73
|
+
$37d77c66e34daccf$exports = JSON.parse("{\"dateRange\":\"Da {startDate} a {endDate}\",\"dateSelected\":\"{date} selezionata\",\"finishRangeSelectionPrompt\":\"Fai clic per completare la selezione dell’intervallo di date\",\"maximumDate\":\"Ultima data disponibile\",\"minimumDate\":\"Prima data disponibile\",\"next\":\"Successivo\",\"previous\":\"Precedente\",\"selectedDateDescription\":\"Data selezionata: {date}\",\"selectedRangeDescription\":\"Intervallo selezionato: {dateRange}\",\"startRangeSelectionPrompt\":\"Fai clic per selezionare l’intervallo di date\",\"todayDate\":\"Oggi, {date}\",\"todayDateSelected\":\"Oggi, {date} selezionata\"}");
|
|
78
74
|
|
|
79
75
|
|
|
80
76
|
var $542f39aee29303c3$exports = {};
|
|
81
|
-
$542f39aee29303c3$exports = JSON.parse("{\"
|
|
77
|
+
$542f39aee29303c3$exports = JSON.parse("{\"dateRange\":\"{startDate} から {endDate}\",\"dateSelected\":\"{date} を選択\",\"finishRangeSelectionPrompt\":\"クリックして日付範囲の選択を終了\",\"maximumDate\":\"最終利用可能日\",\"minimumDate\":\"最初の利用可能日\",\"next\":\"次へ\",\"previous\":\"前へ\",\"selectedDateDescription\":\"選択した日付 : {date}\",\"selectedRangeDescription\":\"選択範囲 : {dateRange}\",\"startRangeSelectionPrompt\":\"クリックして日付範囲の選択を開始\",\"todayDate\":\"本日、{date}\",\"todayDateSelected\":\"本日、{date} を選択\"}");
|
|
82
78
|
|
|
83
79
|
|
|
84
80
|
var $22a5f0623ea73e4f$exports = {};
|
|
85
|
-
$22a5f0623ea73e4f$exports = JSON.parse("{\"
|
|
81
|
+
$22a5f0623ea73e4f$exports = JSON.parse("{\"dateRange\":\"{startDate} ~ {endDate}\",\"dateSelected\":\"{date} 선택됨\",\"finishRangeSelectionPrompt\":\"날짜 범위 선택을 완료하려면 클릭하십시오.\",\"maximumDate\":\"마지막으로 사용 가능한 일자\",\"minimumDate\":\"처음으로 사용 가능한 일자\",\"next\":\"다음\",\"previous\":\"이전\",\"selectedDateDescription\":\"선택 일자: {date}\",\"selectedRangeDescription\":\"선택 범위: {dateRange}\",\"startRangeSelectionPrompt\":\"날짜 범위 선택을 시작하려면 클릭하십시오.\",\"todayDate\":\"오늘, {date}\",\"todayDateSelected\":\"오늘, {date} 선택됨\"}");
|
|
86
82
|
|
|
87
83
|
|
|
88
84
|
var $522380d13d62cba0$exports = {};
|
|
89
|
-
$522380d13d62cba0$exports = JSON.parse("{\"dateSelected\":\"Pasirinkta {date
|
|
85
|
+
$522380d13d62cba0$exports = JSON.parse("{\"dateRange\":\"Nuo {startDate} iki {endDate}\",\"dateSelected\":\"Pasirinkta {date}\",\"finishRangeSelectionPrompt\":\"Spustelėkite, kad baigtumėte pasirinkti datų intervalą\",\"maximumDate\":\"Paskutinė galima data\",\"minimumDate\":\"Pirmoji galima data\",\"next\":\"Paskesnis\",\"previous\":\"Ankstesnis\",\"selectedDateDescription\":\"Pasirinkta data: {date}\",\"selectedRangeDescription\":\"Pasirinktas intervalas: {dateRange}\",\"startRangeSelectionPrompt\":\"Spustelėkite, kad pradėtumėte pasirinkti datų intervalą\",\"todayDate\":\"Šiandien, {date}\",\"todayDateSelected\":\"Šiandien, pasirinkta {date}\"}");
|
|
90
86
|
|
|
91
87
|
|
|
92
88
|
var $8a7bc830b2fe6485$exports = {};
|
|
93
|
-
$8a7bc830b2fe6485$exports = JSON.parse("{\"dateSelected\":\"Atlasīts {date
|
|
89
|
+
$8a7bc830b2fe6485$exports = JSON.parse("{\"dateRange\":\"No {startDate} līdz {endDate}\",\"dateSelected\":\"Atlasīts: {date}\",\"finishRangeSelectionPrompt\":\"Noklikšķiniet, lai pabeigtu datumu diapazona atlasi\",\"maximumDate\":\"Pēdējais pieejamais datums\",\"minimumDate\":\"Pirmais pieejamais datums\",\"next\":\"Tālāk\",\"previous\":\"Atpakaļ\",\"selectedDateDescription\":\"Atlasītais datums: {date}\",\"selectedRangeDescription\":\"Atlasītais diapazons: {dateRange}\",\"startRangeSelectionPrompt\":\"Noklikšķiniet, lai sāktu datumu diapazona atlasi\",\"todayDate\":\"Šodien, {date}\",\"todayDateSelected\":\"Atlasīta šodiena, {date}\"}");
|
|
94
90
|
|
|
95
91
|
|
|
96
92
|
var $9fac9c044470683b$exports = {};
|
|
97
|
-
$9fac9c044470683b$exports = JSON.parse("{\"
|
|
93
|
+
$9fac9c044470683b$exports = JSON.parse("{\"dateRange\":\"{startDate} til {endDate}\",\"dateSelected\":\"{date} valgt\",\"finishRangeSelectionPrompt\":\"Klikk for å fullføre valg av datoområde\",\"maximumDate\":\"Siste tilgjengelige dato\",\"minimumDate\":\"Første tilgjengelige dato\",\"next\":\"Neste\",\"previous\":\"Forrige\",\"selectedDateDescription\":\"Valgt dato: {date}\",\"selectedRangeDescription\":\"Valgt område: {dateRange}\",\"startRangeSelectionPrompt\":\"Klikk for å starte valg av datoområde\",\"todayDate\":\"I dag, {date}\",\"todayDateSelected\":\"I dag, {date} valgt\"}");
|
|
98
94
|
|
|
99
95
|
|
|
100
96
|
var $b127d3569efb1449$exports = {};
|
|
101
|
-
$b127d3569efb1449$exports = JSON.parse("{\"
|
|
97
|
+
$b127d3569efb1449$exports = JSON.parse("{\"dateRange\":\"{startDate} tot {endDate}\",\"dateSelected\":\"{date} geselecteerd\",\"finishRangeSelectionPrompt\":\"Klik om de selectie van het datumbereik te voltooien\",\"maximumDate\":\"Laatste beschikbare datum\",\"minimumDate\":\"Eerste beschikbare datum\",\"next\":\"Volgende\",\"previous\":\"Vorige\",\"selectedDateDescription\":\"Geselecteerde datum: {date}\",\"selectedRangeDescription\":\"Geselecteerd bereik: {dateRange}\",\"startRangeSelectionPrompt\":\"Klik om het datumbereik te selecteren\",\"todayDate\":\"Vandaag, {date}\",\"todayDateSelected\":\"Vandaag, {date} geselecteerd\"}");
|
|
102
98
|
|
|
103
99
|
|
|
104
100
|
var $51404a4090633490$exports = {};
|
|
105
|
-
$51404a4090633490$exports = JSON.parse("{\"dateSelected\":\"Wybrano {date
|
|
101
|
+
$51404a4090633490$exports = JSON.parse("{\"dateRange\":\"{startDate} do {endDate}\",\"dateSelected\":\"Wybrano {date}\",\"finishRangeSelectionPrompt\":\"Kliknij, aby zakończyć wybór zakresu dat\",\"maximumDate\":\"Ostatnia dostępna data\",\"minimumDate\":\"Pierwsza dostępna data\",\"next\":\"Dalej\",\"previous\":\"Wstecz\",\"selectedDateDescription\":\"Wybrana data: {date}\",\"selectedRangeDescription\":\"Wybrany zakres: {dateRange}\",\"startRangeSelectionPrompt\":\"Kliknij, aby rozpocząć wybór zakresu dat\",\"todayDate\":\"Dzisiaj, {date}\",\"todayDateSelected\":\"Dzisiaj wybrano {date}\"}");
|
|
106
102
|
|
|
107
103
|
|
|
108
104
|
var $e5e6a3fe3b4527df$exports = {};
|
|
109
|
-
$e5e6a3fe3b4527df$exports = JSON.parse("{\"
|
|
105
|
+
$e5e6a3fe3b4527df$exports = JSON.parse("{\"dateRange\":\"{startDate} a {endDate}\",\"dateSelected\":\"{date} selecionado\",\"finishRangeSelectionPrompt\":\"Clique para concluir a seleção do intervalo de datas\",\"maximumDate\":\"Última data disponível\",\"minimumDate\":\"Primeira data disponível\",\"next\":\"Próximo\",\"previous\":\"Anterior\",\"selectedDateDescription\":\"Data selecionada: {date}\",\"selectedRangeDescription\":\"Intervalo selecionado: {dateRange}\",\"startRangeSelectionPrompt\":\"Clique para iniciar a seleção do intervalo de datas\",\"todayDate\":\"Hoje, {date}\",\"todayDateSelected\":\"Hoje, {date} selecionado\"}");
|
|
110
106
|
|
|
111
107
|
|
|
112
108
|
var $c519dcadcbb1ee47$exports = {};
|
|
113
|
-
$c519dcadcbb1ee47$exports = JSON.parse("{\"
|
|
109
|
+
$c519dcadcbb1ee47$exports = JSON.parse("{\"dateRange\":\"{startDate} a {endDate}\",\"dateSelected\":\"{date} selecionado\",\"finishRangeSelectionPrompt\":\"Clique para terminar de selecionar o intervalo de datas\",\"maximumDate\":\"Última data disponível\",\"minimumDate\":\"Primeira data disponível\",\"next\":\"Próximo\",\"previous\":\"Anterior\",\"selectedDateDescription\":\"Data selecionada: {date}\",\"selectedRangeDescription\":\"Intervalo selecionado: {dateRange}\",\"startRangeSelectionPrompt\":\"Clique para começar a selecionar o intervalo de datas\",\"todayDate\":\"Hoje, {date}\",\"todayDateSelected\":\"Hoje, {date} selecionado\"}");
|
|
114
110
|
|
|
115
111
|
|
|
116
112
|
var $e5aa0186ca7889c6$exports = {};
|
|
117
|
-
$e5aa0186ca7889c6$exports = JSON.parse("{\"
|
|
113
|
+
$e5aa0186ca7889c6$exports = JSON.parse("{\"dateRange\":\"De la {startDate} până la {endDate}\",\"dateSelected\":\"{date} selectată\",\"finishRangeSelectionPrompt\":\"Apăsaţi pentru a finaliza selecţia razei pentru dată\",\"maximumDate\":\"Ultima dată disponibilă\",\"minimumDate\":\"Prima dată disponibilă\",\"next\":\"Următorul\",\"previous\":\"Înainte\",\"selectedDateDescription\":\"Dată selectată: {date}\",\"selectedRangeDescription\":\"Interval selectat: {dateRange}\",\"startRangeSelectionPrompt\":\"Apăsaţi pentru a începe selecţia razei pentru dată\",\"todayDate\":\"Astăzi, {date}\",\"todayDateSelected\":\"Azi, {date} selectată\"}");
|
|
118
114
|
|
|
119
115
|
|
|
120
116
|
var $5b907f5fa3eee652$exports = {};
|
|
121
|
-
$5b907f5fa3eee652$exports = JSON.parse("{\"
|
|
117
|
+
$5b907f5fa3eee652$exports = JSON.parse("{\"dateRange\":\"С {startDate} по {endDate}\",\"dateSelected\":\"Выбрано {date}\",\"finishRangeSelectionPrompt\":\"Щелкните, чтобы завершить выбор диапазона дат\",\"maximumDate\":\"Последняя доступная дата\",\"minimumDate\":\"Первая доступная дата\",\"next\":\"Далее\",\"previous\":\"Назад\",\"selectedDateDescription\":\"Выбранная дата: {date}\",\"selectedRangeDescription\":\"Выбранный диапазон: {dateRange}\",\"startRangeSelectionPrompt\":\"Щелкните, чтобы начать выбор диапазона дат\",\"todayDate\":\"Сегодня, {date}\",\"todayDateSelected\":\"Сегодня, выбрано {date}\"}");
|
|
122
118
|
|
|
123
119
|
|
|
124
120
|
var $1b4c51359c99cf79$exports = {};
|
|
125
|
-
$1b4c51359c99cf79$exports = JSON.parse("{\"dateSelected\":\"Vybratý dátum {date
|
|
121
|
+
$1b4c51359c99cf79$exports = JSON.parse("{\"dateRange\":\"Od {startDate} do {endDate}\",\"dateSelected\":\"Vybratý dátum {date}\",\"finishRangeSelectionPrompt\":\"Kliknutím dokončíte výber rozsahu dátumov\",\"maximumDate\":\"Posledný dostupný dátum\",\"minimumDate\":\"Prvý dostupný dátum\",\"next\":\"Nasledujúce\",\"previous\":\"Predchádzajúce\",\"selectedDateDescription\":\"Vybratý dátum: {date}\",\"selectedRangeDescription\":\"Vybratý rozsah: {dateRange}\",\"startRangeSelectionPrompt\":\"Kliknutím spustíte výber rozsahu dátumov\",\"todayDate\":\"Dnes {date}\",\"todayDateSelected\":\"Vybratý dnešný dátum {date}\"}");
|
|
126
122
|
|
|
127
123
|
|
|
128
124
|
var $02e4e6a4608cc6f3$exports = {};
|
|
129
|
-
$02e4e6a4608cc6f3$exports = JSON.parse("{\"
|
|
125
|
+
$02e4e6a4608cc6f3$exports = JSON.parse("{\"dateRange\":\"{startDate} do {endDate}\",\"dateSelected\":\"{date} izbrano\",\"finishRangeSelectionPrompt\":\"Kliknite za dokončanje izbire datumskega obsega\",\"maximumDate\":\"Zadnji razpoložljivi datum\",\"minimumDate\":\"Prvi razpoložljivi datum\",\"next\":\"Naprej\",\"previous\":\"Nazaj\",\"selectedDateDescription\":\"Izbrani datum: {date}\",\"selectedRangeDescription\":\"Izbrano območje: {dateRange}\",\"startRangeSelectionPrompt\":\"Kliknite za začetek izbire datumskega obsega\",\"todayDate\":\"Danes, {date}\",\"todayDateSelected\":\"Danes, {date} izbrano\"}");
|
|
130
126
|
|
|
131
127
|
|
|
132
128
|
var $6dd2fbaad93b6878$exports = {};
|
|
133
|
-
$6dd2fbaad93b6878$exports = JSON.parse("{\"
|
|
129
|
+
$6dd2fbaad93b6878$exports = JSON.parse("{\"dateRange\":\"{startDate} do {endDate}\",\"dateSelected\":\"{date} izabran\",\"finishRangeSelectionPrompt\":\"Kliknite da dovršite opseg izabranih datuma\",\"maximumDate\":\"Zadnji raspoloživi datum\",\"minimumDate\":\"Prvi raspoloživi datum\",\"next\":\"Sledeći\",\"previous\":\"Prethodni\",\"selectedDateDescription\":\"Izabrani datum: {date}\",\"selectedRangeDescription\":\"Izabrani period: {dateRange}\",\"startRangeSelectionPrompt\":\"Kliknite da započnete opseg izabranih datuma\",\"todayDate\":\"Danas, {date}\",\"todayDateSelected\":\"Danas, izabran {date}\"}");
|
|
134
130
|
|
|
135
131
|
|
|
136
132
|
var $33ea59bfe6e804e0$exports = {};
|
|
137
|
-
$33ea59bfe6e804e0$exports = JSON.parse("{\"
|
|
133
|
+
$33ea59bfe6e804e0$exports = JSON.parse("{\"dateRange\":\"{startDate} till {endDate}\",\"dateSelected\":\"{date} har valts\",\"finishRangeSelectionPrompt\":\"Klicka för att avsluta val av datumintervall\",\"maximumDate\":\"Sista tillgängliga datum\",\"minimumDate\":\"Första tillgängliga datum\",\"next\":\"Nästa\",\"previous\":\"Föregående\",\"selectedDateDescription\":\"Valt datum: {date}\",\"selectedRangeDescription\":\"Valt intervall: {dateRange}\",\"startRangeSelectionPrompt\":\"Klicka för att välja datumintervall\",\"todayDate\":\"Idag, {date}\",\"todayDateSelected\":\"Idag, {date} har valts\"}");
|
|
138
134
|
|
|
139
135
|
|
|
140
136
|
var $4603b0d0246969b2$exports = {};
|
|
141
|
-
$4603b0d0246969b2$exports = JSON.parse("{\"
|
|
137
|
+
$4603b0d0246969b2$exports = JSON.parse("{\"dateRange\":\"{startDate} - {endDate}\",\"dateSelected\":\"{date} seçildi\",\"finishRangeSelectionPrompt\":\"Tarih aralığı seçimini tamamlamak için tıklayın\",\"maximumDate\":\"Son müsait tarih\",\"minimumDate\":\"İlk müsait tarih\",\"next\":\"Sonraki\",\"previous\":\"Önceki\",\"selectedDateDescription\":\"Seçilen Tarih: {date}\",\"selectedRangeDescription\":\"Seçilen Aralık: {dateRange}\",\"startRangeSelectionPrompt\":\"Tarih aralığı seçimini başlatmak için tıklayın\",\"todayDate\":\"Bugün, {date}\",\"todayDateSelected\":\"Bugün, {date} seçildi\"}");
|
|
142
138
|
|
|
143
139
|
|
|
144
140
|
var $82649816f530bb1b$exports = {};
|
|
145
|
-
$82649816f530bb1b$exports = JSON.parse("{\"dateSelected\":\"
|
|
141
|
+
$82649816f530bb1b$exports = JSON.parse("{\"dateRange\":\"{startDate} — {endDate}\",\"dateSelected\":\"Вибрано {date}\",\"finishRangeSelectionPrompt\":\"Натисніть, щоб завершити вибір діапазону дат\",\"maximumDate\":\"Остання доступна дата\",\"minimumDate\":\"Перша доступна дата\",\"next\":\"Наступний\",\"previous\":\"Попередній\",\"selectedDateDescription\":\"Вибрана дата: {date}\",\"selectedRangeDescription\":\"Вибраний діапазон: {dateRange}\",\"startRangeSelectionPrompt\":\"Натисніть, щоб почати вибір діапазону дат\",\"todayDate\":\"Сьогодні, {date}\",\"todayDateSelected\":\"Сьогодні, вибрано {date}\"}");
|
|
146
142
|
|
|
147
143
|
|
|
148
144
|
var $628e140a43dfb330$exports = {};
|
|
149
|
-
$628e140a43dfb330$exports = JSON.parse("{\"dateSelected\":\"
|
|
145
|
+
$628e140a43dfb330$exports = JSON.parse("{\"dateRange\":\"{startDate} 至 {endDate}\",\"dateSelected\":\"已选定 {date}\",\"finishRangeSelectionPrompt\":\"单击以完成选择日期范围\",\"maximumDate\":\"最后一个可用日期\",\"minimumDate\":\"第一个可用日期\",\"next\":\"下一页\",\"previous\":\"上一页\",\"selectedDateDescription\":\"选定的日期:{date}\",\"selectedRangeDescription\":\"选定的范围:{dateRange}\",\"startRangeSelectionPrompt\":\"单击以开始选择日期范围\",\"todayDate\":\"今天,即 {date}\",\"todayDateSelected\":\"已选定今天,即 {date}\"}");
|
|
150
146
|
|
|
151
147
|
|
|
152
148
|
var $745937250cd4679c$exports = {};
|
|
153
|
-
$745937250cd4679c$exports = JSON.parse("{\"dateSelected\":\"已選取 {date
|
|
149
|
+
$745937250cd4679c$exports = JSON.parse("{\"dateRange\":\"{startDate} 至 {endDate}\",\"dateSelected\":\"已選取 {date}\",\"finishRangeSelectionPrompt\":\"按一下以完成選取日期範圍\",\"maximumDate\":\"最後一個可用日期\",\"minimumDate\":\"第一個可用日期\",\"next\":\"下一頁\",\"previous\":\"上一頁\",\"selectedDateDescription\":\"選定的日期:{date}\",\"selectedRangeDescription\":\"選定的範圍:{dateRange}\",\"startRangeSelectionPrompt\":\"按一下以開始選取日期範圍\",\"todayDate\":\"今天,{date}\",\"todayDateSelected\":\"已選取今天,{date}\"}");
|
|
154
150
|
|
|
155
151
|
|
|
156
152
|
$0fbdc3429b133a50$exports = {
|
|
@@ -192,27 +188,34 @@ $0fbdc3429b133a50$exports = {
|
|
|
192
188
|
|
|
193
189
|
|
|
194
190
|
|
|
195
|
-
|
|
196
|
-
const $a074e1e2d0f0a665$export$3ddff89c59628ee7 = new WeakMap();
|
|
191
|
+
const $a074e1e2d0f0a665$export$653eddfc964b0f8a = new WeakMap();
|
|
197
192
|
function $a074e1e2d0f0a665$export$b6df97c887c38e1a(state) {
|
|
198
193
|
let formatMessage = $amWdn$useMessageFormatter((/*@__PURE__*/$parcel$interopDefault($0fbdc3429b133a50$exports)));
|
|
199
194
|
let start, end;
|
|
200
195
|
if ('highlightedRange' in state) ({ start: start , end: end } = state.highlightedRange || {
|
|
201
196
|
});
|
|
202
197
|
else start = end = state.value;
|
|
198
|
+
let dateFormatter = $amWdn$useDateFormatter({
|
|
199
|
+
dateStyle: 'full',
|
|
200
|
+
timeZone: state.timeZone
|
|
201
|
+
});
|
|
203
202
|
let anchorDate = 'anchorDate' in state ? state.anchorDate : null;
|
|
204
203
|
return $amWdn$useMemo(()=>{
|
|
205
204
|
// No message if currently selecting a range, or there is nothing highlighted.
|
|
206
205
|
if (!anchorDate && start && end) {
|
|
207
206
|
// Use a single date message if the start and end dates are the same day,
|
|
208
207
|
// otherwise include both dates.
|
|
209
|
-
if ($amWdn$isSameDay(start, end))
|
|
210
|
-
date
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
208
|
+
if ($amWdn$isSameDay(start, end)) {
|
|
209
|
+
let date = dateFormatter.format(start.toDate(state.timeZone));
|
|
210
|
+
return formatMessage('selectedDateDescription', {
|
|
211
|
+
date: date
|
|
212
|
+
});
|
|
213
|
+
} else {
|
|
214
|
+
let dateRange = $a074e1e2d0f0a665$var$formatRange(dateFormatter, formatMessage, start, end, state.timeZone);
|
|
215
|
+
return formatMessage('selectedRangeDescription', {
|
|
216
|
+
dateRange: dateRange
|
|
217
|
+
});
|
|
218
|
+
}
|
|
216
219
|
}
|
|
217
220
|
return '';
|
|
218
221
|
}, [
|
|
@@ -220,10 +223,12 @@ function $a074e1e2d0f0a665$export$b6df97c887c38e1a(state) {
|
|
|
220
223
|
end,
|
|
221
224
|
anchorDate,
|
|
222
225
|
state.timeZone,
|
|
223
|
-
formatMessage
|
|
226
|
+
formatMessage,
|
|
227
|
+
dateFormatter
|
|
224
228
|
]);
|
|
225
229
|
}
|
|
226
|
-
function $a074e1e2d0f0a665$export$31afe65d91ef6e8(startDate, endDate, timeZone) {
|
|
230
|
+
function $a074e1e2d0f0a665$export$31afe65d91ef6e8(startDate, endDate, timeZone, isAria) {
|
|
231
|
+
let formatMessage = $amWdn$useMessageFormatter((/*@__PURE__*/$parcel$interopDefault($0fbdc3429b133a50$exports)));
|
|
227
232
|
let monthFormatter = $amWdn$useDateFormatter({
|
|
228
233
|
month: 'long',
|
|
229
234
|
year: 'numeric',
|
|
@@ -241,18 +246,41 @@ function $a074e1e2d0f0a665$export$31afe65d91ef6e8(startDate, endDate, timeZone)
|
|
|
241
246
|
// single month is visible, otherwise format as a range of months.
|
|
242
247
|
if ($amWdn$isSameDay(startDate, $amWdn$startOfMonth(startDate))) {
|
|
243
248
|
if ($amWdn$isSameDay(endDate, $amWdn$endOfMonth(startDate))) return monthFormatter.format(startDate.toDate(timeZone));
|
|
244
|
-
else if ($amWdn$isSameDay(endDate, $amWdn$endOfMonth(endDate))) return monthFormatter.formatRange(startDate.toDate(timeZone), endDate.toDate(timeZone));
|
|
249
|
+
else if ($amWdn$isSameDay(endDate, $amWdn$endOfMonth(endDate))) return isAria ? $a074e1e2d0f0a665$var$formatRange(monthFormatter, formatMessage, startDate, endDate, timeZone) : monthFormatter.formatRange(startDate.toDate(timeZone), endDate.toDate(timeZone));
|
|
245
250
|
}
|
|
246
|
-
return dateFormatter.formatRange(startDate.toDate(timeZone), endDate.toDate(timeZone));
|
|
251
|
+
return isAria ? $a074e1e2d0f0a665$var$formatRange(dateFormatter, formatMessage, startDate, endDate, timeZone) : dateFormatter.formatRange(startDate.toDate(timeZone), endDate.toDate(timeZone));
|
|
247
252
|
}, [
|
|
248
253
|
startDate,
|
|
249
254
|
endDate,
|
|
250
255
|
monthFormatter,
|
|
251
256
|
dateFormatter,
|
|
252
|
-
|
|
257
|
+
formatMessage,
|
|
258
|
+
timeZone,
|
|
259
|
+
isAria
|
|
253
260
|
]);
|
|
254
261
|
}
|
|
255
|
-
|
|
262
|
+
function $a074e1e2d0f0a665$var$formatRange(dateFormatter, formatMessage, start, end, timeZone) {
|
|
263
|
+
let parts = dateFormatter.formatRangeToParts(start.toDate(timeZone), end.toDate(timeZone));
|
|
264
|
+
// Find the separator between the start and end date. This is determined
|
|
265
|
+
// by finding the last shared literal before the end range.
|
|
266
|
+
let separatorIndex = -1;
|
|
267
|
+
for(let i = 0; i < parts.length; i++){
|
|
268
|
+
let part = parts[i];
|
|
269
|
+
if (part.source === 'shared' && part.type === 'literal') separatorIndex = i;
|
|
270
|
+
else if (part.source === 'endRange') break;
|
|
271
|
+
}
|
|
272
|
+
// Now we can combine the parts into start and end strings.
|
|
273
|
+
let startValue = '';
|
|
274
|
+
let endValue = '';
|
|
275
|
+
for(let i1 = 0; i1 < parts.length; i1++){
|
|
276
|
+
if (i1 < separatorIndex) startValue += parts[i1].value;
|
|
277
|
+
else if (i1 > separatorIndex) endValue += parts[i1].value;
|
|
278
|
+
}
|
|
279
|
+
return formatMessage('dateRange', {
|
|
280
|
+
startDate: startValue,
|
|
281
|
+
endDate: endValue
|
|
282
|
+
});
|
|
283
|
+
}
|
|
256
284
|
|
|
257
285
|
|
|
258
286
|
|
|
@@ -260,8 +288,9 @@ function $a074e1e2d0f0a665$export$31afe65d91ef6e8(startDate, endDate, timeZone)
|
|
|
260
288
|
|
|
261
289
|
function $c4acc1de3ab169cf$export$d652b3ea2d672d5b(props, state) {
|
|
262
290
|
let formatMessage = $amWdn$useMessageFormatter((/*@__PURE__*/$parcel$interopDefault($0fbdc3429b133a50$exports)));
|
|
263
|
-
let
|
|
264
|
-
let
|
|
291
|
+
let domProps = $amWdn$filterDOMProps(props);
|
|
292
|
+
let title = $a074e1e2d0f0a665$export$31afe65d91ef6e8(state.visibleRange.start, state.visibleRange.end, state.timeZone, false);
|
|
293
|
+
let visibleRangeDescription = $a074e1e2d0f0a665$export$31afe65d91ef6e8(state.visibleRange.start, state.visibleRange.end, state.timeZone, true);
|
|
265
294
|
// Announce when the visible date range changes
|
|
266
295
|
$amWdn$useUpdateEffect(()=>{
|
|
267
296
|
// only when pressing the Previous or Next button
|
|
@@ -277,9 +306,17 @@ function $c4acc1de3ab169cf$export$d652b3ea2d672d5b(props, state) {
|
|
|
277
306
|
}, [
|
|
278
307
|
selectedDateDescription
|
|
279
308
|
]);
|
|
280
|
-
let
|
|
281
|
-
|
|
282
|
-
|
|
309
|
+
let errorMessageId = $amWdn$useSlotId([
|
|
310
|
+
Boolean(props.errorMessage),
|
|
311
|
+
props.validationState
|
|
312
|
+
]);
|
|
313
|
+
// Pass the label to the child grid elements.
|
|
314
|
+
$a074e1e2d0f0a665$export$653eddfc964b0f8a.set(state, {
|
|
315
|
+
ariaLabel: props['aria-label'],
|
|
316
|
+
ariaLabelledBy: props['aria-labelledby'],
|
|
317
|
+
errorMessageId: errorMessageId,
|
|
318
|
+
selectedDateDescription: selectedDateDescription
|
|
319
|
+
});
|
|
283
320
|
// If the next or previous buttons become disabled while they are focused, move focus to the calendar body.
|
|
284
321
|
let nextFocused = $amWdn$useRef(false);
|
|
285
322
|
let nextDisabled = props.isDisabled || state.isNextVisibleRangeInvalid();
|
|
@@ -293,12 +330,18 @@ function $c4acc1de3ab169cf$export$d652b3ea2d672d5b(props, state) {
|
|
|
293
330
|
previousFocused.current = false;
|
|
294
331
|
state.setFocused(true);
|
|
295
332
|
}
|
|
333
|
+
let labelProps = $amWdn$useLabels({
|
|
334
|
+
id: props['id'],
|
|
335
|
+
'aria-label': [
|
|
336
|
+
props['aria-label'],
|
|
337
|
+
visibleRangeDescription
|
|
338
|
+
].filter(Boolean).join(', '),
|
|
339
|
+
'aria-labelledby': props['aria-labelledby']
|
|
340
|
+
});
|
|
296
341
|
return {
|
|
297
|
-
calendarProps: $amWdn$mergeProps(
|
|
342
|
+
calendarProps: $amWdn$mergeProps(domProps, labelProps, {
|
|
298
343
|
role: 'group',
|
|
299
|
-
|
|
300
|
-
'aria-label': props['aria-label'],
|
|
301
|
-
'aria-labelledby': props['aria-labelledby']
|
|
344
|
+
'aria-describedby': props['aria-describedby'] || undefined
|
|
302
345
|
}),
|
|
303
346
|
nextButtonProps: {
|
|
304
347
|
onPress: ()=>state.focusNextPage()
|
|
@@ -318,7 +361,10 @@ function $c4acc1de3ab169cf$export$d652b3ea2d672d5b(props, state) {
|
|
|
318
361
|
,
|
|
319
362
|
onBlur: ()=>previousFocused.current = false
|
|
320
363
|
},
|
|
321
|
-
|
|
364
|
+
errorMessageProps: {
|
|
365
|
+
id: errorMessageId
|
|
366
|
+
},
|
|
367
|
+
title: title
|
|
322
368
|
};
|
|
323
369
|
}
|
|
324
370
|
|
|
@@ -328,16 +374,11 @@ function $9942cad8a072a530$export$3ee915f8151bd4f1(props, state) {
|
|
|
328
374
|
}
|
|
329
375
|
|
|
330
376
|
|
|
331
|
-
var $46a4342aab3d8076$exports = {};
|
|
332
377
|
|
|
333
|
-
$parcel$export($46a4342aab3d8076$exports, "useRangeCalendar", () => $46a4342aab3d8076$export$87e0539f600c24e5);
|
|
334
378
|
|
|
335
379
|
|
|
336
|
-
|
|
337
|
-
function $46a4342aab3d8076$export$87e0539f600c24e5(props, state, ref2) {
|
|
380
|
+
function $46a4342aab3d8076$export$87e0539f600c24e5(props, state, ref) {
|
|
338
381
|
let res = $c4acc1de3ab169cf$export$d652b3ea2d672d5b(props, state);
|
|
339
|
-
res.nextButtonProps.id = $amWdn$useId();
|
|
340
|
-
res.prevButtonProps.id = $amWdn$useId();
|
|
341
382
|
// We need to ignore virtual pointer events from VoiceOver due to these bugs.
|
|
342
383
|
// https://bugs.webkit.org/show_bug.cgi?id=222627
|
|
343
384
|
// https://bugs.webkit.org/show_bug.cgi?id=223202
|
|
@@ -345,13 +386,13 @@ function $46a4342aab3d8076$export$87e0539f600c24e5(props, state, ref2) {
|
|
|
345
386
|
// We need to match that here otherwise this will fire before the press event in
|
|
346
387
|
// useCalendarCell, causing range selection to not work properly.
|
|
347
388
|
let isVirtualClick = $amWdn$useRef(false);
|
|
348
|
-
$amWdn$
|
|
389
|
+
let windowRef = $amWdn$useRef(typeof window !== 'undefined' ? window : null);
|
|
390
|
+
$amWdn$useEvent(windowRef, 'pointerdown', (e)=>{
|
|
349
391
|
isVirtualClick.current = e.width === 0 && e.height === 0;
|
|
350
392
|
});
|
|
351
393
|
// Stop range selection when pressing or releasing a pointer outside the calendar body,
|
|
352
394
|
// except when pressing the next or previous buttons to switch months.
|
|
353
395
|
let endDragging = (e)=>{
|
|
354
|
-
var ref, ref1;
|
|
355
396
|
if (isVirtualClick.current) {
|
|
356
397
|
isVirtualClick.current = false;
|
|
357
398
|
return;
|
|
@@ -360,12 +401,16 @@ function $46a4342aab3d8076$export$87e0539f600c24e5(props, state, ref2) {
|
|
|
360
401
|
if (!state.anchorDate) return;
|
|
361
402
|
let target = e.target;
|
|
362
403
|
let body = document.getElementById(res.calendarProps.id);
|
|
363
|
-
if ((!body.contains(target) || !target.closest('[role="button"]'))
|
|
404
|
+
if (body && body.contains(document.activeElement) && (!body.contains(target) || !target.closest('button, [role="button"]'))) state.selectFocusedDate();
|
|
405
|
+
};
|
|
406
|
+
$amWdn$useEvent(windowRef, 'pointerup', endDragging);
|
|
407
|
+
$amWdn$useEvent(windowRef, 'pointercancel', endDragging);
|
|
408
|
+
// Also stop range selection on blur, e.g. tabbing away from the calendar.
|
|
409
|
+
res.calendarProps.onBlur = (e)=>{
|
|
410
|
+
if ((!e.relatedTarget || !ref.current.contains(e.relatedTarget)) && state.anchorDate) state.selectFocusedDate();
|
|
364
411
|
};
|
|
365
|
-
$amWdn$useEvent($amWdn$useRef(window), 'pointerup', endDragging);
|
|
366
|
-
$amWdn$useEvent($amWdn$useRef(window), 'pointercancel', endDragging);
|
|
367
412
|
// Prevent touch scrolling while dragging
|
|
368
|
-
$amWdn$useEvent(
|
|
413
|
+
$amWdn$useEvent(ref, 'touchmove', (e)=>{
|
|
369
414
|
if (state.isDragging) e.preventDefault();
|
|
370
415
|
}, {
|
|
371
416
|
passive: false,
|
|
@@ -375,9 +420,7 @@ function $46a4342aab3d8076$export$87e0539f600c24e5(props, state, ref2) {
|
|
|
375
420
|
}
|
|
376
421
|
|
|
377
422
|
|
|
378
|
-
var $e3031d1f8c9d64eb$exports = {};
|
|
379
423
|
|
|
380
|
-
$parcel$export($e3031d1f8c9d64eb$exports, "useCalendarGrid", () => $e3031d1f8c9d64eb$export$cb95147730a423f5);
|
|
381
424
|
|
|
382
425
|
|
|
383
426
|
|
|
@@ -394,21 +437,19 @@ function $e3031d1f8c9d64eb$export$cb95147730a423f5(props, state) {
|
|
|
394
437
|
break;
|
|
395
438
|
case 'PageUp':
|
|
396
439
|
e.preventDefault();
|
|
397
|
-
|
|
398
|
-
else state.focusPreviousPage();
|
|
440
|
+
state.focusPreviousSection(e.shiftKey);
|
|
399
441
|
break;
|
|
400
442
|
case 'PageDown':
|
|
401
443
|
e.preventDefault();
|
|
402
|
-
|
|
403
|
-
else state.focusNextPage();
|
|
444
|
+
state.focusNextSection(e.shiftKey);
|
|
404
445
|
break;
|
|
405
446
|
case 'End':
|
|
406
447
|
e.preventDefault();
|
|
407
|
-
state.
|
|
448
|
+
state.focusSectionEnd();
|
|
408
449
|
break;
|
|
409
450
|
case 'Home':
|
|
410
451
|
e.preventDefault();
|
|
411
|
-
state.
|
|
452
|
+
state.focusSectionStart();
|
|
412
453
|
break;
|
|
413
454
|
case 'ArrowLeft':
|
|
414
455
|
e.preventDefault();
|
|
@@ -437,39 +478,39 @@ function $e3031d1f8c9d64eb$export$cb95147730a423f5(props, state) {
|
|
|
437
478
|
break;
|
|
438
479
|
}
|
|
439
480
|
};
|
|
440
|
-
let
|
|
441
|
-
let
|
|
442
|
-
let visibleRangeDescription = $a074e1e2d0f0a665$export$31afe65d91ef6e8(startDate, endDate, state.timeZone);
|
|
481
|
+
let visibleRangeDescription = $a074e1e2d0f0a665$export$31afe65d91ef6e8(startDate, endDate, state.timeZone, true);
|
|
482
|
+
let { ariaLabel: ariaLabel , ariaLabelledBy: ariaLabelledBy } = $a074e1e2d0f0a665$export$653eddfc964b0f8a.get(state);
|
|
443
483
|
let labelProps = $amWdn$useLabels({
|
|
444
|
-
'aria-label':
|
|
445
|
-
|
|
484
|
+
'aria-label': [
|
|
485
|
+
ariaLabel,
|
|
486
|
+
visibleRangeDescription
|
|
487
|
+
].filter(Boolean).join(', '),
|
|
488
|
+
'aria-labelledby': ariaLabelledBy
|
|
446
489
|
});
|
|
447
490
|
let dayFormatter = $amWdn$useDateFormatter({
|
|
448
491
|
weekday: 'narrow',
|
|
449
492
|
timeZone: state.timeZone
|
|
450
493
|
});
|
|
451
|
-
let dayFormatterLong = $amWdn$useDateFormatter({
|
|
452
|
-
weekday: 'long',
|
|
453
|
-
timeZone: state.timeZone
|
|
454
|
-
});
|
|
455
494
|
let { locale: locale } = $amWdn$useLocale();
|
|
456
|
-
let
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
495
|
+
let weekDays = $amWdn$useMemo(()=>{
|
|
496
|
+
let weekStart = $amWdn$startOfWeek(state.visibleRange.start, locale);
|
|
497
|
+
return [
|
|
498
|
+
...new Array(7).keys()
|
|
499
|
+
].map((index)=>{
|
|
500
|
+
let date = weekStart.add({
|
|
501
|
+
days: index
|
|
502
|
+
});
|
|
503
|
+
let dateDay = date.toDate(state.timeZone);
|
|
504
|
+
return dayFormatter.format(dateDay);
|
|
462
505
|
});
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
};
|
|
470
|
-
});
|
|
506
|
+
}, [
|
|
507
|
+
state.visibleRange.start,
|
|
508
|
+
locale,
|
|
509
|
+
state.timeZone,
|
|
510
|
+
dayFormatter
|
|
511
|
+
]);
|
|
471
512
|
return {
|
|
472
|
-
gridProps: $amWdn$mergeProps(
|
|
513
|
+
gridProps: $amWdn$mergeProps(labelProps, {
|
|
473
514
|
role: 'grid',
|
|
474
515
|
'aria-readonly': state.isReadOnly || null,
|
|
475
516
|
'aria-disabled': state.isDisabled || null,
|
|
@@ -479,14 +520,17 @@ function $e3031d1f8c9d64eb$export$cb95147730a423f5(props, state) {
|
|
|
479
520
|
,
|
|
480
521
|
onBlur: ()=>state.setFocused(false)
|
|
481
522
|
}),
|
|
523
|
+
headerProps: {
|
|
524
|
+
// Column headers are hidden to screen readers to make navigating with a touch screen reader easier.
|
|
525
|
+
// The day names are already included in the label of each cell, so there's no need to announce them twice.
|
|
526
|
+
'aria-hidden': true
|
|
527
|
+
},
|
|
482
528
|
weekDays: weekDays
|
|
483
529
|
};
|
|
484
530
|
}
|
|
485
531
|
|
|
486
532
|
|
|
487
|
-
var $36a0ac60f04457c5$exports = {};
|
|
488
533
|
|
|
489
|
-
$parcel$export($36a0ac60f04457c5$exports, "useCalendarCell", () => $36a0ac60f04457c5$export$136073280381448e);
|
|
490
534
|
|
|
491
535
|
|
|
492
536
|
|
|
@@ -496,6 +540,7 @@ $parcel$export($36a0ac60f04457c5$exports, "useCalendarCell", () => $36a0ac60f044
|
|
|
496
540
|
|
|
497
541
|
function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
498
542
|
let { date: date , isDisabled: isDisabled } = props;
|
|
543
|
+
let { errorMessageId: errorMessageId , selectedDateDescription: selectedDateDescription } = $a074e1e2d0f0a665$export$653eddfc964b0f8a.get(state);
|
|
499
544
|
let formatMessage = $amWdn$useMessageFormatter((/*@__PURE__*/$parcel$interopDefault($0fbdc3429b133a50$exports)));
|
|
500
545
|
let dateFormatter = $amWdn$useDateFormatter({
|
|
501
546
|
weekday: 'long',
|
|
@@ -510,6 +555,8 @@ function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
|
510
555
|
isDisabled = isDisabled || state.isCellDisabled(date);
|
|
511
556
|
let isUnavailable = state.isCellUnavailable(date);
|
|
512
557
|
let isSelectable = !isDisabled && !isUnavailable;
|
|
558
|
+
let isInvalid = state.validationState === 'invalid' && ('highlightedRange' in state ? !state.anchorDate && state.highlightedRange && date.compare(state.highlightedRange.start) >= 0 && date.compare(state.highlightedRange.end) <= 0 : state.value && $amWdn$isSameDay(state.value, date));
|
|
559
|
+
if (isInvalid) isSelected = true;
|
|
513
560
|
// For performance, reuse the same date object as before if the new date prop is the same.
|
|
514
561
|
// This allows subsequent useMemo results to be reused.
|
|
515
562
|
let lastDate = $amWdn$useRef(null);
|
|
@@ -522,33 +569,42 @@ function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
|
522
569
|
]);
|
|
523
570
|
// aria-label should be localize Day of week, Month, Day and Year without Time.
|
|
524
571
|
let isDateToday = $amWdn$isToday(date, state.timeZone);
|
|
525
|
-
let
|
|
572
|
+
let label1 = $amWdn$useMemo(()=>{
|
|
573
|
+
let label = '';
|
|
574
|
+
// If this is a range calendar, add a description of the full selected range
|
|
575
|
+
// to the first and last selected date.
|
|
576
|
+
if ('highlightedRange' in state && state.value && !state.anchorDate && ($amWdn$isSameDay(date, state.value.start) || $amWdn$isSameDay(date, state.value.end))) label = selectedDateDescription + ', ';
|
|
577
|
+
label += dateFormatter.format(nativeDate);
|
|
526
578
|
if (isDateToday) // If date is today, set appropriate string depending on selected state:
|
|
527
|
-
|
|
528
|
-
date:
|
|
579
|
+
label = formatMessage(isSelected ? 'todayDateSelected' : 'todayDate', {
|
|
580
|
+
date: label
|
|
529
581
|
});
|
|
530
582
|
else if (isSelected) // If date is selected but not today:
|
|
531
|
-
|
|
532
|
-
date:
|
|
583
|
+
label = formatMessage('dateSelected', {
|
|
584
|
+
date: label
|
|
533
585
|
});
|
|
534
|
-
|
|
586
|
+
if (state.minValue && $amWdn$isSameDay(date, state.minValue)) label += ', ' + formatMessage('minimumDate');
|
|
587
|
+
else if (state.maxValue && $amWdn$isSameDay(date, state.maxValue)) label += ', ' + formatMessage('maximumDate');
|
|
588
|
+
return label;
|
|
535
589
|
}, [
|
|
536
590
|
dateFormatter,
|
|
537
591
|
nativeDate,
|
|
538
592
|
formatMessage,
|
|
539
593
|
isSelected,
|
|
540
|
-
isDateToday
|
|
594
|
+
isDateToday,
|
|
595
|
+
date,
|
|
596
|
+
state,
|
|
597
|
+
selectedDateDescription
|
|
541
598
|
]);
|
|
542
599
|
// When a cell is focused and this is a range calendar, add a prompt to help
|
|
543
600
|
// screenreader users know that they are in a range selection mode.
|
|
601
|
+
let rangeSelectionPrompt = '';
|
|
544
602
|
if ('anchorDate' in state && isFocused && !state.isReadOnly && isSelectable) {
|
|
545
|
-
let rangeSelectionPrompt = '';
|
|
546
603
|
// If selection has started add "click to finish selecting range"
|
|
547
604
|
if (state.anchorDate) rangeSelectionPrompt = formatMessage('finishRangeSelectionPrompt');
|
|
548
605
|
else rangeSelectionPrompt = formatMessage('startRangeSelectionPrompt');
|
|
549
|
-
// Append to aria-label
|
|
550
|
-
if (rangeSelectionPrompt) label = `${label} (${rangeSelectionPrompt})`;
|
|
551
606
|
}
|
|
607
|
+
let descriptionProps = $amWdn$useDescription(rangeSelectionPrompt);
|
|
552
608
|
let isAnchorPressed = $amWdn$useRef(false);
|
|
553
609
|
let isRangeBoundaryPressed = $amWdn$useRef(false);
|
|
554
610
|
let touchDragTimerRef = $amWdn$useRef(null);
|
|
@@ -566,7 +622,9 @@ function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
|
566
622
|
if ('highlightedRange' in state && !state.anchorDate && (e.pointerType === 'mouse' || e.pointerType === 'touch')) {
|
|
567
623
|
// Allow dragging the start or end date of a range to modify it
|
|
568
624
|
// rather than starting a new selection.
|
|
569
|
-
|
|
625
|
+
// Don't allow dragging when invalid, or weird jumping behavior may occur as date ranges
|
|
626
|
+
// are constrained to available dates. The user will need to select a new range in this case.
|
|
627
|
+
if (state.highlightedRange && !isInvalid) {
|
|
570
628
|
if ($amWdn$isSameDay(date, state.highlightedRange.start)) {
|
|
571
629
|
state.setAnchorDate(state.highlightedRange.end);
|
|
572
630
|
state.setFocusedDate(date);
|
|
@@ -650,7 +708,12 @@ function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
|
650
708
|
if (!isDisabled) tabIndex = $amWdn$isSameDay(date, state.focusedDate) ? 0 : -1;
|
|
651
709
|
// Focus the button in the DOM when the state updates.
|
|
652
710
|
$amWdn$useEffect(()=>{
|
|
653
|
-
if (isFocused && ref.current)
|
|
711
|
+
if (isFocused && ref.current) {
|
|
712
|
+
// Scroll into view if navigating with a keyboard, otherwise
|
|
713
|
+
// try not to shift the view under the user's mouse/finger.
|
|
714
|
+
if ($amWdn$getInteractionModality() === 'pointer') $amWdn$focusWithoutScrolling(ref.current);
|
|
715
|
+
else ref.current.focus();
|
|
716
|
+
}
|
|
654
717
|
}, [
|
|
655
718
|
isFocused,
|
|
656
719
|
ref
|
|
@@ -669,7 +732,8 @@ function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
|
669
732
|
cellProps: {
|
|
670
733
|
role: 'gridcell',
|
|
671
734
|
'aria-disabled': !isSelectable || null,
|
|
672
|
-
'aria-selected':
|
|
735
|
+
'aria-selected': isSelected || null,
|
|
736
|
+
'aria-invalid': isInvalid || null
|
|
673
737
|
},
|
|
674
738
|
buttonProps: $amWdn$mergeProps(pressProps, {
|
|
675
739
|
onFocus () {
|
|
@@ -678,7 +742,12 @@ function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
|
678
742
|
tabIndex: tabIndex,
|
|
679
743
|
role: 'button',
|
|
680
744
|
'aria-disabled': !isSelectable || null,
|
|
681
|
-
'aria-label':
|
|
745
|
+
'aria-label': label1,
|
|
746
|
+
'aria-invalid': isInvalid || null,
|
|
747
|
+
'aria-describedby': [
|
|
748
|
+
isInvalid ? errorMessageId : null,
|
|
749
|
+
descriptionProps['aria-describedby']
|
|
750
|
+
].filter(Boolean).join(' ') || undefined,
|
|
682
751
|
onPointerEnter (e) {
|
|
683
752
|
// Highlight the date on hover or drag over a date when selecting a range.
|
|
684
753
|
if ('highlightDate' in state && (e.pointerType !== 'touch' || state.isDragging) && isSelectable) state.highlightDate(date);
|
|
@@ -700,14 +769,12 @@ function $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {
|
|
|
700
769
|
isDisabled: isDisabled,
|
|
701
770
|
isUnavailable: isUnavailable,
|
|
702
771
|
isOutsideVisibleRange: date.compare(state.visibleRange.start) < 0 || date.compare(state.visibleRange.end) > 0,
|
|
772
|
+
isInvalid: isInvalid,
|
|
703
773
|
formattedDate: formattedDate
|
|
704
774
|
};
|
|
705
775
|
}
|
|
706
776
|
|
|
707
777
|
|
|
708
|
-
var $34109fd41c960533$exports = {};
|
|
709
|
-
|
|
710
|
-
|
|
711
778
|
|
|
712
779
|
|
|
713
780
|
export {$9942cad8a072a530$export$3ee915f8151bd4f1 as useCalendar, $46a4342aab3d8076$export$87e0539f600c24e5 as useRangeCalendar, $e3031d1f8c9d64eb$export$cb95147730a423f5 as useCalendarGrid, $36a0ac60f04457c5$export$136073280381448e as useCalendarCell};
|