@mui/x-data-grid-pro 7.29.0 → 7.29.1
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 +77 -0
- package/DataGridPro/DataGrid.js +2 -9
- package/DataGridPro/DataGridPro.js +231 -238
- package/DataGridPro/index.js +3 -39
- package/DataGridPro/package.json +2 -2
- package/DataGridPro/useDataGridProComponent.js +91 -99
- package/DataGridPro/useDataGridProProps.js +17 -26
- package/components/GridColumnHeaderCollapseIcon.js +0 -1
- package/components/GridColumnHeaders.js +39 -46
- package/components/GridColumnMenuPinningItem.js +39 -46
- package/components/GridDataSourceTreeDataGroupingCell.js +30 -38
- package/components/GridDetailPanel.js +14 -18
- package/components/GridDetailPanelToggleCell.js +35 -42
- package/components/GridDetailPanels.js +19 -25
- package/components/GridPinnedRows.js +12 -20
- package/components/GridProColumnMenu.js +11 -19
- package/components/GridRowReorderCell.js +36 -45
- package/components/GridTreeDataGroupingCell.js +37 -44
- package/components/headerFiltering/GridHeaderFilterCell.js +71 -78
- package/components/headerFiltering/GridHeaderFilterClearButton.js +9 -16
- package/components/headerFiltering/GridHeaderFilterMenu.js +36 -43
- package/components/headerFiltering/GridHeaderFilterMenuContainer.js +41 -48
- package/components/headerFiltering/index.js +3 -38
- package/components/index.js +7 -71
- package/components/package.json +2 -2
- package/components/reexports.js +1 -24
- package/constants/dataGridProDefaultSlotsComponents.js +16 -23
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +30 -39
- package/hooks/features/columnPinning/gridColumnPinningInterface.js +1 -5
- package/hooks/features/columnPinning/index.js +1 -16
- package/hooks/features/columnPinning/useGridColumnPinning.js +32 -42
- package/hooks/features/columnPinning/useGridColumnPinningPreProcessors.js +10 -19
- package/hooks/features/columnReorder/columnReorderInterfaces.js +1 -5
- package/hooks/features/columnReorder/columnReorderSelector.js +3 -10
- package/hooks/features/columnReorder/index.js +2 -16
- package/hooks/features/columnReorder/useGridColumnReorder.js +25 -35
- package/hooks/features/dataSource/cache.js +3 -11
- package/hooks/features/dataSource/gridDataSourceSelector.js +10 -18
- package/hooks/features/dataSource/interfaces.js +1 -5
- package/hooks/features/dataSource/useGridDataSource.js +34 -44
- package/hooks/features/dataSource/utils.js +9 -17
- package/hooks/features/detailPanel/gridDetailPanelInterface.js +1 -5
- package/hooks/features/detailPanel/gridDetailPanelSelector.js +5 -14
- package/hooks/features/detailPanel/gridDetailPanelToggleColDef.js +14 -27
- package/hooks/features/detailPanel/index.js +3 -53
- package/hooks/features/detailPanel/useGridDetailPanel.js +39 -48
- package/hooks/features/detailPanel/useGridDetailPanelPreProcessors.js +18 -27
- package/hooks/features/index.js +9 -99
- package/hooks/features/infiniteLoader/useGridInfiniteLoader.js +18 -27
- package/hooks/features/lazyLoader/useGridLazyLoader.js +14 -22
- package/hooks/features/lazyLoader/useGridLazyLoaderPreProcessors.js +13 -22
- package/hooks/features/rowPinning/gridRowPinningInterface.js +1 -5
- package/hooks/features/rowPinning/gridRowPinningSelector.js +1 -18
- package/hooks/features/rowPinning/index.js +1 -16
- package/hooks/features/rowPinning/useGridRowPinning.js +13 -23
- package/hooks/features/rowPinning/useGridRowPinningPreProcessors.d.ts +1 -1
- package/hooks/features/rowPinning/useGridRowPinningPreProcessors.js +24 -34
- package/hooks/features/rowReorder/gridRowReorderColDef.js +5 -12
- package/hooks/features/rowReorder/index.js +1 -16
- package/hooks/features/rowReorder/useGridRowReorder.js +20 -29
- package/hooks/features/rowReorder/useGridRowReorderPreProcessors.js +12 -21
- package/hooks/features/rows/index.js +1 -16
- package/hooks/features/rows/useGridRowAriaAttributes.js +14 -22
- package/hooks/features/serverSideTreeData/useGridDataSourceTreeDataPreProcessors.js +37 -46
- package/hooks/features/serverSideTreeData/utils.js +6 -13
- package/hooks/features/treeData/gridTreeDataGroupColDef.js +9 -20
- package/hooks/features/treeData/gridTreeDataUtils.js +6 -12
- package/hooks/features/treeData/index.js +1 -12
- package/hooks/features/treeData/useGridTreeData.js +7 -15
- package/hooks/features/treeData/useGridTreeDataPreProcessors.js +37 -46
- package/hooks/index.js +1 -16
- package/hooks/package.json +2 -2
- package/hooks/utils/useGridApiContext.js +2 -8
- package/hooks/utils/useGridApiRef.js +2 -8
- package/hooks/utils/useGridAriaAttributes.js +8 -16
- package/hooks/utils/useGridPrivateApiContext.js +2 -8
- package/hooks/utils/useGridRootProps.js +2 -8
- package/index.js +19 -210
- package/internals/index.js +34 -301
- package/internals/package.json +2 -2
- package/internals/propValidation.js +2 -8
- package/locales/package.json +6 -0
- package/material/icons.js +7 -14
- package/material/index.js +6 -13
- package/material/package.json +2 -2
- package/models/dataGridProProps.js +1 -5
- package/models/gridApiPro.js +1 -5
- package/models/gridFetchRowsParams.js +1 -5
- package/models/gridGroupingColDefOverride.js +1 -5
- package/models/gridProIconSlotsComponent.js +1 -5
- package/models/gridProSlotProps.js +1 -5
- package/models/gridProSlotsComponent.js +1 -5
- package/models/gridRowOrderChangeParams.js +1 -5
- package/models/gridRowScrollEndParams.js +1 -5
- package/models/gridStatePro.js +1 -5
- package/models/index.js +8 -82
- package/models/package.json +2 -2
- package/modern/components/GridDetailPanel.js +2 -0
- package/modern/components/GridDetailPanels.js +2 -0
- package/modern/components/headerFiltering/GridHeaderFilterMenu.js +2 -2
- package/modern/hooks/features/detailPanel/useGridDetailPanel.js +3 -2
- package/modern/index.js +1 -1
- package/modern/utils/releaseInfo.js +1 -1
- package/{esm → node}/DataGridPro/DataGrid.js +9 -2
- package/{esm → node}/DataGridPro/DataGridPro.js +238 -231
- package/node/DataGridPro/index.js +39 -0
- package/node/DataGridPro/useDataGridProComponent.js +111 -0
- package/node/DataGridPro/useDataGridProProps.js +61 -0
- package/node/components/GridColumnHeaderCollapseIcon.js +1 -0
- package/node/components/GridColumnHeaders.js +99 -0
- package/node/components/GridColumnMenuPinningItem.js +97 -0
- package/node/components/GridDataSourceTreeDataGroupingCell.js +118 -0
- package/{esm → node}/components/GridDetailPanel.js +20 -13
- package/node/components/GridDetailPanelToggleCell.js +128 -0
- package/node/components/GridDetailPanels.js +69 -0
- package/node/components/GridPinnedRows.js +48 -0
- package/node/components/GridProColumnMenu.js +29 -0
- package/{esm → node}/components/GridRowReorderCell.js +45 -36
- package/{esm → node}/components/GridTreeDataGroupingCell.js +44 -37
- package/{esm → node}/components/headerFiltering/GridHeaderFilterCell.js +78 -71
- package/node/components/headerFiltering/GridHeaderFilterClearButton.js +28 -0
- package/node/components/headerFiltering/GridHeaderFilterMenu.js +95 -0
- package/node/components/headerFiltering/GridHeaderFilterMenuContainer.js +106 -0
- package/node/components/headerFiltering/index.js +38 -0
- package/node/components/index.js +71 -0
- package/node/components/reexports.js +24 -0
- package/node/constants/dataGridProDefaultSlotsComponents.js +24 -0
- package/{esm → node}/hooks/features/columnHeaders/useGridColumnHeaders.js +39 -30
- package/node/hooks/features/columnPinning/gridColumnPinningInterface.js +5 -0
- package/node/hooks/features/columnPinning/index.js +16 -0
- package/{esm → node}/hooks/features/columnPinning/useGridColumnPinning.js +42 -32
- package/{esm → node}/hooks/features/columnPinning/useGridColumnPinningPreProcessors.js +19 -10
- package/node/hooks/features/columnReorder/columnReorderInterfaces.js +5 -0
- package/node/hooks/features/columnReorder/columnReorderSelector.js +10 -0
- package/node/hooks/features/columnReorder/index.js +16 -0
- package/{esm → node}/hooks/features/columnReorder/useGridColumnReorder.js +35 -25
- package/{esm → node}/hooks/features/dataSource/cache.js +11 -3
- package/node/hooks/features/dataSource/gridDataSourceSelector.js +32 -0
- package/node/hooks/features/dataSource/interfaces.js +5 -0
- package/{esm → node}/hooks/features/dataSource/useGridDataSource.js +44 -34
- package/{esm → node}/hooks/features/dataSource/utils.js +17 -9
- package/node/hooks/features/detailPanel/gridDetailPanelInterface.js +5 -0
- package/node/hooks/features/detailPanel/gridDetailPanelSelector.js +21 -0
- package/node/hooks/features/detailPanel/gridDetailPanelToggleColDef.js +47 -0
- package/node/hooks/features/detailPanel/index.js +53 -0
- package/{esm → node}/hooks/features/detailPanel/useGridDetailPanel.js +49 -38
- package/node/hooks/features/detailPanel/useGridDetailPanelPreProcessors.js +52 -0
- package/node/hooks/features/index.js +99 -0
- package/{esm → node}/hooks/features/infiniteLoader/useGridInfiniteLoader.js +27 -18
- package/{esm → node}/hooks/features/lazyLoader/useGridLazyLoader.js +22 -14
- package/node/hooks/features/lazyLoader/useGridLazyLoaderPreProcessors.js +43 -0
- package/node/hooks/features/rowPinning/gridRowPinningInterface.js +5 -0
- package/node/hooks/features/rowPinning/gridRowPinningSelector.js +18 -0
- package/node/hooks/features/rowPinning/index.js +16 -0
- package/node/hooks/features/rowPinning/useGridRowPinning.js +62 -0
- package/{esm → node}/hooks/features/rowPinning/useGridRowPinningPreProcessors.js +34 -24
- package/node/hooks/features/rowReorder/gridRowReorderColDef.js +27 -0
- package/node/hooks/features/rowReorder/index.js +16 -0
- package/{esm → node}/hooks/features/rowReorder/useGridRowReorder.js +29 -20
- package/{esm → node}/hooks/features/rowReorder/useGridRowReorderPreProcessors.js +21 -12
- package/node/hooks/features/rows/index.js +16 -0
- package/node/hooks/features/rows/useGridRowAriaAttributes.js +45 -0
- package/{esm → node}/hooks/features/serverSideTreeData/useGridDataSourceTreeDataPreProcessors.js +46 -37
- package/node/hooks/features/serverSideTreeData/utils.js +27 -0
- package/node/hooks/features/treeData/gridTreeDataGroupColDef.js +38 -0
- package/{esm → node}/hooks/features/treeData/gridTreeDataUtils.js +12 -6
- package/node/hooks/features/treeData/index.js +12 -0
- package/node/hooks/features/treeData/useGridTreeData.js +30 -0
- package/{esm → node}/hooks/features/treeData/useGridTreeDataPreProcessors.js +46 -37
- package/node/hooks/index.js +16 -0
- package/node/hooks/utils/useGridApiContext.js +8 -0
- package/node/hooks/utils/useGridApiRef.js +8 -0
- package/node/hooks/utils/useGridAriaAttributes.js +19 -0
- package/node/hooks/utils/useGridPrivateApiContext.js +8 -0
- package/node/hooks/utils/useGridRootProps.js +8 -0
- package/node/index.js +220 -0
- package/node/internals/index.js +302 -0
- package/node/internals/propValidation.js +8 -0
- package/node/material/icons.js +24 -0
- package/node/material/index.js +15 -0
- package/node/models/dataGridProProps.js +5 -0
- package/node/models/gridApiPro.js +5 -0
- package/node/models/gridFetchRowsParams.js +5 -0
- package/node/models/gridGroupingColDefOverride.js +5 -0
- package/node/models/gridProIconSlotsComponent.js +5 -0
- package/node/models/gridProSlotProps.js +5 -0
- package/node/models/gridProSlotsComponent.js +5 -0
- package/node/models/gridRowOrderChangeParams.js +5 -0
- package/node/models/gridRowScrollEndParams.js +5 -0
- package/node/models/gridStatePro.js +5 -0
- package/node/models/index.js +82 -0
- package/node/themeAugmentation/index.js +27 -0
- package/node/themeAugmentation/overrides.js +5 -0
- package/node/themeAugmentation/props.js +5 -0
- package/node/typeOverloads/index.js +16 -0
- package/node/typeOverloads/modules.js +5 -0
- package/node/typeOverloads/reexports.js +26 -0
- package/node/utils/index.js +16 -0
- package/node/utils/releaseInfo.js +20 -0
- package/{esm → node}/utils/tree/createRowTree.js +14 -7
- package/node/utils/tree/index.js +12 -0
- package/{esm → node}/utils/tree/insertDataRowInTree.js +18 -11
- package/node/utils/tree/models.js +5 -0
- package/{esm → node}/utils/tree/removeDataRowFromTree.js +16 -9
- package/{esm → node}/utils/tree/sortRowTree.js +12 -5
- package/{esm → node}/utils/tree/updateRowTree.js +26 -18
- package/{esm → node}/utils/tree/utils.js +34 -18
- package/package.json +6 -6
- package/themeAugmentation/index.js +4 -27
- package/themeAugmentation/overrides.js +1 -5
- package/themeAugmentation/package.json +2 -2
- package/themeAugmentation/props.js +1 -5
- package/typeOverloads/index.js +1 -16
- package/typeOverloads/modules.js +1 -5
- package/typeOverloads/package.json +2 -2
- package/typeOverloads/reexports.js +14 -25
- package/utils/index.js +1 -16
- package/utils/package.json +2 -2
- package/utils/releaseInfo.js +5 -12
- package/utils/tree/createRowTree.js +7 -14
- package/utils/tree/index.js +1 -12
- package/utils/tree/insertDataRowInTree.js +11 -18
- package/utils/tree/models.js +1 -5
- package/utils/tree/removeDataRowFromTree.js +9 -16
- package/utils/tree/sortRowTree.js +5 -12
- package/utils/tree/updateRowTree.js +18 -26
- package/utils/tree/utils.js +18 -34
- package/esm/DataGridPro/index.js +0 -3
- package/esm/DataGridPro/useDataGridProComponent.js +0 -103
- package/esm/DataGridPro/useDataGridProProps.js +0 -52
- package/esm/components/GridColumnHeaderCollapseIcon.js +0 -0
- package/esm/components/GridColumnHeaders.js +0 -92
- package/esm/components/GridColumnMenuPinningItem.js +0 -90
- package/esm/components/GridDataSourceTreeDataGroupingCell.js +0 -110
- package/esm/components/GridDetailPanelToggleCell.js +0 -121
- package/esm/components/GridDetailPanels.js +0 -60
- package/esm/components/GridPinnedRows.js +0 -40
- package/esm/components/GridProColumnMenu.js +0 -21
- package/esm/components/headerFiltering/GridHeaderFilterClearButton.js +0 -21
- package/esm/components/headerFiltering/GridHeaderFilterMenu.js +0 -88
- package/esm/components/headerFiltering/GridHeaderFilterMenuContainer.js +0 -99
- package/esm/components/headerFiltering/index.js +0 -3
- package/esm/components/index.js +0 -7
- package/esm/components/reexports.js +0 -1
- package/esm/constants/dataGridProDefaultSlotsComponents.js +0 -17
- package/esm/hooks/features/columnPinning/gridColumnPinningInterface.js +0 -1
- package/esm/hooks/features/columnPinning/index.js +0 -1
- package/esm/hooks/features/columnReorder/columnReorderInterfaces.js +0 -1
- package/esm/hooks/features/columnReorder/columnReorderSelector.js +0 -3
- package/esm/hooks/features/columnReorder/index.js +0 -2
- package/esm/hooks/features/dataSource/gridDataSourceSelector.js +0 -24
- package/esm/hooks/features/dataSource/interfaces.js +0 -1
- package/esm/hooks/features/detailPanel/gridDetailPanelInterface.js +0 -1
- package/esm/hooks/features/detailPanel/gridDetailPanelSelector.js +0 -12
- package/esm/hooks/features/detailPanel/gridDetailPanelToggleColDef.js +0 -34
- package/esm/hooks/features/detailPanel/index.js +0 -3
- package/esm/hooks/features/detailPanel/useGridDetailPanelPreProcessors.js +0 -43
- package/esm/hooks/features/index.js +0 -9
- package/esm/hooks/features/lazyLoader/useGridLazyLoaderPreProcessors.js +0 -34
- package/esm/hooks/features/rowPinning/gridRowPinningInterface.js +0 -1
- package/esm/hooks/features/rowPinning/gridRowPinningSelector.js +0 -1
- package/esm/hooks/features/rowPinning/index.js +0 -1
- package/esm/hooks/features/rowPinning/useGridRowPinning.js +0 -52
- package/esm/hooks/features/rowReorder/gridRowReorderColDef.js +0 -20
- package/esm/hooks/features/rowReorder/index.js +0 -1
- package/esm/hooks/features/rows/index.js +0 -1
- package/esm/hooks/features/rows/useGridRowAriaAttributes.js +0 -37
- package/esm/hooks/features/serverSideTreeData/utils.js +0 -20
- package/esm/hooks/features/treeData/gridTreeDataGroupColDef.js +0 -27
- package/esm/hooks/features/treeData/index.js +0 -1
- package/esm/hooks/features/treeData/useGridTreeData.js +0 -22
- package/esm/hooks/index.js +0 -1
- package/esm/hooks/utils/useGridApiContext.js +0 -2
- package/esm/hooks/utils/useGridApiRef.js +0 -2
- package/esm/hooks/utils/useGridAriaAttributes.js +0 -11
- package/esm/hooks/utils/useGridPrivateApiContext.js +0 -2
- package/esm/hooks/utils/useGridRootProps.js +0 -2
- package/esm/index.js +0 -22
- package/esm/internals/index.js +0 -35
- package/esm/internals/propValidation.js +0 -2
- package/esm/material/icons.js +0 -17
- package/esm/material/index.js +0 -8
- package/esm/models/dataGridProProps.js +0 -1
- package/esm/models/gridApiPro.js +0 -1
- package/esm/models/gridFetchRowsParams.js +0 -1
- package/esm/models/gridGroupingColDefOverride.js +0 -1
- package/esm/models/gridProIconSlotsComponent.js +0 -1
- package/esm/models/gridProSlotProps.js +0 -1
- package/esm/models/gridProSlotsComponent.js +0 -1
- package/esm/models/gridRowOrderChangeParams.js +0 -1
- package/esm/models/gridRowScrollEndParams.js +0 -1
- package/esm/models/gridStatePro.js +0 -1
- package/esm/models/index.js +0 -8
- package/esm/themeAugmentation/index.js +0 -4
- package/esm/themeAugmentation/overrides.js +0 -1
- package/esm/themeAugmentation/props.js +0 -1
- package/esm/typeOverloads/index.js +0 -1
- package/esm/typeOverloads/modules.js +0 -1
- package/esm/typeOverloads/reexports.js +0 -15
- package/esm/utils/index.js +0 -1
- package/esm/utils/releaseInfo.js +0 -13
- package/esm/utils/tree/index.js +0 -1
- package/esm/utils/tree/models.js +0 -1
- /package/{locales.d.ts → locales/index.d.ts} +0 -0
- /package/{esm/locales.js → locales/index.js} +0 -0
- /package/modern/{locales.js → locales/index.js} +0 -0
- /package/{locales.js → node/locales/index.js} +0 -0
|
@@ -1,20 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
exports.renderRowReorderCell = void 0;
|
|
10
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
var React = _interopRequireWildcard(require("react"));
|
|
12
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
14
|
-
var _xDataGrid = require("@mui/x-data-grid");
|
|
15
|
-
var _internals = require("@mui/x-data-grid/internals");
|
|
16
|
-
var _useGridRootProps = require("../hooks/utils/useGridRootProps");
|
|
17
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
5
|
+
import { gridRowMaximumTreeDepthSelector, gridSortModelSelector, useGridApiContext, useGridSelector, getDataGridUtilityClass } from '@mui/x-data-grid';
|
|
6
|
+
import { gridEditRowsStateSelector, isEventTargetInPortal } from '@mui/x-data-grid/internals';
|
|
7
|
+
import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
9
|
const useUtilityClasses = ownerState => {
|
|
19
10
|
const {
|
|
20
11
|
isDraggable,
|
|
@@ -24,14 +15,14 @@ const useUtilityClasses = ownerState => {
|
|
|
24
15
|
root: ['rowReorderCell', isDraggable && 'rowReorderCell--draggable'],
|
|
25
16
|
placeholder: ['rowReorderCellPlaceholder']
|
|
26
17
|
};
|
|
27
|
-
return (
|
|
18
|
+
return composeClasses(slots, getDataGridUtilityClass, classes);
|
|
28
19
|
};
|
|
29
20
|
function GridRowReorderCell(params) {
|
|
30
|
-
const apiRef =
|
|
31
|
-
const rootProps =
|
|
32
|
-
const sortModel =
|
|
33
|
-
const treeDepth =
|
|
34
|
-
const editRowsState =
|
|
21
|
+
const apiRef = useGridApiContext();
|
|
22
|
+
const rootProps = useGridRootProps();
|
|
23
|
+
const sortModel = useGridSelector(apiRef, gridSortModelSelector);
|
|
24
|
+
const treeDepth = useGridSelector(apiRef, gridRowMaximumTreeDepthSelector);
|
|
25
|
+
const editRowsState = useGridSelector(apiRef, gridEditRowsStateSelector);
|
|
35
26
|
// eslint-disable-next-line no-underscore-dangle
|
|
36
27
|
const cellValue = params.row.__reorder__ || params.id;
|
|
37
28
|
|
|
@@ -44,7 +35,7 @@ function GridRowReorderCell(params) {
|
|
|
44
35
|
const classes = useUtilityClasses(ownerState);
|
|
45
36
|
const publish = React.useCallback((eventName, propHandler) => event => {
|
|
46
37
|
// Ignore portal
|
|
47
|
-
if (
|
|
38
|
+
if (isEventTargetInPortal(event)) {
|
|
48
39
|
return;
|
|
49
40
|
}
|
|
50
41
|
|
|
@@ -65,11 +56,11 @@ function GridRowReorderCell(params) {
|
|
|
65
56
|
if (params.rowNode.type === 'footer') {
|
|
66
57
|
return null;
|
|
67
58
|
}
|
|
68
|
-
return /*#__PURE__*/(
|
|
59
|
+
return /*#__PURE__*/_jsxs("div", _extends({
|
|
69
60
|
className: classes.root,
|
|
70
61
|
draggable: isDraggable
|
|
71
62
|
}, draggableEventHandlers, {
|
|
72
|
-
children: [/*#__PURE__*/(
|
|
63
|
+
children: [/*#__PURE__*/_jsx(rootProps.slots.rowReorderIcon, {}), /*#__PURE__*/_jsx("div", {
|
|
73
64
|
className: classes.placeholder,
|
|
74
65
|
children: cellValue
|
|
75
66
|
})]
|
|
@@ -83,67 +74,67 @@ process.env.NODE_ENV !== "production" ? GridRowReorderCell.propTypes = {
|
|
|
83
74
|
/**
|
|
84
75
|
* GridApi that let you manipulate the grid.
|
|
85
76
|
*/
|
|
86
|
-
api:
|
|
77
|
+
api: PropTypes.object.isRequired,
|
|
87
78
|
/**
|
|
88
79
|
* The mode of the cell.
|
|
89
80
|
*/
|
|
90
|
-
cellMode:
|
|
81
|
+
cellMode: PropTypes.oneOf(['edit', 'view']).isRequired,
|
|
91
82
|
/**
|
|
92
83
|
* The column of the row that the current cell belongs to.
|
|
93
84
|
*/
|
|
94
|
-
colDef:
|
|
85
|
+
colDef: PropTypes.object.isRequired,
|
|
95
86
|
/**
|
|
96
87
|
* The column field of the cell that triggered the event.
|
|
97
88
|
*/
|
|
98
|
-
field:
|
|
89
|
+
field: PropTypes.string.isRequired,
|
|
99
90
|
/**
|
|
100
91
|
* A ref allowing to set imperative focus.
|
|
101
92
|
* It can be passed to the element that should receive focus.
|
|
102
93
|
* @ignore - do not document.
|
|
103
94
|
*/
|
|
104
|
-
focusElementRef:
|
|
105
|
-
current:
|
|
106
|
-
focus:
|
|
95
|
+
focusElementRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
|
|
96
|
+
current: PropTypes.shape({
|
|
97
|
+
focus: PropTypes.func.isRequired
|
|
107
98
|
})
|
|
108
99
|
})]),
|
|
109
100
|
/**
|
|
110
101
|
* The cell value formatted with the column valueFormatter.
|
|
111
102
|
*/
|
|
112
|
-
formattedValue:
|
|
103
|
+
formattedValue: PropTypes.any,
|
|
113
104
|
/**
|
|
114
105
|
* If true, the cell is the active element.
|
|
115
106
|
*/
|
|
116
|
-
hasFocus:
|
|
107
|
+
hasFocus: PropTypes.bool.isRequired,
|
|
117
108
|
/**
|
|
118
109
|
* The grid row id.
|
|
119
110
|
*/
|
|
120
|
-
id:
|
|
111
|
+
id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
|
|
121
112
|
/**
|
|
122
113
|
* If true, the cell is editable.
|
|
123
114
|
*/
|
|
124
|
-
isEditable:
|
|
115
|
+
isEditable: PropTypes.bool,
|
|
125
116
|
/**
|
|
126
117
|
* The row model of the row that the current cell belongs to.
|
|
127
118
|
*/
|
|
128
|
-
row:
|
|
119
|
+
row: PropTypes.any.isRequired,
|
|
129
120
|
/**
|
|
130
121
|
* The node of the row that the current cell belongs to.
|
|
131
122
|
*/
|
|
132
|
-
rowNode:
|
|
123
|
+
rowNode: PropTypes.object.isRequired,
|
|
133
124
|
/**
|
|
134
125
|
* the tabIndex value.
|
|
135
126
|
*/
|
|
136
|
-
tabIndex:
|
|
127
|
+
tabIndex: PropTypes.oneOf([-1, 0]).isRequired,
|
|
137
128
|
/**
|
|
138
129
|
* The cell value.
|
|
139
130
|
* If the column has `valueGetter`, use `params.row` to directly access the fields.
|
|
140
131
|
*/
|
|
141
|
-
value:
|
|
132
|
+
value: PropTypes.any
|
|
142
133
|
} : void 0;
|
|
143
|
-
|
|
134
|
+
export { GridRowReorderCell };
|
|
135
|
+
export const renderRowReorderCell = params => {
|
|
144
136
|
if (params.rowNode.type === 'footer' || params.rowNode.type === 'pinnedRow') {
|
|
145
137
|
return null;
|
|
146
138
|
}
|
|
147
|
-
return /*#__PURE__*/(
|
|
148
|
-
};
|
|
149
|
-
exports.renderRowReorderCell = renderRowReorderCell;
|
|
139
|
+
return /*#__PURE__*/_jsx(GridRowReorderCell, _extends({}, params));
|
|
140
|
+
};
|
|
@@ -1,20 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
var React = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
-
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
13
|
-
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
14
|
-
var _xDataGrid = require("@mui/x-data-grid");
|
|
15
|
-
var _useGridRootProps = require("../hooks/utils/useGridRootProps");
|
|
16
|
-
var _useGridApiContext = require("../hooks/utils/useGridApiContext");
|
|
17
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
5
|
+
import Box from '@mui/material/Box';
|
|
6
|
+
import { useGridSelector, gridFilteredDescendantCountLookupSelector, getDataGridUtilityClass } from '@mui/x-data-grid';
|
|
7
|
+
import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
|
|
8
|
+
import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
|
|
9
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
10
|
const useUtilityClasses = ownerState => {
|
|
19
11
|
const {
|
|
20
12
|
classes
|
|
@@ -23,7 +15,7 @@ const useUtilityClasses = ownerState => {
|
|
|
23
15
|
root: ['treeDataGroupingCell'],
|
|
24
16
|
toggle: ['treeDataGroupingCellToggle']
|
|
25
17
|
};
|
|
26
|
-
return (
|
|
18
|
+
return composeClasses(slots, getDataGridUtilityClass, classes);
|
|
27
19
|
};
|
|
28
20
|
function GridTreeDataGroupingCell(props) {
|
|
29
21
|
const {
|
|
@@ -34,10 +26,10 @@ function GridTreeDataGroupingCell(props) {
|
|
|
34
26
|
hideDescendantCount,
|
|
35
27
|
offsetMultiplier = 2
|
|
36
28
|
} = props;
|
|
37
|
-
const rootProps =
|
|
38
|
-
const apiRef =
|
|
29
|
+
const rootProps = useGridRootProps();
|
|
30
|
+
const apiRef = useGridApiContext();
|
|
39
31
|
const classes = useUtilityClasses(rootProps);
|
|
40
|
-
const filteredDescendantCountLookup =
|
|
32
|
+
const filteredDescendantCountLookup = useGridSelector(apiRef, gridFilteredDescendantCountLookupSelector);
|
|
41
33
|
const filteredDescendantCount = filteredDescendantCountLookup[rowNode.id] ?? 0;
|
|
42
34
|
const Icon = rowNode.childrenExpanded ? rootProps.slots.treeDataCollapseIcon : rootProps.slots.treeDataExpandIcon;
|
|
43
35
|
const handleClick = event => {
|
|
@@ -45,24 +37,24 @@ function GridTreeDataGroupingCell(props) {
|
|
|
45
37
|
apiRef.current.setCellFocus(id, field);
|
|
46
38
|
event.stopPropagation(); // TODO remove event.stopPropagation
|
|
47
39
|
};
|
|
48
|
-
return /*#__PURE__*/(
|
|
40
|
+
return /*#__PURE__*/_jsxs(Box, {
|
|
49
41
|
className: classes.root,
|
|
50
42
|
sx: {
|
|
51
43
|
ml: rowNode.depth * offsetMultiplier
|
|
52
44
|
},
|
|
53
|
-
children: [/*#__PURE__*/(
|
|
45
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
54
46
|
className: classes.toggle,
|
|
55
|
-
children: filteredDescendantCount > 0 && /*#__PURE__*/(
|
|
47
|
+
children: filteredDescendantCount > 0 && /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({
|
|
56
48
|
size: "small",
|
|
57
49
|
onClick: handleClick,
|
|
58
50
|
tabIndex: -1,
|
|
59
51
|
"aria-label": rowNode.childrenExpanded ? apiRef.current.getLocaleText('treeDataCollapse') : apiRef.current.getLocaleText('treeDataExpand')
|
|
60
52
|
}, rootProps?.slotProps?.baseIconButton, {
|
|
61
|
-
children: /*#__PURE__*/(
|
|
53
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
62
54
|
fontSize: "inherit"
|
|
63
55
|
})
|
|
64
56
|
}))
|
|
65
|
-
}), /*#__PURE__*/(
|
|
57
|
+
}), /*#__PURE__*/_jsxs("span", {
|
|
66
58
|
children: [formattedValue === undefined ? rowNode.groupingKey : formattedValue, !hideDescendantCount && filteredDescendantCount > 0 ? ` (${filteredDescendantCount})` : '']
|
|
67
59
|
})]
|
|
68
60
|
});
|
|
@@ -75,66 +67,67 @@ process.env.NODE_ENV !== "production" ? GridTreeDataGroupingCell.propTypes = {
|
|
|
75
67
|
/**
|
|
76
68
|
* GridApi that let you manipulate the grid.
|
|
77
69
|
*/
|
|
78
|
-
api:
|
|
70
|
+
api: PropTypes.object.isRequired,
|
|
79
71
|
/**
|
|
80
72
|
* The mode of the cell.
|
|
81
73
|
*/
|
|
82
|
-
cellMode:
|
|
74
|
+
cellMode: PropTypes.oneOf(['edit', 'view']).isRequired,
|
|
83
75
|
/**
|
|
84
76
|
* The column of the row that the current cell belongs to.
|
|
85
77
|
*/
|
|
86
|
-
colDef:
|
|
78
|
+
colDef: PropTypes.object.isRequired,
|
|
87
79
|
/**
|
|
88
80
|
* The column field of the cell that triggered the event.
|
|
89
81
|
*/
|
|
90
|
-
field:
|
|
82
|
+
field: PropTypes.string.isRequired,
|
|
91
83
|
/**
|
|
92
84
|
* A ref allowing to set imperative focus.
|
|
93
85
|
* It can be passed to the element that should receive focus.
|
|
94
86
|
* @ignore - do not document.
|
|
95
87
|
*/
|
|
96
|
-
focusElementRef:
|
|
97
|
-
current:
|
|
98
|
-
focus:
|
|
88
|
+
focusElementRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
|
|
89
|
+
current: PropTypes.shape({
|
|
90
|
+
focus: PropTypes.func.isRequired
|
|
99
91
|
})
|
|
100
92
|
})]),
|
|
101
93
|
/**
|
|
102
94
|
* The cell value formatted with the column valueFormatter.
|
|
103
95
|
*/
|
|
104
|
-
formattedValue:
|
|
96
|
+
formattedValue: PropTypes.any,
|
|
105
97
|
/**
|
|
106
98
|
* If true, the cell is the active element.
|
|
107
99
|
*/
|
|
108
|
-
hasFocus:
|
|
109
|
-
hideDescendantCount:
|
|
100
|
+
hasFocus: PropTypes.bool.isRequired,
|
|
101
|
+
hideDescendantCount: PropTypes.bool,
|
|
110
102
|
/**
|
|
111
103
|
* The grid row id.
|
|
112
104
|
*/
|
|
113
|
-
id:
|
|
105
|
+
id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
|
|
114
106
|
/**
|
|
115
107
|
* If true, the cell is editable.
|
|
116
108
|
*/
|
|
117
|
-
isEditable:
|
|
109
|
+
isEditable: PropTypes.bool,
|
|
118
110
|
/**
|
|
119
111
|
* The cell offset multiplier used for calculating cell offset (`rowNode.depth * offsetMultiplier` px).
|
|
120
112
|
* @default 2
|
|
121
113
|
*/
|
|
122
|
-
offsetMultiplier:
|
|
114
|
+
offsetMultiplier: PropTypes.number,
|
|
123
115
|
/**
|
|
124
116
|
* The row model of the row that the current cell belongs to.
|
|
125
117
|
*/
|
|
126
|
-
row:
|
|
118
|
+
row: PropTypes.any.isRequired,
|
|
127
119
|
/**
|
|
128
120
|
* The node of the row that the current cell belongs to.
|
|
129
121
|
*/
|
|
130
|
-
rowNode:
|
|
122
|
+
rowNode: PropTypes.object.isRequired,
|
|
131
123
|
/**
|
|
132
124
|
* the tabIndex value.
|
|
133
125
|
*/
|
|
134
|
-
tabIndex:
|
|
126
|
+
tabIndex: PropTypes.oneOf([-1, 0]).isRequired,
|
|
135
127
|
/**
|
|
136
128
|
* The cell value.
|
|
137
129
|
* If the column has `valueGetter`, use `params.row` to directly access the fields.
|
|
138
130
|
*/
|
|
139
|
-
value:
|
|
140
|
-
} : void 0;
|
|
131
|
+
value: PropTypes.any
|
|
132
|
+
} : void 0;
|
|
133
|
+
export { GridTreeDataGroupingCell };
|
|
@@ -1,27 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.GridHeaderFilterCell = void 0;
|
|
9
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
-
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
11
|
-
var React = _interopRequireWildcard(require("react"));
|
|
12
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
var _clsx = _interopRequireDefault(require("clsx"));
|
|
14
|
-
var _utils = require("@mui/utils");
|
|
15
|
-
var _fastMemo = require("@mui/x-internals/fastMemo");
|
|
16
|
-
var _xDataGrid = require("@mui/x-data-grid");
|
|
17
|
-
var _internals = require("@mui/x-data-grid/internals");
|
|
18
|
-
var _RtlProvider = require("@mui/system/RtlProvider");
|
|
19
|
-
var _forwardRef = require("@mui/x-internals/forwardRef");
|
|
20
|
-
var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
|
|
21
|
-
var _GridHeaderFilterMenuContainer = require("./GridHeaderFilterMenuContainer");
|
|
22
|
-
var _GridHeaderFilterClearButton = require("./GridHeaderFilterClearButton");
|
|
23
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
24
3
|
const _excluded = ["colIndex", "height", "hasFocus", "width", "headerClassName", "colDef", "item", "headerFilterMenuRef", "InputComponentProps", "showClearIcon", "pinnedPosition", "pinnedOffset", "style", "showLeftBorder", "showRightBorder"];
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import PropTypes from 'prop-types';
|
|
6
|
+
import clsx from 'clsx';
|
|
7
|
+
import { unstable_useForkRef as useForkRef, unstable_composeClasses as composeClasses, unstable_capitalize as capitalize } from '@mui/utils';
|
|
8
|
+
import { fastMemo } from '@mui/x-internals/fastMemo';
|
|
9
|
+
import { gridVisibleColumnFieldsSelector, getDataGridUtilityClass, useGridSelector, GridFilterInputValue, GridFilterInputDate, GridFilterInputBoolean, GridFilterInputSingleSelect, gridFilterModelSelector, gridFilterableColumnLookupSelector } from '@mui/x-data-grid';
|
|
10
|
+
import { PinnedColumnPosition, useGridPrivateApiContext, gridHeaderFilteringEditFieldSelector, gridHeaderFilteringMenuSelector, isNavigationKey, attachPinnedStyle } from '@mui/x-data-grid/internals';
|
|
11
|
+
import { useRtl } from '@mui/system/RtlProvider';
|
|
12
|
+
import { forwardRef } from '@mui/x-internals/forwardRef';
|
|
13
|
+
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
14
|
+
import { GridHeaderFilterMenuContainer } from "./GridHeaderFilterMenuContainer.js";
|
|
15
|
+
import { GridHeaderFilterClearButton } from "./GridHeaderFilterClearButton.js";
|
|
16
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
25
17
|
const useUtilityClasses = ownerState => {
|
|
26
18
|
const {
|
|
27
19
|
colDef,
|
|
@@ -31,9 +23,9 @@ const useUtilityClasses = ownerState => {
|
|
|
31
23
|
pinnedPosition
|
|
32
24
|
} = ownerState;
|
|
33
25
|
const slots = {
|
|
34
|
-
root: ['columnHeader', colDef.headerAlign === 'left' && 'columnHeader--alignLeft', colDef.headerAlign === 'center' && 'columnHeader--alignCenter', colDef.headerAlign === 'right' && 'columnHeader--alignRight', 'withBorderColor', showRightBorder && 'columnHeader--withRightBorder', showLeftBorder && 'columnHeader--withLeftBorder', pinnedPosition ===
|
|
26
|
+
root: ['columnHeader', colDef.headerAlign === 'left' && 'columnHeader--alignLeft', colDef.headerAlign === 'center' && 'columnHeader--alignCenter', colDef.headerAlign === 'right' && 'columnHeader--alignRight', 'withBorderColor', showRightBorder && 'columnHeader--withRightBorder', showLeftBorder && 'columnHeader--withLeftBorder', pinnedPosition === PinnedColumnPosition.LEFT && 'columnHeader--pinnedLeft', pinnedPosition === PinnedColumnPosition.RIGHT && 'columnHeader--pinnedRight']
|
|
35
27
|
};
|
|
36
|
-
return (
|
|
28
|
+
return composeClasses(slots, getDataGridUtilityClass, classes);
|
|
37
29
|
};
|
|
38
30
|
const emptyFieldSx = {
|
|
39
31
|
[`& input[value=""]:not(:focus)`]: {
|
|
@@ -41,16 +33,16 @@ const emptyFieldSx = {
|
|
|
41
33
|
}
|
|
42
34
|
};
|
|
43
35
|
const defaultInputComponents = {
|
|
44
|
-
string:
|
|
45
|
-
number:
|
|
46
|
-
date:
|
|
47
|
-
dateTime:
|
|
48
|
-
boolean:
|
|
49
|
-
singleSelect:
|
|
36
|
+
string: GridFilterInputValue,
|
|
37
|
+
number: GridFilterInputValue,
|
|
38
|
+
date: GridFilterInputDate,
|
|
39
|
+
dateTime: GridFilterInputDate,
|
|
40
|
+
boolean: GridFilterInputBoolean,
|
|
41
|
+
singleSelect: GridFilterInputSingleSelect,
|
|
50
42
|
actions: null,
|
|
51
43
|
custom: null
|
|
52
44
|
};
|
|
53
|
-
const GridHeaderFilterCell =
|
|
45
|
+
const GridHeaderFilterCell = forwardRef((props, ref) => {
|
|
54
46
|
const {
|
|
55
47
|
colIndex,
|
|
56
48
|
height,
|
|
@@ -68,18 +60,18 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
68
60
|
showLeftBorder,
|
|
69
61
|
showRightBorder
|
|
70
62
|
} = props,
|
|
71
|
-
other = (
|
|
72
|
-
const apiRef =
|
|
73
|
-
const isRtl =
|
|
74
|
-
const columnFields =
|
|
75
|
-
const rootProps =
|
|
63
|
+
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
64
|
+
const apiRef = useGridPrivateApiContext();
|
|
65
|
+
const isRtl = useRtl();
|
|
66
|
+
const columnFields = useGridSelector(apiRef, gridVisibleColumnFieldsSelector);
|
|
67
|
+
const rootProps = useGridRootProps();
|
|
76
68
|
const cellRef = React.useRef(null);
|
|
77
|
-
const handleRef = (
|
|
69
|
+
const handleRef = useForkRef(ref, cellRef);
|
|
78
70
|
const inputRef = React.useRef(null);
|
|
79
71
|
const buttonRef = React.useRef(null);
|
|
80
|
-
const editingField =
|
|
72
|
+
const editingField = useGridSelector(apiRef, gridHeaderFilteringEditFieldSelector);
|
|
81
73
|
const isEditing = editingField === colDef.field;
|
|
82
|
-
const menuOpenField =
|
|
74
|
+
const menuOpenField = useGridSelector(apiRef, gridHeaderFilteringMenuSelector);
|
|
83
75
|
const isMenuOpen = menuOpenField === colDef.field;
|
|
84
76
|
|
|
85
77
|
// TODO: Support for `isAnyOf` operator
|
|
@@ -89,8 +81,8 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
89
81
|
}
|
|
90
82
|
return colDef.filterOperators.filter(operator => operator.value !== 'isAnyOf');
|
|
91
83
|
}, [colDef.filterOperators]);
|
|
92
|
-
const filterModel =
|
|
93
|
-
const filterableColumnsLookup =
|
|
84
|
+
const filterModel = useGridSelector(apiRef, gridFilterModelSelector);
|
|
85
|
+
const filterableColumnsLookup = useGridSelector(apiRef, gridFilterableColumnLookupSelector);
|
|
94
86
|
const isFilterReadOnly = React.useMemo(() => {
|
|
95
87
|
if (!filterModel?.items.length) {
|
|
96
88
|
return false;
|
|
@@ -105,7 +97,7 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
105
97
|
}, [apiRef, item]);
|
|
106
98
|
let headerFilterComponent;
|
|
107
99
|
if (colDef.renderHeaderFilter) {
|
|
108
|
-
headerFilterComponent = colDef.renderHeaderFilter((
|
|
100
|
+
headerFilterComponent = colDef.renderHeaderFilter(_extends({}, props, {
|
|
109
101
|
inputRef
|
|
110
102
|
}));
|
|
111
103
|
}
|
|
@@ -123,7 +115,7 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
123
115
|
}
|
|
124
116
|
}, [InputComponent, apiRef, hasFocus, isEditing, isMenuOpen]);
|
|
125
117
|
const onKeyDown = React.useCallback(event => {
|
|
126
|
-
if (isMenuOpen ||
|
|
118
|
+
if (isMenuOpen || isNavigationKey(event.key) || isFilterReadOnly) {
|
|
127
119
|
return;
|
|
128
120
|
}
|
|
129
121
|
switch (event.key) {
|
|
@@ -185,7 +177,7 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
185
177
|
onMouseDown: publish('headerFilterMouseDown', onMouseDown),
|
|
186
178
|
onBlur: publish('headerFilterBlur')
|
|
187
179
|
}), [onMouseDown, onKeyDown, publish]);
|
|
188
|
-
const ownerState = (
|
|
180
|
+
const ownerState = _extends({}, rootProps, {
|
|
189
181
|
pinnedPosition,
|
|
190
182
|
colDef,
|
|
191
183
|
showLeftBorder,
|
|
@@ -194,11 +186,11 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
194
186
|
const classes = useUtilityClasses(ownerState);
|
|
195
187
|
const isNoInputOperator = currentOperator.requiresFilterValue === false;
|
|
196
188
|
const isApplied = item?.value !== undefined || isNoInputOperator;
|
|
197
|
-
const label = currentOperator.headerLabel ?? apiRef.current.getLocaleText(`headerFilterOperator${(
|
|
189
|
+
const label = currentOperator.headerLabel ?? apiRef.current.getLocaleText(`headerFilterOperator${capitalize(item.operator)}`);
|
|
198
190
|
const isFilterActive = isApplied || hasFocus;
|
|
199
|
-
return /*#__PURE__*/(
|
|
200
|
-
className: (
|
|
201
|
-
style:
|
|
191
|
+
return /*#__PURE__*/_jsxs("div", _extends({
|
|
192
|
+
className: clsx(classes.root, headerClassName),
|
|
193
|
+
style: attachPinnedStyle(_extends({
|
|
202
194
|
height,
|
|
203
195
|
width
|
|
204
196
|
}, styleProp), isRtl, pinnedPosition, pinnedOffset),
|
|
@@ -207,8 +199,8 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
207
199
|
"aria-label": headerFilterComponent == null ? colDef.headerName ?? colDef.field : undefined
|
|
208
200
|
}, other, mouseEventsHandlers, {
|
|
209
201
|
ref: handleRef,
|
|
210
|
-
children: [headerFilterComponent, InputComponent && headerFilterComponent === undefined ? /*#__PURE__*/(
|
|
211
|
-
children: [/*#__PURE__*/(
|
|
202
|
+
children: [headerFilterComponent, InputComponent && headerFilterComponent === undefined ? /*#__PURE__*/_jsxs(React.Fragment, {
|
|
203
|
+
children: [/*#__PURE__*/_jsx(InputComponent, _extends({
|
|
212
204
|
apiRef: apiRef,
|
|
213
205
|
item: item,
|
|
214
206
|
inputRef: inputRef,
|
|
@@ -218,7 +210,7 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
218
210
|
apiRef.current.stopHeaderFilterEditMode();
|
|
219
211
|
// Blurring an input element should reset focus state only if `relatedTarget` is not the header filter cell
|
|
220
212
|
if (!event.relatedTarget?.className.includes('columnHeader')) {
|
|
221
|
-
apiRef.current.setState(state => (
|
|
213
|
+
apiRef.current.setState(state => _extends({}, state, {
|
|
222
214
|
focus: {
|
|
223
215
|
cell: null,
|
|
224
216
|
columnHeader: null,
|
|
@@ -228,10 +220,10 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
228
220
|
}));
|
|
229
221
|
}
|
|
230
222
|
},
|
|
231
|
-
label: (
|
|
223
|
+
label: capitalize(label),
|
|
232
224
|
placeholder: "",
|
|
233
225
|
isFilterActive: isFilterActive,
|
|
234
|
-
clearButton: showClearIcon && isApplied ? /*#__PURE__*/(
|
|
226
|
+
clearButton: showClearIcon && isApplied ? /*#__PURE__*/_jsx(GridHeaderFilterClearButton, {
|
|
235
227
|
onClick: clearFilterItem,
|
|
236
228
|
disabled: isFilterReadOnly
|
|
237
229
|
}) : null,
|
|
@@ -241,7 +233,7 @@ const GridHeaderFilterCell = (0, _forwardRef.forwardRef)((props, ref) => {
|
|
|
241
233
|
sx: colDef.type === 'date' || colDef.type === 'dateTime' || colDef.type === 'number' ? emptyFieldSx : undefined
|
|
242
234
|
}, isNoInputOperator ? {
|
|
243
235
|
value: ''
|
|
244
|
-
} : {}, currentOperator?.InputComponentProps, InputComponentProps)), /*#__PURE__*/(
|
|
236
|
+
} : {}, currentOperator?.InputComponentProps, InputComponentProps)), /*#__PURE__*/_jsx(GridHeaderFilterMenuContainer, {
|
|
245
237
|
operators: filterOperators,
|
|
246
238
|
item: item,
|
|
247
239
|
field: colDef.field,
|
|
@@ -258,32 +250,33 @@ process.env.NODE_ENV !== "production" ? GridHeaderFilterCell.propTypes = {
|
|
|
258
250
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
259
251
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
260
252
|
// ----------------------------------------------------------------------
|
|
261
|
-
colDef:
|
|
262
|
-
colIndex:
|
|
263
|
-
hasFocus:
|
|
253
|
+
colDef: PropTypes.object.isRequired,
|
|
254
|
+
colIndex: PropTypes.number.isRequired,
|
|
255
|
+
hasFocus: PropTypes.bool,
|
|
264
256
|
/**
|
|
265
257
|
* Class name added to the column header cell.
|
|
266
258
|
*/
|
|
267
|
-
headerClassName:
|
|
268
|
-
headerFilterMenuRef:
|
|
269
|
-
current:
|
|
259
|
+
headerClassName: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
|
|
260
|
+
headerFilterMenuRef: PropTypes.shape({
|
|
261
|
+
current: PropTypes.object
|
|
270
262
|
}).isRequired,
|
|
271
|
-
height:
|
|
272
|
-
InputComponentProps:
|
|
273
|
-
item:
|
|
274
|
-
field:
|
|
275
|
-
id:
|
|
276
|
-
operator:
|
|
277
|
-
value:
|
|
263
|
+
height: PropTypes.number.isRequired,
|
|
264
|
+
InputComponentProps: PropTypes.object,
|
|
265
|
+
item: PropTypes.shape({
|
|
266
|
+
field: PropTypes.string.isRequired,
|
|
267
|
+
id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
|
268
|
+
operator: PropTypes.string.isRequired,
|
|
269
|
+
value: PropTypes.any
|
|
278
270
|
}).isRequired,
|
|
279
|
-
pinnedOffset:
|
|
280
|
-
pinnedPosition:
|
|
281
|
-
showClearIcon:
|
|
282
|
-
showLeftBorder:
|
|
283
|
-
showRightBorder:
|
|
284
|
-
sortIndex:
|
|
285
|
-
style:
|
|
286
|
-
tabIndex:
|
|
287
|
-
width:
|
|
271
|
+
pinnedOffset: PropTypes.number,
|
|
272
|
+
pinnedPosition: PropTypes.oneOf([0, 1, 2, 3]),
|
|
273
|
+
showClearIcon: PropTypes.bool,
|
|
274
|
+
showLeftBorder: PropTypes.bool.isRequired,
|
|
275
|
+
showRightBorder: PropTypes.bool.isRequired,
|
|
276
|
+
sortIndex: PropTypes.number,
|
|
277
|
+
style: PropTypes.object,
|
|
278
|
+
tabIndex: PropTypes.oneOf([-1, 0]).isRequired,
|
|
279
|
+
width: PropTypes.number.isRequired
|
|
288
280
|
} : void 0;
|
|
289
|
-
const Memoized =
|
|
281
|
+
const Memoized = fastMemo(GridHeaderFilterCell);
|
|
282
|
+
export { Memoized as GridHeaderFilterCell };
|
|
@@ -1,28 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.GridHeaderFilterClearButton = GridHeaderFilterClearButton;
|
|
9
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
-
var React = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
|
|
12
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
5
|
const sx = {
|
|
14
6
|
padding: '2px'
|
|
15
7
|
};
|
|
16
8
|
function GridHeaderFilterClearButton(props) {
|
|
17
|
-
const rootProps =
|
|
18
|
-
return /*#__PURE__*/(
|
|
9
|
+
const rootProps = useGridRootProps();
|
|
10
|
+
return /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({
|
|
19
11
|
tabIndex: -1,
|
|
20
12
|
"aria-label": "Clear filter",
|
|
21
13
|
size: "small",
|
|
22
14
|
sx: sx
|
|
23
15
|
}, props, rootProps.slotProps?.baseIconButton, {
|
|
24
|
-
children: /*#__PURE__*/(
|
|
16
|
+
children: /*#__PURE__*/_jsx(rootProps.slots.columnMenuClearIcon, {
|
|
25
17
|
fontSize: "inherit"
|
|
26
18
|
})
|
|
27
19
|
}));
|
|
28
|
-
}
|
|
20
|
+
}
|
|
21
|
+
export { GridHeaderFilterClearButton };
|