@mui/x-data-grid 8.0.0-alpha.5 → 8.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.
- package/CHANGELOG.md +79 -0
- package/DataGrid/DataGrid.js +4 -3
- package/components/GridColumnHeaders.d.ts +1 -1
- package/components/GridColumnHeaders.js +4 -4
- package/components/GridFooter.d.ts +2 -1
- package/components/GridFooter.js +4 -4
- package/components/GridLoadingOverlay.d.ts +1 -1
- package/components/GridLoadingOverlay.js +10 -8
- package/components/GridNoResultsOverlay.d.ts +2 -1
- package/components/GridNoResultsOverlay.js +4 -4
- package/components/GridNoRowsOverlay.d.ts +2 -1
- package/components/GridNoRowsOverlay.js +4 -4
- package/components/GridPagination.d.ts +1 -1
- package/components/GridPagination.js +5 -3
- package/components/GridRow.d.ts +1 -1
- package/components/GridRow.js +3 -2
- package/components/GridRowCount.d.ts +1 -1
- package/components/GridRowCount.js +3 -2
- package/components/GridSelectedRowCount.d.ts +4 -1
- package/components/GridSelectedRowCount.js +3 -2
- package/components/GridSkeletonLoadingOverlay.d.ts +1 -1
- package/components/GridSkeletonLoadingOverlay.js +4 -3
- package/components/cell/GridActionsCellItem.d.ts +1 -1
- package/components/cell/GridActionsCellItem.js +3 -2
- package/components/cell/GridCell.d.ts +1 -1
- package/components/cell/GridCell.js +3 -2
- package/components/cell/GridEditInputCell.d.ts +1 -1
- package/components/cell/GridEditInputCell.js +72 -3
- package/components/cell/GridSkeletonCell.js +1 -2
- package/components/columnHeaders/GridBaseColumnHeaders.d.ts +1 -1
- package/components/columnHeaders/GridBaseColumnHeaders.js +4 -3
- package/components/columnHeaders/GridColumnHeaderTitle.js +5 -3
- package/components/columnHeaders/GridGenericColumnHeaderItem.d.ts +1 -1
- package/components/columnHeaders/GridGenericColumnHeaderItem.js +3 -2
- package/components/columnHeaders/GridIconButtonContainer.d.ts +1 -1
- package/components/columnHeaders/GridIconButtonContainer.js +5 -3
- package/components/columnSelection/GridCellCheckboxRenderer.d.ts +2 -2
- package/components/columnSelection/GridCellCheckboxRenderer.js +5 -3
- package/components/columnSelection/GridHeaderCheckbox.d.ts +1 -1
- package/components/columnSelection/GridHeaderCheckbox.js +5 -3
- package/components/containers/GridFooterContainer.d.ts +1 -1
- package/components/containers/GridFooterContainer.js +5 -3
- package/components/containers/GridOverlay.d.ts +1 -1
- package/components/containers/GridOverlay.js +5 -3
- package/components/containers/GridRoot.d.ts +1 -1
- package/components/containers/GridRoot.js +5 -3
- package/components/containers/GridToolbarContainer.d.ts +1 -1
- package/components/containers/GridToolbarContainer.js +3 -2
- package/components/menu/columnMenu/GridColumnMenu.d.ts +2 -2
- package/components/menu/columnMenu/GridColumnMenu.js +5 -5
- package/components/menu/columnMenu/GridColumnMenuContainer.d.ts +1 -1
- package/components/menu/columnMenu/GridColumnMenuContainer.js +3 -2
- package/components/panel/GridPanel.d.ts +1 -1
- package/components/panel/GridPanel.js +3 -2
- package/components/panel/GridPanelWrapper.d.ts +1 -1
- package/components/panel/GridPanelWrapper.js +5 -3
- package/components/panel/filterPanel/GridFilterForm.d.ts +1 -1
- package/components/panel/filterPanel/GridFilterForm.js +3 -2
- package/components/panel/filterPanel/GridFilterInputBoolean.d.ts +1 -1
- package/components/panel/filterPanel/GridFilterInputBoolean.js +9 -9
- package/components/panel/filterPanel/GridFilterInputValue.js +17 -10
- package/components/panel/filterPanel/GridFilterPanel.d.ts +1 -1
- package/components/panel/filterPanel/GridFilterPanel.js +4 -4
- package/components/panel/filterPanel/index.d.ts +2 -1
- package/components/panel/filterPanel/index.js +1 -1
- package/components/toolbar/GridToolbar.d.ts +1 -1
- package/components/toolbar/GridToolbar.js +4 -4
- package/components/toolbar/GridToolbarColumnsButton.d.ts +1 -1
- package/components/toolbar/GridToolbarColumnsButton.js +3 -2
- package/components/toolbar/GridToolbarDensitySelector.d.ts +1 -1
- package/components/toolbar/GridToolbarDensitySelector.js +3 -2
- package/components/toolbar/GridToolbarExport.d.ts +1 -1
- package/components/toolbar/GridToolbarExport.js +2 -1
- package/components/toolbar/GridToolbarExportContainer.d.ts +1 -1
- package/components/toolbar/GridToolbarExportContainer.js +3 -2
- package/components/toolbar/GridToolbarFilterButton.d.ts +1 -1
- package/components/toolbar/GridToolbarFilterButton.js +3 -2
- package/components/virtualization/GridMainContainer.d.ts +3 -1
- package/components/virtualization/GridMainContainer.js +3 -2
- package/components/virtualization/GridVirtualScrollbar.d.ts +1 -1
- package/components/virtualization/GridVirtualScrollbar.js +2 -1
- package/components/virtualization/GridVirtualScrollerContent.d.ts +2 -0
- package/components/virtualization/GridVirtualScrollerContent.js +5 -5
- package/components/virtualization/GridVirtualScrollerRenderZone.d.ts +2 -0
- package/components/virtualization/GridVirtualScrollerRenderZone.js +5 -3
- package/hooks/features/rows/useGridRowSpanning.js +76 -87
- package/index.js +1 -1
- package/locales/nlNL.js +5 -6
- package/material/index.js +6 -0
- package/models/gridBaseSlots.d.ts +15 -0
- package/models/gridSlotsComponent.d.ts +16 -1
- package/models/gridSlotsComponentsProps.d.ts +14 -1
- package/modern/DataGrid/DataGrid.js +4 -3
- package/modern/components/GridColumnHeaders.js +4 -4
- package/modern/components/GridFooter.js +4 -4
- package/modern/components/GridLoadingOverlay.js +10 -8
- package/modern/components/GridNoResultsOverlay.js +4 -4
- package/modern/components/GridNoRowsOverlay.js +4 -4
- package/modern/components/GridPagination.js +5 -3
- package/modern/components/GridRow.js +3 -2
- package/modern/components/GridRowCount.js +3 -2
- package/modern/components/GridSelectedRowCount.js +3 -2
- package/modern/components/GridSkeletonLoadingOverlay.js +4 -3
- package/modern/components/cell/GridActionsCellItem.js +3 -2
- package/modern/components/cell/GridCell.js +3 -2
- package/modern/components/cell/GridEditInputCell.js +72 -3
- package/modern/components/cell/GridSkeletonCell.js +1 -2
- package/modern/components/columnHeaders/GridBaseColumnHeaders.js +4 -3
- package/modern/components/columnHeaders/GridColumnHeaderTitle.js +5 -3
- package/modern/components/columnHeaders/GridGenericColumnHeaderItem.js +3 -2
- package/modern/components/columnHeaders/GridIconButtonContainer.js +5 -3
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +5 -3
- package/modern/components/columnSelection/GridHeaderCheckbox.js +5 -3
- package/modern/components/containers/GridFooterContainer.js +5 -3
- package/modern/components/containers/GridOverlay.js +5 -3
- package/modern/components/containers/GridRoot.js +5 -3
- package/modern/components/containers/GridToolbarContainer.js +3 -2
- package/modern/components/menu/columnMenu/GridColumnMenu.js +5 -5
- package/modern/components/menu/columnMenu/GridColumnMenuContainer.js +3 -2
- package/modern/components/panel/GridPanel.js +3 -2
- package/modern/components/panel/GridPanelWrapper.js +5 -3
- package/modern/components/panel/filterPanel/GridFilterForm.js +3 -2
- package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +9 -9
- package/modern/components/panel/filterPanel/GridFilterInputValue.js +17 -10
- package/modern/components/panel/filterPanel/GridFilterPanel.js +4 -4
- package/modern/components/panel/filterPanel/index.js +1 -1
- package/modern/components/toolbar/GridToolbar.js +4 -4
- package/modern/components/toolbar/GridToolbarColumnsButton.js +3 -2
- package/modern/components/toolbar/GridToolbarDensitySelector.js +3 -2
- package/modern/components/toolbar/GridToolbarExport.js +2 -1
- package/modern/components/toolbar/GridToolbarExportContainer.js +3 -2
- package/modern/components/toolbar/GridToolbarFilterButton.js +3 -2
- package/modern/components/virtualization/GridMainContainer.js +3 -2
- package/modern/components/virtualization/GridVirtualScrollbar.js +2 -1
- package/modern/components/virtualization/GridVirtualScrollerContent.js +5 -5
- package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +5 -3
- package/modern/hooks/features/rows/useGridRowSpanning.js +76 -87
- package/modern/index.js +1 -1
- package/modern/locales/nlNL.js +5 -6
- package/modern/material/index.js +6 -0
- package/modern/utils/utils.js +6 -1
- package/node/DataGrid/DataGrid.js +4 -3
- package/node/components/GridColumnHeaders.js +4 -4
- package/node/components/GridFooter.js +4 -4
- package/node/components/GridLoadingOverlay.js +10 -8
- package/node/components/GridNoResultsOverlay.js +4 -4
- package/node/components/GridNoRowsOverlay.js +4 -4
- package/node/components/GridPagination.js +5 -3
- package/node/components/GridRow.js +3 -2
- package/node/components/GridRowCount.js +3 -2
- package/node/components/GridSelectedRowCount.js +3 -2
- package/node/components/GridSkeletonLoadingOverlay.js +4 -3
- package/node/components/cell/GridActionsCellItem.js +3 -2
- package/node/components/cell/GridCell.js +3 -2
- package/node/components/cell/GridEditInputCell.js +72 -3
- package/node/components/cell/GridSkeletonCell.js +1 -2
- package/node/components/columnHeaders/GridBaseColumnHeaders.js +4 -3
- package/node/components/columnHeaders/GridColumnHeaderTitle.js +5 -3
- package/node/components/columnHeaders/GridGenericColumnHeaderItem.js +3 -2
- package/node/components/columnHeaders/GridIconButtonContainer.js +5 -3
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +5 -3
- package/node/components/columnSelection/GridHeaderCheckbox.js +5 -3
- package/node/components/containers/GridFooterContainer.js +5 -3
- package/node/components/containers/GridOverlay.js +5 -3
- package/node/components/containers/GridRoot.js +5 -3
- package/node/components/containers/GridToolbarContainer.js +3 -2
- package/node/components/menu/columnMenu/GridColumnMenu.js +5 -5
- package/node/components/menu/columnMenu/GridColumnMenuContainer.js +3 -2
- package/node/components/panel/GridPanel.js +3 -2
- package/node/components/panel/GridPanelWrapper.js +5 -3
- package/node/components/panel/filterPanel/GridFilterForm.js +3 -2
- package/node/components/panel/filterPanel/GridFilterInputBoolean.js +10 -11
- package/node/components/panel/filterPanel/GridFilterInputValue.js +17 -10
- package/node/components/panel/filterPanel/GridFilterPanel.js +4 -4
- package/node/components/panel/filterPanel/index.js +7 -11
- package/node/components/toolbar/GridToolbar.js +4 -4
- package/node/components/toolbar/GridToolbarColumnsButton.js +3 -2
- package/node/components/toolbar/GridToolbarDensitySelector.js +3 -2
- package/node/components/toolbar/GridToolbarExport.js +2 -1
- package/node/components/toolbar/GridToolbarExportContainer.js +3 -2
- package/node/components/toolbar/GridToolbarFilterButton.js +3 -2
- package/node/components/virtualization/GridMainContainer.js +3 -2
- package/node/components/virtualization/GridVirtualScrollbar.js +2 -1
- package/node/components/virtualization/GridVirtualScrollerContent.js +5 -5
- package/node/components/virtualization/GridVirtualScrollerRenderZone.js +5 -3
- package/node/hooks/features/rows/useGridRowSpanning.js +74 -85
- package/node/index.js +1 -1
- package/node/locales/nlNL.js +5 -6
- package/node/material/index.js +6 -0
- package/node/utils/utils.js +8 -1
- package/package.json +2 -2
- package/utils/utils.d.ts +1 -0
- package/utils/utils.js +6 -1
|
@@ -9,6 +9,7 @@ import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/
|
|
|
9
9
|
import ClickAwayListener from '@mui/material/ClickAwayListener';
|
|
10
10
|
import Paper from '@mui/material/Paper';
|
|
11
11
|
import Popper from '@mui/material/Popper';
|
|
12
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
12
13
|
import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
|
|
13
14
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
14
15
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -36,7 +37,7 @@ const GridPaperRoot = styled(Paper, {
|
|
|
36
37
|
maxWidth: `calc(100vw - ${theme.spacing(0.5)})`,
|
|
37
38
|
overflow: 'auto'
|
|
38
39
|
}));
|
|
39
|
-
const GridPanel =
|
|
40
|
+
const GridPanel = forwardRef((props, ref) => {
|
|
40
41
|
const {
|
|
41
42
|
children,
|
|
42
43
|
className
|
|
@@ -82,13 +83,13 @@ const GridPanel = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
82
83
|
return null;
|
|
83
84
|
}
|
|
84
85
|
return /*#__PURE__*/_jsx(GridPanelRoot, _extends({
|
|
85
|
-
ref: ref,
|
|
86
86
|
placement: "bottom-start",
|
|
87
87
|
className: clsx(classes.panel, className),
|
|
88
88
|
ownerState: rootProps,
|
|
89
89
|
anchorEl: anchorEl,
|
|
90
90
|
modifiers: modifiers
|
|
91
91
|
}, other, {
|
|
92
|
+
ref: ref,
|
|
92
93
|
children: /*#__PURE__*/_jsx(ClickAwayListener, {
|
|
93
94
|
mouseEvent: "onMouseUp",
|
|
94
95
|
onClickAway: handleClickAway,
|
|
@@ -7,5 +7,5 @@ export interface GridPanelWrapperProps extends React.PropsWithChildren<React.HTM
|
|
|
7
7
|
TrapFocus?: TrapFocusProps;
|
|
8
8
|
};
|
|
9
9
|
}
|
|
10
|
-
declare const GridPanelWrapper: React.ForwardRefExoticComponent<GridPanelWrapperProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
declare const GridPanelWrapper: React.ForwardRefExoticComponent<GridPanelWrapperProps> | React.ForwardRefExoticComponent<GridPanelWrapperProps & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export { GridPanelWrapper };
|
|
@@ -7,6 +7,7 @@ import clsx from 'clsx';
|
|
|
7
7
|
import FocusTrap from '@mui/material/Unstable_TrapFocus';
|
|
8
8
|
import { styled } from '@mui/material/styles';
|
|
9
9
|
import composeClasses from '@mui/utils/composeClasses';
|
|
10
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
10
11
|
import { getDataGridUtilityClass } from "../../constants/gridClasses.js";
|
|
11
12
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
12
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -32,7 +33,7 @@ const GridPanelWrapperRoot = styled('div', {
|
|
|
32
33
|
}
|
|
33
34
|
});
|
|
34
35
|
const isEnabled = () => true;
|
|
35
|
-
const GridPanelWrapper =
|
|
36
|
+
const GridPanelWrapper = forwardRef(function GridPanelWrapper(props, ref) {
|
|
36
37
|
const {
|
|
37
38
|
className,
|
|
38
39
|
slotProps = {}
|
|
@@ -46,11 +47,12 @@ const GridPanelWrapper = /*#__PURE__*/React.forwardRef(function GridPanelWrapper
|
|
|
46
47
|
isEnabled: isEnabled
|
|
47
48
|
}, slotProps.TrapFocus, {
|
|
48
49
|
children: /*#__PURE__*/_jsx(GridPanelWrapperRoot, _extends({
|
|
49
|
-
ref: ref,
|
|
50
50
|
tabIndex: -1,
|
|
51
51
|
className: clsx(classes.root, className),
|
|
52
52
|
ownerState: rootProps
|
|
53
|
-
}, other
|
|
53
|
+
}, other, {
|
|
54
|
+
ref: ref
|
|
55
|
+
}))
|
|
54
56
|
}));
|
|
55
57
|
});
|
|
56
58
|
process.env.NODE_ENV !== "production" ? GridPanelWrapper.propTypes = {
|
|
@@ -96,7 +96,7 @@ export interface GridFilterFormProps {
|
|
|
96
96
|
*/
|
|
97
97
|
children?: React.ReactNode;
|
|
98
98
|
}
|
|
99
|
-
declare const GridFilterForm: React.ForwardRefExoticComponent<GridFilterFormProps & React.RefAttributes<HTMLDivElement>>;
|
|
99
|
+
declare const GridFilterForm: React.ForwardRefExoticComponent<GridFilterFormProps> | React.ForwardRefExoticComponent<GridFilterFormProps & React.RefAttributes<HTMLDivElement>>;
|
|
100
100
|
/**
|
|
101
101
|
* Demos:
|
|
102
102
|
* - [Filtering - overview](https://mui.com/x/react-data-grid/filtering/)
|
|
@@ -7,6 +7,7 @@ import PropTypes from 'prop-types';
|
|
|
7
7
|
import { unstable_composeClasses as composeClasses, unstable_useId as useId, unstable_capitalize as capitalize } from '@mui/utils';
|
|
8
8
|
import { styled } from '@mui/material/styles';
|
|
9
9
|
import clsx from 'clsx';
|
|
10
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
10
11
|
import { gridFilterableColumnDefinitionsSelector, gridColumnLookupSelector } from "../../../hooks/features/columns/gridColumnsSelector.js";
|
|
11
12
|
import { gridFilterModelSelector } from "../../../hooks/features/filter/gridFilterSelector.js";
|
|
12
13
|
import { useGridSelector } from "../../../hooks/utils/useGridSelector.js";
|
|
@@ -90,7 +91,7 @@ const getLogicOperatorLocaleKey = logicOperator => {
|
|
|
90
91
|
};
|
|
91
92
|
const getColumnLabel = col => col.headerName || col.field;
|
|
92
93
|
const collator = new Intl.Collator();
|
|
93
|
-
const GridFilterForm =
|
|
94
|
+
const GridFilterForm = forwardRef(function GridFilterForm(props, ref) {
|
|
94
95
|
const {
|
|
95
96
|
item,
|
|
96
97
|
hasMultipleFilters,
|
|
@@ -250,11 +251,11 @@ const GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(pro
|
|
|
250
251
|
}
|
|
251
252
|
}), [currentOperator]);
|
|
252
253
|
return /*#__PURE__*/_jsxs(GridFilterFormRoot, _extends({
|
|
253
|
-
ref: ref,
|
|
254
254
|
className: classes.root,
|
|
255
255
|
"data-id": item.id,
|
|
256
256
|
ownerState: rootProps
|
|
257
257
|
}, other, {
|
|
258
|
+
ref: ref,
|
|
258
259
|
children: [/*#__PURE__*/_jsx(FilterFormDeleteIcon, _extends({
|
|
259
260
|
as: rootProps.slots.baseFormControl
|
|
260
261
|
}, baseFormControlProps, deleteIconProps, {
|
|
@@ -9,9 +9,9 @@ export type GridFilterInputBooleanProps = GridFilterInputValueProps & TextFieldP
|
|
|
9
9
|
*/
|
|
10
10
|
isFilterActive?: boolean;
|
|
11
11
|
};
|
|
12
|
-
export declare const sanitizeFilterItemValue: (value: any) => boolean | undefined;
|
|
13
12
|
declare function GridFilterInputBoolean(props: GridFilterInputBooleanProps): React.JSX.Element;
|
|
14
13
|
declare namespace GridFilterInputBoolean {
|
|
15
14
|
var propTypes: any;
|
|
16
15
|
}
|
|
16
|
+
export declare function sanitizeFilterItemValue(value: any): boolean | undefined;
|
|
17
17
|
export { GridFilterInputBoolean };
|
|
@@ -7,15 +7,6 @@ import { refType, unstable_useId as useId } from '@mui/utils';
|
|
|
7
7
|
import { styled } from '@mui/material/styles';
|
|
8
8
|
import { useGridRootProps } from "../../../hooks/utils/useGridRootProps.js";
|
|
9
9
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
-
export const sanitizeFilterItemValue = value => {
|
|
11
|
-
if (String(value).toLowerCase() === 'true') {
|
|
12
|
-
return true;
|
|
13
|
-
}
|
|
14
|
-
if (String(value).toLowerCase() === 'false') {
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
return undefined;
|
|
18
|
-
};
|
|
19
10
|
const BooleanOperatorContainer = styled('div')({
|
|
20
11
|
display: 'flex',
|
|
21
12
|
alignItems: 'center',
|
|
@@ -94,6 +85,15 @@ function GridFilterInputBoolean(props) {
|
|
|
94
85
|
}), clearButton]
|
|
95
86
|
});
|
|
96
87
|
}
|
|
88
|
+
export function sanitizeFilterItemValue(value) {
|
|
89
|
+
if (String(value).toLowerCase() === 'true') {
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
92
|
+
if (String(value).toLowerCase() === 'false') {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
return undefined;
|
|
96
|
+
}
|
|
97
97
|
process.env.NODE_ENV !== "production" ? GridFilterInputBoolean.propTypes = {
|
|
98
98
|
// ----------------------------- Warning --------------------------------
|
|
99
99
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
@@ -22,19 +22,17 @@ function GridFilterInputValue(props) {
|
|
|
22
22
|
} = props,
|
|
23
23
|
others = _objectWithoutPropertiesLoose(props, _excluded);
|
|
24
24
|
const filterTimeout = useTimeout();
|
|
25
|
-
const [filterValueState, setFilterValueState] = React.useState(item.value
|
|
25
|
+
const [filterValueState, setFilterValueState] = React.useState(sanitizeFilterItemValue(item.value, type));
|
|
26
26
|
const [applying, setIsApplying] = React.useState(false);
|
|
27
27
|
const id = useId();
|
|
28
28
|
const rootProps = useGridRootProps();
|
|
29
29
|
const onFilterChange = React.useCallback(event => {
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
} = event.target;
|
|
33
|
-
setFilterValueState(String(value));
|
|
30
|
+
const value = sanitizeFilterItemValue(event.target.value, type);
|
|
31
|
+
setFilterValueState(value);
|
|
34
32
|
setIsApplying(true);
|
|
35
33
|
filterTimeout.start(rootProps.filterDebounceMs, () => {
|
|
36
34
|
const newItem = _extends({}, item, {
|
|
37
|
-
value
|
|
35
|
+
value,
|
|
38
36
|
fromInput: id
|
|
39
37
|
});
|
|
40
38
|
applyValue(newItem);
|
|
@@ -43,15 +41,15 @@ function GridFilterInputValue(props) {
|
|
|
43
41
|
}, [filterTimeout, rootProps.filterDebounceMs, item, type, id, applyValue]);
|
|
44
42
|
React.useEffect(() => {
|
|
45
43
|
const itemPlusTag = item;
|
|
46
|
-
if (itemPlusTag.fromInput !== id || item.value
|
|
47
|
-
setFilterValueState(
|
|
44
|
+
if (itemPlusTag.fromInput !== id || item.value == null) {
|
|
45
|
+
setFilterValueState(sanitizeFilterItemValue(item.value, type));
|
|
48
46
|
}
|
|
49
|
-
}, [id, item]);
|
|
47
|
+
}, [id, item, type]);
|
|
50
48
|
return /*#__PURE__*/_jsx(rootProps.slots.baseTextField, _extends({
|
|
51
49
|
id: id,
|
|
52
50
|
label: apiRef.current.getLocaleText('filterPanelInputLabel'),
|
|
53
51
|
placeholder: apiRef.current.getLocaleText('filterPanelInputPlaceholder'),
|
|
54
|
-
value: filterValueState,
|
|
52
|
+
value: filterValueState === undefined ? '' : String(filterValueState),
|
|
55
53
|
onChange: onFilterChange,
|
|
56
54
|
variant: variant,
|
|
57
55
|
type: type || 'text',
|
|
@@ -73,6 +71,15 @@ function GridFilterInputValue(props) {
|
|
|
73
71
|
inputRef: focusElementRef
|
|
74
72
|
}, others, rootProps.slotProps?.baseTextField));
|
|
75
73
|
}
|
|
74
|
+
function sanitizeFilterItemValue(value, type) {
|
|
75
|
+
if (value == null || value === '') {
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
if (type === 'number') {
|
|
79
|
+
return Number(value);
|
|
80
|
+
}
|
|
81
|
+
return String(value);
|
|
82
|
+
}
|
|
76
83
|
process.env.NODE_ENV !== "production" ? GridFilterInputValue.propTypes = {
|
|
77
84
|
// ----------------------------- Warning --------------------------------
|
|
78
85
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
@@ -38,7 +38,7 @@ export interface GridFilterPanelProps extends Pick<GridFilterFormProps, 'logicOp
|
|
|
38
38
|
children?: React.ReactNode;
|
|
39
39
|
}
|
|
40
40
|
declare const getGridFilter: (col: GridStateColDef) => GridFilterItem;
|
|
41
|
-
declare const GridFilterPanel: React.ForwardRefExoticComponent<GridFilterPanelProps & React.RefAttributes<HTMLDivElement>>;
|
|
41
|
+
declare const GridFilterPanel: React.ForwardRefExoticComponent<GridFilterPanelProps> | React.ForwardRefExoticComponent<GridFilterPanelProps & React.RefAttributes<HTMLDivElement>>;
|
|
42
42
|
/**
|
|
43
43
|
* Demos:
|
|
44
44
|
* - [Filtering - overview](https://mui.com/x/react-data-grid/filtering/)
|
|
@@ -3,6 +3,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
3
3
|
const _excluded = ["logicOperators", "columnsSort", "filterFormProps", "getColumnForNewFilter", "children", "disableAddFilterButton", "disableRemoveAllButton"];
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
6
7
|
import { GridLogicOperator } from "../../../models/gridFilterItem.js";
|
|
7
8
|
import { useGridApiContext } from "../../../hooks/utils/useGridApiContext.js";
|
|
8
9
|
import { GridPanelContent } from "../GridPanelContent.js";
|
|
@@ -19,7 +20,7 @@ const getGridFilter = col => ({
|
|
|
19
20
|
operator: col.filterOperators[0].value,
|
|
20
21
|
id: Math.round(Math.random() * 1e5)
|
|
21
22
|
});
|
|
22
|
-
const GridFilterPanel =
|
|
23
|
+
const GridFilterPanel = forwardRef(function GridFilterPanel(props, ref) {
|
|
23
24
|
const apiRef = useGridApiContext();
|
|
24
25
|
const rootProps = useGridRootProps();
|
|
25
26
|
const filterModel = useGridSelector(apiRef, gridFilterModelSelector);
|
|
@@ -141,9 +142,8 @@ const GridFilterPanel = /*#__PURE__*/React.forwardRef(function GridFilterPanel(p
|
|
|
141
142
|
lastFilterRef.current.focus();
|
|
142
143
|
}
|
|
143
144
|
}, [validFilters.length]);
|
|
144
|
-
return /*#__PURE__*/_jsxs(GridPanelWrapper, _extends({
|
|
145
|
-
ref: ref
|
|
146
|
-
}, other, {
|
|
145
|
+
return /*#__PURE__*/_jsxs(GridPanelWrapper, _extends({}, other, {
|
|
146
|
+
ref: ref,
|
|
147
147
|
children: [/*#__PURE__*/_jsxs(GridPanelContent, {
|
|
148
148
|
children: [readOnlyFilters.map((item, index) => /*#__PURE__*/_jsx(GridFilterForm, _extends({
|
|
149
149
|
item: item,
|
|
@@ -2,7 +2,8 @@ export * from './GridFilterForm';
|
|
|
2
2
|
export * from './GridFilterInputValue';
|
|
3
3
|
export * from './GridFilterInputDate';
|
|
4
4
|
export * from './GridFilterInputSingleSelect';
|
|
5
|
-
export
|
|
5
|
+
export { GridFilterInputBoolean } from './GridFilterInputBoolean';
|
|
6
|
+
export type { GridFilterInputBooleanProps } from './GridFilterInputBoolean';
|
|
6
7
|
export * from './GridFilterInputValueProps';
|
|
7
8
|
export { GridFilterPanel } from './GridFilterPanel';
|
|
8
9
|
export type { GetColumnForNewFilterArgs } from './GridFilterPanel';
|
|
@@ -2,7 +2,7 @@ export * from "./GridFilterForm.js";
|
|
|
2
2
|
export * from "./GridFilterInputValue.js";
|
|
3
3
|
export * from "./GridFilterInputDate.js";
|
|
4
4
|
export * from "./GridFilterInputSingleSelect.js";
|
|
5
|
-
export
|
|
5
|
+
export { GridFilterInputBoolean } from "./GridFilterInputBoolean.js";
|
|
6
6
|
export * from "./GridFilterInputValueProps.js";
|
|
7
7
|
export { GridFilterPanel } from "./GridFilterPanel.js";
|
|
8
8
|
export * from "./GridFilterInputMultipleValue.js";
|
|
@@ -13,5 +13,5 @@ export interface GridToolbarProps extends GridToolbarContainerProps, GridToolbar
|
|
|
13
13
|
*/
|
|
14
14
|
quickFilterProps?: GridToolbarQuickFilterProps;
|
|
15
15
|
}
|
|
16
|
-
declare const GridToolbar: React.ForwardRefExoticComponent<GridToolbarProps & React.RefAttributes<HTMLDivElement>>;
|
|
16
|
+
declare const GridToolbar: React.ForwardRefExoticComponent<GridToolbarProps> | React.ForwardRefExoticComponent<GridToolbarProps & React.RefAttributes<HTMLDivElement>>;
|
|
17
17
|
export { GridToolbar };
|
|
@@ -3,6 +3,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
3
3
|
const _excluded = ["className", "csvOptions", "printOptions", "excelOptions", "showQuickFilter", "quickFilterProps"];
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
6
7
|
import { GridToolbarContainer } from "../containers/GridToolbarContainer.js";
|
|
7
8
|
import { GridToolbarColumnsButton } from "./GridToolbarColumnsButton.js";
|
|
8
9
|
import { GridToolbarDensitySelector } from "./GridToolbarDensitySelector.js";
|
|
@@ -11,7 +12,7 @@ import { GridToolbarExport } from "./GridToolbarExport.js";
|
|
|
11
12
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
12
13
|
import { GridToolbarQuickFilter } from "./GridToolbarQuickFilter.js";
|
|
13
14
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
-
const GridToolbar =
|
|
15
|
+
const GridToolbar = forwardRef(function GridToolbar(props, ref) {
|
|
15
16
|
// TODO v7: think about where export option should be passed.
|
|
16
17
|
// from slotProps={{ toolbarExport: { ...exportOption } }} seems to be more appropriate
|
|
17
18
|
const _ref = props,
|
|
@@ -27,9 +28,8 @@ const GridToolbar = /*#__PURE__*/React.forwardRef(function GridToolbar(props, re
|
|
|
27
28
|
if (rootProps.disableColumnFilter && rootProps.disableColumnSelector && rootProps.disableDensitySelector && !showQuickFilter) {
|
|
28
29
|
return null;
|
|
29
30
|
}
|
|
30
|
-
return /*#__PURE__*/_jsxs(GridToolbarContainer, _extends({
|
|
31
|
-
ref: ref
|
|
32
|
-
}, other, {
|
|
31
|
+
return /*#__PURE__*/_jsxs(GridToolbarContainer, _extends({}, other, {
|
|
32
|
+
ref: ref,
|
|
33
33
|
children: [/*#__PURE__*/_jsx(GridToolbarColumnsButton, {}), /*#__PURE__*/_jsx(GridToolbarFilterButton, {}), /*#__PURE__*/_jsx(GridToolbarDensitySelector, {}), /*#__PURE__*/_jsx(GridToolbarExport, {
|
|
34
34
|
csvOptions: csvOptions,
|
|
35
35
|
printOptions: printOptions
|
|
@@ -11,5 +11,5 @@ interface GridToolbarColumnsButtonProps {
|
|
|
11
11
|
tooltip?: Partial<TooltipProps>;
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
declare const GridToolbarColumnsButton: React.ForwardRefExoticComponent<GridToolbarColumnsButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
14
|
+
declare const GridToolbarColumnsButton: React.ForwardRefExoticComponent<GridToolbarColumnsButtonProps> | React.ForwardRefExoticComponent<GridToolbarColumnsButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
15
15
|
export { GridToolbarColumnsButton };
|
|
@@ -2,13 +2,14 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import useId from '@mui/utils/useId';
|
|
5
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
5
6
|
import { useGridSelector } from "../../hooks/utils/useGridSelector.js";
|
|
6
7
|
import { gridPreferencePanelStateSelector } from "../../hooks/features/preferencesPanel/gridPreferencePanelSelector.js";
|
|
7
8
|
import { GridPreferencePanelsValue } from "../../hooks/features/preferencesPanel/gridPreferencePanelsValue.js";
|
|
8
9
|
import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
|
|
9
10
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
10
11
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
-
const GridToolbarColumnsButton =
|
|
12
|
+
const GridToolbarColumnsButton = forwardRef(function GridToolbarColumnsButton(props, ref) {
|
|
12
13
|
const {
|
|
13
14
|
slotProps = {}
|
|
14
15
|
} = props;
|
|
@@ -38,7 +39,6 @@ const GridToolbarColumnsButton = /*#__PURE__*/React.forwardRef(function GridTool
|
|
|
38
39
|
enterDelay: 1000
|
|
39
40
|
}, rootProps.slotProps?.baseTooltip, tooltipProps, {
|
|
40
41
|
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
41
|
-
ref: ref,
|
|
42
42
|
id: columnButtonId,
|
|
43
43
|
size: "small",
|
|
44
44
|
"aria-label": apiRef.current.getLocaleText('toolbarColumnsLabel'),
|
|
@@ -48,6 +48,7 @@ const GridToolbarColumnsButton = /*#__PURE__*/React.forwardRef(function GridTool
|
|
|
48
48
|
startIcon: /*#__PURE__*/_jsx(rootProps.slots.columnSelectorIcon, {}),
|
|
49
49
|
onClick: showColumns
|
|
50
50
|
}, rootProps.slotProps?.baseButton, buttonProps, {
|
|
51
|
+
ref: ref,
|
|
51
52
|
children: apiRef.current.getLocaleText('toolbarColumns')
|
|
52
53
|
}))
|
|
53
54
|
}));
|
|
@@ -11,5 +11,5 @@ interface GridToolbarDensitySelectorProps {
|
|
|
11
11
|
tooltip?: Partial<TooltipProps>;
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
declare const GridToolbarDensitySelector: React.ForwardRefExoticComponent<GridToolbarDensitySelectorProps & React.RefAttributes<HTMLButtonElement>>;
|
|
14
|
+
declare const GridToolbarDensitySelector: React.ForwardRefExoticComponent<GridToolbarDensitySelectorProps> | React.ForwardRefExoticComponent<GridToolbarDensitySelectorProps & React.RefAttributes<HTMLButtonElement>>;
|
|
15
15
|
export { GridToolbarDensitySelector };
|
|
@@ -2,6 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { unstable_useId as useId, unstable_useForkRef as useForkRef } from '@mui/utils';
|
|
5
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
5
6
|
import { gridDensitySelector } from "../../hooks/features/density/densitySelector.js";
|
|
6
7
|
import { isHideMenuKey } from "../../utils/keyboardUtils.js";
|
|
7
8
|
import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
|
|
@@ -10,7 +11,7 @@ import { GridMenu } from "../menu/GridMenu.js";
|
|
|
10
11
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
11
12
|
import { gridClasses } from "../../constants/gridClasses.js";
|
|
12
13
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
-
const GridToolbarDensitySelector =
|
|
14
|
+
const GridToolbarDensitySelector = forwardRef(function GridToolbarDensitySelector(props, ref) {
|
|
14
15
|
const {
|
|
15
16
|
slotProps = {}
|
|
16
17
|
} = props;
|
|
@@ -83,7 +84,6 @@ const GridToolbarDensitySelector = /*#__PURE__*/React.forwardRef(function GridTo
|
|
|
83
84
|
enterDelay: 1000
|
|
84
85
|
}, rootProps.slotProps?.baseTooltip, tooltipProps, {
|
|
85
86
|
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
86
|
-
ref: handleRef,
|
|
87
87
|
size: "small",
|
|
88
88
|
startIcon: startIcon,
|
|
89
89
|
"aria-label": apiRef.current.getLocaleText('toolbarDensityLabel'),
|
|
@@ -93,6 +93,7 @@ const GridToolbarDensitySelector = /*#__PURE__*/React.forwardRef(function GridTo
|
|
|
93
93
|
id: densityButtonId,
|
|
94
94
|
onClick: handleDensitySelectorOpen
|
|
95
95
|
}, rootProps.slotProps?.baseButton, buttonProps, {
|
|
96
|
+
ref: handleRef,
|
|
96
97
|
children: apiRef.current.getLocaleText('toolbarDensity')
|
|
97
98
|
}))
|
|
98
99
|
})), /*#__PURE__*/_jsx(GridMenu, {
|
|
@@ -36,5 +36,5 @@ declare function GridPrintExportMenuItem(props: GridPrintExportMenuItemProps): R
|
|
|
36
36
|
declare namespace GridPrintExportMenuItem {
|
|
37
37
|
var propTypes: any;
|
|
38
38
|
}
|
|
39
|
-
declare const GridToolbarExport: React.ForwardRefExoticComponent<GridToolbarExportProps & React.RefAttributes<HTMLButtonElement>>;
|
|
39
|
+
declare const GridToolbarExport: React.ForwardRefExoticComponent<GridToolbarExportProps> | React.ForwardRefExoticComponent<GridToolbarExportProps & React.RefAttributes<HTMLButtonElement>>;
|
|
40
40
|
export { GridToolbarExport, GridCsvExportMenuItem, GridPrintExportMenuItem };
|
|
@@ -5,6 +5,7 @@ const _excluded = ["hideMenu", "options"],
|
|
|
5
5
|
_excluded3 = ["csvOptions", "printOptions", "excelOptions"];
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
8
9
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
9
10
|
import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
|
|
10
11
|
import { GridToolbarExportContainer } from "./GridToolbarExportContainer.js";
|
|
@@ -83,7 +84,7 @@ process.env.NODE_ENV !== "production" ? GridPrintExportMenuItem.propTypes = {
|
|
|
83
84
|
pageStyle: PropTypes.oneOfType([PropTypes.func, PropTypes.string])
|
|
84
85
|
})
|
|
85
86
|
} : void 0;
|
|
86
|
-
const GridToolbarExport =
|
|
87
|
+
const GridToolbarExport = forwardRef(function GridToolbarExport(props, ref) {
|
|
87
88
|
const _ref = props,
|
|
88
89
|
{
|
|
89
90
|
csvOptions = {},
|
|
@@ -11,7 +11,7 @@ interface GridToolbarExportContainerProps {
|
|
|
11
11
|
tooltip?: Partial<TooltipProps>;
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
declare const GridToolbarExportContainer: React.ForwardRefExoticComponent<GridToolbarExportContainerProps & {
|
|
14
|
+
declare const GridToolbarExportContainer: React.ForwardRefExoticComponent<React.PropsWithChildren<GridToolbarExportContainerProps>> | React.ForwardRefExoticComponent<GridToolbarExportContainerProps & {
|
|
15
15
|
children?: React.ReactNode | undefined;
|
|
16
16
|
} & React.RefAttributes<HTMLButtonElement>>;
|
|
17
17
|
export { GridToolbarExportContainer };
|
|
@@ -2,13 +2,14 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { unstable_useId as useId, unstable_useForkRef as useForkRef } from '@mui/utils';
|
|
5
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
5
6
|
import { isHideMenuKey } from "../../utils/keyboardUtils.js";
|
|
6
7
|
import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
|
|
7
8
|
import { GridMenu } from "../menu/GridMenu.js";
|
|
8
9
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
9
10
|
import { gridClasses } from "../../constants/gridClasses.js";
|
|
10
11
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
|
-
const GridToolbarExportContainer =
|
|
12
|
+
const GridToolbarExportContainer = forwardRef(function GridToolbarExportContainer(props, ref) {
|
|
12
13
|
const {
|
|
13
14
|
children,
|
|
14
15
|
slotProps = {}
|
|
@@ -44,7 +45,6 @@ const GridToolbarExportContainer = /*#__PURE__*/React.forwardRef(function GridTo
|
|
|
44
45
|
enterDelay: 1000
|
|
45
46
|
}, rootProps.slotProps?.baseTooltip, tooltipProps, {
|
|
46
47
|
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
47
|
-
ref: handleRef,
|
|
48
48
|
size: "small",
|
|
49
49
|
startIcon: /*#__PURE__*/_jsx(rootProps.slots.exportIcon, {}),
|
|
50
50
|
"aria-expanded": open,
|
|
@@ -54,6 +54,7 @@ const GridToolbarExportContainer = /*#__PURE__*/React.forwardRef(function GridTo
|
|
|
54
54
|
id: exportButtonId,
|
|
55
55
|
onClick: handleMenuOpen
|
|
56
56
|
}, rootProps.slotProps?.baseButton, buttonProps, {
|
|
57
|
+
ref: handleRef,
|
|
57
58
|
children: apiRef.current.getLocaleText('toolbarExport')
|
|
58
59
|
}))
|
|
59
60
|
})), /*#__PURE__*/_jsx(GridMenu, {
|
|
@@ -13,5 +13,5 @@ export interface GridToolbarFilterButtonProps {
|
|
|
13
13
|
badge?: Partial<BadgeProps>;
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
-
declare const GridToolbarFilterButton: React.ForwardRefExoticComponent<GridToolbarFilterButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
16
|
+
declare const GridToolbarFilterButton: React.ForwardRefExoticComponent<GridToolbarFilterButtonProps> | React.ForwardRefExoticComponent<GridToolbarFilterButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
17
17
|
export { GridToolbarFilterButton };
|
|
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { styled } from '@mui/material/styles';
|
|
5
5
|
import { unstable_composeClasses as composeClasses, unstable_capitalize as capitalize, unstable_useId as useId } from '@mui/utils';
|
|
6
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
6
7
|
import { gridColumnLookupSelector } from "../../hooks/features/columns/gridColumnsSelector.js";
|
|
7
8
|
import { useGridSelector } from "../../hooks/utils/useGridSelector.js";
|
|
8
9
|
import { gridFilterActiveItemsSelector } from "../../hooks/features/filter/gridFilterSelector.js";
|
|
@@ -34,7 +35,7 @@ const GridToolbarFilterListRoot = styled('ul', {
|
|
|
34
35
|
|
|
35
36
|
// FIXME(v8:romgrk): override slotProps
|
|
36
37
|
|
|
37
|
-
const GridToolbarFilterButton =
|
|
38
|
+
const GridToolbarFilterButton = forwardRef(function GridToolbarFilterButton(props, ref) {
|
|
38
39
|
const {
|
|
39
40
|
slotProps = {}
|
|
40
41
|
} = props;
|
|
@@ -100,7 +101,6 @@ const GridToolbarFilterButton = /*#__PURE__*/React.forwardRef(function GridToolb
|
|
|
100
101
|
enterDelay: 1000
|
|
101
102
|
}, rootProps.slotProps?.baseTooltip, tooltipProps, {
|
|
102
103
|
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
103
|
-
ref: ref,
|
|
104
104
|
id: filterButtonId,
|
|
105
105
|
size: "small",
|
|
106
106
|
"aria-label": apiRef.current.getLocaleText('toolbarFiltersLabel'),
|
|
@@ -115,6 +115,7 @@ const GridToolbarFilterButton = /*#__PURE__*/React.forwardRef(function GridToolb
|
|
|
115
115
|
})),
|
|
116
116
|
onClick: toggleFilter
|
|
117
117
|
}, rootProps.slotProps?.baseButton, buttonProps, {
|
|
118
|
+
ref: ref,
|
|
118
119
|
children: apiRef.current.getLocaleText('toolbarFilters')
|
|
119
120
|
}))
|
|
120
121
|
}));
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
export declare const GridMainContainer: React.ForwardRefExoticComponent<{
|
|
2
|
+
export declare const GridMainContainer: React.ForwardRefExoticComponent<React.PropsWithChildren<{
|
|
3
|
+
className: string;
|
|
4
|
+
}>> | React.ForwardRefExoticComponent<{
|
|
3
5
|
className: string;
|
|
4
6
|
} & {
|
|
5
7
|
children?: React.ReactNode | undefined;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { styled } from '@mui/system';
|
|
4
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
4
5
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
5
6
|
import { useGridConfiguration } from "../../hooks/utils/useGridConfiguration.js";
|
|
6
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -21,16 +22,16 @@ const Element = styled('div', {
|
|
|
21
22
|
display: 'flex',
|
|
22
23
|
flexDirection: 'column'
|
|
23
24
|
});
|
|
24
|
-
export const GridMainContainer =
|
|
25
|
+
export const GridMainContainer = forwardRef((props, ref) => {
|
|
25
26
|
const rootProps = useGridRootProps();
|
|
26
27
|
const configuration = useGridConfiguration();
|
|
27
28
|
const ariaAttributes = configuration.hooks.useGridAriaAttributes();
|
|
28
29
|
return /*#__PURE__*/_jsxs(Element, _extends({
|
|
29
|
-
ref: ref,
|
|
30
30
|
ownerState: rootProps,
|
|
31
31
|
className: props.className,
|
|
32
32
|
tabIndex: -1
|
|
33
33
|
}, ariaAttributes, rootProps.slotProps?.main, {
|
|
34
|
+
ref: ref,
|
|
34
35
|
children: [/*#__PURE__*/_jsx(GridPanelAnchor, {
|
|
35
36
|
role: "presentation",
|
|
36
37
|
"data-id": "gridPanelAnchor"
|
|
@@ -3,5 +3,5 @@ type Position = 'vertical' | 'horizontal';
|
|
|
3
3
|
type GridVirtualScrollbarProps = {
|
|
4
4
|
position: Position;
|
|
5
5
|
};
|
|
6
|
-
declare const GridVirtualScrollbar: React.ForwardRefExoticComponent<GridVirtualScrollbarProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
|
+
declare const GridVirtualScrollbar: React.ForwardRefExoticComponent<GridVirtualScrollbarProps> | React.ForwardRefExoticComponent<GridVirtualScrollbarProps & React.RefAttributes<HTMLDivElement>>;
|
|
7
7
|
export { GridVirtualScrollbar };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { styled } from '@mui/system';
|
|
3
3
|
import { unstable_composeClasses as composeClasses, unstable_useForkRef as useForkRef, unstable_useEventCallback as useEventCallback } from '@mui/utils';
|
|
4
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
4
5
|
import { useOnMount } from "../../hooks/utils/useOnMount.js";
|
|
5
6
|
import { useGridPrivateApiContext } from "../../hooks/utils/useGridPrivateApiContext.js";
|
|
6
7
|
import { gridDimensionsSelector, useGridSelector } from "../../hooks/index.js";
|
|
@@ -52,7 +53,7 @@ const ScrollbarHorizontal = styled(Scrollbar)({
|
|
|
52
53
|
},
|
|
53
54
|
bottom: '0px'
|
|
54
55
|
});
|
|
55
|
-
const GridVirtualScrollbar =
|
|
56
|
+
const GridVirtualScrollbar = forwardRef(function GridVirtualScrollbar(props, ref) {
|
|
56
57
|
const apiRef = useGridPrivateApiContext();
|
|
57
58
|
const rootProps = useGridRootProps();
|
|
58
59
|
const isLocked = React.useRef(false);
|
|
@@ -2,5 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { SxProps, Theme } from '@mui/system';
|
|
3
3
|
declare const GridVirtualScrollerContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
4
4
|
sx?: SxProps<Theme>;
|
|
5
|
+
}> | React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
6
|
+
sx?: SxProps<Theme>;
|
|
5
7
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
export { GridVirtualScrollerContent };
|
|
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import clsx from 'clsx';
|
|
4
4
|
import { styled } from '@mui/system';
|
|
5
5
|
import composeClasses from '@mui/utils/composeClasses';
|
|
6
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
6
7
|
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
7
8
|
import { getDataGridUtilityClass } from "../../constants/gridClasses.js";
|
|
8
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -20,15 +21,14 @@ const VirtualScrollerContentRoot = styled('div', {
|
|
|
20
21
|
slot: 'VirtualScrollerContent',
|
|
21
22
|
overridesResolver: (props, styles) => styles.virtualScrollerContent
|
|
22
23
|
})({});
|
|
23
|
-
const GridVirtualScrollerContent =
|
|
24
|
+
const GridVirtualScrollerContent = forwardRef(function GridVirtualScrollerContent(props, ref) {
|
|
24
25
|
const rootProps = useGridRootProps();
|
|
25
26
|
const overflowedContent = !rootProps.autoHeight && props.style?.minHeight === 'auto';
|
|
26
27
|
const classes = useUtilityClasses(rootProps, overflowedContent);
|
|
27
|
-
return /*#__PURE__*/_jsx(VirtualScrollerContentRoot, _extends({
|
|
28
|
-
ref: ref
|
|
29
|
-
}, props, {
|
|
28
|
+
return /*#__PURE__*/_jsx(VirtualScrollerContentRoot, _extends({}, props, {
|
|
30
29
|
ownerState: rootProps,
|
|
31
|
-
className: clsx(classes.root, props.className)
|
|
30
|
+
className: clsx(classes.root, props.className),
|
|
31
|
+
ref: ref
|
|
32
32
|
}));
|
|
33
33
|
});
|
|
34
34
|
export { GridVirtualScrollerContent };
|
|
@@ -2,5 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { SxProps, Theme } from '@mui/system';
|
|
3
3
|
declare const GridVirtualScrollerRenderZone: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
4
4
|
sx?: SxProps<Theme>;
|
|
5
|
+
}> | React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
6
|
+
sx?: SxProps<Theme>;
|
|
5
7
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
export { GridVirtualScrollerRenderZone };
|