@mui/x-date-pickers 7.18.0 → 7.20.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/AdapterDateFnsBase/AdapterDateFnsBase.js +1 -0
- package/AdapterMoment/AdapterMoment.js +1 -0
- package/CHANGELOG.md +213 -11
- package/DateCalendar/DateCalendar.js +1 -1
- package/DateCalendar/DateCalendar.types.d.ts +1 -1
- package/DateField/DateField.types.d.ts +2 -7
- package/DateField/index.d.ts +1 -1
- package/DateField/useDateField.d.ts +1 -1
- package/DatePicker/DatePicker.js +1 -1
- package/DatePicker/DatePicker.types.d.ts +8 -1
- package/DatePicker/index.d.ts +1 -1
- package/DateTimeField/DateTimeField.types.d.ts +2 -7
- package/DateTimeField/index.d.ts +1 -1
- package/DateTimeField/useDateTimeField.d.ts +1 -1
- package/DateTimePicker/DateTimePicker.js +1 -1
- package/DateTimePicker/DateTimePicker.types.d.ts +9 -1
- package/DateTimePicker/index.d.ts +1 -1
- package/DesktopDatePicker/DesktopDatePicker.js +1 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -1
- package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -1
- package/DigitalClock/DigitalClock.js +39 -0
- package/MobileDatePicker/MobileDatePicker.js +1 -1
- package/MobileDateTimePicker/MobileDateTimePicker.js +1 -1
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +38 -1
- package/PickersCalendarHeader/PickersCalendarHeader.js +1 -1
- package/PickersLayout/PickersLayout.d.ts +2 -2
- package/PickersLayout/PickersLayout.js +1 -1
- package/PickersSectionList/PickersSectionList.d.ts +4 -4
- package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +2 -2
- package/StaticDatePicker/StaticDatePicker.js +1 -1
- package/StaticDateTimePicker/StaticDateTimePicker.js +1 -1
- package/TimeClock/Clock.js +9 -1
- package/TimeClock/ClockNumber.js +1 -1
- package/TimeClock/ClockPointer.js +1 -1
- package/TimeField/TimeField.types.d.ts +2 -7
- package/TimeField/index.d.ts +1 -1
- package/TimeField/useTimeField.d.ts +1 -1
- package/TimePicker/TimePicker.types.d.ts +9 -1
- package/TimePicker/index.d.ts +1 -1
- package/YearCalendar/YearCalendar.js +1 -1
- package/hooks/index.d.ts +2 -0
- package/hooks/index.js +3 -1
- package/hooks/useParsedFormat.d.ts +15 -0
- package/hooks/useParsedFormat.js +43 -0
- package/hooks/usePickersContext.d.ts +4 -0
- package/hooks/usePickersContext.js +15 -0
- package/index.js +1 -1
- package/internals/components/PickerViewRoot/PickerViewRoot.d.ts +1 -1
- package/internals/components/PickersProvider.d.ts +34 -0
- package/internals/components/PickersProvider.js +26 -0
- package/internals/components/PickersToolbarButton.js +1 -1
- package/internals/components/PickersToolbarText.js +1 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.js +7 -4
- package/internals/hooks/useField/buildSectionsFromFormat.d.ts +1 -2
- package/internals/hooks/useField/buildSectionsFromFormat.js +4 -5
- package/internals/hooks/useField/useField.utils.d.ts +3 -3
- package/internals/hooks/useField/useField.utils.js +13 -13
- package/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
- package/internals/hooks/useField/useFieldState.js +3 -5
- package/internals/hooks/useMobilePicker/useMobilePicker.js +7 -4
- package/internals/hooks/usePicker/usePicker.js +3 -1
- package/internals/hooks/usePicker/usePickerValue.js +7 -2
- package/internals/hooks/usePicker/usePickerValue.types.d.ts +2 -0
- package/internals/index.d.ts +1 -0
- package/internals/index.js +1 -0
- package/internals/utils/utils.d.ts +7 -0
- package/internals/utils/utils.js +11 -0
- package/locales/bgBG.d.ts +80 -0
- package/locales/bgBG.js +73 -0
- package/locales/csCZ.js +16 -20
- package/locales/hrHR.d.ts +80 -0
- package/locales/hrHR.js +90 -0
- package/locales/index.d.ts +3 -0
- package/locales/index.js +3 -0
- package/locales/ptBR.js +3 -4
- package/locales/ptPT.d.ts +80 -0
- package/locales/ptPT.js +73 -0
- package/models/pickers.d.ts +1 -1
- package/modern/AdapterDateFnsBase/AdapterDateFnsBase.js +1 -0
- package/modern/AdapterMoment/AdapterMoment.js +1 -0
- package/modern/DateCalendar/DateCalendar.js +1 -1
- package/modern/DatePicker/DatePicker.js +1 -1
- package/modern/DateTimePicker/DateTimePicker.js +1 -1
- package/modern/DesktopDatePicker/DesktopDatePicker.js +1 -1
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -1
- package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -1
- package/modern/DigitalClock/DigitalClock.js +39 -0
- package/modern/MobileDatePicker/MobileDatePicker.js +1 -1
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +1 -1
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +38 -1
- package/modern/PickersCalendarHeader/PickersCalendarHeader.js +1 -1
- package/modern/PickersLayout/PickersLayout.js +1 -1
- package/modern/StaticDatePicker/StaticDatePicker.js +1 -1
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +1 -1
- package/modern/TimeClock/Clock.js +9 -1
- package/modern/TimeClock/ClockNumber.js +1 -1
- package/modern/TimeClock/ClockPointer.js +1 -1
- package/modern/YearCalendar/YearCalendar.js +1 -1
- package/modern/hooks/index.js +3 -1
- package/modern/hooks/useParsedFormat.js +43 -0
- package/modern/hooks/usePickersContext.js +15 -0
- package/modern/index.js +1 -1
- package/modern/internals/components/PickersProvider.js +26 -0
- package/modern/internals/components/PickersToolbarButton.js +1 -1
- package/modern/internals/components/PickersToolbarText.js +1 -1
- package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +7 -4
- package/modern/internals/hooks/useField/buildSectionsFromFormat.js +4 -5
- package/modern/internals/hooks/useField/useField.utils.js +13 -13
- package/modern/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
- package/modern/internals/hooks/useField/useFieldState.js +3 -5
- package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +7 -4
- package/modern/internals/hooks/usePicker/usePicker.js +3 -1
- package/modern/internals/hooks/usePicker/usePickerValue.js +7 -2
- package/modern/internals/index.js +1 -0
- package/modern/internals/utils/utils.js +11 -0
- package/modern/locales/bgBG.js +73 -0
- package/modern/locales/csCZ.js +16 -20
- package/modern/locales/hrHR.js +90 -0
- package/modern/locales/index.js +3 -0
- package/modern/locales/ptBR.js +3 -4
- package/modern/locales/ptPT.js +73 -0
- package/node/AdapterDateFnsBase/AdapterDateFnsBase.js +1 -0
- package/node/AdapterMoment/AdapterMoment.js +1 -0
- package/node/DateCalendar/DateCalendar.js +1 -1
- package/node/DatePicker/DatePicker.js +1 -1
- package/node/DateTimePicker/DateTimePicker.js +1 -1
- package/node/DesktopDatePicker/DesktopDatePicker.js +1 -1
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -1
- package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -1
- package/node/DigitalClock/DigitalClock.js +39 -0
- package/node/MobileDatePicker/MobileDatePicker.js +1 -1
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +1 -1
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +38 -1
- package/node/PickersCalendarHeader/PickersCalendarHeader.js +1 -1
- package/node/PickersLayout/PickersLayout.js +1 -1
- package/node/StaticDatePicker/StaticDatePicker.js +1 -1
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +1 -1
- package/node/TimeClock/Clock.js +9 -1
- package/node/TimeClock/ClockNumber.js +1 -1
- package/node/TimeClock/ClockPointer.js +1 -1
- package/node/YearCalendar/YearCalendar.js +1 -1
- package/node/hooks/index.js +15 -1
- package/node/hooks/useParsedFormat.js +50 -0
- package/node/hooks/usePickersContext.js +21 -0
- package/node/index.js +1 -1
- package/node/internals/components/PickersProvider.js +34 -0
- package/node/internals/components/PickersToolbarButton.js +1 -1
- package/node/internals/components/PickersToolbarText.js +1 -1
- package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +5 -3
- package/node/internals/hooks/useField/buildSectionsFromFormat.js +4 -5
- package/node/internals/hooks/useField/useField.utils.js +13 -13
- package/node/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
- package/node/internals/hooks/useField/useFieldState.js +3 -5
- package/node/internals/hooks/useMobilePicker/useMobilePicker.js +5 -3
- package/node/internals/hooks/usePicker/usePicker.js +3 -1
- package/node/internals/hooks/usePicker/usePickerValue.js +7 -1
- package/node/internals/index.js +7 -0
- package/node/internals/utils/utils.js +13 -1
- package/node/locales/bgBG.js +79 -0
- package/node/locales/csCZ.js +16 -20
- package/node/locales/hrHR.js +96 -0
- package/node/locales/index.js +33 -0
- package/node/locales/ptBR.js +3 -4
- package/node/locales/ptPT.js +79 -0
- package/package.json +4 -4
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { getPickersLocalization } from "./utils/getPickersLocalization.js";
|
|
2
|
+
// maps TimeView to its translation
|
|
3
|
+
const timeViews = {
|
|
4
|
+
hours: 'sati',
|
|
5
|
+
minutes: 'minute',
|
|
6
|
+
seconds: 'sekunde',
|
|
7
|
+
meridiem: 'meridiem'
|
|
8
|
+
};
|
|
9
|
+
const hrHRPickers = {
|
|
10
|
+
// Calendar navigation
|
|
11
|
+
previousMonth: 'Prethodni mjesec',
|
|
12
|
+
nextMonth: 'Naredni mjesec',
|
|
13
|
+
// View navigation
|
|
14
|
+
openPreviousView: 'Otvori prethodni prikaz',
|
|
15
|
+
openNextView: 'Otvori naredni prikaz',
|
|
16
|
+
calendarViewSwitchingButtonAriaLabel: view => view === 'year' ? 'Otvoren je godišnji prikaz, promijeni na kalendarski prikaz' : 'Otvoren je kalendarski prikaz, promijeni na godišnji prikaz',
|
|
17
|
+
// DateRange labels
|
|
18
|
+
start: 'Početak',
|
|
19
|
+
end: 'Kraj',
|
|
20
|
+
startDate: 'Početni datum',
|
|
21
|
+
startTime: 'Početno vrijeme',
|
|
22
|
+
endDate: 'Krajnji datum',
|
|
23
|
+
endTime: 'Krajnje vrijeme',
|
|
24
|
+
// Action bar
|
|
25
|
+
cancelButtonLabel: 'Otkaži',
|
|
26
|
+
clearButtonLabel: 'Izbriši',
|
|
27
|
+
okButtonLabel: 'U redu',
|
|
28
|
+
todayButtonLabel: 'Danas',
|
|
29
|
+
// Toolbar titles
|
|
30
|
+
datePickerToolbarTitle: 'Odaberi datum',
|
|
31
|
+
dateTimePickerToolbarTitle: 'Odaberi datum i vrijeme',
|
|
32
|
+
timePickerToolbarTitle: 'Odaberi vrijeme',
|
|
33
|
+
dateRangePickerToolbarTitle: 'Odaberi vremenski okvir',
|
|
34
|
+
// Clock labels
|
|
35
|
+
clockLabelText: (view, time, utils, formattedTime) => `Odaberi ${timeViews[view] ?? view}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Vrijeme nije odabrano' : `Odabrano vrijeme je ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
|
|
36
|
+
hoursClockNumberText: hours => {
|
|
37
|
+
let suffix = 'sati';
|
|
38
|
+
if (Number(hours) === 1) {
|
|
39
|
+
suffix = 'sat';
|
|
40
|
+
} else if (Number(hours) < 5) {
|
|
41
|
+
suffix = 'sata';
|
|
42
|
+
}
|
|
43
|
+
return `${hours} ${suffix}`;
|
|
44
|
+
},
|
|
45
|
+
minutesClockNumberText: minutes => `${minutes} ${Number(minutes) > 1 && Number(minutes) < 5 ? 'minute' : 'minuta'}`,
|
|
46
|
+
secondsClockNumberText: seconds => {
|
|
47
|
+
let suffix = 'sekundi';
|
|
48
|
+
if (Number(seconds) === 1) {
|
|
49
|
+
suffix = 'sekunda';
|
|
50
|
+
} else if (Number(seconds) < 5) {
|
|
51
|
+
suffix = 'sekunde';
|
|
52
|
+
}
|
|
53
|
+
return `${seconds} ${suffix}`;
|
|
54
|
+
},
|
|
55
|
+
// Digital clock labels
|
|
56
|
+
selectViewText: view => `Odaberi ${timeViews[view]}`,
|
|
57
|
+
// Calendar labels
|
|
58
|
+
calendarWeekNumberHeaderLabel: 'Broj tjedna',
|
|
59
|
+
calendarWeekNumberHeaderText: '#',
|
|
60
|
+
calendarWeekNumberAriaLabelText: weekNumber => `Tjedan ${weekNumber}`,
|
|
61
|
+
calendarWeekNumberText: weekNumber => `${weekNumber}`,
|
|
62
|
+
// Open picker labels
|
|
63
|
+
openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Odaberi datum, odabrani datum je ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Odaberi datum',
|
|
64
|
+
openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Odaberi vrijeme, odabrano vrijeme je ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Odaberi vrijeme',
|
|
65
|
+
fieldClearLabel: 'Izbriši',
|
|
66
|
+
// Table labels
|
|
67
|
+
timeTableLabel: 'Odaberi vrijeme',
|
|
68
|
+
dateTableLabel: 'Odaberi datum',
|
|
69
|
+
// Field section placeholders
|
|
70
|
+
fieldYearPlaceholder: params => 'G'.repeat(params.digitAmount),
|
|
71
|
+
fieldMonthPlaceholder: params => params.contentType === 'letter' ? 'MMMM' : 'MM',
|
|
72
|
+
fieldDayPlaceholder: () => 'DD',
|
|
73
|
+
fieldWeekDayPlaceholder: params => params.contentType === 'letter' ? 'EEEE' : 'EE',
|
|
74
|
+
fieldHoursPlaceholder: () => 'hh',
|
|
75
|
+
fieldMinutesPlaceholder: () => 'mm',
|
|
76
|
+
fieldSecondsPlaceholder: () => 'ss',
|
|
77
|
+
fieldMeridiemPlaceholder: () => 'aa',
|
|
78
|
+
// View names
|
|
79
|
+
year: 'Godina',
|
|
80
|
+
month: 'Mjesec',
|
|
81
|
+
day: 'Dan',
|
|
82
|
+
weekDay: 'Dan u tjednu',
|
|
83
|
+
hours: 'Sati',
|
|
84
|
+
minutes: 'Minute',
|
|
85
|
+
seconds: 'Sekunde',
|
|
86
|
+
meridiem: 'Meridiem',
|
|
87
|
+
// Common
|
|
88
|
+
empty: 'Isprazni'
|
|
89
|
+
};
|
|
90
|
+
export const hrHR = getPickersLocalization(hrHRPickers);
|
package/modern/locales/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from "./beBY.js";
|
|
2
|
+
export * from "./bgBG.js";
|
|
2
3
|
export * from "./caES.js";
|
|
3
4
|
export * from "./csCZ.js";
|
|
4
5
|
export * from "./daDK.js";
|
|
@@ -11,6 +12,7 @@ export * from "./faIR.js";
|
|
|
11
12
|
export * from "./fiFI.js";
|
|
12
13
|
export * from "./frFR.js";
|
|
13
14
|
export * from "./heIL.js";
|
|
15
|
+
export * from "./hrHR.js";
|
|
14
16
|
export * from "./huHU.js";
|
|
15
17
|
export * from "./isIS.js";
|
|
16
18
|
export * from "./itIT.js";
|
|
@@ -23,6 +25,7 @@ export * from "./nlNL.js";
|
|
|
23
25
|
export * from "./nnNO.js";
|
|
24
26
|
export * from "./plPL.js";
|
|
25
27
|
export * from "./ptBR.js";
|
|
28
|
+
export * from "./ptPT.js";
|
|
26
29
|
export * from "./roRO.js";
|
|
27
30
|
export * from "./ruRU.js";
|
|
28
31
|
export * from "./skSK.js";
|
package/modern/locales/ptBR.js
CHANGED
|
@@ -10,8 +10,8 @@ const ptBRPickers = {
|
|
|
10
10
|
previousMonth: 'Mês anterior',
|
|
11
11
|
nextMonth: 'Próximo mês',
|
|
12
12
|
// View navigation
|
|
13
|
-
openPreviousView: 'Abrir
|
|
14
|
-
openNextView: 'Abrir seleção
|
|
13
|
+
openPreviousView: 'Abrir seleção anterior',
|
|
14
|
+
openNextView: 'Abrir próxima seleção',
|
|
15
15
|
calendarViewSwitchingButtonAriaLabel: view => view === 'year' ? 'Seleção de ano está aberta, alternando para seleção de calendário' : 'Seleção de calendários está aberta, alternando para seleção de ano',
|
|
16
16
|
// DateRange labels
|
|
17
17
|
start: 'Início',
|
|
@@ -45,8 +45,7 @@ const ptBRPickers = {
|
|
|
45
45
|
// Open picker labels
|
|
46
46
|
openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Escolha uma data, data selecionada ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Escolha uma data',
|
|
47
47
|
openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Escolha uma hora, hora selecionada ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Escolha uma hora',
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
fieldClearLabel: 'Limpar valor',
|
|
50
49
|
// Table labels
|
|
51
50
|
timeTableLabel: 'escolha uma hora',
|
|
52
51
|
dateTableLabel: 'escolha uma data',
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { getPickersLocalization } from "./utils/getPickersLocalization.js";
|
|
2
|
+
const timeViews = {
|
|
3
|
+
hours: 'horas',
|
|
4
|
+
minutes: 'minutos',
|
|
5
|
+
seconds: 'segundos',
|
|
6
|
+
meridiem: 'meridiano'
|
|
7
|
+
};
|
|
8
|
+
const ptPTPickers = {
|
|
9
|
+
// Calendar navigation
|
|
10
|
+
previousMonth: 'Mês anterior',
|
|
11
|
+
nextMonth: 'Próximo mês',
|
|
12
|
+
// View navigation
|
|
13
|
+
openPreviousView: 'Abrir seleção anterior',
|
|
14
|
+
openNextView: 'Abrir próxima seleção',
|
|
15
|
+
calendarViewSwitchingButtonAriaLabel: view => view === 'year' ? 'A seleção do ano está aberta, altere para a seleção do calendário' : 'A seleção do calendários está aberta, altere para a seleção do ano',
|
|
16
|
+
// DateRange labels
|
|
17
|
+
start: 'Início',
|
|
18
|
+
end: 'Fim',
|
|
19
|
+
startDate: 'Data de início',
|
|
20
|
+
startTime: 'Hora de início',
|
|
21
|
+
endDate: 'Data de fim',
|
|
22
|
+
endTime: 'Hora de fim',
|
|
23
|
+
// Action bar
|
|
24
|
+
cancelButtonLabel: 'Cancelar',
|
|
25
|
+
clearButtonLabel: 'Limpar',
|
|
26
|
+
okButtonLabel: 'OK',
|
|
27
|
+
todayButtonLabel: 'Hoje',
|
|
28
|
+
// Toolbar titles
|
|
29
|
+
datePickerToolbarTitle: 'Selecione a data',
|
|
30
|
+
dateTimePickerToolbarTitle: 'Selecione a data e a hora',
|
|
31
|
+
timePickerToolbarTitle: 'Selecione a hora',
|
|
32
|
+
dateRangePickerToolbarTitle: 'Selecione o intervalo de datas',
|
|
33
|
+
// Clock labels
|
|
34
|
+
clockLabelText: (view, time, utils, formattedTime) => `Selecione ${timeViews[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Hora não selecionada' : `Selecionado a hora ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
|
|
35
|
+
hoursClockNumberText: hours => `${hours} horas`,
|
|
36
|
+
minutesClockNumberText: minutes => `${minutes} minutos`,
|
|
37
|
+
secondsClockNumberText: seconds => `${seconds} segundos`,
|
|
38
|
+
// Digital clock labels
|
|
39
|
+
selectViewText: view => `Selecione ${timeViews[view]}`,
|
|
40
|
+
// Calendar labels
|
|
41
|
+
calendarWeekNumberHeaderLabel: 'Número da semana',
|
|
42
|
+
calendarWeekNumberHeaderText: 'N.º',
|
|
43
|
+
calendarWeekNumberAriaLabelText: weekNumber => `Semana ${weekNumber}`,
|
|
44
|
+
calendarWeekNumberText: weekNumber => `${weekNumber}`,
|
|
45
|
+
// Open picker labels
|
|
46
|
+
openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Escolha uma data, a data selecionada é ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Escolha uma data',
|
|
47
|
+
openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Escolha uma hora, a hora selecionada é ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Escolha uma hora',
|
|
48
|
+
fieldClearLabel: 'Limpar valor',
|
|
49
|
+
// Table labels
|
|
50
|
+
timeTableLabel: 'escolha uma hora',
|
|
51
|
+
dateTableLabel: 'escolha uma data',
|
|
52
|
+
// Field section placeholders
|
|
53
|
+
fieldYearPlaceholder: params => 'A'.repeat(params.digitAmount),
|
|
54
|
+
fieldMonthPlaceholder: params => params.contentType === 'letter' ? 'MMMM' : 'MM',
|
|
55
|
+
fieldDayPlaceholder: () => 'DD',
|
|
56
|
+
fieldWeekDayPlaceholder: params => params.contentType === 'letter' ? 'SSSS' : 'SS',
|
|
57
|
+
fieldHoursPlaceholder: () => 'hh',
|
|
58
|
+
fieldMinutesPlaceholder: () => 'mm',
|
|
59
|
+
fieldSecondsPlaceholder: () => 'ss',
|
|
60
|
+
fieldMeridiemPlaceholder: () => 'aa',
|
|
61
|
+
// View names
|
|
62
|
+
year: 'Ano',
|
|
63
|
+
month: 'Mês',
|
|
64
|
+
day: 'Dia',
|
|
65
|
+
weekDay: 'Dia da Semana',
|
|
66
|
+
hours: 'Horas',
|
|
67
|
+
minutes: 'Minutos',
|
|
68
|
+
seconds: 'Segundos',
|
|
69
|
+
meridiem: 'Meridiano',
|
|
70
|
+
// Common
|
|
71
|
+
empty: 'Vazio'
|
|
72
|
+
};
|
|
73
|
+
export const ptPT = getPickersLocalization(ptPTPickers);
|
|
@@ -494,7 +494,7 @@ process.env.NODE_ENV !== "production" ? DateCalendar.propTypes = {
|
|
|
494
494
|
/**
|
|
495
495
|
* Component displaying when passed `loading` true.
|
|
496
496
|
* @returns {React.ReactNode} The node to render when loading.
|
|
497
|
-
* @default () => <span
|
|
497
|
+
* @default () => <span>...</span>
|
|
498
498
|
*/
|
|
499
499
|
renderLoading: _propTypes.default.func,
|
|
500
500
|
/**
|
|
@@ -263,7 +263,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
263
263
|
/**
|
|
264
264
|
* Component displaying when passed `loading` true.
|
|
265
265
|
* @returns {React.ReactNode} The node to render when loading.
|
|
266
|
-
* @default () => <span
|
|
266
|
+
* @default () => <span>...</span>
|
|
267
267
|
*/
|
|
268
268
|
renderLoading: _propTypes.default.func,
|
|
269
269
|
/**
|
|
@@ -301,7 +301,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
301
301
|
/**
|
|
302
302
|
* Component displaying when passed `loading` true.
|
|
303
303
|
* @returns {React.ReactNode} The node to render when loading.
|
|
304
|
-
* @default () => <span
|
|
304
|
+
* @default () => <span>...</span>
|
|
305
305
|
*/
|
|
306
306
|
renderLoading: _propTypes.default.func,
|
|
307
307
|
/**
|
|
@@ -284,7 +284,7 @@ DesktopDatePicker.propTypes = {
|
|
|
284
284
|
/**
|
|
285
285
|
* Component displaying when passed `loading` true.
|
|
286
286
|
* @returns {React.ReactNode} The node to render when loading.
|
|
287
|
-
* @default () => <span
|
|
287
|
+
* @default () => <span>...</span>
|
|
288
288
|
*/
|
|
289
289
|
renderLoading: _propTypes.default.func,
|
|
290
290
|
/**
|
|
@@ -409,7 +409,7 @@ DesktopDateTimePicker.propTypes = {
|
|
|
409
409
|
/**
|
|
410
410
|
* Component displaying when passed `loading` true.
|
|
411
411
|
* @returns {React.ReactNode} The node to render when loading.
|
|
412
|
-
* @default () => <span
|
|
412
|
+
* @default () => <span>...</span>
|
|
413
413
|
*/
|
|
414
414
|
renderLoading: _propTypes.default.func,
|
|
415
415
|
/**
|
|
@@ -38,7 +38,7 @@ const DesktopDateTimePickerLayout = exports.DesktopDateTimePickerLayout = /*#__P
|
|
|
38
38
|
});
|
|
39
39
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_PickersLayout.PickersLayoutRoot, {
|
|
40
40
|
ref: ref,
|
|
41
|
-
className: (0, _clsx.default)(
|
|
41
|
+
className: (0, _clsx.default)(_PickersLayout.pickersLayoutClasses.root, classes?.root, className),
|
|
42
42
|
sx: [{
|
|
43
43
|
[`& .${_PickersLayout.pickersLayoutClasses.tabs}`]: {
|
|
44
44
|
gridRow: 4,
|
|
@@ -29,6 +29,7 @@ var _dimensions = require("../internals/constants/dimensions");
|
|
|
29
29
|
var _useValueWithTimezone = require("../internals/hooks/useValueWithTimezone");
|
|
30
30
|
var _valueManagers = require("../internals/utils/valueManagers");
|
|
31
31
|
var _useClockReferenceDate = require("../internals/hooks/useClockReferenceDate");
|
|
32
|
+
var _utils = require("../internals/utils/utils");
|
|
32
33
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
33
34
|
const _excluded = ["ampm", "timeStep", "autoFocus", "slots", "slotProps", "value", "defaultValue", "referenceDate", "disableIgnoringDatePartForTimeValidation", "maxTime", "minTime", "disableFuture", "disablePast", "minutesStep", "shouldDisableTime", "onChange", "view", "openTo", "onViewChange", "focusedView", "onFocusedViewChange", "className", "disabled", "readOnly", "views", "skipDisabled", "timezone"];
|
|
34
35
|
const useUtilityClasses = ownerState => {
|
|
@@ -111,6 +112,7 @@ const DigitalClock = exports.DigitalClock = /*#__PURE__*/React.forwardRef(functi
|
|
|
111
112
|
const utils = (0, _useUtils.useUtils)();
|
|
112
113
|
const containerRef = React.useRef(null);
|
|
113
114
|
const handleRef = (0, _useForkRef.default)(ref, containerRef);
|
|
115
|
+
const listRef = React.useRef(null);
|
|
114
116
|
const props = (0, _styles.useThemeProps)({
|
|
115
117
|
props: inProps,
|
|
116
118
|
name: 'MuiDigitalClock'
|
|
@@ -243,15 +245,52 @@ const DigitalClock = exports.DigitalClock = /*#__PURE__*/React.forwardRef(functi
|
|
|
243
245
|
}, (_, index) => utils.addMinutes(startOfDay, timeStep * (index + 1)))];
|
|
244
246
|
}, [valueOrReferenceDate, timeStep, utils]);
|
|
245
247
|
const focusedOptionIndex = timeOptions.findIndex(option => utils.isEqual(option, valueOrReferenceDate));
|
|
248
|
+
const handleKeyDown = event => {
|
|
249
|
+
switch (event.key) {
|
|
250
|
+
case 'PageUp':
|
|
251
|
+
{
|
|
252
|
+
if (!listRef.current) {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
const newIndex = (0, _utils.getFocusedListItemIndex)(listRef.current) - 5;
|
|
256
|
+
const children = listRef.current?.children;
|
|
257
|
+
const newFocusedIndex = Math.max(0, newIndex);
|
|
258
|
+
const childToFocus = children[newFocusedIndex];
|
|
259
|
+
if (childToFocus) {
|
|
260
|
+
childToFocus.focus();
|
|
261
|
+
}
|
|
262
|
+
event.preventDefault();
|
|
263
|
+
break;
|
|
264
|
+
}
|
|
265
|
+
case 'PageDown':
|
|
266
|
+
{
|
|
267
|
+
if (!listRef.current) {
|
|
268
|
+
return;
|
|
269
|
+
}
|
|
270
|
+
const newIndex = (0, _utils.getFocusedListItemIndex)(listRef.current) + 5;
|
|
271
|
+
const children = listRef.current?.children;
|
|
272
|
+
const newFocusedIndex = Math.min(children.length - 1, newIndex);
|
|
273
|
+
const childToFocus = children[newFocusedIndex];
|
|
274
|
+
if (childToFocus) {
|
|
275
|
+
childToFocus.focus();
|
|
276
|
+
}
|
|
277
|
+
event.preventDefault();
|
|
278
|
+
break;
|
|
279
|
+
}
|
|
280
|
+
default:
|
|
281
|
+
}
|
|
282
|
+
};
|
|
246
283
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(DigitalClockRoot, (0, _extends2.default)({
|
|
247
284
|
ref: handleRef,
|
|
248
285
|
className: (0, _clsx.default)(classes.root, className),
|
|
249
286
|
ownerState: ownerState
|
|
250
287
|
}, other, {
|
|
251
288
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DigitalClockList, {
|
|
289
|
+
ref: listRef,
|
|
252
290
|
role: "listbox",
|
|
253
291
|
"aria-label": translations.timePickerToolbarTitle,
|
|
254
292
|
className: classes.list,
|
|
293
|
+
onKeyDown: handleKeyDown,
|
|
255
294
|
children: timeOptions.map((option, index) => {
|
|
256
295
|
if (skipDisabled && isTimeDisabled(option)) {
|
|
257
296
|
return null;
|
|
@@ -281,7 +281,7 @@ MobileDatePicker.propTypes = {
|
|
|
281
281
|
/**
|
|
282
282
|
* Component displaying when passed `loading` true.
|
|
283
283
|
* @returns {React.ReactNode} The node to render when loading.
|
|
284
|
-
* @default () => <span
|
|
284
|
+
* @default () => <span>...</span>
|
|
285
285
|
*/
|
|
286
286
|
renderLoading: _propTypes.default.func,
|
|
287
287
|
/**
|
|
@@ -329,7 +329,7 @@ MobileDateTimePicker.propTypes = {
|
|
|
329
329
|
/**
|
|
330
330
|
* Component displaying when passed `loading` true.
|
|
331
331
|
* @returns {React.ReactNode} The node to render when loading.
|
|
332
|
-
* @default () => <span
|
|
332
|
+
* @default () => <span>...</span>
|
|
333
333
|
*/
|
|
334
334
|
renderLoading: _propTypes.default.func,
|
|
335
335
|
/**
|
|
@@ -17,6 +17,7 @@ var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
|
|
|
17
17
|
var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
|
|
18
18
|
var _multiSectionDigitalClockSectionClasses = require("./multiSectionDigitalClockSectionClasses");
|
|
19
19
|
var _dimensions = require("../internals/constants/dimensions");
|
|
20
|
+
var _utils = require("../internals/utils/utils");
|
|
20
21
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
22
|
const _excluded = ["autoFocus", "onChange", "className", "disabled", "readOnly", "items", "active", "slots", "slotProps", "skipDisabled"];
|
|
22
23
|
const useUtilityClasses = ownerState => {
|
|
@@ -146,12 +147,48 @@ const MultiSectionDigitalClockSection = exports.MultiSectionDigitalClockSection
|
|
|
146
147
|
containerRef.current.scrollTop = offsetTop - 4;
|
|
147
148
|
});
|
|
148
149
|
const focusedOptionIndex = items.findIndex(item => item.isFocused(item.value));
|
|
150
|
+
const handleKeyDown = event => {
|
|
151
|
+
switch (event.key) {
|
|
152
|
+
case 'PageUp':
|
|
153
|
+
{
|
|
154
|
+
if (!containerRef.current) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const newIndex = (0, _utils.getFocusedListItemIndex)(containerRef.current) - 5;
|
|
158
|
+
const children = containerRef.current?.children;
|
|
159
|
+
const newFocusedIndex = Math.max(0, newIndex);
|
|
160
|
+
const childToFocus = children[newFocusedIndex];
|
|
161
|
+
if (childToFocus) {
|
|
162
|
+
childToFocus.focus();
|
|
163
|
+
}
|
|
164
|
+
event.preventDefault();
|
|
165
|
+
break;
|
|
166
|
+
}
|
|
167
|
+
case 'PageDown':
|
|
168
|
+
{
|
|
169
|
+
if (!containerRef.current) {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
const newIndex = (0, _utils.getFocusedListItemIndex)(containerRef.current) + 5;
|
|
173
|
+
const children = containerRef.current?.children;
|
|
174
|
+
const newFocusedIndex = Math.min(children.length - 1, newIndex);
|
|
175
|
+
const childToFocus = children[newFocusedIndex];
|
|
176
|
+
if (childToFocus) {
|
|
177
|
+
childToFocus.focus();
|
|
178
|
+
}
|
|
179
|
+
event.preventDefault();
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
182
|
+
default:
|
|
183
|
+
}
|
|
184
|
+
};
|
|
149
185
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(MultiSectionDigitalClockSectionRoot, (0, _extends2.default)({
|
|
150
186
|
ref: handleRef,
|
|
151
187
|
className: (0, _clsx.default)(classes.root, className),
|
|
152
188
|
ownerState: ownerState,
|
|
153
189
|
autoFocusItem: autoFocus && active,
|
|
154
|
-
role: "listbox"
|
|
190
|
+
role: "listbox",
|
|
191
|
+
onKeyDown: handleKeyDown
|
|
155
192
|
}, other, {
|
|
156
193
|
children: items.map((option, index) => {
|
|
157
194
|
const isItemDisabled = option.isDisabled?.(option.value);
|
|
@@ -197,7 +197,7 @@ const PickersCalendarHeader = exports.PickersCalendarHeader = /*#__PURE__*/React
|
|
|
197
197
|
const label = utils.formatByString(month, format);
|
|
198
198
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(PickersCalendarHeaderRoot, (0, _extends2.default)({}, other, {
|
|
199
199
|
ownerState: ownerState,
|
|
200
|
-
className: (0, _clsx.default)(
|
|
200
|
+
className: (0, _clsx.default)(classes.root, className),
|
|
201
201
|
ref: ref,
|
|
202
202
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(PickersCalendarHeaderLabelContainer, {
|
|
203
203
|
role: "presentation",
|
|
@@ -129,7 +129,7 @@ const PickersLayout = exports.PickersLayout = /*#__PURE__*/React.forwardRef(func
|
|
|
129
129
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(PickersLayoutRoot, {
|
|
130
130
|
ref: ref,
|
|
131
131
|
sx: sx,
|
|
132
|
-
className: (0, _clsx.default)(
|
|
132
|
+
className: (0, _clsx.default)(classes.root, className),
|
|
133
133
|
ownerState: props,
|
|
134
134
|
children: [isLandscape ? shortcuts : toolbar, isLandscape ? toolbar : shortcuts, /*#__PURE__*/(0, _jsxRuntime.jsx)(PickersLayoutContentWrapper, {
|
|
135
135
|
className: classes.contentWrapper,
|
|
@@ -215,7 +215,7 @@ StaticDatePicker.propTypes = {
|
|
|
215
215
|
/**
|
|
216
216
|
* Component displaying when passed `loading` true.
|
|
217
217
|
* @returns {React.ReactNode} The node to render when loading.
|
|
218
|
-
* @default () => <span
|
|
218
|
+
* @default () => <span>...</span>
|
|
219
219
|
*/
|
|
220
220
|
renderLoading: _propTypes.default.func,
|
|
221
221
|
/**
|
|
@@ -263,7 +263,7 @@ StaticDateTimePicker.propTypes = {
|
|
|
263
263
|
/**
|
|
264
264
|
* Component displaying when passed `loading` true.
|
|
265
265
|
* @returns {React.ReactNode} The node to render when loading.
|
|
266
|
-
* @default () => <span
|
|
266
|
+
* @default () => <span>...</span>
|
|
267
267
|
*/
|
|
268
268
|
renderLoading: _propTypes.default.func,
|
|
269
269
|
/**
|
package/node/TimeClock/Clock.js
CHANGED
|
@@ -282,6 +282,14 @@ function Clock(inProps) {
|
|
|
282
282
|
handleValueChange(viewValue - keyboardControlStep, 'partial');
|
|
283
283
|
event.preventDefault();
|
|
284
284
|
break;
|
|
285
|
+
case 'PageUp':
|
|
286
|
+
handleValueChange(viewValue + 5, 'partial');
|
|
287
|
+
event.preventDefault();
|
|
288
|
+
break;
|
|
289
|
+
case 'PageDown':
|
|
290
|
+
handleValueChange(viewValue - 5, 'partial');
|
|
291
|
+
event.preventDefault();
|
|
292
|
+
break;
|
|
285
293
|
case 'Enter':
|
|
286
294
|
case ' ':
|
|
287
295
|
handleValueChange(viewValue, 'finish');
|
|
@@ -292,7 +300,7 @@ function Clock(inProps) {
|
|
|
292
300
|
}
|
|
293
301
|
};
|
|
294
302
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(ClockRoot, {
|
|
295
|
-
className: (0, _clsx.default)(
|
|
303
|
+
className: (0, _clsx.default)(classes.root, className),
|
|
296
304
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(ClockClock, {
|
|
297
305
|
className: classes.clock,
|
|
298
306
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(ClockSquareMask, {
|
|
@@ -92,7 +92,7 @@ function ClockNumber(inProps) {
|
|
|
92
92
|
const x = Math.round(Math.cos(angle) * length);
|
|
93
93
|
const y = Math.round(Math.sin(angle) * length);
|
|
94
94
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(ClockNumberRoot, (0, _extends2.default)({
|
|
95
|
-
className: (0, _clsx.default)(
|
|
95
|
+
className: (0, _clsx.default)(classes.root, className),
|
|
96
96
|
"aria-disabled": disabled ? true : undefined,
|
|
97
97
|
"aria-selected": selected ? true : undefined,
|
|
98
98
|
role: "option",
|
|
@@ -110,7 +110,7 @@ function ClockPointer(inProps) {
|
|
|
110
110
|
};
|
|
111
111
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(ClockPointerRoot, (0, _extends2.default)({
|
|
112
112
|
style: getAngleStyle(),
|
|
113
|
-
className: (0, _clsx.default)(
|
|
113
|
+
className: (0, _clsx.default)(classes.root, className),
|
|
114
114
|
ownerState: ownerState
|
|
115
115
|
}, other, {
|
|
116
116
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ClockPointerThumb, {
|
|
@@ -186,7 +186,7 @@ const YearCalendar = exports.YearCalendar = /*#__PURE__*/React.forwardRef(functi
|
|
|
186
186
|
setFocusedYear(prevFocusedYear => selectedYear !== null && prevFocusedYear !== selectedYear ? selectedYear : prevFocusedYear);
|
|
187
187
|
}, [selectedYear]);
|
|
188
188
|
const verticalDirection = yearsOrder !== 'desc' ? yearsPerRow * 1 : yearsPerRow * -1;
|
|
189
|
-
const horizontalDirection = isRtl || yearsOrder === 'desc' ? -1 : 1;
|
|
189
|
+
const horizontalDirection = isRtl && yearsOrder === 'asc' || !isRtl && yearsOrder === 'desc' ? -1 : 1;
|
|
190
190
|
const handleKeyDown = (0, _utils.unstable_useEventCallback)((event, year) => {
|
|
191
191
|
switch (event.key) {
|
|
192
192
|
case 'ArrowUp':
|
package/node/hooks/index.js
CHANGED
|
@@ -9,6 +9,18 @@ Object.defineProperty(exports, "useClearableField", {
|
|
|
9
9
|
return _useClearableField.useClearableField;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "useParsedFormat", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _useParsedFormat.useParsedFormat;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "usePickersContext", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _usePickersContext.usePickersContext;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
12
24
|
Object.defineProperty(exports, "usePickersTranslations", {
|
|
13
25
|
enumerable: true,
|
|
14
26
|
get: function () {
|
|
@@ -23,4 +35,6 @@ Object.defineProperty(exports, "useSplitFieldProps", {
|
|
|
23
35
|
});
|
|
24
36
|
var _useClearableField = require("./useClearableField");
|
|
25
37
|
var _usePickersTranslations = require("./usePickersTranslations");
|
|
26
|
-
var _useSplitFieldProps = require("./useSplitFieldProps");
|
|
38
|
+
var _useSplitFieldProps = require("./useSplitFieldProps");
|
|
39
|
+
var _useParsedFormat = require("./useParsedFormat");
|
|
40
|
+
var _usePickersContext = require("./usePickersContext");
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.useParsedFormat = void 0;
|
|
9
|
+
var React = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _RtlProvider = require("@mui/system/RtlProvider");
|
|
11
|
+
var _useUtils = require("../internals/hooks/useUtils");
|
|
12
|
+
var _buildSectionsFromFormat = require("../internals/hooks/useField/buildSectionsFromFormat");
|
|
13
|
+
var _useField = require("../internals/hooks/useField/useField.utils");
|
|
14
|
+
var _usePickersTranslations = require("./usePickersTranslations");
|
|
15
|
+
/**
|
|
16
|
+
* Returns the parsed format to be rendered in the field when there is no value or in other parts of the Picker.
|
|
17
|
+
* This format is localized (e.g: `AAAA` for the year with the French locale) and cannot be parsed by your date library.
|
|
18
|
+
* @param {object} The parameters needed to build the placeholder.
|
|
19
|
+
* @param {string} params.format Format of the date to use.
|
|
20
|
+
* @param {'dense' | 'spacious'} params.formatDensity Density of the format (setting `formatDensity` to `"spacious"` will add a space before and after each `/`, `-` and `.` character).
|
|
21
|
+
* @param {boolean} params.shouldRespectLeadingZeros If `true`, the format will respect the leading zeroes, if `false`, the format will always add leading zeroes.
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
const useParsedFormat = parameters => {
|
|
25
|
+
const {
|
|
26
|
+
format,
|
|
27
|
+
formatDensity = 'dense',
|
|
28
|
+
shouldRespectLeadingZeros = false
|
|
29
|
+
} = parameters;
|
|
30
|
+
const utils = (0, _useUtils.useUtils)();
|
|
31
|
+
const isRtl = (0, _RtlProvider.useRtl)();
|
|
32
|
+
const translations = (0, _usePickersTranslations.usePickersTranslations)();
|
|
33
|
+
const localizedDigits = React.useMemo(() => (0, _useField.getLocalizedDigits)(utils), [utils]);
|
|
34
|
+
return React.useMemo(() => {
|
|
35
|
+
const sections = (0, _buildSectionsFromFormat.buildSectionsFromFormat)({
|
|
36
|
+
utils,
|
|
37
|
+
format,
|
|
38
|
+
formatDensity,
|
|
39
|
+
isRtl,
|
|
40
|
+
shouldRespectLeadingZeros,
|
|
41
|
+
localeText: translations,
|
|
42
|
+
localizedDigits,
|
|
43
|
+
date: null,
|
|
44
|
+
// TODO v9: Make sure we still don't reverse in `buildSectionsFromFormat` when using `useParsedFormat`.
|
|
45
|
+
enableAccessibleFieldDOMStructure: false
|
|
46
|
+
});
|
|
47
|
+
return sections.map(section => `${section.startSeparator}${section.placeholder}${section.endSeparator}`).join('');
|
|
48
|
+
}, [utils, isRtl, translations, localizedDigits, format, formatDensity, shouldRespectLeadingZeros]);
|
|
49
|
+
};
|
|
50
|
+
exports.useParsedFormat = useParsedFormat;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.usePickersContext = void 0;
|
|
9
|
+
var React = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _PickersProvider = require("../internals/components/PickersProvider");
|
|
11
|
+
/**
|
|
12
|
+
* Returns the context passed by the picker that wraps the current component.
|
|
13
|
+
*/
|
|
14
|
+
const usePickersContext = () => {
|
|
15
|
+
const value = React.useContext(_PickersProvider.PickersContext);
|
|
16
|
+
if (value == null) {
|
|
17
|
+
throw new Error(['MUI X: The `usePickersContext` can only be called in fields that are used as a slot of a picker component'].join('\n'));
|
|
18
|
+
}
|
|
19
|
+
return value;
|
|
20
|
+
};
|
|
21
|
+
exports.usePickersContext = usePickersContext;
|
package/node/index.js
CHANGED