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

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 (252) hide show
  1. package/CHANGELOG.md +342 -0
  2. package/DateCalendar/DateCalendar.types.d.ts +6 -6
  3. package/DateCalendar/DayCalendar.d.ts +4 -4
  4. package/DateCalendar/index.d.ts +1 -1
  5. package/DateField/DateField.js +17 -50
  6. package/DateField/DateField.types.d.ts +5 -9
  7. package/DateField/useDateField.d.ts +2 -2
  8. package/DateField/useDateField.js +1 -5
  9. package/DatePicker/DatePicker.js +5 -1
  10. package/DatePicker/DatePicker.types.d.ts +6 -6
  11. package/DatePicker/index.d.ts +1 -1
  12. package/DatePicker/shared.d.ts +6 -6
  13. package/DateTimeField/DateTimeField.js +17 -50
  14. package/DateTimeField/DateTimeField.types.d.ts +5 -9
  15. package/DateTimeField/useDateTimeField.d.ts +2 -2
  16. package/DateTimeField/useDateTimeField.js +1 -5
  17. package/DateTimePicker/DateTimePicker.js +5 -1
  18. package/DateTimePicker/DateTimePicker.types.d.ts +6 -6
  19. package/DateTimePicker/index.d.ts +1 -1
  20. package/DateTimePicker/shared.d.ts +6 -6
  21. package/DesktopDatePicker/DesktopDatePicker.js +7 -2
  22. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +6 -6
  23. package/DesktopDatePicker/index.d.ts +1 -1
  24. package/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  25. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +8 -8
  26. package/DesktopDateTimePicker/index.d.ts +1 -1
  27. package/DesktopTimePicker/DesktopTimePicker.js +5 -1
  28. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +8 -8
  29. package/DesktopTimePicker/index.d.ts +1 -1
  30. package/DigitalClock/DigitalClock.types.d.ts +4 -4
  31. package/DigitalClock/index.d.ts +1 -1
  32. package/MobileDatePicker/MobileDatePicker.js +7 -2
  33. package/MobileDatePicker/MobileDatePicker.types.d.ts +6 -6
  34. package/MobileDatePicker/index.d.ts +1 -1
  35. package/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  36. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +6 -6
  37. package/MobileDateTimePicker/index.d.ts +1 -1
  38. package/MobileTimePicker/MobileTimePicker.js +5 -1
  39. package/MobileTimePicker/MobileTimePicker.types.d.ts +6 -6
  40. package/MobileTimePicker/index.d.ts +1 -1
  41. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +4 -4
  42. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +3 -3
  43. package/MultiSectionDigitalClock/index.d.ts +1 -1
  44. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +8 -8
  45. package/PickersCalendarHeader/index.d.ts +1 -1
  46. package/PickersLayout/PickersLayout.types.d.ts +6 -6
  47. package/PickersLayout/index.d.ts +1 -1
  48. package/PickersSectionList/PickersSectionList.d.ts +11 -0
  49. package/PickersSectionList/PickersSectionList.js +223 -0
  50. package/PickersSectionList/PickersSectionList.types.d.ts +56 -0
  51. package/PickersSectionList/index.d.ts +4 -0
  52. package/PickersSectionList/index.js +2 -0
  53. package/PickersSectionList/package.json +6 -0
  54. package/PickersSectionList/pickersSectionListClasses.d.ts +11 -0
  55. package/PickersSectionList/pickersSectionListClasses.js +6 -0
  56. package/StaticDatePicker/StaticDatePicker.js +1 -1
  57. package/StaticDatePicker/StaticDatePicker.types.d.ts +7 -7
  58. package/StaticDatePicker/index.d.ts +1 -1
  59. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +7 -7
  60. package/StaticDateTimePicker/index.d.ts +1 -1
  61. package/StaticTimePicker/StaticTimePicker.types.d.ts +7 -7
  62. package/StaticTimePicker/index.d.ts +1 -1
  63. package/TimeClock/TimeClock.types.d.ts +5 -5
  64. package/TimeClock/index.d.ts +1 -1
  65. package/TimeField/TimeField.js +17 -50
  66. package/TimeField/TimeField.types.d.ts +5 -9
  67. package/TimeField/useTimeField.d.ts +2 -2
  68. package/TimeField/useTimeField.js +1 -5
  69. package/TimePicker/TimePicker.js +5 -1
  70. package/TimePicker/TimePicker.types.d.ts +6 -6
  71. package/TimePicker/index.d.ts +1 -1
  72. package/TimePicker/shared.d.ts +5 -5
  73. package/hooks/index.d.ts +1 -0
  74. package/hooks/useClearableField.d.ts +32 -20
  75. package/hooks/useClearableField.js +32 -33
  76. package/index.d.ts +1 -0
  77. package/index.js +4 -1
  78. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +9 -9
  79. package/internals/components/PickersArrowSwitcher/index.d.ts +3 -1
  80. package/internals/components/PickersArrowSwitcher/index.js +2 -1
  81. package/internals/components/{PickersTextField → PickersInput}/Outline.d.ts +1 -0
  82. package/internals/components/{PickersTextField → PickersInput}/Outline.js +35 -19
  83. package/internals/components/PickersInput/PickersFilledInput.d.ts +3 -0
  84. package/internals/components/PickersInput/PickersFilledInput.js +166 -0
  85. package/internals/components/PickersInput/PickersInput.d.ts +15 -0
  86. package/internals/components/{PickersTextField → PickersInput}/PickersInput.js +78 -106
  87. package/internals/components/PickersInput/PickersInput.types.d.ts +60 -0
  88. package/internals/components/PickersInput/PickersOutlinedInput.d.ts +3 -0
  89. package/internals/components/PickersInput/PickersOutlinedInput.js +117 -0
  90. package/internals/components/PickersInput/PickersStandardInput.d.ts +3 -0
  91. package/internals/components/PickersInput/PickersStandardInput.js +123 -0
  92. package/internals/components/PickersInput/index.d.ts +4 -0
  93. package/internals/components/PickersInput/index.js +3 -0
  94. package/internals/components/PickersInput/pickersInputClasses.d.ts +84 -0
  95. package/internals/components/PickersInput/pickersInputClasses.js +18 -0
  96. package/internals/components/PickersModalDialog.d.ts +4 -4
  97. package/internals/components/PickersPopper.d.ts +4 -4
  98. package/internals/components/PickersTextField/PickersTextField.d.ts +1 -2
  99. package/internals/components/PickersTextField/PickersTextField.js +15 -6
  100. package/internals/components/PickersTextField/PickersTextField.types.d.ts +46 -3
  101. package/internals/components/PickersTextField/pickersTextFieldClasses.d.ts +0 -31
  102. package/internals/components/PickersTextField/pickersTextFieldClasses.js +3 -6
  103. package/internals/hooks/useDesktopPicker/index.d.ts +1 -1
  104. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  105. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +8 -8
  106. package/internals/hooks/useField/index.d.ts +1 -1
  107. package/internals/hooks/useField/useField.js +11 -4
  108. package/internals/hooks/useField/useField.types.d.ts +4 -24
  109. package/internals/hooks/useField/useField.utils.js +24 -4
  110. package/internals/hooks/useField/useFieldState.js +7 -3
  111. package/internals/hooks/useMobilePicker/index.d.ts +1 -1
  112. package/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  113. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
  114. package/internals/hooks/useStaticPicker/index.d.ts +1 -1
  115. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +5 -5
  116. package/internals/index.d.ts +7 -6
  117. package/internals/index.js +1 -0
  118. package/internals/models/props/basePickerProps.d.ts +4 -0
  119. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +3 -0
  120. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +26 -0
  121. package/legacy/DateField/DateField.js +19 -47
  122. package/legacy/DateField/useDateField.js +1 -4
  123. package/legacy/DatePicker/DatePicker.js +5 -1
  124. package/legacy/DateTimeField/DateTimeField.js +19 -47
  125. package/legacy/DateTimeField/useDateTimeField.js +1 -4
  126. package/legacy/DateTimePicker/DateTimePicker.js +5 -1
  127. package/legacy/DesktopDatePicker/DesktopDatePicker.js +7 -2
  128. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  129. package/legacy/DesktopTimePicker/DesktopTimePicker.js +5 -1
  130. package/legacy/MobileDatePicker/MobileDatePicker.js +7 -2
  131. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  132. package/legacy/MobileTimePicker/MobileTimePicker.js +5 -1
  133. package/legacy/PickersSectionList/PickersSectionList.js +230 -0
  134. package/legacy/PickersSectionList/index.js +2 -0
  135. package/legacy/PickersSectionList/pickersSectionListClasses.js +6 -0
  136. package/legacy/StaticDatePicker/StaticDatePicker.js +1 -1
  137. package/legacy/TimeField/TimeField.js +19 -47
  138. package/legacy/TimeField/useTimeField.js +1 -4
  139. package/legacy/TimePicker/TimePicker.js +5 -1
  140. package/legacy/hooks/useClearableField.js +30 -32
  141. package/legacy/index.js +4 -1
  142. package/legacy/internals/components/PickersArrowSwitcher/index.js +2 -1
  143. package/legacy/internals/components/{PickersTextField → PickersInput}/Outline.js +40 -22
  144. package/legacy/internals/components/PickersInput/PickersFilledInput.js +161 -0
  145. package/legacy/internals/components/{PickersTextField → PickersInput}/PickersInput.js +75 -90
  146. package/legacy/internals/components/PickersInput/PickersInput.types.js +1 -0
  147. package/legacy/internals/components/PickersInput/PickersOutlinedInput.js +110 -0
  148. package/legacy/internals/components/PickersInput/PickersStandardInput.js +117 -0
  149. package/legacy/internals/components/PickersInput/index.js +3 -0
  150. package/legacy/internals/components/PickersInput/pickersInputClasses.js +18 -0
  151. package/legacy/internals/components/PickersTextField/PickersTextField.js +16 -7
  152. package/legacy/internals/components/PickersTextField/pickersTextFieldClasses.js +3 -6
  153. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  154. package/legacy/internals/hooks/useField/useField.js +12 -5
  155. package/legacy/internals/hooks/useField/useField.utils.js +26 -4
  156. package/legacy/internals/hooks/useField/useFieldState.js +7 -3
  157. package/legacy/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  158. package/legacy/internals/index.js +1 -0
  159. package/legacy/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +24 -0
  160. package/legacy/locales/ruRU.js +1 -2
  161. package/locales/ruRU.js +1 -2
  162. package/models/fields.d.ts +2 -1
  163. package/modern/DateField/DateField.js +17 -50
  164. package/modern/DateField/useDateField.js +1 -5
  165. package/modern/DatePicker/DatePicker.js +5 -1
  166. package/modern/DateTimeField/DateTimeField.js +17 -50
  167. package/modern/DateTimeField/useDateTimeField.js +1 -5
  168. package/modern/DateTimePicker/DateTimePicker.js +5 -1
  169. package/modern/DesktopDatePicker/DesktopDatePicker.js +7 -2
  170. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  171. package/modern/DesktopTimePicker/DesktopTimePicker.js +5 -1
  172. package/modern/MobileDatePicker/MobileDatePicker.js +7 -2
  173. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  174. package/modern/MobileTimePicker/MobileTimePicker.js +5 -1
  175. package/modern/PickersSectionList/PickersSectionList.js +221 -0
  176. package/modern/PickersSectionList/PickersSectionList.types.js +1 -0
  177. package/modern/PickersSectionList/index.js +2 -0
  178. package/modern/PickersSectionList/pickersSectionListClasses.js +6 -0
  179. package/modern/StaticDatePicker/StaticDatePicker.js +1 -1
  180. package/modern/TimeField/TimeField.js +17 -50
  181. package/modern/TimeField/useTimeField.js +1 -5
  182. package/modern/TimePicker/TimePicker.js +5 -1
  183. package/modern/hooks/useClearableField.js +32 -33
  184. package/modern/index.js +4 -1
  185. package/modern/internals/components/PickersArrowSwitcher/index.js +2 -1
  186. package/modern/internals/components/{PickersTextField → PickersInput}/Outline.js +35 -19
  187. package/modern/internals/components/PickersInput/PickersFilledInput.js +165 -0
  188. package/modern/internals/components/{PickersTextField → PickersInput}/PickersInput.js +78 -106
  189. package/modern/internals/components/PickersInput/PickersInput.types.js +1 -0
  190. package/modern/internals/components/PickersInput/PickersOutlinedInput.js +117 -0
  191. package/modern/internals/components/PickersInput/PickersStandardInput.js +123 -0
  192. package/modern/internals/components/PickersInput/index.js +3 -0
  193. package/modern/internals/components/PickersInput/pickersInputClasses.js +18 -0
  194. package/modern/internals/components/PickersTextField/PickersTextField.js +15 -6
  195. package/modern/internals/components/PickersTextField/pickersTextFieldClasses.js +3 -6
  196. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  197. package/modern/internals/hooks/useField/useField.js +11 -4
  198. package/modern/internals/hooks/useField/useField.utils.js +24 -4
  199. package/modern/internals/hooks/useField/useFieldState.js +7 -3
  200. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  201. package/modern/internals/index.js +1 -0
  202. package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +26 -0
  203. package/modern/locales/ruRU.js +1 -2
  204. package/node/DateField/DateField.js +18 -51
  205. package/node/DateField/useDateField.js +1 -5
  206. package/node/DatePicker/DatePicker.js +5 -1
  207. package/node/DateTimeField/DateTimeField.js +18 -51
  208. package/node/DateTimeField/useDateTimeField.js +1 -5
  209. package/node/DateTimePicker/DateTimePicker.js +5 -1
  210. package/node/DesktopDatePicker/DesktopDatePicker.js +10 -5
  211. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  212. package/node/DesktopTimePicker/DesktopTimePicker.js +5 -1
  213. package/node/MobileDatePicker/MobileDatePicker.js +10 -5
  214. package/node/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  215. package/node/MobileTimePicker/MobileTimePicker.js +5 -1
  216. package/node/PickersSectionList/PickersSectionList.js +228 -0
  217. package/node/PickersSectionList/index.js +49 -0
  218. package/node/PickersSectionList/pickersSectionListClasses.js +14 -0
  219. package/node/StaticDatePicker/StaticDatePicker.js +2 -2
  220. package/node/TimeField/TimeField.js +18 -51
  221. package/node/TimeField/useTimeField.js +1 -5
  222. package/node/TimePicker/TimePicker.js +5 -1
  223. package/node/hooks/useClearableField.js +33 -34
  224. package/node/index.js +13 -1
  225. package/node/internals/components/PickersArrowSwitcher/index.js +14 -1
  226. package/node/internals/components/{PickersTextField → PickersInput}/Outline.js +35 -19
  227. package/node/internals/components/PickersInput/PickersFilledInput.js +174 -0
  228. package/node/internals/components/{PickersTextField → PickersInput}/PickersInput.js +80 -108
  229. package/node/internals/components/PickersInput/PickersInput.types.js +5 -0
  230. package/node/internals/components/PickersInput/PickersOutlinedInput.js +125 -0
  231. package/node/internals/components/PickersInput/PickersStandardInput.js +132 -0
  232. package/node/internals/components/PickersInput/index.js +32 -0
  233. package/node/internals/components/PickersInput/pickersInputClasses.js +29 -0
  234. package/node/internals/components/PickersTextField/PickersTextField.js +15 -6
  235. package/node/internals/components/PickersTextField/pickersTextFieldClasses.js +6 -9
  236. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  237. package/node/internals/hooks/useField/useField.js +11 -4
  238. package/node/internals/hooks/useField/useField.utils.js +24 -4
  239. package/node/internals/hooks/useField/useFieldState.js +7 -3
  240. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  241. package/node/internals/index.js +7 -0
  242. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +34 -0
  243. package/node/locales/ruRU.js +1 -2
  244. package/package.json +5 -5
  245. package/themeAugmentation/overrides.d.ts +5 -7
  246. package/themeAugmentation/props.d.ts +6 -8
  247. package/internals/components/PickersTextField/PickersInput.d.ts +0 -3
  248. package/internals/components/PickersTextField/PickersInput.types.d.ts +0 -45
  249. /package/{internals/components/PickersTextField/PickersInput.types.js → PickersSectionList/PickersSectionList.types.js} +0 -0
  250. /package/{legacy/internals/components/PickersTextField → internals/components/PickersInput}/PickersInput.types.js +0 -0
  251. /package/{modern/internals/components/PickersTextField/PickersInput.types.js → legacy/PickersSectionList/PickersSectionList.types.js} +0 -0
  252. /package/node/{internals/components/PickersTextField/PickersInput.types.js → PickersSectionList/PickersSectionList.types.js} +0 -0
@@ -16,11 +16,18 @@ var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
16
16
  var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
17
17
  var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
18
18
  var _pickersTextFieldClasses = require("./pickersTextFieldClasses");
19
- var _PickersInput = require("./PickersInput");
19
+ var _PickersOutlinedInput = require("../PickersInput/PickersOutlinedInput");
20
+ var _PickersFilledInput = require("../PickersInput/PickersFilledInput");
21
+ var _PickersStandardInput = require("../PickersInput/PickersStandardInput");
20
22
  var _jsxRuntime = require("react/jsx-runtime");
21
- const _excluded = ["onFocus", "onBlur", "className", "color", "disabled", "error", "required", "variant", "InputProps", "inputProps", "inputRef", "sectionsContainerRef", "elements", "areAllSectionsEmpty", "onClick", "onKeyDown", "onKeyUp", "onPaste", "onInput", "endAdornment", "startAdornment", "tabIndex", "contentEditable", "focused", "value", "onChange", "fullWidth", "id", "helperText", "FormHelperTextProps", "label", "InputLabelProps"];
23
+ const _excluded = ["onFocus", "onBlur", "className", "color", "disabled", "error", "variant", "required", "InputProps", "inputProps", "inputRef", "sectionListRef", "elements", "areAllSectionsEmpty", "onClick", "onKeyDown", "onKeyUp", "onPaste", "onInput", "endAdornment", "startAdornment", "tabIndex", "contentEditable", "focused", "value", "onChange", "fullWidth", "id", "helperText", "FormHelperTextProps", "label", "InputLabelProps"];
22
24
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
23
25
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
26
+ const VARIANT_COMPONENT = {
27
+ standard: _PickersStandardInput.PickersStandardInput,
28
+ filled: _PickersFilledInput.PickersFilledInput,
29
+ outlined: _PickersOutlinedInput.PickersOutlinedInput
30
+ };
24
31
  const PickersTextFieldRoot = (0, _styles.styled)(_FormControl.default, {
25
32
  name: 'MuiPickersTextField',
26
33
  slot: 'Root',
@@ -47,13 +54,13 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
47
54
  color = 'primary',
48
55
  disabled = false,
49
56
  error = false,
50
- required = false,
51
57
  variant = 'outlined',
58
+ required = false,
52
59
  // Props used by PickersInput
53
60
  InputProps,
54
61
  inputProps,
55
62
  inputRef,
56
- sectionsContainerRef,
63
+ sectionListRef,
57
64
  elements,
58
65
  areAllSectionsEmpty,
59
66
  onClick,
@@ -91,6 +98,7 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
91
98
  variant
92
99
  });
93
100
  const classes = useUtilityClasses(ownerState);
101
+ const PickersInputComponent = VARIANT_COMPONENT[variant];
94
102
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(PickersTextFieldRoot, (0, _extends2.default)({
95
103
  className: (0, _clsx.default)(classes.root, className),
96
104
  ref: handleRootRef,
@@ -101,6 +109,7 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
101
109
  variant: variant,
102
110
  error: error,
103
111
  color: color,
112
+ fullWidth: fullWidth,
104
113
  required: required,
105
114
  ownerState: ownerState
106
115
  }, other, {
@@ -109,7 +118,7 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
109
118
  id: inputLabelId
110
119
  }, InputLabelProps, {
111
120
  children: label
112
- })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersInput.PickersInput, (0, _extends2.default)({
121
+ })), /*#__PURE__*/(0, _jsxRuntime.jsx)(PickersInputComponent, (0, _extends2.default)({
113
122
  elements: elements,
114
123
  areAllSectionsEmpty: areAllSectionsEmpty,
115
124
  onClick: onClick,
@@ -126,7 +135,7 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
126
135
  fullWidth: fullWidth,
127
136
  inputProps: inputProps,
128
137
  inputRef: inputRef,
129
- sectionsContainerRef: sectionsContainerRef,
138
+ sectionListRef: sectionListRef,
130
139
  label: label
131
140
  }, InputProps)), helperText && /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormHelperText.default, (0, _extends2.default)({
132
141
  id: helperTextId
@@ -1,17 +1,14 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.getPickersInputUtilityClass = getPickersInputUtilityClass;
7
7
  exports.getPickersTextFieldUtilityClass = getPickersTextFieldUtilityClass;
8
- exports.pickersTextFieldClasses = exports.pickersInputClasses = void 0;
9
- var _utils = require("@mui/utils");
8
+ exports.pickersTextFieldClasses = void 0;
9
+ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateUtilityClass"));
10
+ var _generateUtilityClasses = _interopRequireDefault(require("@mui/utils/generateUtilityClasses"));
10
11
  function getPickersTextFieldUtilityClass(slot) {
11
- return (0, _utils.unstable_generateUtilityClass)('MuiPickersTextField', slot);
12
+ return (0, _generateUtilityClass.default)('MuiPickersTextField', slot);
12
13
  }
13
- const pickersTextFieldClasses = exports.pickersTextFieldClasses = (0, _utils.unstable_generateUtilityClasses)('MuiPickersTextField', ['root', 'focused', 'disabled', 'error', 'required']);
14
- function getPickersInputUtilityClass(slot) {
15
- return (0, _utils.unstable_generateUtilityClass)('MuiPickersInput', slot);
16
- }
17
- const pickersInputClasses = exports.pickersInputClasses = (0, _utils.unstable_generateUtilityClasses)('MuiPickersInput', ['root', 'focused', 'disabled', 'error', 'notchedOutline', 'adornedStart', 'adornedEnd', 'input', 'sectionsContainer', 'sectionContent', 'sectionBefore', 'sectionAfter']);
14
+ const pickersTextFieldClasses = exports.pickersTextFieldClasses = (0, _generateUtilityClasses.default)('MuiPickersTextField', ['root', 'focused', 'disabled', 'error', 'required']);
@@ -44,6 +44,7 @@ const useDesktopPicker = _ref => {
44
44
  format,
45
45
  formatDensity,
46
46
  timezone,
47
+ name,
47
48
  label,
48
49
  inputRef,
49
50
  readOnly,
@@ -111,6 +112,7 @@ const useDesktopPicker = _ref => {
111
112
  formatDensity,
112
113
  timezone,
113
114
  label,
115
+ name,
114
116
  autoFocus: autoFocus && !props.open,
115
117
  focused: open ? true : undefined
116
118
  }),
@@ -18,7 +18,7 @@ var _useField = require("./useField.utils");
18
18
  var _useFieldState = require("./useFieldState");
19
19
  var _useFieldCharacterEditing = require("./useFieldCharacterEditing");
20
20
  var _utils = require("../../utils/utils");
21
- const _excluded = ["onClick", "onKeyDown", "onFocus", "onBlur", "onMouseUp", "onPaste", "error", "clearable", "onClear", "disabled"];
21
+ const _excluded = ["inputRef", "onClick", "onKeyDown", "onFocus", "onBlur", "onMouseUp", "onPaste", "error", "clearable", "onClear", "disabled"];
22
22
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
23
23
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
24
  const useField = params => {
@@ -37,7 +37,6 @@ const useField = params => {
37
37
  timezone
38
38
  } = (0, _useFieldState.useFieldState)(params);
39
39
  const {
40
- inputRef: inputRefProp,
41
40
  internalProps,
42
41
  internalProps: {
43
42
  readOnly = false,
@@ -45,6 +44,7 @@ const useField = params => {
45
44
  minutesStep
46
45
  },
47
46
  forwardedProps: {
47
+ inputRef: inputRefProp,
48
48
  onClick,
49
49
  onKeyDown,
50
50
  onFocus,
@@ -151,7 +151,14 @@ const useField = params => {
151
151
  const digitsAndLetterOnly = /^(([a-zA-Z]+)|)([0-9]+)(([a-zA-Z]+)|)$/.test(pastedValue);
152
152
  const isValidPastedValue = activeSection.contentType === 'letter' && lettersOnly || activeSection.contentType === 'digit' && digitsOnly || activeSection.contentType === 'digit-with-letter' && digitsAndLetterOnly;
153
153
  if (isValidPastedValue) {
154
- // Early return to let the paste update section, value
154
+ resetCharacterQuery();
155
+ updateSectionValue({
156
+ activeSection,
157
+ newSectionValue: pastedValue,
158
+ shouldGoToNextSection: true
159
+ });
160
+ // prevent default to avoid the input change handler being called
161
+ event.preventDefault();
155
162
  return;
156
163
  }
157
164
  if (lettersOnly || digitsOnly) {
@@ -436,7 +443,7 @@ const useField = params => {
436
443
  onMouseUp: handleInputMouseUp,
437
444
  onClear: handleClearValue,
438
445
  error: inputError,
439
- ref: handleRef,
446
+ inputRef: handleRef,
440
447
  clearable: Boolean(clearable && !areAllSectionsEmpty && !readOnly && !disabled)
441
448
  });
442
449
  };
@@ -207,7 +207,7 @@ const addPositionPropertiesToSections = (sections, isRTL) => {
207
207
 
208
208
  // The ...InInput values consider the unicode characters but do include them in their indexes
209
209
  const cleanedValue = cleanString(renderedValue);
210
- const startInInput = positionInInput + renderedValue.indexOf(cleanedValue[0]) + section.startSeparator.length;
210
+ const startInInput = positionInInput + (cleanedValue === '' ? 0 : renderedValue.indexOf(cleanedValue[0])) + section.startSeparator.length;
211
211
  const endInInput = startInInput + cleanedValue.length;
212
212
  newSections.push((0, _extends2.default)({}, section, {
213
213
  start: position,
@@ -443,6 +443,21 @@ const splitFormatIntoSections = (utils, timezone, localeText, format, date, form
443
443
  }
444
444
  }
445
445
  commitToken(currentTokenValue);
446
+ if (sections.length === 0 && startSeparator.length > 0) {
447
+ sections.push({
448
+ type: 'empty',
449
+ contentType: 'letter',
450
+ maxLength: null,
451
+ format: '',
452
+ value: '',
453
+ placeholder: '',
454
+ hasLeadingZerosInFormat: false,
455
+ hasLeadingZerosInInput: false,
456
+ startSeparator,
457
+ endSeparator: '',
458
+ modified: false
459
+ });
460
+ }
446
461
  return sections.map(section => {
447
462
  const cleanSeparator = separator => {
448
463
  let cleanedSeparator = separator;
@@ -587,6 +602,10 @@ const getSectionsBoundaries = (utils, timezone) => {
587
602
  meridiem: () => ({
588
603
  minimum: 0,
589
604
  maximum: 0
605
+ }),
606
+ empty: () => ({
607
+ minimum: 0,
608
+ maximum: 0
590
609
  })
591
610
  };
592
611
  };
@@ -595,7 +614,7 @@ let warnedOnceInvalidSection = false;
595
614
  const validateSections = (sections, valueType) => {
596
615
  if (process.env.NODE_ENV !== 'production') {
597
616
  if (!warnedOnceInvalidSection) {
598
- const supportedSections = [];
617
+ const supportedSections = ['empty'];
599
618
  if (['date', 'date-time'].includes(valueType)) {
600
619
  supportedSections.push('weekDay', 'day', 'month', 'year');
601
620
  }
@@ -604,7 +623,7 @@ const validateSections = (sections, valueType) => {
604
623
  }
605
624
  const invalidSection = sections.find(section => !supportedSections.includes(section.type));
606
625
  if (invalidSection) {
607
- console.warn(`MUI: The field component you are using is not compatible with the "${invalidSection.type} date section.`, `The supported date sections are ["${supportedSections.join('", "')}"]\`.`);
626
+ console.warn(`MUI: The field component you are using is not compatible with the "${invalidSection.type}" date section.`, `The supported date sections are ["${supportedSections.join('", "')}"]\`.`);
608
627
  warnedOnceInvalidSection = true;
609
628
  }
610
629
  }
@@ -672,7 +691,8 @@ const reliableSectionModificationOrder = {
672
691
  hours: 5,
673
692
  minutes: 6,
674
693
  seconds: 7,
675
- meridiem: 8
694
+ meridiem: 8,
695
+ empty: 9
676
696
  };
677
697
  const mergeDateIntoReferenceDate = (utils, timezone, dateToTransferFrom, sections, referenceDate, shouldLimitToEditedSections) =>
678
698
  // cloning sections before sort to avoid mutating it
@@ -103,17 +103,21 @@ const useFieldState = params => {
103
103
  if (typeof selectedSections === 'number') {
104
104
  return {
105
105
  startIndex: selectedSections,
106
- endIndex: selectedSections
106
+ endIndex: selectedSections,
107
+ shouldSelectBoundarySelectors: state.sections[selectedSections].type === 'empty'
107
108
  };
108
109
  }
109
110
  if (typeof selectedSections === 'string') {
110
111
  const selectedSectionIndex = state.sections.findIndex(section => section.type === selectedSections);
111
112
  return {
112
113
  startIndex: selectedSectionIndex,
113
- endIndex: selectedSectionIndex
114
+ endIndex: selectedSectionIndex,
115
+ shouldSelectBoundarySelectors: state.sections[selectedSectionIndex].type === 'empty'
114
116
  };
115
117
  }
116
- return selectedSections;
118
+ return (0, _extends2.default)({}, selectedSections, {
119
+ shouldSelectBoundarySelectors: selectedSections.startIndex === selectedSections.endIndex && state.sections[selectedSections.startIndex].type === 'empty'
120
+ });
117
121
  }, [selectedSections, state.sections]);
118
122
  const publishValue = ({
119
123
  value,
@@ -41,6 +41,7 @@ const useMobilePicker = _ref => {
41
41
  format,
42
42
  formatDensity,
43
43
  timezone,
44
+ name,
44
45
  label,
45
46
  inputRef,
46
47
  readOnly,
@@ -81,7 +82,8 @@ const useMobilePicker = _ref => {
81
82
  format,
82
83
  formatDensity,
83
84
  timezone,
84
- label
85
+ label,
86
+ name
85
87
  }),
86
88
  ownerState: props
87
89
  });
@@ -87,6 +87,12 @@ Object.defineProperty(exports, "buildWarning", {
87
87
  return _warning.buildWarning;
88
88
  }
89
89
  });
90
+ Object.defineProperty(exports, "convertFieldResponseIntoMuiTextFieldProps", {
91
+ enumerable: true,
92
+ get: function () {
93
+ return _convertFieldResponseIntoMuiTextFieldProps.convertFieldResponseIntoMuiTextFieldProps;
94
+ }
95
+ });
90
96
  Object.defineProperty(exports, "createDateStrForInputFromSections", {
91
97
  enumerable: true,
92
98
  get: function () {
@@ -291,6 +297,7 @@ var _useStaticPicker = require("./hooks/useStaticPicker");
291
297
  var _useUtils = require("./hooks/useUtils");
292
298
  var _useValidation = require("./hooks/useValidation");
293
299
  var _dateHelpersHooks = require("./hooks/date-helpers-hooks");
300
+ var _convertFieldResponseIntoMuiTextFieldProps = require("./utils/convertFieldResponseIntoMuiTextFieldProps");
294
301
  var _dateUtils = require("./utils/date-utils");
295
302
  var _fields = require("./utils/fields");
296
303
  var _getDefaultReferenceDate = require("./utils/getDefaultReferenceDate");
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.convertFieldResponseIntoMuiTextFieldProps = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
10
+ const _excluded = ["onPaste", "onKeyDown", "inputMode", "readOnly", "InputProps", "inputProps", "inputRef"];
11
+ const convertFieldResponseIntoMuiTextFieldProps = fieldResponse => {
12
+ const {
13
+ onPaste,
14
+ onKeyDown,
15
+ inputMode,
16
+ readOnly,
17
+ InputProps,
18
+ inputProps,
19
+ inputRef
20
+ } = fieldResponse,
21
+ other = (0, _objectWithoutPropertiesLoose2.default)(fieldResponse, _excluded);
22
+ return (0, _extends2.default)({}, other, {
23
+ InputProps: (0, _extends2.default)({}, InputProps ?? {}, {
24
+ readOnly
25
+ }),
26
+ inputProps: (0, _extends2.default)({}, inputProps ?? {}, {
27
+ inputMode,
28
+ onPaste,
29
+ onKeyDown,
30
+ ref: inputRef
31
+ })
32
+ });
33
+ };
34
+ exports.convertFieldResponseIntoMuiTextFieldProps = convertFieldResponseIntoMuiTextFieldProps;
@@ -48,8 +48,7 @@ const ruRUPickers = {
48
48
  // Open picker labels
49
49
  openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Выберите дату, выбрана дата ${utils.format(value, 'fullDate')}` : 'Выберите дату',
50
50
  openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Выберите время, выбрано время ${utils.format(value, 'fullTime')}` : 'Выберите время',
51
- // fieldClearLabel: 'Clear value',
52
-
51
+ fieldClearLabel: 'Очистить значение',
53
52
  // Table labels
54
53
  timeTableLabel: 'выбрать время',
55
54
  dateTableLabel: 'выбрать дату',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-date-pickers",
3
- "version": "7.0.0-alpha.4",
3
+ "version": "7.0.0-alpha.6",
4
4
  "description": "The community edition of the date picker components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -35,10 +35,10 @@
35
35
  },
36
36
  "dependencies": {
37
37
  "@babel/runtime": "^7.23.5",
38
- "@mui/base": "^5.0.0-beta.26",
39
- "@mui/system": "^5.14.20",
40
- "@mui/utils": "^5.14.20",
41
- "@types/react-transition-group": "^4.4.9",
38
+ "@mui/base": "^5.0.0-beta.27",
39
+ "@mui/system": "^5.15.0",
40
+ "@mui/utils": "^5.15.0",
41
+ "@types/react-transition-group": "^4.4.10",
42
42
  "clsx": "^2.0.0",
43
43
  "prop-types": "^15.8.1",
44
44
  "react-transition-group": "^4.4.5"
@@ -19,13 +19,11 @@ import { PickersLayoutClassKey } from '../PickersLayout';
19
19
  import { DatePickerToolbarClassKey } from '../DatePicker';
20
20
  import { TimePickerToolbarClassKey } from '../TimePicker';
21
21
  import { DateTimePickerToolbarClassKey, DateTimePickerTabsClassKey } from '../DateTimePicker';
22
- import {
23
- PickersArrowSwitcherClassKey,
24
- PickersPopperClassKey,
25
- PickersToolbarButtonClassKey,
26
- PickersToolbarClassKey,
27
- PickersToolbarTextClassKey,
28
- } from '../internals';
22
+ import { PickersArrowSwitcherClassKey } from '../internals/components/PickersArrowSwitcher';
23
+ import { PickersToolbarClassKey } from '../internals/components/pickersToolbarClasses';
24
+ import { PickersPopperClassKey } from '../internals/components/pickersPopperClasses';
25
+ import { PickersToolbarButtonClassKey } from '../internals/components/pickersToolbarButtonClasses';
26
+ import { PickersToolbarTextClassKey } from '../internals/components/pickersToolbarTextClasses';
29
27
  import { DigitalClockClassKey } from '../DigitalClock';
30
28
  import {
31
29
  MultiSectionDigitalClockClassKey,
@@ -11,14 +11,12 @@ import { ExportedPickersYearProps, YearCalendarProps } from '../YearCalendar';
11
11
  import { DateFieldProps } from '../DateField';
12
12
  import { LocalizationProviderProps } from '../LocalizationProvider';
13
13
  import { PickersLayoutProps } from '../PickersLayout';
14
- import {
15
- DayCalendarProps,
16
- ExportedPickersArrowSwitcherProps,
17
- PickerPopperProps,
18
- PickersToolbarButtonProps,
19
- PickersToolbarProps,
20
- ExportedPickersToolbarTextProps,
21
- } from '../internals';
14
+ import { DayCalendarProps } from '../DateCalendar/DayCalendar';
15
+ import { ExportedPickersArrowSwitcherProps } from '../internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types';
16
+ import { PickerPopperProps } from '../internals/components/PickersPopper';
17
+ import { PickersToolbarProps } from '../internals/components/PickersToolbar';
18
+ import { PickersToolbarButtonProps } from '../internals/components/PickersToolbarButton';
19
+ import { ExportedPickersToolbarTextProps } from '../internals/components/PickersToolbarText';
22
20
  import { DateOrTimeView } from '../models';
23
21
 
24
22
  import { DatePickerProps, DatePickerToolbarProps } from '../DatePicker';
@@ -1,3 +0,0 @@
1
- import * as React from 'react';
2
- import { PickersInputProps } from './PickersInput.types';
3
- export declare const PickersInput: React.ForwardRefExoticComponent<Omit<PickersInputProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -1,45 +0,0 @@
1
- import * as React from 'react';
2
- import { BoxProps } from '@mui/material/Box';
3
- export interface PickersInputElement {
4
- container: React.HTMLAttributes<HTMLSpanElement>;
5
- content: React.HTMLAttributes<HTMLSpanElement>;
6
- before: React.HTMLAttributes<HTMLSpanElement>;
7
- after: React.HTMLAttributes<HTMLSpanElement>;
8
- }
9
- export interface PickersInputPropsUsedByField {
10
- /**
11
- * The elements to render.
12
- * Each element contains the prop to edit a section of the value.
13
- */
14
- elements: PickersInputElement[];
15
- /**
16
- * Is `true` if the current values equals the empty value.
17
- * For a single item value, it means that `value === null`
18
- * For a range value, it means that `value === [null, null]`
19
- */
20
- areAllSectionsEmpty: boolean;
21
- onClick: React.MouseEventHandler<HTMLDivElement>;
22
- onKeyDown: React.KeyboardEventHandler<HTMLDivElement>;
23
- onInput: React.FormEventHandler<HTMLDivElement>;
24
- onPaste: React.ClipboardEventHandler<HTMLDivElement>;
25
- endAdornment?: React.ReactNode;
26
- startAdornment?: React.ReactNode;
27
- tabIndex: number | undefined;
28
- contentEditable: boolean;
29
- value: string;
30
- onChange: React.ChangeEventHandler<HTMLInputElement>;
31
- label?: React.ReactNode;
32
- id?: string;
33
- fullWidth?: boolean;
34
- readOnly?: boolean;
35
- inputProps?: React.HTMLAttributes<HTMLInputElement> & {
36
- ref?: React.Ref<HTMLInputElement>;
37
- };
38
- inputRef?: React.Ref<HTMLInputElement>;
39
- sectionsContainerRef?: React.Ref<HTMLDivElement>;
40
- }
41
- export interface PickersInputOtherProps extends Omit<BoxProps, keyof PickersInputPropsUsedByField> {
42
- ref?: React.Ref<HTMLDivElement>;
43
- }
44
- export interface PickersInputProps extends PickersInputPropsUsedByField, PickersInputOtherProps {
45
- }