@mui/x-date-pickers 7.0.0-alpha.2 → 7.0.0-alpha.4

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 (242) hide show
  1. package/AdapterDateFns/AdapterDateFns.js +10 -14
  2. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +12 -16
  3. package/AdapterDayjs/AdapterDayjs.js +11 -8
  4. package/AdapterLuxon/AdapterLuxon.d.ts +28 -28
  5. package/AdapterLuxon/AdapterLuxon.js +29 -17
  6. package/AdapterMoment/AdapterMoment.d.ts +1 -1
  7. package/AdapterMoment/AdapterMoment.js +14 -14
  8. package/AdapterMomentHijri/AdapterMomentHijri.d.ts +0 -1
  9. package/AdapterMomentHijri/AdapterMomentHijri.js +1 -24
  10. package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +0 -2
  11. package/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -26
  12. package/CHANGELOG.md +364 -0
  13. package/DateCalendar/DateCalendar.js +2 -2
  14. package/DateCalendar/DayCalendar.d.ts +3 -3
  15. package/DateCalendar/useCalendarState.js +0 -1
  16. package/DatePicker/DatePicker.js +2 -2
  17. package/DateTimePicker/DateTimePicker.js +2 -2
  18. package/DesktopDatePicker/DesktopDatePicker.js +2 -2
  19. package/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -2
  20. package/MobileDatePicker/MobileDatePicker.js +2 -2
  21. package/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
  22. package/MonthCalendar/MonthCalendar.js +0 -1
  23. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +2 -0
  24. package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.d.ts +3 -2
  25. package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +2 -1
  26. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  27. package/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  28. package/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  29. package/PickersShortcuts/PickersShortcuts.d.ts +1 -1
  30. package/PickersShortcuts/PickersShortcuts.js +1 -1
  31. package/README.md +0 -1
  32. package/StaticDatePicker/StaticDatePicker.js +2 -2
  33. package/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  34. package/TimeClock/Clock.js +0 -1
  35. package/TimeClock/ClockPointer.js +0 -1
  36. package/YearCalendar/YearCalendar.js +0 -1
  37. package/index.js +1 -1
  38. package/internals/components/PickersTextField/Outline.d.ts +8 -0
  39. package/internals/components/PickersTextField/Outline.js +97 -0
  40. package/internals/components/PickersTextField/PickersInput.d.ts +3 -0
  41. package/internals/components/PickersTextField/PickersInput.js +269 -0
  42. package/internals/components/PickersTextField/PickersInput.types.d.ts +45 -0
  43. package/internals/components/PickersTextField/PickersInput.types.js +1 -0
  44. package/internals/components/PickersTextField/PickersTextField.d.ts +3 -0
  45. package/internals/components/PickersTextField/PickersTextField.js +129 -0
  46. package/internals/components/PickersTextField/PickersTextField.types.d.ts +21 -0
  47. package/internals/components/PickersTextField/PickersTextField.types.js +1 -0
  48. package/internals/components/PickersTextField/index.d.ts +1 -0
  49. package/internals/components/PickersTextField/index.js +1 -0
  50. package/internals/components/PickersTextField/pickersTextFieldClasses.d.ts +46 -0
  51. package/internals/components/PickersTextField/pickersTextFieldClasses.js +9 -0
  52. package/internals/constants/dimensions.d.ts +1 -1
  53. package/internals/constants/dimensions.js +1 -1
  54. package/internals/demo/DemoContainer.d.ts +4 -0
  55. package/internals/demo/DemoContainer.js +47 -19
  56. package/internals/hooks/useClockReferenceDate.js +0 -1
  57. package/internals/hooks/useField/useField.utils.js +23 -12
  58. package/internals/hooks/usePicker/usePickerValue.js +2 -6
  59. package/internals/hooks/usePicker/usePickerValue.types.d.ts +2 -2
  60. package/internals/hooks/useViews.js +0 -1
  61. package/legacy/AdapterDateFns/AdapterDateFns.js +10 -14
  62. package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +12 -16
  63. package/legacy/AdapterDayjs/AdapterDayjs.js +11 -8
  64. package/legacy/AdapterLuxon/AdapterLuxon.js +30 -18
  65. package/legacy/AdapterMoment/AdapterMoment.js +326 -320
  66. package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +4 -25
  67. package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -30
  68. package/legacy/DateCalendar/DateCalendar.js +2 -2
  69. package/legacy/DateCalendar/useCalendarState.js +0 -1
  70. package/legacy/DatePicker/DatePicker.js +2 -2
  71. package/legacy/DateTimePicker/DateTimePicker.js +2 -2
  72. package/legacy/DesktopDatePicker/DesktopDatePicker.js +2 -2
  73. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -2
  74. package/legacy/MobileDatePicker/MobileDatePicker.js +2 -2
  75. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
  76. package/legacy/MonthCalendar/MonthCalendar.js +0 -1
  77. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +2 -0
  78. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +2 -1
  79. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  80. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  81. package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  82. package/legacy/PickersShortcuts/PickersShortcuts.js +2 -1
  83. package/legacy/StaticDatePicker/StaticDatePicker.js +2 -2
  84. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  85. package/legacy/TimeClock/Clock.js +0 -1
  86. package/legacy/TimeClock/ClockPointer.js +0 -1
  87. package/legacy/YearCalendar/YearCalendar.js +0 -1
  88. package/legacy/index.js +1 -1
  89. package/legacy/internals/components/PickersTextField/Outline.js +97 -0
  90. package/legacy/internals/components/PickersTextField/PickersInput.js +277 -0
  91. package/legacy/internals/components/PickersTextField/PickersInput.types.js +1 -0
  92. package/legacy/internals/components/PickersTextField/PickersTextField.js +129 -0
  93. package/legacy/internals/components/PickersTextField/PickersTextField.types.js +1 -0
  94. package/legacy/internals/components/PickersTextField/index.js +1 -0
  95. package/legacy/internals/components/PickersTextField/pickersTextFieldClasses.js +9 -0
  96. package/legacy/internals/constants/dimensions.js +1 -1
  97. package/legacy/internals/demo/DemoContainer.js +45 -19
  98. package/legacy/internals/hooks/useClockReferenceDate.js +0 -1
  99. package/legacy/internals/hooks/useField/useField.utils.js +23 -12
  100. package/legacy/internals/hooks/usePicker/usePickerValue.js +2 -6
  101. package/legacy/internals/hooks/useViews.js +0 -1
  102. package/legacy/locales/plPL.js +0 -1
  103. package/legacy/locales/svSE.js +0 -1
  104. package/legacy/locales/urPK.js +0 -1
  105. package/locales/beBY.d.ts +18 -5
  106. package/locales/caES.d.ts +18 -5
  107. package/locales/csCZ.d.ts +18 -5
  108. package/locales/daDK.d.ts +18 -5
  109. package/locales/deDE.d.ts +18 -5
  110. package/locales/elGR.d.ts +18 -5
  111. package/locales/enUS.d.ts +18 -5
  112. package/locales/esES.d.ts +18 -5
  113. package/locales/eu.d.ts +18 -5
  114. package/locales/faIR.d.ts +18 -5
  115. package/locales/fiFI.d.ts +18 -5
  116. package/locales/frFR.d.ts +18 -5
  117. package/locales/heIL.d.ts +18 -5
  118. package/locales/huHU.d.ts +18 -5
  119. package/locales/isIS.d.ts +18 -5
  120. package/locales/itIT.d.ts +18 -5
  121. package/locales/jaJP.d.ts +18 -5
  122. package/locales/koKR.d.ts +18 -5
  123. package/locales/kzKZ.d.ts +18 -5
  124. package/locales/mk.d.ts +18 -5
  125. package/locales/nbNO.d.ts +18 -5
  126. package/locales/nlNL.d.ts +18 -5
  127. package/locales/plPL.d.ts +18 -5
  128. package/locales/plPL.js +0 -1
  129. package/locales/ptBR.d.ts +18 -5
  130. package/locales/roRO.d.ts +18 -5
  131. package/locales/ruRU.d.ts +18 -5
  132. package/locales/skSK.d.ts +18 -5
  133. package/locales/svSE.d.ts +18 -5
  134. package/locales/svSE.js +0 -1
  135. package/locales/trTR.d.ts +18 -5
  136. package/locales/ukUA.d.ts +18 -5
  137. package/locales/urPK.d.ts +18 -5
  138. package/locales/urPK.js +0 -1
  139. package/locales/utils/getPickersLocalization.d.ts +18 -5
  140. package/locales/utils/pickersLocaleTextApi.d.ts +18 -5
  141. package/locales/viVN.d.ts +18 -5
  142. package/locales/zhCN.d.ts +18 -5
  143. package/locales/zhHK.d.ts +18 -5
  144. package/modern/AdapterDateFns/AdapterDateFns.js +10 -14
  145. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +12 -16
  146. package/modern/AdapterDayjs/AdapterDayjs.js +11 -8
  147. package/modern/AdapterLuxon/AdapterLuxon.js +28 -17
  148. package/modern/AdapterMoment/AdapterMoment.js +14 -14
  149. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +1 -24
  150. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -26
  151. package/modern/DateCalendar/DateCalendar.js +2 -2
  152. package/modern/DateCalendar/useCalendarState.js +0 -1
  153. package/modern/DatePicker/DatePicker.js +2 -2
  154. package/modern/DateTimePicker/DateTimePicker.js +2 -2
  155. package/modern/DesktopDatePicker/DesktopDatePicker.js +2 -2
  156. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -2
  157. package/modern/MobileDatePicker/MobileDatePicker.js +2 -2
  158. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
  159. package/modern/MonthCalendar/MonthCalendar.js +0 -1
  160. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +2 -0
  161. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +2 -1
  162. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  163. package/modern/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  164. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  165. package/modern/PickersShortcuts/PickersShortcuts.js +1 -1
  166. package/modern/StaticDatePicker/StaticDatePicker.js +2 -2
  167. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  168. package/modern/TimeClock/Clock.js +0 -1
  169. package/modern/TimeClock/ClockPointer.js +0 -1
  170. package/modern/YearCalendar/YearCalendar.js +0 -1
  171. package/modern/index.js +1 -1
  172. package/modern/internals/components/PickersTextField/Outline.js +97 -0
  173. package/modern/internals/components/PickersTextField/PickersInput.js +268 -0
  174. package/modern/internals/components/PickersTextField/PickersInput.types.js +1 -0
  175. package/modern/internals/components/PickersTextField/PickersTextField.js +129 -0
  176. package/modern/internals/components/PickersTextField/PickersTextField.types.js +1 -0
  177. package/modern/internals/components/PickersTextField/index.js +1 -0
  178. package/modern/internals/components/PickersTextField/pickersTextFieldClasses.js +9 -0
  179. package/modern/internals/constants/dimensions.js +1 -1
  180. package/modern/internals/demo/DemoContainer.js +47 -19
  181. package/modern/internals/hooks/useClockReferenceDate.js +0 -1
  182. package/modern/internals/hooks/useField/useField.utils.js +23 -12
  183. package/modern/internals/hooks/usePicker/usePickerValue.js +2 -6
  184. package/modern/internals/hooks/useViews.js +0 -1
  185. package/modern/locales/plPL.js +0 -1
  186. package/modern/locales/svSE.js +0 -1
  187. package/modern/locales/urPK.js +0 -1
  188. package/node/AdapterDateFns/AdapterDateFns.js +10 -14
  189. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +12 -16
  190. package/node/AdapterDayjs/AdapterDayjs.js +10 -7
  191. package/node/AdapterLuxon/AdapterLuxon.js +28 -17
  192. package/node/AdapterMoment/AdapterMoment.js +14 -14
  193. package/node/AdapterMomentHijri/AdapterMomentHijri.js +1 -24
  194. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -26
  195. package/node/DateCalendar/DateCalendar.js +2 -2
  196. package/node/DateCalendar/useCalendarState.js +0 -1
  197. package/node/DatePicker/DatePicker.js +2 -2
  198. package/node/DateTimePicker/DateTimePicker.js +2 -2
  199. package/node/DesktopDatePicker/DesktopDatePicker.js +2 -2
  200. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -2
  201. package/node/MobileDatePicker/MobileDatePicker.js +2 -2
  202. package/node/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
  203. package/node/MonthCalendar/MonthCalendar.js +0 -1
  204. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +2 -0
  205. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +2 -1
  206. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  207. package/node/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  208. package/node/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  209. package/node/PickersShortcuts/PickersShortcuts.js +1 -1
  210. package/node/StaticDatePicker/StaticDatePicker.js +2 -2
  211. package/node/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  212. package/node/TimeClock/Clock.js +0 -1
  213. package/node/TimeClock/ClockPointer.js +0 -1
  214. package/node/YearCalendar/YearCalendar.js +0 -1
  215. package/node/index.js +1 -1
  216. package/node/internals/components/PickersTextField/Outline.js +106 -0
  217. package/node/internals/components/PickersTextField/PickersInput.js +276 -0
  218. package/node/internals/components/PickersTextField/PickersInput.types.js +5 -0
  219. package/node/internals/components/PickersTextField/PickersTextField.js +137 -0
  220. package/node/internals/components/PickersTextField/PickersTextField.types.js +5 -0
  221. package/node/internals/components/PickersTextField/index.js +12 -0
  222. package/node/internals/components/PickersTextField/pickersTextFieldClasses.js +17 -0
  223. package/node/internals/constants/dimensions.js +1 -1
  224. package/node/internals/demo/DemoContainer.js +47 -19
  225. package/node/internals/hooks/useClockReferenceDate.js +0 -1
  226. package/node/internals/hooks/useField/useField.utils.js +23 -12
  227. package/node/internals/hooks/usePicker/usePickerValue.js +2 -6
  228. package/node/internals/hooks/useViews.js +0 -1
  229. package/node/locales/plPL.js +0 -1
  230. package/node/locales/svSE.js +0 -1
  231. package/node/locales/urPK.js +0 -1
  232. package/package.json +5 -5
  233. package/internals/components/FakeTextField/FakeTextField.d.ts +0 -22
  234. package/internals/components/FakeTextField/FakeTextField.js +0 -44
  235. package/internals/components/FakeTextField/index.d.ts +0 -1
  236. package/internals/components/FakeTextField/index.js +0 -1
  237. package/legacy/internals/components/FakeTextField/FakeTextField.js +0 -49
  238. package/legacy/internals/components/FakeTextField/index.js +0 -1
  239. package/modern/internals/components/FakeTextField/FakeTextField.js +0 -44
  240. package/modern/internals/components/FakeTextField/index.js +0 -1
  241. package/node/internals/components/FakeTextField/FakeTextField.js +0 -52
  242. package/node/internals/components/FakeTextField/index.js +0 -12
@@ -50,18 +50,31 @@ export interface PickersComponentAgnosticLocaleText<TDate> {
50
50
  dateTableLabel: string;
51
51
  fieldYearPlaceholder: (params: {
52
52
  digitAmount: number;
53
+ format: string;
53
54
  }) => string;
54
55
  fieldMonthPlaceholder: (params: {
55
56
  contentType: FieldSectionContentType;
57
+ format: string;
58
+ }) => string;
59
+ fieldDayPlaceholder: (params: {
60
+ format: string;
56
61
  }) => string;
57
- fieldDayPlaceholder: () => string;
58
62
  fieldWeekDayPlaceholder: (params: {
59
63
  contentType: FieldSectionContentType;
64
+ format: string;
65
+ }) => string;
66
+ fieldHoursPlaceholder: (params: {
67
+ format: string;
68
+ }) => string;
69
+ fieldMinutesPlaceholder: (params: {
70
+ format: string;
71
+ }) => string;
72
+ fieldSecondsPlaceholder: (params: {
73
+ format: string;
74
+ }) => string;
75
+ fieldMeridiemPlaceholder: (params: {
76
+ format: string;
60
77
  }) => string;
61
- fieldHoursPlaceholder: () => string;
62
- fieldMinutesPlaceholder: () => string;
63
- fieldSecondsPlaceholder: () => string;
64
- fieldMeridiemPlaceholder: () => string;
65
78
  }
66
79
  export interface PickersLocaleText<TDate> extends PickersComponentAgnosticLocaleText<TDate>, PickersComponentSpecificLocaleText {
67
80
  }
package/locales/viVN.d.ts CHANGED
@@ -31,18 +31,31 @@ export declare const viVN: {
31
31
  dateTableLabel?: string | undefined;
32
32
  fieldYearPlaceholder?: ((params: {
33
33
  digitAmount: number;
34
+ format: string;
34
35
  }) => string) | undefined;
35
36
  fieldMonthPlaceholder?: ((params: {
36
37
  contentType: import("..").FieldSectionContentType;
38
+ format: string;
39
+ }) => string) | undefined;
40
+ fieldDayPlaceholder?: ((params: {
41
+ format: string;
37
42
  }) => string) | undefined;
38
- fieldDayPlaceholder?: (() => string) | undefined;
39
43
  fieldWeekDayPlaceholder?: ((params: {
40
44
  contentType: import("..").FieldSectionContentType;
45
+ format: string;
46
+ }) => string) | undefined;
47
+ fieldHoursPlaceholder?: ((params: {
48
+ format: string;
49
+ }) => string) | undefined;
50
+ fieldMinutesPlaceholder?: ((params: {
51
+ format: string;
52
+ }) => string) | undefined;
53
+ fieldSecondsPlaceholder?: ((params: {
54
+ format: string;
55
+ }) => string) | undefined;
56
+ fieldMeridiemPlaceholder?: ((params: {
57
+ format: string;
41
58
  }) => string) | undefined;
42
- fieldHoursPlaceholder?: (() => string) | undefined;
43
- fieldMinutesPlaceholder?: (() => string) | undefined;
44
- fieldSecondsPlaceholder?: (() => string) | undefined;
45
- fieldMeridiemPlaceholder?: (() => string) | undefined;
46
59
  datePickerToolbarTitle?: string | undefined;
47
60
  timePickerToolbarTitle?: string | undefined;
48
61
  dateTimePickerToolbarTitle?: string | undefined;
package/locales/zhCN.d.ts CHANGED
@@ -31,18 +31,31 @@ export declare const zhCN: {
31
31
  dateTableLabel?: string | undefined;
32
32
  fieldYearPlaceholder?: ((params: {
33
33
  digitAmount: number;
34
+ format: string;
34
35
  }) => string) | undefined;
35
36
  fieldMonthPlaceholder?: ((params: {
36
37
  contentType: import("..").FieldSectionContentType;
38
+ format: string;
39
+ }) => string) | undefined;
40
+ fieldDayPlaceholder?: ((params: {
41
+ format: string;
37
42
  }) => string) | undefined;
38
- fieldDayPlaceholder?: (() => string) | undefined;
39
43
  fieldWeekDayPlaceholder?: ((params: {
40
44
  contentType: import("..").FieldSectionContentType;
45
+ format: string;
46
+ }) => string) | undefined;
47
+ fieldHoursPlaceholder?: ((params: {
48
+ format: string;
49
+ }) => string) | undefined;
50
+ fieldMinutesPlaceholder?: ((params: {
51
+ format: string;
52
+ }) => string) | undefined;
53
+ fieldSecondsPlaceholder?: ((params: {
54
+ format: string;
55
+ }) => string) | undefined;
56
+ fieldMeridiemPlaceholder?: ((params: {
57
+ format: string;
41
58
  }) => string) | undefined;
42
- fieldHoursPlaceholder?: (() => string) | undefined;
43
- fieldMinutesPlaceholder?: (() => string) | undefined;
44
- fieldSecondsPlaceholder?: (() => string) | undefined;
45
- fieldMeridiemPlaceholder?: (() => string) | undefined;
46
59
  datePickerToolbarTitle?: string | undefined;
47
60
  timePickerToolbarTitle?: string | undefined;
48
61
  dateTimePickerToolbarTitle?: string | undefined;
package/locales/zhHK.d.ts CHANGED
@@ -31,18 +31,31 @@ export declare const zhHK: {
31
31
  dateTableLabel?: string | undefined;
32
32
  fieldYearPlaceholder?: ((params: {
33
33
  digitAmount: number;
34
+ format: string;
34
35
  }) => string) | undefined;
35
36
  fieldMonthPlaceholder?: ((params: {
36
37
  contentType: import("..").FieldSectionContentType;
38
+ format: string;
39
+ }) => string) | undefined;
40
+ fieldDayPlaceholder?: ((params: {
41
+ format: string;
37
42
  }) => string) | undefined;
38
- fieldDayPlaceholder?: (() => string) | undefined;
39
43
  fieldWeekDayPlaceholder?: ((params: {
40
44
  contentType: import("..").FieldSectionContentType;
45
+ format: string;
46
+ }) => string) | undefined;
47
+ fieldHoursPlaceholder?: ((params: {
48
+ format: string;
49
+ }) => string) | undefined;
50
+ fieldMinutesPlaceholder?: ((params: {
51
+ format: string;
52
+ }) => string) | undefined;
53
+ fieldSecondsPlaceholder?: ((params: {
54
+ format: string;
55
+ }) => string) | undefined;
56
+ fieldMeridiemPlaceholder?: ((params: {
57
+ format: string;
41
58
  }) => string) | undefined;
42
- fieldHoursPlaceholder?: (() => string) | undefined;
43
- fieldMinutesPlaceholder?: (() => string) | undefined;
44
- fieldSecondsPlaceholder?: (() => string) | undefined;
45
- fieldMeridiemPlaceholder?: (() => string) | undefined;
46
59
  datePickerToolbarTitle?: string | undefined;
47
60
  timePickerToolbarTitle?: string | undefined;
48
61
  dateTimePickerToolbarTitle?: string | undefined;
@@ -380,10 +380,10 @@ export class AdapterDateFns {
380
380
  return isBefore(value, comparing);
381
381
  };
382
382
  this.isBeforeYear = (value, comparing) => {
383
- return isBefore(value, startOfYear(comparing));
383
+ return isBefore(value, this.startOfYear(comparing));
384
384
  };
385
385
  this.isBeforeDay = (value, comparing) => {
386
- return isBefore(value, startOfDay(comparing));
386
+ return isBefore(value, this.startOfDay(comparing));
387
387
  };
388
388
  this.isWithinRange = (value, [start, end]) => {
389
389
  return isWithinInterval(value, {
@@ -486,20 +486,16 @@ export class AdapterDateFns {
486
486
  return getDaysInMonth(value);
487
487
  };
488
488
  this.getWeekArray = value => {
489
- const start = startOfWeek(startOfMonth(value), {
490
- locale: this.locale
491
- });
492
- const end = endOfWeek(endOfMonth(value), {
493
- locale: this.locale
494
- });
489
+ const start = this.startOfWeek(this.startOfMonth(value));
490
+ const end = this.endOfWeek(this.endOfMonth(value));
495
491
  let count = 0;
496
492
  let current = start;
497
493
  const nestedWeeks = [];
498
- while (isBefore(current, end)) {
494
+ while (this.isBefore(current, end)) {
499
495
  const weekNumber = Math.floor(count / 7);
500
496
  nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];
501
497
  nestedWeeks[weekNumber].push(current);
502
- current = addDays(current, 1);
498
+ current = this.addDays(current, 1);
503
499
  count += 1;
504
500
  }
505
501
  return nestedWeeks;
@@ -510,13 +506,13 @@ export class AdapterDateFns {
510
506
  });
511
507
  };
512
508
  this.getYearRange = ([start, end]) => {
513
- const startDate = startOfYear(start);
514
- const endDate = endOfYear(end);
509
+ const startDate = this.startOfYear(start);
510
+ const endDate = this.endOfYear(end);
515
511
  const years = [];
516
512
  let current = startDate;
517
- while (isBefore(current, endDate)) {
513
+ while (this.isBefore(current, endDate)) {
518
514
  years.push(current);
519
- current = addYears(current, 1);
515
+ current = this.addYears(current, 1);
520
516
  }
521
517
  return years;
522
518
  };
@@ -382,19 +382,19 @@ export class AdapterDateFnsJalali {
382
382
  return isAfter(value, comparing);
383
383
  };
384
384
  this.isAfterYear = (value, comparing) => {
385
- return isAfter(value, endOfYear(comparing));
385
+ return isAfter(value, this.endOfYear(comparing));
386
386
  };
387
387
  this.isAfterDay = (value, comparing) => {
388
- return isAfter(value, endOfDay(comparing));
388
+ return isAfter(value, this.endOfDay(comparing));
389
389
  };
390
390
  this.isBefore = (value, comparing) => {
391
391
  return isBefore(value, comparing);
392
392
  };
393
393
  this.isBeforeYear = (value, comparing) => {
394
- return isBefore(value, startOfYear(comparing));
394
+ return isBefore(value, this.startOfYear(comparing));
395
395
  };
396
396
  this.isBeforeDay = (value, comparing) => {
397
- return isBefore(value, startOfDay(comparing));
397
+ return isBefore(value, this.startOfDay(comparing));
398
398
  };
399
399
  this.isWithinRange = (value, [start, end]) => {
400
400
  return isWithinInterval(value, {
@@ -497,20 +497,16 @@ export class AdapterDateFnsJalali {
497
497
  return getDaysInMonth(value);
498
498
  };
499
499
  this.getWeekArray = value => {
500
- const start = startOfWeek(startOfMonth(value), {
501
- locale: this.locale
502
- });
503
- const end = endOfWeek(endOfMonth(value), {
504
- locale: this.locale
505
- });
500
+ const start = this.startOfWeek(this.startOfMonth(value));
501
+ const end = this.endOfWeek(this.endOfMonth(value));
506
502
  let count = 0;
507
503
  let current = start;
508
504
  const nestedWeeks = [];
509
- while (isBefore(current, end)) {
505
+ while (this.isBefore(current, end)) {
510
506
  const weekNumber = Math.floor(count / 7);
511
507
  nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];
512
508
  nestedWeeks[weekNumber].push(current);
513
- current = addDays(current, 1);
509
+ current = this.addDays(current, 1);
514
510
  count += 1;
515
511
  }
516
512
  return nestedWeeks;
@@ -521,13 +517,13 @@ export class AdapterDateFnsJalali {
521
517
  });
522
518
  };
523
519
  this.getYearRange = ([start, end]) => {
524
- const startDate = startOfYear(start);
525
- const endDate = endOfYear(end);
520
+ const startDate = this.startOfYear(start);
521
+ const endDate = this.endOfYear(end);
526
522
  const years = [];
527
523
  let current = startDate;
528
- while (isBefore(current, endDate)) {
524
+ while (this.isBefore(current, endDate)) {
529
525
  years.push(current);
530
- current = addYears(current, 1);
526
+ current = this.addYears(current, 1);
531
527
  }
532
528
  return years;
533
529
  };
@@ -1,13 +1,13 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  /* eslint-disable class-methods-use-this */
3
3
  import defaultDayjs from 'dayjs';
4
- import weekOfYear from 'dayjs/plugin/weekOfYear';
4
+ import weekOfYearPlugin from 'dayjs/plugin/weekOfYear';
5
5
  import customParseFormatPlugin from 'dayjs/plugin/customParseFormat';
6
6
  import localizedFormatPlugin from 'dayjs/plugin/localizedFormat';
7
7
  import isBetweenPlugin from 'dayjs/plugin/isBetween';
8
8
  import { buildWarning } from '../internals/utils/warning';
9
- defaultDayjs.extend(customParseFormatPlugin);
10
9
  defaultDayjs.extend(localizedFormatPlugin);
10
+ defaultDayjs.extend(weekOfYearPlugin);
11
11
  defaultDayjs.extend(isBetweenPlugin);
12
12
  const localeNotFoundWarning = buildWarning(['Your locale has not been found.', 'Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale', "Or you forget to import the locale from 'dayjs/locale/{localeUsed}'", 'fallback on English locale']);
13
13
  const formatTokenMap = {
@@ -504,8 +504,8 @@ export class AdapterDayjs {
504
504
  };
505
505
  this.getWeekArray = value => {
506
506
  const cleanValue = this.setLocaleToValue(value);
507
- const start = cleanValue.startOf('month').startOf('week');
508
- const end = cleanValue.endOf('month').endOf('week');
507
+ const start = this.startOfWeek(this.startOfMonth(cleanValue));
508
+ const end = this.endOfWeek(this.endOfMonth(cleanValue));
509
509
  let count = 0;
510
510
  let current = start;
511
511
  const nestedWeeks = [];
@@ -522,11 +522,11 @@ export class AdapterDayjs {
522
522
  return value.week();
523
523
  };
524
524
  this.getYearRange = ([start, end]) => {
525
- const startDate = start.startOf('year');
526
- const endDate = end.endOf('year');
525
+ const startDate = this.startOfYear(start);
526
+ const endDate = this.endOfYear(end);
527
527
  const years = [];
528
528
  let current = startDate;
529
- while (current < endDate) {
529
+ while (this.isBefore(current, endDate)) {
530
530
  years.push(current);
531
531
  current = this.addYears(current, 1);
532
532
  }
@@ -535,6 +535,9 @@ export class AdapterDayjs {
535
535
  this.dayjs = withLocale(defaultDayjs, _locale);
536
536
  this.locale = _locale;
537
537
  this.formats = _extends({}, defaultFormats, formats);
538
- defaultDayjs.extend(weekOfYear);
538
+
539
+ // Moved plugins to the constructor to allow for users to use options on the library
540
+ // for reference: https://github.com/mui/mui-x/pull/11151
541
+ defaultDayjs.extend(customParseFormatPlugin);
539
542
  }
540
543
  }
@@ -230,7 +230,6 @@ export class AdapterLuxon {
230
230
  if (typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {
231
231
  return true; // Luxon defaults to en-US if Intl not found
232
232
  }
233
-
234
233
  return Boolean(new Intl.DateTimeFormat(this.locale, {
235
234
  hour: 'numeric'
236
235
  })?.resolvedOptions()?.hour12);
@@ -307,12 +306,12 @@ export class AdapterLuxon {
307
306
  };
308
307
  this.isAfterYear = (value, comparing) => {
309
308
  const comparingInValueTimezone = this.setTimezone(comparing, this.getTimezone(value));
310
- const diff = value.diff(comparingInValueTimezone.endOf('year'), 'years').toObject();
309
+ const diff = value.diff(this.endOfYear(comparingInValueTimezone), 'years').toObject();
311
310
  return diff.years > 0;
312
311
  };
313
312
  this.isAfterDay = (value, comparing) => {
314
313
  const comparingInValueTimezone = this.setTimezone(comparing, this.getTimezone(value));
315
- const diff = value.diff(comparingInValueTimezone.endOf('day'), 'days').toObject();
314
+ const diff = value.diff(this.endOfDay(comparingInValueTimezone), 'days').toObject();
316
315
  return diff.days > 0;
317
316
  };
318
317
  this.isBefore = (value, comparing) => {
@@ -320,12 +319,12 @@ export class AdapterLuxon {
320
319
  };
321
320
  this.isBeforeYear = (value, comparing) => {
322
321
  const comparingInValueTimezone = this.setTimezone(comparing, this.getTimezone(value));
323
- const diff = value.diff(comparingInValueTimezone.startOf('year'), 'years').toObject();
322
+ const diff = value.diff(this.startOfYear(comparingInValueTimezone), 'years').toObject();
324
323
  return diff.years < 0;
325
324
  };
326
325
  this.isBeforeDay = (value, comparing) => {
327
326
  const comparingInValueTimezone = this.setTimezone(comparing, this.getTimezone(value));
328
- const diff = value.diff(comparingInValueTimezone.startOf('day'), 'days').toObject();
327
+ const diff = value.diff(this.startOfDay(comparingInValueTimezone), 'days').toObject();
329
328
  return diff.days < 0;
330
329
  };
331
330
  this.isWithinRange = (value, [start, end]) => {
@@ -338,7 +337,12 @@ export class AdapterLuxon {
338
337
  return value.startOf('month');
339
338
  };
340
339
  this.startOfWeek = value => {
341
- return value.startOf('week');
340
+ return value.startOf('week',
341
+ // TODO: remove when `@types/luxon` add support for the parameter.
342
+ // @ts-ignore
343
+ {
344
+ useLocaleWeeks: true
345
+ });
342
346
  };
343
347
  this.startOfDay = value => {
344
348
  return value.startOf('day');
@@ -350,7 +354,12 @@ export class AdapterLuxon {
350
354
  return value.endOf('month');
351
355
  };
352
356
  this.endOfWeek = value => {
353
- return value.endOf('week');
357
+ return value.endOf('week',
358
+ // TODO: remove when `@types/luxon` add support for the parameter.
359
+ // @ts-ignore
360
+ {
361
+ useLocaleWeeks: true
362
+ });
354
363
  };
355
364
  this.endOfDay = value => {
356
365
  return value.endOf('day');
@@ -452,11 +461,13 @@ export class AdapterLuxon {
452
461
  };
453
462
  this.getWeekArray = value => {
454
463
  const cleanValue = this.setLocaleToValue(value);
464
+ const firstDay = this.startOfWeek(this.startOfMonth(cleanValue));
465
+ const lastDay = this.endOfWeek(this.endOfMonth(cleanValue));
455
466
  const {
456
467
  days
457
- } = cleanValue.endOf('month').endOf('week').diff(cleanValue.startOf('month').startOf('week'), 'days').toObject();
468
+ } = lastDay.diff(firstDay, 'days').toObject();
458
469
  const weeks = [];
459
- new Array(Math.round(days)).fill(0).map((_, i) => i).map(day => cleanValue.startOf('month').startOf('week').plus({
470
+ new Array(Math.round(days)).fill(0).map((_, i) => i).map(day => firstDay.plus({
460
471
  days: day
461
472
  })).forEach((v, i) => {
462
473
  if (i === 0 || i % 7 === 0 && i > 6) {
@@ -468,18 +479,18 @@ export class AdapterLuxon {
468
479
  return weeks;
469
480
  };
470
481
  this.getWeekNumber = value => {
471
- return value.weekNumber;
482
+ // TODO: remove when `@types/luxon` add support for the parameter.
483
+ // @ts-ignore
484
+ return value.localeWeekNumber ?? value.weekNumber;
472
485
  };
473
486
  this.getYearRange = ([start, end]) => {
474
- const startDate = start.startOf('year');
475
- const endDate = end.endOf('year');
476
- let current = startDate;
487
+ const startDate = this.startOfYear(start);
488
+ const endDate = this.endOfYear(end);
477
489
  const years = [];
478
- while (current < endDate) {
490
+ let current = startDate;
491
+ while (this.isBefore(current, endDate)) {
479
492
  years.push(current);
480
- current = current.plus({
481
- year: 1
482
- });
493
+ current = this.addYears(current, 1);
483
494
  }
484
495
  return years;
485
496
  };
@@ -426,8 +426,8 @@ export class AdapterMoment {
426
426
  };
427
427
  this.getWeekArray = value => {
428
428
  const cleanValue = this.setLocaleToValue(value);
429
- const start = cleanValue.clone().startOf('month').startOf('week');
430
- const end = cleanValue.clone().endOf('month').endOf('week');
429
+ const start = this.startOfWeek(this.startOfMonth(cleanValue));
430
+ const end = this.endOfWeek(this.endOfMonth(cleanValue));
431
431
  let count = 0;
432
432
  let current = start;
433
433
  const nestedWeeks = [];
@@ -435,7 +435,7 @@ export class AdapterMoment {
435
435
  const weekNumber = Math.floor(count / 7);
436
436
  nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];
437
437
  nestedWeeks[weekNumber].push(current);
438
- current = current.clone().add(1, 'day');
438
+ current = this.addDays(current, 1);
439
439
  count += 1;
440
440
  }
441
441
  return nestedWeeks;
@@ -443,19 +443,19 @@ export class AdapterMoment {
443
443
  this.getWeekNumber = value => {
444
444
  return value.week();
445
445
  };
446
- this.getYearRange = ([start, end]) => {
447
- const startDate = this.moment(start).startOf('year');
448
- const endDate = this.moment(end).endOf('year');
449
- const years = [];
450
- let current = startDate;
451
- while (current.isBefore(endDate)) {
452
- years.push(current);
453
- current = current.clone().add(1, 'year');
454
- }
455
- return years;
456
- };
457
446
  this.moment = instance || defaultMoment;
458
447
  this.locale = locale;
459
448
  this.formats = _extends({}, defaultFormats, formats);
460
449
  }
450
+ getYearRange([start, end]) {
451
+ const startDate = this.startOfYear(start);
452
+ const endDate = this.endOfYear(end);
453
+ const years = [];
454
+ let current = startDate;
455
+ while (this.isBefore(current, endDate)) {
456
+ years.push(current);
457
+ current = this.addYears(current, 1);
458
+ }
459
+ return years;
460
+ }
461
461
  }
@@ -198,21 +198,6 @@ export class AdapterMomentHijri extends AdapterMoment {
198
198
  this.setDate = (value, date) => {
199
199
  return value.clone().iDate(date);
200
200
  };
201
- this.getWeekArray = value => {
202
- const start = value.clone().startOf('iMonth').startOf('week');
203
- const end = value.clone().endOf('iMonth').endOf('week');
204
- let count = 0;
205
- let current = start;
206
- const nestedWeeks = [];
207
- while (current.isBefore(end)) {
208
- const weekNumber = Math.floor(count / 7);
209
- nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];
210
- nestedWeeks[weekNumber].push(current);
211
- current = current.clone().add(1, 'day');
212
- count += 1;
213
- }
214
- return nestedWeeks;
215
- };
216
201
  this.getWeekNumber = value => {
217
202
  return value.iWeek();
218
203
  };
@@ -225,15 +210,7 @@ export class AdapterMomentHijri extends AdapterMoment {
225
210
  if (end.isAfter('2076-11-26')) {
226
211
  throw new Error('max date must be on or before 1499-12-29 H (2076-11-26)');
227
212
  }
228
- const startDate = this.moment(start).startOf('iYear');
229
- const endDate = this.moment(end).endOf('iYear');
230
- const years = [];
231
- let current = startDate;
232
- while (current.isBefore(endDate)) {
233
- years.push(current);
234
- current = current.clone().add(1, 'iYear');
235
- }
236
- return years;
213
+ return super.getYearRange([start, end]);
237
214
  };
238
215
  this.moment = instance || defaultHMoment;
239
216
  this.locale = 'ar-SA';
@@ -212,35 +212,9 @@ export class AdapterMomentJalaali extends AdapterMoment {
212
212
  this.setDate = (value, date) => {
213
213
  return value.clone().jDate(date);
214
214
  };
215
- this.getWeekArray = value => {
216
- const start = value.clone().startOf('jMonth').startOf('week');
217
- const end = value.clone().endOf('jMonth').endOf('week');
218
- let count = 0;
219
- let current = start;
220
- const nestedWeeks = [];
221
- while (current.isBefore(end)) {
222
- const weekNumber = Math.floor(count / 7);
223
- nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];
224
- nestedWeeks[weekNumber].push(current);
225
- current = current.clone().add(1, 'day');
226
- count += 1;
227
- }
228
- return nestedWeeks;
229
- };
230
215
  this.getWeekNumber = value => {
231
216
  return value.jWeek();
232
217
  };
233
- this.getYearRange = ([start, end]) => {
234
- const startDate = this.moment(start).startOf('jYear');
235
- const endDate = this.moment(end).endOf('jYear');
236
- const years = [];
237
- let current = startDate;
238
- while (current.isBefore(endDate)) {
239
- years.push(current);
240
- current = current.clone().add(1, 'jYear');
241
- }
242
- return years;
243
- };
244
218
  this.moment = instance || defaultJMoment;
245
219
  this.locale = 'fa';
246
220
  this.formats = _extends({}, defaultFormats, formats);
@@ -393,8 +393,8 @@ process.env.NODE_ENV !== "production" ? DateCalendar.propTypes = {
393
393
  */
394
394
  displayWeekNumber: PropTypes.bool,
395
395
  /**
396
- * Calendar will show more weeks in order to match this value.
397
- * Put it to 6 for having fix number of week in Gregorian calendars
396
+ * The day view will show as many weeks as needed after the end of the current month to match this value.
397
+ * Put it to 6 to have a fixed number of weeks in Gregorian calendars
398
398
  * @default undefined
399
399
  */
400
400
  fixedWeekNumber: PropTypes.number,
@@ -61,7 +61,6 @@ export const useCalendarState = params => {
61
61
  });
62
62
  }, [] // eslint-disable-line react-hooks/exhaustive-deps
63
63
  );
64
-
65
64
  const [calendarState, dispatch] = React.useReducer(reducerFn, {
66
65
  isMonthSwitchingAnimating: false,
67
66
  focusedDay: referenceDate,
@@ -112,8 +112,8 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
112
112
  */
113
113
  displayWeekNumber: PropTypes.bool,
114
114
  /**
115
- * Calendar will show more weeks in order to match this value.
116
- * Put it to 6 for having fix number of week in Gregorian calendars
115
+ * The day view will show as many weeks as needed after the end of the current month to match this value.
116
+ * Put it to 6 to have a fixed number of weeks in Gregorian calendars
117
117
  * @default undefined
118
118
  */
119
119
  fixedWeekNumber: PropTypes.number,
@@ -127,8 +127,8 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
127
127
  */
128
128
  displayWeekNumber: PropTypes.bool,
129
129
  /**
130
- * Calendar will show more weeks in order to match this value.
131
- * Put it to 6 for having fix number of week in Gregorian calendars
130
+ * The day view will show as many weeks as needed after the end of the current month to match this value.
131
+ * Put it to 6 to have a fixed number of weeks in Gregorian calendars
132
132
  * @default undefined
133
133
  */
134
134
  fixedWeekNumber: PropTypes.number,
@@ -126,8 +126,8 @@ DesktopDatePicker.propTypes = {
126
126
  */
127
127
  displayWeekNumber: PropTypes.bool,
128
128
  /**
129
- * Calendar will show more weeks in order to match this value.
130
- * Put it to 6 for having fix number of week in Gregorian calendars
129
+ * The day view will show as many weeks as needed after the end of the current month to match this value.
130
+ * Put it to 6 to have a fixed number of weeks in Gregorian calendars
131
131
  * @default undefined
132
132
  */
133
133
  fixedWeekNumber: PropTypes.number,
@@ -180,8 +180,8 @@ DesktopDateTimePicker.propTypes = {
180
180
  */
181
181
  displayWeekNumber: PropTypes.bool,
182
182
  /**
183
- * Calendar will show more weeks in order to match this value.
184
- * Put it to 6 for having fix number of week in Gregorian calendars
183
+ * The day view will show as many weeks as needed after the end of the current month to match this value.
184
+ * Put it to 6 to have a fixed number of weeks in Gregorian calendars
185
185
  * @default undefined
186
186
  */
187
187
  fixedWeekNumber: PropTypes.number,
@@ -123,8 +123,8 @@ MobileDatePicker.propTypes = {
123
123
  */
124
124
  displayWeekNumber: PropTypes.bool,
125
125
  /**
126
- * Calendar will show more weeks in order to match this value.
127
- * Put it to 6 for having fix number of week in Gregorian calendars
126
+ * The day view will show as many weeks as needed after the end of the current month to match this value.
127
+ * Put it to 6 to have a fixed number of weeks in Gregorian calendars
128
128
  * @default undefined
129
129
  */
130
130
  fixedWeekNumber: PropTypes.number,
@@ -149,8 +149,8 @@ MobileDateTimePicker.propTypes = {
149
149
  */
150
150
  displayWeekNumber: PropTypes.bool,
151
151
  /**
152
- * Calendar will show more weeks in order to match this value.
153
- * Put it to 6 for having fix number of week in Gregorian calendars
152
+ * The day view will show as many weeks as needed after the end of the current month to match this value.
153
+ * Put it to 6 to have a fixed number of weeks in Gregorian calendars
154
154
  * @default undefined
155
155
  */
156
156
  fixedWeekNumber: PropTypes.number,