@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
|
@@ -13,7 +13,6 @@ import { useRunOnce } from "../../utils/useRunOnce.js";
|
|
|
13
13
|
import { gridVisibleColumnDefinitionsSelector, gridVisiblePinnedColumnDefinitionsSelector, gridColumnPositionsSelector, gridHasColSpanSelector } from "../columns/gridColumnsSelector.js";
|
|
14
14
|
import { gridDimensionsSelector } from "../dimensions/gridDimensionsSelectors.js";
|
|
15
15
|
import { gridPinnedRowsSelector } from "../rows/gridRowsSelector.js";
|
|
16
|
-
import { gridFocusCellSelector, gridTabIndexCellSelector } from "../focus/gridFocusStateSelector.js";
|
|
17
16
|
import { useGridVisibleRows, getVisibleRows } from "../../utils/useGridVisibleRows.js";
|
|
18
17
|
import { useGridApiEventHandler } from "../../utils/index.js";
|
|
19
18
|
import * as platform from "../../../utils/platform.js";
|
|
@@ -26,6 +25,7 @@ import { EMPTY_RENDER_CONTEXT } from "./useGridVirtualization.js";
|
|
|
26
25
|
import { gridRowSpanningHiddenCellsOriginMapSelector } from "../rows/gridRowSpanningSelectors.js";
|
|
27
26
|
import { gridListColumnSelector } from "../listView/gridListViewSelectors.js";
|
|
28
27
|
import { minimalContentHeight } from "../rows/gridRowsUtils.js";
|
|
28
|
+
import { gridFocusedVirtualCellSelector } from "./gridFocusedVirtualCellSelector.js";
|
|
29
29
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
30
30
|
const MINIMUM_COLUMN_WIDTH = 50;
|
|
31
31
|
var ScrollDirection = /*#__PURE__*/function (ScrollDirection) {
|
|
@@ -73,12 +73,9 @@ export const useGridVirtualScroller = () => {
|
|
|
73
73
|
const hasBottomPinnedRows = pinnedRows.bottom.length > 0;
|
|
74
74
|
const [panels, setPanels] = React.useState(EMPTY_DETAIL_PANELS);
|
|
75
75
|
const isRtl = useRtl();
|
|
76
|
-
const cellFocus = useGridSelector(apiRef, gridFocusCellSelector);
|
|
77
|
-
const cellTabIndex = useGridSelector(apiRef, gridTabIndexCellSelector);
|
|
78
76
|
const rowsMeta = useGridSelector(apiRef, gridRowsMetaSelector);
|
|
79
77
|
const selectedRowsLookup = useGridSelector(apiRef, selectedIdsLookupSelector);
|
|
80
78
|
const currentPage = useGridVisibleRows(apiRef, rootProps);
|
|
81
|
-
const gridRootRef = apiRef.current.rootElementRef;
|
|
82
79
|
const mainRef = apiRef.current.mainElementRef;
|
|
83
80
|
const scrollerRef = apiRef.current.virtualScrollerRef;
|
|
84
81
|
const scrollbarVerticalRef = apiRef.current.virtualScrollbarVerticalRef;
|
|
@@ -86,6 +83,7 @@ export const useGridVirtualScroller = () => {
|
|
|
86
83
|
const contentHeight = dimensions.contentSize.height;
|
|
87
84
|
const columnsTotalWidth = dimensions.columnsTotalWidth;
|
|
88
85
|
const hasColSpan = useGridSelector(apiRef, gridHasColSpanSelector);
|
|
86
|
+
const isRenderContextReady = React.useRef(false);
|
|
89
87
|
const previousSize = React.useRef(null);
|
|
90
88
|
const mainRefCallback = React.useCallback(node => {
|
|
91
89
|
mainRef.current = node;
|
|
@@ -138,17 +136,15 @@ export const useGridVirtualScroller = () => {
|
|
|
138
136
|
* work that's not necessary. Thus we store the context at the start of the scroll in `frozenContext`, and the rows
|
|
139
137
|
* that are part of this old context will keep their same render context as to avoid re-rendering.
|
|
140
138
|
*/
|
|
141
|
-
const scrollPosition = React.useRef(EMPTY_SCROLL_POSITION);
|
|
139
|
+
const scrollPosition = React.useRef(rootProps.initialState?.scroll ?? EMPTY_SCROLL_POSITION);
|
|
140
|
+
const ignoreNextScrollEvent = React.useRef(false);
|
|
142
141
|
const previousContextScrollPosition = React.useRef(EMPTY_SCROLL_POSITION);
|
|
143
142
|
const previousRowContext = React.useRef(EMPTY_RENDER_CONTEXT);
|
|
144
143
|
const renderContext = useGridSelector(apiRef, gridRenderContextSelector);
|
|
144
|
+
const focusedVirtualCell = useGridSelector(apiRef, gridFocusedVirtualCellSelector);
|
|
145
145
|
const scrollTimeout = useTimeout();
|
|
146
146
|
const frozenContext = React.useRef(undefined);
|
|
147
147
|
const scrollCache = useLazyRef(() => createScrollCache(isRtl, rootProps.rowBufferPx, rootProps.columnBufferPx, dimensions.rowHeight * 15, MINIMUM_COLUMN_WIDTH * 6)).current;
|
|
148
|
-
const focusedCell = {
|
|
149
|
-
rowIndex: React.useMemo(() => cellFocus ? currentPage.rows.findIndex(row => row.id === cellFocus.id) : -1, [cellFocus, currentPage.rows]),
|
|
150
|
-
columnIndex: React.useMemo(() => cellFocus ? visibleColumns.findIndex(column => column.field === cellFocus.field) : -1, [cellFocus, visibleColumns])
|
|
151
|
-
};
|
|
152
148
|
const updateRenderContext = React.useCallback(nextRenderContext => {
|
|
153
149
|
if (areRenderContextsEqual(nextRenderContext, apiRef.current.state.virtualization.renderContext)) {
|
|
154
150
|
return;
|
|
@@ -232,6 +228,10 @@ export const useGridVirtualScroller = () => {
|
|
|
232
228
|
updateRenderContext(nextRenderContext);
|
|
233
229
|
};
|
|
234
230
|
const handleScroll = useEventCallback(event => {
|
|
231
|
+
if (ignoreNextScrollEvent.current) {
|
|
232
|
+
ignoreNextScrollEvent.current = false;
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
235
235
|
const {
|
|
236
236
|
scrollTop,
|
|
237
237
|
scrollLeft
|
|
@@ -290,14 +290,14 @@ export const useGridVirtualScroller = () => {
|
|
|
290
290
|
const lastRowToRender = Math.min(baseRenderContext.lastRowIndex, rowModels.length);
|
|
291
291
|
const rowIndexes = params.rows ? range(0, params.rows.length) : range(firstRowToRender, lastRowToRender);
|
|
292
292
|
let virtualRowIndex = -1;
|
|
293
|
-
if (!isPinnedSection &&
|
|
294
|
-
if (
|
|
295
|
-
|
|
296
|
-
|
|
293
|
+
if (!isPinnedSection && focusedVirtualCell) {
|
|
294
|
+
if (focusedVirtualCell.rowIndex < firstRowToRender) {
|
|
295
|
+
rowIndexes.unshift(focusedVirtualCell.rowIndex);
|
|
296
|
+
virtualRowIndex = focusedVirtualCell.rowIndex;
|
|
297
297
|
}
|
|
298
|
-
if (
|
|
299
|
-
|
|
300
|
-
|
|
298
|
+
if (focusedVirtualCell.rowIndex > lastRowToRender) {
|
|
299
|
+
rowIndexes.push(focusedVirtualCell.rowIndex);
|
|
300
|
+
virtualRowIndex = focusedVirtualCell.rowIndex;
|
|
301
301
|
}
|
|
302
302
|
}
|
|
303
303
|
const rows = [];
|
|
@@ -337,7 +337,6 @@ export const useGridVirtualScroller = () => {
|
|
|
337
337
|
});
|
|
338
338
|
}
|
|
339
339
|
}
|
|
340
|
-
const hasFocus = cellFocus?.id === id;
|
|
341
340
|
const baseRowHeight = !apiRef.current.rowHasAutoHeight(id) ? apiRef.current.unstable_getRowHeight(id) : 'auto';
|
|
342
341
|
let isSelected;
|
|
343
342
|
if (selectedRowsLookup[id] == null) {
|
|
@@ -362,19 +361,16 @@ export const useGridVirtualScroller = () => {
|
|
|
362
361
|
isLastVisible = isLastVisibleInSection;
|
|
363
362
|
}
|
|
364
363
|
}
|
|
365
|
-
const isVirtualRow = rowIndexInPage === virtualRowIndex;
|
|
366
|
-
const isNotVisible = isVirtualRow;
|
|
367
|
-
let tabbableCell = null;
|
|
368
|
-
if (cellTabIndex !== null && cellTabIndex.id === id) {
|
|
369
|
-
const cellParams = apiRef.current.getCellParams(id, cellTabIndex.field);
|
|
370
|
-
tabbableCell = cellParams.cellMode === 'view' ? cellTabIndex.field : null;
|
|
371
|
-
}
|
|
372
364
|
let currentRenderContext = baseRenderContext;
|
|
373
365
|
if (!isPinnedSection && frozenContext.current && rowIndexInPage >= frozenContext.current.firstRowIndex && rowIndexInPage < frozenContext.current.lastRowIndex) {
|
|
374
366
|
currentRenderContext = frozenContext.current;
|
|
375
367
|
}
|
|
368
|
+
const isVirtualFocusRow = rowIndexInPage === virtualRowIndex;
|
|
369
|
+
const isVirtualFocusColumn = focusedVirtualCell?.rowIndex === rowIndex;
|
|
376
370
|
const offsetLeft = computeOffsetLeft(columnPositions, currentRenderContext, pinnedColumns.left.length);
|
|
377
371
|
const showBottomBorder = isLastVisibleInSection && params.position === 'top';
|
|
372
|
+
const firstColumnIndex = currentRenderContext.firstColumnIndex;
|
|
373
|
+
const lastColumnIndex = currentRenderContext.lastColumnIndex;
|
|
378
374
|
rows.push(/*#__PURE__*/_jsx(rootProps.slots.row, _extends({
|
|
379
375
|
row: model,
|
|
380
376
|
rowId: id,
|
|
@@ -382,19 +378,21 @@ export const useGridVirtualScroller = () => {
|
|
|
382
378
|
selected: isSelected,
|
|
383
379
|
offsetTop: params.rows ? undefined : rowsMeta.positions[rowIndexInPage],
|
|
384
380
|
offsetLeft: offsetLeft,
|
|
385
|
-
|
|
381
|
+
columnsTotalWidth: dimensions.columnsTotalWidth,
|
|
386
382
|
rowHeight: baseRowHeight,
|
|
387
|
-
tabbableCell: tabbableCell,
|
|
388
383
|
pinnedColumns: pinnedColumns,
|
|
389
384
|
visibleColumns: visibleColumns,
|
|
390
|
-
|
|
391
|
-
|
|
385
|
+
firstColumnIndex: firstColumnIndex,
|
|
386
|
+
lastColumnIndex: lastColumnIndex,
|
|
387
|
+
focusedColumnIndex: isVirtualFocusColumn ? focusedVirtualCell.columnIndex : undefined,
|
|
392
388
|
isFirstVisible: isFirstVisible,
|
|
393
389
|
isLastVisible: isLastVisible,
|
|
394
|
-
isNotVisible:
|
|
395
|
-
showBottomBorder: showBottomBorder
|
|
390
|
+
isNotVisible: isVirtualFocusRow,
|
|
391
|
+
showBottomBorder: showBottomBorder,
|
|
392
|
+
scrollbarWidth: dimensions.hasScrollY ? dimensions.scrollbarSize : 0,
|
|
393
|
+
gridHasFiller: dimensions.columnsTotalWidth < dimensions.viewportOuterSize.width
|
|
396
394
|
}, rowProps), id));
|
|
397
|
-
if (
|
|
395
|
+
if (isVirtualFocusRow) {
|
|
398
396
|
return;
|
|
399
397
|
}
|
|
400
398
|
const panel = panels.get(id);
|
|
@@ -425,18 +423,21 @@ export const useGridVirtualScroller = () => {
|
|
|
425
423
|
}
|
|
426
424
|
return size;
|
|
427
425
|
}, [columnsTotalWidth, contentHeight, needsHorizontalScrollbar]);
|
|
428
|
-
React.
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
useEnhancedEffect(() => {
|
|
432
|
-
// TODO a scroll reset should not be necessary
|
|
433
|
-
if (enabledForColumns) {
|
|
434
|
-
scrollerRef.current.scrollLeft = 0;
|
|
426
|
+
const onContentSizeApplied = React.useCallback(node => {
|
|
427
|
+
if (!node) {
|
|
428
|
+
return;
|
|
435
429
|
}
|
|
436
|
-
|
|
437
|
-
|
|
430
|
+
apiRef.current.publishEvent('virtualScrollerContentSizeChange', {
|
|
431
|
+
columnsTotalWidth,
|
|
432
|
+
contentHeight
|
|
433
|
+
});
|
|
434
|
+
}, [apiRef, columnsTotalWidth, contentHeight]);
|
|
435
|
+
useEnhancedEffect(() => {
|
|
436
|
+
if (!isRenderContextReady.current) {
|
|
437
|
+
return;
|
|
438
438
|
}
|
|
439
|
-
|
|
439
|
+
apiRef.current.updateRenderContext?.();
|
|
440
|
+
}, [apiRef, enabledForColumns, enabledForRows]);
|
|
440
441
|
useEnhancedEffect(() => {
|
|
441
442
|
if (listView) {
|
|
442
443
|
scrollerRef.current.scrollLeft = 0;
|
|
@@ -451,6 +452,53 @@ export const useGridVirtualScroller = () => {
|
|
|
451
452
|
left: scrollPosition.current.left,
|
|
452
453
|
renderContext: initialRenderContext
|
|
453
454
|
});
|
|
455
|
+
isRenderContextReady.current = true;
|
|
456
|
+
if (rootProps.initialState?.scroll && scrollerRef.current) {
|
|
457
|
+
const scroller = scrollerRef.current;
|
|
458
|
+
const {
|
|
459
|
+
top,
|
|
460
|
+
left
|
|
461
|
+
} = rootProps.initialState.scroll;
|
|
462
|
+
|
|
463
|
+
// 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.
|
|
464
|
+
const isScrollRestored = {
|
|
465
|
+
top: !(top > 0),
|
|
466
|
+
left: !(left > 0)
|
|
467
|
+
};
|
|
468
|
+
if (!isScrollRestored.left && columnsTotalWidth) {
|
|
469
|
+
scroller.scrollLeft = left;
|
|
470
|
+
ignoreNextScrollEvent.current = true;
|
|
471
|
+
isScrollRestored.left = true;
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
// For the sake of completeness, but I'm not sure if contentHeight is ever available at this point. Maybe when virtualisation is disabled?
|
|
475
|
+
if (!isScrollRestored.top && contentHeight) {
|
|
476
|
+
scroller.scrollTop = top;
|
|
477
|
+
ignoreNextScrollEvent.current = true;
|
|
478
|
+
isScrollRestored.top = true;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
// 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
|
|
482
|
+
if (!isScrollRestored.top || !isScrollRestored.left) {
|
|
483
|
+
const unsubscribeContentSizeChange = apiRef.current.subscribeEvent('virtualScrollerContentSizeChange', params => {
|
|
484
|
+
if (!isScrollRestored.left && params.columnsTotalWidth) {
|
|
485
|
+
scroller.scrollLeft = left;
|
|
486
|
+
ignoreNextScrollEvent.current = true;
|
|
487
|
+
isScrollRestored.left = true;
|
|
488
|
+
}
|
|
489
|
+
if (!isScrollRestored.top && params.contentHeight) {
|
|
490
|
+
scroller.scrollTop = top;
|
|
491
|
+
ignoreNextScrollEvent.current = true;
|
|
492
|
+
isScrollRestored.top = true;
|
|
493
|
+
}
|
|
494
|
+
if (isScrollRestored.left && isScrollRestored.top) {
|
|
495
|
+
unsubscribeContentSizeChange();
|
|
496
|
+
}
|
|
497
|
+
});
|
|
498
|
+
return unsubscribeContentSizeChange;
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
return undefined;
|
|
454
502
|
});
|
|
455
503
|
apiRef.current.register('private', {
|
|
456
504
|
updateRenderContext: forceUpdateRenderContext
|
|
@@ -478,7 +526,8 @@ export const useGridVirtualScroller = () => {
|
|
|
478
526
|
}),
|
|
479
527
|
getContentProps: () => ({
|
|
480
528
|
style: contentSize,
|
|
481
|
-
role: 'presentation'
|
|
529
|
+
role: 'presentation',
|
|
530
|
+
ref: onContentSizeApplied
|
|
482
531
|
}),
|
|
483
532
|
getRenderZoneProps: () => ({
|
|
484
533
|
role: 'rowgroup'
|
|
@@ -1,27 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import { gridExpandedSortedRowEntriesSelector } from "../features/filter/gridFilterSelector.js";
|
|
1
|
+
import { gridVisibleRowsSelector } from "../features/pagination/gridPaginationSelector.js";
|
|
2
|
+
import { useGridSelector } from "./index.js";
|
|
4
3
|
export const getVisibleRows = (apiRef, props) => {
|
|
5
|
-
|
|
6
|
-
let range;
|
|
7
|
-
if (props.pagination && props.paginationMode === 'client') {
|
|
8
|
-
range = gridPaginationRowRangeSelector(apiRef);
|
|
9
|
-
rows = gridPaginatedVisibleSortedGridRowEntriesSelector(apiRef);
|
|
10
|
-
} else {
|
|
11
|
-
rows = gridExpandedSortedRowEntriesSelector(apiRef);
|
|
12
|
-
if (rows.length === 0) {
|
|
13
|
-
range = null;
|
|
14
|
-
} else {
|
|
15
|
-
range = {
|
|
16
|
-
firstRowIndex: 0,
|
|
17
|
-
lastRowIndex: rows.length - 1
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
return {
|
|
22
|
-
rows,
|
|
23
|
-
range
|
|
24
|
-
};
|
|
4
|
+
return gridVisibleRowsSelector(apiRef);
|
|
25
5
|
};
|
|
26
6
|
|
|
27
7
|
/**
|
|
@@ -31,10 +11,7 @@ export const getVisibleRows = (apiRef, props) => {
|
|
|
31
11
|
* - If the row tree has several layers, it contains up to `state.pageSize` top level rows and all their descendants.
|
|
32
12
|
* - If the row tree is flat, it only contains up to `state.pageSize` rows.
|
|
33
13
|
*/
|
|
14
|
+
|
|
34
15
|
export const useGridVisibleRows = (apiRef, props) => {
|
|
35
|
-
|
|
36
|
-
return React.useMemo(() => ({
|
|
37
|
-
rows: response.rows,
|
|
38
|
-
range: response.range
|
|
39
|
-
}), [response.rows, response.range]);
|
|
16
|
+
return useGridSelector(apiRef, gridVisibleRowsSelector);
|
|
40
17
|
};
|
package/modern/index.js
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
1
|
export const GRID_TREE_DATA_GROUPING_FIELD = '__tree_data_group__';
|
|
2
2
|
export const GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD = '__row_group_by_columns_group__';
|
|
3
|
-
export const GRID_DETAIL_PANEL_TOGGLE_FIELD = '__detail_panel_toggle__';
|
|
3
|
+
export const GRID_DETAIL_PANEL_TOGGLE_FIELD = '__detail_panel_toggle__';
|
|
4
|
+
export let PinnedColumnPosition = /*#__PURE__*/function (PinnedColumnPosition) {
|
|
5
|
+
PinnedColumnPosition[PinnedColumnPosition["NONE"] = 0] = "NONE";
|
|
6
|
+
PinnedColumnPosition[PinnedColumnPosition["LEFT"] = 1] = "LEFT";
|
|
7
|
+
PinnedColumnPosition[PinnedColumnPosition["RIGHT"] = 2] = "RIGHT";
|
|
8
|
+
PinnedColumnPosition[PinnedColumnPosition["VIRTUAL"] = 3] = "VIRTUAL";
|
|
9
|
+
return PinnedColumnPosition;
|
|
10
|
+
}({});
|
|
@@ -62,6 +62,7 @@ export { useGridVisibleRows, getVisibleRows } from "../hooks/utils/useGridVisibl
|
|
|
62
62
|
export { useGridInitializeState } from "../hooks/utils/useGridInitializeState.js";
|
|
63
63
|
export { getColumnsToExport, defaultGetRowsToExport } from "../hooks/features/export/utils.js";
|
|
64
64
|
export * from "../utils/createControllablePromise.js";
|
|
65
|
+
export * from "../utils/rtlFlipSide.js";
|
|
65
66
|
export { createSelector, createSelectorMemoized } from "../utils/createSelector.js";
|
|
66
67
|
export { gridRowGroupsToFetchSelector } from "../hooks/features/rows/gridRowsSelector.js";
|
|
67
68
|
export { findParentElementFromClassName, getActiveElement, isEventTargetInPortal } from "../utils/domUtils.js";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { rtlFlipSide } from "../../utils/rtlFlipSide.js";
|
|
2
|
+
export function attachPinnedStyle(style, isRtl, pinnedPosition, pinnedOffset) {
|
|
3
|
+
const side = rtlFlipSide(pinnedPosition, isRtl);
|
|
4
|
+
if (!side || pinnedOffset === undefined) {
|
|
5
|
+
return style;
|
|
6
|
+
}
|
|
7
|
+
style[side] = pinnedOffset;
|
|
8
|
+
return style;
|
|
9
|
+
}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export const getPinnedCellOffset = (pinnedPosition, computedWidth, columnIndex, columnPositions,
|
|
3
|
-
const scrollbarWidth = dimensions.hasScrollY ? dimensions.scrollbarSize : 0;
|
|
1
|
+
import { PinnedColumnPosition } from "../constants.js";
|
|
2
|
+
export const getPinnedCellOffset = (pinnedPosition, computedWidth, columnIndex, columnPositions, columnsTotalWidth, scrollbarWidth) => {
|
|
4
3
|
let pinnedOffset;
|
|
5
4
|
switch (pinnedPosition) {
|
|
6
|
-
case
|
|
5
|
+
case PinnedColumnPosition.LEFT:
|
|
7
6
|
pinnedOffset = columnPositions[columnIndex];
|
|
8
7
|
break;
|
|
9
|
-
case
|
|
10
|
-
pinnedOffset =
|
|
8
|
+
case PinnedColumnPosition.RIGHT:
|
|
9
|
+
pinnedOffset = columnsTotalWidth - columnPositions[columnIndex] - computedWidth + scrollbarWidth;
|
|
11
10
|
break;
|
|
12
11
|
default:
|
|
13
|
-
pinnedOffset =
|
|
12
|
+
pinnedOffset = undefined;
|
|
14
13
|
break;
|
|
15
14
|
}
|
|
16
15
|
return pinnedOffset;
|
package/modern/locales/arSD.js
CHANGED
|
@@ -102,6 +102,8 @@ const arSDGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'أكبر من او يساوي',
|
|
103
103
|
'headerFilterOperator<': 'اصغر من',
|
|
104
104
|
'headerFilterOperator<=': 'اصغر من او يساوي',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'أي',
|
|
107
109
|
filterValueTrue: 'صائب',
|
package/modern/locales/beBY.js
CHANGED
|
@@ -117,6 +117,7 @@ const beBYGrid = {
|
|
|
117
117
|
// 'headerFilterOperator>=': 'Greater than or equal to',
|
|
118
118
|
// 'headerFilterOperator<': 'Less than',
|
|
119
119
|
// 'headerFilterOperator<=': 'Less than or equal to',
|
|
120
|
+
// headerFilterClear: 'Clear filter',
|
|
120
121
|
|
|
121
122
|
// Filter values text
|
|
122
123
|
filterValueAny: 'усякі',
|
package/modern/locales/bgBG.js
CHANGED
|
@@ -102,6 +102,8 @@ const bgBGGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'По-голямо или равно на',
|
|
103
103
|
'headerFilterOperator<': 'По-малко от',
|
|
104
104
|
'headerFilterOperator<=': 'По-малко или равно на',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'всякакви',
|
|
107
109
|
filterValueTrue: 'вярно',
|
package/modern/locales/csCZ.js
CHANGED
|
@@ -110,6 +110,8 @@ const csCZGrid = {
|
|
|
110
110
|
'headerFilterOperator>=': 'Větší než nebo rovno',
|
|
111
111
|
'headerFilterOperator<': 'Menší než',
|
|
112
112
|
'headerFilterOperator<=': 'Menší než nebo rovno',
|
|
113
|
+
// headerFilterClear: 'Clear filter',
|
|
114
|
+
|
|
113
115
|
// Filter values text
|
|
114
116
|
filterValueAny: 'jakýkoliv',
|
|
115
117
|
filterValueTrue: 'ano',
|
package/modern/locales/daDK.js
CHANGED
|
@@ -102,6 +102,8 @@ const daDKGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Større end eller lig med',
|
|
103
103
|
'headerFilterOperator<': 'Mindre end',
|
|
104
104
|
'headerFilterOperator<=': 'Mindre end eller lig med',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'hvilken som helst',
|
|
107
109
|
filterValueTrue: 'positiv',
|
package/modern/locales/deDE.js
CHANGED
|
@@ -100,6 +100,8 @@ const deDEGrid = {
|
|
|
100
100
|
'headerFilterOperator>=': 'Größer als oder gleich',
|
|
101
101
|
'headerFilterOperator<': 'Kleiner als',
|
|
102
102
|
'headerFilterOperator<=': 'Kleiner als oder gleich',
|
|
103
|
+
// headerFilterClear: 'Clear filter',
|
|
104
|
+
|
|
103
105
|
// Filter values text
|
|
104
106
|
filterValueAny: 'Beliebig',
|
|
105
107
|
filterValueTrue: 'Ja',
|
package/modern/locales/elGR.js
CHANGED
|
@@ -102,6 +102,8 @@ const elGRGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Μεγαλύτερο ή ίσο με',
|
|
103
103
|
'headerFilterOperator<': 'Μικρότερο από',
|
|
104
104
|
'headerFilterOperator<=': 'Μικρότερο ή ίσο με',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'οποιοδήποτε',
|
|
107
109
|
filterValueTrue: 'αληθές',
|
package/modern/locales/esES.js
CHANGED
|
@@ -100,6 +100,8 @@ const esESGrid = {
|
|
|
100
100
|
'headerFilterOperator>=': 'Es mayor o igual que',
|
|
101
101
|
'headerFilterOperator<': 'Es menor que',
|
|
102
102
|
'headerFilterOperator<=': 'Es menor o igual que',
|
|
103
|
+
// headerFilterClear: 'Clear filter',
|
|
104
|
+
|
|
103
105
|
// Filter values text
|
|
104
106
|
filterValueAny: 'cualquiera',
|
|
105
107
|
filterValueTrue: 'verdadero',
|
package/modern/locales/faIR.js
CHANGED
|
@@ -102,6 +102,8 @@ const faIRGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'بزرگتر یا مساوی',
|
|
103
103
|
'headerFilterOperator<': 'کوچکتر',
|
|
104
104
|
'headerFilterOperator<=': 'کوچکتر یا مساوی',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'هرچیزی',
|
|
107
109
|
filterValueTrue: 'صحیح',
|
package/modern/locales/fiFI.js
CHANGED
|
@@ -102,6 +102,8 @@ const fiFIGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Enemmän tai yhtä paljon kuin',
|
|
103
103
|
'headerFilterOperator<': 'Vähemmän kuin',
|
|
104
104
|
'headerFilterOperator<=': 'Vähemmän tai yhtä paljon kuin',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'mikä tahansa',
|
|
107
109
|
filterValueTrue: 'tosi',
|
package/modern/locales/frFR.js
CHANGED
|
@@ -102,6 +102,8 @@ const frFRGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Est supérieur ou égal à',
|
|
103
103
|
'headerFilterOperator<': 'Est inférieur à',
|
|
104
104
|
'headerFilterOperator<=': 'Est inférieur ou égal à',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'tous',
|
|
107
109
|
filterValueTrue: 'vrai',
|
package/modern/locales/heIL.js
CHANGED
|
@@ -100,6 +100,8 @@ const heILGrid = {
|
|
|
100
100
|
'headerFilterOperator>=': 'גדול שווה ל-',
|
|
101
101
|
'headerFilterOperator<': 'קטן מ-',
|
|
102
102
|
'headerFilterOperator<=': 'קטן שווה ל-',
|
|
103
|
+
// headerFilterClear: 'Clear filter',
|
|
104
|
+
|
|
103
105
|
// Filter values text
|
|
104
106
|
filterValueAny: 'כל ערך',
|
|
105
107
|
filterValueTrue: 'כן',
|
package/modern/locales/hrHR.js
CHANGED
|
@@ -110,6 +110,8 @@ const hrHRGrid = {
|
|
|
110
110
|
'headerFilterOperator>=': 'Veće ili jednako',
|
|
111
111
|
'headerFilterOperator<': 'Manje od',
|
|
112
112
|
'headerFilterOperator<=': 'Manje od ili jednako',
|
|
113
|
+
// headerFilterClear: 'Clear filter',
|
|
114
|
+
|
|
113
115
|
// Filter values text
|
|
114
116
|
filterValueAny: 'bilo koji',
|
|
115
117
|
filterValueTrue: 'tačno',
|
package/modern/locales/huHU.js
CHANGED
|
@@ -102,6 +102,8 @@ const huHUGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Nagyobb vagy egyenlő',
|
|
103
103
|
'headerFilterOperator<': 'Kisebb mint',
|
|
104
104
|
'headerFilterOperator<=': 'Kisebb vagy egyenlő',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'bármilyen',
|
|
107
109
|
filterValueTrue: 'igaz',
|
package/modern/locales/isIS.js
CHANGED
|
@@ -102,6 +102,8 @@ const isISGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Stærra en eða jafnt og',
|
|
103
103
|
'headerFilterOperator<': 'Minna en',
|
|
104
104
|
'headerFilterOperator<=': 'Minna en eða jafnt og',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'hvað sem er',
|
|
107
109
|
filterValueTrue: 'satt',
|
package/modern/locales/itIT.js
CHANGED
|
@@ -102,6 +102,8 @@ const itITGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Maggiore o uguale a',
|
|
103
103
|
'headerFilterOperator<': 'Minore di',
|
|
104
104
|
'headerFilterOperator<=': 'Minore o uguale a',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'qualunque',
|
|
107
109
|
filterValueTrue: 'vero',
|
package/modern/locales/jaJP.js
CHANGED
package/modern/locales/koKR.js
CHANGED
|
@@ -100,6 +100,8 @@ const koKRGrid = {
|
|
|
100
100
|
'headerFilterOperator>=': '같거나 더 큰',
|
|
101
101
|
'headerFilterOperator<': '더 작은',
|
|
102
102
|
'headerFilterOperator<=': '같거나 더 작은',
|
|
103
|
+
// headerFilterClear: 'Clear filter',
|
|
104
|
+
|
|
103
105
|
// Filter values text
|
|
104
106
|
filterValueAny: '아무값',
|
|
105
107
|
filterValueTrue: '참',
|
package/modern/locales/nbNO.js
CHANGED
|
@@ -102,6 +102,8 @@ const nbNOGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Større enn eller lik',
|
|
103
103
|
'headerFilterOperator<': 'Mindre enn',
|
|
104
104
|
'headerFilterOperator<=': 'Mindre enn eller lik',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'noen',
|
|
107
109
|
filterValueTrue: 'sant',
|
package/modern/locales/nlNL.js
CHANGED
|
@@ -101,6 +101,8 @@ const nlNLGrid = {
|
|
|
101
101
|
'headerFilterOperator>=': 'Is groter dan of gelijk aan',
|
|
102
102
|
'headerFilterOperator<': 'Is kleiner dan',
|
|
103
103
|
'headerFilterOperator<=': 'Is kleiner dan of gelijk aan',
|
|
104
|
+
// headerFilterClear: 'Clear filter',
|
|
105
|
+
|
|
104
106
|
// Filter values text
|
|
105
107
|
filterValueAny: 'alles',
|
|
106
108
|
filterValueTrue: 'waar',
|
package/modern/locales/nnNO.js
CHANGED
|
@@ -102,6 +102,8 @@ const nnNOGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Større enn eller lik',
|
|
103
103
|
'headerFilterOperator<': 'Mindre enn',
|
|
104
104
|
'headerFilterOperator<=': 'Mindre enn eller lik',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'nokon',
|
|
107
109
|
filterValueTrue: 'sant',
|
package/modern/locales/plPL.js
CHANGED
|
@@ -103,6 +103,8 @@ const plPLGrid = {
|
|
|
103
103
|
'headerFilterOperator>=': 'Większy lub równy',
|
|
104
104
|
'headerFilterOperator<': 'Mniejszy niż',
|
|
105
105
|
'headerFilterOperator<=': 'Mniejszy lub równe',
|
|
106
|
+
// headerFilterClear: 'Clear filter',
|
|
107
|
+
|
|
106
108
|
// Filter values text
|
|
107
109
|
filterValueAny: 'dowolny',
|
|
108
110
|
filterValueTrue: 'prawda',
|
package/modern/locales/ptBR.js
CHANGED
|
@@ -100,6 +100,8 @@ const ptBRGrid = {
|
|
|
100
100
|
'headerFilterOperator>=': 'Maior que ou igual a',
|
|
101
101
|
'headerFilterOperator<': 'Menor que',
|
|
102
102
|
'headerFilterOperator<=': 'Menor que ou igual a',
|
|
103
|
+
// headerFilterClear: 'Clear filter',
|
|
104
|
+
|
|
103
105
|
// Filter values text
|
|
104
106
|
filterValueAny: 'qualquer',
|
|
105
107
|
filterValueTrue: 'verdadeiro',
|
package/modern/locales/ptPT.js
CHANGED
|
@@ -100,6 +100,8 @@ const ptPTGrid = {
|
|
|
100
100
|
'headerFilterOperator>=': 'Melhor que ou igual a',
|
|
101
101
|
'headerFilterOperator<': 'Menor que',
|
|
102
102
|
'headerFilterOperator<=': 'Menos que ou igual a',
|
|
103
|
+
// headerFilterClear: 'Clear filter',
|
|
104
|
+
|
|
103
105
|
// Filter values text
|
|
104
106
|
filterValueAny: 'qualquer',
|
|
105
107
|
filterValueTrue: 'verdadeiro',
|
package/modern/locales/roRO.js
CHANGED
|
@@ -100,6 +100,8 @@ const roROGrid = {
|
|
|
100
100
|
'headerFilterOperator>=': 'Mai mare sau egal cu',
|
|
101
101
|
'headerFilterOperator<': 'Mai mic decât',
|
|
102
102
|
'headerFilterOperator<=': 'Mai mic sau egal cu',
|
|
103
|
+
// headerFilterClear: 'Clear filter',
|
|
104
|
+
|
|
103
105
|
// Filter values text
|
|
104
106
|
filterValueAny: 'Aleatoriu',
|
|
105
107
|
filterValueTrue: 'Da',
|
package/modern/locales/ruRU.js
CHANGED
|
@@ -117,6 +117,8 @@ const ruRUGrid = {
|
|
|
117
117
|
'headerFilterOperator>=': 'больше или равно',
|
|
118
118
|
'headerFilterOperator<': 'меньше чем',
|
|
119
119
|
'headerFilterOperator<=': 'меньше или равно',
|
|
120
|
+
// headerFilterClear: 'Clear filter',
|
|
121
|
+
|
|
120
122
|
// Filter values text
|
|
121
123
|
filterValueAny: 'любой',
|
|
122
124
|
filterValueTrue: 'истина',
|
package/modern/locales/skSK.js
CHANGED
|
@@ -110,6 +110,8 @@ const skSKGrid = {
|
|
|
110
110
|
'headerFilterOperator>=': 'Väčší ako alebo rovný',
|
|
111
111
|
'headerFilterOperator<': 'Menší ako',
|
|
112
112
|
'headerFilterOperator<=': 'Menší ako alebo rovný',
|
|
113
|
+
// headerFilterClear: 'Clear filter',
|
|
114
|
+
|
|
113
115
|
// Filter values text
|
|
114
116
|
filterValueAny: 'akýkoľvek',
|
|
115
117
|
filterValueTrue: 'áno',
|
package/modern/locales/svSE.js
CHANGED
|
@@ -102,6 +102,8 @@ const svSEGrid = {
|
|
|
102
102
|
'headerFilterOperator>=': 'Större eller lika med',
|
|
103
103
|
'headerFilterOperator<': 'Mindre än',
|
|
104
104
|
'headerFilterOperator<=': 'Mindre eller lika med',
|
|
105
|
+
// headerFilterClear: 'Clear filter',
|
|
106
|
+
|
|
105
107
|
// Filter values text
|
|
106
108
|
filterValueAny: 'något',
|
|
107
109
|
filterValueTrue: 'sant',
|