@mui/x-data-grid 7.0.0-beta.1 → 7.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/CHANGELOG.md +223 -1
  2. package/DataGrid/DataGrid.d.ts +1 -1
  3. package/DataGrid/DataGrid.js +1 -7
  4. package/DataGrid/useDataGridProps.js +3 -1
  5. package/components/GridPagination.d.ts +1 -1
  6. package/components/GridPagination.js +12 -2
  7. package/components/GridRow.d.ts +3 -1
  8. package/components/GridRow.js +16 -6
  9. package/components/GridScrollbarFillerCell.js +0 -3
  10. package/components/base/GridFooterPlaceholder.js +1 -1
  11. package/components/cell/GridActionsCell.js +3 -3
  12. package/components/cell/GridActionsCellItem.d.ts +13 -1
  13. package/components/cell/GridActionsCellItem.js +27 -15
  14. package/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
  15. package/components/columnSelection/GridHeaderCheckbox.d.ts +1 -1
  16. package/components/columnsManagement/utils.d.ts +1 -1
  17. package/components/containers/GridRootStyles.js +9 -4
  18. package/components/panel/GridPanel.d.ts +1 -1
  19. package/components/panel/filterPanel/GridFilterInputBoolean.js +7 -5
  20. package/components/panel/filterPanel/GridFilterInputSingleSelect.js +7 -5
  21. package/components/panel/filterPanel/GridFilterInputValue.js +4 -3
  22. package/components/panel/filterPanel/GridFilterPanel.js +1 -1
  23. package/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
  24. package/constants/gridClasses.d.ts +5 -0
  25. package/constants/gridClasses.js +1 -1
  26. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +5 -5
  27. package/hooks/features/columnHeaders/useGridColumnHeaders.js +46 -48
  28. package/hooks/features/rows/gridRowsUtils.js +1 -1
  29. package/hooks/features/rows/useGridRows.js +2 -2
  30. package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +9 -0
  31. package/hooks/features/virtualization/gridVirtualizationSelectors.js +7 -0
  32. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +0 -1
  33. package/hooks/features/virtualization/useGridVirtualScroller.js +28 -26
  34. package/hooks/features/virtualization/useGridVirtualization.d.ts +8 -0
  35. package/hooks/features/virtualization/useGridVirtualization.js +6 -1
  36. package/index.js +1 -1
  37. package/internals/utils/propValidation.js +1 -1
  38. package/joy/joySlots.js +2 -2
  39. package/legacy/DataGrid/DataGrid.js +1 -7
  40. package/legacy/DataGrid/useDataGridProps.js +3 -1
  41. package/legacy/components/GridPagination.js +10 -2
  42. package/legacy/components/GridRow.js +16 -6
  43. package/legacy/components/GridScrollbarFillerCell.js +1 -3
  44. package/legacy/components/base/GridFooterPlaceholder.js +1 -1
  45. package/legacy/components/cell/GridActionsCell.js +3 -3
  46. package/legacy/components/cell/GridActionsCellItem.js +30 -17
  47. package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
  48. package/legacy/components/containers/GridRootStyles.js +8 -5
  49. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +7 -4
  50. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +8 -5
  51. package/legacy/components/panel/filterPanel/GridFilterInputValue.js +4 -2
  52. package/legacy/components/panel/filterPanel/GridFilterPanel.js +1 -1
  53. package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
  54. package/legacy/constants/gridClasses.js +1 -1
  55. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +60 -63
  56. package/legacy/hooks/features/rows/gridRowsUtils.js +1 -1
  57. package/legacy/hooks/features/rows/useGridRows.js +2 -2
  58. package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +9 -0
  59. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +28 -26
  60. package/legacy/hooks/features/virtualization/useGridVirtualization.js +6 -1
  61. package/legacy/index.js +1 -1
  62. package/legacy/internals/utils/propValidation.js +1 -1
  63. package/legacy/joy/joySlots.js +2 -2
  64. package/legacy/locales/daDK.js +12 -12
  65. package/locales/daDK.js +12 -12
  66. package/models/api/gridApiCommon.d.ts +1 -1
  67. package/models/api/gridFilterApi.d.ts +1 -1
  68. package/models/api/gridLocaleTextApi.d.ts +3 -3
  69. package/models/events/gridEventLookup.d.ts +2 -9
  70. package/models/gridSlotsComponent.d.ts +34 -36
  71. package/models/gridSlotsComponentsProps.d.ts +73 -54
  72. package/models/props/DataGridProps.d.ts +2 -8
  73. package/modern/DataGrid/DataGrid.js +1 -7
  74. package/modern/DataGrid/useDataGridProps.js +3 -1
  75. package/modern/components/GridPagination.js +12 -2
  76. package/modern/components/GridRow.js +15 -6
  77. package/modern/components/GridScrollbarFillerCell.js +0 -3
  78. package/modern/components/base/GridFooterPlaceholder.js +1 -1
  79. package/modern/components/cell/GridActionsCell.js +3 -3
  80. package/modern/components/cell/GridActionsCellItem.js +27 -15
  81. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
  82. package/modern/components/containers/GridRootStyles.js +9 -4
  83. package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +7 -5
  84. package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +7 -5
  85. package/modern/components/panel/filterPanel/GridFilterInputValue.js +4 -3
  86. package/modern/components/panel/filterPanel/GridFilterPanel.js +1 -1
  87. package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
  88. package/modern/constants/gridClasses.js +1 -1
  89. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +46 -48
  90. package/modern/hooks/features/rows/gridRowsUtils.js +1 -1
  91. package/modern/hooks/features/rows/useGridRows.js +2 -2
  92. package/modern/hooks/features/virtualization/gridVirtualizationSelectors.js +7 -0
  93. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +27 -24
  94. package/modern/hooks/features/virtualization/useGridVirtualization.js +6 -1
  95. package/modern/index.js +1 -1
  96. package/modern/internals/utils/propValidation.js +1 -1
  97. package/modern/joy/joySlots.js +2 -2
  98. package/modern/locales/daDK.js +12 -12
  99. package/node/DataGrid/DataGrid.js +1 -7
  100. package/node/DataGrid/useDataGridProps.js +3 -1
  101. package/node/components/GridPagination.js +12 -2
  102. package/node/components/GridRow.js +15 -6
  103. package/node/components/GridScrollbarFillerCell.js +0 -3
  104. package/node/components/base/GridFooterPlaceholder.js +1 -1
  105. package/node/components/cell/GridActionsCell.js +3 -3
  106. package/node/components/cell/GridActionsCellItem.js +27 -15
  107. package/node/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
  108. package/node/components/containers/GridRootStyles.js +9 -4
  109. package/node/components/panel/filterPanel/GridFilterInputBoolean.js +7 -5
  110. package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +7 -5
  111. package/node/components/panel/filterPanel/GridFilterInputValue.js +4 -3
  112. package/node/components/panel/filterPanel/GridFilterPanel.js +1 -1
  113. package/node/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
  114. package/node/constants/gridClasses.js +1 -1
  115. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +45 -47
  116. package/node/hooks/features/rows/gridRowsUtils.js +2 -2
  117. package/node/hooks/features/rows/useGridRows.js +2 -2
  118. package/node/hooks/features/virtualization/gridVirtualizationSelectors.js +8 -1
  119. package/node/hooks/features/virtualization/useGridVirtualScroller.js +26 -23
  120. package/node/hooks/features/virtualization/useGridVirtualization.js +7 -2
  121. package/node/index.js +1 -1
  122. package/node/internals/utils/propValidation.js +1 -1
  123. package/node/joy/joySlots.js +2 -2
  124. package/node/locales/daDK.js +12 -12
  125. package/package.json +4 -4
@@ -142,7 +142,7 @@ var GridFilterPanel = /*#__PURE__*/React.forwardRef(function GridFilterPanel(pro
142
142
  }
143
143
  return apiRef.current.setFilterModel(_extends({}, filterModel, {
144
144
  items: readOnlyFilters
145
- }));
145
+ }), 'removeAllFilterItems');
146
146
  }, [apiRef, readOnlyFilters, filterModel, validFilters]);
147
147
  React.useEffect(function () {
148
148
  if (logicOperators.length > 0 && filterModel.logicOperator && !logicOperators.includes(filterModel.logicOperator)) {
@@ -5,6 +5,9 @@ import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import { styled } from '@mui/system';
7
7
  import { unstable_composeClasses as composeClasses } from '@mui/utils';
8
+ import { useGridApiContext } from '../../hooks/utils/useGridApiContext';
9
+ import { useGridSelector } from '../../hooks/utils/useGridSelector';
10
+ import { gridOffsetsSelector } from '../../hooks/features/virtualization';
8
11
  import { useGridRootProps } from '../../hooks/utils/useGridRootProps';
9
12
  import { getDataGridUtilityClass } from '../../constants/gridClasses';
10
13
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -25,18 +28,22 @@ var VirtualScrollerRenderZoneRoot = styled('div', {
25
28
  position: 'absolute',
26
29
  display: 'flex',
27
30
  // Prevents margin collapsing when using `getRowSpacing`
28
- flexDirection: 'column',
29
- transform: 'translate3d(0, var(--DataGrid-offsetTop), 0)'
31
+ flexDirection: 'column'
30
32
  });
31
33
  var GridVirtualScrollerRenderZone = /*#__PURE__*/React.forwardRef(function GridVirtualScrollerRenderZone(props, ref) {
32
34
  var className = props.className,
33
35
  other = _objectWithoutProperties(props, _excluded);
36
+ var apiRef = useGridApiContext();
34
37
  var rootProps = useGridRootProps();
35
38
  var classes = useUtilityClasses(rootProps);
39
+ var offsets = useGridSelector(apiRef, gridOffsetsSelector);
36
40
  return /*#__PURE__*/_jsx(VirtualScrollerRenderZoneRoot, _extends({
37
41
  ref: ref,
38
42
  className: clsx(classes.root, className),
39
- ownerState: rootProps
43
+ ownerState: rootProps,
44
+ style: {
45
+ transform: "translate3d(0, ".concat(offsets.top, "px, 0)")
46
+ }
40
47
  }, other));
41
48
  });
42
49
  export { GridVirtualScrollerRenderZone };
@@ -2,4 +2,4 @@ import { unstable_generateUtilityClasses as generateUtilityClasses, unstable_gen
2
2
  export function getDataGridUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiDataGrid', slot);
4
4
  }
5
- export var gridClasses = generateUtilityClasses('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--withRenderer', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellContent', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'checkboxInput', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderDropZone', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnGroupHeader', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeader--showColumnBorder', 'columnHeaders', 'columnHeadersInner', 'columnHeadersInner--scrollable', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'virtualScroller', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'pinnedColumnHeaders', 'pinnedColumnHeaders--left', 'pinnedColumnHeaders--right', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
5
+ export var gridClasses = generateUtilityClasses('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--withRenderer', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellContent', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'cellOffsetLeft', 'checkboxInput', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderDropZone', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnGroupHeader', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeader--showColumnBorder', 'columnHeaders', 'columnHeadersInner', 'columnHeadersInner--scrollable', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'virtualScroller', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'pinnedColumnHeaders', 'pinnedColumnHeaders--left', 'pinnedColumnHeaders--right', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
@@ -4,11 +4,12 @@ import * as React from 'react';
4
4
  import { unstable_useForkRef as useForkRef } from '@mui/utils';
5
5
  import { styled } from '@mui/material/styles';
6
6
  import { useGridSelector } from '../../utils';
7
+ import { useGridRootProps } from '../../utils/useGridRootProps';
7
8
  import { useGridPrivateApiContext } from '../../utils/useGridPrivateApiContext';
8
9
  import { useGridApiEventHandler } from '../../utils/useGridApiEventHandler';
9
10
  import { GridColumnHeaderItem } from '../../../components/columnHeaders/GridColumnHeaderItem';
10
11
  import { gridDimensionsSelector } from '../dimensions';
11
- import { gridRenderContextColumnsSelector, gridVirtualizationColumnEnabledSelector } from '../virtualization';
12
+ import { gridOffsetsSelector, gridRenderContextColumnsSelector, gridVirtualizationColumnEnabledSelector } from '../virtualization';
12
13
  import { GridColumnGroupHeader } from '../../../components/columnHeaders/GridColumnGroupHeader';
13
14
  import { GridPinnedColumnPosition, gridVisiblePinnedColumnDefinitionsSelector } from '../columns';
14
15
  import { GridScrollbarFillerCell as ScrollbarFiller } from '../../../components/GridScrollbarFillerCell';
@@ -25,21 +26,12 @@ var SpaceFiller = styled('div')({
25
26
  export var GridColumnHeaderRow = styled('div', {
26
27
  name: 'MuiDataGrid',
27
28
  slot: 'ColumnHeaderRow',
28
- overridesResolver: function overridesResolver(props, styles) {
29
+ overridesResolver: function overridesResolver(_, styles) {
29
30
  return styles.columnHeaderRow;
30
31
  }
31
- })(function (_ref) {
32
- var _ref$ownerState = _ref.ownerState,
33
- _ref$ownerState$param = _ref$ownerState.params,
34
- _ref$ownerState$param2 = _ref$ownerState$param === void 0 ? {} : _ref$ownerState$param,
35
- position = _ref$ownerState$param2.position,
36
- _ref$ownerState$leftO = _ref$ownerState.leftOverflow,
37
- leftOverflow = _ref$ownerState$leftO === void 0 ? 0 : _ref$ownerState$leftO;
38
- return {
39
- display: 'flex',
40
- height: 'var(--DataGrid-headerHeight)',
41
- transform: position === undefined ? "translate3d(".concat(leftOverflow !== 0 ? "calc(var(--DataGrid-offsetLeft) - ".concat(leftOverflow, "px)") : 'var(--DataGrid-offsetLeft)', ", 0, 0)") : undefined
42
- };
32
+ })({
33
+ display: 'flex',
34
+ height: 'var(--DataGrid-headerHeight)'
43
35
  });
44
36
  export var useGridColumnHeaders = function useGridColumnHeaders(props) {
45
37
  var innerRefProp = props.innerRef,
@@ -64,10 +56,12 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
64
56
  resizeCol = _React$useState4[0],
65
57
  setResizeCol = _React$useState4[1];
66
58
  var apiRef = useGridPrivateApiContext();
59
+ var rootProps = useGridRootProps();
67
60
  var hasVirtualization = useGridSelector(apiRef, gridVirtualizationColumnEnabledSelector);
68
61
  var innerRef = React.useRef(null);
69
62
  var handleInnerRef = useForkRef(innerRefProp, innerRef);
70
63
  var dimensions = useGridSelector(apiRef, gridDimensionsSelector);
64
+ var offsets = useGridSelector(apiRef, gridOffsetsSelector);
71
65
  var renderContext = useGridSelector(apiRef, gridRenderContextColumnsSelector);
72
66
  var visiblePinnedColumns = useGridSelector(apiRef, gridVisiblePinnedColumnDefinitionsSelector);
73
67
  React.useEffect(function () {
@@ -92,11 +86,11 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
92
86
 
93
87
  // Helper for computation common between getColumnHeaders and getColumnGroupHeaders
94
88
  var getColumnsToRender = function getColumnsToRender(params) {
95
- var _ref2 = params || {},
96
- _ref2$renderContext = _ref2.renderContext,
97
- currentContext = _ref2$renderContext === void 0 ? renderContext : _ref2$renderContext,
98
- _ref2$maxLastColumn = _ref2.maxLastColumn,
99
- maxLastColumn = _ref2$maxLastColumn === void 0 ? visibleColumns.length : _ref2$maxLastColumn;
89
+ var _ref = params || {},
90
+ _ref$renderContext = _ref.renderContext,
91
+ currentContext = _ref$renderContext === void 0 ? renderContext : _ref$renderContext,
92
+ _ref$maxLastColumn = _ref.maxLastColumn,
93
+ maxLastColumn = _ref$maxLastColumn === void 0 ? visibleColumns.length : _ref$maxLastColumn;
100
94
  var firstColumnToRender = !hasVirtualization ? 0 : currentContext.firstColumnIndex;
101
95
  var lastColumnToRender = !hasVirtualization ? maxLastColumn : currentContext.lastColumnIndex;
102
96
  var renderedColumns = visibleColumns.slice(firstColumnToRender, lastColumnToRender);
@@ -106,12 +100,19 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
106
100
  lastColumnToRender: lastColumnToRender
107
101
  };
108
102
  };
109
- var getFiller = function getFiller(params) {
110
- var borderTop = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
103
+ var getFillers = function getFillers(params, children, leftOverflow) {
104
+ var borderTop = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
111
105
  var isPinnedRight = (params == null ? void 0 : params.position) === GridPinnedColumnPosition.RIGHT;
112
- var hasScrollbarFiller = visiblePinnedColumns.right.length > 0 && isPinnedRight || visiblePinnedColumns.right.length === 0 && (params == null ? void 0 : params.position) === undefined;
106
+ var isNotPinned = (params == null ? void 0 : params.position) === undefined;
107
+ var hasScrollbarFiller = visiblePinnedColumns.right.length > 0 && isPinnedRight || visiblePinnedColumns.right.length === 0 && isNotPinned;
108
+ var leftOffsetWidth = offsets.left - leftOverflow;
113
109
  return /*#__PURE__*/_jsxs(React.Fragment, {
114
- children: [(params == null ? void 0 : params.position) === undefined && /*#__PURE__*/_jsx(SpaceFiller, {
110
+ children: [isNotPinned && /*#__PURE__*/_jsx("div", {
111
+ role: "presentation",
112
+ style: {
113
+ width: leftOffsetWidth
114
+ }
115
+ }), children, isNotPinned && /*#__PURE__*/_jsx(SpaceFiller, {
115
116
  className: gridClasses.columnHeader
116
117
  }), hasScrollbarFiller && /*#__PURE__*/_jsx(ScrollbarFiller, {
117
118
  header: true,
@@ -145,13 +146,11 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
145
146
  tabIndex: tabIndex
146
147
  }, other), colDef.field));
147
148
  }
148
- return /*#__PURE__*/_jsxs(GridColumnHeaderRow, {
149
+ return /*#__PURE__*/_jsx(GridColumnHeaderRow, {
149
150
  role: "row",
150
151
  "aria-rowindex": headerGroupingMaxDepth + 1,
151
- ownerState: {
152
- params: params
153
- },
154
- children: [columns, getFiller(params)]
152
+ ownerState: rootProps,
153
+ children: getFillers(params, columns, 0)
155
154
  });
156
155
  };
157
156
  var getColumnGroupHeaders = function getColumnGroupHeaders(params) {
@@ -171,16 +170,16 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
171
170
  var rowStructure = columnGroupsHeaderStructure[depth];
172
171
  var firstColumnFieldToRender = visibleColumns[firstColumnToRender].field;
173
172
  var firstGroupToRender = (_apiRef$current$getCo = apiRef.current.getColumnGroupPath(firstColumnFieldToRender)[depth]) != null ? _apiRef$current$getCo : null;
174
- var firstGroupIndex = rowStructure.findIndex(function (_ref4) {
175
- var groupId = _ref4.groupId,
176
- columnFields = _ref4.columnFields;
173
+ var firstGroupIndex = rowStructure.findIndex(function (_ref3) {
174
+ var groupId = _ref3.groupId,
175
+ columnFields = _ref3.columnFields;
177
176
  return groupId === firstGroupToRender && columnFields.includes(firstColumnFieldToRender);
178
177
  });
179
178
  var lastColumnFieldToRender = visibleColumns[lastColumnToRender - 1].field;
180
179
  var lastGroupToRender = (_apiRef$current$getCo2 = apiRef.current.getColumnGroupPath(lastColumnFieldToRender)[depth]) != null ? _apiRef$current$getCo2 : null;
181
- var lastGroupIndex = rowStructure.findIndex(function (_ref5) {
182
- var groupId = _ref5.groupId,
183
- columnFields = _ref5.columnFields;
180
+ var lastGroupIndex = rowStructure.findIndex(function (_ref4) {
181
+ var groupId = _ref4.groupId,
182
+ columnFields = _ref4.columnFields;
184
183
  return groupId === lastGroupToRender && columnFields.includes(lastColumnFieldToRender);
185
184
  });
186
185
  var visibleColumnGroupHeader = rowStructure.slice(firstGroupIndex, lastGroupIndex + 1).map(function (groupStructure) {
@@ -200,9 +199,9 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
200
199
  return acc + ((_column$computedWidth = column.computedWidth) != null ? _column$computedWidth : 0);
201
200
  }, 0);
202
201
  var columnIndex = firstColumnToRender;
203
- var elements = visibleColumnGroupHeader.map(function (_ref6) {
204
- var groupId = _ref6.groupId,
205
- columnFields = _ref6.columnFields;
202
+ var elements = visibleColumnGroupHeader.map(function (_ref5) {
203
+ var groupId = _ref5.groupId,
204
+ columnFields = _ref5.columnFields;
206
205
  var hasFocus = columnGroupHeaderFocus !== null && columnGroupHeaderFocus.depth === depth && columnFields.includes(columnGroupHeaderFocus.field);
207
206
  var tabIndex = columnGroupHeaderTabIndexState !== null && columnGroupHeaderTabIndexState.depth === depth && columnFields.includes(columnGroupHeaderTabIndexState.field) ? 0 : -1;
208
207
  var headerInfo = {
@@ -227,40 +226,38 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
227
226
  _loop(depth);
228
227
  }
229
228
  headerToRender.forEach(function (depthInfo, depthIndex) {
230
- columns.push( /*#__PURE__*/_jsxs(GridColumnHeaderRow, {
229
+ var children = depthInfo.elements.map(function (_ref2, groupIndex) {
230
+ var groupId = _ref2.groupId,
231
+ width = _ref2.width,
232
+ fields = _ref2.fields,
233
+ colIndex = _ref2.colIndex,
234
+ hasFocus = _ref2.hasFocus,
235
+ tabIndex = _ref2.tabIndex;
236
+ return /*#__PURE__*/_jsx(GridColumnGroupHeader, {
237
+ groupId: groupId,
238
+ width: width,
239
+ fields: fields,
240
+ colIndex: colIndex,
241
+ depth: depthIndex,
242
+ isLastColumn: colIndex === visibleColumns.length - fields.length,
243
+ maxDepth: headerToRender.length,
244
+ height: dimensions.headerHeight,
245
+ hasFocus: hasFocus,
246
+ tabIndex: tabIndex
247
+ }, groupIndex);
248
+ });
249
+ columns.push( /*#__PURE__*/_jsx(GridColumnHeaderRow, {
231
250
  role: "row",
232
251
  "aria-rowindex": depthIndex + 1,
233
- ownerState: {
234
- params: params,
235
- leftOverflow: depthInfo.leftOverflow
236
- },
237
- children: [depthInfo.elements.map(function (_ref3, groupIndex) {
238
- var groupId = _ref3.groupId,
239
- width = _ref3.width,
240
- fields = _ref3.fields,
241
- colIndex = _ref3.colIndex,
242
- hasFocus = _ref3.hasFocus,
243
- tabIndex = _ref3.tabIndex;
244
- return /*#__PURE__*/_jsx(GridColumnGroupHeader, {
245
- groupId: groupId,
246
- width: width,
247
- fields: fields,
248
- colIndex: colIndex,
249
- depth: depthIndex,
250
- isLastColumn: colIndex === visibleColumns.length - fields.length,
251
- maxDepth: headerToRender.length,
252
- height: dimensions.headerHeight,
253
- hasFocus: hasFocus,
254
- tabIndex: tabIndex
255
- }, groupIndex);
256
- }), getFiller(params)]
252
+ ownerState: rootProps,
253
+ children: getFillers(params, children, depthInfo.leftOverflow)
257
254
  }, depthIndex));
258
255
  });
259
256
  return columns;
260
257
  };
261
258
  return {
262
259
  renderContext: renderContext,
263
- getFiller: getFiller,
260
+ getFillers: getFillers,
264
261
  getColumnHeaders: getColumnHeaders,
265
262
  getColumnsToRender: getColumnsToRender,
266
263
  getColumnGroupHeaders: getColumnGroupHeaders,
@@ -1,7 +1,7 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import { gridPinnedRowsSelector } from './gridRowsSelector';
4
- import { gridDimensionsSelector } from '../dimensions';
4
+ import { gridDimensionsSelector } from '../dimensions/gridDimensionsSelectors';
5
5
  export var GRID_ROOT_GROUP_ID = "auto-generated-group-node-root";
6
6
  export var GRID_ID_AUTOGENERATED = Symbol('mui.id_autogenerated');
7
7
  export var buildRootGroup = function buildRootGroup() {
@@ -124,7 +124,7 @@ export var useGridRows = function useGridRows(apiRef, props) {
124
124
  }, [logger, props.getRowId, props.loading, props.rowCount, throttledRowsChange, apiRef]);
125
125
  var updateRows = React.useCallback(function (updates) {
126
126
  if (props.signature === GridSignature.DataGrid && updates.length > 1) {
127
- throw new Error(["MUI X: You can't update several rows at once in `apiRef.current.updateRows` on the DataGrid.", 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
127
+ throw new Error(['MUI X: You cannot update several rows at once in `apiRef.current.updateRows` on the DataGrid.', 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
128
128
  }
129
129
  var nonPinnedRowsUpdates = [];
130
130
  updates.forEach(function (update) {
@@ -263,7 +263,7 @@ export var useGridRows = function useGridRows(apiRef, props) {
263
263
  }, [apiRef, logger]);
264
264
  var replaceRows = React.useCallback(function (firstRowToRender, newRows) {
265
265
  if (props.signature === GridSignature.DataGrid && newRows.length > 1) {
266
- throw new Error(["MUI X: You can't replace rows using `apiRef.current.unstable_replaceRows` on the DataGrid.", 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
266
+ throw new Error(['MUI X: You cannot replace rows using `apiRef.current.unstable_replaceRows` on the DataGrid.', 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
267
267
  }
268
268
  if (newRows.length === 0) {
269
269
  return;
@@ -32,6 +32,15 @@ export var gridRenderContextSelector = createSelector(gridVirtualizationSelector
32
32
  return state.renderContext;
33
33
  });
34
34
 
35
+ /**
36
+ * Get the offsets
37
+ * @category Virtualization
38
+ * @ignore - do not document.
39
+ */
40
+ export var gridOffsetsSelector = createSelector(gridVirtualizationSelector, function (state) {
41
+ return state.offsets;
42
+ });
43
+
35
44
  /**
36
45
  * Get the render context, with only columns filled in.
37
46
  * This is cached, so it can be used to only re-render when the column interval changes.
@@ -22,7 +22,7 @@ import { selectedIdsLookupSelector } from '../rowSelection/gridRowSelectionSelec
22
22
  import { gridRowsMetaSelector } from '../rows/gridRowsMetaSelector';
23
23
  import { getFirstNonSpannedColumnToRender } from '../columns/gridColumnsUtils';
24
24
  import { getMinimalContentHeight } from '../rows/gridRowsUtils';
25
- import { gridRenderContextSelector, gridVirtualizationEnabledSelector, gridVirtualizationColumnEnabledSelector } from './gridVirtualizationSelectors';
25
+ import { gridOffsetsSelector, gridRenderContextSelector, gridVirtualizationEnabledSelector, gridVirtualizationColumnEnabledSelector } from './gridVirtualizationSelectors';
26
26
  import { EMPTY_RENDER_CONTEXT } from './useGridVirtualization';
27
27
  import { jsx as _jsx } from "react/jsx-runtime";
28
28
  export var EMPTY_DETAIL_PANELS = Object.freeze(new Map());
@@ -42,7 +42,6 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
42
42
  panels = _React$useState2[0],
43
43
  setPanels = _React$useState2[1];
44
44
  var theme = useTheme();
45
- var columnPositions = useGridSelector(apiRef, gridColumnPositionsSelector);
46
45
  var cellFocus = useGridSelector(apiRef, gridFocusCellSelector);
47
46
  var cellTabIndex = useGridSelector(apiRef, gridTabIndexCellSelector);
48
47
  var rowsMeta = useGridSelector(apiRef, gridRowsMetaSelector);
@@ -51,7 +50,6 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
51
50
  var gridRootRef = apiRef.current.rootElementRef;
52
51
  var mainRef = apiRef.current.mainElementRef;
53
52
  var scrollerRef = apiRef.current.virtualScrollerRef;
54
- var renderZoneRef = React.useRef(null);
55
53
  var scrollbarVerticalRef = React.useRef(null);
56
54
  var scrollbarHorizontalRef = React.useRef(null);
57
55
  var contentHeight = dimensions.contentSize.height;
@@ -61,6 +59,7 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
61
59
  });
62
60
  var previousContext = React.useRef(EMPTY_RENDER_CONTEXT);
63
61
  var previousRowContext = React.useRef(EMPTY_RENDER_CONTEXT);
62
+ var offsets = useGridSelector(apiRef, gridOffsetsSelector);
64
63
  var renderContext = useGridSelector(apiRef, gridRenderContextSelector);
65
64
  var scrollPosition = React.useRef({
66
65
  top: 0,
@@ -84,23 +83,17 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
84
83
  }
85
84
  return -1;
86
85
  }, [cellFocus, visibleColumns]);
87
- React.useEffect(function () {
88
- var _gridRootRef$current, _gridRootRef$current2;
89
- var direction = theme.direction === 'ltr' ? 1 : -1;
90
- var top = gridRowsMetaSelector(apiRef.current.state).positions[renderContext.firstRowIndex];
91
- var left = direction * columnPositions[renderContext.firstColumnIndex] - columnPositions[pinnedColumns.left.length];
92
- (_gridRootRef$current = gridRootRef.current) == null || _gridRootRef$current.style.setProperty('--DataGrid-offsetTop', "".concat(top, "px"));
93
- (_gridRootRef$current2 = gridRootRef.current) == null || _gridRootRef$current2.style.setProperty('--DataGrid-offsetLeft', "".concat(left, "px"));
94
- }, [apiRef, gridRootRef, theme.direction, columnPositions, pinnedColumns.left.length, renderContext]);
95
86
  var updateRenderContext = React.useCallback(function (nextRenderContext, rawRenderContext) {
96
87
  if (areRenderContextsEqual(nextRenderContext, apiRef.current.state.virtualization.renderContext)) {
97
88
  return;
98
89
  }
99
90
  var didRowsIntervalChange = nextRenderContext.firstRowIndex !== previousRowContext.current.firstRowIndex || nextRenderContext.lastRowIndex !== previousRowContext.current.lastRowIndex;
91
+ var nextOffsets = computeOffsets(apiRef, nextRenderContext, theme.direction, pinnedColumns.left.length);
100
92
  apiRef.current.setState(function (state) {
101
93
  return _extends({}, state, {
102
94
  virtualization: _extends({}, state.virtualization, {
103
- renderContext: nextRenderContext
95
+ renderContext: nextRenderContext,
96
+ offsets: nextOffsets
104
97
  })
105
98
  });
106
99
  });
@@ -114,7 +107,7 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
114
107
  }
115
108
  previousContext.current = rawRenderContext;
116
109
  prevTotalWidth.current = dimensions.columnsTotalWidth;
117
- }, [apiRef, dimensions.isReady, dimensions.columnsTotalWidth]);
110
+ }, [apiRef, pinnedColumns.left.length, theme.direction, dimensions.isReady, dimensions.columnsTotalWidth]);
118
111
  var triggerUpdateRenderContext = function triggerUpdateRenderContext() {
119
112
  var inputs = inputsSelector(apiRef, rootProps, enabled, enabledForColumns);
120
113
  var _computeRenderContext = computeRenderContext(inputs, scrollPosition),
@@ -262,6 +255,14 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
262
255
  var _renderedRows$i = renderedRows[i],
263
256
  id = _renderedRows$i.id,
264
257
  model = _renderedRows$i.model;
258
+ var rowIndexInPage = ((currentPage == null || (_currentPage$range = currentPage.range) == null ? void 0 : _currentPage$range.firstRowIndex) || 0) + firstRowToRender + i;
259
+ var index = rowIndexOffset + rowIndexInPage;
260
+ if (isRowWithFocusedCellNotInRange && (cellFocus == null ? void 0 : cellFocus.id) === id) {
261
+ index = indexOfRowWithFocusedCell;
262
+ isRowWithFocusedCellRendered = true;
263
+ } else if (isRowWithFocusedCellRendered) {
264
+ index -= 1;
265
+ }
265
266
  var isRowNotVisible = isRowWithFocusedCellNotInRange && cellFocus.id === id;
266
267
  var baseRowHeight = !apiRef.current.rowHasAutoHeight(id) ? apiRef.current.unstable_getRowHeight(id) : 'auto';
267
268
  var isSelected = void 0;
@@ -272,7 +273,7 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
272
273
  }
273
274
  var isFirstVisible = false;
274
275
  if (params.position === undefined) {
275
- isFirstVisible = i === 0;
276
+ isFirstVisible = rowIndexInPage === 0;
276
277
  }
277
278
  var isLastVisible = false;
278
279
  if (isLastSection) {
@@ -294,13 +295,6 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
294
295
  var cellParams = apiRef.current.getCellParams(id, cellTabIndex.field);
295
296
  tabbableCell = cellParams.cellMode === 'view' ? cellTabIndex.field : null;
296
297
  }
297
- var index = rowIndexOffset + ((currentPage == null || (_currentPage$range = currentPage.range) == null ? void 0 : _currentPage$range.firstRowIndex) || 0) + firstRowToRender + i;
298
- if (isRowWithFocusedCellNotInRange && (cellFocus == null ? void 0 : cellFocus.id) === id) {
299
- index = indexOfRowWithFocusedCell;
300
- isRowWithFocusedCellRendered = true;
301
- } else if (isRowWithFocusedCellRendered) {
302
- index -= 1;
303
- }
304
298
  rows.push( /*#__PURE__*/_jsx(rootProps.slots.row, _extends({
305
299
  row: model,
306
300
  rowId: id,
@@ -315,6 +309,7 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
315
309
  firstColumnToRender: firstColumnToRender,
316
310
  lastColumnToRender: lastColumnToRender,
317
311
  selected: isSelected,
312
+ offsets: offsets,
318
313
  dimensions: dimensions,
319
314
  isFirstVisible: isFirstVisible,
320
315
  isLastVisible: isLastVisible,
@@ -364,10 +359,6 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
364
359
  // TODO a scroll reset should not be necessary
365
360
  scrollerRef.current.scrollLeft = 0;
366
361
  scrollerRef.current.scrollTop = 0;
367
- } else {
368
- var _gridRootRef$current3, _gridRootRef$current4;
369
- (_gridRootRef$current3 = gridRootRef.current) == null || _gridRootRef$current3.style.setProperty('--DataGrid-offsetTop', '0px');
370
- (_gridRootRef$current4 = gridRootRef.current) == null || _gridRootRef$current4.style.setProperty('--DataGrid-offsetLeft', '0px');
371
362
  }
372
363
  }, [enabled, gridRootRef, scrollerRef]);
373
364
  useRunOnce(outerSize.width !== 0, function () {
@@ -414,7 +405,6 @@ export var useGridVirtualScroller = function useGridVirtualScroller() {
414
405
  },
415
406
  getRenderZoneProps: function getRenderZoneProps() {
416
407
  return {
417
- ref: renderZoneRef,
418
408
  role: 'rowgroup'
419
409
  };
420
410
  },
@@ -641,4 +631,16 @@ export function areRenderContextsEqual(context1, context2) {
641
631
  return true;
642
632
  }
643
633
  return context1.firstRowIndex === context2.firstRowIndex && context1.lastRowIndex === context2.lastRowIndex && context1.firstColumnIndex === context2.firstColumnIndex && context1.lastColumnIndex === context2.lastColumnIndex;
634
+ }
635
+ function computeOffsets(apiRef, renderContext, direction, pinnedLeftLength) {
636
+ var _rowPositions$renderC, _columnPositions$rend, _columnPositions$pinn;
637
+ var factor = direction === 'ltr' ? 1 : -1;
638
+ var rowPositions = gridRowsMetaSelector(apiRef.current.state).positions;
639
+ var columnPositions = gridColumnPositionsSelector(apiRef);
640
+ var top = (_rowPositions$renderC = rowPositions[renderContext.firstRowIndex]) != null ? _rowPositions$renderC : 0;
641
+ var left = factor * ((_columnPositions$rend = columnPositions[renderContext.firstColumnIndex]) != null ? _columnPositions$rend : 0) - ((_columnPositions$pinn = columnPositions[pinnedLeftLength]) != null ? _columnPositions$pinn : 0);
642
+ return {
643
+ top: top,
644
+ left: left
645
+ };
644
646
  }
@@ -1,6 +1,10 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
3
  import { useGridApiMethod } from '../../utils/useGridApiMethod';
4
+ export var EMPTY_OFFSETS = {
5
+ top: 0,
6
+ left: 0
7
+ };
4
8
  export var EMPTY_RENDER_CONTEXT = {
5
9
  firstRowIndex: 0,
6
10
  lastRowIndex: 0,
@@ -11,7 +15,8 @@ export var virtualizationStateInitializer = function virtualizationStateInitiali
11
15
  var virtualization = {
12
16
  enabled: !props.disableVirtualization,
13
17
  enabledForColumns: true,
14
- renderContext: EMPTY_RENDER_CONTEXT
18
+ renderContext: EMPTY_RENDER_CONTEXT,
19
+ offsets: EMPTY_OFFSETS
15
20
  };
16
21
  return _extends({}, state, {
17
22
  virtualization: virtualization
package/legacy/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid v7.0.0-beta.1
2
+ * @mui/x-data-grid v7.0.0-beta.3
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -1,5 +1,5 @@
1
1
  export var propValidatorsDataGrid = [function (props) {
2
- return props.autoPageSize && props.autoHeight && ['MUI X: `<DataGrid autoPageSize={true} autoHeight={true} />` are not valid props.', 'You can not use both the `autoPageSize` and `autoHeight` props at the same time because `autoHeight` scales the height of the Data Grid according to the `pageSize`.', '', 'Please remove one of these two props.'].join('\n') || undefined;
2
+ return props.autoPageSize && props.autoHeight && ['MUI X: `<DataGrid autoPageSize={true} autoHeight={true} />` are not valid props.', 'You cannot use both the `autoPageSize` and `autoHeight` props at the same time because `autoHeight` scales the height of the Data Grid according to the `pageSize`.', '', 'Please remove one of these two props.'].join('\n') || undefined;
3
3
  }];
4
4
  var warnedOnceMap = new Set();
5
5
  var warnOnce = function warnOnce(message) {
@@ -412,8 +412,8 @@ var joySlots = _extends({}, joyIconSlots, {
412
412
  baseSelect: Select,
413
413
  baseSelectOption: Option,
414
414
  baseInputLabel: InputLabel,
415
- baseFormControl: JoyFormControl,
416
- baseTooltip: JoyTooltip,
415
+ baseFormControl: JoyFormControl /* FIXME: typing error */,
416
+ baseTooltip: JoyTooltip /* FIXME: typing error */,
417
417
  pagination: Pagination,
418
418
  loadingOverlay: LoadingOverlay
419
419
  });
@@ -11,8 +11,8 @@ var daDKGrid = {
11
11
  toolbarDensityStandard: 'Standard',
12
12
  toolbarDensityComfortable: 'Luftig',
13
13
  // Columns selector toolbar button text
14
- toolbarColumns: 'Kolonne',
15
- toolbarColumnsLabel: 'Vælg kolonne',
14
+ toolbarColumns: 'Kolonner',
15
+ toolbarColumnsLabel: 'Vælg kolonner',
16
16
  // Filters toolbar button text
17
17
  toolbarFilters: 'Filtre',
18
18
  toolbarFiltersLabel: 'Vis filtre',
@@ -41,12 +41,12 @@ var daDKGrid = {
41
41
  filterPanelRemoveAll: 'Fjern alle',
42
42
  filterPanelDeleteIconLabel: 'Slet',
43
43
  filterPanelLogicOperator: 'Logisk operator',
44
- filterPanelOperator: 'Operatorer',
44
+ filterPanelOperator: 'Operator',
45
45
  filterPanelOperatorAnd: 'Og',
46
46
  filterPanelOperatorOr: 'Eller',
47
- filterPanelColumns: 'Kolonne',
47
+ filterPanelColumns: 'Kolonner',
48
48
  filterPanelInputLabel: 'Værdi',
49
- filterPanelInputPlaceholder: 'Filter værdi',
49
+ filterPanelInputPlaceholder: 'Filterværdi',
50
50
  // Filter operators text
51
51
  filterOperatorContains: 'indeholder',
52
52
  filterOperatorEquals: 'lig med',
@@ -93,10 +93,10 @@ var daDKGrid = {
93
93
  filterValueFalse: 'negativ',
94
94
  // Column menu text
95
95
  columnMenuLabel: 'Menu',
96
- columnMenuShowColumns: 'Vis Kolonner',
96
+ columnMenuShowColumns: 'Vis kolonner',
97
97
  columnMenuManageColumns: 'Administrer kolonner',
98
- columnMenuFilter: 'Filtre',
99
- columnMenuHideColumn: 'Skjul',
98
+ columnMenuFilter: 'Filtrer',
99
+ columnMenuHideColumn: 'Skjul kolonne',
100
100
  columnMenuUnsort: 'Fjern sortering',
101
101
  columnMenuSortAsc: 'Sorter stigende',
102
102
  columnMenuSortDesc: 'Sorter faldende',
@@ -132,16 +132,16 @@ var daDKGrid = {
132
132
  pinToRight: 'Fastgør til højre',
133
133
  unpin: 'Frigiv',
134
134
  // Tree Data
135
- treeDataGroupingHeaderName: 'Gruppering',
135
+ treeDataGroupingHeaderName: 'Gruppe',
136
136
  treeDataExpand: 'Vis underelementer',
137
137
  treeDataCollapse: 'Skjul underelementer',
138
138
  // Grouping columns
139
- groupingColumnHeaderName: 'Gruppér',
139
+ groupingColumnHeaderName: 'Gruppe',
140
140
  groupColumn: function groupColumn(name) {
141
141
  return "Grupp\xE9r efter ".concat(name);
142
142
  },
143
143
  unGroupColumn: function unGroupColumn(name) {
144
- return "Fjern grupp\xE9ring efter ".concat(name);
144
+ return "Fjern gruppering efter ".concat(name);
145
145
  },
146
146
  // Master/detail
147
147
  detailPanelToggle: 'Udvid/kollaps detaljepanel',
@@ -150,7 +150,7 @@ var daDKGrid = {
150
150
  // Row reordering text
151
151
  rowReorderingHeaderName: 'Omarrangering af rækker',
152
152
  // Aggregation
153
- aggregationMenuItemHeader: 'Aggregation',
153
+ aggregationMenuItemHeader: 'Aggregering',
154
154
  aggregationFunctionLabelSum: 'sum',
155
155
  aggregationFunctionLabelAvg: 'gns',
156
156
  aggregationFunctionLabelMin: 'min',