@mui/x-data-grid 8.0.0-alpha.7 → 8.0.0-alpha.8
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 +115 -0
- package/DataGrid/DataGrid.js +4 -5
- package/DataGrid/useDataGridComponent.js +1 -1
- package/components/GridHeaders.js +2 -2
- package/components/GridRow.d.ts +5 -9
- package/components/GridRow.js +26 -78
- package/components/GridSkeletonLoadingOverlay.js +18 -18
- package/components/cell/GridCell.d.ts +9 -16
- package/components/cell/GridCell.js +17 -35
- package/components/columnHeaders/GridColumnGroupHeader.d.ts +5 -5
- package/components/columnHeaders/GridColumnGroupHeader.js +7 -10
- package/components/columnHeaders/GridColumnHeaderItem.d.ts +5 -5
- package/components/columnHeaders/GridColumnHeaderItem.js +13 -12
- package/components/columnSelection/GridCellCheckboxRenderer.js +2 -2
- package/components/containers/GridRoot.d.ts +2 -2
- package/components/containers/GridRoot.js +14 -6
- package/components/containers/GridRootStyles.js +7 -0
- package/components/panel/filterPanel/GridFilterInputBoolean.d.ts +1 -0
- package/components/panel/filterPanel/GridFilterInputBoolean.js +12 -16
- package/components/panel/filterPanel/GridFilterInputDate.d.ts +2 -1
- package/components/panel/filterPanel/GridFilterInputDate.js +32 -29
- package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +1 -1
- package/components/panel/filterPanel/GridFilterInputMultipleValue.js +1 -1
- package/components/panel/filterPanel/GridFilterInputSingleSelect.d.ts +1 -0
- package/components/panel/filterPanel/GridFilterInputSingleSelect.js +13 -17
- package/components/panel/filterPanel/GridFilterInputValue.d.ts +1 -0
- package/components/panel/filterPanel/GridFilterInputValue.js +34 -28
- package/components/panel/filterPanel/GridFilterInputValueProps.d.ts +1 -1
- package/components/virtualization/GridVirtualScrollbar.js +11 -12
- package/components/virtualization/GridVirtualScroller.js +4 -4
- package/constants/gridClasses.d.ts +12 -0
- package/constants/gridClasses.js +1 -1
- package/constants/localeTextConstants.js +1 -0
- package/context/GridContextProvider.d.ts +1 -1
- package/hooks/features/clipboard/useGridClipboard.d.ts +1 -1
- package/hooks/features/columnGrouping/useGridColumnGrouping.d.ts +1 -1
- package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +5 -7
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +34 -76
- package/hooks/features/columnMenu/useGridColumnMenu.d.ts +1 -1
- package/hooks/features/columns/gridColumnsUtils.d.ts +3 -3
- package/hooks/features/columns/useGridColumnSpanning.d.ts +1 -1
- package/hooks/features/columns/useGridColumns.d.ts +1 -1
- package/hooks/features/density/useGridDensity.d.ts +1 -1
- package/hooks/features/dimensions/useGridDimensions.d.ts +1 -1
- package/hooks/features/editing/useGridCellEditing.d.ts +1 -1
- package/hooks/features/editing/useGridCellEditing.js +1 -1
- package/hooks/features/editing/useGridEditing.d.ts +1 -1
- package/hooks/features/editing/useGridRowEditing.d.ts +1 -1
- package/hooks/features/editing/useGridRowEditing.js +1 -1
- package/hooks/features/events/useGridEvents.d.ts +1 -1
- package/hooks/features/export/serializers/csvSerializer.d.ts +1 -1
- package/hooks/features/export/useGridCsvExport.d.ts +1 -1
- package/hooks/features/export/useGridPrintExport.d.ts +1 -1
- package/hooks/features/export/utils.d.ts +1 -1
- package/hooks/features/filter/gridFilterSelector.d.ts +1 -1
- package/hooks/features/filter/gridFilterSelector.js +6 -1
- package/hooks/features/filter/gridFilterUtils.d.ts +6 -6
- package/hooks/features/filter/gridFilterUtils.js +3 -3
- package/hooks/features/filter/useGridFilter.d.ts +1 -1
- package/hooks/features/focus/useGridFocus.d.ts +1 -1
- package/hooks/features/headerFiltering/useGridHeaderFiltering.d.ts +1 -1
- package/hooks/features/keyboardNavigation/utils.d.ts +2 -2
- package/hooks/features/listView/useGridListView.d.ts +1 -1
- package/hooks/features/pagination/gridPaginationInterfaces.d.ts +3 -0
- package/hooks/features/pagination/gridPaginationSelector.d.ts +21 -2
- package/hooks/features/pagination/gridPaginationSelector.js +39 -1
- package/hooks/features/pagination/useGridPagination.d.ts +2 -2
- package/hooks/features/pagination/useGridPagination.js +5 -3
- package/hooks/features/pagination/useGridPaginationMeta.d.ts +1 -1
- package/hooks/features/pagination/useGridPaginationModel.d.ts +1 -1
- package/hooks/features/pagination/useGridPaginationModel.js +23 -1
- package/hooks/features/pagination/useGridRowCount.d.ts +1 -1
- package/hooks/features/preferencesPanel/useGridPreferencesPanel.d.ts +1 -1
- package/hooks/features/rowSelection/useGridRowSelection.d.ts +1 -1
- package/hooks/features/rowSelection/utils.d.ts +2 -2
- package/hooks/features/rows/gridRowSpanningUtils.d.ts +1 -1
- package/hooks/features/rows/gridRowsSelector.js +1 -1
- package/hooks/features/rows/gridRowsUtils.d.ts +3 -3
- package/hooks/features/rows/useGridParamsApi.d.ts +1 -1
- package/hooks/features/rows/useGridRowSpanning.d.ts +1 -1
- package/hooks/features/rows/useGridRows.d.ts +1 -1
- package/hooks/features/rows/useGridRows.js +2 -2
- package/hooks/features/rows/useGridRowsMeta.d.ts +1 -1
- package/hooks/features/scroll/useGridScroll.d.ts +1 -1
- package/hooks/features/sorting/gridSortingUtils.d.ts +2 -2
- package/hooks/features/sorting/gridSortingUtils.js +2 -2
- package/hooks/features/sorting/useGridSorting.d.ts +1 -1
- package/hooks/features/statePersistence/useGridStatePersistence.d.ts +1 -1
- package/hooks/features/virtualization/gridFocusedVirtualCellSelector.d.ts +6 -0
- package/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +42 -0
- package/hooks/features/virtualization/useGridVirtualScroller.d.ts +2 -1
- package/hooks/features/virtualization/useGridVirtualScroller.js +91 -42
- package/hooks/features/virtualization/useGridVirtualization.d.ts +1 -1
- package/hooks/utils/useGridApiContext.d.ts +1 -1
- package/hooks/utils/useGridApiEventHandler.d.ts +3 -3
- package/hooks/utils/useGridNativeEventListener.d.ts +1 -1
- package/hooks/utils/useGridPrivateApiContext.d.ts +1 -1
- package/hooks/utils/useGridSelector.d.ts +1 -1
- package/hooks/utils/useGridVisibleRows.d.ts +7 -5
- package/hooks/utils/useGridVisibleRows.js +5 -28
- package/index.js +1 -1
- package/internals/constants.d.ts +6 -0
- package/internals/constants.js +8 -1
- package/internals/index.d.ts +1 -0
- package/internals/index.js +1 -0
- package/internals/utils/attachPinnedStyle.d.ts +2 -0
- package/internals/utils/attachPinnedStyle.js +9 -0
- package/internals/utils/getPinnedCellOffset.d.ts +3 -3
- package/internals/utils/getPinnedCellOffset.js +6 -7
- package/internals/utils/index.d.ts +1 -0
- package/internals/utils/index.js +2 -1
- package/locales/arSD.js +2 -0
- package/locales/beBY.js +1 -0
- package/locales/bgBG.js +2 -0
- package/locales/csCZ.js +2 -0
- package/locales/daDK.js +2 -0
- package/locales/deDE.js +2 -0
- package/locales/elGR.js +2 -0
- package/locales/esES.js +2 -0
- package/locales/faIR.js +2 -0
- package/locales/fiFI.js +2 -0
- package/locales/frFR.js +2 -0
- package/locales/heIL.js +2 -0
- package/locales/hrHR.js +2 -0
- package/locales/huHU.js +2 -0
- package/locales/isIS.js +2 -0
- package/locales/itIT.js +2 -0
- package/locales/jaJP.js +2 -0
- package/locales/koKR.js +2 -0
- package/locales/nbNO.js +2 -0
- package/locales/nlNL.js +2 -0
- package/locales/nnNO.js +2 -0
- package/locales/plPL.js +2 -0
- package/locales/ptBR.js +2 -0
- package/locales/ptPT.js +2 -0
- package/locales/roRO.js +2 -0
- package/locales/ruRU.js +2 -0
- package/locales/skSK.js +2 -0
- package/locales/svSE.js +2 -0
- package/locales/trTR.js +2 -0
- package/locales/ukUA.js +2 -0
- package/locales/urPK.js +2 -0
- package/locales/viVN.js +2 -0
- package/locales/zhCN.js +2 -0
- package/locales/zhHK.js +2 -0
- package/locales/zhTW.js +2 -0
- package/material/index.js +2 -1
- package/models/api/gridLocaleTextApi.d.ts +1 -0
- package/models/colDef/gridColDef.d.ts +8 -8
- package/models/events/gridEventLookup.d.ts +6 -1
- package/models/gridExport.d.ts +1 -1
- package/models/gridFilterOperator.d.ts +1 -1
- package/models/gridIconSlotsComponent.d.ts +5 -0
- package/models/gridStateCommunity.d.ts +4 -0
- package/modern/DataGrid/DataGrid.js +4 -5
- package/modern/DataGrid/useDataGridComponent.js +1 -1
- package/modern/components/GridHeaders.js +2 -2
- package/modern/components/GridRow.js +26 -78
- package/modern/components/GridSkeletonLoadingOverlay.js +18 -18
- package/modern/components/cell/GridCell.js +17 -35
- package/modern/components/columnHeaders/GridColumnGroupHeader.js +7 -10
- package/modern/components/columnHeaders/GridColumnHeaderItem.js +13 -12
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +2 -2
- package/modern/components/containers/GridRoot.js +14 -6
- package/modern/components/containers/GridRootStyles.js +7 -0
- package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +12 -16
- package/modern/components/panel/filterPanel/GridFilterInputDate.js +32 -29
- package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +1 -1
- package/modern/components/panel/filterPanel/GridFilterInputMultipleValue.js +1 -1
- package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +13 -17
- package/modern/components/panel/filterPanel/GridFilterInputValue.js +34 -28
- package/modern/components/virtualization/GridVirtualScrollbar.js +11 -12
- package/modern/components/virtualization/GridVirtualScroller.js +4 -4
- package/modern/constants/gridClasses.js +1 -1
- package/modern/constants/localeTextConstants.js +1 -0
- package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +34 -76
- package/modern/hooks/features/editing/useGridCellEditing.js +1 -1
- package/modern/hooks/features/editing/useGridRowEditing.js +1 -1
- package/modern/hooks/features/filter/gridFilterSelector.js +6 -1
- package/modern/hooks/features/filter/gridFilterUtils.js +3 -3
- package/modern/hooks/features/pagination/gridPaginationSelector.js +39 -1
- package/modern/hooks/features/pagination/useGridPagination.js +5 -3
- package/modern/hooks/features/pagination/useGridPaginationModel.js +23 -1
- package/modern/hooks/features/rows/gridRowsSelector.js +1 -1
- package/modern/hooks/features/rows/useGridRows.js +2 -2
- package/modern/hooks/features/sorting/gridSortingUtils.js +2 -2
- package/modern/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +42 -0
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +91 -42
- package/modern/hooks/utils/useGridVisibleRows.js +5 -28
- package/modern/index.js +1 -1
- package/modern/internals/constants.js +8 -1
- package/modern/internals/index.js +1 -0
- package/modern/internals/utils/attachPinnedStyle.js +9 -0
- package/modern/internals/utils/getPinnedCellOffset.js +6 -7
- package/modern/internals/utils/index.js +2 -1
- package/modern/locales/arSD.js +2 -0
- package/modern/locales/beBY.js +1 -0
- package/modern/locales/bgBG.js +2 -0
- package/modern/locales/csCZ.js +2 -0
- package/modern/locales/daDK.js +2 -0
- package/modern/locales/deDE.js +2 -0
- package/modern/locales/elGR.js +2 -0
- package/modern/locales/esES.js +2 -0
- package/modern/locales/faIR.js +2 -0
- package/modern/locales/fiFI.js +2 -0
- package/modern/locales/frFR.js +2 -0
- package/modern/locales/heIL.js +2 -0
- package/modern/locales/hrHR.js +2 -0
- package/modern/locales/huHU.js +2 -0
- package/modern/locales/isIS.js +2 -0
- package/modern/locales/itIT.js +2 -0
- package/modern/locales/jaJP.js +2 -0
- package/modern/locales/koKR.js +2 -0
- package/modern/locales/nbNO.js +2 -0
- package/modern/locales/nlNL.js +2 -0
- package/modern/locales/nnNO.js +2 -0
- package/modern/locales/plPL.js +2 -0
- package/modern/locales/ptBR.js +2 -0
- package/modern/locales/ptPT.js +2 -0
- package/modern/locales/roRO.js +2 -0
- package/modern/locales/ruRU.js +2 -0
- package/modern/locales/skSK.js +2 -0
- package/modern/locales/svSE.js +2 -0
- package/modern/locales/trTR.js +2 -0
- package/modern/locales/ukUA.js +2 -0
- package/modern/locales/urPK.js +2 -0
- package/modern/locales/viVN.js +2 -0
- package/modern/locales/zhCN.js +2 -0
- package/modern/locales/zhHK.js +2 -0
- package/modern/locales/zhTW.js +2 -0
- package/modern/material/index.js +2 -1
- package/modern/utils/cellBorderUtils.js +5 -5
- package/modern/utils/domUtils.js +7 -2
- package/modern/utils/rtlFlipSide.js +22 -0
- package/node/DataGrid/DataGrid.js +2 -3
- package/node/DataGrid/useDataGridComponent.js +1 -1
- package/node/components/GridHeaders.js +2 -2
- package/node/components/GridRow.js +25 -77
- package/node/components/GridSkeletonLoadingOverlay.js +17 -17
- package/node/components/cell/GridCell.js +18 -36
- package/node/components/columnHeaders/GridColumnGroupHeader.js +7 -10
- package/node/components/columnHeaders/GridColumnHeaderItem.js +13 -12
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
- package/node/components/containers/GridRoot.js +14 -6
- package/node/components/containers/GridRootStyles.js +7 -0
- package/node/components/panel/filterPanel/GridFilterInputBoolean.js +12 -16
- package/node/components/panel/filterPanel/GridFilterInputDate.js +31 -28
- package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +1 -1
- package/node/components/panel/filterPanel/GridFilterInputMultipleValue.js +1 -1
- package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +13 -17
- package/node/components/panel/filterPanel/GridFilterInputValue.js +33 -27
- package/node/components/virtualization/GridVirtualScrollbar.js +11 -12
- package/node/components/virtualization/GridVirtualScroller.js +4 -4
- package/node/constants/gridClasses.js +1 -1
- package/node/constants/localeTextConstants.js +1 -0
- package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +32 -74
- package/node/hooks/features/editing/useGridCellEditing.js +1 -1
- package/node/hooks/features/editing/useGridRowEditing.js +1 -1
- package/node/hooks/features/filter/gridFilterSelector.js +6 -1
- package/node/hooks/features/filter/gridFilterUtils.js +3 -3
- package/node/hooks/features/pagination/gridPaginationSelector.js +41 -3
- package/node/hooks/features/pagination/useGridPagination.js +5 -3
- package/node/hooks/features/pagination/useGridPaginationModel.js +23 -1
- package/node/hooks/features/rows/gridRowsSelector.js +1 -1
- package/node/hooks/features/rows/useGridRows.js +1 -1
- package/node/hooks/features/sorting/gridSortingUtils.js +2 -2
- package/node/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +49 -0
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +91 -42
- package/node/hooks/utils/useGridVisibleRows.js +3 -28
- package/node/index.js +1 -1
- package/node/internals/constants.js +9 -2
- package/node/internals/index.js +12 -0
- package/node/internals/utils/attachPinnedStyle.js +15 -0
- package/node/internals/utils/getPinnedCellOffset.js +6 -7
- package/node/internals/utils/index.js +11 -0
- package/node/locales/arSD.js +2 -0
- package/node/locales/beBY.js +1 -0
- package/node/locales/bgBG.js +2 -0
- package/node/locales/csCZ.js +2 -0
- package/node/locales/daDK.js +2 -0
- package/node/locales/deDE.js +2 -0
- package/node/locales/elGR.js +2 -0
- package/node/locales/esES.js +2 -0
- package/node/locales/faIR.js +2 -0
- package/node/locales/fiFI.js +2 -0
- package/node/locales/frFR.js +2 -0
- package/node/locales/heIL.js +2 -0
- package/node/locales/hrHR.js +2 -0
- package/node/locales/huHU.js +2 -0
- package/node/locales/isIS.js +2 -0
- package/node/locales/itIT.js +2 -0
- package/node/locales/jaJP.js +2 -0
- package/node/locales/koKR.js +2 -0
- package/node/locales/nbNO.js +2 -0
- package/node/locales/nlNL.js +2 -0
- package/node/locales/nnNO.js +2 -0
- package/node/locales/plPL.js +2 -0
- package/node/locales/ptBR.js +2 -0
- package/node/locales/ptPT.js +2 -0
- package/node/locales/roRO.js +2 -0
- package/node/locales/ruRU.js +2 -0
- package/node/locales/skSK.js +2 -0
- package/node/locales/svSE.js +2 -0
- package/node/locales/trTR.js +2 -0
- package/node/locales/ukUA.js +2 -0
- package/node/locales/urPK.js +2 -0
- package/node/locales/viVN.js +2 -0
- package/node/locales/zhCN.js +2 -0
- package/node/locales/zhHK.js +2 -0
- package/node/locales/zhTW.js +2 -0
- package/node/material/index.js +2 -1
- package/node/utils/cellBorderUtils.js +5 -5
- package/node/utils/domUtils.js +7 -2
- package/node/utils/rtlFlipSide.js +29 -0
- package/package.json +2 -2
- package/utils/cellBorderUtils.d.ts +3 -3
- package/utils/cellBorderUtils.js +5 -5
- package/utils/createSelector.d.ts +1 -1
- package/utils/domUtils.js +7 -2
- package/utils/getPublicApiRef.d.ts +1 -1
- package/utils/rtlFlipSide.d.ts +2 -0
- package/utils/rtlFlipSide.js +22 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.gridFocusedVirtualCellSelector = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _reselect = require("reselect");
|
|
10
|
+
var _createSelector = require("../../../utils/createSelector");
|
|
11
|
+
var _gridColumnsSelector = require("../columns/gridColumnsSelector");
|
|
12
|
+
var _gridVirtualizationSelectors = require("./gridVirtualizationSelectors");
|
|
13
|
+
var _focus = require("../focus");
|
|
14
|
+
var _pagination = require("../pagination");
|
|
15
|
+
var _rows = require("../rows");
|
|
16
|
+
const gridIsFocusedCellOutOfContex = (0, _reselect.createSelector)(_focus.gridFocusCellSelector, _gridVirtualizationSelectors.gridRenderContextSelector, _pagination.gridVisibleRowsSelector, _gridColumnsSelector.gridVisibleColumnDefinitionsSelector, _rows.gridRowsLookupSelector, (focusedCell, renderContext, currentPage, visibleColumns, rows) => {
|
|
17
|
+
if (!focusedCell) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
const row = rows[focusedCell.id];
|
|
21
|
+
if (!row) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
const rowIndex = currentPage.rowToIndexMap.get(row);
|
|
25
|
+
const columnIndex = visibleColumns.slice(renderContext.firstColumnIndex, renderContext.lastColumnIndex).findIndex(column => column.field === focusedCell.field);
|
|
26
|
+
const isInRenderContext = rowIndex !== undefined && columnIndex !== -1 && rowIndex >= renderContext.firstRowIndex && rowIndex <= renderContext.lastRowIndex;
|
|
27
|
+
return !isInRenderContext;
|
|
28
|
+
});
|
|
29
|
+
const gridFocusedVirtualCellSelector = exports.gridFocusedVirtualCellSelector = (0, _createSelector.createSelectorMemoized)(gridIsFocusedCellOutOfContex, _gridColumnsSelector.gridVisibleColumnDefinitionsSelector, _pagination.gridVisibleRowsSelector, _rows.gridRowsLookupSelector, _focus.gridFocusCellSelector, (isFocusedCellOutOfRenderContext, visibleColumns, currentPage, rows, focusedCell) => {
|
|
30
|
+
if (!isFocusedCellOutOfRenderContext) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
const row = rows[focusedCell.id];
|
|
34
|
+
if (!row) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
const rowIndex = currentPage.rowToIndexMap.get(row);
|
|
38
|
+
if (rowIndex === undefined) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
const columnIndex = visibleColumns.findIndex(column => column.field === focusedCell.field);
|
|
42
|
+
if (columnIndex === -1) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
return (0, _extends2.default)({}, focusedCell, {
|
|
46
|
+
rowIndex,
|
|
47
|
+
columnIndex
|
|
48
|
+
});
|
|
49
|
+
});
|
|
@@ -24,7 +24,6 @@ var _useRunOnce = require("../../utils/useRunOnce");
|
|
|
24
24
|
var _gridColumnsSelector = require("../columns/gridColumnsSelector");
|
|
25
25
|
var _gridDimensionsSelectors = require("../dimensions/gridDimensionsSelectors");
|
|
26
26
|
var _gridRowsSelector = require("../rows/gridRowsSelector");
|
|
27
|
-
var _gridFocusStateSelector = require("../focus/gridFocusStateSelector");
|
|
28
27
|
var _useGridVisibleRows = require("../../utils/useGridVisibleRows");
|
|
29
28
|
var _utils2 = require("../../utils");
|
|
30
29
|
var platform = _interopRequireWildcard(require("../../../utils/platform"));
|
|
@@ -37,6 +36,7 @@ var _useGridVirtualization = require("./useGridVirtualization");
|
|
|
37
36
|
var _gridRowSpanningSelectors = require("../rows/gridRowSpanningSelectors");
|
|
38
37
|
var _gridListViewSelectors = require("../listView/gridListViewSelectors");
|
|
39
38
|
var _gridRowsUtils = require("../rows/gridRowsUtils");
|
|
39
|
+
var _gridFocusedVirtualCellSelector = require("./gridFocusedVirtualCellSelector");
|
|
40
40
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
41
41
|
const MINIMUM_COLUMN_WIDTH = 50;
|
|
42
42
|
var ScrollDirection = /*#__PURE__*/function (ScrollDirection) {
|
|
@@ -84,12 +84,9 @@ const useGridVirtualScroller = () => {
|
|
|
84
84
|
const hasBottomPinnedRows = pinnedRows.bottom.length > 0;
|
|
85
85
|
const [panels, setPanels] = React.useState(EMPTY_DETAIL_PANELS);
|
|
86
86
|
const isRtl = (0, _RtlProvider.useRtl)();
|
|
87
|
-
const cellFocus = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridFocusCellSelector);
|
|
88
|
-
const cellTabIndex = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridTabIndexCellSelector);
|
|
89
87
|
const rowsMeta = (0, _useGridSelector.useGridSelector)(apiRef, _gridRowsMetaSelector.gridRowsMetaSelector);
|
|
90
88
|
const selectedRowsLookup = (0, _useGridSelector.useGridSelector)(apiRef, _gridRowSelectionSelector.selectedIdsLookupSelector);
|
|
91
89
|
const currentPage = (0, _useGridVisibleRows.useGridVisibleRows)(apiRef, rootProps);
|
|
92
|
-
const gridRootRef = apiRef.current.rootElementRef;
|
|
93
90
|
const mainRef = apiRef.current.mainElementRef;
|
|
94
91
|
const scrollerRef = apiRef.current.virtualScrollerRef;
|
|
95
92
|
const scrollbarVerticalRef = apiRef.current.virtualScrollbarVerticalRef;
|
|
@@ -97,6 +94,7 @@ const useGridVirtualScroller = () => {
|
|
|
97
94
|
const contentHeight = dimensions.contentSize.height;
|
|
98
95
|
const columnsTotalWidth = dimensions.columnsTotalWidth;
|
|
99
96
|
const hasColSpan = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnsSelector.gridHasColSpanSelector);
|
|
97
|
+
const isRenderContextReady = React.useRef(false);
|
|
100
98
|
const previousSize = React.useRef(null);
|
|
101
99
|
const mainRefCallback = React.useCallback(node => {
|
|
102
100
|
mainRef.current = node;
|
|
@@ -149,17 +147,15 @@ const useGridVirtualScroller = () => {
|
|
|
149
147
|
* work that's not necessary. Thus we store the context at the start of the scroll in `frozenContext`, and the rows
|
|
150
148
|
* that are part of this old context will keep their same render context as to avoid re-rendering.
|
|
151
149
|
*/
|
|
152
|
-
const scrollPosition = React.useRef(EMPTY_SCROLL_POSITION);
|
|
150
|
+
const scrollPosition = React.useRef(rootProps.initialState?.scroll ?? EMPTY_SCROLL_POSITION);
|
|
151
|
+
const ignoreNextScrollEvent = React.useRef(false);
|
|
153
152
|
const previousContextScrollPosition = React.useRef(EMPTY_SCROLL_POSITION);
|
|
154
153
|
const previousRowContext = React.useRef(_useGridVirtualization.EMPTY_RENDER_CONTEXT);
|
|
155
154
|
const renderContext = (0, _useGridSelector.useGridSelector)(apiRef, _gridVirtualizationSelectors.gridRenderContextSelector);
|
|
155
|
+
const focusedVirtualCell = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusedVirtualCellSelector.gridFocusedVirtualCellSelector);
|
|
156
156
|
const scrollTimeout = (0, _useTimeout.default)();
|
|
157
157
|
const frozenContext = React.useRef(undefined);
|
|
158
158
|
const scrollCache = (0, _useLazyRef.default)(() => createScrollCache(isRtl, rootProps.rowBufferPx, rootProps.columnBufferPx, dimensions.rowHeight * 15, MINIMUM_COLUMN_WIDTH * 6)).current;
|
|
159
|
-
const focusedCell = {
|
|
160
|
-
rowIndex: React.useMemo(() => cellFocus ? currentPage.rows.findIndex(row => row.id === cellFocus.id) : -1, [cellFocus, currentPage.rows]),
|
|
161
|
-
columnIndex: React.useMemo(() => cellFocus ? visibleColumns.findIndex(column => column.field === cellFocus.field) : -1, [cellFocus, visibleColumns])
|
|
162
|
-
};
|
|
163
159
|
const updateRenderContext = React.useCallback(nextRenderContext => {
|
|
164
160
|
if (areRenderContextsEqual(nextRenderContext, apiRef.current.state.virtualization.renderContext)) {
|
|
165
161
|
return;
|
|
@@ -243,6 +239,10 @@ const useGridVirtualScroller = () => {
|
|
|
243
239
|
updateRenderContext(nextRenderContext);
|
|
244
240
|
};
|
|
245
241
|
const handleScroll = (0, _utils.unstable_useEventCallback)(event => {
|
|
242
|
+
if (ignoreNextScrollEvent.current) {
|
|
243
|
+
ignoreNextScrollEvent.current = false;
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
246
|
const {
|
|
247
247
|
scrollTop,
|
|
248
248
|
scrollLeft
|
|
@@ -301,14 +301,14 @@ const useGridVirtualScroller = () => {
|
|
|
301
301
|
const lastRowToRender = Math.min(baseRenderContext.lastRowIndex, rowModels.length);
|
|
302
302
|
const rowIndexes = params.rows ? (0, _utils3.range)(0, params.rows.length) : (0, _utils3.range)(firstRowToRender, lastRowToRender);
|
|
303
303
|
let virtualRowIndex = -1;
|
|
304
|
-
if (!isPinnedSection &&
|
|
305
|
-
if (
|
|
306
|
-
|
|
307
|
-
|
|
304
|
+
if (!isPinnedSection && focusedVirtualCell) {
|
|
305
|
+
if (focusedVirtualCell.rowIndex < firstRowToRender) {
|
|
306
|
+
rowIndexes.unshift(focusedVirtualCell.rowIndex);
|
|
307
|
+
virtualRowIndex = focusedVirtualCell.rowIndex;
|
|
308
308
|
}
|
|
309
|
-
if (
|
|
310
|
-
|
|
311
|
-
|
|
309
|
+
if (focusedVirtualCell.rowIndex > lastRowToRender) {
|
|
310
|
+
rowIndexes.push(focusedVirtualCell.rowIndex);
|
|
311
|
+
virtualRowIndex = focusedVirtualCell.rowIndex;
|
|
312
312
|
}
|
|
313
313
|
}
|
|
314
314
|
const rows = [];
|
|
@@ -348,7 +348,6 @@ const useGridVirtualScroller = () => {
|
|
|
348
348
|
});
|
|
349
349
|
}
|
|
350
350
|
}
|
|
351
|
-
const hasFocus = cellFocus?.id === id;
|
|
352
351
|
const baseRowHeight = !apiRef.current.rowHasAutoHeight(id) ? apiRef.current.unstable_getRowHeight(id) : 'auto';
|
|
353
352
|
let isSelected;
|
|
354
353
|
if (selectedRowsLookup[id] == null) {
|
|
@@ -373,19 +372,16 @@ const useGridVirtualScroller = () => {
|
|
|
373
372
|
isLastVisible = isLastVisibleInSection;
|
|
374
373
|
}
|
|
375
374
|
}
|
|
376
|
-
const isVirtualRow = rowIndexInPage === virtualRowIndex;
|
|
377
|
-
const isNotVisible = isVirtualRow;
|
|
378
|
-
let tabbableCell = null;
|
|
379
|
-
if (cellTabIndex !== null && cellTabIndex.id === id) {
|
|
380
|
-
const cellParams = apiRef.current.getCellParams(id, cellTabIndex.field);
|
|
381
|
-
tabbableCell = cellParams.cellMode === 'view' ? cellTabIndex.field : null;
|
|
382
|
-
}
|
|
383
375
|
let currentRenderContext = baseRenderContext;
|
|
384
376
|
if (!isPinnedSection && frozenContext.current && rowIndexInPage >= frozenContext.current.firstRowIndex && rowIndexInPage < frozenContext.current.lastRowIndex) {
|
|
385
377
|
currentRenderContext = frozenContext.current;
|
|
386
378
|
}
|
|
379
|
+
const isVirtualFocusRow = rowIndexInPage === virtualRowIndex;
|
|
380
|
+
const isVirtualFocusColumn = focusedVirtualCell?.rowIndex === rowIndex;
|
|
387
381
|
const offsetLeft = computeOffsetLeft(columnPositions, currentRenderContext, pinnedColumns.left.length);
|
|
388
382
|
const showBottomBorder = isLastVisibleInSection && params.position === 'top';
|
|
383
|
+
const firstColumnIndex = currentRenderContext.firstColumnIndex;
|
|
384
|
+
const lastColumnIndex = currentRenderContext.lastColumnIndex;
|
|
389
385
|
rows.push(/*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.row, (0, _extends2.default)({
|
|
390
386
|
row: model,
|
|
391
387
|
rowId: id,
|
|
@@ -393,19 +389,21 @@ const useGridVirtualScroller = () => {
|
|
|
393
389
|
selected: isSelected,
|
|
394
390
|
offsetTop: params.rows ? undefined : rowsMeta.positions[rowIndexInPage],
|
|
395
391
|
offsetLeft: offsetLeft,
|
|
396
|
-
|
|
392
|
+
columnsTotalWidth: dimensions.columnsTotalWidth,
|
|
397
393
|
rowHeight: baseRowHeight,
|
|
398
|
-
tabbableCell: tabbableCell,
|
|
399
394
|
pinnedColumns: pinnedColumns,
|
|
400
395
|
visibleColumns: visibleColumns,
|
|
401
|
-
|
|
402
|
-
|
|
396
|
+
firstColumnIndex: firstColumnIndex,
|
|
397
|
+
lastColumnIndex: lastColumnIndex,
|
|
398
|
+
focusedColumnIndex: isVirtualFocusColumn ? focusedVirtualCell.columnIndex : undefined,
|
|
403
399
|
isFirstVisible: isFirstVisible,
|
|
404
400
|
isLastVisible: isLastVisible,
|
|
405
|
-
isNotVisible:
|
|
406
|
-
showBottomBorder: showBottomBorder
|
|
401
|
+
isNotVisible: isVirtualFocusRow,
|
|
402
|
+
showBottomBorder: showBottomBorder,
|
|
403
|
+
scrollbarWidth: dimensions.hasScrollY ? dimensions.scrollbarSize : 0,
|
|
404
|
+
gridHasFiller: dimensions.columnsTotalWidth < dimensions.viewportOuterSize.width
|
|
407
405
|
}, rowProps), id));
|
|
408
|
-
if (
|
|
406
|
+
if (isVirtualFocusRow) {
|
|
409
407
|
return;
|
|
410
408
|
}
|
|
411
409
|
const panel = panels.get(id);
|
|
@@ -436,18 +434,21 @@ const useGridVirtualScroller = () => {
|
|
|
436
434
|
}
|
|
437
435
|
return size;
|
|
438
436
|
}, [columnsTotalWidth, contentHeight, needsHorizontalScrollbar]);
|
|
439
|
-
React.
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
(0, _utils.unstable_useEnhancedEffect)(() => {
|
|
443
|
-
// TODO a scroll reset should not be necessary
|
|
444
|
-
if (enabledForColumns) {
|
|
445
|
-
scrollerRef.current.scrollLeft = 0;
|
|
437
|
+
const onContentSizeApplied = React.useCallback(node => {
|
|
438
|
+
if (!node) {
|
|
439
|
+
return;
|
|
446
440
|
}
|
|
447
|
-
|
|
448
|
-
|
|
441
|
+
apiRef.current.publishEvent('virtualScrollerContentSizeChange', {
|
|
442
|
+
columnsTotalWidth,
|
|
443
|
+
contentHeight
|
|
444
|
+
});
|
|
445
|
+
}, [apiRef, columnsTotalWidth, contentHeight]);
|
|
446
|
+
(0, _utils.unstable_useEnhancedEffect)(() => {
|
|
447
|
+
if (!isRenderContextReady.current) {
|
|
448
|
+
return;
|
|
449
449
|
}
|
|
450
|
-
|
|
450
|
+
apiRef.current.updateRenderContext?.();
|
|
451
|
+
}, [apiRef, enabledForColumns, enabledForRows]);
|
|
451
452
|
(0, _utils.unstable_useEnhancedEffect)(() => {
|
|
452
453
|
if (listView) {
|
|
453
454
|
scrollerRef.current.scrollLeft = 0;
|
|
@@ -462,6 +463,53 @@ const useGridVirtualScroller = () => {
|
|
|
462
463
|
left: scrollPosition.current.left,
|
|
463
464
|
renderContext: initialRenderContext
|
|
464
465
|
});
|
|
466
|
+
isRenderContextReady.current = true;
|
|
467
|
+
if (rootProps.initialState?.scroll && scrollerRef.current) {
|
|
468
|
+
const scroller = scrollerRef.current;
|
|
469
|
+
const {
|
|
470
|
+
top,
|
|
471
|
+
left
|
|
472
|
+
} = rootProps.initialState.scroll;
|
|
473
|
+
|
|
474
|
+
// On initial mount, if we have columns available, we can restore the horizontal scroll immediately, but we need to skip the resulting scroll event, otherwise we would recalculate the render context at position top=0, left=restoredValue, but the initial render context is already calculated based on the initial value of scrollPosition ref.
|
|
475
|
+
const isScrollRestored = {
|
|
476
|
+
top: !(top > 0),
|
|
477
|
+
left: !(left > 0)
|
|
478
|
+
};
|
|
479
|
+
if (!isScrollRestored.left && columnsTotalWidth) {
|
|
480
|
+
scroller.scrollLeft = left;
|
|
481
|
+
ignoreNextScrollEvent.current = true;
|
|
482
|
+
isScrollRestored.left = true;
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
// For the sake of completeness, but I'm not sure if contentHeight is ever available at this point. Maybe when virtualisation is disabled?
|
|
486
|
+
if (!isScrollRestored.top && contentHeight) {
|
|
487
|
+
scroller.scrollTop = top;
|
|
488
|
+
ignoreNextScrollEvent.current = true;
|
|
489
|
+
isScrollRestored.top = true;
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
// To restore the vertical scroll, we need to wait until the rows are available in the DOM (otherwise there's nowhere to scroll), but before paint to avoid reflows
|
|
493
|
+
if (!isScrollRestored.top || !isScrollRestored.left) {
|
|
494
|
+
const unsubscribeContentSizeChange = apiRef.current.subscribeEvent('virtualScrollerContentSizeChange', params => {
|
|
495
|
+
if (!isScrollRestored.left && params.columnsTotalWidth) {
|
|
496
|
+
scroller.scrollLeft = left;
|
|
497
|
+
ignoreNextScrollEvent.current = true;
|
|
498
|
+
isScrollRestored.left = true;
|
|
499
|
+
}
|
|
500
|
+
if (!isScrollRestored.top && params.contentHeight) {
|
|
501
|
+
scroller.scrollTop = top;
|
|
502
|
+
ignoreNextScrollEvent.current = true;
|
|
503
|
+
isScrollRestored.top = true;
|
|
504
|
+
}
|
|
505
|
+
if (isScrollRestored.left && isScrollRestored.top) {
|
|
506
|
+
unsubscribeContentSizeChange();
|
|
507
|
+
}
|
|
508
|
+
});
|
|
509
|
+
return unsubscribeContentSizeChange;
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
return undefined;
|
|
465
513
|
});
|
|
466
514
|
apiRef.current.register('private', {
|
|
467
515
|
updateRenderContext: forceUpdateRenderContext
|
|
@@ -489,7 +537,8 @@ const useGridVirtualScroller = () => {
|
|
|
489
537
|
}),
|
|
490
538
|
getContentProps: () => ({
|
|
491
539
|
style: contentSize,
|
|
492
|
-
role: 'presentation'
|
|
540
|
+
role: 'presentation',
|
|
541
|
+
ref: onContentSizeApplied
|
|
493
542
|
}),
|
|
494
543
|
getRenderZoneProps: () => ({
|
|
495
544
|
role: 'rowgroup'
|
|
@@ -1,34 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.useGridVisibleRows = exports.getVisibleRows = void 0;
|
|
8
|
-
var React = _interopRequireWildcard(require("react"));
|
|
9
7
|
var _gridPaginationSelector = require("../features/pagination/gridPaginationSelector");
|
|
10
|
-
var
|
|
8
|
+
var _ = require(".");
|
|
11
9
|
const getVisibleRows = (apiRef, props) => {
|
|
12
|
-
|
|
13
|
-
let range;
|
|
14
|
-
if (props.pagination && props.paginationMode === 'client') {
|
|
15
|
-
range = (0, _gridPaginationSelector.gridPaginationRowRangeSelector)(apiRef);
|
|
16
|
-
rows = (0, _gridPaginationSelector.gridPaginatedVisibleSortedGridRowEntriesSelector)(apiRef);
|
|
17
|
-
} else {
|
|
18
|
-
rows = (0, _gridFilterSelector.gridExpandedSortedRowEntriesSelector)(apiRef);
|
|
19
|
-
if (rows.length === 0) {
|
|
20
|
-
range = null;
|
|
21
|
-
} else {
|
|
22
|
-
range = {
|
|
23
|
-
firstRowIndex: 0,
|
|
24
|
-
lastRowIndex: rows.length - 1
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return {
|
|
29
|
-
rows,
|
|
30
|
-
range
|
|
31
|
-
};
|
|
10
|
+
return (0, _gridPaginationSelector.gridVisibleRowsSelector)(apiRef);
|
|
32
11
|
};
|
|
33
12
|
|
|
34
13
|
/**
|
|
@@ -40,10 +19,6 @@ const getVisibleRows = (apiRef, props) => {
|
|
|
40
19
|
*/
|
|
41
20
|
exports.getVisibleRows = getVisibleRows;
|
|
42
21
|
const useGridVisibleRows = (apiRef, props) => {
|
|
43
|
-
|
|
44
|
-
return React.useMemo(() => ({
|
|
45
|
-
rows: response.rows,
|
|
46
|
-
range: response.range
|
|
47
|
-
}), [response.rows, response.range]);
|
|
22
|
+
return (0, _.useGridSelector)(apiRef, _gridPaginationSelector.gridVisibleRowsSelector);
|
|
48
23
|
};
|
|
49
24
|
exports.useGridVisibleRows = useGridVisibleRows;
|
package/node/index.js
CHANGED
|
@@ -3,7 +3,14 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.GRID_TREE_DATA_GROUPING_FIELD = exports.GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD = exports.GRID_DETAIL_PANEL_TOGGLE_FIELD = void 0;
|
|
6
|
+
exports.PinnedColumnPosition = exports.GRID_TREE_DATA_GROUPING_FIELD = exports.GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD = exports.GRID_DETAIL_PANEL_TOGGLE_FIELD = void 0;
|
|
7
7
|
const GRID_TREE_DATA_GROUPING_FIELD = exports.GRID_TREE_DATA_GROUPING_FIELD = '__tree_data_group__';
|
|
8
8
|
const GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD = exports.GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD = '__row_group_by_columns_group__';
|
|
9
|
-
const GRID_DETAIL_PANEL_TOGGLE_FIELD = exports.GRID_DETAIL_PANEL_TOGGLE_FIELD = '__detail_panel_toggle__';
|
|
9
|
+
const GRID_DETAIL_PANEL_TOGGLE_FIELD = exports.GRID_DETAIL_PANEL_TOGGLE_FIELD = '__detail_panel_toggle__';
|
|
10
|
+
let PinnedColumnPosition = exports.PinnedColumnPosition = /*#__PURE__*/function (PinnedColumnPosition) {
|
|
11
|
+
PinnedColumnPosition[PinnedColumnPosition["NONE"] = 0] = "NONE";
|
|
12
|
+
PinnedColumnPosition[PinnedColumnPosition["LEFT"] = 1] = "LEFT";
|
|
13
|
+
PinnedColumnPosition[PinnedColumnPosition["RIGHT"] = 2] = "RIGHT";
|
|
14
|
+
PinnedColumnPosition[PinnedColumnPosition["VIRTUAL"] = 3] = "VIRTUAL";
|
|
15
|
+
return PinnedColumnPosition;
|
|
16
|
+
}({});
|
package/node/internals/index.js
CHANGED
|
@@ -814,6 +814,18 @@ Object.keys(_createControllablePromise).forEach(function (key) {
|
|
|
814
814
|
}
|
|
815
815
|
});
|
|
816
816
|
});
|
|
817
|
+
var _rtlFlipSide = require("../utils/rtlFlipSide");
|
|
818
|
+
Object.keys(_rtlFlipSide).forEach(function (key) {
|
|
819
|
+
if (key === "default" || key === "__esModule") return;
|
|
820
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
821
|
+
if (key in exports && exports[key] === _rtlFlipSide[key]) return;
|
|
822
|
+
Object.defineProperty(exports, key, {
|
|
823
|
+
enumerable: true,
|
|
824
|
+
get: function () {
|
|
825
|
+
return _rtlFlipSide[key];
|
|
826
|
+
}
|
|
827
|
+
});
|
|
828
|
+
});
|
|
817
829
|
var _createSelector = require("../utils/createSelector");
|
|
818
830
|
var _domUtils = require("../utils/domUtils");
|
|
819
831
|
var _keyboardUtils = require("../utils/keyboardUtils");
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.attachPinnedStyle = attachPinnedStyle;
|
|
7
|
+
var _rtlFlipSide = require("../../utils/rtlFlipSide");
|
|
8
|
+
function attachPinnedStyle(style, isRtl, pinnedPosition, pinnedOffset) {
|
|
9
|
+
const side = (0, _rtlFlipSide.rtlFlipSide)(pinnedPosition, isRtl);
|
|
10
|
+
if (!side || pinnedOffset === undefined) {
|
|
11
|
+
return style;
|
|
12
|
+
}
|
|
13
|
+
style[side] = pinnedOffset;
|
|
14
|
+
return style;
|
|
15
|
+
}
|
|
@@ -4,19 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.getPinnedCellOffset = void 0;
|
|
7
|
-
var
|
|
8
|
-
const getPinnedCellOffset = (pinnedPosition, computedWidth, columnIndex, columnPositions,
|
|
9
|
-
const scrollbarWidth = dimensions.hasScrollY ? dimensions.scrollbarSize : 0;
|
|
7
|
+
var _constants = require("../constants");
|
|
8
|
+
const getPinnedCellOffset = (pinnedPosition, computedWidth, columnIndex, columnPositions, columnsTotalWidth, scrollbarWidth) => {
|
|
10
9
|
let pinnedOffset;
|
|
11
10
|
switch (pinnedPosition) {
|
|
12
|
-
case
|
|
11
|
+
case _constants.PinnedColumnPosition.LEFT:
|
|
13
12
|
pinnedOffset = columnPositions[columnIndex];
|
|
14
13
|
break;
|
|
15
|
-
case
|
|
16
|
-
pinnedOffset =
|
|
14
|
+
case _constants.PinnedColumnPosition.RIGHT:
|
|
15
|
+
pinnedOffset = columnsTotalWidth - columnPositions[columnIndex] - computedWidth + scrollbarWidth;
|
|
17
16
|
break;
|
|
18
17
|
default:
|
|
19
|
-
pinnedOffset =
|
|
18
|
+
pinnedOffset = undefined;
|
|
20
19
|
break;
|
|
21
20
|
}
|
|
22
21
|
return pinnedOffset;
|
|
@@ -35,4 +35,15 @@ Object.keys(_gridRowGroupingUtils).forEach(function (key) {
|
|
|
35
35
|
return _gridRowGroupingUtils[key];
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
|
+
});
|
|
39
|
+
var _attachPinnedStyle = require("./attachPinnedStyle");
|
|
40
|
+
Object.keys(_attachPinnedStyle).forEach(function (key) {
|
|
41
|
+
if (key === "default" || key === "__esModule") return;
|
|
42
|
+
if (key in exports && exports[key] === _attachPinnedStyle[key]) return;
|
|
43
|
+
Object.defineProperty(exports, key, {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _attachPinnedStyle[key];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
38
49
|
});
|
package/node/locales/arSD.js
CHANGED
|
@@ -108,6 +108,8 @@ const arSDGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'أكبر من او يساوي',
|
|
109
109
|
'headerFilterOperator<': 'اصغر من',
|
|
110
110
|
'headerFilterOperator<=': 'اصغر من او يساوي',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'أي',
|
|
113
115
|
filterValueTrue: 'صائب',
|
package/node/locales/beBY.js
CHANGED
|
@@ -123,6 +123,7 @@ const beBYGrid = {
|
|
|
123
123
|
// 'headerFilterOperator>=': 'Greater than or equal to',
|
|
124
124
|
// 'headerFilterOperator<': 'Less than',
|
|
125
125
|
// 'headerFilterOperator<=': 'Less than or equal to',
|
|
126
|
+
// headerFilterClear: 'Clear filter',
|
|
126
127
|
|
|
127
128
|
// Filter values text
|
|
128
129
|
filterValueAny: 'усякі',
|
package/node/locales/bgBG.js
CHANGED
|
@@ -108,6 +108,8 @@ const bgBGGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'По-голямо или равно на',
|
|
109
109
|
'headerFilterOperator<': 'По-малко от',
|
|
110
110
|
'headerFilterOperator<=': 'По-малко или равно на',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'всякакви',
|
|
113
115
|
filterValueTrue: 'вярно',
|
package/node/locales/csCZ.js
CHANGED
|
@@ -116,6 +116,8 @@ const csCZGrid = {
|
|
|
116
116
|
'headerFilterOperator>=': 'Větší než nebo rovno',
|
|
117
117
|
'headerFilterOperator<': 'Menší než',
|
|
118
118
|
'headerFilterOperator<=': 'Menší než nebo rovno',
|
|
119
|
+
// headerFilterClear: 'Clear filter',
|
|
120
|
+
|
|
119
121
|
// Filter values text
|
|
120
122
|
filterValueAny: 'jakýkoliv',
|
|
121
123
|
filterValueTrue: 'ano',
|
package/node/locales/daDK.js
CHANGED
|
@@ -108,6 +108,8 @@ const daDKGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Større end eller lig med',
|
|
109
109
|
'headerFilterOperator<': 'Mindre end',
|
|
110
110
|
'headerFilterOperator<=': 'Mindre end eller lig med',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'hvilken som helst',
|
|
113
115
|
filterValueTrue: 'positiv',
|
package/node/locales/deDE.js
CHANGED
|
@@ -106,6 +106,8 @@ const deDEGrid = {
|
|
|
106
106
|
'headerFilterOperator>=': 'Größer als oder gleich',
|
|
107
107
|
'headerFilterOperator<': 'Kleiner als',
|
|
108
108
|
'headerFilterOperator<=': 'Kleiner als oder gleich',
|
|
109
|
+
// headerFilterClear: 'Clear filter',
|
|
110
|
+
|
|
109
111
|
// Filter values text
|
|
110
112
|
filterValueAny: 'Beliebig',
|
|
111
113
|
filterValueTrue: 'Ja',
|
package/node/locales/elGR.js
CHANGED
|
@@ -108,6 +108,8 @@ const elGRGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Μεγαλύτερο ή ίσο με',
|
|
109
109
|
'headerFilterOperator<': 'Μικρότερο από',
|
|
110
110
|
'headerFilterOperator<=': 'Μικρότερο ή ίσο με',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'οποιοδήποτε',
|
|
113
115
|
filterValueTrue: 'αληθές',
|
package/node/locales/esES.js
CHANGED
|
@@ -106,6 +106,8 @@ const esESGrid = {
|
|
|
106
106
|
'headerFilterOperator>=': 'Es mayor o igual que',
|
|
107
107
|
'headerFilterOperator<': 'Es menor que',
|
|
108
108
|
'headerFilterOperator<=': 'Es menor o igual que',
|
|
109
|
+
// headerFilterClear: 'Clear filter',
|
|
110
|
+
|
|
109
111
|
// Filter values text
|
|
110
112
|
filterValueAny: 'cualquiera',
|
|
111
113
|
filterValueTrue: 'verdadero',
|
package/node/locales/faIR.js
CHANGED
|
@@ -108,6 +108,8 @@ const faIRGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'بزرگتر یا مساوی',
|
|
109
109
|
'headerFilterOperator<': 'کوچکتر',
|
|
110
110
|
'headerFilterOperator<=': 'کوچکتر یا مساوی',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'هرچیزی',
|
|
113
115
|
filterValueTrue: 'صحیح',
|
package/node/locales/fiFI.js
CHANGED
|
@@ -108,6 +108,8 @@ const fiFIGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Enemmän tai yhtä paljon kuin',
|
|
109
109
|
'headerFilterOperator<': 'Vähemmän kuin',
|
|
110
110
|
'headerFilterOperator<=': 'Vähemmän tai yhtä paljon kuin',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'mikä tahansa',
|
|
113
115
|
filterValueTrue: 'tosi',
|
package/node/locales/frFR.js
CHANGED
|
@@ -108,6 +108,8 @@ const frFRGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Est supérieur ou égal à',
|
|
109
109
|
'headerFilterOperator<': 'Est inférieur à',
|
|
110
110
|
'headerFilterOperator<=': 'Est inférieur ou égal à',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'tous',
|
|
113
115
|
filterValueTrue: 'vrai',
|
package/node/locales/heIL.js
CHANGED
|
@@ -106,6 +106,8 @@ const heILGrid = {
|
|
|
106
106
|
'headerFilterOperator>=': 'גדול שווה ל-',
|
|
107
107
|
'headerFilterOperator<': 'קטן מ-',
|
|
108
108
|
'headerFilterOperator<=': 'קטן שווה ל-',
|
|
109
|
+
// headerFilterClear: 'Clear filter',
|
|
110
|
+
|
|
109
111
|
// Filter values text
|
|
110
112
|
filterValueAny: 'כל ערך',
|
|
111
113
|
filterValueTrue: 'כן',
|
package/node/locales/hrHR.js
CHANGED
|
@@ -116,6 +116,8 @@ const hrHRGrid = {
|
|
|
116
116
|
'headerFilterOperator>=': 'Veće ili jednako',
|
|
117
117
|
'headerFilterOperator<': 'Manje od',
|
|
118
118
|
'headerFilterOperator<=': 'Manje od ili jednako',
|
|
119
|
+
// headerFilterClear: 'Clear filter',
|
|
120
|
+
|
|
119
121
|
// Filter values text
|
|
120
122
|
filterValueAny: 'bilo koji',
|
|
121
123
|
filterValueTrue: 'tačno',
|
package/node/locales/huHU.js
CHANGED
|
@@ -108,6 +108,8 @@ const huHUGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Nagyobb vagy egyenlő',
|
|
109
109
|
'headerFilterOperator<': 'Kisebb mint',
|
|
110
110
|
'headerFilterOperator<=': 'Kisebb vagy egyenlő',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'bármilyen',
|
|
113
115
|
filterValueTrue: 'igaz',
|
package/node/locales/isIS.js
CHANGED
|
@@ -108,6 +108,8 @@ const isISGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Stærra en eða jafnt og',
|
|
109
109
|
'headerFilterOperator<': 'Minna en',
|
|
110
110
|
'headerFilterOperator<=': 'Minna en eða jafnt og',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'hvað sem er',
|
|
113
115
|
filterValueTrue: 'satt',
|
package/node/locales/itIT.js
CHANGED
|
@@ -108,6 +108,8 @@ const itITGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Maggiore o uguale a',
|
|
109
109
|
'headerFilterOperator<': 'Minore di',
|
|
110
110
|
'headerFilterOperator<=': 'Minore o uguale a',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'qualunque',
|
|
113
115
|
filterValueTrue: 'vero',
|
package/node/locales/jaJP.js
CHANGED
package/node/locales/koKR.js
CHANGED
|
@@ -106,6 +106,8 @@ const koKRGrid = {
|
|
|
106
106
|
'headerFilterOperator>=': '같거나 더 큰',
|
|
107
107
|
'headerFilterOperator<': '더 작은',
|
|
108
108
|
'headerFilterOperator<=': '같거나 더 작은',
|
|
109
|
+
// headerFilterClear: 'Clear filter',
|
|
110
|
+
|
|
109
111
|
// Filter values text
|
|
110
112
|
filterValueAny: '아무값',
|
|
111
113
|
filterValueTrue: '참',
|
package/node/locales/nbNO.js
CHANGED
|
@@ -108,6 +108,8 @@ const nbNOGrid = {
|
|
|
108
108
|
'headerFilterOperator>=': 'Større enn eller lik',
|
|
109
109
|
'headerFilterOperator<': 'Mindre enn',
|
|
110
110
|
'headerFilterOperator<=': 'Mindre enn eller lik',
|
|
111
|
+
// headerFilterClear: 'Clear filter',
|
|
112
|
+
|
|
111
113
|
// Filter values text
|
|
112
114
|
filterValueAny: 'noen',
|
|
113
115
|
filterValueTrue: 'sant',
|