@mui/x-date-pickers 8.16.0 → 8.18.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 (104) hide show
  1. package/CHANGELOG.md +208 -1
  2. package/DateCalendar/DayCalendar.d.ts +1 -1
  3. package/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
  4. package/DateCalendar/PickersSlideTransition.d.ts +1 -1
  5. package/DatePicker/DatePicker.js +8 -2
  6. package/DateTimePicker/DateTimePicker.js +8 -2
  7. package/DateTimePicker/DateTimePickerTabs.d.ts +1 -1
  8. package/DateTimePicker/DateTimePickerToolbar.d.ts +1 -1
  9. package/DateTimePicker/DateTimePickerToolbar.js +2 -1
  10. package/DayCalendarSkeleton/DayCalendarSkeleton.d.ts +1 -1
  11. package/DesktopDatePicker/DesktopDatePicker.js +8 -2
  12. package/DesktopDateTimePicker/DesktopDateTimePicker.js +8 -2
  13. package/DesktopTimePicker/DesktopTimePicker.js +8 -2
  14. package/MobileDatePicker/MobileDatePicker.js +8 -2
  15. package/MobileDateTimePicker/MobileDateTimePicker.js +8 -2
  16. package/MobileTimePicker/MobileTimePicker.js +8 -2
  17. package/PickersActionBar/PickersActionBar.d.ts +1 -1
  18. package/PickersShortcuts/PickersShortcuts.d.ts +1 -2
  19. package/PickersShortcuts/PickersShortcuts.js +2 -3
  20. package/PickersTextField/PickersOutlinedInput/Outline.d.ts +1 -1
  21. package/StaticDatePicker/StaticDatePicker.js +8 -2
  22. package/StaticDateTimePicker/StaticDateTimePicker.js +8 -2
  23. package/StaticTimePicker/StaticTimePicker.js +8 -2
  24. package/TimeClock/Clock.d.ts +1 -1
  25. package/TimeClock/ClockNumber.d.ts +1 -1
  26. package/TimeClock/ClockNumbers.d.ts +1 -1
  27. package/TimeClock/ClockPointer.d.ts +1 -1
  28. package/TimePicker/TimePicker.js +8 -2
  29. package/TimePicker/TimePickerToolbar.d.ts +1 -2
  30. package/TimePicker/TimePickerToolbar.js +2 -3
  31. package/dateViewRenderers/dateViewRenderers.d.ts +1 -2
  32. package/dateViewRenderers/dateViewRenderers.js +0 -2
  33. package/esm/DateCalendar/DayCalendar.d.ts +1 -1
  34. package/esm/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
  35. package/esm/DateCalendar/PickersSlideTransition.d.ts +1 -1
  36. package/esm/DatePicker/DatePicker.js +8 -2
  37. package/esm/DateTimePicker/DateTimePicker.js +8 -2
  38. package/esm/DateTimePicker/DateTimePickerTabs.d.ts +1 -1
  39. package/esm/DateTimePicker/DateTimePickerToolbar.d.ts +1 -1
  40. package/esm/DateTimePicker/DateTimePickerToolbar.js +2 -1
  41. package/esm/DayCalendarSkeleton/DayCalendarSkeleton.d.ts +1 -1
  42. package/esm/DesktopDatePicker/DesktopDatePicker.js +8 -2
  43. package/esm/DesktopDateTimePicker/DesktopDateTimePicker.js +8 -2
  44. package/esm/DesktopTimePicker/DesktopTimePicker.js +8 -2
  45. package/esm/MobileDatePicker/MobileDatePicker.js +8 -2
  46. package/esm/MobileDateTimePicker/MobileDateTimePicker.js +8 -2
  47. package/esm/MobileTimePicker/MobileTimePicker.js +8 -2
  48. package/esm/PickersActionBar/PickersActionBar.d.ts +1 -1
  49. package/esm/PickersShortcuts/PickersShortcuts.d.ts +1 -2
  50. package/esm/PickersShortcuts/PickersShortcuts.js +2 -2
  51. package/esm/PickersTextField/PickersOutlinedInput/Outline.d.ts +1 -1
  52. package/esm/StaticDatePicker/StaticDatePicker.js +8 -2
  53. package/esm/StaticDateTimePicker/StaticDateTimePicker.js +8 -2
  54. package/esm/StaticTimePicker/StaticTimePicker.js +8 -2
  55. package/esm/TimeClock/Clock.d.ts +1 -1
  56. package/esm/TimeClock/ClockNumber.d.ts +1 -1
  57. package/esm/TimeClock/ClockNumbers.d.ts +1 -1
  58. package/esm/TimeClock/ClockPointer.d.ts +1 -1
  59. package/esm/TimePicker/TimePicker.js +8 -2
  60. package/esm/TimePicker/TimePickerToolbar.d.ts +1 -2
  61. package/esm/TimePicker/TimePickerToolbar.js +2 -2
  62. package/esm/dateViewRenderers/dateViewRenderers.d.ts +1 -2
  63. package/esm/dateViewRenderers/dateViewRenderers.js +0 -1
  64. package/esm/index.js +1 -1
  65. package/esm/internals/components/PickerFieldUI.d.ts +2 -2
  66. package/esm/internals/components/PickerPopper/PickerPopper.d.ts +1 -1
  67. package/esm/internals/components/PickerProvider.d.ts +9 -1
  68. package/esm/internals/components/PickersModalDialog.d.ts +1 -1
  69. package/esm/internals/demo/DemoContainer.d.ts +2 -2
  70. package/esm/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -2
  71. package/esm/internals/hooks/useDesktopPicker/useDesktopPicker.js +0 -1
  72. package/esm/internals/hooks/useField/useFieldState.js +19 -10
  73. package/esm/internals/hooks/useField/useFieldV6TextField.js +1 -0
  74. package/esm/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -2
  75. package/esm/internals/hooks/useMobilePicker/useMobilePicker.js +0 -1
  76. package/esm/internals/hooks/usePicker/hooks/useValueAndOpenStates.js +14 -2
  77. package/esm/internals/hooks/usePicker/usePicker.js +13 -5
  78. package/esm/internals/hooks/usePicker/usePicker.types.d.ts +8 -2
  79. package/esm/internals/hooks/useStaticPicker/useStaticPicker.d.ts +1 -2
  80. package/esm/internals/hooks/useStaticPicker/useStaticPicker.js +0 -1
  81. package/esm/models/pickers.d.ts +8 -0
  82. package/esm/timeViewRenderers/timeViewRenderers.d.ts +3 -4
  83. package/esm/timeViewRenderers/timeViewRenderers.js +0 -1
  84. package/index.js +1 -1
  85. package/internals/components/PickerFieldUI.d.ts +2 -2
  86. package/internals/components/PickerPopper/PickerPopper.d.ts +1 -1
  87. package/internals/components/PickerProvider.d.ts +9 -1
  88. package/internals/components/PickersModalDialog.d.ts +1 -1
  89. package/internals/demo/DemoContainer.d.ts +2 -2
  90. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -2
  91. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +0 -2
  92. package/internals/hooks/useField/useFieldState.js +19 -10
  93. package/internals/hooks/useField/useFieldV6TextField.js +1 -0
  94. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -2
  95. package/internals/hooks/useMobilePicker/useMobilePicker.js +0 -2
  96. package/internals/hooks/usePicker/hooks/useValueAndOpenStates.js +14 -2
  97. package/internals/hooks/usePicker/usePicker.js +13 -5
  98. package/internals/hooks/usePicker/usePicker.types.d.ts +8 -2
  99. package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +1 -2
  100. package/internals/hooks/useStaticPicker/useStaticPicker.js +0 -2
  101. package/models/pickers.d.ts +8 -0
  102. package/package.json +3 -3
  103. package/timeViewRenderers/timeViewRenderers.d.ts +3 -4
  104. package/timeViewRenderers/timeViewRenderers.js +0 -2
@@ -28,7 +28,10 @@ export interface UsePickerBaseProps<TValue extends PickerValidValue, TView exten
28
28
  * @template TValue The value type. It will be the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
29
29
  * @template TError The validation error type. It will be either `string` or a `null`. It can be in `[start, end]` format in case of range value.
30
30
  * @param {TValue} value The new value.
31
- * @param {FieldChangeHandlerContext<TError>} context The context containing the validation result of the current value.
31
+ * @param {FieldChangeHandlerContext<TError>} context Context about this change:
32
+ * - `validationError`: validation result of the current value
33
+ * - `source`: source of the change. One of 'field' | 'view' | 'unknown'
34
+ * - `shortcut` (optional): the shortcut metadata if the change was triggered by a shortcut selection
32
35
  */
33
36
  onChange?: (value: TValue, context: PickerChangeHandlerContext<TError>) => void;
34
37
  /**
@@ -36,7 +39,10 @@ export interface UsePickerBaseProps<TValue extends PickerValidValue, TView exten
36
39
  * @template TValue The value type. It will be the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
37
40
  * @template TError The validation error type. It will be either `string` or a `null`. It can be in `[start, end]` format in case of range value.
38
41
  * @param {TValue} value The value that was just accepted.
39
- * @param {FieldChangeHandlerContext<TError>} context The context containing the validation result of the current value.
42
+ * @param {FieldChangeHandlerContext<TError>} context Context about this acceptance:
43
+ * - `validationError`: validation result of the current value
44
+ * - `source`: source of the acceptance. One of 'field' | 'picker' | 'unknown'
45
+ * - `shortcut` (optional): the shortcut metadata if the value was accepted via a shortcut selection
40
46
  */
41
47
  onAccept?: (value: TValue, context: PickerChangeHandlerContext<TError>) => void;
42
48
  /**
@@ -1,4 +1,3 @@
1
- import * as React from 'react';
2
1
  import { UseStaticPickerParams, UseStaticPickerProps } from "./useStaticPicker.types.js";
3
2
  import { DateOrTimeViewWithMeridiem } from "../../models/index.js";
4
3
  /**
@@ -12,5 +11,5 @@ export declare const useStaticPicker: <TView extends DateOrTimeViewWithMeridiem,
12
11
  steps,
13
12
  ...pickerParams
14
13
  }: UseStaticPickerParams<TView, TExternalProps>) => {
15
- renderPicker: () => React.JSX.Element;
14
+ renderPicker: () => import("react/jsx-runtime").JSX.Element;
16
15
  };
@@ -1,14 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.useStaticPicker = void 0;
9
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
9
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
- var React = _interopRequireWildcard(require("react"));
12
10
  var _clsx = _interopRequireDefault(require("clsx"));
13
11
  var _styles = require("@mui/material/styles");
14
12
  var _usePicker = require("../usePicker");
@@ -2,6 +2,14 @@ import { PickerOrientation, PickerVariant } from "../internals/models/common.js"
2
2
  import type { PickersShortcutsItemContext } from "../PickersShortcuts/index.js";
3
3
  export interface PickerChangeHandlerContext<TError> {
4
4
  validationError: TError;
5
+ /**
6
+ * Source of the change that triggered `onChange` or `onAccept`.
7
+ * Simplified to one of the following values:
8
+ * - 'field' (changes coming from the text field)
9
+ * - 'view' (any interaction inside the picker UI: views, toolbar, action bar, shortcuts, etc.)
10
+ * - 'unknown' (unspecified or third-party triggers)
11
+ */
12
+ source: 'field' | 'view' | 'unknown';
5
13
  /**
6
14
  * Shortcut causing this `onChange` or `onAccept` call.
7
15
  * If the call has not been caused by a shortcut selection, this property will be `undefined`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-date-pickers",
3
- "version": "8.16.0",
3
+ "version": "8.18.0",
4
4
  "author": "MUI Team",
5
5
  "description": "The community edition of the MUI X Date and Time Picker components.",
6
6
  "license": "MIT",
@@ -34,12 +34,12 @@
34
34
  },
35
35
  "dependencies": {
36
36
  "@babel/runtime": "^7.28.4",
37
- "@mui/utils": "^7.3.3",
37
+ "@mui/utils": "^7.3.5",
38
38
  "@types/react-transition-group": "^4.4.12",
39
39
  "clsx": "^2.1.1",
40
40
  "prop-types": "^15.8.1",
41
41
  "react-transition-group": "^4.4.5",
42
- "@mui/x-internals": "8.16.0"
42
+ "@mui/x-internals": "8.18.0"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "@emotion/react": "^11.9.0",
@@ -1,4 +1,3 @@
1
- import * as React from 'react';
2
1
  import { TimeClockProps } from "../TimeClock/index.js";
3
2
  import { TimeView } from "../models/index.js";
4
3
  import { DigitalClockProps } from "../DigitalClock/index.js";
@@ -40,7 +39,7 @@ export declare const renderTimeViewClock: ({
40
39
  showViewSwitcher,
41
40
  disableIgnoringDatePartForTimeValidation,
42
41
  timezone
43
- }: TimeViewRendererProps<TimeView, TimeClockProps<TimeView>>) => React.JSX.Element;
42
+ }: TimeViewRendererProps<TimeView, TimeClockProps<TimeView>>) => import("react/jsx-runtime").JSX.Element;
44
43
  export declare const renderDigitalClockTimeView: ({
45
44
  view,
46
45
  onViewChange,
@@ -70,7 +69,7 @@ export declare const renderDigitalClockTimeView: ({
70
69
  timeSteps,
71
70
  skipDisabled,
72
71
  timezone
73
- }: TimeViewRendererProps<Extract<TimeView, "hours">, Omit<DigitalClockProps, "timeStep"> & Pick<TimePickerProps, "timeSteps">>) => React.JSX.Element;
72
+ }: TimeViewRendererProps<Extract<TimeView, "hours">, Omit<DigitalClockProps, "timeStep"> & Pick<TimePickerProps, "timeSteps">>) => import("react/jsx-runtime").JSX.Element;
74
73
  export declare const renderMultiSectionDigitalClockTimeView: ({
75
74
  view,
76
75
  onViewChange,
@@ -100,4 +99,4 @@ export declare const renderMultiSectionDigitalClockTimeView: ({
100
99
  timeSteps,
101
100
  skipDisabled,
102
101
  timezone
103
- }: TimeViewRendererProps<TimeViewWithMeridiem, MultiSectionDigitalClockProps>) => React.JSX.Element;
102
+ }: TimeViewRendererProps<TimeViewWithMeridiem, MultiSectionDigitalClockProps>) => import("react/jsx-runtime").JSX.Element;
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.renderTimeViewClock = exports.renderMultiSectionDigitalClockTimeView = exports.renderDigitalClockTimeView = void 0;
8
- var React = _interopRequireWildcard(require("react"));
9
7
  var _TimeClock = require("../TimeClock");
10
8
  var _DigitalClock = require("../DigitalClock");
11
9
  var _MultiSectionDigitalClock = require("../MultiSectionDigitalClock");