@mui/x-data-grid 5.11.1 → 5.12.2

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 (331) hide show
  1. package/CHANGELOG.md +199 -20
  2. package/DataGrid/DataGrid.js +26 -1
  3. package/README.md +2 -2
  4. package/colDef/gridCheckboxSelectionColDef.d.ts +1 -0
  5. package/colDef/gridCheckboxSelectionColDef.js +2 -1
  6. package/colDef/gridDateOperators.d.ts +1 -1
  7. package/colDef/gridNumericColDef.js +1 -1
  8. package/components/GridRow.d.ts +1 -1
  9. package/components/GridRow.js +51 -12
  10. package/components/cell/GridActionsCellItem.d.ts +1 -1
  11. package/components/cell/GridCell.d.ts +2 -1
  12. package/components/cell/GridCell.js +12 -7
  13. package/components/columnHeaders/GridColumnHeaderItem.js +9 -6
  14. package/components/columnSelection/GridCellCheckboxRenderer.js +0 -1
  15. package/components/columnSelection/GridHeaderCheckbox.js +0 -1
  16. package/components/containers/GridRootStyles.js +8 -3
  17. package/components/menu/GridMenu.js +9 -2
  18. package/components/panel/GridColumnsPanel.js +12 -7
  19. package/components/panel/GridPanelWrapper.d.ts +1 -1
  20. package/components/panel/GridPanelWrapper.js +3 -3
  21. package/components/panel/filterPanel/GridFilterForm.d.ts +61 -4
  22. package/components/panel/filterPanel/GridFilterForm.js +88 -8
  23. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -1
  24. package/components/panel/filterPanel/GridFilterPanel.d.ts +8 -5
  25. package/components/panel/filterPanel/GridFilterPanel.js +26 -11
  26. package/components/toolbar/GridToolbarColumnsButton.js +0 -1
  27. package/components/toolbar/GridToolbarDensitySelector.js +0 -1
  28. package/components/toolbar/GridToolbarExportContainer.js +0 -1
  29. package/components/toolbar/GridToolbarFilterButton.d.ts +1 -1
  30. package/components/toolbar/GridToolbarFilterButton.js +0 -1
  31. package/components/toolbar/GridToolbarQuickFilter.d.ts +7 -0
  32. package/components/toolbar/GridToolbarQuickFilter.js +57 -4
  33. package/constants/defaultGridSlotsComponents.js +2 -1
  34. package/constants/gridClasses.d.ts +4 -0
  35. package/constants/gridClasses.js +1 -1
  36. package/constants/localeTextConstants.js +1 -0
  37. package/hooks/core/useGridStateInitialization.js +19 -6
  38. package/hooks/features/columnMenu/useGridColumnMenu.js +22 -0
  39. package/hooks/features/columns/gridColumnsInterfaces.d.ts +3 -0
  40. package/hooks/features/columns/useGridColumnSpanning.d.ts +1 -1
  41. package/hooks/features/columns/useGridColumnSpanning.js +1 -1
  42. package/hooks/features/columns/useGridColumns.d.ts +1 -1
  43. package/hooks/features/columns/useGridColumns.js +13 -15
  44. package/hooks/features/dimensions/gridDimensionsApi.d.ts +5 -0
  45. package/hooks/features/dimensions/useGridDimensions.js +9 -8
  46. package/hooks/features/editRows/useGridCellEditing.new.js +11 -4
  47. package/hooks/features/editRows/useGridEditing.old.js +1 -1
  48. package/hooks/features/editRows/useGridRowEditing.new.js +10 -4
  49. package/hooks/features/events/useGridEvents.d.ts +1 -1
  50. package/hooks/features/events/useGridEvents.js +2 -0
  51. package/hooks/features/filter/gridFilterSelector.d.ts +5 -0
  52. package/hooks/features/filter/gridFilterSelector.js +6 -0
  53. package/hooks/features/filter/gridFilterState.d.ts +1 -1
  54. package/hooks/features/filter/gridFilterUtils.d.ts +10 -2
  55. package/hooks/features/filter/gridFilterUtils.js +3 -6
  56. package/hooks/features/filter/useGridFilter.d.ts +1 -1
  57. package/hooks/features/filter/useGridFilter.js +29 -12
  58. package/hooks/features/pagination/useGridPage.js +1 -1
  59. package/hooks/features/pagination/useGridPageSize.js +1 -1
  60. package/hooks/features/rows/useGridRowsMeta.d.ts +1 -1
  61. package/hooks/features/rows/useGridRowsMeta.js +133 -67
  62. package/hooks/features/selection/useGridSelection.js +1 -1
  63. package/hooks/features/selection/useGridSelectionPreProcessors.js +8 -6
  64. package/hooks/features/sorting/useGridSorting.d.ts +1 -1
  65. package/hooks/features/sorting/useGridSorting.js +1 -1
  66. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +2 -1
  67. package/hooks/features/virtualization/useGridVirtualScroller.js +65 -11
  68. package/index.js +1 -1
  69. package/internals/index.d.ts +1 -0
  70. package/legacy/DataGrid/DataGrid.js +26 -1
  71. package/legacy/colDef/gridCheckboxSelectionColDef.js +2 -1
  72. package/legacy/colDef/gridNumericColDef.js +1 -1
  73. package/legacy/components/GridRow.js +56 -12
  74. package/legacy/components/cell/GridCell.js +12 -7
  75. package/legacy/components/columnHeaders/GridColumnHeaderItem.js +11 -6
  76. package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +0 -1
  77. package/legacy/components/columnSelection/GridHeaderCheckbox.js +0 -1
  78. package/legacy/components/containers/GridRootStyles.js +10 -7
  79. package/legacy/components/menu/GridMenu.js +9 -2
  80. package/legacy/components/panel/GridColumnsPanel.js +14 -7
  81. package/legacy/components/panel/GridPanelWrapper.js +3 -3
  82. package/legacy/components/panel/filterPanel/GridFilterForm.js +89 -8
  83. package/legacy/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -1
  84. package/legacy/components/panel/filterPanel/GridFilterPanel.js +28 -12
  85. package/legacy/components/toolbar/GridToolbarColumnsButton.js +0 -1
  86. package/legacy/components/toolbar/GridToolbarDensitySelector.js +0 -1
  87. package/legacy/components/toolbar/GridToolbarExportContainer.js +0 -1
  88. package/legacy/components/toolbar/GridToolbarFilterButton.js +0 -1
  89. package/legacy/components/toolbar/GridToolbarQuickFilter.js +67 -6
  90. package/legacy/constants/defaultGridSlotsComponents.js +2 -1
  91. package/legacy/constants/gridClasses.js +1 -1
  92. package/legacy/constants/localeTextConstants.js +1 -0
  93. package/legacy/hooks/core/useGridStateInitialization.js +18 -6
  94. package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +22 -0
  95. package/legacy/hooks/features/columns/useGridColumnSpanning.js +1 -1
  96. package/legacy/hooks/features/columns/useGridColumns.js +13 -15
  97. package/legacy/hooks/features/dimensions/useGridDimensions.js +9 -8
  98. package/legacy/hooks/features/editRows/useGridCellEditing.new.js +14 -7
  99. package/legacy/hooks/features/editRows/useGridEditing.old.js +1 -1
  100. package/legacy/hooks/features/editRows/useGridRowEditing.new.js +10 -4
  101. package/legacy/hooks/features/events/useGridEvents.js +2 -0
  102. package/legacy/hooks/features/filter/gridFilterSelector.js +8 -0
  103. package/legacy/hooks/features/filter/gridFilterUtils.js +4 -7
  104. package/legacy/hooks/features/filter/useGridFilter.js +33 -12
  105. package/legacy/hooks/features/pagination/useGridPage.js +1 -1
  106. package/legacy/hooks/features/pagination/useGridPageSize.js +1 -1
  107. package/legacy/hooks/features/rows/useGridRowsMeta.js +133 -66
  108. package/legacy/hooks/features/selection/useGridSelection.js +1 -1
  109. package/legacy/hooks/features/selection/useGridSelectionPreProcessors.js +8 -6
  110. package/legacy/hooks/features/sorting/useGridSorting.js +1 -1
  111. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +84 -26
  112. package/legacy/index.js +1 -1
  113. package/legacy/locales/arSD.js +1 -0
  114. package/legacy/locales/bgBG.js +1 -0
  115. package/legacy/locales/csCZ.js +1 -0
  116. package/legacy/locales/daDK.js +1 -0
  117. package/legacy/locales/deDE.js +1 -0
  118. package/legacy/locales/elGR.js +1 -0
  119. package/legacy/locales/esES.js +1 -0
  120. package/legacy/locales/faIR.js +1 -0
  121. package/legacy/locales/fiFI.js +1 -0
  122. package/legacy/locales/frFR.js +1 -0
  123. package/legacy/locales/heIL.js +10 -9
  124. package/legacy/locales/huHU.js +1 -0
  125. package/legacy/locales/itIT.js +1 -0
  126. package/legacy/locales/jaJP.js +29 -24
  127. package/legacy/locales/koKR.js +1 -0
  128. package/legacy/locales/nbNO.js +128 -0
  129. package/legacy/locales/nlNL.js +1 -0
  130. package/legacy/locales/plPL.js +1 -0
  131. package/legacy/locales/ptBR.js +1 -0
  132. package/legacy/locales/ruRU.js +7 -6
  133. package/legacy/locales/skSK.js +1 -0
  134. package/legacy/locales/trTR.js +8 -7
  135. package/legacy/locales/ukUA.js +1 -0
  136. package/legacy/locales/viVN.js +1 -0
  137. package/legacy/locales/zhCN.js +1 -0
  138. package/legacy/models/events/gridEvents.js +2 -0
  139. package/legacy/models/gridApiCaches.js +1 -0
  140. package/legacy/models/params/gridMenuParams.js +1 -0
  141. package/legacy/models/params/index.js +2 -1
  142. package/locales/arSD.js +1 -0
  143. package/locales/bgBG.js +1 -0
  144. package/locales/csCZ.js +1 -0
  145. package/locales/daDK.js +1 -0
  146. package/locales/deDE.js +1 -0
  147. package/locales/elGR.js +1 -0
  148. package/locales/esES.js +1 -0
  149. package/locales/faIR.js +1 -0
  150. package/locales/fiFI.js +1 -0
  151. package/locales/frFR.js +1 -0
  152. package/locales/heIL.js +10 -9
  153. package/locales/huHU.js +1 -0
  154. package/locales/itIT.js +1 -0
  155. package/locales/jaJP.js +25 -24
  156. package/locales/koKR.js +1 -0
  157. package/locales/nbNO.d.ts +2 -0
  158. package/locales/nbNO.js +116 -0
  159. package/locales/nlNL.js +1 -0
  160. package/locales/plPL.js +1 -0
  161. package/locales/ptBR.js +1 -0
  162. package/locales/ruRU.js +7 -6
  163. package/locales/skSK.js +1 -0
  164. package/locales/trTR.js +8 -7
  165. package/locales/ukUA.js +1 -0
  166. package/locales/viVN.js +1 -0
  167. package/locales/zhCN.js +1 -0
  168. package/models/api/gridCallbackDetails.d.ts +6 -1
  169. package/models/api/gridCoreApi.d.ts +2 -6
  170. package/models/api/gridFilterApi.d.ts +8 -1
  171. package/models/api/gridLocaleTextApi.d.ts +1 -0
  172. package/models/api/gridRowsMetaApi.d.ts +24 -0
  173. package/models/api/gridStateApi.d.ts +14 -3
  174. package/models/colDef/gridColDef.d.ts +4 -4
  175. package/models/events/gridEventLookup.d.ts +16 -1
  176. package/models/events/gridEvents.d.ts +3 -1
  177. package/models/events/gridEvents.js +2 -0
  178. package/models/gridApiCaches.d.ts +6 -0
  179. package/models/gridApiCaches.js +1 -0
  180. package/models/gridIconSlotsComponent.d.ts +5 -0
  181. package/models/params/gridMenuParams.d.ts +7 -0
  182. package/models/params/gridMenuParams.js +1 -0
  183. package/models/params/gridRowParams.d.ts +1 -1
  184. package/models/params/index.d.ts +1 -0
  185. package/models/params/index.js +2 -1
  186. package/models/props/DataGridProps.d.ts +24 -2
  187. package/modern/DataGrid/DataGrid.js +26 -1
  188. package/modern/colDef/gridCheckboxSelectionColDef.js +2 -1
  189. package/modern/colDef/gridNumericColDef.js +1 -1
  190. package/modern/components/GridRow.js +51 -12
  191. package/modern/components/cell/GridCell.js +12 -7
  192. package/modern/components/columnHeaders/GridColumnHeaderItem.js +9 -6
  193. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +0 -1
  194. package/modern/components/columnSelection/GridHeaderCheckbox.js +0 -1
  195. package/modern/components/containers/GridRootStyles.js +8 -3
  196. package/modern/components/menu/GridMenu.js +9 -2
  197. package/modern/components/panel/GridColumnsPanel.js +12 -7
  198. package/modern/components/panel/GridPanelWrapper.js +3 -3
  199. package/modern/components/panel/filterPanel/GridFilterForm.js +88 -8
  200. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -1
  201. package/modern/components/panel/filterPanel/GridFilterPanel.js +26 -11
  202. package/modern/components/toolbar/GridToolbarColumnsButton.js +0 -1
  203. package/modern/components/toolbar/GridToolbarDensitySelector.js +0 -1
  204. package/modern/components/toolbar/GridToolbarExportContainer.js +0 -1
  205. package/modern/components/toolbar/GridToolbarFilterButton.js +0 -1
  206. package/modern/components/toolbar/GridToolbarQuickFilter.js +57 -4
  207. package/modern/constants/defaultGridSlotsComponents.js +2 -1
  208. package/modern/constants/gridClasses.js +1 -1
  209. package/modern/constants/localeTextConstants.js +1 -0
  210. package/modern/hooks/core/useGridStateInitialization.js +19 -6
  211. package/modern/hooks/features/columnMenu/useGridColumnMenu.js +22 -0
  212. package/modern/hooks/features/columns/useGridColumnSpanning.js +1 -1
  213. package/modern/hooks/features/columns/useGridColumns.js +12 -14
  214. package/modern/hooks/features/dimensions/useGridDimensions.js +9 -8
  215. package/modern/hooks/features/editRows/useGridCellEditing.new.js +10 -3
  216. package/modern/hooks/features/editRows/useGridEditing.old.js +1 -1
  217. package/modern/hooks/features/editRows/useGridRowEditing.new.js +9 -3
  218. package/modern/hooks/features/events/useGridEvents.js +2 -0
  219. package/modern/hooks/features/filter/gridFilterSelector.js +6 -0
  220. package/modern/hooks/features/filter/gridFilterUtils.js +3 -6
  221. package/modern/hooks/features/filter/useGridFilter.js +29 -12
  222. package/modern/hooks/features/pagination/useGridPage.js +1 -1
  223. package/modern/hooks/features/pagination/useGridPageSize.js +1 -1
  224. package/modern/hooks/features/rows/useGridRowsMeta.js +129 -59
  225. package/modern/hooks/features/selection/useGridSelection.js +1 -1
  226. package/modern/hooks/features/selection/useGridSelectionPreProcessors.js +8 -6
  227. package/modern/hooks/features/sorting/useGridSorting.js +1 -1
  228. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +65 -11
  229. package/modern/index.js +1 -1
  230. package/modern/locales/arSD.js +1 -0
  231. package/modern/locales/bgBG.js +1 -0
  232. package/modern/locales/csCZ.js +1 -0
  233. package/modern/locales/daDK.js +1 -0
  234. package/modern/locales/deDE.js +1 -0
  235. package/modern/locales/elGR.js +1 -0
  236. package/modern/locales/esES.js +1 -0
  237. package/modern/locales/faIR.js +1 -0
  238. package/modern/locales/fiFI.js +1 -0
  239. package/modern/locales/frFR.js +1 -0
  240. package/modern/locales/heIL.js +10 -9
  241. package/modern/locales/huHU.js +1 -0
  242. package/modern/locales/itIT.js +1 -0
  243. package/modern/locales/jaJP.js +25 -24
  244. package/modern/locales/koKR.js +1 -0
  245. package/modern/locales/nbNO.js +116 -0
  246. package/modern/locales/nlNL.js +1 -0
  247. package/modern/locales/plPL.js +1 -0
  248. package/modern/locales/ptBR.js +1 -0
  249. package/modern/locales/ruRU.js +7 -6
  250. package/modern/locales/skSK.js +1 -0
  251. package/modern/locales/trTR.js +8 -7
  252. package/modern/locales/ukUA.js +1 -0
  253. package/modern/locales/viVN.js +1 -0
  254. package/modern/locales/zhCN.js +1 -0
  255. package/modern/models/events/gridEvents.js +2 -0
  256. package/modern/models/gridApiCaches.js +1 -0
  257. package/modern/models/params/gridMenuParams.js +1 -0
  258. package/modern/models/params/index.js +2 -1
  259. package/node/DataGrid/DataGrid.js +26 -1
  260. package/node/colDef/gridCheckboxSelectionColDef.js +4 -2
  261. package/node/colDef/gridNumericColDef.js +1 -1
  262. package/node/components/GridRow.js +53 -12
  263. package/node/components/cell/GridCell.js +12 -7
  264. package/node/components/columnHeaders/GridColumnHeaderItem.js +9 -6
  265. package/node/components/columnSelection/GridCellCheckboxRenderer.js +0 -1
  266. package/node/components/columnSelection/GridHeaderCheckbox.js +0 -1
  267. package/node/components/containers/GridRootStyles.js +8 -3
  268. package/node/components/menu/GridMenu.js +10 -2
  269. package/node/components/panel/GridColumnsPanel.js +12 -7
  270. package/node/components/panel/GridPanelWrapper.js +5 -3
  271. package/node/components/panel/filterPanel/GridFilterForm.js +91 -9
  272. package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -1
  273. package/node/components/panel/filterPanel/GridFilterPanel.js +28 -11
  274. package/node/components/toolbar/GridToolbarColumnsButton.js +0 -1
  275. package/node/components/toolbar/GridToolbarDensitySelector.js +0 -1
  276. package/node/components/toolbar/GridToolbarExportContainer.js +0 -1
  277. package/node/components/toolbar/GridToolbarFilterButton.js +0 -1
  278. package/node/components/toolbar/GridToolbarQuickFilter.js +61 -4
  279. package/node/constants/defaultGridSlotsComponents.js +2 -1
  280. package/node/constants/gridClasses.js +1 -1
  281. package/node/constants/localeTextConstants.js +1 -0
  282. package/node/hooks/core/useGridStateInitialization.js +19 -6
  283. package/node/hooks/features/columnMenu/useGridColumnMenu.js +23 -0
  284. package/node/hooks/features/columns/useGridColumnSpanning.js +11 -16
  285. package/node/hooks/features/columns/useGridColumns.js +13 -15
  286. package/node/hooks/features/dimensions/useGridDimensions.js +9 -8
  287. package/node/hooks/features/editRows/useGridCellEditing.new.js +11 -4
  288. package/node/hooks/features/editRows/useGridEditing.old.js +1 -1
  289. package/node/hooks/features/editRows/useGridRowEditing.new.js +10 -4
  290. package/node/hooks/features/events/useGridEvents.js +2 -0
  291. package/node/hooks/features/filter/gridFilterSelector.js +9 -2
  292. package/node/hooks/features/filter/gridFilterUtils.js +4 -5
  293. package/node/hooks/features/filter/useGridFilter.js +28 -11
  294. package/node/hooks/features/pagination/useGridPage.js +1 -1
  295. package/node/hooks/features/pagination/useGridPageSize.js +1 -1
  296. package/node/hooks/features/rows/useGridRowsMeta.js +136 -69
  297. package/node/hooks/features/selection/useGridSelection.js +1 -1
  298. package/node/hooks/features/selection/useGridSelectionPreProcessors.js +7 -5
  299. package/node/hooks/features/sorting/useGridSorting.js +1 -1
  300. package/node/hooks/features/virtualization/useGridVirtualScroller.js +65 -12
  301. package/node/index.js +1 -1
  302. package/node/locales/arSD.js +1 -0
  303. package/node/locales/bgBG.js +1 -0
  304. package/node/locales/csCZ.js +1 -0
  305. package/node/locales/daDK.js +1 -0
  306. package/node/locales/deDE.js +1 -0
  307. package/node/locales/elGR.js +1 -0
  308. package/node/locales/esES.js +1 -0
  309. package/node/locales/faIR.js +1 -0
  310. package/node/locales/fiFI.js +1 -0
  311. package/node/locales/frFR.js +1 -0
  312. package/node/locales/heIL.js +10 -9
  313. package/node/locales/huHU.js +1 -0
  314. package/node/locales/itIT.js +1 -0
  315. package/node/locales/jaJP.js +25 -24
  316. package/node/locales/koKR.js +1 -0
  317. package/node/locales/nbNO.js +126 -0
  318. package/node/locales/nlNL.js +1 -0
  319. package/node/locales/plPL.js +1 -0
  320. package/node/locales/ptBR.js +1 -0
  321. package/node/locales/ruRU.js +7 -6
  322. package/node/locales/skSK.js +1 -0
  323. package/node/locales/trTR.js +8 -7
  324. package/node/locales/ukUA.js +1 -0
  325. package/node/locales/viVN.js +1 -0
  326. package/node/locales/zhCN.js +1 -0
  327. package/node/models/events/gridEvents.js +2 -0
  328. package/node/models/gridApiCaches.js +5 -0
  329. package/node/models/params/gridMenuParams.js +5 -0
  330. package/node/models/params/index.js +13 -0
  331. package/package.json +6 -5
@@ -19,7 +19,7 @@ import { gridRowsMetaSelector } from '../rows/gridRowsMetaSelector';
19
19
  import { getFirstNonSpannedColumnToRender } from '../columns/gridColumnsUtils'; // Uses binary search to avoid looping through all possible positions
20
20
 
21
21
  import { jsx as _jsx } from "react/jsx-runtime";
22
- export function getIndexFromScroll(offset, positions, sliceStart = 0, sliceEnd = positions.length) {
22
+ export function binarySearch(offset, positions, sliceStart = 0, sliceEnd = positions.length) {
23
23
  if (positions.length <= 0) {
24
24
  return -1;
25
25
  }
@@ -30,8 +30,20 @@ export function getIndexFromScroll(offset, positions, sliceStart = 0, sliceEnd =
30
30
 
31
31
  const pivot = sliceStart + Math.floor((sliceEnd - sliceStart) / 2);
32
32
  const itemOffset = positions[pivot];
33
- return offset <= itemOffset ? getIndexFromScroll(offset, positions, sliceStart, pivot) : getIndexFromScroll(offset, positions, pivot + 1, sliceEnd);
33
+ return offset <= itemOffset ? binarySearch(offset, positions, sliceStart, pivot) : binarySearch(offset, positions, pivot + 1, sliceEnd);
34
34
  }
35
+
36
+ function exponentialSearch(offset, positions, index) {
37
+ let interval = 1;
38
+
39
+ while (index < positions.length && positions[index] < offset) {
40
+ index += interval;
41
+ interval *= 2;
42
+ }
43
+
44
+ return binarySearch(offset, positions, Math.floor(index / 2), Math.min(index, positions.length));
45
+ }
46
+
35
47
  export const getRenderableIndexes = ({
36
48
  firstIndex,
37
49
  lastIndex,
@@ -73,6 +85,22 @@ export const useGridVirtualScroller = props => {
73
85
  });
74
86
  const [containerWidth, setContainerWidth] = React.useState(null);
75
87
  const prevTotalWidth = React.useRef(columnsTotalWidth);
88
+ const getNearestIndexToRender = React.useCallback(offset => {
89
+ const lastMeasuredIndex = Math.max(0, apiRef.current.unstable_getLastMeasuredRowIndex());
90
+ const allRowsMeasured = lastMeasuredIndex === Infinity;
91
+
92
+ if (allRowsMeasured || rowsMeta.positions[lastMeasuredIndex] >= offset) {
93
+ // If all rows were measured (when no row has "auto" as height) or all rows before the offset
94
+ // were measured, then use a binary search because it's faster.
95
+ return binarySearch(offset, rowsMeta.positions);
96
+ } // Otherwise, use an exponential search.
97
+ // If rows have "auto" as height, their positions will be based on estimated heights.
98
+ // In this case, we can skip several steps until we find a position higher than the offset.
99
+ // Inspired by https://github.com/bvaughn/react-virtualized/blob/master/source/Grid/utils/CellSizeAndPositionManager.js
100
+
101
+
102
+ return exponentialSearch(offset, rowsMeta.positions, lastMeasuredIndex);
103
+ }, [apiRef, rowsMeta.positions]);
76
104
  const computeRenderContext = React.useCallback(() => {
77
105
  if (disableVirtualization) {
78
106
  return {
@@ -86,18 +114,39 @@ export const useGridVirtualScroller = props => {
86
114
  const {
87
115
  top,
88
116
  left
89
- } = scrollPosition.current;
90
- const firstRowIndex = getIndexFromScroll(top, rowsMeta.positions);
91
- const lastRowIndex = rootProps.autoHeight ? firstRowIndex + currentPage.rows.length : getIndexFromScroll(top + rootRef.current.clientHeight, rowsMeta.positions);
92
- const firstColumnIndex = getIndexFromScroll(left, columnPositions);
93
- const lastColumnIndex = getIndexFromScroll(left + containerWidth, columnPositions);
117
+ } = scrollPosition.current; // Clamp the value because the search may return an index out of bounds.
118
+ // In the last index, this is not needed because Array.slice doesn't include it.
119
+
120
+ const firstRowIndex = Math.min(getNearestIndexToRender(top), rowsMeta.positions.length - 1);
121
+ const lastRowIndex = rootProps.autoHeight ? firstRowIndex + currentPage.rows.length : getNearestIndexToRender(top + rootRef.current.clientHeight);
122
+ let hasRowWithAutoHeight = false;
123
+ let firstColumnIndex = 0;
124
+ let lastColumnIndex = columnPositions.length;
125
+ const [firstRowToRender, lastRowToRender] = getRenderableIndexes({
126
+ firstIndex: firstRowIndex,
127
+ lastIndex: lastRowIndex,
128
+ minFirstIndex: 0,
129
+ maxLastIndex: currentPage.rows.length,
130
+ buffer: rootProps.rowBuffer
131
+ });
132
+
133
+ for (let i = firstRowToRender; i < lastRowToRender && !hasRowWithAutoHeight; i += 1) {
134
+ const row = currentPage.rows[i];
135
+ hasRowWithAutoHeight = apiRef.current.unstable_rowHasAutoHeight(row.id);
136
+ }
137
+
138
+ if (!hasRowWithAutoHeight) {
139
+ firstColumnIndex = binarySearch(left, columnPositions);
140
+ lastColumnIndex = binarySearch(left + containerWidth, columnPositions);
141
+ }
142
+
94
143
  return {
95
144
  firstRowIndex,
96
145
  lastRowIndex,
97
146
  firstColumnIndex,
98
147
  lastColumnIndex
99
148
  };
100
- }, [disableVirtualization, rowsMeta.positions, rootProps.autoHeight, currentPage.rows.length, columnPositions, containerWidth, visibleColumns.length]);
149
+ }, [disableVirtualization, getNearestIndexToRender, rowsMeta.positions.length, rootProps.autoHeight, rootProps.rowBuffer, currentPage.rows, columnPositions, visibleColumns.length, apiRef, containerWidth]);
101
150
  React.useEffect(() => {
102
151
  if (disableVirtualization) {
103
152
  renderZoneRef.current.style.transform = `translate3d(0px, 0px, 0px)`;
@@ -228,7 +277,8 @@ export const useGridVirtualScroller = props => {
228
277
  renderContext: nextRenderContext,
229
278
  minFirstColumn = renderZoneMinColumnIndex,
230
279
  maxLastColumn = renderZoneMaxColumnIndex,
231
- availableSpace = containerWidth
280
+ availableSpace = containerWidth,
281
+ ignoreAutoHeight
232
282
  } = params;
233
283
 
234
284
  if (!currentPage.range || !nextRenderContext || availableSpace == null) {
@@ -279,7 +329,7 @@ export const useGridVirtualScroller = props => {
279
329
  model
280
330
  } = renderedRows[i];
281
331
  const lastVisibleRowIndex = firstRowToRender + i === currentPage.rows.length - 1;
282
- const targetRowHeight = apiRef.current.unstable_getRowHeight(id);
332
+ const baseRowHeight = !apiRef.current.unstable_rowHasAutoHeight(id) || ignoreAutoHeight ? apiRef.current.unstable_getRowHeight(id) : 'auto';
283
333
  let isSelected;
284
334
 
285
335
  if (selectedRowsLookup[id] == null) {
@@ -293,7 +343,7 @@ export const useGridVirtualScroller = props => {
293
343
  rows.push( /*#__PURE__*/_jsx(rootProps.components.Row, _extends({
294
344
  row: model,
295
345
  rowId: id,
296
- rowHeight: targetRowHeight,
346
+ rowHeight: baseRowHeight,
297
347
  cellFocus: cellFocus // TODO move to inside the row
298
348
  ,
299
349
  cellTabIndex: cellTabIndex // TODO move to inside the row
@@ -352,6 +402,10 @@ export const useGridVirtualScroller = props => {
352
402
  rootStyle.overflowX = 'hidden';
353
403
  }
354
404
 
405
+ if (rootProps.autoHeight) {
406
+ rootStyle.overflowY = 'hidden';
407
+ }
408
+
355
409
  const getRenderContext = React.useCallback(() => {
356
410
  return prevRenderContext.current;
357
411
  }, []);
package/modern/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.11.1
1
+ /** @license MUI v5.12.2
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -107,6 +107,7 @@ const arSDGrid = {
107
107
  groupColumn: name => `تجميع حسب ${name}`,
108
108
  unGroupColumn: name => `إيقاف التجميع حسب ${name}`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'توسيع',
111
112
  collapseDetailPanel: 'طوي' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -107,6 +107,7 @@ const bgBGGrid = {
107
107
  groupColumn: name => `Групирай по ${name}`,
108
108
  unGroupColumn: name => `Спри групиране по ${name}`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'Разгъване',
111
112
  collapseDetailPanel: 'Свиване' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -141,6 +141,7 @@ const csCZGrid = {
141
141
  groupingColumnHeaderName: 'Skupina',
142
142
  groupColumn: name => `Zoskupit podle ${name}`,
143
143
  unGroupColumn: name => `Přestat zoskupovat podle ${name}` // Master/detail
144
+ // detailPanelToggle: 'Detail panel toggle',
144
145
  // expandDetailPanel: 'Expand',
145
146
  // collapseDetailPanel: 'Collapse',
146
147
  // Row reordering text
@@ -107,6 +107,7 @@ const daDKGrid = {
107
107
  groupColumn: name => `Gruppér efter ${name}`,
108
108
  unGroupColumn: name => `Fjern gruppéring efter ${name}`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'Udvid',
111
112
  collapseDetailPanel: 'Kollaps' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -107,6 +107,7 @@ const deDEGrid = {
107
107
  groupColumn: name => `Gruppieren nach ${name}`,
108
108
  unGroupColumn: name => `Gruppierung nach ${name} aufheben`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'Aufklappen',
111
112
  collapseDetailPanel: 'Zuklappen',
112
113
  // Row reordering text
@@ -105,6 +105,7 @@ const elGRGrid = {
105
105
  // groupColumn: name => `Group by ${name}`,
106
106
  // unGroupColumn: name => `Stop grouping by ${name}`,
107
107
  // Master/detail
108
+ // detailPanelToggle: 'Detail panel toggle',
108
109
  // expandDetailPanel: 'Expand',
109
110
  // collapseDetailPanel: 'Collapse',
110
111
  // Row reordering text
@@ -106,6 +106,7 @@ const esESGrid = {
106
106
  // groupColumn: name => `Group by ${name}`,
107
107
  // unGroupColumn: name => `Stop grouping by ${name}`,
108
108
  // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text
@@ -107,6 +107,7 @@ const faIRGrid = {
107
107
  groupColumn: name => `گروه‌بندی براساس ${name}`,
108
108
  unGroupColumn: name => `لغو گروه‌بندی براساس ${name}`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'بازکردن پنل جزئیات',
111
112
  collapseDetailPanel: 'بستن پنل جزئیات' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -106,6 +106,7 @@ const fiFIGrid = {
106
106
  // groupColumn: name => `Group by ${name}`,
107
107
  // unGroupColumn: name => `Stop grouping by ${name}`,
108
108
  // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text
@@ -106,6 +106,7 @@ const frFRGrid = {
106
106
  groupingColumnHeaderName: 'Groupe',
107
107
  groupColumn: name => `Grouper par ${name}`,
108
108
  unGroupColumn: name => `Arrêter de grouper par ${name}` // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text
@@ -21,15 +21,15 @@ const heILGrid = {
21
21
  toolbarFiltersTooltipShow: 'הצג מסננים',
22
22
  toolbarFiltersTooltipActive: count => count !== 1 ? `${count} מסננים פעילים` : `מסנן אחד פעיל`,
23
23
  // Quick filter toolbar field
24
- // toolbarQuickFilterPlaceholder: 'Search...',
25
- // toolbarQuickFilterLabel: 'Search',
26
- // toolbarQuickFilterDeleteIconLabel: 'Clear',
24
+ toolbarQuickFilterPlaceholder: 'חיפוש...',
25
+ toolbarQuickFilterLabel: 'חיפוש',
26
+ toolbarQuickFilterDeleteIconLabel: 'ניקוי',
27
27
  // Export selector toolbar button text
28
28
  toolbarExport: 'ייצוא',
29
29
  toolbarExportLabel: 'ייצוא',
30
- toolbarExportCSV: 'הורדה כ- CSV',
30
+ toolbarExportCSV: 'ייצוא ל- CSV',
31
31
  toolbarExportPrint: 'הדפסה',
32
- // toolbarExportExcel: 'Download as Excel',
32
+ toolbarExportExcel: 'ייצוא ל- Excel',
33
33
  // Columns panel text
34
34
  columnsPanelTextFieldLabel: 'חפש עמודה',
35
35
  columnsPanelTextFieldPlaceholder: 'כותרת עמודה',
@@ -39,7 +39,7 @@ const heILGrid = {
39
39
  // Filter panel text
40
40
  filterPanelAddFilter: 'הוסף מסנן',
41
41
  filterPanelDeleteIconLabel: 'מחק',
42
- // filterPanelLinkOperator: 'Logic operator',
42
+ filterPanelLinkOperator: 'אופרטור לוגי',
43
43
  filterPanelOperators: 'אופרטור',
44
44
  // TODO v6: rename to filterPanelOperator
45
45
  filterPanelOperatorAnd: 'וגם',
@@ -107,9 +107,10 @@ const heILGrid = {
107
107
  groupColumn: name => `קבץ לפי ${name}`,
108
108
  unGroupColumn: name => `הפסק לקבץ לפי ${name}`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'הרחב',
111
- collapseDetailPanel: 'כווץ' // Row reordering text
112
- // rowReorderingHeaderName: 'Row reordering',
113
-
112
+ collapseDetailPanel: 'כווץ',
113
+ // Row reordering text
114
+ rowReorderingHeaderName: 'סידור שורות'
114
115
  };
115
116
  export const heIL = getGridLocalization(heILGrid, heILCore);
@@ -107,6 +107,7 @@ const huHUGrid = {
107
107
  groupColumn: name => `Csoportosítás ${name} szerint`,
108
108
  unGroupColumn: name => `${name} szerinti csoportosítás törlése`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'Kibontás',
111
112
  collapseDetailPanel: 'Összecsukás' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -106,6 +106,7 @@ const itITGrid = {
106
106
  groupingColumnHeaderName: 'Gruppo',
107
107
  groupColumn: name => `Raggruppa per ${name}`,
108
108
  unGroupColumn: name => `Annulla raggruppamento per ${name}` // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text
@@ -21,15 +21,15 @@ const jaJPGrid = {
21
21
  toolbarFiltersTooltipShow: 'フィルター表示',
22
22
  toolbarFiltersTooltipActive: count => `${count}件のフィルターを適用中`,
23
23
  // Quick filter toolbar field
24
- // toolbarQuickFilterPlaceholder: 'Search...',
25
- // toolbarQuickFilterLabel: 'Search',
26
- // toolbarQuickFilterDeleteIconLabel: 'Clear',
24
+ toolbarQuickFilterPlaceholder: '検索...',
25
+ toolbarQuickFilterLabel: '検索',
26
+ toolbarQuickFilterDeleteIconLabel: 'クリア',
27
27
  // Export selector toolbar button text
28
28
  toolbarExport: 'エクスポート',
29
29
  toolbarExportLabel: 'エクスポート',
30
30
  toolbarExportCSV: 'CSVダウンロード',
31
- // toolbarExportPrint: 'Print',
32
- // toolbarExportExcel: 'Download as Excel',
31
+ toolbarExportPrint: '印刷',
32
+ toolbarExportExcel: 'Excelダウンロード',
33
33
  // Columns panel text
34
34
  columnsPanelTextFieldLabel: '列検索',
35
35
  columnsPanelTextFieldPlaceholder: '検索クエリを入力...',
@@ -60,7 +60,7 @@ const jaJPGrid = {
60
60
  filterOperatorOnOrBefore: '...以前',
61
61
  filterOperatorIsEmpty: '...空である',
62
62
  filterOperatorIsNotEmpty: '...空でない',
63
- // filterOperatorIsAnyOf: 'is any of',
63
+ filterOperatorIsAnyOf: '...のいずれか',
64
64
  // Filter values text
65
65
  // filterValueAny: 'any',
66
66
  // filterValueTrue: 'true',
@@ -85,31 +85,32 @@ const jaJPGrid = {
85
85
  footerTotalVisibleRows: (visibleCount, totalCount) => `${visibleCount.toLocaleString()} / ${totalCount.toLocaleString()}`,
86
86
  // Checkbox selection text
87
87
  checkboxSelectionHeaderName: 'チェックボックス',
88
- // checkboxSelectionSelectAllRows: 'Select all rows',
89
- // checkboxSelectionUnselectAllRows: 'Unselect all rows',
90
- // checkboxSelectionSelectRow: 'Select row',
91
- // checkboxSelectionUnselectRow: 'Unselect row',
88
+ checkboxSelectionSelectAllRows: 'すべての行を選択',
89
+ checkboxSelectionUnselectAllRows: 'すべての行選択を解除',
90
+ checkboxSelectionSelectRow: '行を選択',
91
+ checkboxSelectionUnselectRow: '行選択を解除',
92
92
  // Boolean cell text
93
93
  booleanCellTrueLabel: '真',
94
- booleanCellFalseLabel: '偽' // Actions cell more text
94
+ booleanCellFalseLabel: '偽',
95
+ // Actions cell more text
95
96
  // actionsCellMore: 'more',
96
97
  // Column pinning text
97
- // pinToLeft: 'Pin to left',
98
- // pinToRight: 'Pin to right',
99
- // unpin: 'Unpin',
98
+ pinToLeft: '左側に固定',
99
+ pinToRight: '右側に固定',
100
+ unpin: '固定解除',
100
101
  // Tree Data
101
- // treeDataGroupingHeaderName: 'Group',
102
- // treeDataExpand: 'see children',
103
- // treeDataCollapse: 'hide children',
102
+ treeDataGroupingHeaderName: 'グループ',
103
+ treeDataExpand: '展開',
104
+ treeDataCollapse: '折りたたみ',
104
105
  // Grouping columns
105
- // groupingColumnHeaderName: 'Group',
106
- // groupColumn: name => `Group by ${name}`,
107
- // unGroupColumn: name => `Stop grouping by ${name}`,
106
+ groupingColumnHeaderName: 'グループ',
107
+ groupColumn: name => `${name}でグループ化`,
108
+ unGroupColumn: name => `${name}のグループを解除`,
108
109
  // Master/detail
109
- // expandDetailPanel: 'Expand',
110
- // collapseDetailPanel: 'Collapse',
110
+ // detailPanelToggle: 'Detail panel toggle',
111
+ expandDetailPanel: '展開',
112
+ collapseDetailPanel: '折りたたみ',
111
113
  // Row reordering text
112
- // rowReorderingHeaderName: 'Row reordering',
113
-
114
+ rowReorderingHeaderName: '行並び替え'
114
115
  };
115
116
  export const jaJP = getGridLocalization(jaJPGrid, jaJPCore);
@@ -106,6 +106,7 @@ const koKRGrid = {
106
106
  // groupColumn: name => `Group by ${name}`,
107
107
  // unGroupColumn: name => `Stop grouping by ${name}`,
108
108
  // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text
@@ -0,0 +1,116 @@
1
+ import { nbNO as nbNOCore } from '@mui/material/locale';
2
+ import { getGridLocalization } from '../utils/getGridLocalization';
3
+ const nbNOGrid = {
4
+ // Root
5
+ noRowsLabel: 'Ingen rader',
6
+ noResultsOverlayLabel: 'Fant ingen resultat.',
7
+ errorOverlayDefaultLabel: 'Det skjedde en feil.',
8
+ // Density selector toolbar button text
9
+ toolbarDensity: 'Tetthet',
10
+ toolbarDensityLabel: 'Tetthet',
11
+ toolbarDensityCompact: 'Kompakt',
12
+ toolbarDensityStandard: 'Standard',
13
+ toolbarDensityComfortable: 'Komfortabelt',
14
+ // Columns selector toolbar button text
15
+ toolbarColumns: 'Kolonner',
16
+ toolbarColumnsLabel: 'Velg kolonner',
17
+ // Filters toolbar button text
18
+ toolbarFilters: 'Filter',
19
+ toolbarFiltersLabel: 'Vis filter',
20
+ toolbarFiltersTooltipHide: 'Skjul fitler',
21
+ toolbarFiltersTooltipShow: 'Vis filter',
22
+ toolbarFiltersTooltipActive: count => count !== 1 ? `${count} aktive filter` : `${count} aktivt filter`,
23
+ // Quick filter toolbar field
24
+ toolbarQuickFilterPlaceholder: 'Søk...',
25
+ toolbarQuickFilterLabel: 'Søk',
26
+ toolbarQuickFilterDeleteIconLabel: 'Slett',
27
+ // Export selector toolbar button text
28
+ toolbarExport: 'Eksporter',
29
+ toolbarExportLabel: 'Eksporter',
30
+ toolbarExportCSV: 'Last ned som CSV',
31
+ toolbarExportPrint: 'Skriv ut',
32
+ toolbarExportExcel: 'Last ned som Excel',
33
+ // Columns panel text
34
+ columnsPanelTextFieldLabel: 'Finn kolonne',
35
+ columnsPanelTextFieldPlaceholder: 'Kolonne tittel',
36
+ columnsPanelDragIconLabel: 'Reorganiser kolonne',
37
+ columnsPanelShowAllButton: 'Vis alle',
38
+ columnsPanelHideAllButton: 'Skjul alle',
39
+ // Filter panel text
40
+ filterPanelAddFilter: 'Legg til filter',
41
+ filterPanelDeleteIconLabel: 'Slett',
42
+ filterPanelLinkOperator: 'Logisk operator',
43
+ filterPanelOperators: 'Operatører',
44
+ // TODO v6: rename to filterPanelOperator
45
+ filterPanelOperatorAnd: 'Og',
46
+ filterPanelOperatorOr: 'Eller',
47
+ filterPanelColumns: 'Kolonner',
48
+ filterPanelInputLabel: 'Verdi',
49
+ filterPanelInputPlaceholder: 'Filter verdi',
50
+ // Filter operators text
51
+ filterOperatorContains: 'inneholder',
52
+ filterOperatorEquals: 'er lik',
53
+ filterOperatorStartsWith: 'starter med',
54
+ filterOperatorEndsWith: 'slutter med',
55
+ filterOperatorIs: 'er',
56
+ filterOperatorNot: 'er ikke',
57
+ filterOperatorAfter: 'er etter',
58
+ filterOperatorOnOrAfter: 'er på eller etter',
59
+ filterOperatorBefore: 'er før',
60
+ filterOperatorOnOrBefore: 'er på eller før',
61
+ filterOperatorIsEmpty: 'er tom',
62
+ filterOperatorIsNotEmpty: 'er ikke tom',
63
+ filterOperatorIsAnyOf: 'er en av',
64
+ // Filter values text
65
+ filterValueAny: 'noen',
66
+ filterValueTrue: 'sant',
67
+ filterValueFalse: 'usant',
68
+ // Column menu text
69
+ columnMenuLabel: 'Meny',
70
+ columnMenuShowColumns: 'Vis kolonner',
71
+ columnMenuFilter: 'Filter',
72
+ columnMenuHideColumn: 'Skjul',
73
+ columnMenuUnsort: 'Usorter',
74
+ columnMenuSortAsc: 'Sorter ØKENDE',
75
+ columnMenuSortDesc: 'Sorter SYNKENDE',
76
+ // Column header text
77
+ columnHeaderFiltersTooltipActive: count => count !== 1 ? `${count} aktive filter` : `${count} aktivt filter`,
78
+ columnHeaderFiltersLabel: 'Vis filter',
79
+ columnHeaderSortIconLabel: 'Sorter',
80
+ // Rows selected footer text
81
+ footerRowSelected: count => count !== 1 ? `${count.toLocaleString()} rader valgt` : `${count.toLocaleString()} rad valgt`,
82
+ // Total row amount footer text
83
+ footerTotalRows: 'Totalt antall rader:',
84
+ // Total visible row amount footer text
85
+ footerTotalVisibleRows: (visibleCount, totalCount) => `${visibleCount.toLocaleString()} av ${totalCount.toLocaleString()}`,
86
+ // Checkbox selection text
87
+ checkboxSelectionHeaderName: 'Avmerkingsboks valgt',
88
+ checkboxSelectionSelectAllRows: 'Velg alle rader',
89
+ checkboxSelectionUnselectAllRows: 'Velg bort alle rader',
90
+ checkboxSelectionSelectRow: 'Velg rad',
91
+ checkboxSelectionUnselectRow: 'Velg bort rad',
92
+ // Boolean cell text
93
+ booleanCellTrueLabel: 'sant',
94
+ booleanCellFalseLabel: 'usant',
95
+ // Actions cell more text
96
+ actionsCellMore: 'mer',
97
+ // Column pinning text
98
+ pinToLeft: 'Fest til venstre',
99
+ pinToRight: 'Fest til høyre',
100
+ unpin: 'Løsne',
101
+ // Tree Data
102
+ treeDataGroupingHeaderName: 'Grupper',
103
+ treeDataExpand: 'se barn',
104
+ treeDataCollapse: 'skjul barn',
105
+ // Grouping columns
106
+ groupingColumnHeaderName: 'Grupper',
107
+ groupColumn: name => `Grupper på ${name}`,
108
+ unGroupColumn: name => `Stopp å grupper på ${name}`,
109
+ // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
111
+ expandDetailPanel: 'Utvid',
112
+ collapseDetailPanel: 'Kollaps',
113
+ // Row reordering text
114
+ rowReorderingHeaderName: 'Rad reorganisering'
115
+ };
116
+ export const nbNO = getGridLocalization(nbNOGrid, nbNOCore);
@@ -106,6 +106,7 @@ const nlNLGrid = {
106
106
  groupingColumnHeaderName: 'Groep',
107
107
  groupColumn: name => `Groepeer op ${name}`,
108
108
  unGroupColumn: name => `Stop groeperen op ${name}` // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text
@@ -107,6 +107,7 @@ const plPLGrid = {
107
107
  groupColumn: name => `Grupuj według ${name}`,
108
108
  unGroupColumn: name => `Rozgrupuj ${name}`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'Rozwiń',
111
112
  collapseDetailPanel: 'Zwiń' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -107,6 +107,7 @@ const ptBRGrid = {
107
107
  groupColumn: name => `Agrupar por ${name}`,
108
108
  unGroupColumn: name => `Parar agrupamento por ${name}`,
109
109
  // Master/detail
110
+ detailPanelToggle: 'Painel de detalhes',
110
111
  expandDetailPanel: 'Expandir',
111
112
  collapseDetailPanel: 'Esconder' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -40,7 +40,7 @@ const ruRUGrid = {
40
40
  toolbarExportLabel: 'Экспорт',
41
41
  toolbarExportCSV: 'Скачать в формате CSV',
42
42
  toolbarExportPrint: 'Печать',
43
- // toolbarExportExcel: 'Download as Excel',
43
+ toolbarExportExcel: 'Скачать в формате Excel',
44
44
  // Columns panel text
45
45
  columnsPanelTextFieldLabel: 'Найти столбец',
46
46
  columnsPanelTextFieldPlaceholder: 'Заголовок столбца',
@@ -71,7 +71,7 @@ const ruRUGrid = {
71
71
  filterOperatorOnOrBefore: 'меньше или равно',
72
72
  filterOperatorIsEmpty: 'пустой',
73
73
  filterOperatorIsNotEmpty: 'не пустой',
74
- // filterOperatorIsAnyOf: 'is any of',
74
+ filterOperatorIsAnyOf: 'любой из',
75
75
  // Filter values text
76
76
  filterValueAny: 'любой',
77
77
  filterValueTrue: 'истина',
@@ -138,10 +138,11 @@ const ruRUGrid = {
138
138
  // Grouping columns
139
139
  groupingColumnHeaderName: 'Группа',
140
140
  groupColumn: name => `Сгруппировать по ${name}`,
141
- unGroupColumn: name => `Разгруппировать по ${name}` // Master/detail
142
- // expandDetailPanel: 'Expand',
143
- // collapseDetailPanel: 'Collapse',
144
- // Row reordering text
141
+ unGroupColumn: name => `Разгруппировать по ${name}`,
142
+ // Master/detail
143
+ // detailPanelToggle: 'Detail panel toggle',
144
+ expandDetailPanel: 'Развернуть',
145
+ collapseDetailPanel: 'Свернуть' // Row reordering text
145
146
  // rowReorderingHeaderName: 'Row reordering',
146
147
 
147
148
  };
@@ -141,6 +141,7 @@ const skSKGrid = {
141
141
  groupingColumnHeaderName: 'Skupina',
142
142
  groupColumn: name => `Zoskupiť podľa ${name}`,
143
143
  unGroupColumn: name => `Prestať zoskupovať podľa ${name}` // Master/detail
144
+ // detailPanelToggle: 'Detail panel toggle',
144
145
  // expandDetailPanel: 'Expand',
145
146
  // collapseDetailPanel: 'Collapse',
146
147
  // Row reordering text
@@ -21,15 +21,15 @@ const trTRGrid = {
21
21
  toolbarFiltersTooltipShow: 'Filtreleri göster',
22
22
  toolbarFiltersTooltipActive: count => `${count} aktif filtre`,
23
23
  // Quick filter toolbar field
24
- // toolbarQuickFilterPlaceholder: 'Search...',
25
- // toolbarQuickFilterLabel: 'Search',
26
- // toolbarQuickFilterDeleteIconLabel: 'Clear',
24
+ toolbarQuickFilterPlaceholder: 'Ara...',
25
+ toolbarQuickFilterLabel: 'Ara',
26
+ toolbarQuickFilterDeleteIconLabel: 'Temizle',
27
27
  // Export selector toolbar button text
28
28
  toolbarExport: 'Dışa aktar',
29
29
  toolbarExportLabel: 'Dışa aktar',
30
30
  toolbarExportCSV: 'CSV olarak aktar',
31
31
  toolbarExportPrint: 'Yazdır',
32
- // toolbarExportExcel: 'Download as Excel',
32
+ toolbarExportExcel: 'Excel olarak aktar',
33
33
  // Columns panel text
34
34
  columnsPanelTextFieldLabel: 'Sütun ara',
35
35
  columnsPanelTextFieldPlaceholder: 'Sütun adı',
@@ -62,9 +62,9 @@ const trTRGrid = {
62
62
  filterOperatorIsNotEmpty: 'dolu',
63
63
  filterOperatorIsAnyOf: 'herhangi biri',
64
64
  // Filter values text
65
- // filterValueAny: 'any',
66
- // filterValueTrue: 'true',
67
- // filterValueFalse: 'false',
65
+ filterValueAny: 'herhangi',
66
+ filterValueTrue: 'doğru',
67
+ filterValueFalse: 'yanlış',
68
68
  // Column menu text
69
69
  columnMenuLabel: 'Menü',
70
70
  columnMenuShowColumns: 'Sütunları göster',
@@ -107,6 +107,7 @@ const trTRGrid = {
107
107
  groupColumn: name => `${name} için grupla`,
108
108
  unGroupColumn: name => `${name} için gruplamayı kaldır`,
109
109
  // Master/detail
110
+ // detailPanelToggle: 'Detail panel toggle',
110
111
  expandDetailPanel: 'Genişlet',
111
112
  collapseDetailPanel: 'Gizle' // Row reordering text
112
113
  // rowReorderingHeaderName: 'Row reordering',
@@ -132,6 +132,7 @@ const ukUAGrid = {
132
132
  // groupColumn: name => `Group by ${name}`,
133
133
  // unGroupColumn: name => `Stop grouping by ${name}`,
134
134
  // Master/detail
135
+ // detailPanelToggle: 'Detail panel toggle',
135
136
  // expandDetailPanel: 'Expand',
136
137
  // collapseDetailPanel: 'Collapse',
137
138
  // Row reordering text
@@ -106,6 +106,7 @@ const viVNGrid = {
106
106
  // groupColumn: name => `Group by ${name}`,
107
107
  // unGroupColumn: name => `Stop grouping by ${name}`,
108
108
  // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text
@@ -106,6 +106,7 @@ const zhCNGrid = {
106
106
  // groupColumn: name => `Group by ${name}`,
107
107
  // unGroupColumn: name => `Stop grouping by ${name}`,
108
108
  // Master/detail
109
+ // detailPanelToggle: 'Detail panel toggle',
109
110
  // expandDetailPanel: 'Expand',
110
111
  // collapseDetailPanel: 'Collapse',
111
112
  // Row reordering text