Files
madbase/control-plane-ui/node_modules/@mui/x-data-grid/legacy/hooks/utils/useGridAriaAttributes.js
Vlad Durnea cffdf8af86
Some checks failed
CI/CD Pipeline / unit-tests (push) Failing after 1m16s
CI/CD Pipeline / integration-tests (push) Failing after 2m32s
CI/CD Pipeline / lint (push) Successful in 5m22s
CI/CD Pipeline / e2e-tests (push) Has been skipped
CI/CD Pipeline / build (push) Has been skipped
wip:milestone 0 fixes
2026-03-15 12:35:42 +02:00

25 lines
1.4 KiB
JavaScript

import { gridVisibleColumnDefinitionsSelector } from '../features/columns/gridColumnsSelector';
import { useGridSelector } from './useGridSelector';
import { useGridRootProps } from './useGridRootProps';
import { gridColumnGroupsHeaderMaxDepthSelector } from '../features/columnGrouping/gridColumnGroupsSelector';
import { gridPinnedRowsCountSelector, gridRowCountSelector } from '../features/rows/gridRowsSelector';
import { useGridPrivateApiContext } from './useGridPrivateApiContext';
export var useGridAriaAttributes = function useGridAriaAttributes() {
var _rootProps$experiment;
var apiRef = useGridPrivateApiContext();
var rootProps = useGridRootProps();
var visibleColumns = useGridSelector(apiRef, gridVisibleColumnDefinitionsSelector);
var totalRowCount = useGridSelector(apiRef, gridRowCountSelector);
var headerGroupingMaxDepth = useGridSelector(apiRef, gridColumnGroupsHeaderMaxDepthSelector);
var pinnedRowsCount = useGridSelector(apiRef, gridPinnedRowsCountSelector);
var role = 'grid';
if ((_rootProps$experiment = rootProps.experimentalFeatures) != null && _rootProps$experiment.ariaV7 && rootProps.treeData) {
role = 'treegrid';
}
return {
role: role,
'aria-colcount': visibleColumns.length,
'aria-rowcount': headerGroupingMaxDepth + 1 + pinnedRowsCount + totalRowCount,
'aria-multiselectable': !rootProps.disableMultipleRowSelection
};
};