@mui/x-data-grid 8.0.0-alpha.1 → 8.0.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/CHANGELOG.md +330 -7
  2. package/DataGrid/DataGrid.js +9 -17
  3. package/components/GridPagination.js +2 -1
  4. package/components/base/GridOverlays.d.ts +4 -3
  5. package/components/base/GridOverlays.js +2 -24
  6. package/components/base/index.d.ts +0 -1
  7. package/components/base/index.js +1 -2
  8. package/components/cell/GridCell.js +7 -10
  9. package/components/columnSelection/GridCellCheckboxRenderer.js +2 -3
  10. package/components/columnSelection/GridHeaderCheckbox.js +6 -4
  11. package/components/toolbar/GridToolbarColumnsButton.js +3 -4
  12. package/components/toolbar/GridToolbarDensitySelector.js +3 -4
  13. package/components/toolbar/GridToolbarExportContainer.js +3 -4
  14. package/components/toolbar/GridToolbarFilterButton.d.ts +2 -0
  15. package/components/toolbar/GridToolbarFilterButton.js +7 -6
  16. package/components/toolbar/GridToolbarQuickFilter.js +1 -0
  17. package/components/virtualization/GridVirtualScroller.js +5 -3
  18. package/constants/dataGridPropsDefaultValues.js +2 -4
  19. package/constants/localeTextConstants.js +0 -1
  20. package/hooks/core/strategyProcessing/gridStrategyProcessingApi.d.ts +25 -9
  21. package/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +5 -1
  22. package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +3 -6
  23. package/hooks/core/strategyProcessing/useGridStrategyProcessing.js +7 -8
  24. package/hooks/features/columnResize/useGridColumnResize.js +2 -1
  25. package/hooks/features/dimensions/gridDimensionsApi.d.ts +0 -4
  26. package/hooks/features/dimensions/useGridDimensions.js +3 -19
  27. package/hooks/features/editing/useGridCellEditing.js +3 -3
  28. package/hooks/features/editing/useGridRowEditing.js +3 -3
  29. package/hooks/features/index.d.ts +1 -0
  30. package/hooks/features/index.js +1 -0
  31. package/hooks/features/listView/gridListViewSelectors.d.ts +3 -1
  32. package/hooks/features/listView/gridListViewSelectors.js +3 -1
  33. package/hooks/features/listView/index.d.ts +1 -0
  34. package/hooks/features/listView/index.js +1 -0
  35. package/hooks/features/overlays/useGridOverlays.d.ts +7 -4
  36. package/hooks/features/overlays/useGridOverlays.js +19 -1
  37. package/hooks/features/rowSelection/useGridRowSelection.js +0 -9
  38. package/hooks/features/rowSelection/utils.js +2 -2
  39. package/hooks/features/rows/gridRowsInterfaces.d.ts +1 -8
  40. package/hooks/features/rows/gridRowsSelector.d.ts +0 -1
  41. package/hooks/features/rows/gridRowsSelector.js +0 -1
  42. package/hooks/features/rows/gridRowsUtils.js +0 -9
  43. package/hooks/features/rows/index.d.ts +1 -1
  44. package/hooks/features/rows/index.js +1 -1
  45. package/hooks/features/rows/useGridRows.js +12 -14
  46. package/hooks/features/rows/useGridRowsMeta.d.ts +1 -1
  47. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +1 -1
  48. package/hooks/features/virtualization/useGridVirtualScroller.js +55 -15
  49. package/index.js +1 -1
  50. package/internals/index.d.ts +1 -1
  51. package/internals/index.js +1 -1
  52. package/locales/arSD.js +0 -1
  53. package/locales/beBY.js +0 -1
  54. package/locales/bgBG.js +0 -1
  55. package/locales/csCZ.js +0 -1
  56. package/locales/daDK.js +0 -1
  57. package/locales/deDE.js +10 -13
  58. package/locales/elGR.js +0 -1
  59. package/locales/esES.js +10 -13
  60. package/locales/faIR.js +0 -1
  61. package/locales/fiFI.js +0 -1
  62. package/locales/frFR.js +0 -1
  63. package/locales/heIL.js +14 -17
  64. package/locales/hrHR.js +0 -1
  65. package/locales/huHU.js +0 -1
  66. package/locales/isIS.js +0 -1
  67. package/locales/itIT.js +0 -1
  68. package/locales/jaJP.js +0 -1
  69. package/locales/koKR.js +0 -1
  70. package/locales/nbNO.js +0 -1
  71. package/locales/nlNL.js +0 -1
  72. package/locales/nnNO.js +0 -1
  73. package/locales/plPL.js +0 -1
  74. package/locales/ptBR.js +10 -13
  75. package/locales/ptPT.js +10 -13
  76. package/locales/roRO.js +0 -1
  77. package/locales/ruRU.js +0 -1
  78. package/locales/skSK.js +0 -1
  79. package/locales/svSE.js +0 -1
  80. package/locales/trTR.js +12 -15
  81. package/locales/ukUA.js +0 -1
  82. package/locales/urPK.js +0 -1
  83. package/locales/viVN.js +0 -1
  84. package/locales/zhCN.js +10 -13
  85. package/locales/zhHK.js +0 -1
  86. package/locales/zhTW.js +0 -1
  87. package/models/api/gridCoreApi.d.ts +1 -1
  88. package/models/api/gridLocaleTextApi.d.ts +0 -1
  89. package/models/colDef/gridColDef.d.ts +24 -24
  90. package/models/events/gridEventLookup.d.ts +1 -0
  91. package/models/gridDataSource.d.ts +1 -1
  92. package/models/props/DataGridProps.d.ts +9 -17
  93. package/modern/DataGrid/DataGrid.js +9 -17
  94. package/modern/components/GridPagination.js +2 -1
  95. package/modern/components/base/GridOverlays.js +2 -24
  96. package/modern/components/base/index.js +1 -2
  97. package/modern/components/cell/GridCell.js +7 -10
  98. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +2 -3
  99. package/modern/components/columnSelection/GridHeaderCheckbox.js +6 -4
  100. package/modern/components/toolbar/GridToolbarColumnsButton.js +3 -4
  101. package/modern/components/toolbar/GridToolbarDensitySelector.js +3 -4
  102. package/modern/components/toolbar/GridToolbarExportContainer.js +3 -4
  103. package/modern/components/toolbar/GridToolbarFilterButton.js +7 -6
  104. package/modern/components/toolbar/GridToolbarQuickFilter.js +1 -0
  105. package/modern/components/virtualization/GridVirtualScroller.js +5 -3
  106. package/modern/constants/dataGridPropsDefaultValues.js +2 -4
  107. package/modern/constants/localeTextConstants.js +0 -1
  108. package/modern/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +5 -1
  109. package/modern/hooks/core/strategyProcessing/useGridStrategyProcessing.js +7 -8
  110. package/modern/hooks/features/columnResize/useGridColumnResize.js +2 -1
  111. package/modern/hooks/features/dimensions/useGridDimensions.js +3 -19
  112. package/modern/hooks/features/editing/useGridCellEditing.js +3 -3
  113. package/modern/hooks/features/editing/useGridRowEditing.js +3 -3
  114. package/modern/hooks/features/index.js +1 -0
  115. package/modern/hooks/features/listView/gridListViewSelectors.js +3 -1
  116. package/modern/hooks/features/listView/index.js +1 -0
  117. package/modern/hooks/features/overlays/useGridOverlays.js +19 -1
  118. package/modern/hooks/features/rowSelection/useGridRowSelection.js +0 -9
  119. package/modern/hooks/features/rowSelection/utils.js +2 -2
  120. package/modern/hooks/features/rows/gridRowsSelector.js +0 -1
  121. package/modern/hooks/features/rows/gridRowsUtils.js +0 -9
  122. package/modern/hooks/features/rows/index.js +1 -1
  123. package/modern/hooks/features/rows/useGridRows.js +12 -14
  124. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +55 -15
  125. package/modern/index.js +1 -1
  126. package/modern/internals/index.js +1 -1
  127. package/modern/locales/arSD.js +0 -1
  128. package/modern/locales/beBY.js +0 -1
  129. package/modern/locales/bgBG.js +0 -1
  130. package/modern/locales/csCZ.js +0 -1
  131. package/modern/locales/daDK.js +0 -1
  132. package/modern/locales/deDE.js +10 -13
  133. package/modern/locales/elGR.js +0 -1
  134. package/modern/locales/esES.js +10 -13
  135. package/modern/locales/faIR.js +0 -1
  136. package/modern/locales/fiFI.js +0 -1
  137. package/modern/locales/frFR.js +0 -1
  138. package/modern/locales/heIL.js +14 -17
  139. package/modern/locales/hrHR.js +0 -1
  140. package/modern/locales/huHU.js +0 -1
  141. package/modern/locales/isIS.js +0 -1
  142. package/modern/locales/itIT.js +0 -1
  143. package/modern/locales/jaJP.js +0 -1
  144. package/modern/locales/koKR.js +0 -1
  145. package/modern/locales/nbNO.js +0 -1
  146. package/modern/locales/nlNL.js +0 -1
  147. package/modern/locales/nnNO.js +0 -1
  148. package/modern/locales/plPL.js +0 -1
  149. package/modern/locales/ptBR.js +10 -13
  150. package/modern/locales/ptPT.js +10 -13
  151. package/modern/locales/roRO.js +0 -1
  152. package/modern/locales/ruRU.js +0 -1
  153. package/modern/locales/skSK.js +0 -1
  154. package/modern/locales/svSE.js +0 -1
  155. package/modern/locales/trTR.js +12 -15
  156. package/modern/locales/ukUA.js +0 -1
  157. package/modern/locales/urPK.js +0 -1
  158. package/modern/locales/viVN.js +0 -1
  159. package/modern/locales/zhCN.js +10 -13
  160. package/modern/locales/zhHK.js +0 -1
  161. package/modern/locales/zhTW.js +0 -1
  162. package/node/DataGrid/DataGrid.js +9 -17
  163. package/node/components/GridPagination.js +2 -1
  164. package/node/components/base/GridOverlays.js +2 -24
  165. package/node/components/base/index.js +0 -11
  166. package/node/components/cell/GridCell.js +7 -10
  167. package/node/components/columnSelection/GridCellCheckboxRenderer.js +2 -3
  168. package/node/components/columnSelection/GridHeaderCheckbox.js +6 -4
  169. package/node/components/toolbar/GridToolbarColumnsButton.js +3 -4
  170. package/node/components/toolbar/GridToolbarDensitySelector.js +3 -4
  171. package/node/components/toolbar/GridToolbarExportContainer.js +3 -4
  172. package/node/components/toolbar/GridToolbarFilterButton.js +7 -6
  173. package/node/components/toolbar/GridToolbarQuickFilter.js +1 -0
  174. package/node/components/virtualization/GridVirtualScroller.js +5 -3
  175. package/node/constants/dataGridPropsDefaultValues.js +2 -4
  176. package/node/constants/localeTextConstants.js +0 -1
  177. package/node/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +7 -1
  178. package/node/hooks/core/strategyProcessing/useGridStrategyProcessing.js +7 -8
  179. package/node/hooks/features/columnResize/useGridColumnResize.js +2 -1
  180. package/node/hooks/features/dimensions/useGridDimensions.js +2 -18
  181. package/node/hooks/features/editing/useGridCellEditing.js +2 -2
  182. package/node/hooks/features/editing/useGridRowEditing.js +2 -2
  183. package/node/hooks/features/index.js +11 -0
  184. package/node/hooks/features/listView/gridListViewSelectors.js +3 -1
  185. package/node/hooks/features/listView/index.js +16 -0
  186. package/node/hooks/features/overlays/useGridOverlays.js +21 -1
  187. package/node/hooks/features/rowSelection/useGridRowSelection.js +0 -9
  188. package/node/hooks/features/rowSelection/utils.js +2 -2
  189. package/node/hooks/features/rows/gridRowsSelector.js +1 -2
  190. package/node/hooks/features/rows/gridRowsUtils.js +0 -9
  191. package/node/hooks/features/rows/index.js +0 -7
  192. package/node/hooks/features/rows/useGridRows.js +11 -13
  193. package/node/hooks/features/virtualization/useGridVirtualScroller.js +55 -15
  194. package/node/index.js +1 -1
  195. package/node/internals/index.js +7 -0
  196. package/node/locales/arSD.js +0 -1
  197. package/node/locales/beBY.js +0 -1
  198. package/node/locales/bgBG.js +0 -1
  199. package/node/locales/csCZ.js +0 -1
  200. package/node/locales/daDK.js +0 -1
  201. package/node/locales/deDE.js +10 -13
  202. package/node/locales/elGR.js +0 -1
  203. package/node/locales/esES.js +10 -13
  204. package/node/locales/faIR.js +0 -1
  205. package/node/locales/fiFI.js +0 -1
  206. package/node/locales/frFR.js +0 -1
  207. package/node/locales/heIL.js +14 -17
  208. package/node/locales/hrHR.js +0 -1
  209. package/node/locales/huHU.js +0 -1
  210. package/node/locales/isIS.js +0 -1
  211. package/node/locales/itIT.js +0 -1
  212. package/node/locales/jaJP.js +0 -1
  213. package/node/locales/koKR.js +0 -1
  214. package/node/locales/nbNO.js +0 -1
  215. package/node/locales/nlNL.js +0 -1
  216. package/node/locales/nnNO.js +0 -1
  217. package/node/locales/plPL.js +0 -1
  218. package/node/locales/ptBR.js +10 -13
  219. package/node/locales/ptPT.js +10 -13
  220. package/node/locales/roRO.js +0 -1
  221. package/node/locales/ruRU.js +0 -1
  222. package/node/locales/skSK.js +0 -1
  223. package/node/locales/svSE.js +0 -1
  224. package/node/locales/trTR.js +12 -15
  225. package/node/locales/ukUA.js +0 -1
  226. package/node/locales/urPK.js +0 -1
  227. package/node/locales/viVN.js +0 -1
  228. package/node/locales/zhCN.js +10 -13
  229. package/node/locales/zhHK.js +0 -1
  230. package/node/locales/zhTW.js +0 -1
  231. package/package.json +2 -2
package/locales/koKR.js CHANGED
@@ -28,7 +28,6 @@ const koKRGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/nbNO.js CHANGED
@@ -28,7 +28,6 @@ const nbNOGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/nlNL.js CHANGED
@@ -28,7 +28,6 @@ const nlNLGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/nnNO.js CHANGED
@@ -28,7 +28,6 @@ const nnNOGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/plPL.js CHANGED
@@ -28,7 +28,6 @@ const plPLGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/ptBR.js CHANGED
@@ -24,17 +24,15 @@ const ptBRGrid = {
24
24
  toolbarQuickFilterLabel: 'Procurar',
25
25
  toolbarQuickFilterDeleteIconLabel: 'Limpar',
26
26
  // Prompt toolbar field
27
- // toolbarPromptControlPlaceholder: 'Type a prompt…',
28
- // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
- // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
- // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
- // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
- // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
- // toolbarPromptControlSendActionLabel: 'Send',
35
- // toolbarPromptControlSendActionAriaLabel: 'Send prompt',
36
- // toolbarPromptControlErrorMessage: 'An error occurred while processing the request. Please try again with a different prompt.',
37
-
27
+ toolbarPromptControlPlaceholder: 'Digite um prompt…',
28
+ toolbarPromptControlWithRecordingPlaceholder: 'Digite ou grave um prompt…',
29
+ toolbarPromptControlRecordingPlaceholder: 'Ouvindo o prompt…',
30
+ toolbarPromptControlLabel: 'Entrada de prompt',
31
+ toolbarPromptControlRecordButtonDefaultLabel: 'Gravar',
32
+ toolbarPromptControlRecordButtonActiveLabel: 'Parar gravação',
33
+ toolbarPromptControlSendActionLabel: 'Enviar',
34
+ toolbarPromptControlSendActionAriaLabel: 'Enviar prompt',
35
+ toolbarPromptControlErrorMessage: 'Ocorreu um erro ao processar a solicitação. Por favor, tente novamente com um prompt diferente.',
38
36
  // Export selector toolbar button text
39
37
  toolbarExport: 'Exportar',
40
38
  toolbarExportLabel: 'Exportar',
@@ -46,8 +44,7 @@ const ptBRGrid = {
46
44
  columnsManagementNoColumns: 'Nenhuma coluna',
47
45
  columnsManagementShowHideAllText: 'Mostrar/Ocultar Todas',
48
46
  columnsManagementReset: 'Redefinir',
49
- // columnsManagementDeleteIconLabel: 'Clear',
50
-
47
+ columnsManagementDeleteIconLabel: 'Limpar',
51
48
  // Filter panel text
52
49
  filterPanelAddFilter: 'Adicionar filtro',
53
50
  filterPanelRemoveAll: 'Remover todos',
package/locales/ptPT.js CHANGED
@@ -24,17 +24,15 @@ const ptPTGrid = {
24
24
  toolbarQuickFilterLabel: 'Procurar',
25
25
  toolbarQuickFilterDeleteIconLabel: 'Claro',
26
26
  // Prompt toolbar field
27
- // toolbarPromptControlPlaceholder: 'Type a prompt…',
28
- // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
- // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
- // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
- // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
- // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
- // toolbarPromptControlSendActionLabel: 'Send',
35
- // toolbarPromptControlSendActionAriaLabel: 'Send prompt',
36
- // toolbarPromptControlErrorMessage: 'An error occurred while processing the request. Please try again with a different prompt.',
37
-
27
+ toolbarPromptControlPlaceholder: 'Digite um prompt…',
28
+ toolbarPromptControlWithRecordingPlaceholder: 'Digite ou grave um prompt…',
29
+ toolbarPromptControlRecordingPlaceholder: 'Ouvindo o prompt…',
30
+ toolbarPromptControlLabel: 'Entrada de prompt',
31
+ toolbarPromptControlRecordButtonDefaultLabel: 'Gravar',
32
+ toolbarPromptControlRecordButtonActiveLabel: 'Parar gravação',
33
+ toolbarPromptControlSendActionLabel: 'Enviar',
34
+ toolbarPromptControlSendActionAriaLabel: 'Enviar prompt',
35
+ toolbarPromptControlErrorMessage: 'Ocorreu um erro ao processar a solicitação. Por favor, tente novamente com um prompt diferente.',
38
36
  // Export selector toolbar button text
39
37
  toolbarExport: 'Exportar',
40
38
  toolbarExportLabel: 'Exportar',
@@ -46,8 +44,7 @@ const ptPTGrid = {
46
44
  columnsManagementNoColumns: 'Sem colunas',
47
45
  columnsManagementShowHideAllText: 'Mostrar/Ocultar Todas',
48
46
  columnsManagementReset: 'Repor',
49
- // columnsManagementDeleteIconLabel: 'Clear',
50
-
47
+ columnsManagementDeleteIconLabel: 'Limpar',
51
48
  // Filter panel text
52
49
  filterPanelAddFilter: 'Adicionar filtro',
53
50
  filterPanelRemoveAll: 'Excluir todos',
package/locales/roRO.js CHANGED
@@ -28,7 +28,6 @@ const roROGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/ruRU.js CHANGED
@@ -43,7 +43,6 @@ const ruRUGrid = {
43
43
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
44
44
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
45
45
  // toolbarPromptControlLabel: 'Prompt input',
46
- // toolbarPromptControlDeleteIconLabel: 'Clear',
47
46
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
48
47
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
49
48
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/skSK.js CHANGED
@@ -36,7 +36,6 @@ const skSKGrid = {
36
36
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
37
37
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
38
38
  // toolbarPromptControlLabel: 'Prompt input',
39
- // toolbarPromptControlDeleteIconLabel: 'Clear',
40
39
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
41
40
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
42
41
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/svSE.js CHANGED
@@ -28,7 +28,6 @@ const svSEGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/trTR.js CHANGED
@@ -24,17 +24,15 @@ const trTRGrid = {
24
24
  toolbarQuickFilterLabel: 'Ara',
25
25
  toolbarQuickFilterDeleteIconLabel: 'Temizle',
26
26
  // Prompt toolbar field
27
- // toolbarPromptControlPlaceholder: 'Type a prompt…',
28
- // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
- // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
- // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
- // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
- // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
- // toolbarPromptControlSendActionLabel: 'Send',
35
- // toolbarPromptControlSendActionAriaLabel: 'Send prompt',
36
- // toolbarPromptControlErrorMessage: 'An error occurred while processing the request. Please try again with a different prompt.',
37
-
27
+ toolbarPromptControlPlaceholder: 'Bir istem yazın…',
28
+ toolbarPromptControlWithRecordingPlaceholder: 'Bir istem yazın veya kaydedin…',
29
+ toolbarPromptControlRecordingPlaceholder: 'İstem dinleniyor…',
30
+ toolbarPromptControlLabel: 'İstem girişi',
31
+ toolbarPromptControlRecordButtonDefaultLabel: 'Kaydet',
32
+ toolbarPromptControlRecordButtonActiveLabel: 'Kaydı durdur',
33
+ toolbarPromptControlSendActionLabel: 'Gönder',
34
+ toolbarPromptControlSendActionAriaLabel: 'İstemi gönder',
35
+ toolbarPromptControlErrorMessage: 'İstek işlenirken bir hata oluştu. Lütfen farklı bir istemle tekrar deneyin.',
38
36
  // Export selector toolbar button text
39
37
  toolbarExport: 'Dışa aktar',
40
38
  toolbarExportLabel: 'Dışa aktar',
@@ -46,8 +44,7 @@ const trTRGrid = {
46
44
  columnsManagementNoColumns: 'Kolon yok',
47
45
  columnsManagementShowHideAllText: 'Hepsini Göster/Gizle',
48
46
  columnsManagementReset: 'Sıfırla',
49
- // columnsManagementDeleteIconLabel: 'Clear',
50
-
47
+ columnsManagementDeleteIconLabel: 'Temizle',
51
48
  // Filter panel text
52
49
  filterPanelAddFilter: 'Filtre Ekle',
53
50
  filterPanelRemoveAll: 'Hepsini kaldır',
@@ -61,9 +58,9 @@ const trTRGrid = {
61
58
  filterPanelInputPlaceholder: 'Filtre değeri',
62
59
  // Filter operators text
63
60
  filterOperatorContains: 'içerir',
64
- // filterOperatorDoesNotContain: 'does not contain',
61
+ filterOperatorDoesNotContain: 'içermiyor',
65
62
  filterOperatorEquals: 'eşittir',
66
- // filterOperatorDoesNotEqual: 'does not equal',
63
+ filterOperatorDoesNotEqual: 'eşit değil',
67
64
  filterOperatorStartsWith: 'ile başlar',
68
65
  filterOperatorEndsWith: 'ile biter',
69
66
  filterOperatorIs: 'eşittir',
package/locales/ukUA.js CHANGED
@@ -43,7 +43,6 @@ const ukUAGrid = {
43
43
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
44
44
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
45
45
  // toolbarPromptControlLabel: 'Prompt input',
46
- // toolbarPromptControlDeleteIconLabel: 'Clear',
47
46
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
48
47
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
49
48
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/urPK.js CHANGED
@@ -28,7 +28,6 @@ const urPKGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/viVN.js CHANGED
@@ -28,7 +28,6 @@ const viVNGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/zhCN.js CHANGED
@@ -24,17 +24,15 @@ const zhCNGrid = {
24
24
  toolbarQuickFilterLabel: '搜索',
25
25
  toolbarQuickFilterDeleteIconLabel: '清除',
26
26
  // Prompt toolbar field
27
- // toolbarPromptControlPlaceholder: 'Type a prompt…',
28
- // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
- // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
- // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
- // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
- // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
- // toolbarPromptControlSendActionLabel: 'Send',
35
- // toolbarPromptControlSendActionAriaLabel: 'Send prompt',
36
- // toolbarPromptControlErrorMessage: 'An error occurred while processing the request. Please try again with a different prompt.',
37
-
27
+ toolbarPromptControlPlaceholder: '输入提示词',
28
+ toolbarPromptControlWithRecordingPlaceholder: '输入提示词或点击录音',
29
+ toolbarPromptControlRecordingPlaceholder: '正在录音…',
30
+ toolbarPromptControlLabel: '提示词输入',
31
+ toolbarPromptControlRecordButtonDefaultLabel: '录音',
32
+ toolbarPromptControlRecordButtonActiveLabel: '停止录音',
33
+ toolbarPromptControlSendActionLabel: '发送',
34
+ toolbarPromptControlSendActionAriaLabel: '发送提示词',
35
+ toolbarPromptControlErrorMessage: '处理请求时出现错误。请使用其他提示词再试。',
38
36
  // Export selector toolbar button text
39
37
  toolbarExport: '导出',
40
38
  toolbarExportLabel: '导出',
@@ -46,8 +44,7 @@ const zhCNGrid = {
46
44
  columnsManagementNoColumns: '没有列',
47
45
  columnsManagementShowHideAllText: '显示/隐藏所有',
48
46
  columnsManagementReset: '重置',
49
- // columnsManagementDeleteIconLabel: 'Clear',
50
-
47
+ columnsManagementDeleteIconLabel: '清除',
51
48
  // Filter panel text
52
49
  filterPanelAddFilter: '添加筛选器',
53
50
  filterPanelRemoveAll: '清除全部',
package/locales/zhHK.js CHANGED
@@ -28,7 +28,6 @@ const zhHKGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
package/locales/zhTW.js CHANGED
@@ -28,7 +28,6 @@ const zhTWGrid = {
28
28
  // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
29
29
  // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
30
30
  // toolbarPromptControlLabel: 'Prompt input',
31
- // toolbarPromptControlDeleteIconLabel: 'Clear',
32
31
  // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
33
32
  // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
34
33
  // toolbarPromptControlSendActionLabel: 'Send',
@@ -59,7 +59,7 @@ export interface GridCorePrivateApi<GridPublicApi extends GridApiCommon, GridPri
59
59
  /**
60
60
  * The React ref of the grid main container div element.
61
61
  */
62
- mainElementRef: React.RefObject<HTMLDivElement>;
62
+ mainElementRef: React.MutableRefObject<HTMLDivElement | null>;
63
63
  /**
64
64
  * The React ref of the grid's virtual scroller container element.
65
65
  */
@@ -30,7 +30,6 @@ export interface GridLocaleText {
30
30
  toolbarPromptControlWithRecordingPlaceholder: string;
31
31
  toolbarPromptControlRecordingPlaceholder: string;
32
32
  toolbarPromptControlLabel: string;
33
- toolbarPromptControlDeleteIconLabel: string;
34
33
  toolbarPromptControlRecordButtonDefaultLabel: string;
35
34
  toolbarPromptControlRecordButtonActiveLabel: string;
36
35
  toolbarPromptControlSendActionLabel: string;
@@ -36,43 +36,43 @@ export type GridColSpanFn<R extends GridValidRowModel = GridValidRowModel, V = a
36
36
  */
37
37
  export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> {
38
38
  /**
39
- * The column identifier. It's used to map with [[GridRowModel]] values.
39
+ * The unique identifier of the column. Used to map with [[GridRowModel]] values.
40
40
  */
41
41
  field: string;
42
42
  /**
43
- * The title of the column rendered in the column header cell.
43
+ * The title displayed in the column header cell.
44
44
  */
45
45
  headerName?: string;
46
46
  /**
47
- * The description of the column rendered as tooltip if the column header name is not fully displayed.
47
+ * The tooltip text shown when the column header name is truncated.
48
48
  */
49
49
  description?: string;
50
50
  /**
51
- * Set the width of the column.
51
+ * The width of the column in pixels.
52
52
  * @default 100
53
53
  */
54
54
  width?: number;
55
55
  /**
56
- * If set, it indicates that a column has fluid width. Range [0, ∞).
56
+ * The flex grow factor of the column. Must be a positive number.
57
57
  */
58
58
  flex?: number;
59
59
  /**
60
- * Sets the minimum width of a column.
60
+ * The minimum width of the column in pixels.
61
61
  * @default 50
62
62
  */
63
63
  minWidth?: number;
64
64
  /**
65
- * Sets the maximum width of a column.
65
+ * The maximum width of the column in pixels.
66
66
  * @default Infinity
67
67
  */
68
68
  maxWidth?: number;
69
69
  /**
70
- * If `false`, removes the buttons for hiding this column.
70
+ * If `false`, removes the option to hide this column.
71
71
  * @default true
72
72
  */
73
73
  hideable?: boolean;
74
74
  /**
75
- * If `true`, the column is sortable.
75
+ * If `false`, disables sorting for this column.
76
76
  * @default true
77
77
  */
78
78
  sortable?: boolean;
@@ -81,7 +81,7 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
81
81
  */
82
82
  sortingOrder?: readonly GridSortDirection[];
83
83
  /**
84
- * If `true`, the column is resizable.
84
+ * If `false`, disables resizing for this column.
85
85
  * @default true
86
86
  */
87
87
  resizable?: boolean;
@@ -109,7 +109,7 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
109
109
  */
110
110
  sortComparator?: GridComparatorFn<V>;
111
111
  /**
112
- * Allows to use a different comparator function depending on the sort direction.
112
+ * Provide an alternative comparator function for sorting.
113
113
  * Takes precedence over `sortComparator`.
114
114
  * @param {GridSortDirection} sortDirection The direction of the sort.
115
115
  * @returns {GridComparatorFn<V>} The comparator function to use.
@@ -122,25 +122,25 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
122
122
  */
123
123
  type?: GridColType;
124
124
  /**
125
- * Allows to align the column values in cells.
125
+ * Align cell content.
126
126
  */
127
127
  align?: GridAlignment;
128
128
  /**
129
- * Function that allows to get a specific data instead of field to render in the cell.
129
+ * Function that returns specific data to render in the cell instead of using the field value.
130
130
  */
131
131
  valueGetter?: GridValueGetter<R, V, F>;
132
132
  /**
133
- * Function that allows to provide a specific value to be used in row spanning.
133
+ * Function that returns a specific value to be used in row spanning.
134
134
  */
135
135
  rowSpanValueGetter?: GridValueGetter<R, V, F>;
136
136
  /**
137
- * Function that allows to customize how the entered value is stored in the row.
138
- * It only works with cell/row editing.
137
+ * Function that customizes how the entered value is stored in the row.
138
+ * Only works with cell/row editing.
139
139
  * @returns {R} The row with the updated field.
140
140
  */
141
141
  valueSetter?: GridValueSetter<R, V, F>;
142
142
  /**
143
- * Function that allows to apply a formatter before rendering its value.
143
+ * Formats the cell value before rendering.
144
144
  */
145
145
  valueFormatter?: GridValueFormatter<R, V, F>;
146
146
  /**
@@ -149,7 +149,7 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
149
149
  */
150
150
  valueParser?: GridValueParser<R, V, F>;
151
151
  /**
152
- * Class name that will be added in cells for that column.
152
+ * Class name added to cells in this column.
153
153
  */
154
154
  cellClassName?: GridCellClassNamePropType<R, V>;
155
155
  /**
@@ -159,38 +159,38 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
159
159
  */
160
160
  display?: 'text' | 'flex';
161
161
  /**
162
- * Allows to override the component rendered as cell for this column.
162
+ * Override the component rendered as cell for this column.
163
163
  * @template R, V, F
164
164
  * @param {GridRenderCellParams<R, V, F>} params Object containing parameters for the renderer.
165
165
  * @returns {React.ReactNode} The element to be rendered.
166
166
  */
167
167
  renderCell?: (params: GridRenderCellParams<R, V, F>) => React.ReactNode;
168
168
  /**
169
- * Allows to override the component rendered in edit cell mode for this column.
169
+ * Override the component rendered in edit cell mode for this column.
170
170
  * @param {GridRenderEditCellParams} params Object containing parameters for the renderer.
171
171
  * @returns {React.ReactNode} The element to be rendered.
172
172
  */
173
173
  renderEditCell?: (params: GridRenderEditCellParams<R, V, F>) => React.ReactNode;
174
174
  /**
175
175
  * Callback fired when the edit props of the cell changes.
176
- * It allows to process the props that saved into the state.
176
+ * Processes the props before being saved into the state.
177
177
  * @param {GridPreProcessEditCellProps} params Object containing parameters of the cell being edited.
178
178
  * @returns {GridEditCellProps | Promise<GridEditCellProps>} The new edit cell props.
179
179
  */
180
180
  preProcessEditCellProps?: (params: GridPreProcessEditCellProps) => GridEditCellProps | Promise<GridEditCellProps>;
181
181
  /**
182
- * Class name that will be added in the column header cell.
182
+ * Class name added to the column header cell.
183
183
  */
184
184
  headerClassName?: GridColumnHeaderClassNamePropType;
185
185
  /**
186
- * Allows to render a component in the column header cell.
186
+ * Override the component rendered in the column header cell.
187
187
  * @template R, V, F
188
188
  * @param {GridColumnHeaderParams<R, V, F>} params Object containing parameters for the renderer.
189
189
  * @returns {React.ReactNode} The element to be rendered.
190
190
  */
191
191
  renderHeader?: (params: GridColumnHeaderParams<R, V, F>) => React.ReactNode;
192
192
  /**
193
- * Header cell element alignment.
193
+ * Align column header content.
194
194
  */
195
195
  headerAlign?: GridAlignment;
196
196
  /**
@@ -399,6 +399,7 @@ export interface GridControlledStateEventLookup {
399
399
  export interface GridControlledStateReasonLookup {
400
400
  filter: 'upsertFilterItem' | 'upsertFilterItems' | 'deleteFilterItem' | 'changeLogicOperator' | 'restoreState' | 'removeAllFilterItems';
401
401
  pagination: 'setPaginationModel' | 'stateRestorePreProcessing';
402
+ rows: 'addSkeletonRows';
402
403
  }
403
404
  export interface GridEventLookup extends GridRowEventLookup, GridColumnHeaderEventLookup, GridHeaderFilterEventLookup, GridColumnGroupHeaderEventLookup, GridCellEventLookup, GridControlledStateEventLookup {
404
405
  /**
@@ -5,7 +5,7 @@ export interface GridGetRowsParams {
5
5
  /**
6
6
  * Alternate to `start` and `end`, maps to `GridPaginationModel` interface.
7
7
  */
8
- paginationModel: GridPaginationModel;
8
+ paginationModel?: GridPaginationModel;
9
9
  /**
10
10
  * First row index to fetch (number) or cursor information (number | string).
11
11
  */
@@ -223,14 +223,6 @@ export interface DataGridPropsWithDefaultValues<R extends GridValidRowModel = an
223
223
  * @default false
224
224
  */
225
225
  ignoreDiacritics: boolean;
226
- /**
227
- * If `select`, a group header checkbox in indeterminate state (like "Select All" checkbox)
228
- * will select all the rows under it.
229
- * If `deselect`, it will deselect all the rows under it.
230
- * Works only if `checkboxSelection` is enabled.
231
- * @default "deselect"
232
- */
233
- indeterminateCheckboxAction: 'select' | 'deselect';
234
226
  /**
235
227
  * If `true`, the selection model will retain selected rows that do not exist.
236
228
  * Useful when using server side pagination and row selections need to be retained
@@ -346,14 +338,6 @@ export interface DataGridPropsWithDefaultValues<R extends GridValidRowModel = an
346
338
  * @default '\t'
347
339
  */
348
340
  clipboardCopyCellDelimiter: string;
349
- /**
350
- * The milliseconds delay to wait after measuring the row height before recalculating row positions.
351
- * Setting it to a lower value could be useful when using dynamic row height,
352
- * but might reduce performance when displaying a large number of rows.
353
- * @default 166
354
- * @deprecated
355
- */
356
- rowPositionsDebounceMs: number;
357
341
  /**
358
342
  * If `true`, columns are autosized after the datagrid is mounted.
359
343
  * @default false
@@ -369,6 +353,14 @@ export interface DataGridPropsWithDefaultValues<R extends GridValidRowModel = an
369
353
  * @default false
370
354
  */
371
355
  unstable_rowSpanning: boolean;
356
+ /**
357
+ * If `true`, the Data Grid enables column virtualization when `getRowHeight` is set to `() => 'auto'`.
358
+ * By default, column virtualization is disabled when dynamic row height is enabled to measure the row height correctly.
359
+ * For datasets with a large number of columns, this can cause performance issues.
360
+ * The downside of enabling this prop is that the row height will be estimated based the cells that are currently rendered, which can cause row height change when scrolling horizontally.
361
+ * @default false
362
+ */
363
+ virtualizeColumnsWithAutoRowHeight: boolean;
372
364
  }
373
365
  /**
374
366
  * The Data Grid props with no default value.
@@ -814,7 +806,7 @@ export interface DataGridProSharedPropsWithDefaultValue {
814
806
  * - Deselecting a descendant of a selected parent deselects the parent automatically.
815
807
  *
816
808
  * Works with tree data and row grouping on the client-side only.
817
- * @default { parents: false, descendants: false }
809
+ * @default { parents: true, descendants: true }
818
810
  */
819
811
  rowSelectionPropagation: GridRowSelectionPropagation;
820
812
  /**
@@ -325,14 +325,6 @@ DataGridRaw.propTypes = {
325
325
  clipboardExport: PropTypes.bool,
326
326
  csvExport: PropTypes.bool
327
327
  }), PropTypes.bool]),
328
- /**
329
- * If `select`, a group header checkbox in indeterminate state (like "Select All" checkbox)
330
- * will select all the rows under it.
331
- * If `deselect`, it will deselect all the rows under it.
332
- * Works only if `checkboxSelection` is enabled.
333
- * @default "deselect"
334
- */
335
- indeterminateCheckboxAction: PropTypes.oneOf(['deselect', 'select']),
336
328
  /**
337
329
  * The initial state of the DataGrid.
338
330
  * The data in it will be set in the state on initialization but will not be controlled.
@@ -690,14 +682,6 @@ DataGridRaw.propTypes = {
690
682
  * Controls the modes of the rows.
691
683
  */
692
684
  rowModesModel: PropTypes.object,
693
- /**
694
- * The milliseconds delay to wait after measuring the row height before recalculating row positions.
695
- * Setting it to a lower value could be useful when using dynamic row height,
696
- * but might reduce performance when displaying a large number of rows.
697
- * @default 166
698
- * @deprecated
699
- */
700
- rowPositionsDebounceMs: PropTypes.number,
701
685
  /**
702
686
  * Set of rows of type [[GridRowsProp]].
703
687
  * @default []
@@ -766,5 +750,13 @@ DataGridRaw.propTypes = {
766
750
  * If `true`, the Data Grid will auto span the cells over the rows having the same value.
767
751
  * @default false
768
752
  */
769
- unstable_rowSpanning: PropTypes.bool
753
+ unstable_rowSpanning: PropTypes.bool,
754
+ /**
755
+ * If `true`, the Data Grid enables column virtualization when `getRowHeight` is set to `() => 'auto'`.
756
+ * By default, column virtualization is disabled when dynamic row height is enabled to measure the row height correctly.
757
+ * For datasets with a large number of columns, this can cause performance issues.
758
+ * The downside of enabling this prop is that the row height will be estimated based the cells that are currently rendered, which can cause row height change when scrolling horizontally.
759
+ * @default false
760
+ */
761
+ virtualizeColumnsWithAutoRowHeight: PropTypes.bool
770
762
  };
@@ -50,7 +50,8 @@ const defaultLabelDisplayedRows = ({
50
50
  if (!estimated) {
51
51
  return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
52
52
  }
53
- return `${from}–${to} of ${count !== -1 ? count : `more than ${estimated > to ? estimated : to}`}`;
53
+ const estimateLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
54
+ return `${from}–${to} of ${count !== -1 ? count : estimateLabel}`;
54
55
  };
55
56
 
56
57
  // A mutable version of a readonly array.