@mui/x-data-grid 6.0.4 → 6.2.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 (131) hide show
  1. package/CHANGELOG.md +110 -0
  2. package/components/GridAutoSizer.js +3 -0
  3. package/components/GridPagination.d.ts +6 -6
  4. package/components/GridRow.js +3 -1
  5. package/components/cell/GridActionsCellItem.d.ts +2 -2
  6. package/components/cell/GridEditDateCell.js +37 -16
  7. package/components/columnHeaders/ColumnHeaderMenuIcon.js +20 -16
  8. package/components/panel/GridColumnsPanel.d.ts +8 -0
  9. package/components/panel/GridColumnsPanel.js +18 -6
  10. package/components/panel/GridPanel.d.ts +1 -1
  11. package/components/panel/filterPanel/GridFilterInputBoolean.js +37 -29
  12. package/components/panel/filterPanel/GridFilterInputSingleSelect.js +34 -30
  13. package/components/toolbar/GridToolbarColumnsButton.d.ts +1 -1
  14. package/components/toolbar/GridToolbarDensitySelector.d.ts +1 -1
  15. package/components/toolbar/GridToolbarExportContainer.d.ts +1 -1
  16. package/hooks/core/useGridApiInitialization.js +3 -3
  17. package/hooks/features/columns/gridColumnsSelector.d.ts +3 -3
  18. package/hooks/features/editing/useGridCellEditing.js +5 -1
  19. package/hooks/features/editing/useGridEditing.js +1 -3
  20. package/hooks/features/editing/useGridRowEditing.js +5 -1
  21. package/hooks/features/filter/gridFilterState.js +6 -1
  22. package/hooks/features/filter/useGridFilter.js +5 -0
  23. package/hooks/features/rowSelection/useGridRowSelection.js +5 -26
  24. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +36 -16
  25. package/index.js +9 -1
  26. package/legacy/components/GridAutoSizer.js +3 -0
  27. package/legacy/components/GridRow.js +4 -1
  28. package/legacy/components/cell/GridEditBooleanCell.js +19 -21
  29. package/legacy/components/cell/GridEditDateCell.js +69 -39
  30. package/legacy/components/cell/GridEditInputCell.js +25 -27
  31. package/legacy/components/cell/GridEditSingleSelectCell.js +26 -28
  32. package/legacy/components/columnHeaders/ColumnHeaderMenuIcon.js +20 -16
  33. package/legacy/components/panel/GridColumnsPanel.js +19 -6
  34. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +37 -29
  35. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +34 -30
  36. package/legacy/hooks/core/useGridApiInitialization.js +3 -3
  37. package/legacy/hooks/features/columns/gridColumnsUtils.js +2 -2
  38. package/legacy/hooks/features/editing/useGridCellEditing.js +120 -120
  39. package/legacy/hooks/features/editing/useGridEditing.js +17 -21
  40. package/legacy/hooks/features/editing/useGridRowEditing.js +5 -1
  41. package/legacy/hooks/features/export/useGridPrintExport.js +45 -47
  42. package/legacy/hooks/features/filter/gridFilterState.js +6 -1
  43. package/legacy/hooks/features/filter/useGridFilter.js +5 -0
  44. package/legacy/hooks/features/rowSelection/useGridRowSelection.js +5 -24
  45. package/legacy/hooks/features/rows/gridRowsUtils.js +2 -2
  46. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +6 -6
  47. package/legacy/index.js +9 -1
  48. package/legacy/locales/coreLocales.js +0 -1
  49. package/legacy/locales/frFR.js +7 -9
  50. package/legacy/locales/huHU.js +15 -20
  51. package/legacy/locales/jaJP.js +1 -1
  52. package/legacy/locales/nlNL.js +3 -3
  53. package/legacy/locales/ptBR.js +7 -9
  54. package/legacy/locales/ruRU.js +1 -1
  55. package/legacy/locales/urPK.js +6 -6
  56. package/legacy/models/gridColumnGrouping.js +4 -0
  57. package/legacy/models/params/gridRowParams.js +8 -0
  58. package/legacy/utils/createSelector.js +14 -22
  59. package/legacy/utils/utils.js +1 -1
  60. package/locales/coreLocales.js +0 -1
  61. package/locales/frFR.js +7 -9
  62. package/locales/huHU.js +15 -20
  63. package/locales/jaJP.js +1 -1
  64. package/locales/nlNL.js +3 -3
  65. package/locales/ptBR.js +7 -9
  66. package/locales/ruRU.js +1 -1
  67. package/locales/urPK.js +6 -6
  68. package/models/api/gridCoreApi.d.ts +3 -1
  69. package/models/api/gridEditingApi.d.ts +4 -0
  70. package/models/gridColumnGrouping.js +4 -0
  71. package/models/params/gridRowParams.js +8 -0
  72. package/modern/components/GridAutoSizer.js +3 -0
  73. package/modern/components/GridRow.js +3 -1
  74. package/modern/components/cell/GridEditDateCell.js +37 -16
  75. package/modern/components/columnHeaders/ColumnHeaderMenuIcon.js +19 -15
  76. package/modern/components/panel/GridColumnsPanel.js +18 -6
  77. package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +36 -28
  78. package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +33 -29
  79. package/modern/hooks/core/useGridApiInitialization.js +3 -3
  80. package/modern/hooks/features/editing/useGridCellEditing.js +5 -1
  81. package/modern/hooks/features/editing/useGridEditing.js +1 -3
  82. package/modern/hooks/features/editing/useGridRowEditing.js +5 -1
  83. package/modern/hooks/features/filter/gridFilterState.js +6 -1
  84. package/modern/hooks/features/filter/useGridFilter.js +5 -0
  85. package/modern/hooks/features/rowSelection/useGridRowSelection.js +5 -26
  86. package/modern/index.js +9 -1
  87. package/modern/locales/coreLocales.js +0 -1
  88. package/modern/locales/frFR.js +7 -9
  89. package/modern/locales/huHU.js +15 -20
  90. package/modern/locales/jaJP.js +1 -1
  91. package/modern/locales/nlNL.js +3 -3
  92. package/modern/locales/ptBR.js +7 -9
  93. package/modern/locales/ruRU.js +1 -1
  94. package/modern/locales/urPK.js +6 -6
  95. package/modern/models/gridColumnGrouping.js +4 -0
  96. package/modern/models/params/gridRowParams.js +8 -0
  97. package/modern/utils/createSelector.js +12 -22
  98. package/modern/utils/utils.js +1 -1
  99. package/node/components/GridAutoSizer.js +3 -1
  100. package/node/components/GridRow.js +3 -1
  101. package/node/components/cell/GridCell.js +1 -0
  102. package/node/components/cell/GridEditDateCell.js +37 -16
  103. package/node/components/columnHeaders/ColumnHeaderMenuIcon.js +19 -15
  104. package/node/components/panel/GridColumnsPanel.js +18 -6
  105. package/node/components/panel/filterPanel/GridFilterInputBoolean.js +36 -28
  106. package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +32 -29
  107. package/node/hooks/core/useGridApiInitialization.js +3 -3
  108. package/node/hooks/features/editing/useGridCellEditing.js +5 -1
  109. package/node/hooks/features/editing/useGridEditing.js +1 -3
  110. package/node/hooks/features/editing/useGridRowEditing.js +5 -1
  111. package/node/hooks/features/filter/gridFilterState.js +5 -0
  112. package/node/hooks/features/filter/useGridFilter.js +5 -0
  113. package/node/hooks/features/rowSelection/useGridRowSelection.js +4 -25
  114. package/node/index.js +1 -1
  115. package/node/locales/frFR.js +7 -9
  116. package/node/locales/huHU.js +15 -20
  117. package/node/locales/jaJP.js +1 -1
  118. package/node/locales/nlNL.js +3 -3
  119. package/node/locales/ptBR.js +7 -9
  120. package/node/locales/ruRU.js +1 -1
  121. package/node/locales/urPK.js +6 -6
  122. package/node/models/gridColumnGrouping.js +4 -0
  123. package/node/models/params/gridEditCellParams.js +1 -0
  124. package/node/models/params/gridRowParams.js +9 -0
  125. package/node/utils/createSelector.js +12 -22
  126. package/node/utils/utils.js +1 -1
  127. package/package.json +1 -1
  128. package/utils/createSelector.d.ts +4 -4
  129. package/utils/createSelector.js +14 -22
  130. package/utils/utils.d.ts +1 -1
  131. package/utils/utils.js +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,116 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 6.2.0
7
+
8
+ _Apr 13, 2023_
9
+
10
+ We'd like to offer a big thanks to the 8 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - Add `@mui/base` as a `peerDependency` of `@mui/x-date-pickers` and `@mui/x-date-pickers-pro` (#8590) @LukasTy
13
+
14
+ Both libraries were not working correctly if used without `@mui/base`.
15
+ Most package manager should automatically use the `@mui/base` version installed for `@mui/material`.
16
+
17
+ - The value rendered in the picker or field input no longer has spaces around the `/` characters (#8425) @flaviendelangle
18
+
19
+ You can use the `formatDensity='spacious'` prop to add it back.
20
+ More information on [the dedicated doc section](https://mui.com/x/react-date-pickers/custom-field/#change-the-format-density)
21
+
22
+ - 🌍 Improve French (fr-FR) and Urdu (ur-PK) and locales.
23
+ - 🐞 Bugfixes
24
+ - 📚 Documentation improvements
25
+
26
+ ### `@mui/x-data-grid@v6.2.0` / `@mui/x-data-grid-pro@v6.2.0` / `@mui/x-data-grid-premium@v6.2.0`
27
+
28
+ #### Changes
29
+
30
+ - [DataGrid] Reset selection state on `checkboxSelection` toggle (#8522) @MBilalShafi
31
+ - [DataGrid] Use `baseSelect` slot instead of `baseTextField` with `select={true}` (#8110) @cherniavskii
32
+ - [l10n] Improve French (fr-FR) locale (#8537) @vallereaugabriel
33
+ - [l10n] Improve Urdu (ur-PK) locale (#8513) @SFARPak
34
+
35
+ ### `@mui/x-date-pickers@v6.2.0` / `@mui/x-date-pickers-pro@v6.2.0`
36
+
37
+ #### Changes
38
+
39
+ - [DateTimePicker] Fix `TimeClock` validation ignoring date by default (#8570) @LukasTy
40
+ - [fields] Fix reliance on section order (#8545) @LukasTy
41
+ - [fields] Make the space between format separators controllable (#8425) @flaviendelangle
42
+ - [pickers] Add `@mui/base` to `peerDependencies` (#8590) @LukasTy
43
+ - [pickers] Fix JSDoc for `formatDensity` prop (#8601) @flaviendelangle
44
+ - [pickers] Improve value lifecycle on non-controlled pickers (#8312) @flaviendelangle
45
+ - [pickers] Migrate `AdapterDayjs` to our repository (#8487) @flaviendelangle
46
+
47
+ ### Docs
48
+
49
+ - [docs] Fix "Custom day rendering" demo alignment (#8541) @LukasTy
50
+ - [docs] Fix **below** typo (#8576) @alexfauquette
51
+
52
+ ### Core
53
+
54
+ - [core] Optimize `renovate` rules (#8575) @LukasTy
55
+ - [core] Upgrade monorepo (#8578) @cherniavskii
56
+ - [core] Update last release date (#8569) @DanailH
57
+
58
+ ## 6.1.0
59
+
60
+ _Apr 10, 2023_
61
+
62
+ We'd like to offer a big thanks to the 15 contributors who made this release possible. Here are some highlights ✨:
63
+
64
+ - 🌍 Add Catalan (ca-ES), Kazakh (kz-KZ) and improve Spanish (es-ES), Dutch (nl-NL), Hebrew (he-IL), Hungarian (hu-HU), Japanese (ja-JP), Portuguese (pt-BR), and Russian (ru-RU) locales
65
+ - ✨ Allow to control visibility of columns shown in the columns panel (#8401) @MBilalShafi
66
+ - 🐞 Bugfixes
67
+ - 📚 Documentation improvements
68
+
69
+ ### `@mui/x-data-grid@v6.1.0` / `@mui/x-data-grid-pro@v6.1.0` / `@mui/x-data-grid-premium@v6.1.0`
70
+
71
+ #### Changes
72
+
73
+ - [DataGrid] Allow to control visibility of columns shown in the `ColumnsPanel` component (#8401) @MBilalShafi
74
+ - [DataGrid] Fix filters with empty array value not being removed from the filter model (#8501) @cherniavskii
75
+ - [DataGrid] Fix memory leaks in development (#8301) @cherniavskii
76
+ - [DataGrid] Sync `date` column value when entering edit mode by pressing a digit (#8364) @m4theushw
77
+ - [DataGrid] Wrap column menu button with a tooltip (#7890) @cherniavskii
78
+ - [l10n] Improve Dutch (nl-NL) locale (#8491) @thedutchruben
79
+ - [l10n] Improve Hungarian (hu-HU) locale (#8486) @PetakCC
80
+ - [l10n] Improve Japanese (ja-JP) locale (#8462) @megos
81
+ - [l10n] Improve Portuguese (pt-BR) locale (#8480) @pwnedev
82
+ - [l10n] Improve Russian (ru-RU) locale (#8510) @alexrapro
83
+
84
+ ### `@mui/x-date-pickers@v6.1.0` / `@mui/x-date-pickers-pro@v6.1.0`
85
+
86
+ #### Changes
87
+
88
+ - [fields] Fix RTL navigation (#8490) @alexfauquette
89
+ - [fields] Fix usage of `slotProps.textField.InputProps` (#8428) @flaviendelangle
90
+ - [pickers] Fix `componentsProps.dialog` propagation (#8509) @LukasTy
91
+ - [pickers] Move `hasError` from `fieldValueManager` to `valueManager` (#8453) @flaviendelangle
92
+ - [pickers] Move the adapters interfaces to the X repository (#8412) @flaviendelangle
93
+ - [pickers] Update peer dependency versions (#8531) @LukasTy
94
+ - [pickers] Fix `isValid` regression (#8543) @LukasTy
95
+ - [l10n] Add Catalan (Spain) (ca-ES) and improve Spanish (es-ES) locales (#8498) @makenshikuro
96
+ - [l10n] Add Kazakh (kz-KZ) locale (#8451) @zhunus
97
+ - [l10n] Improve Dutch (nl-NL) locale (#8491) @thedutchruben
98
+ - [l10n] Improve Hebrew (he-IL) locale (#8464) @soris1989
99
+ - [l10n] Improve Japanese (ja-JP) locale (#8462) @megos
100
+ - [l10n] Improve Portuguese (pt-BR) locale (#8480) @pwnedev
101
+
102
+ ### Docs
103
+
104
+ - [docs] Fix 301 redirect (#8524) @alexfauquette
105
+ - [docs] Fix 404 links (#8454) @alexfauquette
106
+ - [docs] Fix broken API reference link (#8460) @oliviertassinari
107
+
108
+ ### Core
109
+
110
+ - [core] Avoid 301 links (#8383) @oliviertassinari
111
+ - [core] Fix the l10n helper by using danger instead of actions (#8512) @alexfauquette
112
+ - [core] Help contributors for l10n PRs (#8503) @alexfauquette
113
+ - [core] Remove legacy token (#8457) @oliviertassinari
114
+ - [charts] Add a styling system (#8445) @alexfauquette
115
+
6
116
  ## 6.0.4
7
117
 
8
118
  _Mar 30, 2023_
@@ -6,6 +6,9 @@ import PropTypes from 'prop-types';
6
6
  import { unstable_useForkRef as useForkRef, unstable_ownerWindow as ownerWindow, unstable_useEventCallback as useEventCallback, unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/utils';
7
7
  import createDetectElementResize from '../lib/createDetectElementResize';
8
8
  // TODO replace with https://caniuse.com/resizeobserver.
9
+
10
+ // Credit to https://github.com/bvaughn/react-virtualized/blob/master/source/AutoSizer/AutoSizer.js
11
+ // for the sources.
9
12
  import { jsx as _jsx } from "react/jsx-runtime";
10
13
  const GridAutoSizer = /*#__PURE__*/React.forwardRef(function AutoSizer(props, ref) {
11
14
  const {
@@ -1,13 +1,13 @@
1
1
  import * as React from 'react';
2
2
  export declare const GridPagination: React.ForwardRefExoticComponent<(Omit<Partial<import("@mui/material/TablePagination").TablePaginationBaseProps & {
3
3
  ActionsComponent?: React.ElementType<import("@mui/material/TablePagination/TablePaginationActions").TablePaginationActionsProps> | undefined;
4
- backIconButtonProps?: Partial<import("@mui/material").IconButtonProps<"button", {}>> | undefined;
4
+ backIconButtonProps?: Partial<import("@mui/material").IconButtonProps> | undefined;
5
5
  classes?: Partial<import("@mui/material/TablePagination").TablePaginationClasses> | undefined;
6
6
  count: number;
7
7
  getItemAriaLabel?: ((type: "first" | "last" | "next" | "previous") => string) | undefined;
8
8
  labelDisplayedRows?: ((paginationInfo: import("@mui/material/TablePagination").LabelDisplayedRowsArgs) => React.ReactNode) | undefined;
9
9
  labelRowsPerPage?: React.ReactNode;
10
- nextIconButtonProps?: Partial<import("@mui/material").IconButtonProps<"button", {}>> | undefined;
10
+ nextIconButtonProps?: Partial<import("@mui/material").IconButtonProps> | undefined;
11
11
  onPageChange: (event: React.MouseEvent<HTMLButtonElement, MouseEvent> | null, page: number) => void;
12
12
  onRowsPerPageChange?: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
13
13
  page: number;
@@ -20,15 +20,15 @@ export declare const GridPagination: React.ForwardRefExoticComponent<(Omit<Parti
20
20
  showFirstButton?: boolean | undefined;
21
21
  showLastButton?: boolean | undefined;
22
22
  sx?: import("@mui/material/styles").SxProps<import("@mui/material/styles").Theme> | undefined;
23
- } & import("@mui/material/OverridableComponent").CommonProps & Omit<import("@mui/material/TablePagination").TablePaginationBaseProps, "hidden" | "color" | "page" | "size" | "height" | "translate" | "width" | "padding" | "abbr" | "slot" | "title" | "ref" | "colSpan" | "headers" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoFocus" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "rowSpan" | "scope" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "align" | "valign" | "sx" | keyof import("@mui/material/OverridableComponent").CommonProps | "variant" | "count" | "getItemAriaLabel" | "labelDisplayedRows" | "labelRowsPerPage" | "onPageChange" | "onRowsPerPageChange" | "rowsPerPage" | "rowsPerPageOptions" | "showFirstButton" | "showLastButton" | "backIconButtonProps" | "nextIconButtonProps" | "sortDirection" | "ActionsComponent" | "SelectProps">>, "ref"> | Omit<Partial<import("@mui/material/TablePagination").TablePaginationBaseProps & {
23
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<import("@mui/material/TablePagination").TablePaginationBaseProps, "hidden" | "color" | "page" | "content" | "size" | "height" | "translate" | "width" | "padding" | "abbr" | "slot" | "title" | "ref" | "colSpan" | "headers" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoFocus" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "rowSpan" | "scope" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "align" | "valign" | "sx" | keyof import("@mui/material/OverridableComponent").CommonProps | "variant" | "count" | "getItemAriaLabel" | "onPageChange" | "rowsPerPage" | "showFirstButton" | "showLastButton" | "labelDisplayedRows" | "labelRowsPerPage" | "onRowsPerPageChange" | "rowsPerPageOptions" | "backIconButtonProps" | "nextIconButtonProps" | "sortDirection" | "ActionsComponent" | "SelectProps">>, "ref"> | Omit<Partial<import("@mui/material/TablePagination").TablePaginationBaseProps & {
24
24
  ActionsComponent?: React.ElementType<import("@mui/material/TablePagination/TablePaginationActions").TablePaginationActionsProps> | undefined;
25
- backIconButtonProps?: Partial<import("@mui/material").IconButtonProps<"button", {}>> | undefined;
25
+ backIconButtonProps?: Partial<import("@mui/material").IconButtonProps> | undefined;
26
26
  classes?: Partial<import("@mui/material/TablePagination").TablePaginationClasses> | undefined;
27
27
  count: number;
28
28
  getItemAriaLabel?: ((type: "first" | "last" | "next" | "previous") => string) | undefined;
29
29
  labelDisplayedRows?: ((paginationInfo: import("@mui/material/TablePagination").LabelDisplayedRowsArgs) => React.ReactNode) | undefined;
30
30
  labelRowsPerPage?: React.ReactNode;
31
- nextIconButtonProps?: Partial<import("@mui/material").IconButtonProps<"button", {}>> | undefined;
31
+ nextIconButtonProps?: Partial<import("@mui/material").IconButtonProps> | undefined;
32
32
  onPageChange: (event: React.MouseEvent<HTMLButtonElement, MouseEvent> | null, page: number) => void;
33
33
  onRowsPerPageChange?: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
34
34
  page: number;
@@ -41,4 +41,4 @@ export declare const GridPagination: React.ForwardRefExoticComponent<(Omit<Parti
41
41
  showFirstButton?: boolean | undefined;
42
42
  showLastButton?: boolean | undefined;
43
43
  sx?: import("@mui/material/styles").SxProps<import("@mui/material/styles").Theme> | undefined;
44
- } & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("@mui/material/TablePagination").TablePaginationBaseProps, "ref"> & React.RefAttributes<React.Component<any, any, any>>, "hidden" | "color" | "page" | "size" | "height" | "translate" | "width" | "padding" | "abbr" | "slot" | "title" | "ref" | "colSpan" | "headers" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoFocus" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "rowSpan" | "scope" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "align" | "valign" | "sx" | keyof import("@mui/material/OverridableComponent").CommonProps | "variant" | "count" | "getItemAriaLabel" | "labelDisplayedRows" | "labelRowsPerPage" | "onPageChange" | "onRowsPerPageChange" | "rowsPerPage" | "rowsPerPageOptions" | "showFirstButton" | "showLastButton" | "backIconButtonProps" | "nextIconButtonProps" | "sortDirection" | "ActionsComponent" | "SelectProps">>, "ref">) & React.RefAttributes<HTMLDivElement>>;
44
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("@mui/material/TablePagination").TablePaginationBaseProps, "ref"> & React.RefAttributes<React.Component<any, any, any>>, "hidden" | "color" | "page" | "content" | "size" | "height" | "translate" | "width" | "padding" | "abbr" | "slot" | "title" | "ref" | "colSpan" | "headers" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoFocus" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "rowSpan" | "scope" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "align" | "valign" | "sx" | keyof import("@mui/material/OverridableComponent").CommonProps | "variant" | "count" | "getItemAriaLabel" | "onPageChange" | "rowsPerPage" | "showFirstButton" | "showLastButton" | "labelDisplayedRows" | "labelRowsPerPage" | "onRowsPerPageChange" | "rowsPerPageOptions" | "backIconButtonProps" | "nextIconButtonProps" | "sortDirection" | "ActionsComponent" | "SelectProps">>, "ref">) & React.RefAttributes<HTMLDivElement>>;
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  const _excluded = ["selected", "rowId", "row", "index", "style", "position", "rowHeight", "className", "visibleColumns", "renderedColumns", "containerWidth", "firstColumnToRender", "lastColumnToRender", "isLastVisible", "focusedCell", "tabbableCell", "onClick", "onDoubleClick", "onMouseEnter", "onMouseLeave"],
4
- _excluded2 = ["changeReason"];
4
+ _excluded2 = ["changeReason", "unstable_updateValueOnRender"];
5
5
  import * as React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import clsx from 'clsx';
@@ -210,6 +210,8 @@ const GridRow = /*#__PURE__*/React.forwardRef(function GridRow(props, refProp) {
210
210
  }
211
211
  if (editCellState != null && column.renderEditCell) {
212
212
  const updatedRow = apiRef.current.getRowWithUpdatedValues(rowId, column.field);
213
+
214
+ // eslint-disable-next-line @typescript-eslint/naming-convention
213
215
  const editCellStateRest = _objectWithoutPropertiesLoose(editCellState, _excluded2);
214
216
  const params = _extends({}, cellParams, {
215
217
  row: updatedRow
@@ -19,11 +19,11 @@ declare const GridActionsCellItem: React.ForwardRefExoticComponent<(Omit<{
19
19
  } & {
20
20
  children?: React.ReactNode;
21
21
  classes?: Partial<import("@mui/material/IconButton").IconButtonClasses> | undefined;
22
- color?: "inherit" | "default" | "warning" | "error" | "success" | "info" | "primary" | "secondary" | undefined;
22
+ color?: import("@mui/types").OverridableStringUnion<"inherit" | "default" | "error" | "success" | "info" | "warning" | "primary" | "secondary", import("@mui/material/IconButton").IconButtonPropsColorOverrides> | undefined;
23
23
  disabled?: boolean | undefined;
24
24
  disableFocusRipple?: boolean | undefined;
25
25
  edge?: false | "end" | "start" | undefined;
26
- size?: "medium" | "large" | "small" | undefined;
26
+ size?: import("@mui/types").OverridableStringUnion<"medium" | "large" | "small", import("@mui/material/IconButton").IconButtonPropsSizeOverrides> | undefined;
27
27
  sx?: import("@mui/system").SxProps<import("@mui/material").Theme> | undefined;
28
28
  } & Omit<{
29
29
  action?: React.Ref<import("@mui/material").ButtonBaseActions> | undefined;
@@ -63,22 +63,25 @@ function GridEditDateCell(props) {
63
63
  classes: rootProps.classes
64
64
  };
65
65
  const classes = useUtilityClasses(ownerState);
66
+ const hasUpdatedEditValueOnMount = React.useRef(false);
67
+ const parseValueToDate = React.useCallback(value => {
68
+ if (value === '') {
69
+ return null;
70
+ }
71
+ const [date, time] = value.split('T');
72
+ const [year, month, day] = date.split('-');
73
+ const parsedDate = new Date();
74
+ parsedDate.setFullYear(Number(year), Number(month) - 1, Number(day));
75
+ parsedDate.setHours(0, 0, 0, 0);
76
+ if (time) {
77
+ const [hours, minutes] = time.split(':');
78
+ parsedDate.setHours(Number(hours), Number(minutes), 0, 0);
79
+ }
80
+ return parsedDate;
81
+ }, []);
66
82
  const handleChange = React.useCallback(async event => {
67
83
  const newFormattedDate = event.target.value;
68
- let newParsedDate;
69
- if (newFormattedDate === '') {
70
- newParsedDate = null;
71
- } else {
72
- const [date, time] = newFormattedDate.split('T');
73
- const [year, month, day] = date.split('-');
74
- newParsedDate = new Date();
75
- newParsedDate.setFullYear(Number(year), Number(month) - 1, Number(day));
76
- newParsedDate.setHours(0, 0, 0, 0);
77
- if (time) {
78
- const [hours, minutes] = time.split(':');
79
- newParsedDate.setHours(Number(hours), Number(minutes), 0, 0);
80
- }
81
- }
84
+ const newParsedDate = parseValueToDate(newFormattedDate);
82
85
  if (onValueChange) {
83
86
  await onValueChange(event, newParsedDate);
84
87
  }
@@ -91,7 +94,7 @@ function GridEditDateCell(props) {
91
94
  field,
92
95
  value: newParsedDate
93
96
  }, event);
94
- }, [apiRef, field, id, onValueChange]);
97
+ }, [apiRef, field, id, onValueChange, parseValueToDate]);
95
98
  React.useEffect(() => {
96
99
  setValueState(state => {
97
100
  var _valueTransformed$par, _state$parsed;
@@ -106,8 +109,26 @@ function GridEditDateCell(props) {
106
109
  inputRef.current.focus();
107
110
  }
108
111
  }, [hasFocus]);
112
+ const meta = apiRef.current.unstable_getEditCellMeta(id, field);
113
+ const handleInputRef = el => {
114
+ inputRef.current = el;
115
+ if (meta.unstable_updateValueOnRender && !hasUpdatedEditValueOnMount.current) {
116
+ const inputValue = inputRef.current.value;
117
+ const parsedDate = parseValueToDate(inputValue);
118
+ setValueState({
119
+ parsed: parsedDate,
120
+ formatted: inputValue
121
+ });
122
+ apiRef.current.setEditCellValue({
123
+ id,
124
+ field,
125
+ value: parsedDate
126
+ });
127
+ hasUpdatedEditValueOnMount.current = true;
128
+ }
129
+ };
109
130
  return /*#__PURE__*/_jsx(StyledInputBase, _extends({
110
- inputRef: inputRef,
131
+ inputRef: handleInputRef,
111
132
  fullWidth: true,
112
133
  className: classes.root,
113
134
  type: isDateTime ? 'datetime-local' : 'date',
@@ -17,7 +17,7 @@ const useUtilityClasses = ownerState => {
17
17
  return composeClasses(slots, getDataGridUtilityClass, classes);
18
18
  };
19
19
  export const ColumnHeaderMenuIcon = /*#__PURE__*/React.memo(props => {
20
- var _rootProps$slotProps;
20
+ var _rootProps$slotProps, _rootProps$slotProps2;
21
21
  const {
22
22
  colDef,
23
23
  open,
@@ -38,22 +38,26 @@ export const ColumnHeaderMenuIcon = /*#__PURE__*/React.memo(props => {
38
38
  }, [apiRef, colDef.field]);
39
39
  return /*#__PURE__*/_jsx("div", {
40
40
  className: classes.root,
41
- children: /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({
42
- ref: iconButtonRef,
43
- tabIndex: -1,
44
- className: classes.button,
45
- "aria-label": apiRef.current.getLocaleText('columnMenuLabel'),
41
+ children: /*#__PURE__*/_jsx(rootProps.slots.baseTooltip, _extends({
46
42
  title: apiRef.current.getLocaleText('columnMenuLabel'),
47
- size: "small",
48
- onClick: handleMenuIconClick,
49
- "aria-expanded": open ? 'true' : undefined,
50
- "aria-haspopup": "true",
51
- "aria-controls": columnMenuId,
52
- id: columnMenuButtonId
53
- }, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseIconButton, {
54
- children: /*#__PURE__*/_jsx(rootProps.slots.columnMenuIcon, {
55
- fontSize: "small"
56
- })
43
+ enterDelay: 1000
44
+ }, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseTooltip, {
45
+ children: /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({
46
+ ref: iconButtonRef,
47
+ tabIndex: -1,
48
+ className: classes.button,
49
+ "aria-label": apiRef.current.getLocaleText('columnMenuLabel'),
50
+ size: "small",
51
+ onClick: handleMenuIconClick,
52
+ "aria-expanded": open ? 'true' : undefined,
53
+ "aria-haspopup": "true",
54
+ "aria-controls": columnMenuId,
55
+ id: columnMenuButtonId
56
+ }, (_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseIconButton, {
57
+ children: /*#__PURE__*/_jsx(rootProps.slots.columnMenuIcon, {
58
+ fontSize: "small"
59
+ })
60
+ }))
57
61
  }))
58
62
  });
59
63
  });
@@ -7,6 +7,14 @@ export interface GridColumnsPanelProps extends GridPanelWrapperProps {
7
7
  autoFocusSearchField?: boolean;
8
8
  disableHideAllButton?: boolean;
9
9
  disableShowAllButton?: boolean;
10
+ /**
11
+ * Returns the list of togglable columns.
12
+ * If used, only those columns will be displayed in the panel
13
+ * which are passed as the return value of the function.
14
+ * @param {GridColDef[]} columns The `ColDef` list of all columns.
15
+ * @returns {GridColDef['field'][]} The list of togglable columns' field names.
16
+ */
17
+ getTogglableColumns?: (columns: GridColDef[]) => GridColDef['field'][];
10
18
  }
11
19
  declare function GridColumnsPanel(props: GridColumnsPanelProps): JSX.Element;
12
20
  declare namespace GridColumnsPanel {
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["sort", "searchPredicate", "autoFocusSearchField", "disableHideAllButton", "disableShowAllButton"];
3
+ const _excluded = ["sort", "searchPredicate", "autoFocusSearchField", "disableHideAllButton", "disableShowAllButton", "getTogglableColumns"];
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { unstable_composeClasses as composeClasses } from '@mui/utils';
@@ -72,7 +72,8 @@ function GridColumnsPanel(props) {
72
72
  searchPredicate = defaultSearchPredicate,
73
73
  autoFocusSearchField = true,
74
74
  disableHideAllButton = false,
75
- disableShowAllButton = false
75
+ disableShowAllButton = false,
76
+ getTogglableColumns
76
77
  } = props,
77
78
  other = _objectWithoutPropertiesLoose(props, _excluded);
78
79
  const sortedColumns = React.useMemo(() => {
@@ -110,12 +111,15 @@ function GridColumnsPanel(props) {
110
111
  setSearchValue(event.target.value);
111
112
  }, []);
112
113
  const currentColumns = React.useMemo(() => {
114
+ const togglableColumns = getTogglableColumns ? getTogglableColumns(sortedColumns) : null;
115
+ const togglableSortedColumns = togglableColumns ? sortedColumns.filter(({
116
+ field
117
+ }) => togglableColumns.includes(field)) : sortedColumns;
113
118
  if (!searchValue) {
114
- return sortedColumns;
119
+ return togglableSortedColumns;
115
120
  }
116
- const searchValueToCheck = searchValue.toLowerCase();
117
- return sortedColumns.filter(column => searchPredicate(column, searchValueToCheck));
118
- }, [sortedColumns, searchValue, searchPredicate]);
121
+ return togglableSortedColumns.filter(column => searchPredicate(column, searchValue.toLowerCase()));
122
+ }, [sortedColumns, searchValue, searchPredicate, getTogglableColumns]);
119
123
  const firstSwitchRef = React.useRef(null);
120
124
  React.useEffect(() => {
121
125
  if (autoFocusSearchField) {
@@ -196,6 +200,14 @@ process.env.NODE_ENV !== "production" ? GridColumnsPanel.propTypes = {
196
200
  autoFocusSearchField: PropTypes.bool,
197
201
  disableHideAllButton: PropTypes.bool,
198
202
  disableShowAllButton: PropTypes.bool,
203
+ /**
204
+ * Returns the list of togglable columns.
205
+ * If used, only those columns will be displayed in the panel
206
+ * which are passed as the return value of the function.
207
+ * @param {GridColDef[]} columns The `ColDef` list of all columns.
208
+ * @returns {GridColDef['field'][]} The list of togglable columns' field names.
209
+ */
210
+ getTogglableColumns: PropTypes.func,
199
211
  searchPredicate: PropTypes.func,
200
212
  slotProps: PropTypes.object,
201
213
  sort: PropTypes.oneOf(['asc', 'desc'])
@@ -24,7 +24,7 @@ declare const GridPanelRoot: import("@emotion/styled").StyledComponent<Pick<Omit
24
24
  root?: import("@mui/base").SlotComponentProps<"div", import("@mui/base").PopperUnstyledRootSlotPropsOverrides, import("@mui/base").PopperUnstyledOwnerState> | undefined;
25
25
  } | undefined;
26
26
  sx?: import("@mui/material/styles").SxProps<import("@mui/material/styles").Theme> | undefined;
27
- } & React.RefAttributes<HTMLDivElement>, "hidden" | "color" | "style" | "open" | "translate" | "transition" | "slot" | "title" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "component" | "sx" | "ownerState" | "components" | "container" | "placement" | "disablePortal" | "modifiers" | "anchorEl" | "keepMounted" | "popperOptions" | "popperRef" | "slotProps" | "slots" | "componentsProps" | keyof React.RefAttributes<HTMLDivElement>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
27
+ } & React.RefAttributes<HTMLDivElement>, "hidden" | "color" | "content" | "style" | "open" | "translate" | "container" | "transition" | "slot" | "title" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "component" | "sx" | "ownerState" | "components" | "placement" | "disablePortal" | "modifiers" | "anchorEl" | "keepMounted" | "popperOptions" | "popperRef" | "slotProps" | "slots" | "componentsProps" | keyof React.RefAttributes<HTMLDivElement>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
28
28
  ownerState: OwnerState;
29
29
  }, {}, {}>;
30
30
  declare const GridPanel: React.ForwardRefExoticComponent<Omit<GridPanelProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -2,11 +2,12 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  const _excluded = ["item", "applyValue", "apiRef", "focusElementRef"];
4
4
  import * as React from 'react';
5
+ import { unstable_useId as useId } from '@mui/utils';
5
6
  import { useGridRootProps } from '../../../hooks/utils/useGridRootProps';
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  import { jsxs as _jsxs } from "react/jsx-runtime";
8
9
  export function GridFilterInputBoolean(props) {
9
- var _rootProps$slotProps, _baseSelectProps$nati, _rootProps$slotProps2, _rootProps$slotProps3, _rootProps$slotProps4;
10
+ var _rootProps$slotProps, _baseSelectProps$nati, _rootProps$slotProps2, _rootProps$slotProps3;
10
11
  const {
11
12
  item,
12
13
  applyValue,
@@ -16,6 +17,8 @@ export function GridFilterInputBoolean(props) {
16
17
  others = _objectWithoutPropertiesLoose(props, _excluded);
17
18
  const [filterValueState, setFilterValueState] = React.useState(item.value || '');
18
19
  const rootProps = useGridRootProps();
20
+ const labelId = useId();
21
+ const selectId = useId();
19
22
  const baseSelectProps = ((_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseSelect) || {};
20
23
  const isSelectNative = (_baseSelectProps$nati = baseSelectProps.native) != null ? _baseSelectProps$nati : true;
21
24
  const baseSelectOptionProps = ((_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseSelectOption) || {};
@@ -29,34 +32,39 @@ export function GridFilterInputBoolean(props) {
29
32
  React.useEffect(() => {
30
33
  setFilterValueState(item.value || '');
31
34
  }, [item.value]);
32
- return /*#__PURE__*/_jsxs(rootProps.slots.baseTextField, _extends({
33
- // TODO: use baseSelect slot
34
- label: apiRef.current.getLocaleText('filterPanelInputLabel'),
35
- value: filterValueState,
36
- onChange: onFilterChange,
37
- select: true,
38
- variant: "standard",
39
- SelectProps: _extends({
35
+ const label = apiRef.current.getLocaleText('filterPanelInputLabel');
36
+ return /*#__PURE__*/_jsxs(React.Fragment, {
37
+ children: [/*#__PURE__*/_jsx(rootProps.slots.baseInputLabel, _extends({}, (_rootProps$slotProps3 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps3.baseInputLabel, {
38
+ id: labelId,
39
+ shrink: true,
40
+ variant: "standard",
41
+ children: label
42
+ })), /*#__PURE__*/_jsxs(rootProps.slots.baseSelect, _extends({
43
+ labelId: labelId,
44
+ id: selectId,
45
+ label: label,
46
+ value: filterValueState,
47
+ onChange: onFilterChange,
48
+ variant: "standard",
40
49
  native: isSelectNative,
41
- displayEmpty: true
42
- }, (_rootProps$slotProps3 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps3.baseSelect),
43
- InputLabelProps: {
44
- shrink: true
45
- },
46
- inputRef: focusElementRef
47
- }, others, (_rootProps$slotProps4 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps4.baseTextField, {
48
- children: [/*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
49
- native: isSelectNative,
50
- value: "",
51
- children: apiRef.current.getLocaleText('filterValueAny')
52
- })), /*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
53
- native: isSelectNative,
54
- value: "true",
55
- children: apiRef.current.getLocaleText('filterValueTrue')
56
- })), /*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
57
- native: isSelectNative,
58
- value: "false",
59
- children: apiRef.current.getLocaleText('filterValueFalse')
50
+ displayEmpty: true,
51
+ inputProps: {
52
+ ref: focusElementRef
53
+ }
54
+ }, others, baseSelectProps, {
55
+ children: [/*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
56
+ native: isSelectNative,
57
+ value: "",
58
+ children: apiRef.current.getLocaleText('filterValueAny')
59
+ })), /*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
60
+ native: isSelectNative,
61
+ value: "true",
62
+ children: apiRef.current.getLocaleText('filterValueTrue')
63
+ })), /*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
64
+ native: isSelectNative,
65
+ value: "false",
66
+ children: apiRef.current.getLocaleText('filterValueFalse')
67
+ }))]
60
68
  }))]
61
- }));
69
+ });
62
70
  }