@mui/x-date-pickers 6.8.0 → 6.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/AdapterDayjs/AdapterDayjs.d.ts +5 -1
  2. package/AdapterDayjs/AdapterDayjs.js +42 -15
  3. package/AdapterLuxon/AdapterLuxon.d.ts +1 -0
  4. package/AdapterLuxon/AdapterLuxon.js +12 -5
  5. package/AdapterMoment/AdapterMoment.js +18 -9
  6. package/CHANGELOG.md +76 -5534
  7. package/DateCalendar/DateCalendar.js +34 -16
  8. package/DateCalendar/DateCalendar.types.d.ts +2 -2
  9. package/DateCalendar/DayCalendar.d.ts +3 -1
  10. package/DateCalendar/DayCalendar.js +24 -17
  11. package/DateCalendar/PickersCalendarHeader.js +6 -3
  12. package/DateCalendar/useCalendarState.d.ts +2 -1
  13. package/DateCalendar/useCalendarState.js +6 -3
  14. package/DateCalendar/useIsDateDisabled.d.ts +1 -1
  15. package/DateCalendar/useIsDateDisabled.js +5 -3
  16. package/DateField/DateField.js +8 -0
  17. package/DatePicker/DatePicker.js +8 -0
  18. package/DateTimeField/DateTimeField.js +8 -0
  19. package/DateTimePicker/DateTimePicker.js +8 -0
  20. package/DesktopDatePicker/DesktopDatePicker.js +8 -0
  21. package/DesktopDateTimePicker/DesktopDateTimePicker.js +8 -0
  22. package/DesktopTimePicker/DesktopTimePicker.js +8 -0
  23. package/DigitalClock/DigitalClock.js +28 -15
  24. package/MobileDatePicker/MobileDatePicker.js +8 -0
  25. package/MobileDateTimePicker/MobileDateTimePicker.js +8 -0
  26. package/MobileTimePicker/MobileTimePicker.js +8 -0
  27. package/MonthCalendar/MonthCalendar.js +30 -14
  28. package/MonthCalendar/MonthCalendar.types.d.ts +3 -2
  29. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +28 -15
  30. package/StaticDatePicker/StaticDatePicker.js +8 -0
  31. package/StaticDateTimePicker/StaticDateTimePicker.js +8 -0
  32. package/StaticTimePicker/StaticTimePicker.js +8 -0
  33. package/TimeClock/TimeClock.js +27 -15
  34. package/TimeField/TimeField.js +8 -0
  35. package/TimePicker/TimePicker.js +8 -0
  36. package/YearCalendar/YearCalendar.js +30 -14
  37. package/YearCalendar/YearCalendar.types.d.ts +3 -2
  38. package/dateTimeViewRenderers/dateTimeViewRenderers.d.ts +1 -1
  39. package/dateTimeViewRenderers/dateTimeViewRenderers.js +5 -2
  40. package/dateViewRenderers/dateViewRenderers.d.ts +1 -1
  41. package/dateViewRenderers/dateViewRenderers.js +4 -2
  42. package/index.js +1 -1
  43. package/internals/hooks/date-helpers-hooks.d.ts +4 -2
  44. package/internals/hooks/date-helpers-hooks.js +8 -6
  45. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  46. package/internals/hooks/useField/useField.d.ts +3 -1
  47. package/internals/hooks/useField/useField.js +23 -7
  48. package/internals/hooks/useField/useField.types.d.ts +5 -3
  49. package/internals/hooks/useField/useField.utils.d.ts +13 -11
  50. package/internals/hooks/useField/useField.utils.js +55 -43
  51. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +3 -2
  52. package/internals/hooks/useField/useFieldCharacterEditing.js +6 -5
  53. package/internals/hooks/useField/useFieldState.d.ts +1 -0
  54. package/internals/hooks/useField/useFieldState.js +33 -22
  55. package/internals/hooks/useMobilePicker/useMobilePicker.js +2 -0
  56. package/internals/hooks/usePicker/usePickerValue.js +23 -7
  57. package/internals/hooks/usePicker/usePickerValue.types.d.ts +16 -4
  58. package/internals/hooks/usePicker/usePickerViews.d.ts +2 -1
  59. package/internals/hooks/usePicker/usePickerViews.js +7 -2
  60. package/internals/hooks/useUtils.d.ts +3 -2
  61. package/internals/hooks/useUtils.js +5 -2
  62. package/internals/hooks/useValueWithTimezone.d.ts +33 -0
  63. package/internals/hooks/useValueWithTimezone.js +69 -0
  64. package/internals/index.d.ts +1 -0
  65. package/internals/index.js +1 -0
  66. package/internals/models/props/clock.d.ts +2 -2
  67. package/internals/utils/date-utils.d.ts +4 -3
  68. package/internals/utils/date-utils.js +4 -3
  69. package/internals/utils/fields.js +1 -1
  70. package/internals/utils/getDefaultReferenceDate.d.ts +3 -2
  71. package/internals/utils/getDefaultReferenceDate.js +3 -2
  72. package/internals/utils/validation/extractValidationProps.d.ts +1 -1
  73. package/internals/utils/validation/validateDate.d.ts +3 -2
  74. package/internals/utils/validation/validateDate.js +14 -6
  75. package/internals/utils/validation/validateTime.d.ts +3 -2
  76. package/internals/utils/validation/validateTime.js +8 -8
  77. package/internals/utils/valueManagers.js +2 -1
  78. package/legacy/AdapterDayjs/AdapterDayjs.js +45 -16
  79. package/legacy/AdapterLuxon/AdapterLuxon.js +13 -6
  80. package/legacy/AdapterMoment/AdapterMoment.js +18 -9
  81. package/legacy/DateCalendar/DateCalendar.js +32 -19
  82. package/legacy/DateCalendar/DayCalendar.js +24 -17
  83. package/legacy/DateCalendar/PickersCalendarHeader.js +6 -3
  84. package/legacy/DateCalendar/useCalendarState.js +6 -3
  85. package/legacy/DateCalendar/useIsDateDisabled.js +5 -3
  86. package/legacy/DateField/DateField.js +8 -0
  87. package/legacy/DatePicker/DatePicker.js +8 -0
  88. package/legacy/DateTimeField/DateTimeField.js +8 -0
  89. package/legacy/DateTimePicker/DateTimePicker.js +8 -0
  90. package/legacy/DesktopDatePicker/DesktopDatePicker.js +8 -0
  91. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +8 -0
  92. package/legacy/DesktopTimePicker/DesktopTimePicker.js +8 -0
  93. package/legacy/DigitalClock/DigitalClock.js +26 -16
  94. package/legacy/MobileDatePicker/MobileDatePicker.js +8 -0
  95. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +8 -0
  96. package/legacy/MobileTimePicker/MobileTimePicker.js +8 -0
  97. package/legacy/MonthCalendar/MonthCalendar.js +32 -20
  98. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +27 -16
  99. package/legacy/StaticDatePicker/StaticDatePicker.js +8 -0
  100. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +8 -0
  101. package/legacy/StaticTimePicker/StaticTimePicker.js +8 -0
  102. package/legacy/TimeClock/TimeClock.js +25 -18
  103. package/legacy/TimeField/TimeField.js +8 -0
  104. package/legacy/TimePicker/TimePicker.js +8 -0
  105. package/legacy/YearCalendar/YearCalendar.js +32 -20
  106. package/legacy/dateTimeViewRenderers/dateTimeViewRenderers.js +5 -2
  107. package/legacy/dateViewRenderers/dateViewRenderers.js +4 -2
  108. package/legacy/index.js +1 -1
  109. package/legacy/internals/hooks/date-helpers-hooks.js +8 -6
  110. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  111. package/legacy/internals/hooks/useField/useField.js +22 -6
  112. package/legacy/internals/hooks/useField/useField.utils.js +56 -44
  113. package/legacy/internals/hooks/useField/useFieldCharacterEditing.js +6 -5
  114. package/legacy/internals/hooks/useField/useFieldState.js +42 -32
  115. package/legacy/internals/hooks/useMobilePicker/useMobilePicker.js +2 -0
  116. package/legacy/internals/hooks/usePicker/usePickerValue.js +22 -7
  117. package/legacy/internals/hooks/usePicker/usePickerViews.js +7 -2
  118. package/legacy/internals/hooks/useUtils.js +5 -2
  119. package/legacy/internals/hooks/useValueWithTimezone.js +81 -0
  120. package/legacy/internals/index.js +1 -0
  121. package/legacy/internals/utils/date-utils.js +5 -4
  122. package/legacy/internals/utils/fields.js +1 -1
  123. package/legacy/internals/utils/getDefaultReferenceDate.js +3 -2
  124. package/legacy/internals/utils/validation/validateDate.js +12 -6
  125. package/legacy/internals/utils/validation/validateTime.js +8 -8
  126. package/legacy/internals/utils/valueManagers.js +3 -0
  127. package/legacy/locales/csCZ.js +2 -2
  128. package/legacy/tests/describeAdapters/describeAdapters.js +3 -1
  129. package/legacy/tests/describeGregorianAdapter/testCalculations.js +69 -27
  130. package/legacy/tests/describeJalaliAdapter/testCalculations.js +21 -0
  131. package/legacy/timeViewRenderers/timeViewRenderers.js +12 -6
  132. package/locales/csCZ.js +2 -2
  133. package/models/adapters.d.ts +2 -2
  134. package/models/timezone.d.ts +10 -0
  135. package/modern/AdapterDayjs/AdapterDayjs.js +41 -15
  136. package/modern/AdapterLuxon/AdapterLuxon.js +12 -4
  137. package/modern/AdapterMoment/AdapterMoment.js +18 -9
  138. package/modern/DateCalendar/DateCalendar.js +34 -16
  139. package/modern/DateCalendar/DayCalendar.js +24 -17
  140. package/modern/DateCalendar/PickersCalendarHeader.js +6 -3
  141. package/modern/DateCalendar/useCalendarState.js +6 -3
  142. package/modern/DateCalendar/useIsDateDisabled.js +5 -3
  143. package/modern/DateField/DateField.js +8 -0
  144. package/modern/DatePicker/DatePicker.js +8 -0
  145. package/modern/DateTimeField/DateTimeField.js +8 -0
  146. package/modern/DateTimePicker/DateTimePicker.js +8 -0
  147. package/modern/DesktopDatePicker/DesktopDatePicker.js +8 -0
  148. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +8 -0
  149. package/modern/DesktopTimePicker/DesktopTimePicker.js +8 -0
  150. package/modern/DigitalClock/DigitalClock.js +28 -15
  151. package/modern/MobileDatePicker/MobileDatePicker.js +8 -0
  152. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +8 -0
  153. package/modern/MobileTimePicker/MobileTimePicker.js +8 -0
  154. package/modern/MonthCalendar/MonthCalendar.js +30 -14
  155. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +28 -15
  156. package/modern/StaticDatePicker/StaticDatePicker.js +8 -0
  157. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +8 -0
  158. package/modern/StaticTimePicker/StaticTimePicker.js +8 -0
  159. package/modern/TimeClock/TimeClock.js +27 -15
  160. package/modern/TimeField/TimeField.js +8 -0
  161. package/modern/TimePicker/TimePicker.js +8 -0
  162. package/modern/YearCalendar/YearCalendar.js +30 -14
  163. package/modern/dateTimeViewRenderers/dateTimeViewRenderers.js +5 -2
  164. package/modern/dateViewRenderers/dateViewRenderers.js +4 -2
  165. package/modern/index.js +1 -1
  166. package/modern/internals/hooks/date-helpers-hooks.js +8 -6
  167. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  168. package/modern/internals/hooks/useField/useField.js +23 -7
  169. package/modern/internals/hooks/useField/useField.utils.js +55 -43
  170. package/modern/internals/hooks/useField/useFieldCharacterEditing.js +6 -5
  171. package/modern/internals/hooks/useField/useFieldState.js +33 -21
  172. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +2 -0
  173. package/modern/internals/hooks/usePicker/usePickerValue.js +23 -7
  174. package/modern/internals/hooks/usePicker/usePickerViews.js +7 -2
  175. package/modern/internals/hooks/useUtils.js +5 -2
  176. package/modern/internals/hooks/useValueWithTimezone.js +68 -0
  177. package/modern/internals/index.js +1 -0
  178. package/modern/internals/utils/date-utils.js +4 -3
  179. package/modern/internals/utils/fields.js +1 -1
  180. package/modern/internals/utils/getDefaultReferenceDate.js +3 -2
  181. package/modern/internals/utils/validation/validateDate.js +14 -6
  182. package/modern/internals/utils/validation/validateTime.js +8 -8
  183. package/modern/internals/utils/valueManagers.js +2 -1
  184. package/modern/locales/csCZ.js +2 -2
  185. package/modern/tests/describeAdapters/describeAdapters.js +3 -1
  186. package/modern/tests/describeGregorianAdapter/testCalculations.js +69 -27
  187. package/modern/tests/describeJalaliAdapter/testCalculations.js +21 -0
  188. package/modern/timeViewRenderers/timeViewRenderers.js +12 -6
  189. package/node/AdapterDayjs/AdapterDayjs.js +41 -15
  190. package/node/AdapterLuxon/AdapterLuxon.js +12 -4
  191. package/node/AdapterMoment/AdapterMoment.js +18 -9
  192. package/node/DateCalendar/DateCalendar.js +33 -15
  193. package/node/DateCalendar/DayCalendar.js +24 -17
  194. package/node/DateCalendar/PickersCalendarHeader.js +6 -3
  195. package/node/DateCalendar/useCalendarState.js +6 -3
  196. package/node/DateCalendar/useIsDateDisabled.js +5 -3
  197. package/node/DateField/DateField.js +8 -0
  198. package/node/DatePicker/DatePicker.js +8 -0
  199. package/node/DateTimeField/DateTimeField.js +8 -0
  200. package/node/DateTimePicker/DateTimePicker.js +8 -0
  201. package/node/DesktopDatePicker/DesktopDatePicker.js +8 -0
  202. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +8 -0
  203. package/node/DesktopTimePicker/DesktopTimePicker.js +8 -0
  204. package/node/DigitalClock/DigitalClock.js +28 -15
  205. package/node/MobileDatePicker/MobileDatePicker.js +8 -0
  206. package/node/MobileDateTimePicker/MobileDateTimePicker.js +8 -0
  207. package/node/MobileTimePicker/MobileTimePicker.js +8 -0
  208. package/node/MonthCalendar/MonthCalendar.js +30 -14
  209. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +28 -15
  210. package/node/StaticDatePicker/StaticDatePicker.js +8 -0
  211. package/node/StaticDateTimePicker/StaticDateTimePicker.js +8 -0
  212. package/node/StaticTimePicker/StaticTimePicker.js +8 -0
  213. package/node/TimeClock/TimeClock.js +26 -14
  214. package/node/TimeField/TimeField.js +8 -0
  215. package/node/TimePicker/TimePicker.js +8 -0
  216. package/node/YearCalendar/YearCalendar.js +30 -14
  217. package/node/dateTimeViewRenderers/dateTimeViewRenderers.js +5 -2
  218. package/node/dateViewRenderers/dateViewRenderers.js +4 -2
  219. package/node/index.js +1 -1
  220. package/node/internals/hooks/date-helpers-hooks.js +8 -6
  221. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  222. package/node/internals/hooks/useField/useField.js +23 -7
  223. package/node/internals/hooks/useField/useField.utils.js +55 -43
  224. package/node/internals/hooks/useField/useFieldCharacterEditing.js +6 -5
  225. package/node/internals/hooks/useField/useFieldState.js +33 -21
  226. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +2 -0
  227. package/node/internals/hooks/usePicker/usePickerValue.js +22 -7
  228. package/node/internals/hooks/usePicker/usePickerViews.js +7 -2
  229. package/node/internals/hooks/useUtils.js +5 -2
  230. package/node/internals/hooks/useValueWithTimezone.js +79 -0
  231. package/node/internals/index.js +7 -0
  232. package/node/internals/utils/date-utils.js +4 -3
  233. package/node/internals/utils/fields.js +1 -1
  234. package/node/internals/utils/getDefaultReferenceDate.js +3 -2
  235. package/node/internals/utils/validation/validateDate.js +14 -6
  236. package/node/internals/utils/validation/validateTime.js +8 -8
  237. package/node/internals/utils/valueManagers.js +2 -1
  238. package/node/locales/csCZ.js +2 -2
  239. package/node/tests/describeAdapters/describeAdapters.js +3 -1
  240. package/node/tests/describeGregorianAdapter/testCalculations.js +69 -27
  241. package/node/tests/describeJalaliAdapter/testCalculations.js +21 -0
  242. package/node/timeViewRenderers/timeViewRenderers.js +12 -6
  243. package/package.json +2 -2
  244. package/tests/describeAdapters/describeAdapters.js +3 -1
  245. package/tests/describeGregorianAdapter/testCalculations.js +69 -27
  246. package/tests/describeJalaliAdapter/testCalculations.js +21 -0
  247. package/timeViewRenderers/timeViewRenderers.d.ts +3 -3
  248. package/timeViewRenderers/timeViewRenderers.js +12 -6
@@ -24,8 +24,10 @@ var _dateUtils = require("../internals/utils/date-utils");
24
24
  var _PickerViewRoot = require("../internals/components/PickerViewRoot");
25
25
  var _defaultReduceAnimations = require("../internals/utils/defaultReduceAnimations");
26
26
  var _dateCalendarClasses = require("./dateCalendarClasses");
27
+ var _useValueWithTimezone = require("../internals/hooks/useValueWithTimezone");
28
+ var _valueManagers = require("../internals/utils/valueManagers");
27
29
  var _jsxRuntime = require("react/jsx-runtime");
28
- const _excluded = ["autoFocus", "onViewChange", "value", "defaultValue", "referenceDate", "disableFuture", "disablePast", "defaultCalendarMonth", "onChange", "onYearChange", "onMonthChange", "reduceAnimations", "shouldDisableDate", "shouldDisableMonth", "shouldDisableYear", "view", "views", "openTo", "className", "disabled", "readOnly", "minDate", "maxDate", "disableHighlightToday", "focusedView", "onFocusedViewChange", "showDaysOutsideCurrentMonth", "fixedWeekNumber", "dayOfWeekFormatter", "components", "componentsProps", "slots", "slotProps", "loading", "renderLoading", "displayWeekNumber", "yearsPerRow", "monthsPerRow"];
30
+ const _excluded = ["autoFocus", "onViewChange", "value", "defaultValue", "referenceDate", "disableFuture", "disablePast", "defaultCalendarMonth", "onChange", "onYearChange", "onMonthChange", "reduceAnimations", "shouldDisableDate", "shouldDisableMonth", "shouldDisableYear", "view", "views", "openTo", "className", "disabled", "readOnly", "minDate", "maxDate", "disableHighlightToday", "focusedView", "onFocusedViewChange", "showDaysOutsideCurrentMonth", "fixedWeekNumber", "dayOfWeekFormatter", "components", "componentsProps", "slots", "slotProps", "loading", "renderLoading", "displayWeekNumber", "yearsPerRow", "monthsPerRow", "timezone"];
29
31
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
30
32
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
33
  const useUtilityClasses = ownerState => {
@@ -125,18 +127,21 @@ const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps
125
127
  renderLoading,
126
128
  displayWeekNumber,
127
129
  yearsPerRow,
128
- monthsPerRow
130
+ monthsPerRow,
131
+ timezone: timezoneProp
129
132
  } = props,
130
133
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
131
- const [value, setValue] = (0, _utils.unstable_useControlled)({
134
+ const {
135
+ value,
136
+ handleValueChange,
137
+ timezone
138
+ } = (0, _useValueWithTimezone.useControlledValueWithTimezone)({
132
139
  name: 'DateCalendar',
133
- state: 'value',
134
- controlled: valueProp,
135
- default: defaultValue ?? null
136
- });
137
- const handleValueChange = (0, _utils.unstable_useEventCallback)((newValue, selectionState) => {
138
- setValue(newValue);
139
- onChange?.(newValue, selectionState);
140
+ timezone: timezoneProp,
141
+ value: valueProp,
142
+ defaultValue,
143
+ onChange,
144
+ valueManager: _valueManagers.singleItemValueManager
140
145
  });
141
146
  const {
142
147
  view,
@@ -173,7 +178,8 @@ const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps
173
178
  maxDate,
174
179
  shouldDisableDate,
175
180
  disablePast,
176
- disableFuture
181
+ disableFuture,
182
+ timezone
177
183
  });
178
184
  const handleDateMonthChange = (0, _utils.unstable_useEventCallback)(newDate => {
179
185
  const startOfMonth = utils.startOfMonth(newDate);
@@ -185,7 +191,8 @@ const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps
185
191
  maxDate: utils.isAfter(maxDate, endOfMonth) ? endOfMonth : maxDate,
186
192
  disablePast,
187
193
  disableFuture,
188
- isDateDisabled
194
+ isDateDisabled,
195
+ timezone
189
196
  }) : newDate;
190
197
  if (closestEnabledDate) {
191
198
  setValueAndGoToNextView(closestEnabledDate, 'finish');
@@ -206,7 +213,8 @@ const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps
206
213
  maxDate: utils.isAfter(maxDate, endOfYear) ? endOfYear : maxDate,
207
214
  disablePast,
208
215
  disableFuture,
209
- isDateDisabled
216
+ isDateDisabled,
217
+ timezone
210
218
  }) : newDate;
211
219
  if (closestEnabledDate) {
212
220
  setValueAndGoToNextView(closestEnabledDate, 'finish');
@@ -245,7 +253,8 @@ const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps
245
253
  const commonViewProps = {
246
254
  disableHighlightToday,
247
255
  readOnly,
248
- disabled
256
+ disabled,
257
+ timezone
249
258
  };
250
259
  const gridLabelId = `${id}-grid-label`;
251
260
  const hasFocus = focusedView !== null;
@@ -284,7 +293,8 @@ const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps
284
293
  reduceAnimations: reduceAnimations,
285
294
  labelId: gridLabelId,
286
295
  slots: slots,
287
- slotProps: slotProps
296
+ slotProps: slotProps,
297
+ timezone: timezone
288
298
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(DateCalendarViewTransitionContainer, {
289
299
  reduceAnimations: reduceAnimations,
290
300
  className: classes.viewTransitionContainer,
@@ -536,6 +546,14 @@ process.env.NODE_ENV !== "production" ? DateCalendar.propTypes = {
536
546
  * The system prop that allows defining system overrides as well as additional CSS styles.
537
547
  */
538
548
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
549
+ /**
550
+ * Choose which timezone to use for the value.
551
+ * Example: "default", "system", "UTC", "America/New_York".
552
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
553
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
554
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
555
+ */
556
+ timezone: _propTypes.default.string,
539
557
  /**
540
558
  * The selected value.
541
559
  * Used when the component is controlled.
@@ -146,8 +146,6 @@ function WrappedDay(_ref) {
146
146
  isViewFocused
147
147
  } = _ref,
148
148
  other = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
149
- const utils = (0, _useUtils.useUtils)();
150
- const now = (0, _useUtils.useNow)();
151
149
  const {
152
150
  disabled,
153
151
  disableHighlightToday,
@@ -156,8 +154,11 @@ function WrappedDay(_ref) {
156
154
  components,
157
155
  componentsProps,
158
156
  slots,
159
- slotProps
157
+ slotProps,
158
+ timezone
160
159
  } = parentProps;
160
+ const utils = (0, _useUtils.useUtils)();
161
+ const now = (0, _useUtils.useNow)(timezone);
161
162
  const isFocusableDay = focusableDay !== null && utils.isSameDay(day, focusableDay);
162
163
  const isSelected = selectedDays.some(selectedDay => utils.isSameDay(selectedDay, day));
163
164
  const isToday = utils.isSameDay(day, now);
@@ -215,15 +216,10 @@ function WrappedDay(_ref) {
215
216
  * @ignore - do not document.
216
217
  */
217
218
  function DayCalendar(inProps) {
218
- const now = (0, _useUtils.useNow)();
219
- const utils = (0, _useUtils.useUtils)();
220
219
  const props = (0, _styles.useThemeProps)({
221
220
  props: inProps,
222
221
  name: 'MuiDayCalendar'
223
222
  });
224
- const classes = useUtilityClasses(props);
225
- const theme = (0, _styles.useTheme)();
226
- const isRTL = theme.direction === 'rtl';
227
223
  const {
228
224
  onFocusedDayChange,
229
225
  className,
@@ -253,8 +249,14 @@ function DayCalendar(inProps) {
253
249
  gridLabelId,
254
250
  displayWeekNumber,
255
251
  fixedWeekNumber,
256
- autoFocus
252
+ autoFocus,
253
+ timezone
257
254
  } = props;
255
+ const now = (0, _useUtils.useNow)(timezone);
256
+ const utils = (0, _useUtils.useUtils)();
257
+ const classes = useUtilityClasses(props);
258
+ const theme = (0, _styles.useTheme)();
259
+ const isRTL = theme.direction === 'rtl';
258
260
  const isDateDisabled = (0, _useIsDateDisabled.useIsDateDisabled)({
259
261
  shouldDisableDate,
260
262
  shouldDisableMonth,
@@ -262,7 +264,8 @@ function DayCalendar(inProps) {
262
264
  minDate,
263
265
  maxDate,
264
266
  disablePast,
265
- disableFuture
267
+ disableFuture,
268
+ timezone
266
269
  });
267
270
  const localeText = (0, _useUtils.useLocaleText)();
268
271
  const [internalHasFocus, setInternalHasFocus] = (0, _utils2.unstable_useControlled)({
@@ -305,7 +308,8 @@ function DayCalendar(inProps) {
305
308
  date: newFocusedDayDefault,
306
309
  minDate: isRTL ? newFocusedDayDefault : utils.startOfMonth(nextAvailableMonth),
307
310
  maxDate: isRTL ? utils.endOfMonth(nextAvailableMonth) : newFocusedDayDefault,
308
- isDateDisabled
311
+ isDateDisabled,
312
+ timezone
309
313
  });
310
314
  focusDay(closestDayToFocus || newFocusedDayDefault);
311
315
  event.preventDefault();
@@ -320,7 +324,8 @@ function DayCalendar(inProps) {
320
324
  date: newFocusedDayDefault,
321
325
  minDate: isRTL ? utils.startOfMonth(nextAvailableMonth) : newFocusedDayDefault,
322
326
  maxDate: isRTL ? newFocusedDayDefault : utils.endOfMonth(nextAvailableMonth),
323
- isDateDisabled
327
+ isDateDisabled,
328
+ timezone
324
329
  });
325
330
  focusDay(closestDayToFocus || newFocusedDayDefault);
326
331
  event.preventDefault();
@@ -371,14 +376,16 @@ function DayCalendar(inProps) {
371
376
  maxDate: endOfMonth,
372
377
  disablePast,
373
378
  disableFuture,
374
- isDateDisabled
379
+ isDateDisabled,
380
+ timezone
375
381
  });
376
382
  }
377
383
  return internalFocusedDay;
378
- }, [currentMonth, disableFuture, disablePast, internalFocusedDay, isDateDisabled, utils]);
384
+ }, [currentMonth, disableFuture, disablePast, internalFocusedDay, isDateDisabled, utils, timezone]);
379
385
  const weeksToDisplay = React.useMemo(() => {
380
- const toDisplay = utils.getWeekArray(currentMonth);
381
- let nextMonth = utils.addMonths(currentMonth, 1);
386
+ const currentMonthWithTimezone = utils.setTimezone(currentMonth, timezone);
387
+ const toDisplay = utils.getWeekArray(currentMonthWithTimezone);
388
+ let nextMonth = utils.addMonths(currentMonthWithTimezone, 1);
382
389
  while (fixedWeekNumber && toDisplay.length < fixedWeekNumber) {
383
390
  const additionalWeeks = utils.getWeekArray(nextMonth);
384
391
  const hasCommonWeek = utils.isSameDay(toDisplay[toDisplay.length - 1][0], additionalWeeks[0][0]);
@@ -390,7 +397,7 @@ function DayCalendar(inProps) {
390
397
  nextMonth = utils.addMonths(nextMonth, 1);
391
398
  }
392
399
  return toDisplay;
393
- }, [currentMonth, fixedWeekNumber, utils]);
400
+ }, [currentMonth, fixedWeekNumber, utils, timezone]);
394
401
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
395
402
  role: "grid",
396
403
  "aria-labelledby": gridLabelId,
@@ -122,7 +122,8 @@ function PickersCalendarHeader(inProps) {
122
122
  view,
123
123
  reduceAnimations,
124
124
  views,
125
- labelId
125
+ labelId,
126
+ timezone
126
127
  } = props;
127
128
  const ownerState = props;
128
129
  const classes = useUtilityClasses(props);
@@ -150,11 +151,13 @@ function PickersCalendarHeader(inProps) {
150
151
  const selectPreviousMonth = () => onMonthChange(utils.addMonths(month, -1), 'right');
151
152
  const isNextMonthDisabled = (0, _dateHelpersHooks.useNextMonthDisabled)(month, {
152
153
  disableFuture,
153
- maxDate
154
+ maxDate,
155
+ timezone
154
156
  });
155
157
  const isPreviousMonthDisabled = (0, _dateHelpersHooks.usePreviousMonthDisabled)(month, {
156
158
  disablePast,
157
- minDate
159
+ minDate,
160
+ timezone
158
161
  });
159
162
  const handleToggleView = () => {
160
163
  if (views.length === 1 || !onViewChange || disabled) {
@@ -56,9 +56,10 @@ const useCalendarState = params => {
56
56
  minDate,
57
57
  onMonthChange,
58
58
  reduceAnimations,
59
- shouldDisableDate
59
+ shouldDisableDate,
60
+ timezone
60
61
  } = params;
61
- const now = (0, _useUtils.useNow)();
62
+ const now = (0, _useUtils.useNow)(timezone);
62
63
  const utils = (0, _useUtils.useUtils)();
63
64
  const reducerFn = React.useRef(createCalendarStateReducer(Boolean(reduceAnimations), disableSwitchToMonthOnDayFocus, utils)).current;
64
65
  const referenceDate = React.useMemo(() => {
@@ -72,6 +73,7 @@ const useCalendarState = params => {
72
73
  return _valueManagers.singleItemValueManager.getInitialReferenceValue({
73
74
  value,
74
75
  utils,
76
+ timezone,
75
77
  props: params,
76
78
  referenceDate: externalReferenceDate,
77
79
  granularity: _getDefaultReferenceDate.SECTION_TYPE_GRANULARITY.day
@@ -108,7 +110,8 @@ const useCalendarState = params => {
108
110
  minDate,
109
111
  maxDate,
110
112
  disableFuture,
111
- disablePast
113
+ disablePast,
114
+ timezone
112
115
  });
113
116
  const onMonthSwitchingAnimationEnd = React.useCallback(() => {
114
117
  dispatch({
@@ -16,7 +16,8 @@ const useIsDateDisabled = ({
16
16
  minDate,
17
17
  maxDate,
18
18
  disableFuture,
19
- disablePast
19
+ disablePast,
20
+ timezone
20
21
  }) => {
21
22
  const adapter = (0, _useUtils.useLocalizationContext)();
22
23
  return React.useCallback(day => (0, _validateDate.validateDate)({
@@ -29,8 +30,9 @@ const useIsDateDisabled = ({
29
30
  minDate,
30
31
  maxDate,
31
32
  disableFuture,
32
- disablePast
33
+ disablePast,
34
+ timezone
33
35
  }
34
- }) !== null, [adapter, shouldDisableDate, shouldDisableMonth, shouldDisableYear, minDate, maxDate, disableFuture, disablePast]);
36
+ }) !== null, [adapter, shouldDisableDate, shouldDisableMonth, shouldDisableYear, minDate, maxDate, disableFuture, disablePast, timezone]);
35
37
  };
36
38
  exports.useIsDateDisabled = useIsDateDisabled;
@@ -317,6 +317,14 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
317
317
  * The system prop that allows defining system overrides as well as additional CSS styles.
318
318
  */
319
319
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
320
+ /**
321
+ * Choose which timezone to use for the value.
322
+ * Example: "default", "system", "UTC", "America/New_York".
323
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
324
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
325
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
326
+ */
327
+ timezone: _propTypes.default.string,
320
328
  /**
321
329
  * The ref object used to imperatively interact with the field.
322
330
  */
@@ -320,6 +320,14 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
320
320
  * The system prop that allows defining system overrides as well as additional CSS styles.
321
321
  */
322
322
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
323
+ /**
324
+ * Choose which timezone to use for the value.
325
+ * Example: "default", "system", "UTC", "America/New_York".
326
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
327
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
328
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
329
+ */
330
+ timezone: _propTypes.default.string,
323
331
  /**
324
332
  * The selected value.
325
333
  * Used when the component is controlled.
@@ -366,6 +366,14 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
366
366
  * The system prop that allows defining system overrides as well as additional CSS styles.
367
367
  */
368
368
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
369
+ /**
370
+ * Choose which timezone to use for the value.
371
+ * Example: "default", "system", "UTC", "America/New_York".
372
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
373
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
374
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
375
+ */
376
+ timezone: _propTypes.default.string,
369
377
  /**
370
378
  * The ref object used to imperatively interact with the field.
371
379
  */
@@ -390,6 +390,14 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
390
390
  minutes: _propTypes.default.number,
391
391
  seconds: _propTypes.default.number
392
392
  }),
393
+ /**
394
+ * Choose which timezone to use for the value.
395
+ * Example: "default", "system", "UTC", "America/New_York".
396
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
397
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
398
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
399
+ */
400
+ timezone: _propTypes.default.string,
393
401
  /**
394
402
  * The selected value.
395
403
  * Used when the component is controlled.
@@ -334,6 +334,14 @@ DesktopDatePicker.propTypes = {
334
334
  * The system prop that allows defining system overrides as well as additional CSS styles.
335
335
  */
336
336
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
337
+ /**
338
+ * Choose which timezone to use for the value.
339
+ * Example: "default", "system", "UTC", "America/New_York".
340
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
341
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
342
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
343
+ */
344
+ timezone: _propTypes.default.string,
337
345
  /**
338
346
  * The selected value.
339
347
  * Used when the component is controlled.
@@ -440,6 +440,14 @@ DesktopDateTimePicker.propTypes = {
440
440
  minutes: _propTypes.default.number,
441
441
  seconds: _propTypes.default.number
442
442
  }),
443
+ /**
444
+ * Choose which timezone to use for the value.
445
+ * Example: "default", "system", "UTC", "America/New_York".
446
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
447
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
448
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
449
+ */
450
+ timezone: _propTypes.default.string,
443
451
  /**
444
452
  * The selected value.
445
453
  * Used when the component is controlled.
@@ -324,6 +324,14 @@ DesktopTimePicker.propTypes = {
324
324
  minutes: _propTypes.default.number,
325
325
  seconds: _propTypes.default.number
326
326
  }),
327
+ /**
328
+ * Choose which timezone to use for the value.
329
+ * Example: "default", "system", "UTC", "America/New_York".
330
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
331
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
332
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
333
+ */
334
+ timezone: _propTypes.default.string,
327
335
  /**
328
336
  * The selected value.
329
337
  * Used when the component is controlled.
@@ -13,7 +13,6 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _styles = require("@mui/material/styles");
14
14
  var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
15
15
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
16
- var _useControlled = _interopRequireDefault(require("@mui/utils/useControlled"));
17
16
  var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
18
17
  var _MenuList = _interopRequireDefault(require("@mui/material/MenuList"));
19
18
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
@@ -23,8 +22,10 @@ var _PickerViewRoot = require("../internals/components/PickerViewRoot");
23
22
  var _digitalClockClasses = require("./digitalClockClasses");
24
23
  var _useViews = require("../internals/hooks/useViews");
25
24
  var _dimensions = require("../internals/constants/dimensions");
25
+ var _useValueWithTimezone = require("../internals/hooks/useValueWithTimezone");
26
+ var _valueManagers = require("../internals/utils/valueManagers");
26
27
  var _jsxRuntime = require("react/jsx-runtime");
27
- const _excluded = ["ampm", "timeStep", "autoFocus", "components", "componentsProps", "slots", "slotProps", "value", "disableIgnoringDatePartForTimeValidation", "maxTime", "minTime", "disableFuture", "disablePast", "minutesStep", "shouldDisableClock", "shouldDisableTime", "onChange", "defaultValue", "view", "openTo", "onViewChange", "focusedView", "onFocusedViewChange", "className", "disabled", "readOnly", "views", "skipDisabled"];
28
+ const _excluded = ["ampm", "timeStep", "autoFocus", "components", "componentsProps", "slots", "slotProps", "value", "disableIgnoringDatePartForTimeValidation", "maxTime", "minTime", "disableFuture", "disablePast", "minutesStep", "shouldDisableClock", "shouldDisableTime", "onChange", "defaultValue", "view", "openTo", "onViewChange", "focusedView", "onFocusedViewChange", "className", "disabled", "readOnly", "views", "skipDisabled", "timezone"];
28
29
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
30
31
  const useUtilityClasses = ownerState => {
@@ -84,11 +85,9 @@ const DigitalClockItem = (0, _styles.styled)(_MenuItem.default, {
84
85
  }
85
86
  }));
86
87
  const DigitalClock = /*#__PURE__*/React.forwardRef(function DigitalClock(inProps, ref) {
87
- const now = (0, _useUtils.useNow)();
88
88
  const utils = (0, _useUtils.useUtils)();
89
89
  const containerRef = React.useRef(null);
90
90
  const handleRef = (0, _useForkRef.default)(ref, containerRef);
91
- const localeText = (0, _useUtils.useLocaleText)();
92
91
  const props = (0, _styles.useThemeProps)({
93
92
  props: inProps,
94
93
  name: 'MuiDigitalClock'
@@ -121,25 +120,31 @@ const DigitalClock = /*#__PURE__*/React.forwardRef(function DigitalClock(inProps
121
120
  disabled,
122
121
  readOnly,
123
122
  views = ['hours'],
124
- skipDisabled = false
123
+ skipDisabled = false,
124
+ timezone: timezoneProp
125
125
  } = props,
126
126
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
127
+ const {
128
+ value,
129
+ handleValueChange: handleRawValueChange,
130
+ timezone
131
+ } = (0, _useValueWithTimezone.useControlledValueWithTimezone)({
132
+ name: 'DigitalClock',
133
+ timezone: timezoneProp,
134
+ value: valueProp,
135
+ defaultValue,
136
+ onChange,
137
+ valueManager: _valueManagers.singleItemValueManager
138
+ });
139
+ const localeText = (0, _useUtils.useLocaleText)();
140
+ const now = (0, _useUtils.useNow)(timezone);
127
141
  const ownerState = React.useMemo(() => (0, _extends2.default)({}, props, {
128
142
  alreadyRendered: !!containerRef.current
129
143
  }), [props]);
130
144
  const classes = useUtilityClasses(ownerState);
131
145
  const ClockItem = slots?.digitalClockItem ?? components?.DigitalClockItem ?? DigitalClockItem;
132
146
  const clockItemProps = slotProps?.digitalClockItem ?? componentsProps?.digitalClockItem;
133
- const [value, setValue] = (0, _useControlled.default)({
134
- name: 'DigitalClock',
135
- state: 'value',
136
- controlled: valueProp,
137
- default: defaultValue ?? null
138
- });
139
- const handleValueChange = (0, _useEventCallback.default)(newValue => {
140
- setValue(newValue);
141
- onChange?.(newValue, 'finish');
142
- });
147
+ const handleValueChange = (0, _useEventCallback.default)(newValue => handleRawValueChange(newValue, 'finish'));
143
148
  const {
144
149
  setValueAndGoToNextView
145
150
  } = (0, _useViews.useViews)({
@@ -388,6 +393,14 @@ process.env.NODE_ENV !== "production" ? DigitalClock.propTypes = {
388
393
  * @default 30
389
394
  */
390
395
  timeStep: _propTypes.default.number,
396
+ /**
397
+ * Choose which timezone to use for the value.
398
+ * Example: "default", "system", "UTC", "America/New_York".
399
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
400
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
401
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
402
+ */
403
+ timezone: _propTypes.default.string,
391
404
  /**
392
405
  * The selected value.
393
406
  * Used when the component is controlled.
@@ -331,6 +331,14 @@ MobileDatePicker.propTypes = {
331
331
  * The system prop that allows defining system overrides as well as additional CSS styles.
332
332
  */
333
333
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
334
+ /**
335
+ * Choose which timezone to use for the value.
336
+ * Example: "default", "system", "UTC", "America/New_York".
337
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
338
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
339
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
340
+ */
341
+ timezone: _propTypes.default.string,
334
342
  /**
335
343
  * The selected value.
336
344
  * Used when the component is controlled.
@@ -396,6 +396,14 @@ MobileDateTimePicker.propTypes = {
396
396
  * The system prop that allows defining system overrides as well as additional CSS styles.
397
397
  */
398
398
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
399
+ /**
400
+ * Choose which timezone to use for the value.
401
+ * Example: "default", "system", "UTC", "America/New_York".
402
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
403
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
404
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
405
+ */
406
+ timezone: _propTypes.default.string,
399
407
  /**
400
408
  * The selected value.
401
409
  * Used when the component is controlled.
@@ -281,6 +281,14 @@ MobileTimePicker.propTypes = {
281
281
  * The system prop that allows defining system overrides as well as additional CSS styles.
282
282
  */
283
283
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
284
+ /**
285
+ * Choose which timezone to use for the value.
286
+ * Example: "default", "system", "UTC", "America/New_York".
287
+ * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
288
+ * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documention} for more details.
289
+ * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
290
+ */
291
+ timezone: _propTypes.default.string,
284
292
  /**
285
293
  * The selected value.
286
294
  * Used when the component is controlled.