@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,12 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
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.useGridColumnHeaders = 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 _xDataGrid = require("@mui/x-data-grid");
|
|
13
|
+
var _internals = require("@mui/x-data-grid/internals");
|
|
14
|
+
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
15
|
+
var _useGridRootProps = require("../../utils/useGridRootProps");
|
|
16
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
3
17
|
const _excluded = ["getColumnsToRender", "getPinnedCellOffset", "renderContext", "leftRenderContext", "rightRenderContext", "pinnedColumns", "visibleColumns", "columnPositions"];
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import { gridFocusColumnHeaderFilterSelector, useGridSelector, gridFilterModelSelector, gridTabIndexColumnHeaderFilterSelector, getDataGridUtilityClass } from '@mui/x-data-grid';
|
|
6
|
-
import { gridColumnsTotalWidthSelector, gridHasFillerSelector, gridHeaderFilterHeightSelector, gridVerticalScrollbarWidthSelector, useGridColumnHeaders as useGridColumnHeadersCommunity, useGridPrivateApiContext, getGridFilter, GridColumnHeaderRow, shouldCellShowLeftBorder, shouldCellShowRightBorder, PinnedColumnPosition } from '@mui/x-data-grid/internals';
|
|
7
|
-
import composeClasses from '@mui/utils/composeClasses';
|
|
8
|
-
import { useGridRootProps } from "../../utils/useGridRootProps.js";
|
|
9
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
18
|
const useUtilityClasses = ownerState => {
|
|
11
19
|
const {
|
|
12
20
|
classes
|
|
@@ -15,18 +23,18 @@ const useUtilityClasses = ownerState => {
|
|
|
15
23
|
const slots = {
|
|
16
24
|
headerFilterRow: ['headerFilterRow']
|
|
17
25
|
};
|
|
18
|
-
return
|
|
26
|
+
return (0, _composeClasses.default)(slots, _xDataGrid.getDataGridUtilityClass, classes);
|
|
19
27
|
}, [classes]);
|
|
20
28
|
};
|
|
21
29
|
const filterItemsCache = Object.create(null);
|
|
22
|
-
|
|
23
|
-
const apiRef = useGridPrivateApiContext();
|
|
30
|
+
const useGridColumnHeaders = props => {
|
|
31
|
+
const apiRef = (0, _internals.useGridPrivateApiContext)();
|
|
24
32
|
const {
|
|
25
33
|
headerGroupingMaxDepth,
|
|
26
34
|
hasOtherElementInTabSequence
|
|
27
35
|
} = props;
|
|
28
|
-
const columnHeaderFilterTabIndexState = useGridSelector(apiRef, gridTabIndexColumnHeaderFilterSelector);
|
|
29
|
-
const _useGridColumnHeaders =
|
|
36
|
+
const columnHeaderFilterTabIndexState = (0, _xDataGrid.useGridSelector)(apiRef, _xDataGrid.gridTabIndexColumnHeaderFilterSelector);
|
|
37
|
+
const _useGridColumnHeaders = (0, _internals.useGridColumnHeaders)((0, _extends2.default)({}, props, {
|
|
30
38
|
hasOtherElementInTabSequence: hasOtherElementInTabSequence || columnHeaderFilterTabIndexState !== null
|
|
31
39
|
})),
|
|
32
40
|
{
|
|
@@ -39,21 +47,21 @@ export const useGridColumnHeaders = props => {
|
|
|
39
47
|
visibleColumns,
|
|
40
48
|
columnPositions
|
|
41
49
|
} = _useGridColumnHeaders,
|
|
42
|
-
otherProps =
|
|
50
|
+
otherProps = (0, _objectWithoutPropertiesLoose2.default)(_useGridColumnHeaders, _excluded);
|
|
43
51
|
const headerFiltersRef = React.useRef(null);
|
|
44
52
|
apiRef.current.register('private', {
|
|
45
53
|
headerFiltersElementRef: headerFiltersRef
|
|
46
54
|
});
|
|
47
55
|
const headerFilterMenuRef = React.useRef(null);
|
|
48
|
-
const rootProps = useGridRootProps();
|
|
56
|
+
const rootProps = (0, _useGridRootProps.useGridRootProps)();
|
|
49
57
|
const classes = useUtilityClasses(rootProps);
|
|
50
58
|
const disableHeaderFiltering = !rootProps.headerFilters;
|
|
51
|
-
const filterModel = useGridSelector(apiRef, gridFilterModelSelector);
|
|
52
|
-
const columnsTotalWidth = useGridSelector(apiRef, gridColumnsTotalWidthSelector);
|
|
53
|
-
const gridHasFiller = useGridSelector(apiRef, gridHasFillerSelector);
|
|
54
|
-
const headerFilterHeight = useGridSelector(apiRef, gridHeaderFilterHeightSelector);
|
|
55
|
-
const scrollbarWidth = useGridSelector(apiRef, gridVerticalScrollbarWidthSelector);
|
|
56
|
-
const columnHeaderFilterFocus = useGridSelector(apiRef, gridFocusColumnHeaderFilterSelector);
|
|
59
|
+
const filterModel = (0, _xDataGrid.useGridSelector)(apiRef, _xDataGrid.gridFilterModelSelector);
|
|
60
|
+
const columnsTotalWidth = (0, _xDataGrid.useGridSelector)(apiRef, _internals.gridColumnsTotalWidthSelector);
|
|
61
|
+
const gridHasFiller = (0, _xDataGrid.useGridSelector)(apiRef, _internals.gridHasFillerSelector);
|
|
62
|
+
const headerFilterHeight = (0, _xDataGrid.useGridSelector)(apiRef, _internals.gridHeaderFilterHeightSelector);
|
|
63
|
+
const scrollbarWidth = (0, _xDataGrid.useGridSelector)(apiRef, _internals.gridVerticalScrollbarWidthSelector);
|
|
64
|
+
const columnHeaderFilterFocus = (0, _xDataGrid.useGridSelector)(apiRef, _xDataGrid.gridFocusColumnHeaderFilterSelector);
|
|
57
65
|
const getFilterItem = React.useCallback(colDef => {
|
|
58
66
|
const filterModelItem = filterModel?.items.find(it => it.field === colDef.field && it.operator !== 'isAnyOf');
|
|
59
67
|
if (filterModelItem != null) {
|
|
@@ -66,7 +74,7 @@ export const useGridColumnHeaders = props => {
|
|
|
66
74
|
return defaultCachedItem;
|
|
67
75
|
}
|
|
68
76
|
// there's no cached `defaultItem` for this column, let's generate one and cache it
|
|
69
|
-
const defaultItem = getGridFilter(colDef);
|
|
77
|
+
const defaultItem = (0, _internals.getGridFilter)(colDef);
|
|
70
78
|
filterItemsCache[colDef.field] = defaultItem;
|
|
71
79
|
return defaultItem;
|
|
72
80
|
}, [filterModel]);
|
|
@@ -92,9 +100,9 @@ export const useGridColumnHeaders = props => {
|
|
|
92
100
|
const pinnedOffset = getPinnedCellOffset(pinnedPosition, colDef.computedWidth, columnIndex, columnPositions, columnsTotalWidth, scrollbarWidth);
|
|
93
101
|
const indexInSection = i;
|
|
94
102
|
const sectionLength = renderedColumns.length;
|
|
95
|
-
const showLeftBorder = shouldCellShowLeftBorder(pinnedPosition, indexInSection);
|
|
96
|
-
const showRightBorder = shouldCellShowRightBorder(pinnedPosition, indexInSection, sectionLength, rootProps.showColumnVerticalBorder, gridHasFiller);
|
|
97
|
-
filters.push(/*#__PURE__*/
|
|
103
|
+
const showLeftBorder = (0, _internals.shouldCellShowLeftBorder)(pinnedPosition, indexInSection);
|
|
104
|
+
const showRightBorder = (0, _internals.shouldCellShowRightBorder)(pinnedPosition, indexInSection, sectionLength, rootProps.showColumnVerticalBorder, gridHasFiller);
|
|
105
|
+
filters.push(/*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.headerFilterCell, (0, _extends2.default)({
|
|
98
106
|
colIndex: columnIndex,
|
|
99
107
|
height: headerFilterHeight,
|
|
100
108
|
width: colDef.computedWidth,
|
|
@@ -117,27 +125,28 @@ export const useGridColumnHeaders = props => {
|
|
|
117
125
|
if (disableHeaderFiltering) {
|
|
118
126
|
return null;
|
|
119
127
|
}
|
|
120
|
-
return /*#__PURE__*/
|
|
128
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_internals.GridColumnHeaderRow, {
|
|
121
129
|
ref: headerFiltersRef,
|
|
122
130
|
className: classes.headerFilterRow,
|
|
123
131
|
role: "row",
|
|
124
132
|
"aria-rowindex": headerGroupingMaxDepth + 2,
|
|
125
133
|
ownerState: rootProps,
|
|
126
134
|
children: [leftRenderContext && getColumnFilters({
|
|
127
|
-
position: PinnedColumnPosition.LEFT,
|
|
135
|
+
position: _internals.PinnedColumnPosition.LEFT,
|
|
128
136
|
renderContext: leftRenderContext,
|
|
129
137
|
maxLastColumn: leftRenderContext.lastColumnIndex
|
|
130
138
|
}), getColumnFilters({
|
|
131
139
|
renderContext,
|
|
132
140
|
maxLastColumn: visibleColumns.length - pinnedColumns.right.length
|
|
133
141
|
}), rightRenderContext && getColumnFilters({
|
|
134
|
-
position: PinnedColumnPosition.RIGHT,
|
|
142
|
+
position: _internals.PinnedColumnPosition.RIGHT,
|
|
135
143
|
renderContext: rightRenderContext,
|
|
136
144
|
maxLastColumn: rightRenderContext.lastColumnIndex
|
|
137
145
|
})]
|
|
138
146
|
});
|
|
139
147
|
};
|
|
140
|
-
return
|
|
148
|
+
return (0, _extends2.default)({}, otherProps, {
|
|
141
149
|
getColumnFiltersRow
|
|
142
150
|
});
|
|
143
|
-
};
|
|
151
|
+
};
|
|
152
|
+
exports.useGridColumnHeaders = useGridColumnHeaders;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _gridColumnPinningInterface = require("./gridColumnPinningInterface");
|
|
7
|
+
Object.keys(_gridColumnPinningInterface).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _gridColumnPinningInterface[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _gridColumnPinningInterface[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -1,8 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.useGridColumnPinning = exports.columnPinningStateInitializer = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var React = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _xDataGrid = require("@mui/x-data-grid");
|
|
12
|
+
var _internals = require("@mui/x-data-grid/internals");
|
|
13
|
+
const columnPinningStateInitializer = (state, props, apiRef) => {
|
|
6
14
|
apiRef.current.caches.columnPinning = {
|
|
7
15
|
orderedFieldsBeforePinningColumns: null
|
|
8
16
|
};
|
|
@@ -14,24 +22,25 @@ export const columnPinningStateInitializer = (state, props, apiRef) => {
|
|
|
14
22
|
} else {
|
|
15
23
|
model = {};
|
|
16
24
|
}
|
|
17
|
-
return
|
|
25
|
+
return (0, _extends2.default)({}, state, {
|
|
18
26
|
pinnedColumns: model
|
|
19
27
|
});
|
|
20
28
|
};
|
|
21
|
-
|
|
22
|
-
|
|
29
|
+
exports.columnPinningStateInitializer = columnPinningStateInitializer;
|
|
30
|
+
const useGridColumnPinning = (apiRef, props) => {
|
|
31
|
+
const pinnedColumns = (0, _xDataGrid.useGridSelector)(apiRef, _internals.gridPinnedColumnsSelector);
|
|
23
32
|
|
|
24
33
|
/**
|
|
25
34
|
* PRE-PROCESSING
|
|
26
35
|
*/
|
|
27
36
|
const calculateScrollLeft = React.useCallback((initialValue, params) => {
|
|
28
|
-
const visiblePinnedColumns = gridVisiblePinnedColumnDefinitionsSelector(apiRef);
|
|
37
|
+
const visiblePinnedColumns = (0, _internals.gridVisiblePinnedColumnDefinitionsSelector)(apiRef);
|
|
29
38
|
if (!params.colIndex || visiblePinnedColumns.left.length === 0 && visiblePinnedColumns.right.length === 0) {
|
|
30
39
|
return initialValue;
|
|
31
40
|
}
|
|
32
|
-
const visibleColumns = gridVisibleColumnDefinitionsSelector(apiRef);
|
|
33
|
-
const columnsTotalWidth = gridColumnsTotalWidthSelector(apiRef);
|
|
34
|
-
const columnPositions = gridColumnPositionsSelector(apiRef);
|
|
41
|
+
const visibleColumns = (0, _xDataGrid.gridVisibleColumnDefinitionsSelector)(apiRef);
|
|
42
|
+
const columnsTotalWidth = (0, _xDataGrid.gridColumnsTotalWidthSelector)(apiRef);
|
|
43
|
+
const columnPositions = (0, _xDataGrid.gridColumnPositionsSelector)(apiRef);
|
|
35
44
|
const clientWidth = apiRef.current.virtualScrollerRef.current.clientWidth;
|
|
36
45
|
|
|
37
46
|
// When using RTL, `scrollLeft` becomes negative, so we must ensure that we only compare values.
|
|
@@ -43,13 +52,13 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
43
52
|
const elementBottom = offsetLeft + offsetWidth;
|
|
44
53
|
if (elementBottom - (clientWidth - rightPinnedColumnsWidth) > scrollLeft) {
|
|
45
54
|
const left = elementBottom - (clientWidth - rightPinnedColumnsWidth);
|
|
46
|
-
return
|
|
55
|
+
return (0, _extends2.default)({}, initialValue, {
|
|
47
56
|
left
|
|
48
57
|
});
|
|
49
58
|
}
|
|
50
59
|
if (offsetLeft < scrollLeft + leftPinnedColumnsWidth) {
|
|
51
60
|
const left = offsetLeft - leftPinnedColumnsWidth;
|
|
52
|
-
return
|
|
61
|
+
return (0, _extends2.default)({}, initialValue, {
|
|
53
62
|
left
|
|
54
63
|
});
|
|
55
64
|
}
|
|
@@ -67,7 +76,7 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
67
76
|
const checkIfCanBeReordered = React.useCallback((initialValue, {
|
|
68
77
|
targetIndex
|
|
69
78
|
}) => {
|
|
70
|
-
const visiblePinnedColumns = gridVisiblePinnedColumnDefinitionsSelector(apiRef);
|
|
79
|
+
const visiblePinnedColumns = (0, _internals.gridVisiblePinnedColumnDefinitionsSelector)(apiRef);
|
|
71
80
|
if (visiblePinnedColumns.left.length === 0 && visiblePinnedColumns.right.length === 0) {
|
|
72
81
|
return initialValue;
|
|
73
82
|
}
|
|
@@ -75,14 +84,14 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
75
84
|
return false;
|
|
76
85
|
}
|
|
77
86
|
if (visiblePinnedColumns.right.length > 0) {
|
|
78
|
-
const visibleColumns = gridVisibleColumnDefinitionsSelector(apiRef);
|
|
87
|
+
const visibleColumns = (0, _xDataGrid.gridVisibleColumnDefinitionsSelector)(apiRef);
|
|
79
88
|
const firstRightPinnedColumnIndex = visibleColumns.length - visiblePinnedColumns.right.length;
|
|
80
89
|
return targetIndex >= firstRightPinnedColumnIndex ? false : initialValue;
|
|
81
90
|
}
|
|
82
91
|
return initialValue;
|
|
83
92
|
}, [apiRef]);
|
|
84
93
|
const stateExportPreProcessing = React.useCallback((prevState, context) => {
|
|
85
|
-
const pinnedColumnsToExport = gridPinnedColumnsSelector(apiRef.current.state);
|
|
94
|
+
const pinnedColumnsToExport = (0, _internals.gridPinnedColumnsSelector)(apiRef.current.state);
|
|
86
95
|
const shouldExportPinnedColumns =
|
|
87
96
|
// Always export if the `exportOnlyDirtyModels` property is not activated
|
|
88
97
|
!context.exportOnlyDirtyModels ||
|
|
@@ -95,7 +104,7 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
95
104
|
if (!shouldExportPinnedColumns) {
|
|
96
105
|
return prevState;
|
|
97
106
|
}
|
|
98
|
-
return
|
|
107
|
+
return (0, _extends2.default)({}, prevState, {
|
|
99
108
|
pinnedColumns: pinnedColumnsToExport
|
|
100
109
|
});
|
|
101
110
|
}, [apiRef, props.pinnedColumns, props.initialState?.pinnedColumns]);
|
|
@@ -106,23 +115,23 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
106
115
|
}
|
|
107
116
|
return params;
|
|
108
117
|
}, [apiRef]);
|
|
109
|
-
useGridRegisterPipeProcessor(apiRef, 'scrollToIndexes', calculateScrollLeft);
|
|
110
|
-
useGridRegisterPipeProcessor(apiRef, 'columnMenu', addColumnMenuItems);
|
|
111
|
-
useGridRegisterPipeProcessor(apiRef, 'canBeReordered', checkIfCanBeReordered);
|
|
112
|
-
useGridRegisterPipeProcessor(apiRef, 'exportState', stateExportPreProcessing);
|
|
113
|
-
useGridRegisterPipeProcessor(apiRef, 'restoreState', stateRestorePreProcessing);
|
|
118
|
+
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'scrollToIndexes', calculateScrollLeft);
|
|
119
|
+
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'columnMenu', addColumnMenuItems);
|
|
120
|
+
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'canBeReordered', checkIfCanBeReordered);
|
|
121
|
+
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'exportState', stateExportPreProcessing);
|
|
122
|
+
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'restoreState', stateRestorePreProcessing);
|
|
114
123
|
apiRef.current.registerControlState({
|
|
115
124
|
stateId: 'pinnedColumns',
|
|
116
125
|
propModel: props.pinnedColumns,
|
|
117
126
|
propOnChange: props.onPinnedColumnsChange,
|
|
118
|
-
stateSelector: gridPinnedColumnsSelector,
|
|
127
|
+
stateSelector: _internals.gridPinnedColumnsSelector,
|
|
119
128
|
changeEvent: 'pinnedColumnsChange'
|
|
120
129
|
});
|
|
121
130
|
const pinColumn = React.useCallback((field, side) => {
|
|
122
131
|
if (apiRef.current.isColumnPinned(field) === side) {
|
|
123
132
|
return;
|
|
124
133
|
}
|
|
125
|
-
const otherSide = side === GridPinnedColumnPosition.RIGHT ? GridPinnedColumnPosition.LEFT : GridPinnedColumnPosition.RIGHT;
|
|
134
|
+
const otherSide = side === _xDataGrid.GridPinnedColumnPosition.RIGHT ? _xDataGrid.GridPinnedColumnPosition.LEFT : _xDataGrid.GridPinnedColumnPosition.RIGHT;
|
|
126
135
|
const newPinnedColumns = {
|
|
127
136
|
[side]: [...(pinnedColumns[side] || []), field],
|
|
128
137
|
[otherSide]: (pinnedColumns[otherSide] || []).filter(column => column !== field)
|
|
@@ -136,7 +145,7 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
136
145
|
});
|
|
137
146
|
}, [apiRef, pinnedColumns.left, pinnedColumns.right]);
|
|
138
147
|
const getPinnedColumns = React.useCallback(() => {
|
|
139
|
-
return gridPinnedColumnsSelector(apiRef.current.state);
|
|
148
|
+
return (0, _internals.gridPinnedColumnsSelector)(apiRef.current.state);
|
|
140
149
|
}, [apiRef]);
|
|
141
150
|
const setPinnedColumns = React.useCallback(newPinnedColumns => {
|
|
142
151
|
setState(apiRef, newPinnedColumns);
|
|
@@ -145,11 +154,11 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
145
154
|
const isColumnPinned = React.useCallback(field => {
|
|
146
155
|
const leftPinnedColumns = pinnedColumns.left || [];
|
|
147
156
|
if (leftPinnedColumns.includes(field)) {
|
|
148
|
-
return GridPinnedColumnPosition.LEFT;
|
|
157
|
+
return _xDataGrid.GridPinnedColumnPosition.LEFT;
|
|
149
158
|
}
|
|
150
159
|
const rightPinnedColumns = pinnedColumns.right || [];
|
|
151
160
|
if (rightPinnedColumns.includes(field)) {
|
|
152
|
-
return GridPinnedColumnPosition.RIGHT;
|
|
161
|
+
return _xDataGrid.GridPinnedColumnPosition.RIGHT;
|
|
153
162
|
}
|
|
154
163
|
return false;
|
|
155
164
|
}, [pinnedColumns.left, pinnedColumns.right]);
|
|
@@ -160,7 +169,7 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
160
169
|
setPinnedColumns,
|
|
161
170
|
isColumnPinned
|
|
162
171
|
};
|
|
163
|
-
useGridApiMethod(apiRef, columnPinningApi, 'public');
|
|
172
|
+
(0, _xDataGrid.useGridApiMethod)(apiRef, columnPinningApi, 'public');
|
|
164
173
|
const handleColumnOrderChange = params => {
|
|
165
174
|
if (!apiRef.current.caches.columnPinning.orderedFieldsBeforePinningColumns) {
|
|
166
175
|
return;
|
|
@@ -171,7 +180,7 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
171
180
|
oldIndex
|
|
172
181
|
} = params;
|
|
173
182
|
const delta = targetIndex > oldIndex ? 1 : -1;
|
|
174
|
-
const latestColumnFields = gridColumnFieldsSelector(apiRef);
|
|
183
|
+
const latestColumnFields = (0, _xDataGrid.gridColumnFieldsSelector)(apiRef);
|
|
175
184
|
|
|
176
185
|
/**
|
|
177
186
|
* When a column X is reordered to somewhere else, the position where this column X is dropped
|
|
@@ -214,15 +223,16 @@ export const useGridColumnPinning = (apiRef, props) => {
|
|
|
214
223
|
}
|
|
215
224
|
apiRef.current.caches.columnPinning.orderedFieldsBeforePinningColumns = newOrderedFieldsBeforePinningColumns;
|
|
216
225
|
};
|
|
217
|
-
useGridApiEventHandler(apiRef, 'columnOrderChange', handleColumnOrderChange);
|
|
226
|
+
(0, _xDataGrid.useGridApiEventHandler)(apiRef, 'columnOrderChange', handleColumnOrderChange);
|
|
218
227
|
React.useEffect(() => {
|
|
219
228
|
if (props.pinnedColumns) {
|
|
220
229
|
apiRef.current.setPinnedColumns(props.pinnedColumns);
|
|
221
230
|
}
|
|
222
231
|
}, [apiRef, props.pinnedColumns]);
|
|
223
232
|
};
|
|
233
|
+
exports.useGridColumnPinning = useGridColumnPinning;
|
|
224
234
|
function setState(apiRef, model) {
|
|
225
|
-
apiRef.current.setState(state =>
|
|
235
|
+
apiRef.current.setState(state => (0, _extends2.default)({}, state, {
|
|
226
236
|
pinnedColumns: model
|
|
227
237
|
}));
|
|
228
238
|
}
|
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.useGridColumnPinningPreProcessors = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var React = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _internals = require("@mui/x-data-grid/internals");
|
|
12
|
+
const useGridColumnPinningPreProcessors = (apiRef, props) => {
|
|
5
13
|
const {
|
|
6
14
|
disableColumnPinning
|
|
7
15
|
} = props;
|
|
@@ -17,10 +25,10 @@ export const useGridColumnPinningPreProcessors = (apiRef, props) => {
|
|
|
17
25
|
// the `state.columns.orderedFields` in this case), they might lag behind because the selectors
|
|
18
26
|
// are selecting the old state in `apiRef`, not the state being computed in the current pipe processor.
|
|
19
27
|
const savedState = apiRef.current.state;
|
|
20
|
-
apiRef.current.state =
|
|
28
|
+
apiRef.current.state = (0, _extends2.default)({}, savedState, {
|
|
21
29
|
columns: columnsState
|
|
22
30
|
});
|
|
23
|
-
const visibleColumns = gridVisiblePinnedColumnDefinitionsSelector(apiRef);
|
|
31
|
+
const visibleColumns = (0, _internals.gridVisiblePinnedColumnDefinitionsSelector)(apiRef);
|
|
24
32
|
apiRef.current.state = savedState;
|
|
25
33
|
// HACK: Ends here //
|
|
26
34
|
|
|
@@ -95,11 +103,12 @@ export const useGridColumnPinningPreProcessors = (apiRef, props) => {
|
|
|
95
103
|
const centerColumns = newOrderedFields.filter(field => {
|
|
96
104
|
return !leftPinnedColumns.includes(field) && !rightPinnedColumns.includes(field);
|
|
97
105
|
});
|
|
98
|
-
return
|
|
106
|
+
return (0, _extends2.default)({}, columnsState, {
|
|
99
107
|
orderedFields: [...leftPinnedColumns, ...centerColumns, ...rightPinnedColumns]
|
|
100
108
|
});
|
|
101
109
|
}, [apiRef, disableColumnPinning]);
|
|
102
|
-
useGridRegisterPipeProcessor(apiRef, 'hydrateColumns', reorderPinnedColumns);
|
|
110
|
+
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'hydrateColumns', reorderPinnedColumns);
|
|
103
111
|
const isColumnPinned = React.useCallback((initialValue, field) => apiRef.current.isColumnPinned(field), [apiRef]);
|
|
104
|
-
useGridRegisterPipeProcessor(apiRef, 'isColumnPinned', isColumnPinned);
|
|
105
|
-
};
|
|
112
|
+
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'isColumnPinned', isColumnPinned);
|
|
113
|
+
};
|
|
114
|
+
exports.useGridColumnPinningPreProcessors = useGridColumnPinningPreProcessors;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.gridColumnReorderSelector = exports.gridColumnReorderDragColSelector = void 0;
|
|
7
|
+
var _internals = require("@mui/x-data-grid/internals");
|
|
8
|
+
const gridColumnReorderSelector = state => state.columnReorder;
|
|
9
|
+
exports.gridColumnReorderSelector = gridColumnReorderSelector;
|
|
10
|
+
const gridColumnReorderDragColSelector = exports.gridColumnReorderDragColSelector = (0, _internals.createSelector)(gridColumnReorderSelector, columnReorder => columnReorder.dragCol);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _columnReorderSelector = require("./columnReorderSelector");
|
|
7
|
+
Object.keys(_columnReorderSelector).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _columnReorderSelector[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _columnReorderSelector[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -1,9 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.useGridColumnReorder = exports.columnReorderStateInitializer = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var React = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
12
|
+
var _RtlProvider = require("@mui/system/RtlProvider");
|
|
13
|
+
var _xDataGrid = require("@mui/x-data-grid");
|
|
14
|
+
var _columnReorderSelector = require("./columnReorderSelector");
|
|
7
15
|
const CURSOR_MOVE_DIRECTION_LEFT = 'left';
|
|
8
16
|
const CURSOR_MOVE_DIRECTION_RIGHT = 'right';
|
|
9
17
|
const getCursorMoveDirectionX = (currentCoordinates, nextCoordinates) => {
|
|
@@ -17,9 +25,9 @@ const useUtilityClasses = ownerState => {
|
|
|
17
25
|
const slots = {
|
|
18
26
|
columnHeaderDragging: ['columnHeader--dragging']
|
|
19
27
|
};
|
|
20
|
-
return
|
|
28
|
+
return (0, _composeClasses.default)(slots, _xDataGrid.getDataGridUtilityClass, classes);
|
|
21
29
|
};
|
|
22
|
-
|
|
30
|
+
const columnReorderStateInitializer = state => (0, _extends2.default)({}, state, {
|
|
23
31
|
columnReorder: {
|
|
24
32
|
dragCol: ''
|
|
25
33
|
}
|
|
@@ -28,8 +36,9 @@ export const columnReorderStateInitializer = state => _extends({}, state, {
|
|
|
28
36
|
/**
|
|
29
37
|
* @requires useGridColumns (method)
|
|
30
38
|
*/
|
|
31
|
-
|
|
32
|
-
|
|
39
|
+
exports.columnReorderStateInitializer = columnReorderStateInitializer;
|
|
40
|
+
const useGridColumnReorder = (apiRef, props) => {
|
|
41
|
+
const logger = (0, _xDataGrid.useGridLogger)(apiRef, 'useGridColumnReorder');
|
|
33
42
|
const dragColNode = React.useRef(null);
|
|
34
43
|
const cursorPosition = React.useRef({
|
|
35
44
|
x: 0,
|
|
@@ -42,7 +51,7 @@ export const useGridColumnReorder = (apiRef, props) => {
|
|
|
42
51
|
classes: props.classes
|
|
43
52
|
};
|
|
44
53
|
const classes = useUtilityClasses(ownerState);
|
|
45
|
-
const isRtl = useRtl();
|
|
54
|
+
const isRtl = (0, _RtlProvider.useRtl)();
|
|
46
55
|
React.useEffect(() => {
|
|
47
56
|
return () => {
|
|
48
57
|
clearTimeout(removeDnDStylesTimeout.current);
|
|
@@ -61,8 +70,8 @@ export const useGridColumnReorder = (apiRef, props) => {
|
|
|
61
70
|
if (event.dataTransfer) {
|
|
62
71
|
event.dataTransfer.effectAllowed = 'move';
|
|
63
72
|
}
|
|
64
|
-
apiRef.current.setState(state =>
|
|
65
|
-
columnReorder:
|
|
73
|
+
apiRef.current.setState(state => (0, _extends2.default)({}, state, {
|
|
74
|
+
columnReorder: (0, _extends2.default)({}, state.columnReorder, {
|
|
66
75
|
dragCol: params.field
|
|
67
76
|
})
|
|
68
77
|
}));
|
|
@@ -131,7 +140,7 @@ export const useGridColumnReorder = (apiRef, props) => {
|
|
|
131
140
|
event.stopPropagation();
|
|
132
141
|
}, []);
|
|
133
142
|
const handleDragOver = React.useCallback((params, event) => {
|
|
134
|
-
const dragColField = gridColumnReorderDragColSelector(apiRef);
|
|
143
|
+
const dragColField = (0, _columnReorderSelector.gridColumnReorderDragColSelector)(apiRef);
|
|
135
144
|
if (!dragColField) {
|
|
136
145
|
return;
|
|
137
146
|
}
|
|
@@ -196,7 +205,7 @@ export const useGridColumnReorder = (apiRef, props) => {
|
|
|
196
205
|
}
|
|
197
206
|
}, [apiRef, logger, isRtl]);
|
|
198
207
|
const handleDragEnd = React.useCallback((params, event) => {
|
|
199
|
-
const dragColField = gridColumnReorderDragColSelector(apiRef);
|
|
208
|
+
const dragColField = (0, _columnReorderSelector.gridColumnReorderDragColSelector)(apiRef);
|
|
200
209
|
if (props.disableColumnReorder || !dragColField) {
|
|
201
210
|
return;
|
|
202
211
|
}
|
|
@@ -227,18 +236,19 @@ export const useGridColumnReorder = (apiRef, props) => {
|
|
|
227
236
|
};
|
|
228
237
|
apiRef.current.publishEvent('columnOrderChange', columnOrderChangeParams);
|
|
229
238
|
}
|
|
230
|
-
apiRef.current.setState(state =>
|
|
231
|
-
columnReorder:
|
|
239
|
+
apiRef.current.setState(state => (0, _extends2.default)({}, state, {
|
|
240
|
+
columnReorder: (0, _extends2.default)({}, state.columnReorder, {
|
|
232
241
|
dragCol: ''
|
|
233
242
|
})
|
|
234
243
|
}));
|
|
235
244
|
apiRef.current.forceUpdate();
|
|
236
245
|
}, [apiRef, props.disableColumnReorder, props.keepColumnPositionIfDraggedOutside, logger, classes.columnHeaderDragging]);
|
|
237
|
-
useGridApiEventHandler(apiRef, 'columnHeaderDragStart', handleDragStart);
|
|
238
|
-
useGridApiEventHandler(apiRef, 'columnHeaderDragEnter', handleDragEnter);
|
|
239
|
-
useGridApiEventHandler(apiRef, 'columnHeaderDragOver', handleDragOver);
|
|
240
|
-
useGridApiEventHandler(apiRef, 'columnHeaderDragEnd', handleDragEnd);
|
|
241
|
-
useGridApiEventHandler(apiRef, 'cellDragEnter', handleDragEnter);
|
|
242
|
-
useGridApiEventHandler(apiRef, 'cellDragOver', handleDragOver);
|
|
243
|
-
useGridApiOptionHandler(apiRef, 'columnOrderChange', props.onColumnOrderChange);
|
|
244
|
-
};
|
|
246
|
+
(0, _xDataGrid.useGridApiEventHandler)(apiRef, 'columnHeaderDragStart', handleDragStart);
|
|
247
|
+
(0, _xDataGrid.useGridApiEventHandler)(apiRef, 'columnHeaderDragEnter', handleDragEnter);
|
|
248
|
+
(0, _xDataGrid.useGridApiEventHandler)(apiRef, 'columnHeaderDragOver', handleDragOver);
|
|
249
|
+
(0, _xDataGrid.useGridApiEventHandler)(apiRef, 'columnHeaderDragEnd', handleDragEnd);
|
|
250
|
+
(0, _xDataGrid.useGridApiEventHandler)(apiRef, 'cellDragEnter', handleDragEnter);
|
|
251
|
+
(0, _xDataGrid.useGridApiEventHandler)(apiRef, 'cellDragOver', handleDragOver);
|
|
252
|
+
(0, _xDataGrid.useGridApiOptionHandler)(apiRef, 'columnOrderChange', props.onColumnOrderChange);
|
|
253
|
+
};
|
|
254
|
+
exports.useGridColumnReorder = useGridColumnReorder;
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.GridDataSourceCacheDefault = void 0;
|
|
7
|
+
exports.getKey = getKey;
|
|
8
|
+
function getKey(params) {
|
|
2
9
|
return JSON.stringify([params.paginationModel, params.filterModel, params.sortModel, params.groupKeys, params.groupFields]);
|
|
3
10
|
}
|
|
4
|
-
|
|
11
|
+
class GridDataSourceCacheDefault {
|
|
5
12
|
constructor({
|
|
6
13
|
ttl = 300000
|
|
7
14
|
}) {
|
|
@@ -33,4 +40,5 @@ export class GridDataSourceCacheDefault {
|
|
|
33
40
|
clear() {
|
|
34
41
|
this.cache = {};
|
|
35
42
|
}
|
|
36
|
-
}
|
|
43
|
+
}
|
|
44
|
+
exports.GridDataSourceCacheDefault = GridDataSourceCacheDefault;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.gridGetRowsParamsSelector = exports.gridDataSourceStateSelector = exports.gridDataSourceLoadingSelector = exports.gridDataSourceLoadingIdSelector = exports.gridDataSourceErrorsSelector = exports.gridDataSourceErrorSelector = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _xDataGrid = require("@mui/x-data-grid");
|
|
10
|
+
var _internals = require("@mui/x-data-grid/internals");
|
|
11
|
+
const computeStartEnd = paginationModel => {
|
|
12
|
+
const start = paginationModel.page * paginationModel.pageSize;
|
|
13
|
+
const end = start + paginationModel.pageSize - 1;
|
|
14
|
+
return {
|
|
15
|
+
start,
|
|
16
|
+
end
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
const gridGetRowsParamsSelector = exports.gridGetRowsParamsSelector = (0, _internals.createSelector)(_xDataGrid.gridFilterModelSelector, _xDataGrid.gridSortModelSelector, _xDataGrid.gridPaginationModelSelector, (filterModel, sortModel, paginationModel) => {
|
|
20
|
+
return (0, _extends2.default)({
|
|
21
|
+
groupKeys: [],
|
|
22
|
+
paginationModel,
|
|
23
|
+
sortModel,
|
|
24
|
+
filterModel
|
|
25
|
+
}, computeStartEnd(paginationModel));
|
|
26
|
+
});
|
|
27
|
+
const gridDataSourceStateSelector = state => state.dataSource;
|
|
28
|
+
exports.gridDataSourceStateSelector = gridDataSourceStateSelector;
|
|
29
|
+
const gridDataSourceLoadingSelector = exports.gridDataSourceLoadingSelector = (0, _internals.createSelector)(gridDataSourceStateSelector, dataSource => dataSource.loading);
|
|
30
|
+
const gridDataSourceLoadingIdSelector = exports.gridDataSourceLoadingIdSelector = (0, _internals.createSelectorV8)(gridDataSourceStateSelector, (dataSource, id) => dataSource.loading[id] ?? false);
|
|
31
|
+
const gridDataSourceErrorsSelector = exports.gridDataSourceErrorsSelector = (0, _internals.createSelector)(gridDataSourceStateSelector, dataSource => dataSource.errors);
|
|
32
|
+
const gridDataSourceErrorSelector = exports.gridDataSourceErrorSelector = (0, _internals.createSelectorV8)(gridDataSourceStateSelector, (dataSource, id) => dataSource.errors[id]);
|