@mui/x-data-grid 6.4.0 → 6.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/DataGrid/useDataGridProps.js +5 -12
  3. package/colDef/gridNumericOperators.js +0 -6
  4. package/components/cell/GridEditInputCell.js +4 -1
  5. package/components/panel/filterPanel/GridFilterInputBoolean.d.ts +15 -2
  6. package/components/panel/filterPanel/GridFilterInputBoolean.js +80 -36
  7. package/components/panel/filterPanel/GridFilterInputDate.d.ts +8 -1
  8. package/components/panel/filterPanel/GridFilterInputDate.js +27 -6
  9. package/components/panel/filterPanel/GridFilterInputSingleSelect.d.ts +8 -1
  10. package/components/panel/filterPanel/GridFilterInputSingleSelect.js +55 -32
  11. package/components/panel/filterPanel/GridFilterInputValue.d.ts +11 -4
  12. package/components/panel/filterPanel/GridFilterInputValue.js +29 -6
  13. package/components/panel/filterPanel/GridFilterPanel.d.ts +2 -1
  14. package/components/panel/filterPanel/GridFilterPanel.js +1 -1
  15. package/components/panel/filterPanel/index.d.ts +3 -1
  16. package/components/panel/filterPanel/index.js +2 -1
  17. package/constants/localeTextConstants.js +26 -0
  18. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +9 -2
  19. package/hooks/features/columnHeaders/useGridColumnHeaders.js +4 -2
  20. package/hooks/features/dimensions/useGridDimensions.js +2 -2
  21. package/hooks/features/editing/useGridEditing.js +0 -3
  22. package/hooks/features/focus/gridFocusState.d.ts +2 -0
  23. package/hooks/features/focus/gridFocusStateSelector.d.ts +2 -0
  24. package/hooks/features/focus/gridFocusStateSelector.js +6 -0
  25. package/hooks/features/focus/useGridFocus.js +55 -9
  26. package/hooks/features/headerFiltering/gridHeaderFilteringSelectors.d.ts +4 -0
  27. package/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +5 -0
  28. package/hooks/features/headerFiltering/index.d.ts +1 -0
  29. package/hooks/features/headerFiltering/index.js +1 -0
  30. package/hooks/features/headerFiltering/useGridHeaderFiltering.d.ts +6 -0
  31. package/hooks/features/headerFiltering/useGridHeaderFiltering.js +91 -0
  32. package/hooks/features/index.d.ts +1 -0
  33. package/hooks/features/index.js +2 -1
  34. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.d.ts +1 -1
  35. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +113 -4
  36. package/hooks/features/rows/useGridRows.js +16 -1
  37. package/index.js +1 -1
  38. package/internals/index.d.ts +6 -1
  39. package/internals/index.js +4 -0
  40. package/internals/utils/index.d.ts +1 -0
  41. package/internals/utils/index.js +2 -1
  42. package/internals/utils/useProps.d.ts +8 -0
  43. package/internals/utils/useProps.js +13 -0
  44. package/legacy/DataGrid/useDataGridProps.js +8 -8
  45. package/legacy/colDef/gridNumericOperators.js +0 -6
  46. package/legacy/components/cell/GridEditInputCell.js +4 -1
  47. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +79 -35
  48. package/legacy/components/panel/filterPanel/GridFilterInputDate.js +26 -5
  49. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +54 -31
  50. package/legacy/components/panel/filterPanel/GridFilterInputValue.js +28 -5
  51. package/legacy/components/panel/filterPanel/GridFilterPanel.js +1 -1
  52. package/legacy/components/panel/filterPanel/index.js +2 -1
  53. package/legacy/constants/localeTextConstants.js +26 -0
  54. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +5 -5
  55. package/legacy/hooks/features/dimensions/useGridDimensions.js +2 -2
  56. package/legacy/hooks/features/editing/useGridEditing.js +0 -3
  57. package/legacy/hooks/features/focus/gridFocusStateSelector.js +10 -0
  58. package/legacy/hooks/features/focus/useGridFocus.js +58 -9
  59. package/legacy/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +11 -0
  60. package/legacy/hooks/features/headerFiltering/index.js +1 -0
  61. package/legacy/hooks/features/headerFiltering/useGridHeaderFiltering.js +93 -0
  62. package/legacy/hooks/features/index.js +2 -1
  63. package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +113 -4
  64. package/legacy/hooks/features/rows/useGridRows.js +16 -1
  65. package/legacy/index.js +1 -1
  66. package/legacy/internals/index.js +4 -0
  67. package/legacy/internals/utils/index.js +2 -1
  68. package/legacy/internals/utils/useProps.js +11 -0
  69. package/legacy/locales/arSD.js +28 -0
  70. package/legacy/locales/beBY.js +28 -0
  71. package/legacy/locales/bgBG.js +28 -0
  72. package/legacy/locales/csCZ.js +36 -8
  73. package/legacy/locales/daDK.js +28 -0
  74. package/legacy/locales/deDE.js +28 -0
  75. package/legacy/locales/elGR.js +27 -0
  76. package/legacy/locales/esES.js +28 -0
  77. package/legacy/locales/faIR.js +28 -0
  78. package/legacy/locales/fiFI.js +28 -0
  79. package/legacy/locales/frFR.js +28 -0
  80. package/legacy/locales/heIL.js +30 -2
  81. package/legacy/locales/huHU.js +28 -0
  82. package/legacy/locales/itIT.js +28 -0
  83. package/legacy/locales/jaJP.js +28 -0
  84. package/legacy/locales/koKR.js +28 -0
  85. package/legacy/locales/nbNO.js +28 -0
  86. package/legacy/locales/nlNL.js +28 -0
  87. package/legacy/locales/plPL.js +28 -0
  88. package/legacy/locales/ptBR.js +28 -0
  89. package/legacy/locales/roRO.js +28 -0
  90. package/legacy/locales/ruRU.js +28 -0
  91. package/legacy/locales/skSK.js +28 -0
  92. package/legacy/locales/svSE.js +28 -0
  93. package/legacy/locales/trTR.js +28 -0
  94. package/legacy/locales/ukUA.js +28 -0
  95. package/legacy/locales/urPK.js +28 -0
  96. package/legacy/locales/viVN.js +27 -0
  97. package/legacy/locales/zhCN.js +28 -0
  98. package/legacy/locales/zhTW.js +28 -0
  99. package/legacy/material/index.js +2 -0
  100. package/legacy/models/api/gridHeaderFilteringApi.js +1 -0
  101. package/legacy/models/gridHeaderFilteringModel.js +1 -0
  102. package/legacy/models/index.js +0 -1
  103. package/locales/arSD.js +28 -0
  104. package/locales/beBY.js +28 -0
  105. package/locales/bgBG.js +28 -0
  106. package/locales/csCZ.js +36 -8
  107. package/locales/daDK.js +28 -0
  108. package/locales/deDE.js +28 -0
  109. package/locales/elGR.js +27 -0
  110. package/locales/esES.js +28 -0
  111. package/locales/faIR.js +28 -0
  112. package/locales/fiFI.js +28 -0
  113. package/locales/frFR.js +28 -0
  114. package/locales/heIL.js +30 -2
  115. package/locales/huHU.js +28 -0
  116. package/locales/itIT.js +28 -0
  117. package/locales/jaJP.js +28 -0
  118. package/locales/koKR.js +28 -0
  119. package/locales/nbNO.js +28 -0
  120. package/locales/nlNL.js +28 -0
  121. package/locales/plPL.js +28 -0
  122. package/locales/ptBR.js +28 -0
  123. package/locales/roRO.js +28 -0
  124. package/locales/ruRU.js +28 -0
  125. package/locales/skSK.js +28 -0
  126. package/locales/svSE.js +28 -0
  127. package/locales/trTR.js +28 -0
  128. package/locales/ukUA.js +28 -0
  129. package/locales/urPK.js +28 -0
  130. package/locales/viVN.js +27 -0
  131. package/locales/zhCN.js +28 -0
  132. package/locales/zhTW.js +28 -0
  133. package/material/index.d.ts +3 -66
  134. package/material/index.js +2 -0
  135. package/models/api/gridApiCommon.d.ts +3 -2
  136. package/models/api/gridCoreApi.d.ts +4 -0
  137. package/models/api/gridFocusApi.d.ts +6 -0
  138. package/models/api/gridHeaderFilteringApi.d.ts +30 -0
  139. package/models/api/gridHeaderFilteringApi.js +1 -0
  140. package/models/api/gridLocaleTextApi.d.ts +25 -0
  141. package/models/events/gridEventLookup.d.ts +27 -1
  142. package/models/gridFilterOperator.d.ts +4 -0
  143. package/models/gridHeaderFilteringModel.d.ts +5 -0
  144. package/models/gridHeaderFilteringModel.js +1 -0
  145. package/models/gridSlotsComponent.d.ts +16 -4
  146. package/models/gridStateCommunity.d.ts +2 -0
  147. package/models/index.d.ts +1 -1
  148. package/models/index.js +0 -1
  149. package/modern/DataGrid/useDataGridProps.js +5 -12
  150. package/modern/colDef/gridNumericOperators.js +0 -6
  151. package/modern/components/cell/GridEditInputCell.js +4 -1
  152. package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +80 -36
  153. package/modern/components/panel/filterPanel/GridFilterInputDate.js +27 -6
  154. package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +55 -32
  155. package/modern/components/panel/filterPanel/GridFilterInputValue.js +29 -6
  156. package/modern/components/panel/filterPanel/GridFilterPanel.js +1 -1
  157. package/modern/components/panel/filterPanel/index.js +2 -1
  158. package/modern/constants/localeTextConstants.js +26 -0
  159. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +4 -2
  160. package/modern/hooks/features/dimensions/useGridDimensions.js +2 -2
  161. package/modern/hooks/features/editing/useGridEditing.js +0 -3
  162. package/modern/hooks/features/focus/gridFocusStateSelector.js +6 -0
  163. package/modern/hooks/features/focus/useGridFocus.js +55 -9
  164. package/modern/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +5 -0
  165. package/modern/hooks/features/headerFiltering/index.js +1 -0
  166. package/modern/hooks/features/headerFiltering/useGridHeaderFiltering.js +90 -0
  167. package/modern/hooks/features/index.js +2 -1
  168. package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +113 -4
  169. package/modern/hooks/features/rows/useGridRows.js +16 -1
  170. package/modern/index.js +1 -1
  171. package/modern/internals/index.js +4 -0
  172. package/modern/internals/utils/index.js +2 -1
  173. package/modern/internals/utils/useProps.js +13 -0
  174. package/modern/locales/arSD.js +28 -0
  175. package/modern/locales/beBY.js +28 -0
  176. package/modern/locales/bgBG.js +28 -0
  177. package/modern/locales/csCZ.js +36 -8
  178. package/modern/locales/daDK.js +28 -0
  179. package/modern/locales/deDE.js +28 -0
  180. package/modern/locales/elGR.js +27 -0
  181. package/modern/locales/esES.js +28 -0
  182. package/modern/locales/faIR.js +28 -0
  183. package/modern/locales/fiFI.js +28 -0
  184. package/modern/locales/frFR.js +28 -0
  185. package/modern/locales/heIL.js +30 -2
  186. package/modern/locales/huHU.js +28 -0
  187. package/modern/locales/itIT.js +28 -0
  188. package/modern/locales/jaJP.js +28 -0
  189. package/modern/locales/koKR.js +28 -0
  190. package/modern/locales/nbNO.js +28 -0
  191. package/modern/locales/nlNL.js +28 -0
  192. package/modern/locales/plPL.js +28 -0
  193. package/modern/locales/ptBR.js +28 -0
  194. package/modern/locales/roRO.js +28 -0
  195. package/modern/locales/ruRU.js +28 -0
  196. package/modern/locales/skSK.js +28 -0
  197. package/modern/locales/svSE.js +28 -0
  198. package/modern/locales/trTR.js +28 -0
  199. package/modern/locales/ukUA.js +28 -0
  200. package/modern/locales/urPK.js +28 -0
  201. package/modern/locales/viVN.js +27 -0
  202. package/modern/locales/zhCN.js +28 -0
  203. package/modern/locales/zhTW.js +28 -0
  204. package/modern/material/index.js +2 -0
  205. package/modern/models/api/gridHeaderFilteringApi.js +1 -0
  206. package/modern/models/gridHeaderFilteringModel.js +1 -0
  207. package/modern/models/index.js +0 -1
  208. package/node/DataGrid/useDataGridProps.js +4 -11
  209. package/node/colDef/gridNumericOperators.js +0 -6
  210. package/node/components/cell/GridEditInputCell.js +4 -1
  211. package/node/components/panel/filterPanel/GridFilterInputBoolean.js +78 -35
  212. package/node/components/panel/filterPanel/GridFilterInputDate.js +27 -6
  213. package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +55 -32
  214. package/node/components/panel/filterPanel/GridFilterInputValue.js +29 -6
  215. package/node/components/panel/filterPanel/GridFilterPanel.js +2 -1
  216. package/node/components/panel/filterPanel/index.js +26 -8
  217. package/node/constants/localeTextConstants.js +26 -0
  218. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +4 -2
  219. package/node/hooks/features/dimensions/useGridDimensions.js +2 -2
  220. package/node/hooks/features/editing/useGridEditing.js +0 -3
  221. package/node/hooks/features/focus/gridFocusStateSelector.js +9 -1
  222. package/node/hooks/features/focus/useGridFocus.js +55 -9
  223. package/node/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +15 -0
  224. package/node/hooks/features/headerFiltering/index.js +16 -0
  225. package/node/hooks/features/headerFiltering/useGridHeaderFiltering.js +101 -0
  226. package/node/hooks/features/index.js +11 -0
  227. package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +113 -4
  228. package/node/hooks/features/rows/useGridRows.js +16 -1
  229. package/node/index.js +1 -1
  230. package/node/internals/index.js +46 -0
  231. package/node/internals/utils/index.js +11 -0
  232. package/node/internals/utils/useProps.js +22 -0
  233. package/node/locales/arSD.js +28 -0
  234. package/node/locales/beBY.js +28 -0
  235. package/node/locales/bgBG.js +28 -0
  236. package/node/locales/csCZ.js +36 -8
  237. package/node/locales/daDK.js +28 -0
  238. package/node/locales/deDE.js +28 -0
  239. package/node/locales/elGR.js +27 -0
  240. package/node/locales/esES.js +28 -0
  241. package/node/locales/faIR.js +28 -0
  242. package/node/locales/fiFI.js +28 -0
  243. package/node/locales/frFR.js +28 -0
  244. package/node/locales/heIL.js +30 -2
  245. package/node/locales/huHU.js +28 -0
  246. package/node/locales/itIT.js +28 -0
  247. package/node/locales/jaJP.js +28 -0
  248. package/node/locales/koKR.js +28 -0
  249. package/node/locales/nbNO.js +28 -0
  250. package/node/locales/nlNL.js +28 -0
  251. package/node/locales/plPL.js +28 -0
  252. package/node/locales/ptBR.js +28 -0
  253. package/node/locales/roRO.js +28 -0
  254. package/node/locales/ruRU.js +28 -0
  255. package/node/locales/skSK.js +28 -0
  256. package/node/locales/svSE.js +28 -0
  257. package/node/locales/trTR.js +28 -0
  258. package/node/locales/ukUA.js +28 -0
  259. package/node/locales/urPK.js +28 -0
  260. package/node/locales/viVN.js +27 -0
  261. package/node/locales/zhCN.js +28 -0
  262. package/node/locales/zhTW.js +28 -0
  263. package/node/material/index.js +2 -0
  264. package/node/models/api/gridHeaderFilteringApi.js +5 -0
  265. package/node/models/gridHeaderFilteringModel.js +5 -0
  266. package/node/models/index.js +0 -11
  267. package/package.json +1 -1
@@ -20,6 +20,7 @@ var _gridRowsSelector = require("../rows/gridRowsSelector");
20
20
  var _focus = require("../focus");
21
21
  var _gridColumnGroupsSelector = require("../columnGrouping/gridColumnGroupsSelector");
22
22
  var _useGridSelector = require("../../utils/useGridSelector");
23
+ var _gridHeaderFilteringSelectors = require("../headerFiltering/gridHeaderFilteringSelectors");
23
24
  var _pipeProcessing = require("../../core/pipeProcessing");
24
25
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
26
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -76,6 +77,9 @@ const useGridKeyboardNavigation = (apiRef, props) => {
76
77
  const initialCurrentPageRows = (0, _useGridVisibleRows.useGridVisibleRows)(apiRef, props).rows;
77
78
  const theme = (0, _styles.useTheme)();
78
79
  const currentPageRows = React.useMemo(() => enrichPageRowsWithPinnedRows(apiRef, initialCurrentPageRows), [apiRef, initialCurrentPageRows]);
80
+ const headerFilteringEnabled =
81
+ // @ts-expect-error // TODO move relevant code to the `DataGridPro`
82
+ props.signature !== 'DataGrid' && props.unstable_headerFilters;
79
83
 
80
84
  /**
81
85
  * @param {number} colIndex Index of the column to focus
@@ -112,6 +116,14 @@ const useGridKeyboardNavigation = (apiRef, props) => {
112
116
  const field = apiRef.current.getVisibleColumns()[colIndex].field;
113
117
  apiRef.current.setColumnHeaderFocus(field, event);
114
118
  }, [apiRef, logger]);
119
+ const goToHeaderFilter = React.useCallback((colIndex, event) => {
120
+ logger.debug(`Navigating to header filter col ${colIndex}`);
121
+ apiRef.current.scrollToIndexes({
122
+ colIndex
123
+ });
124
+ const field = apiRef.current.getVisibleColumns()[colIndex].field;
125
+ apiRef.current.setColumnHeaderFilterFocus(field, event);
126
+ }, [apiRef, logger]);
115
127
  const goToGroupHeader = React.useCallback((colIndex, depth, event) => {
116
128
  logger.debug(`Navigating to header col ${colIndex}`);
117
129
  apiRef.current.scrollToIndexes({
@@ -123,7 +135,7 @@ const useGridKeyboardNavigation = (apiRef, props) => {
123
135
  apiRef.current.setColumnGroupHeaderFocus(field, depth, event);
124
136
  }, [apiRef, logger]);
125
137
  const getRowIdFromIndex = React.useCallback(rowIndex => {
126
- return currentPageRows[rowIndex].id;
138
+ return currentPageRows?.[rowIndex].id;
127
139
  }, [currentPageRows]);
128
140
  const handleColumnHeaderKeyDown = React.useCallback((params, event) => {
129
141
  const headerTitleNode = event.currentTarget.querySelector(`.${_gridClasses.gridClasses.columnHeaderTitleContainerContent}`);
@@ -149,7 +161,11 @@ const useGridKeyboardNavigation = (apiRef, props) => {
149
161
  case 'ArrowDown':
150
162
  {
151
163
  if (firstRowIndexInPage !== null) {
152
- goToCell(colIndexBefore, getRowIdFromIndex(firstRowIndexInPage));
164
+ if (headerFilteringEnabled) {
165
+ goToHeaderFilter(colIndexBefore, event);
166
+ } else {
167
+ goToCell(colIndexBefore, getRowIdFromIndex(firstRowIndexInPage));
168
+ }
153
169
  }
154
170
  break;
155
171
  }
@@ -223,7 +239,97 @@ const useGridKeyboardNavigation = (apiRef, props) => {
223
239
  if (shouldPreventDefault) {
224
240
  event.preventDefault();
225
241
  }
226
- }, [apiRef, currentPageRows.length, theme.direction, goToCell, getRowIdFromIndex, goToHeader, goToGroupHeader]);
242
+ }, [apiRef, currentPageRows.length, headerFilteringEnabled, goToHeaderFilter, goToCell, getRowIdFromIndex, theme.direction, goToHeader, goToGroupHeader]);
243
+ const handleHeaderFilterKeyDown = React.useCallback((params, event) => {
244
+ const dimensions = apiRef.current.getRootDimensions();
245
+ if (!dimensions) {
246
+ return;
247
+ }
248
+ const isEditing = (0, _gridHeaderFilteringSelectors.unstable_gridHeaderFilteringEditFieldSelector)(apiRef) === params.field;
249
+ const isHeaderMenuOpen = (0, _gridHeaderFilteringSelectors.unstable_gridHeaderFilteringMenuSelector)(apiRef) === params.field;
250
+ if (isEditing || isHeaderMenuOpen || !(0, _keyboardUtils.isNavigationKey)(event.key)) {
251
+ return;
252
+ }
253
+ const viewportPageSize = apiRef.current.getViewportPageSize();
254
+ const colIndexBefore = params.field ? apiRef.current.getColumnIndex(params.field) : 0;
255
+ const firstRowIndexInPage = 0;
256
+ const lastRowIndexInPage = currentPageRows.length - 1;
257
+ const firstColIndex = 0;
258
+ const lastColIndex = (0, _gridColumnsSelector.gridVisibleColumnDefinitionsSelector)(apiRef).length - 1;
259
+ let shouldPreventDefault = true;
260
+ switch (event.key) {
261
+ case 'ArrowDown':
262
+ {
263
+ const rowId = getRowIdFromIndex(firstRowIndexInPage);
264
+ if (firstRowIndexInPage !== null && rowId != null) {
265
+ goToCell(colIndexBefore, rowId);
266
+ }
267
+ break;
268
+ }
269
+ case 'ArrowRight':
270
+ {
271
+ const rightColIndex = getRightColumnIndex({
272
+ currentColIndex: colIndexBefore,
273
+ firstColIndex,
274
+ lastColIndex,
275
+ direction: theme.direction
276
+ });
277
+ if (rightColIndex !== null) {
278
+ goToHeaderFilter(rightColIndex, event);
279
+ }
280
+ break;
281
+ }
282
+ case 'ArrowLeft':
283
+ {
284
+ const leftColIndex = getLeftColumnIndex({
285
+ currentColIndex: colIndexBefore,
286
+ firstColIndex,
287
+ lastColIndex,
288
+ direction: theme.direction
289
+ });
290
+ if (leftColIndex !== null) {
291
+ goToHeaderFilter(leftColIndex, event);
292
+ } else {
293
+ apiRef.current.setColumnHeaderFilterFocus(params.field, event);
294
+ }
295
+ break;
296
+ }
297
+ case 'ArrowUp':
298
+ {
299
+ goToHeader(colIndexBefore, event);
300
+ break;
301
+ }
302
+ case 'PageDown':
303
+ {
304
+ if (firstRowIndexInPage !== null && lastRowIndexInPage !== null) {
305
+ goToCell(colIndexBefore, getRowIdFromIndex(Math.min(firstRowIndexInPage + viewportPageSize, lastRowIndexInPage)));
306
+ }
307
+ break;
308
+ }
309
+ case 'Home':
310
+ {
311
+ goToHeaderFilter(firstColIndex, event);
312
+ break;
313
+ }
314
+ case 'End':
315
+ {
316
+ goToHeaderFilter(lastColIndex, event);
317
+ break;
318
+ }
319
+ case ' ':
320
+ {
321
+ // prevent Space event from scrolling
322
+ break;
323
+ }
324
+ default:
325
+ {
326
+ shouldPreventDefault = false;
327
+ }
328
+ }
329
+ if (shouldPreventDefault) {
330
+ event.preventDefault();
331
+ }
332
+ }, [apiRef, currentPageRows.length, goToHeaderFilter, theme.direction, goToHeader, goToCell, getRowIdFromIndex]);
227
333
  const focusedColumnGroup = (0, _useGridSelector.useGridSelector)(apiRef, _focus.unstable_gridFocusColumnGroupHeaderSelector);
228
334
  const handleColumnGroupHeaderKeyDown = React.useCallback((params, event) => {
229
335
  const dimensions = apiRef.current.getRootDimensions();
@@ -358,6 +464,8 @@ const useGridKeyboardNavigation = (apiRef, props) => {
358
464
  {
359
465
  if (rowIndexBefore > firstRowIndexInPage) {
360
466
  goToCell(colIndexBefore, getRowIdFromIndex(rowIndexBefore - 1));
467
+ } else if (headerFilteringEnabled) {
468
+ goToHeaderFilter(colIndexBefore, event);
361
469
  } else {
362
470
  goToHeader(colIndexBefore, event);
363
471
  }
@@ -458,7 +566,7 @@ const useGridKeyboardNavigation = (apiRef, props) => {
458
566
  if (shouldPreventDefault) {
459
567
  event.preventDefault();
460
568
  }
461
- }, [apiRef, currentPageRows, theme.direction, getRowIdFromIndex, goToCell, goToHeader]);
569
+ }, [apiRef, currentPageRows, theme.direction, goToCell, getRowIdFromIndex, headerFilteringEnabled, goToHeaderFilter, goToHeader]);
462
570
  const checkIfCanStartEditing = React.useCallback((initialValue, {
463
571
  event
464
572
  }) => {
@@ -470,6 +578,7 @@ const useGridKeyboardNavigation = (apiRef, props) => {
470
578
  }, []);
471
579
  (0, _pipeProcessing.useGridRegisterPipeProcessor)(apiRef, 'canStartEditing', checkIfCanStartEditing);
472
580
  (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnHeaderKeyDown', handleColumnHeaderKeyDown);
581
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'headerFilterKeyDown', handleHeaderFilterKeyDown);
473
582
  (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnGroupHeaderKeyDown', handleColumnGroupHeaderKeyDown);
474
583
  (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'cellKeyDown', handleCellKeyDown);
475
584
  };
@@ -125,8 +125,23 @@ const useGridRows = (apiRef, props) => {
125
125
  if (props.signature === _useGridApiEventHandler.GridSignature.DataGrid && updates.length > 1) {
126
126
  throw new Error(["MUI: You can't update several rows at once in `apiRef.current.updateRows` on the DataGrid.", 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
127
127
  }
128
+ const nonPinnedRowsUpdates = [];
129
+ updates.forEach(update => {
130
+ const id = (0, _gridRowsUtils.getRowIdFromRowModel)(update, props.getRowId, 'A row was provided without id when calling updateRows():');
131
+ const rowNode = apiRef.current.getRowNode(id);
132
+ if (rowNode?.type === 'pinnedRow') {
133
+ // @ts-ignore because otherwise `release:build` doesn't work
134
+ const pinnedRowsCache = apiRef.current.caches.pinnedRows;
135
+ const prevModel = pinnedRowsCache.idLookup[id];
136
+ if (prevModel) {
137
+ pinnedRowsCache.idLookup[id] = (0, _extends2.default)({}, prevModel, update);
138
+ }
139
+ } else {
140
+ nonPinnedRowsUpdates.push(update);
141
+ }
142
+ });
128
143
  const cache = (0, _gridRowsUtils.updateCacheWithNewRows)({
129
- updates,
144
+ updates: nonPinnedRowsUpdates,
130
145
  getRowId: props.getRowId,
131
146
  previousCache: apiRef.current.caches.rows
132
147
  });
package/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid v6.4.0
2
+ * @mui/x-data-grid v6.5.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -10,16 +10,20 @@ var _exportNames = {
10
10
  GridBaseColumnHeaders: true,
11
11
  GridColumnHeadersInner: true,
12
12
  DATA_GRID_DEFAULT_SLOTS_COMPONENTS: true,
13
+ getGridFilter: true,
13
14
  useGridRegisterPipeProcessor: true,
14
15
  useGridRegisterStrategyProcessor: true,
15
16
  GRID_DEFAULT_STRATEGY: true,
16
17
  useGridInitialization: true,
17
18
  useGridClipboard: true,
18
19
  useGridColumnHeaders: true,
20
+ unstable_gridHeaderFilteringEditFieldSelector: true,
21
+ unstable_gridHeaderFilteringMenuSelector: true,
19
22
  useGridColumnMenu: true,
20
23
  columnMenuStateInitializer: true,
21
24
  useGridColumns: true,
22
25
  columnsStateInitializer: true,
26
+ getTotalHeaderHeight: true,
23
27
  useGridColumnSpanning: true,
24
28
  useGridColumnGrouping: true,
25
29
  columnGroupsStateInitializer: true,
@@ -53,6 +57,8 @@ var _exportNames = {
53
57
  useGridParamsApi: true,
54
58
  gridAdditionalRowGroupsSelector: true,
55
59
  gridPinnedRowsSelector: true,
60
+ headerFilteringStateInitializer: true,
61
+ useGridHeaderFiltering: true,
56
62
  useGridRowSelection: true,
57
63
  rowSelectionStateInitializer: true,
58
64
  useGridRowSelectionPreProcessors: true,
@@ -228,6 +234,12 @@ Object.defineProperty(exports, "getColumnsToExport", {
228
234
  return _utils.getColumnsToExport;
229
235
  }
230
236
  });
237
+ Object.defineProperty(exports, "getGridFilter", {
238
+ enumerable: true,
239
+ get: function () {
240
+ return _GridFilterPanel.getGridFilter;
241
+ }
242
+ });
231
243
  Object.defineProperty(exports, "getRenderableIndexes", {
232
244
  enumerable: true,
233
245
  get: function () {
@@ -240,6 +252,12 @@ Object.defineProperty(exports, "getRowIdFromRowModel", {
240
252
  return _gridRowsUtils.getRowIdFromRowModel;
241
253
  }
242
254
  });
255
+ Object.defineProperty(exports, "getTotalHeaderHeight", {
256
+ enumerable: true,
257
+ get: function () {
258
+ return _gridColumnsUtils.getTotalHeaderHeight;
259
+ }
260
+ });
243
261
  Object.defineProperty(exports, "getTreeNodeDescendants", {
244
262
  enumerable: true,
245
263
  get: function () {
@@ -270,6 +288,12 @@ Object.defineProperty(exports, "gridPinnedRowsSelector", {
270
288
  return _gridRowsSelector.gridPinnedRowsSelector;
271
289
  }
272
290
  });
291
+ Object.defineProperty(exports, "headerFilteringStateInitializer", {
292
+ enumerable: true,
293
+ get: function () {
294
+ return _useGridHeaderFiltering.headerFilteringStateInitializer;
295
+ }
296
+ });
273
297
  Object.defineProperty(exports, "isDeepEqual", {
274
298
  enumerable: true,
275
299
  get: function () {
@@ -354,6 +378,18 @@ Object.defineProperty(exports, "sortingStateInitializer", {
354
378
  return _useGridSorting.sortingStateInitializer;
355
379
  }
356
380
  });
381
+ Object.defineProperty(exports, "unstable_gridHeaderFilteringEditFieldSelector", {
382
+ enumerable: true,
383
+ get: function () {
384
+ return _gridHeaderFilteringSelectors.unstable_gridHeaderFilteringEditFieldSelector;
385
+ }
386
+ });
387
+ Object.defineProperty(exports, "unstable_gridHeaderFilteringMenuSelector", {
388
+ enumerable: true,
389
+ get: function () {
390
+ return _gridHeaderFilteringSelectors.unstable_gridHeaderFilteringMenuSelector;
391
+ }
392
+ });
357
393
  Object.defineProperty(exports, "unstable_resetCreateSelectorCache", {
358
394
  enumerable: true,
359
395
  get: function () {
@@ -438,6 +474,12 @@ Object.defineProperty(exports, "useGridFocus", {
438
474
  return _useGridFocus.useGridFocus;
439
475
  }
440
476
  });
477
+ Object.defineProperty(exports, "useGridHeaderFiltering", {
478
+ enumerable: true,
479
+ get: function () {
480
+ return _useGridHeaderFiltering.useGridHeaderFiltering;
481
+ }
482
+ });
441
483
  Object.defineProperty(exports, "useGridInitialization", {
442
484
  enumerable: true,
443
485
  get: function () {
@@ -564,13 +606,16 @@ var _GridVirtualScrollerRenderZone = require("../components/virtualization/GridV
564
606
  var _GridBaseColumnHeaders = require("../components/columnHeaders/GridBaseColumnHeaders");
565
607
  var _GridColumnHeadersInner = require("../components/columnHeaders/GridColumnHeadersInner");
566
608
  var _defaultGridSlotsComponents = require("../constants/defaultGridSlotsComponents");
609
+ var _GridFilterPanel = require("../components/panel/filterPanel/GridFilterPanel");
567
610
  var _pipeProcessing = require("../hooks/core/pipeProcessing");
568
611
  var _strategyProcessing = require("../hooks/core/strategyProcessing");
569
612
  var _useGridInitialization = require("../hooks/core/useGridInitialization");
570
613
  var _useGridClipboard = require("../hooks/features/clipboard/useGridClipboard");
571
614
  var _useGridColumnHeaders = require("../hooks/features/columnHeaders/useGridColumnHeaders");
615
+ var _gridHeaderFilteringSelectors = require("../hooks/features/headerFiltering/gridHeaderFilteringSelectors");
572
616
  var _useGridColumnMenu = require("../hooks/features/columnMenu/useGridColumnMenu");
573
617
  var _useGridColumns = require("../hooks/features/columns/useGridColumns");
618
+ var _gridColumnsUtils = require("../hooks/features/columns/gridColumnsUtils");
574
619
  var _useGridColumnSpanning = require("../hooks/features/columns/useGridColumnSpanning");
575
620
  var _useGridColumnGrouping = require("../hooks/features/columnGrouping/useGridColumnGrouping");
576
621
  var _useGridDensity = require("../hooks/features/density/useGridDensity");
@@ -591,6 +636,7 @@ var _gridRowsUtils = require("../hooks/features/rows/gridRowsUtils");
591
636
  var _useGridRowsMeta = require("../hooks/features/rows/useGridRowsMeta");
592
637
  var _useGridParamsApi = require("../hooks/features/rows/useGridParamsApi");
593
638
  var _gridRowsSelector = require("../hooks/features/rows/gridRowsSelector");
639
+ var _useGridHeaderFiltering = require("../hooks/features/headerFiltering/useGridHeaderFiltering");
594
640
  var _useGridRowSelection = require("../hooks/features/rowSelection/useGridRowSelection");
595
641
  var _useGridRowSelectionPreProcessors = require("../hooks/features/rowSelection/useGridRowSelectionPreProcessors");
596
642
  var _useGridSorting = require("../hooks/features/sorting/useGridSorting");
@@ -24,4 +24,15 @@ Object.keys(_slotsMigration).forEach(function (key) {
24
24
  return _slotsMigration[key];
25
25
  }
26
26
  });
27
+ });
28
+ var _useProps = require("./useProps");
29
+ Object.keys(_useProps).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _useProps[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _useProps[key];
36
+ }
37
+ });
27
38
  });
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useProps = useProps;
8
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
+ var React = _interopRequireWildcard(require("react"));
10
+ const _excluded = ["components", "componentsProps"];
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
+ function useProps(allProps) {
14
+ return React.useMemo(() => {
15
+ const {
16
+ components,
17
+ componentsProps
18
+ } = allProps,
19
+ themedProps = (0, _objectWithoutPropertiesLoose2.default)(allProps, _excluded);
20
+ return [components, componentsProps, themedProps];
21
+ }, [allProps]);
22
+ }
@@ -66,6 +66,34 @@ const arSDGrid = {
66
66
  filterOperatorIsEmpty: 'خالي',
67
67
  filterOperatorIsNotEmpty: 'غير خالي',
68
68
  filterOperatorIsAnyOf: 'أي من',
69
+ // filterOperator=: '=',
70
+ // filterOperator!=: '!=',
71
+ // filterOperator>: '>',
72
+ // filterOperator>=: '>=',
73
+ // filterOperator<: '<',
74
+ // filterOperator<=: '<=',
75
+
76
+ // Header filter operators text
77
+ // headerFilterOperatorContains: 'Contains',
78
+ // headerFilterOperatorEquals: 'Equals',
79
+ // headerFilterOperatorStartsWith: 'Starts with',
80
+ // headerFilterOperatorEndsWith: 'Ends with',
81
+ // headerFilterOperatorIs: 'Is',
82
+ // headerFilterOperatorNot: 'Is not',
83
+ // headerFilterOperatorAfter: 'Is after',
84
+ // headerFilterOperatorOnOrAfter: 'Is on or after',
85
+ // headerFilterOperatorBefore: 'Is before',
86
+ // headerFilterOperatorOnOrBefore: 'Is on or before',
87
+ // headerFilterOperatorIsEmpty: 'Is empty',
88
+ // headerFilterOperatorIsNotEmpty: 'Is not empty',
89
+ // headerFilterOperatorIsAnyOf: 'Is any of',
90
+ // headerFilterOperator=: 'Equals',
91
+ // headerFilterOperator!=: 'Not equals',
92
+ // headerFilterOperator>: 'Is greater than',
93
+ // headerFilterOperator>=: 'Is greater than or equal to',
94
+ // headerFilterOperator<: 'Is less than',
95
+ // headerFilterOperator<=: 'Is less than or equal to',
96
+
69
97
  // Filter values text
70
98
  filterValueAny: 'أي',
71
99
  filterValueTrue: 'صائب',
@@ -80,6 +80,34 @@ const beBYGrid = {
80
80
  filterOperatorIsEmpty: 'пусты',
81
81
  filterOperatorIsNotEmpty: 'не пусты',
82
82
  filterOperatorIsAnyOf: 'усякі з',
83
+ // filterOperator=: '=',
84
+ // filterOperator!=: '!=',
85
+ // filterOperator>: '>',
86
+ // filterOperator>=: '>=',
87
+ // filterOperator<: '<',
88
+ // filterOperator<=: '<=',
89
+
90
+ // Header filter operators text
91
+ // headerFilterOperatorContains: 'Contains',
92
+ // headerFilterOperatorEquals: 'Equals',
93
+ // headerFilterOperatorStartsWith: 'Starts with',
94
+ // headerFilterOperatorEndsWith: 'Ends with',
95
+ // headerFilterOperatorIs: 'Is',
96
+ // headerFilterOperatorNot: 'Is not',
97
+ // headerFilterOperatorAfter: 'Is after',
98
+ // headerFilterOperatorOnOrAfter: 'Is on or after',
99
+ // headerFilterOperatorBefore: 'Is before',
100
+ // headerFilterOperatorOnOrBefore: 'Is on or before',
101
+ // headerFilterOperatorIsEmpty: 'Is empty',
102
+ // headerFilterOperatorIsNotEmpty: 'Is not empty',
103
+ // headerFilterOperatorIsAnyOf: 'Is any of',
104
+ // headerFilterOperator=: 'Equals',
105
+ // headerFilterOperator!=: 'Not equals',
106
+ // headerFilterOperator>: 'Is greater than',
107
+ // headerFilterOperator>=: 'Is greater than or equal to',
108
+ // headerFilterOperator<: 'Is less than',
109
+ // headerFilterOperator<=: 'Is less than or equal to',
110
+
83
111
  // Filter values text
84
112
  filterValueAny: 'усякі',
85
113
  filterValueTrue: 'праўда',
@@ -66,6 +66,34 @@ const bgBGGrid = {
66
66
  filterOperatorIsEmpty: 'е празен',
67
67
  filterOperatorIsNotEmpty: 'не е празен',
68
68
  filterOperatorIsAnyOf: 'е някой от',
69
+ // filterOperator=: '=',
70
+ // filterOperator!=: '!=',
71
+ // filterOperator>: '>',
72
+ // filterOperator>=: '>=',
73
+ // filterOperator<: '<',
74
+ // filterOperator<=: '<=',
75
+
76
+ // Header filter operators text
77
+ // headerFilterOperatorContains: 'Contains',
78
+ // headerFilterOperatorEquals: 'Equals',
79
+ // headerFilterOperatorStartsWith: 'Starts with',
80
+ // headerFilterOperatorEndsWith: 'Ends with',
81
+ // headerFilterOperatorIs: 'Is',
82
+ // headerFilterOperatorNot: 'Is not',
83
+ // headerFilterOperatorAfter: 'Is after',
84
+ // headerFilterOperatorOnOrAfter: 'Is on or after',
85
+ // headerFilterOperatorBefore: 'Is before',
86
+ // headerFilterOperatorOnOrBefore: 'Is on or before',
87
+ // headerFilterOperatorIsEmpty: 'Is empty',
88
+ // headerFilterOperatorIsNotEmpty: 'Is not empty',
89
+ // headerFilterOperatorIsAnyOf: 'Is any of',
90
+ // headerFilterOperator=: 'Equals',
91
+ // headerFilterOperator!=: 'Not equals',
92
+ // headerFilterOperator>: 'Is greater than',
93
+ // headerFilterOperator>=: 'Is greater than or equal to',
94
+ // headerFilterOperator<: 'Is less than',
95
+ // headerFilterOperator<=: 'Is less than or equal to',
96
+
69
97
  // Filter values text
70
98
  filterValueAny: 'всякакви',
71
99
  filterValueTrue: 'вярно',
@@ -9,10 +9,10 @@ var _getGridLocalization = require("../utils/getGridLocalization");
9
9
  const csCZGrid = {
10
10
  // Root
11
11
  noRowsLabel: 'Žádné záznamy',
12
- noResultsOverlayLabel: 'Nenašli se žadné výsledky.',
12
+ noResultsOverlayLabel: 'Nenašly se žadné výsledky.',
13
13
  // Density selector toolbar button text
14
- toolbarDensity: 'Hustota',
15
- toolbarDensityLabel: 'Hustota',
14
+ toolbarDensity: 'Zobrazení',
15
+ toolbarDensityLabel: 'Zobrazení',
16
16
  toolbarDensityCompact: 'Kompaktní',
17
17
  toolbarDensityStandard: 'Standartní',
18
18
  toolbarDensityComfortable: 'Komfortní',
@@ -34,8 +34,8 @@ const csCZGrid = {
34
34
  return `${count} ${pluralForm}`;
35
35
  },
36
36
  // Quick filter toolbar field
37
- toolbarQuickFilterPlaceholder: 'Vyhledávat…',
38
- toolbarQuickFilterLabel: 'Vyhledat',
37
+ toolbarQuickFilterPlaceholder: 'Hledat…',
38
+ toolbarQuickFilterLabel: 'Hledat',
39
39
  toolbarQuickFilterDeleteIconLabel: 'Vymazat',
40
40
  // Export selector toolbar button text
41
41
  toolbarExport: 'Export',
@@ -63,17 +63,45 @@ const csCZGrid = {
63
63
  // Filter operators text
64
64
  filterOperatorContains: 'obsahuje',
65
65
  filterOperatorEquals: 'rovná se',
66
- filterOperatorStartsWith: 'začíná s',
66
+ filterOperatorStartsWith: 'začíná na',
67
67
  filterOperatorEndsWith: 'končí na',
68
68
  filterOperatorIs: 'je',
69
69
  filterOperatorNot: 'není',
70
70
  filterOperatorAfter: 'je po',
71
- filterOperatorOnOrAfter: 'je na nebo po',
71
+ filterOperatorOnOrAfter: 'je po včetně',
72
72
  filterOperatorBefore: 'je před',
73
- filterOperatorOnOrBefore: 'je na nebo dříve',
73
+ filterOperatorOnOrBefore: 'je před včetně',
74
74
  filterOperatorIsEmpty: 'je prázdný',
75
75
  filterOperatorIsNotEmpty: 'není prázdný',
76
76
  filterOperatorIsAnyOf: 'je jeden z',
77
+ // filterOperator=: '=',
78
+ // filterOperator!=: '!=',
79
+ // filterOperator>: '>',
80
+ // filterOperator>=: '>=',
81
+ // filterOperator<: '<',
82
+ // filterOperator<=: '<=',
83
+
84
+ // Header filter operators text
85
+ // headerFilterOperatorContains: 'Contains',
86
+ // headerFilterOperatorEquals: 'Equals',
87
+ // headerFilterOperatorStartsWith: 'Starts with',
88
+ // headerFilterOperatorEndsWith: 'Ends with',
89
+ // headerFilterOperatorIs: 'Is',
90
+ // headerFilterOperatorNot: 'Is not',
91
+ // headerFilterOperatorAfter: 'Is after',
92
+ // headerFilterOperatorOnOrAfter: 'Is on or after',
93
+ // headerFilterOperatorBefore: 'Is before',
94
+ // headerFilterOperatorOnOrBefore: 'Is on or before',
95
+ // headerFilterOperatorIsEmpty: 'Is empty',
96
+ // headerFilterOperatorIsNotEmpty: 'Is not empty',
97
+ // headerFilterOperatorIsAnyOf: 'Is any of',
98
+ // headerFilterOperator=: 'Equals',
99
+ // headerFilterOperator!=: 'Not equals',
100
+ // headerFilterOperator>: 'Is greater than',
101
+ // headerFilterOperator>=: 'Is greater than or equal to',
102
+ // headerFilterOperator<: 'Is less than',
103
+ // headerFilterOperator<=: 'Is less than or equal to',
104
+
77
105
  // Filter values text
78
106
  filterValueAny: 'jakýkoliv',
79
107
  filterValueTrue: 'ano',
@@ -66,6 +66,34 @@ const daDKGrid = {
66
66
  filterOperatorIsEmpty: 'Indeholder ikke data',
67
67
  filterOperatorIsNotEmpty: 'Indeholder data',
68
68
  filterOperatorIsAnyOf: 'indeholder en af',
69
+ // filterOperator=: '=',
70
+ // filterOperator!=: '!=',
71
+ // filterOperator>: '>',
72
+ // filterOperator>=: '>=',
73
+ // filterOperator<: '<',
74
+ // filterOperator<=: '<=',
75
+
76
+ // Header filter operators text
77
+ // headerFilterOperatorContains: 'Contains',
78
+ // headerFilterOperatorEquals: 'Equals',
79
+ // headerFilterOperatorStartsWith: 'Starts with',
80
+ // headerFilterOperatorEndsWith: 'Ends with',
81
+ // headerFilterOperatorIs: 'Is',
82
+ // headerFilterOperatorNot: 'Is not',
83
+ // headerFilterOperatorAfter: 'Is after',
84
+ // headerFilterOperatorOnOrAfter: 'Is on or after',
85
+ // headerFilterOperatorBefore: 'Is before',
86
+ // headerFilterOperatorOnOrBefore: 'Is on or before',
87
+ // headerFilterOperatorIsEmpty: 'Is empty',
88
+ // headerFilterOperatorIsNotEmpty: 'Is not empty',
89
+ // headerFilterOperatorIsAnyOf: 'Is any of',
90
+ // headerFilterOperator=: 'Equals',
91
+ // headerFilterOperator!=: 'Not equals',
92
+ // headerFilterOperator>: 'Is greater than',
93
+ // headerFilterOperator>=: 'Is greater than or equal to',
94
+ // headerFilterOperator<: 'Is less than',
95
+ // headerFilterOperator<=: 'Is less than or equal to',
96
+
69
97
  // Filter values text
70
98
  filterValueAny: 'hvilken som helst',
71
99
  filterValueTrue: 'positiv',
@@ -66,6 +66,34 @@ const deDEGrid = {
66
66
  filterOperatorIsEmpty: 'ist leer',
67
67
  filterOperatorIsNotEmpty: 'ist nicht leer',
68
68
  filterOperatorIsAnyOf: 'ist einer der Werte',
69
+ // filterOperator=: '=',
70
+ // filterOperator!=: '!=',
71
+ // filterOperator>: '>',
72
+ // filterOperator>=: '>=',
73
+ // filterOperator<: '<',
74
+ // filterOperator<=: '<=',
75
+
76
+ // Header filter operators text
77
+ // headerFilterOperatorContains: 'Contains',
78
+ // headerFilterOperatorEquals: 'Equals',
79
+ // headerFilterOperatorStartsWith: 'Starts with',
80
+ // headerFilterOperatorEndsWith: 'Ends with',
81
+ // headerFilterOperatorIs: 'Is',
82
+ // headerFilterOperatorNot: 'Is not',
83
+ // headerFilterOperatorAfter: 'Is after',
84
+ // headerFilterOperatorOnOrAfter: 'Is on or after',
85
+ // headerFilterOperatorBefore: 'Is before',
86
+ // headerFilterOperatorOnOrBefore: 'Is on or before',
87
+ // headerFilterOperatorIsEmpty: 'Is empty',
88
+ // headerFilterOperatorIsNotEmpty: 'Is not empty',
89
+ // headerFilterOperatorIsAnyOf: 'Is any of',
90
+ // headerFilterOperator=: 'Equals',
91
+ // headerFilterOperator!=: 'Not equals',
92
+ // headerFilterOperator>: 'Is greater than',
93
+ // headerFilterOperator>=: 'Is greater than or equal to',
94
+ // headerFilterOperator<: 'Is less than',
95
+ // headerFilterOperator<=: 'Is less than or equal to',
96
+
69
97
  // Filter values text
70
98
  filterValueAny: 'Beliebig',
71
99
  filterValueTrue: 'Ja',
@@ -67,6 +67,33 @@ const elGRGrid = {
67
67
  filterOperatorIsEmpty: 'είναι κενό',
68
68
  filterOperatorIsNotEmpty: 'δεν είναι κενό',
69
69
  // filterOperatorIsAnyOf: 'is any of',
70
+ // filterOperator=: '=',
71
+ // filterOperator!=: '!=',
72
+ // filterOperator>: '>',
73
+ // filterOperator>=: '>=',
74
+ // filterOperator<: '<',
75
+ // filterOperator<=: '<=',
76
+
77
+ // Header filter operators text
78
+ // headerFilterOperatorContains: 'Contains',
79
+ // headerFilterOperatorEquals: 'Equals',
80
+ // headerFilterOperatorStartsWith: 'Starts with',
81
+ // headerFilterOperatorEndsWith: 'Ends with',
82
+ // headerFilterOperatorIs: 'Is',
83
+ // headerFilterOperatorNot: 'Is not',
84
+ // headerFilterOperatorAfter: 'Is after',
85
+ // headerFilterOperatorOnOrAfter: 'Is on or after',
86
+ // headerFilterOperatorBefore: 'Is before',
87
+ // headerFilterOperatorOnOrBefore: 'Is on or before',
88
+ // headerFilterOperatorIsEmpty: 'Is empty',
89
+ // headerFilterOperatorIsNotEmpty: 'Is not empty',
90
+ // headerFilterOperatorIsAnyOf: 'Is any of',
91
+ // headerFilterOperator=: 'Equals',
92
+ // headerFilterOperator!=: 'Not equals',
93
+ // headerFilterOperator>: 'Is greater than',
94
+ // headerFilterOperator>=: 'Is greater than or equal to',
95
+ // headerFilterOperator<: 'Is less than',
96
+ // headerFilterOperator<=: 'Is less than or equal to',
70
97
 
71
98
  // Filter values text
72
99
  // filterValueAny: 'any',