@mui/x-data-grid 5.8.0 → 5.11.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 (626) hide show
  1. package/CHANGELOG.md +333 -66
  2. package/DataGrid/DataGrid.js +36 -2
  3. package/DataGrid/useDataGridComponent.js +3 -1
  4. package/DataGrid/useDataGridProps.js +2 -1
  5. package/LICENSE +21 -0
  6. package/README.md +7 -5
  7. package/colDef/gridActionsColDef.js +2 -1
  8. package/colDef/gridBooleanColDef.js +2 -1
  9. package/colDef/gridCheckboxSelectionColDef.js +1 -0
  10. package/colDef/gridDateColDef.js +4 -2
  11. package/colDef/gridNumericColDef.js +3 -2
  12. package/colDef/gridNumericOperators.d.ts +2 -0
  13. package/colDef/gridNumericOperators.js +11 -0
  14. package/colDef/gridSingleSelectColDef.js +3 -2
  15. package/colDef/gridSingleSelectOperators.d.ts +3 -0
  16. package/colDef/gridSingleSelectOperators.js +52 -0
  17. package/colDef/gridStringColDef.js +3 -2
  18. package/colDef/gridStringOperators.d.ts +2 -0
  19. package/colDef/gridStringOperators.js +12 -0
  20. package/components/GridFooter.d.ts +4 -2
  21. package/components/GridFooter.js +11 -2
  22. package/components/GridRow.d.ts +4 -0
  23. package/components/GridRow.js +58 -28
  24. package/components/GridRowCount.d.ts +4 -1
  25. package/components/GridRowCount.js +1 -0
  26. package/components/GridScrollArea.js +3 -4
  27. package/components/GridSelectedRowCount.d.ts +4 -1
  28. package/components/GridSelectedRowCount.js +2 -1
  29. package/components/base/GridBody.js +1 -2
  30. package/components/base/GridOverlays.js +5 -5
  31. package/components/cell/GridActionsCell.d.ts +5 -1
  32. package/components/cell/GridActionsCell.js +179 -21
  33. package/components/cell/GridActionsCellItem.d.ts +66 -4
  34. package/components/cell/GridActionsCellItem.js +7 -5
  35. package/components/cell/GridCell.d.ts +1 -0
  36. package/components/cell/GridCell.js +36 -15
  37. package/components/cell/GridEditBooleanCell.d.ts +15 -3
  38. package/components/cell/GridEditBooleanCell.js +101 -6
  39. package/components/cell/GridEditDateCell.d.ts +16 -4
  40. package/components/cell/GridEditDateCell.js +99 -5
  41. package/components/cell/GridEditInputCell.d.ts +11 -5
  42. package/components/cell/GridEditInputCell.js +30 -6
  43. package/components/cell/GridEditSingleSelectCell.d.ts +12 -4
  44. package/components/cell/GridEditSingleSelectCell.js +50 -18
  45. package/components/cell/index.d.ts +2 -0
  46. package/components/cell/index.js +2 -0
  47. package/components/columnHeaders/GridColumnHeaderItem.js +19 -23
  48. package/components/columnHeaders/GridColumnHeaders.d.ts +2 -1
  49. package/components/columnHeaders/GridColumnHeaders.js +1 -1
  50. package/components/columnHeaders/GridColumnHeadersInner.d.ts +2 -0
  51. package/components/columnSelection/GridCellCheckboxRenderer.d.ts +3 -3
  52. package/components/columnSelection/GridCellCheckboxRenderer.js +22 -6
  53. package/components/columnSelection/GridHeaderCheckbox.js +4 -5
  54. package/components/containers/GridFooterContainer.d.ts +8 -2
  55. package/components/containers/GridFooterContainer.js +11 -2
  56. package/components/containers/GridRootStyles.js +36 -1
  57. package/components/containers/GridToolbarContainer.d.ts +8 -2
  58. package/components/containers/GridToolbarContainer.js +12 -2
  59. package/components/menu/GridMenu.js +1 -0
  60. package/components/panel/GridPanel.js +1 -0
  61. package/components/panel/GridPanelContent.d.ts +8 -1
  62. package/components/panel/GridPanelContent.js +13 -2
  63. package/components/panel/GridPanelFooter.d.ts +8 -1
  64. package/components/panel/GridPanelFooter.js +13 -2
  65. package/components/panel/GridPanelHeader.d.ts +8 -1
  66. package/components/panel/GridPanelHeader.js +13 -2
  67. package/components/panel/filterPanel/GridFilterForm.js +14 -10
  68. package/components/panel/filterPanel/GridFilterInputBoolean.js +13 -8
  69. package/components/panel/filterPanel/GridFilterInputSingleSelect.js +22 -15
  70. package/components/panel/filterPanel/GridFilterInputValue.js +22 -15
  71. package/components/toolbar/GridToolbar.d.ts +12 -2
  72. package/components/toolbar/GridToolbar.js +30 -7
  73. package/components/toolbar/GridToolbarDensitySelector.js +1 -1
  74. package/components/toolbar/GridToolbarExport.d.ts +5 -4
  75. package/components/toolbar/GridToolbarExport.js +15 -20
  76. package/components/toolbar/GridToolbarFilterButton.d.ts +1 -1
  77. package/components/toolbar/GridToolbarQuickFilter.d.ts +20 -0
  78. package/components/toolbar/GridToolbarQuickFilter.js +88 -0
  79. package/components/toolbar/index.d.ts +3 -1
  80. package/components/toolbar/index.js +3 -2
  81. package/components/virtualization/GridVirtualScroller.d.ts +4 -1
  82. package/components/virtualization/GridVirtualScroller.js +2 -0
  83. package/components/virtualization/GridVirtualScrollerContent.d.ts +4 -1
  84. package/components/virtualization/GridVirtualScrollerContent.js +1 -3
  85. package/components/virtualization/GridVirtualScrollerRenderZone.d.ts +4 -1
  86. package/constants/defaultGridSlotsComponents.js +3 -2
  87. package/constants/gridClasses.d.ts +20 -0
  88. package/constants/gridClasses.js +1 -1
  89. package/constants/gridDetailPanelToggleField.d.ts +1 -0
  90. package/constants/gridDetailPanelToggleField.js +2 -0
  91. package/constants/localeTextConstants.js +8 -1
  92. package/hooks/core/pipeProcessing/gridPipeProcessingApi.d.ts +39 -15
  93. package/hooks/core/pipeProcessing/index.d.ts +1 -0
  94. package/hooks/core/pipeProcessing/index.js +2 -1
  95. package/hooks/core/pipeProcessing/useGridPipeProcessing.d.ts +8 -3
  96. package/hooks/core/pipeProcessing/useGridPipeProcessing.js +53 -19
  97. package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.d.ts +3 -0
  98. package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +27 -0
  99. package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.d.ts +0 -3
  100. package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -4
  101. package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +4 -4
  102. package/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -7
  103. package/hooks/core/useGridApiInitialization.js +3 -3
  104. package/hooks/core/useGridErrorHandler.js +1 -2
  105. package/hooks/core/useGridStateInitialization.js +1 -2
  106. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +0 -1
  107. package/hooks/features/columnHeaders/useGridColumnHeaders.js +81 -16
  108. package/hooks/features/columnMenu/useGridColumnMenu.js +3 -3
  109. package/hooks/features/columns/gridColumnsInterfaces.d.ts +3 -1
  110. package/hooks/features/columns/gridColumnsUtils.d.ts +19 -1
  111. package/hooks/features/columns/gridColumnsUtils.js +61 -8
  112. package/hooks/features/columns/useGridColumnSpanning.d.ts +7 -0
  113. package/hooks/features/columns/useGridColumnSpanning.js +108 -0
  114. package/hooks/features/columns/useGridColumns.d.ts +1 -1
  115. package/hooks/features/columns/useGridColumns.js +30 -25
  116. package/hooks/features/dimensions/useGridDimensions.d.ts +1 -1
  117. package/hooks/features/dimensions/useGridDimensions.js +10 -11
  118. package/hooks/features/editRows/useGridCellEditing.new.d.ts +1 -1
  119. package/hooks/features/editRows/useGridCellEditing.new.js +151 -42
  120. package/hooks/features/editRows/useGridCellEditing.old.js +20 -21
  121. package/hooks/features/editRows/useGridEditing.new.js +7 -3
  122. package/hooks/features/editRows/useGridEditing.old.js +4 -5
  123. package/hooks/features/editRows/useGridRowEditing.new.d.ts +1 -1
  124. package/hooks/features/editRows/useGridRowEditing.new.js +145 -57
  125. package/hooks/features/editRows/useGridRowEditing.old.js +21 -22
  126. package/hooks/features/events/useGridEvents.js +17 -18
  127. package/hooks/features/export/serializers/csvSerializer.js +5 -5
  128. package/hooks/features/export/useGridCsvExport.js +23 -16
  129. package/hooks/features/export/useGridPrintExport.js +22 -0
  130. package/hooks/features/export/utils.d.ts +3 -1
  131. package/hooks/features/export/utils.js +13 -0
  132. package/hooks/features/filter/gridFilterState.d.ts +1 -2
  133. package/hooks/features/filter/gridFilterState.js +3 -1
  134. package/hooks/features/filter/gridFilterUtils.d.ts +8 -0
  135. package/hooks/features/filter/gridFilterUtils.js +84 -2
  136. package/hooks/features/filter/useGridFilter.js +32 -15
  137. package/hooks/features/focus/useGridFocus.d.ts +1 -1
  138. package/hooks/features/focus/useGridFocus.js +48 -42
  139. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.d.ts +1 -0
  140. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +43 -12
  141. package/hooks/features/pagination/useGridPage.js +3 -4
  142. package/hooks/features/pagination/useGridPageSize.js +2 -3
  143. package/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -6
  144. package/hooks/features/rows/gridRowsSelector.d.ts +2 -0
  145. package/hooks/features/rows/gridRowsSelector.js +2 -0
  146. package/hooks/features/rows/gridRowsState.d.ts +7 -7
  147. package/hooks/features/rows/gridRowsUtils.d.ts +2 -1
  148. package/hooks/features/rows/gridRowsUtils.js +25 -1
  149. package/hooks/features/rows/useGridRows.d.ts +2 -2
  150. package/hooks/features/rows/useGridRows.js +121 -61
  151. package/hooks/features/rows/useGridRowsMeta.js +6 -13
  152. package/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
  153. package/hooks/features/scroll/useGridScroll.d.ts +2 -0
  154. package/hooks/features/scroll/useGridScroll.js +31 -4
  155. package/hooks/features/selection/useGridSelection.d.ts +1 -1
  156. package/hooks/features/selection/useGridSelection.js +15 -11
  157. package/hooks/features/sorting/useGridSorting.js +17 -18
  158. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +9 -0
  159. package/hooks/features/virtualization/useGridVirtualScroller.js +68 -32
  160. package/hooks/utils/useGridApiEventHandler.d.ts +4 -1
  161. package/hooks/utils/useGridApiEventHandler.js +22 -9
  162. package/hooks/utils/useGridNativeEventListener.js +1 -2
  163. package/hooks/utils/useGridSelector.js +1 -1
  164. package/index.d.ts +2 -0
  165. package/index.js +1 -1
  166. package/internals/index.d.ts +5 -1
  167. package/internals/index.js +6 -2
  168. package/legacy/DataGrid/DataGrid.js +36 -2
  169. package/legacy/DataGrid/useDataGridComponent.js +3 -1
  170. package/legacy/DataGrid/useDataGridProps.js +2 -1
  171. package/legacy/colDef/gridActionsColDef.js +2 -1
  172. package/legacy/colDef/gridBooleanColDef.js +2 -1
  173. package/legacy/colDef/gridCheckboxSelectionColDef.js +1 -0
  174. package/legacy/colDef/gridDateColDef.js +4 -2
  175. package/legacy/colDef/gridNumericColDef.js +3 -2
  176. package/legacy/colDef/gridNumericOperators.js +28 -18
  177. package/legacy/colDef/gridSingleSelectColDef.js +3 -2
  178. package/legacy/colDef/gridSingleSelectOperators.js +55 -6
  179. package/legacy/colDef/gridStringColDef.js +3 -2
  180. package/legacy/colDef/gridStringOperators.js +25 -14
  181. package/legacy/components/GridFooter.js +11 -2
  182. package/legacy/components/GridRow.js +56 -28
  183. package/legacy/components/GridRowCount.js +1 -0
  184. package/legacy/components/GridScrollArea.js +3 -4
  185. package/legacy/components/GridSelectedRowCount.js +2 -1
  186. package/legacy/components/base/GridBody.js +1 -2
  187. package/legacy/components/base/GridOverlays.js +5 -5
  188. package/legacy/components/cell/GridActionsCell.js +197 -27
  189. package/legacy/components/cell/GridActionsCellItem.js +7 -5
  190. package/legacy/components/cell/GridCell.js +37 -15
  191. package/legacy/components/cell/GridEditBooleanCell.js +132 -11
  192. package/legacy/components/cell/GridEditDateCell.js +148 -42
  193. package/legacy/components/cell/GridEditInputCell.js +62 -13
  194. package/legacy/components/cell/GridEditSingleSelectCell.js +65 -28
  195. package/legacy/components/cell/index.js +2 -0
  196. package/legacy/components/columnHeaders/GridColumnHeaderItem.js +19 -23
  197. package/legacy/components/columnHeaders/GridColumnHeaders.js +2 -3
  198. package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +23 -6
  199. package/legacy/components/columnSelection/GridHeaderCheckbox.js +4 -5
  200. package/legacy/components/containers/GridFooterContainer.js +11 -2
  201. package/legacy/components/containers/GridRootStyles.js +26 -5
  202. package/legacy/components/containers/GridToolbarContainer.js +12 -2
  203. package/legacy/components/menu/GridMenu.js +1 -0
  204. package/legacy/components/panel/GridPanel.js +1 -0
  205. package/legacy/components/panel/GridPanelContent.js +13 -2
  206. package/legacy/components/panel/GridPanelFooter.js +13 -2
  207. package/legacy/components/panel/GridPanelHeader.js +13 -2
  208. package/legacy/components/panel/filterPanel/GridFilterForm.js +14 -10
  209. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +13 -8
  210. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +22 -17
  211. package/legacy/components/panel/filterPanel/GridFilterInputValue.js +22 -17
  212. package/legacy/components/toolbar/GridToolbar.js +31 -6
  213. package/legacy/components/toolbar/GridToolbarDensitySelector.js +1 -1
  214. package/legacy/components/toolbar/GridToolbarExport.js +18 -19
  215. package/legacy/components/toolbar/GridToolbarQuickFilter.js +103 -0
  216. package/legacy/components/toolbar/index.js +3 -2
  217. package/legacy/components/virtualization/GridVirtualScroller.js +2 -0
  218. package/legacy/components/virtualization/GridVirtualScrollerContent.js +1 -3
  219. package/legacy/constants/defaultGridSlotsComponents.js +3 -2
  220. package/legacy/constants/gridClasses.js +1 -1
  221. package/legacy/constants/gridDetailPanelToggleField.js +2 -0
  222. package/legacy/constants/localeTextConstants.js +8 -1
  223. package/legacy/hooks/core/pipeProcessing/index.js +2 -1
  224. package/legacy/hooks/core/pipeProcessing/useGridPipeProcessing.js +60 -24
  225. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +27 -0
  226. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -4
  227. package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -7
  228. package/legacy/hooks/core/useGridApiInitialization.js +3 -3
  229. package/legacy/hooks/core/useGridErrorHandler.js +1 -2
  230. package/legacy/hooks/core/useGridStateInitialization.js +1 -2
  231. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +94 -16
  232. package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +3 -3
  233. package/legacy/hooks/features/columns/gridColumnsUtils.js +79 -22
  234. package/legacy/hooks/features/columns/useGridColumnSpanning.js +106 -0
  235. package/legacy/hooks/features/columns/useGridColumns.js +30 -25
  236. package/legacy/hooks/features/dimensions/useGridDimensions.js +10 -11
  237. package/legacy/hooks/features/editRows/useGridCellEditing.new.js +225 -89
  238. package/legacy/hooks/features/editRows/useGridCellEditing.old.js +20 -21
  239. package/legacy/hooks/features/editRows/useGridEditing.new.js +7 -3
  240. package/legacy/hooks/features/editRows/useGridEditing.old.js +4 -5
  241. package/legacy/hooks/features/editRows/useGridRowEditing.new.js +157 -65
  242. package/legacy/hooks/features/editRows/useGridRowEditing.old.js +20 -21
  243. package/legacy/hooks/features/events/useGridEvents.js +17 -18
  244. package/legacy/hooks/features/export/serializers/csvSerializer.js +5 -5
  245. package/legacy/hooks/features/export/useGridCsvExport.js +24 -17
  246. package/legacy/hooks/features/export/useGridPrintExport.js +22 -0
  247. package/legacy/hooks/features/export/utils.js +14 -0
  248. package/legacy/hooks/features/filter/gridFilterState.js +3 -1
  249. package/legacy/hooks/features/filter/gridFilterUtils.js +96 -2
  250. package/legacy/hooks/features/filter/useGridFilter.js +32 -15
  251. package/legacy/hooks/features/focus/useGridFocus.js +50 -44
  252. package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +43 -11
  253. package/legacy/hooks/features/pagination/useGridPage.js +3 -4
  254. package/legacy/hooks/features/pagination/useGridPageSize.js +2 -3
  255. package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -6
  256. package/legacy/hooks/features/rows/gridRowsSelector.js +6 -0
  257. package/legacy/hooks/features/rows/gridRowsUtils.js +27 -1
  258. package/legacy/hooks/features/rows/useGridRows.js +131 -61
  259. package/legacy/hooks/features/rows/useGridRowsMeta.js +6 -13
  260. package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
  261. package/legacy/hooks/features/scroll/useGridScroll.js +31 -4
  262. package/legacy/hooks/features/selection/useGridSelection.js +15 -11
  263. package/legacy/hooks/features/sorting/useGridSorting.js +12 -15
  264. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +79 -42
  265. package/legacy/hooks/utils/useGridApiEventHandler.js +20 -9
  266. package/legacy/hooks/utils/useGridNativeEventListener.js +1 -2
  267. package/legacy/hooks/utils/useGridSelector.js +1 -1
  268. package/legacy/index.js +1 -1
  269. package/legacy/internals/index.js +6 -2
  270. package/legacy/locales/arSD.js +8 -1
  271. package/legacy/locales/bgBG.js +8 -1
  272. package/legacy/locales/csCZ.js +7 -0
  273. package/legacy/locales/daDK.js +8 -1
  274. package/legacy/locales/deDE.js +10 -3
  275. package/legacy/locales/elGR.js +7 -0
  276. package/legacy/locales/esES.js +7 -0
  277. package/legacy/locales/faIR.js +8 -1
  278. package/legacy/locales/fiFI.js +7 -0
  279. package/legacy/locales/frFR.js +7 -0
  280. package/legacy/locales/heIL.js +8 -1
  281. package/legacy/locales/huHU.js +127 -0
  282. package/legacy/locales/index.js +1 -0
  283. package/legacy/locales/itIT.js +7 -0
  284. package/legacy/locales/jaJP.js +7 -0
  285. package/legacy/locales/koKR.js +7 -0
  286. package/legacy/locales/nlNL.js +7 -0
  287. package/legacy/locales/plPL.js +8 -1
  288. package/legacy/locales/ptBR.js +8 -1
  289. package/legacy/locales/ruRU.js +7 -0
  290. package/legacy/locales/skSK.js +7 -0
  291. package/legacy/locales/trTR.js +8 -1
  292. package/legacy/locales/ukUA.js +7 -0
  293. package/legacy/locales/viVN.js +7 -0
  294. package/legacy/locales/zhCN.js +7 -0
  295. package/legacy/models/api/gridColumnSpanning.js +1 -0
  296. package/legacy/models/events/gridEvents.js +10 -3
  297. package/legacy/models/gridColumnSpanning.js +1 -0
  298. package/legacy/models/index.js +4 -3
  299. package/legacy/utils/createSelector.js +18 -2
  300. package/legacy/utils/exportAs.js +1 -1
  301. package/locales/arSD.js +8 -1
  302. package/locales/bgBG.js +8 -1
  303. package/locales/csCZ.js +7 -0
  304. package/locales/daDK.js +8 -1
  305. package/locales/deDE.js +10 -3
  306. package/locales/elGR.js +7 -0
  307. package/locales/esES.js +7 -0
  308. package/locales/faIR.js +8 -1
  309. package/locales/fiFI.js +7 -0
  310. package/locales/frFR.js +7 -0
  311. package/locales/heIL.js +8 -1
  312. package/locales/huHU.d.ts +2 -0
  313. package/locales/huHU.js +115 -0
  314. package/locales/index.d.ts +1 -0
  315. package/locales/index.js +1 -0
  316. package/locales/itIT.js +7 -0
  317. package/locales/jaJP.js +7 -0
  318. package/locales/koKR.js +7 -0
  319. package/locales/nlNL.js +7 -0
  320. package/locales/plPL.js +8 -1
  321. package/locales/ptBR.js +8 -1
  322. package/locales/ruRU.js +7 -0
  323. package/locales/skSK.js +7 -0
  324. package/locales/trTR.js +8 -1
  325. package/locales/ukUA.js +7 -0
  326. package/locales/viVN.js +7 -0
  327. package/locales/zhCN.js +7 -0
  328. package/models/api/gridApiCommon.d.ts +2 -1
  329. package/models/api/gridColumnSpanning.d.ts +28 -0
  330. package/models/api/gridColumnSpanning.js +1 -0
  331. package/models/api/gridCoreApi.d.ts +10 -0
  332. package/models/api/gridEditingApi.d.ts +72 -7
  333. package/models/api/gridFilterApi.d.ts +5 -0
  334. package/models/api/gridFocusApi.d.ts +1 -0
  335. package/models/api/gridLocaleTextApi.d.ts +5 -0
  336. package/models/api/gridRowApi.d.ts +34 -0
  337. package/models/api/index.d.ts +1 -1
  338. package/models/colDef/gridColDef.d.ts +18 -0
  339. package/models/events/gridEventLookup.d.ts +296 -11
  340. package/models/events/gridEvents.d.ts +10 -258
  341. package/models/events/gridEvents.js +10 -3
  342. package/models/gridColumnSpanning.d.ts +12 -0
  343. package/models/gridColumnSpanning.js +1 -0
  344. package/models/gridEditRowModel.d.ts +1 -1
  345. package/models/gridExport.d.ts +29 -2
  346. package/models/gridFilterModel.d.ts +11 -0
  347. package/models/gridFilterOperator.d.ts +1 -1
  348. package/models/gridIconSlotsComponent.d.ts +5 -0
  349. package/models/gridStateCommunity.d.ts +0 -2
  350. package/models/index.d.ts +1 -1
  351. package/models/index.js +4 -3
  352. package/models/params/gridCellParams.d.ts +12 -2
  353. package/models/params/gridRowParams.d.ts +5 -0
  354. package/models/props/DataGridProps.d.ts +57 -29
  355. package/modern/DataGrid/DataGrid.js +36 -2
  356. package/modern/DataGrid/useDataGridComponent.js +3 -1
  357. package/modern/DataGrid/useDataGridProps.js +2 -1
  358. package/modern/colDef/gridActionsColDef.js +2 -1
  359. package/modern/colDef/gridBooleanColDef.js +2 -1
  360. package/modern/colDef/gridCheckboxSelectionColDef.js +1 -0
  361. package/modern/colDef/gridDateColDef.js +4 -2
  362. package/modern/colDef/gridNumericColDef.js +3 -2
  363. package/modern/colDef/gridNumericOperators.js +11 -0
  364. package/modern/colDef/gridSingleSelectColDef.js +3 -2
  365. package/modern/colDef/gridSingleSelectOperators.js +52 -0
  366. package/modern/colDef/gridStringColDef.js +3 -2
  367. package/modern/colDef/gridStringOperators.js +12 -0
  368. package/modern/components/GridFooter.js +11 -2
  369. package/modern/components/GridRow.js +56 -26
  370. package/modern/components/GridRowCount.js +1 -0
  371. package/modern/components/GridScrollArea.js +3 -4
  372. package/modern/components/GridSelectedRowCount.js +2 -1
  373. package/modern/components/base/GridBody.js +1 -2
  374. package/modern/components/base/GridOverlays.js +5 -5
  375. package/modern/components/cell/GridActionsCell.js +179 -21
  376. package/modern/components/cell/GridActionsCellItem.js +7 -5
  377. package/modern/components/cell/GridCell.js +36 -15
  378. package/modern/components/cell/GridEditBooleanCell.js +101 -6
  379. package/modern/components/cell/GridEditDateCell.js +99 -5
  380. package/modern/components/cell/GridEditInputCell.js +30 -6
  381. package/modern/components/cell/GridEditSingleSelectCell.js +48 -16
  382. package/modern/components/cell/index.js +2 -0
  383. package/modern/components/columnHeaders/GridColumnHeaderItem.js +19 -23
  384. package/modern/components/columnHeaders/GridColumnHeaders.js +1 -1
  385. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +22 -6
  386. package/modern/components/columnSelection/GridHeaderCheckbox.js +4 -5
  387. package/modern/components/containers/GridFooterContainer.js +11 -2
  388. package/modern/components/containers/GridRootStyles.js +36 -1
  389. package/modern/components/containers/GridToolbarContainer.js +12 -2
  390. package/modern/components/menu/GridMenu.js +1 -0
  391. package/modern/components/panel/GridPanel.js +1 -0
  392. package/modern/components/panel/GridPanelContent.js +13 -2
  393. package/modern/components/panel/GridPanelFooter.js +13 -2
  394. package/modern/components/panel/GridPanelHeader.js +13 -2
  395. package/modern/components/panel/filterPanel/GridFilterForm.js +10 -6
  396. package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +11 -6
  397. package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +20 -13
  398. package/modern/components/panel/filterPanel/GridFilterInputValue.js +20 -13
  399. package/modern/components/toolbar/GridToolbar.js +30 -7
  400. package/modern/components/toolbar/GridToolbarDensitySelector.js +1 -1
  401. package/modern/components/toolbar/GridToolbarExport.js +15 -20
  402. package/modern/components/toolbar/GridToolbarQuickFilter.js +86 -0
  403. package/modern/components/toolbar/index.js +3 -2
  404. package/modern/components/virtualization/GridVirtualScroller.js +2 -0
  405. package/modern/components/virtualization/GridVirtualScrollerContent.js +1 -3
  406. package/modern/constants/defaultGridSlotsComponents.js +3 -2
  407. package/modern/constants/gridClasses.js +1 -1
  408. package/modern/constants/gridDetailPanelToggleField.js +2 -0
  409. package/modern/constants/localeTextConstants.js +8 -1
  410. package/modern/hooks/core/pipeProcessing/index.js +2 -1
  411. package/modern/hooks/core/pipeProcessing/useGridPipeProcessing.js +53 -19
  412. package/modern/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +27 -0
  413. package/modern/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -4
  414. package/modern/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -7
  415. package/modern/hooks/core/useGridApiInitialization.js +3 -3
  416. package/modern/hooks/core/useGridErrorHandler.js +1 -2
  417. package/modern/hooks/core/useGridStateInitialization.js +1 -2
  418. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +81 -16
  419. package/modern/hooks/features/columnMenu/useGridColumnMenu.js +3 -3
  420. package/modern/hooks/features/columns/gridColumnsUtils.js +61 -8
  421. package/modern/hooks/features/columns/useGridColumnSpanning.js +106 -0
  422. package/modern/hooks/features/columns/useGridColumns.js +30 -25
  423. package/modern/hooks/features/dimensions/useGridDimensions.js +10 -11
  424. package/modern/hooks/features/editRows/useGridCellEditing.new.js +149 -42
  425. package/modern/hooks/features/editRows/useGridCellEditing.old.js +20 -21
  426. package/modern/hooks/features/editRows/useGridEditing.new.js +7 -3
  427. package/modern/hooks/features/editRows/useGridEditing.old.js +4 -5
  428. package/modern/hooks/features/editRows/useGridRowEditing.new.js +143 -57
  429. package/modern/hooks/features/editRows/useGridRowEditing.old.js +21 -22
  430. package/modern/hooks/features/events/useGridEvents.js +17 -18
  431. package/modern/hooks/features/export/serializers/csvSerializer.js +5 -5
  432. package/modern/hooks/features/export/useGridCsvExport.js +21 -16
  433. package/modern/hooks/features/export/useGridPrintExport.js +20 -0
  434. package/modern/hooks/features/export/utils.js +13 -0
  435. package/modern/hooks/features/filter/gridFilterState.js +3 -1
  436. package/modern/hooks/features/filter/gridFilterUtils.js +80 -2
  437. package/modern/hooks/features/filter/useGridFilter.js +32 -15
  438. package/modern/hooks/features/focus/useGridFocus.js +48 -42
  439. package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +41 -12
  440. package/modern/hooks/features/pagination/useGridPage.js +3 -4
  441. package/modern/hooks/features/pagination/useGridPageSize.js +2 -3
  442. package/modern/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -6
  443. package/modern/hooks/features/rows/gridRowsSelector.js +2 -0
  444. package/modern/hooks/features/rows/gridRowsUtils.js +23 -1
  445. package/modern/hooks/features/rows/useGridRows.js +121 -61
  446. package/modern/hooks/features/rows/useGridRowsMeta.js +6 -13
  447. package/modern/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
  448. package/modern/hooks/features/scroll/useGridScroll.js +29 -4
  449. package/modern/hooks/features/selection/useGridSelection.js +15 -11
  450. package/modern/hooks/features/sorting/useGridSorting.js +17 -18
  451. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +68 -28
  452. package/modern/hooks/utils/useGridApiEventHandler.js +20 -9
  453. package/modern/hooks/utils/useGridNativeEventListener.js +1 -2
  454. package/modern/hooks/utils/useGridSelector.js +1 -1
  455. package/modern/index.js +1 -1
  456. package/modern/internals/index.js +6 -2
  457. package/modern/locales/arSD.js +8 -1
  458. package/modern/locales/bgBG.js +8 -1
  459. package/modern/locales/csCZ.js +7 -0
  460. package/modern/locales/daDK.js +8 -1
  461. package/modern/locales/deDE.js +10 -3
  462. package/modern/locales/elGR.js +7 -0
  463. package/modern/locales/esES.js +7 -0
  464. package/modern/locales/faIR.js +8 -1
  465. package/modern/locales/fiFI.js +7 -0
  466. package/modern/locales/frFR.js +7 -0
  467. package/modern/locales/heIL.js +8 -1
  468. package/modern/locales/huHU.js +115 -0
  469. package/modern/locales/index.js +1 -0
  470. package/modern/locales/itIT.js +7 -0
  471. package/modern/locales/jaJP.js +7 -0
  472. package/modern/locales/koKR.js +7 -0
  473. package/modern/locales/nlNL.js +7 -0
  474. package/modern/locales/plPL.js +8 -1
  475. package/modern/locales/ptBR.js +8 -1
  476. package/modern/locales/ruRU.js +7 -0
  477. package/modern/locales/skSK.js +7 -0
  478. package/modern/locales/trTR.js +8 -1
  479. package/modern/locales/ukUA.js +7 -0
  480. package/modern/locales/viVN.js +7 -0
  481. package/modern/locales/zhCN.js +7 -0
  482. package/modern/models/api/gridColumnSpanning.js +1 -0
  483. package/modern/models/events/gridEvents.js +10 -3
  484. package/modern/models/gridColumnSpanning.js +1 -0
  485. package/modern/models/index.js +4 -3
  486. package/modern/utils/createSelector.js +20 -2
  487. package/modern/utils/exportAs.js +1 -1
  488. package/node/DataGrid/DataGrid.js +36 -2
  489. package/node/DataGrid/useDataGridComponent.js +4 -1
  490. package/node/DataGrid/useDataGridProps.js +2 -1
  491. package/node/colDef/gridActionsColDef.js +2 -1
  492. package/node/colDef/gridBooleanColDef.js +2 -1
  493. package/node/colDef/gridCheckboxSelectionColDef.js +1 -0
  494. package/node/colDef/gridDateColDef.js +4 -2
  495. package/node/colDef/gridNumericColDef.js +2 -1
  496. package/node/colDef/gridNumericOperators.js +15 -1
  497. package/node/colDef/gridSingleSelectColDef.js +2 -1
  498. package/node/colDef/gridSingleSelectOperators.js +56 -1
  499. package/node/colDef/gridStringColDef.js +2 -1
  500. package/node/colDef/gridStringOperators.js +16 -1
  501. package/node/components/GridFooter.js +10 -1
  502. package/node/components/GridRow.js +59 -29
  503. package/node/components/GridRowCount.js +1 -0
  504. package/node/components/GridScrollArea.js +3 -5
  505. package/node/components/GridSelectedRowCount.js +2 -1
  506. package/node/components/base/GridBody.js +1 -3
  507. package/node/components/base/GridOverlays.js +4 -5
  508. package/node/components/cell/GridActionsCell.js +181 -21
  509. package/node/components/cell/GridActionsCellItem.js +7 -4
  510. package/node/components/cell/GridCell.js +35 -14
  511. package/node/components/cell/GridEditBooleanCell.js +100 -5
  512. package/node/components/cell/GridEditDateCell.js +98 -4
  513. package/node/components/cell/GridEditInputCell.js +30 -6
  514. package/node/components/cell/GridEditSingleSelectCell.js +50 -18
  515. package/node/components/cell/index.js +26 -0
  516. package/node/components/columnHeaders/GridColumnHeaderItem.js +19 -24
  517. package/node/components/columnHeaders/GridColumnHeaders.js +1 -1
  518. package/node/components/columnSelection/GridCellCheckboxRenderer.js +22 -7
  519. package/node/components/columnSelection/GridHeaderCheckbox.js +4 -6
  520. package/node/components/containers/GridFooterContainer.js +10 -1
  521. package/node/components/containers/GridRootStyles.js +36 -1
  522. package/node/components/containers/GridToolbarContainer.js +11 -1
  523. package/node/components/menu/GridMenu.js +1 -0
  524. package/node/components/panel/GridPanel.js +1 -0
  525. package/node/components/panel/GridPanelContent.js +11 -1
  526. package/node/components/panel/GridPanelFooter.js +11 -1
  527. package/node/components/panel/GridPanelHeader.js +11 -1
  528. package/node/components/panel/filterPanel/GridFilterForm.js +15 -10
  529. package/node/components/panel/filterPanel/GridFilterInputBoolean.js +14 -8
  530. package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +23 -15
  531. package/node/components/panel/filterPanel/GridFilterInputValue.js +23 -15
  532. package/node/components/toolbar/GridToolbar.js +32 -7
  533. package/node/components/toolbar/GridToolbarDensitySelector.js +1 -1
  534. package/node/components/toolbar/GridToolbarExport.js +14 -19
  535. package/node/components/toolbar/GridToolbarQuickFilter.js +111 -0
  536. package/node/components/toolbar/index.js +42 -11
  537. package/node/components/virtualization/GridVirtualScroller.js +2 -0
  538. package/node/components/virtualization/GridVirtualScrollerContent.js +1 -3
  539. package/node/constants/defaultGridSlotsComponents.js +2 -1
  540. package/node/constants/gridClasses.js +1 -1
  541. package/node/constants/gridDetailPanelToggleField.js +9 -0
  542. package/node/constants/localeTextConstants.js +8 -1
  543. package/node/hooks/core/pipeProcessing/index.js +13 -0
  544. package/node/hooks/core/pipeProcessing/useGridPipeProcessing.js +51 -20
  545. package/node/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +42 -0
  546. package/node/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -3
  547. package/node/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -8
  548. package/node/hooks/core/useGridApiInitialization.js +3 -4
  549. package/node/hooks/core/useGridErrorHandler.js +1 -3
  550. package/node/hooks/core/useGridStateInitialization.js +1 -3
  551. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +85 -17
  552. package/node/hooks/features/columnMenu/useGridColumnMenu.js +3 -4
  553. package/node/hooks/features/columns/gridColumnsUtils.js +65 -9
  554. package/node/hooks/features/columns/useGridColumnSpanning.js +128 -0
  555. package/node/hooks/features/columns/useGridColumns.js +29 -25
  556. package/node/hooks/features/dimensions/useGridDimensions.js +10 -12
  557. package/node/hooks/features/editRows/useGridCellEditing.new.js +151 -42
  558. package/node/hooks/features/editRows/useGridCellEditing.old.js +20 -22
  559. package/node/hooks/features/editRows/useGridEditing.new.js +6 -2
  560. package/node/hooks/features/editRows/useGridEditing.old.js +4 -6
  561. package/node/hooks/features/editRows/useGridRowEditing.new.js +143 -57
  562. package/node/hooks/features/editRows/useGridRowEditing.old.js +21 -23
  563. package/node/hooks/features/events/useGridEvents.js +17 -19
  564. package/node/hooks/features/export/serializers/csvSerializer.js +5 -5
  565. package/node/hooks/features/export/useGridCsvExport.js +26 -17
  566. package/node/hooks/features/export/useGridPrintExport.js +25 -0
  567. package/node/hooks/features/export/utils.js +19 -2
  568. package/node/hooks/features/filter/gridFilterState.js +3 -1
  569. package/node/hooks/features/filter/gridFilterUtils.js +92 -3
  570. package/node/hooks/features/filter/useGridFilter.js +33 -16
  571. package/node/hooks/features/focus/useGridFocus.js +48 -43
  572. package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +44 -13
  573. package/node/hooks/features/pagination/useGridPage.js +3 -5
  574. package/node/hooks/features/pagination/useGridPageSize.js +2 -4
  575. package/node/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -8
  576. package/node/hooks/features/rows/gridRowsSelector.js +5 -1
  577. package/node/hooks/features/rows/gridRowsUtils.js +29 -1
  578. package/node/hooks/features/rows/useGridRows.js +122 -61
  579. package/node/hooks/features/rows/useGridRowsMeta.js +6 -14
  580. package/node/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
  581. package/node/hooks/features/scroll/useGridScroll.js +32 -3
  582. package/node/hooks/features/selection/useGridSelection.js +16 -12
  583. package/node/hooks/features/sorting/useGridSorting.js +17 -19
  584. package/node/hooks/features/virtualization/useGridVirtualScroller.js +73 -33
  585. package/node/hooks/utils/useGridApiEventHandler.js +22 -10
  586. package/node/hooks/utils/useGridNativeEventListener.js +1 -3
  587. package/node/hooks/utils/useGridSelector.js +1 -1
  588. package/node/index.js +1 -1
  589. package/node/internals/index.js +47 -3
  590. package/node/locales/arSD.js +8 -1
  591. package/node/locales/bgBG.js +8 -1
  592. package/node/locales/csCZ.js +7 -0
  593. package/node/locales/daDK.js +8 -1
  594. package/node/locales/deDE.js +10 -3
  595. package/node/locales/elGR.js +7 -0
  596. package/node/locales/esES.js +7 -0
  597. package/node/locales/faIR.js +8 -1
  598. package/node/locales/fiFI.js +7 -0
  599. package/node/locales/frFR.js +7 -0
  600. package/node/locales/heIL.js +8 -1
  601. package/node/locales/huHU.js +125 -0
  602. package/node/locales/index.js +13 -0
  603. package/node/locales/itIT.js +7 -0
  604. package/node/locales/jaJP.js +7 -0
  605. package/node/locales/koKR.js +7 -0
  606. package/node/locales/nlNL.js +7 -0
  607. package/node/locales/plPL.js +8 -1
  608. package/node/locales/ptBR.js +8 -1
  609. package/node/locales/ruRU.js +7 -0
  610. package/node/locales/skSK.js +7 -0
  611. package/node/locales/trTR.js +8 -1
  612. package/node/locales/ukUA.js +7 -0
  613. package/node/locales/viVN.js +7 -0
  614. package/node/locales/zhCN.js +7 -0
  615. package/node/models/api/gridColumnSpanning.js +5 -0
  616. package/node/models/events/gridEvents.js +10 -3
  617. package/node/models/gridColumnSpanning.js +5 -0
  618. package/node/models/index.js +0 -13
  619. package/node/utils/createSelector.js +25 -4
  620. package/node/utils/exportAs.js +1 -1
  621. package/package.json +4 -4
  622. package/utils/createSelector.d.ts +2 -1
  623. package/utils/createSelector.js +20 -2
  624. package/utils/domUtils.d.ts +2 -2
  625. package/utils/exportAs.d.ts +2 -2
  626. package/utils/exportAs.js +1 -1
@@ -11,8 +11,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
11
11
 
12
12
  var React = _interopRequireWildcard(require("react"));
13
13
 
14
- var _events = require("../../../models/events");
15
-
16
14
  var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
17
15
 
18
16
  var _useGridApiMethod = require("../../utils/useGridApiMethod");
@@ -37,6 +35,8 @@ var _keyboardUtils = require("../../../utils/keyboardUtils");
37
35
 
38
36
  var _useGridVisibleRows = require("../../utils/useGridVisibleRows");
39
37
 
38
+ var _gridDetailPanelToggleField = require("../../../constants/gridDetailPanelToggleField");
39
+
40
40
  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); }
41
41
 
42
42
  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; }
@@ -85,7 +85,7 @@ const useGridSelection = (apiRef, props) => {
85
85
  propModel: propSelectionModel,
86
86
  propOnChange: props.onSelectionModelChange,
87
87
  stateSelector: _gridSelectionSelector.gridSelectionStateSelector,
88
- changeEvent: _events.GridEvents.selectionChange
88
+ changeEvent: 'selectionChange'
89
89
  });
90
90
  const {
91
91
  checkboxSelection,
@@ -226,6 +226,10 @@ const useGridSelection = (apiRef, props) => {
226
226
  */
227
227
 
228
228
  const removeOutdatedSelection = React.useCallback(() => {
229
+ if (props.keepNonExistentRowsSelected) {
230
+ return;
231
+ }
232
+
229
233
  const currentSelection = (0, _gridSelectionSelector.gridSelectionStateSelector)(apiRef.current.state);
230
234
  const rowsLookup = (0, _gridRowsSelector.gridRowsLookupSelector)(apiRef); // We clone the existing object to avoid mutating the same object returned by the selector to others part of the project
231
235
 
@@ -241,12 +245,12 @@ const useGridSelection = (apiRef, props) => {
241
245
  if (hasChanged) {
242
246
  apiRef.current.setSelectionModel(Object.values(selectionLookup));
243
247
  }
244
- }, [apiRef]);
248
+ }, [apiRef, props.keepNonExistentRowsSelected]);
245
249
  const handleSingleRowSelection = React.useCallback((id, event) => {
246
250
  const hasCtrlKey = event.metaKey || event.ctrlKey; // multiple selection is only allowed if:
247
251
  // - it is a checkboxSelection
248
252
  // - it is a keyboard selection
249
- // - CTRL is pressed
253
+ // - Ctrl is pressed
250
254
 
251
255
  const isMultipleSelectionDisabled = !checkboxSelection && !hasCtrlKey && !(0, _keyboardUtils.isKeyboardEvent)(event);
252
256
  const resetSelection = !canHaveMultipleSelection || isMultipleSelectionDisabled;
@@ -268,7 +272,7 @@ const useGridSelection = (apiRef, props) => {
268
272
  return;
269
273
  }
270
274
 
271
- if (params.field === '__detail_panel_toggle__') {
275
+ if (params.field === _gridDetailPanelToggleField.GRID_DETAIL_PANEL_TOGGLE_FIELD) {
272
276
  // click to open the detail panel should not select the row
273
277
  return;
274
278
  }
@@ -376,12 +380,12 @@ const useGridSelection = (apiRef, props) => {
376
380
  selectRows(apiRef.current.getAllRowIds(), true);
377
381
  }
378
382
  }, [apiRef, handleSingleRowSelection, selectRows, visibleRows.rows, canHaveMultipleSelection]);
379
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.visibleRowsSet, removeOutdatedSelection);
380
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.cellClick, handleCellClick);
381
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.rowSelectionCheckboxChange, handleRowSelectionCheckboxChange);
382
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.headerSelectionCheckboxChange, handleHeaderSelectionCheckboxChange);
383
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.cellMouseDown, preventSelectionOnShift);
384
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.cellKeyDown, handleCellKeyDown);
383
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'sortedRowsSet', removeOutdatedSelection);
384
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'cellClick', handleCellClick);
385
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'rowSelectionCheckboxChange', handleRowSelectionCheckboxChange);
386
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'headerSelectionCheckboxChange', handleHeaderSelectionCheckboxChange);
387
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'cellMouseDown', preventSelectionOnShift);
388
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'cellKeyDown', handleCellKeyDown);
385
389
  /**
386
390
  * EFFECTS
387
391
  */
@@ -11,8 +11,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
11
11
 
12
12
  var React = _interopRequireWildcard(require("react"));
13
13
 
14
- var _events = require("../../../models/events");
15
-
16
14
  var _gridFeatureMode = require("../../../models/gridFeatureMode");
17
15
 
18
16
  var _keyboardUtils = require("../../../utils/keyboardUtils");
@@ -67,7 +65,7 @@ const useGridSorting = (apiRef, props) => {
67
65
  propModel: props.sortModel,
68
66
  propOnChange: props.onSortModelChange,
69
67
  stateSelector: _gridSortingSelector.gridSortModelSelector,
70
- changeEvent: _events.GridEvents.sortModelChange
68
+ changeEvent: 'sortModelChange'
71
69
  });
72
70
  const upsertSortModel = React.useCallback((field, sortItem) => {
73
71
  const sortModel = (0, _gridSortingSelector.gridSortModelSelector)(apiRef);
@@ -111,17 +109,16 @@ const useGridSorting = (apiRef, props) => {
111
109
  */
112
110
 
113
111
  const applySorting = React.useCallback(() => {
114
- if (props.sortingMode === _gridFeatureMode.GridFeatureModeConstant.server) {
115
- logger.debug('Skipping sorting rows as sortingMode = server');
116
- apiRef.current.setState(state => (0, _extends2.default)({}, state, {
117
- sorting: (0, _extends2.default)({}, state.sorting, {
118
- sortedRows: (0, _rows.gridRowIdsSelector)(state, apiRef.current.instanceId)
119
- })
120
- }));
121
- return;
122
- }
123
-
124
112
  apiRef.current.setState(state => {
113
+ if (props.sortingMode === _gridFeatureMode.GridFeatureModeConstant.server) {
114
+ logger.debug('Skipping sorting rows as sortingMode = server');
115
+ return (0, _extends2.default)({}, state, {
116
+ sorting: (0, _extends2.default)({}, state.sorting, {
117
+ sortedRows: (0, _rows.gridRowIdsSelector)(state, apiRef.current.instanceId)
118
+ })
119
+ });
120
+ }
121
+
125
122
  const sortModel = (0, _gridSortingSelector.gridSortModelSelector)(state, apiRef.current.instanceId);
126
123
  const sortRowList = (0, _gridSortingUtils.buildAggregatedSortingApplier)(sortModel, apiRef);
127
124
  const sortedRows = apiRef.current.unstable_applyStrategyProcessor('sorting', {
@@ -133,6 +130,7 @@ const useGridSorting = (apiRef, props) => {
133
130
  })
134
131
  });
135
132
  });
133
+ apiRef.current.publishEvent('sortedRowsSet');
136
134
  apiRef.current.forceUpdate();
137
135
  }, [apiRef, logger, props.sortingMode]);
138
136
  const setSortModel = React.useCallback(model => {
@@ -235,7 +233,7 @@ const useGridSorting = (apiRef, props) => {
235
233
  const handleColumnHeaderKeyDown = React.useCallback(({
236
234
  colDef
237
235
  }, event) => {
238
- // CTRL + Enter opens the column menu
236
+ // Ctrl + Enter opens the column menu
239
237
  if ((0, _keyboardUtils.isEnterKey)(event.key) && !event.ctrlKey && !event.metaKey) {
240
238
  sortColumn(colDef, undefined, event.shiftKey);
241
239
  }
@@ -258,11 +256,11 @@ const useGridSorting = (apiRef, props) => {
258
256
  apiRef.current.applySorting();
259
257
  }
260
258
  }, [apiRef]);
261
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.columnHeaderClick, handleColumnHeaderClick);
262
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.columnHeaderKeyDown, handleColumnHeaderKeyDown);
263
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.rowsSet, apiRef.current.applySorting);
264
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.columnsChange, handleColumnsChange);
265
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.activeStrategyProcessorChange, handleStrategyProcessorChange);
259
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnHeaderClick', handleColumnHeaderClick);
260
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnHeaderKeyDown', handleColumnHeaderKeyDown);
261
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'rowsSet', apiRef.current.applySorting);
262
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnsChange', handleColumnsChange);
263
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'activeStrategyProcessorChange', handleStrategyProcessorChange);
266
264
  /**
267
265
  * 1ST RENDER
268
266
  */
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.getIndexFromScroll = getIndexFromScroll;
9
- exports.useGridVirtualScroller = void 0;
9
+ exports.useGridVirtualScroller = exports.getRenderableIndexes = void 0;
10
10
 
11
11
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
12
12
 
@@ -14,6 +14,8 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
14
14
 
15
15
  var React = _interopRequireWildcard(require("react"));
16
16
 
17
+ var ReactDOM = _interopRequireWildcard(require("react-dom"));
18
+
17
19
  var _utils = require("@mui/material/utils");
18
20
 
19
21
  var _useGridApiContext = require("../../utils/useGridApiContext");
@@ -32,8 +34,6 @@ var _gridEditRowsSelector = require("../editRows/gridEditRowsSelector");
32
34
 
33
35
  var _useGridVisibleRows = require("../../utils/useGridVisibleRows");
34
36
 
35
- var _events = require("../../../models/events");
36
-
37
37
  var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
38
38
 
39
39
  var _utils2 = require("../../../utils/utils");
@@ -42,6 +42,8 @@ var _gridSelectionSelector = require("../selection/gridSelectionSelector");
42
42
 
43
43
  var _gridRowsMetaSelector = require("../rows/gridRowsMetaSelector");
44
44
 
45
+ var _gridColumnsUtils = require("../columns/gridColumnsUtils");
46
+
45
47
  var _jsxRuntime = require("react/jsx-runtime");
46
48
 
47
49
  const _excluded = ["style"];
@@ -65,9 +67,19 @@ function getIndexFromScroll(offset, positions, sliceStart = 0, sliceEnd = positi
65
67
  return offset <= itemOffset ? getIndexFromScroll(offset, positions, sliceStart, pivot) : getIndexFromScroll(offset, positions, pivot + 1, sliceEnd);
66
68
  }
67
69
 
68
- const useGridVirtualScroller = props => {
69
- var _currentPage$range2;
70
+ const getRenderableIndexes = ({
71
+ firstIndex,
72
+ lastIndex,
73
+ buffer,
74
+ minFirstIndex,
75
+ maxLastIndex
76
+ }) => {
77
+ return [(0, _utils2.clamp)(firstIndex - buffer, minFirstIndex, maxLastIndex), (0, _utils2.clamp)(lastIndex + buffer, minFirstIndex, maxLastIndex)];
78
+ };
79
+
80
+ exports.getRenderableIndexes = getRenderableIndexes;
70
81
 
82
+ const useGridVirtualScroller = props => {
71
83
  const apiRef = (0, _useGridApiContext.useGridApiContext)();
72
84
  const rootProps = (0, _useGridRootProps.useGridRootProps)();
73
85
  const visibleColumns = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnsSelector.gridVisibleColumnDefinitionsSelector);
@@ -141,35 +153,29 @@ const useGridVirtualScroller = props => {
141
153
  setContainerWidth(rootRef.current.clientWidth);
142
154
  }
143
155
  }, []);
144
- (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, _events.GridEvents.resize, handleResize);
145
-
146
- const getRenderableIndexes = ({
147
- firstIndex,
148
- lastIndex,
149
- buffer,
150
- minFirstIndex,
151
- maxLastIndex
152
- }) => {
153
- return [(0, _utils2.clamp)(firstIndex - buffer, minFirstIndex, maxLastIndex), (0, _utils2.clamp)(lastIndex + buffer, minFirstIndex, maxLastIndex)];
154
- };
155
-
156
+ (0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'resize', handleResize);
156
157
  const updateRenderZonePosition = React.useCallback(nextRenderContext => {
157
- var _currentPage$range;
158
-
159
- const [firstRowToRender] = getRenderableIndexes({
158
+ const [firstRowToRender, lastRowToRender] = getRenderableIndexes({
160
159
  firstIndex: nextRenderContext.firstRowIndex,
161
160
  lastIndex: nextRenderContext.lastRowIndex,
162
161
  minFirstIndex: 0,
163
- maxLastIndex: ((_currentPage$range = currentPage.range) == null ? void 0 : _currentPage$range.lastRowIndex) || 0,
162
+ maxLastIndex: currentPage.rows.length,
164
163
  buffer: rootProps.rowBuffer
165
164
  });
166
- const [firstColumnToRender] = getRenderableIndexes({
165
+ const [initialFirstColumnToRender] = getRenderableIndexes({
167
166
  firstIndex: nextRenderContext.firstColumnIndex,
168
167
  lastIndex: nextRenderContext.lastColumnIndex,
169
168
  minFirstIndex: renderZoneMinColumnIndex,
170
169
  maxLastIndex: renderZoneMaxColumnIndex,
171
170
  buffer: rootProps.columnBuffer
172
171
  });
172
+ const firstColumnToRender = (0, _gridColumnsUtils.getFirstNonSpannedColumnToRender)({
173
+ firstColumnToRender: initialFirstColumnToRender,
174
+ apiRef,
175
+ firstRowToRender,
176
+ lastRowToRender,
177
+ visibleRows: currentPage.rows
178
+ });
173
179
  const top = (0, _gridRowsMetaSelector.gridRowsMetaSelector)(apiRef.current.state).positions[firstRowToRender];
174
180
  const left = (0, _gridColumnsSelector.gridColumnPositionsSelector)(apiRef)[firstColumnToRender]; // Call directly the selector because it might be outdated when this method is called
175
181
 
@@ -181,19 +187,22 @@ const useGridVirtualScroller = props => {
181
187
  left
182
188
  });
183
189
  }
184
- }, [apiRef, (_currentPage$range2 = currentPage.range) == null ? void 0 : _currentPage$range2.lastRowIndex, onRenderZonePositioning, renderZoneMaxColumnIndex, renderZoneMinColumnIndex, rootProps.columnBuffer, rootProps.rowBuffer]);
190
+ }, [apiRef, currentPage.rows, onRenderZonePositioning, renderZoneMinColumnIndex, renderZoneMaxColumnIndex, rootProps.columnBuffer, rootProps.rowBuffer]);
191
+ React.useLayoutEffect(() => {
192
+ if (renderContext) {
193
+ updateRenderZonePosition(renderContext);
194
+ }
195
+ }, [renderContext, updateRenderZonePosition]);
185
196
  const updateRenderContext = React.useCallback(nextRenderContext => {
186
197
  setRenderContext(nextRenderContext);
187
- updateRenderZonePosition(nextRenderContext);
188
198
  prevRenderContext.current = nextRenderContext;
189
- }, [setRenderContext, prevRenderContext, updateRenderZonePosition]);
199
+ }, [setRenderContext, prevRenderContext]);
190
200
  React.useEffect(() => {
191
201
  if (containerWidth == null) {
192
202
  return;
193
203
  }
194
204
 
195
205
  const initialRenderContext = computeRenderContext();
196
- prevRenderContext.current = initialRenderContext;
197
206
  updateRenderContext(initialRenderContext);
198
207
  const {
199
208
  top,
@@ -204,7 +213,7 @@ const useGridVirtualScroller = props => {
204
213
  left,
205
214
  renderContext: initialRenderContext
206
215
  };
207
- apiRef.current.publishEvent(_events.GridEvents.rowsScroll, params);
216
+ apiRef.current.publishEvent('rowsScroll', params);
208
217
  }, [apiRef, computeRenderContext, containerWidth, updateRenderContext]);
209
218
 
210
219
  const handleScroll = event => {
@@ -227,18 +236,29 @@ const useGridVirtualScroller = props => {
227
236
  const bottomColumnsScrolledSincePreviousRender = Math.abs(nextRenderContext.lastColumnIndex - prevRenderContext.current.lastColumnIndex);
228
237
  const shouldSetState = topRowsScrolledSincePreviousRender >= rootProps.rowThreshold || bottomRowsScrolledSincePreviousRender >= rootProps.rowThreshold || topColumnsScrolledSincePreviousRender >= rootProps.columnThreshold || bottomColumnsScrolledSincePreviousRender >= rootProps.columnThreshold || prevTotalWidth.current !== columnsTotalWidth; // TODO v6: rename event to a wider name, it's not only fired for row scrolling
229
238
 
230
- apiRef.current.publishEvent(_events.GridEvents.rowsScroll, {
239
+ apiRef.current.publishEvent('rowsScroll', {
231
240
  top: scrollTop,
232
241
  left: scrollLeft,
233
242
  renderContext: shouldSetState ? nextRenderContext : prevRenderContext.current
234
- });
243
+ }, event);
235
244
 
236
245
  if (shouldSetState) {
237
- updateRenderContext(nextRenderContext);
246
+ // Prevents batching render context changes
247
+ ReactDOM.flushSync(() => {
248
+ updateRenderContext(nextRenderContext);
249
+ });
238
250
  prevTotalWidth.current = columnsTotalWidth;
239
251
  }
240
252
  };
241
253
 
254
+ const handleWheel = event => {
255
+ apiRef.current.publishEvent('virtualScrollerWheel', {}, event);
256
+ };
257
+
258
+ const handleTouchMove = event => {
259
+ apiRef.current.publishEvent('virtualScrollerTouchMove', {}, event);
260
+ };
261
+
242
262
  const getRows = (params = {
243
263
  renderContext
244
264
  }) => {
@@ -262,14 +282,32 @@ const useGridVirtualScroller = props => {
262
282
  maxLastIndex: currentPage.rows.length,
263
283
  buffer: rowBuffer
264
284
  });
265
- const [firstColumnToRender, lastColumnToRender] = getRenderableIndexes({
285
+ const renderedRows = [];
286
+
287
+ for (let i = firstRowToRender; i < lastRowToRender; i += 1) {
288
+ const row = currentPage.rows[i];
289
+ renderedRows.push(row);
290
+ apiRef.current.unstable_calculateColSpan({
291
+ rowId: row.id,
292
+ minFirstColumn,
293
+ maxLastColumn
294
+ });
295
+ }
296
+
297
+ const [initialFirstColumnToRender, lastColumnToRender] = getRenderableIndexes({
266
298
  firstIndex: nextRenderContext.firstColumnIndex,
267
299
  lastIndex: nextRenderContext.lastColumnIndex,
268
300
  minFirstIndex: minFirstColumn,
269
301
  maxLastIndex: maxLastColumn,
270
302
  buffer: columnBuffer
271
303
  });
272
- const renderedRows = currentPage.rows.slice(firstRowToRender, lastRowToRender);
304
+ const firstColumnToRender = (0, _gridColumnsUtils.getFirstNonSpannedColumnToRender)({
305
+ firstColumnToRender: initialFirstColumnToRender,
306
+ apiRef,
307
+ firstRowToRender,
308
+ lastRowToRender,
309
+ visibleRows: currentPage.rows
310
+ });
273
311
  const renderedColumns = visibleColumns.slice(firstColumnToRender, lastColumnToRender);
274
312
  const rows = [];
275
313
 
@@ -341,7 +379,7 @@ const useGridVirtualScroller = props => {
341
379
  return size;
342
380
  }, [rootRef, columnsTotalWidth, rowsMeta.currentPageTotalHeight, currentPage.rows.length, needsHorizontalScrollbar, rootProps.autoHeight, rowHeight]);
343
381
  React.useEffect(() => {
344
- apiRef.current.publishEvent(_events.GridEvents.virtualScrollerContentSizeChange);
382
+ apiRef.current.publishEvent('virtualScrollerContentSizeChange');
345
383
  }, [apiRef, contentSize]);
346
384
 
347
385
  if (rootProps.autoHeight && currentPage.rows.length === 0) {
@@ -370,6 +408,8 @@ const useGridVirtualScroller = props => {
370
408
  return (0, _extends2.default)({
371
409
  ref: handleRef,
372
410
  onScroll: handleScroll,
411
+ onWheel: handleWheel,
412
+ onTouchMove: handleTouchMove,
373
413
  style: (0, _extends2.default)({}, style, rootStyle)
374
414
  }, other);
375
415
  },
@@ -22,8 +22,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
22
22
  * Signal to the underlying logic what version of the public component API
23
23
  * of the data grid is exposed.
24
24
  */
25
- var GridSignature; // We use class to make it easier to detect in heap snapshots by name
26
-
25
+ var GridSignature;
27
26
  exports.GridSignature = GridSignature;
28
27
 
29
28
  (function (GridSignature) {
@@ -31,13 +30,18 @@ exports.GridSignature = GridSignature;
31
30
  GridSignature["DataGridPro"] = "DataGridPro";
32
31
  })(GridSignature || (exports.GridSignature = GridSignature = {}));
33
32
 
33
+ // We use class to make it easier to detect in heap snapshots by name
34
34
  class ObjectToBeRetainedByReact {} // Based on https://github.com/Bnaya/use-dispose-uncommitted/blob/main/src/finalization-registry-based-impl.ts
35
35
  // Check https://github.com/facebook/react/issues/15317 to get more information
36
36
 
37
37
 
38
- function createUseGridApiEventHandler(registry) {
38
+ function createUseGridApiEventHandler(registryContainer) {
39
39
  let cleanupTokensCounter = 0;
40
40
  return function useGridApiEventHandler(apiRef, eventName, handler, options) {
41
+ if (registryContainer.registry === null) {
42
+ registryContainer.registry = typeof FinalizationRegistry !== 'undefined' ? new _FinalizationRegistryBasedCleanupTracking.FinalizationRegistryBasedCleanupTracking() : new _TimerBasedCleanupTracking.TimerBasedCleanupTracking();
43
+ }
44
+
41
45
  const [objectRetainedByReact] = React.useState(new ObjectToBeRetainedByReact());
42
46
  const subscription = React.useRef(null);
43
47
  const handlerRef = React.useRef();
@@ -58,7 +62,7 @@ function createUseGridApiEventHandler(registry) {
58
62
  cleanupTokenRef.current = {
59
63
  cleanupToken: cleanupTokensCounter
60
64
  };
61
- registry.register(objectRetainedByReact, // The callback below will be called once this reference stops being retained
65
+ registryContainer.registry.register(objectRetainedByReact, // The callback below will be called once this reference stops being retained
62
66
  () => {
63
67
  var _subscription$current;
64
68
 
@@ -71,7 +75,7 @@ function createUseGridApiEventHandler(registry) {
71
75
  subscription.current = null;
72
76
 
73
77
  if (cleanupTokenRef.current) {
74
- registry.unregister(cleanupTokenRef.current);
78
+ registryContainer.registry.unregister(cleanupTokenRef.current);
75
79
  cleanupTokenRef.current = null;
76
80
  }
77
81
  }
@@ -89,10 +93,10 @@ function createUseGridApiEventHandler(registry) {
89
93
  subscription.current = apiRef.current.subscribeEvent(eventName, enhancedHandler, options);
90
94
  }
91
95
 
92
- if (cleanupTokenRef.current && registry) {
96
+ if (cleanupTokenRef.current && registryContainer.registry) {
93
97
  // If the effect was called, it means that this render was committed
94
98
  // so we can trust the cleanup function to remove the listener.
95
- registry.unregister(cleanupTokenRef.current);
99
+ registryContainer.registry.unregister(cleanupTokenRef.current);
96
100
  cleanupTokenRef.current = null;
97
101
  }
98
102
 
@@ -106,12 +110,20 @@ function createUseGridApiEventHandler(registry) {
106
110
  };
107
111
  }
108
112
 
109
- const registry = typeof FinalizationRegistry !== 'undefined' ? new _FinalizationRegistryBasedCleanupTracking.FinalizationRegistryBasedCleanupTracking() : new _TimerBasedCleanupTracking.TimerBasedCleanupTracking(); // eslint-disable-next-line @typescript-eslint/naming-convention
113
+ const registryContainer = {
114
+ registry: null
115
+ }; // TODO: move to @mui/x-data-grid/internals
116
+ // eslint-disable-next-line @typescript-eslint/naming-convention
110
117
 
111
- const unstable_resetCleanupTracking = () => registry.reset();
118
+ const unstable_resetCleanupTracking = () => {
119
+ var _registryContainer$re;
120
+
121
+ (_registryContainer$re = registryContainer.registry) == null ? void 0 : _registryContainer$re.reset();
122
+ registryContainer.registry = null;
123
+ };
112
124
 
113
125
  exports.unstable_resetCleanupTracking = unstable_resetCleanupTracking;
114
- const useGridApiEventHandler = createUseGridApiEventHandler(registry);
126
+ const useGridApiEventHandler = createUseGridApiEventHandler(registryContainer);
115
127
  exports.useGridApiEventHandler = useGridApiEventHandler;
116
128
  const optionsSubscriberOptions = {
117
129
  isFirst: true
@@ -7,8 +7,6 @@ exports.useGridNativeEventListener = void 0;
7
7
 
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
 
10
- var _events = require("../../models/events");
11
-
12
10
  var _utils = require("../../utils/utils");
13
11
 
14
12
  var _useGridLogger = require("./useGridLogger");
@@ -47,7 +45,7 @@ const useGridNativeEventListener = (apiRef, ref, eventName, handler, options) =>
47
45
  boundElem.removeEventListener(eventName, wrapHandler, options);
48
46
  };
49
47
 
50
- apiRef.current.subscribeEvent(_events.GridEvents.unmount, unsubscribe);
48
+ apiRef.current.subscribeEvent('unmount', unsubscribe);
51
49
  }
52
50
  }, [ref, wrapHandler, eventName, added, logger, options, apiRef]);
53
51
  };
@@ -8,7 +8,7 @@ exports.useGridSelector = void 0;
8
8
  var _warning = require("../../utils/warning");
9
9
 
10
10
  function isOutputSelector(selector) {
11
- return selector.cache;
11
+ return selector.acceptsApiRef;
12
12
  }
13
13
 
14
14
  const stateNotInitializedWarning = (0, _warning.buildWarning)(['MUI: `useGridSelector` has been called before the initialization of the state.', 'This hook can only be used inside the context of the grid.']);
package/node/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.8.0
1
+ /** @license MUI v5.11.0
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.
@@ -33,10 +33,16 @@ Object.defineProperty(exports, "GridVirtualScrollerRenderZone", {
33
33
  return _GridVirtualScrollerRenderZone.GridVirtualScrollerRenderZone;
34
34
  }
35
35
  });
36
+ Object.defineProperty(exports, "buildWarning", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _warning.buildWarning;
40
+ }
41
+ });
36
42
  Object.defineProperty(exports, "clamp", {
37
43
  enumerable: true,
38
44
  get: function () {
39
- return _utils.clamp;
45
+ return _utils2.clamp;
40
46
  }
41
47
  });
42
48
  Object.defineProperty(exports, "columnMenuStateInitializer", {
@@ -57,6 +63,12 @@ Object.defineProperty(exports, "createSelector", {
57
63
  return _createSelector.createSelector;
58
64
  }
59
65
  });
66
+ Object.defineProperty(exports, "defaultGetRowsToExport", {
67
+ enumerable: true,
68
+ get: function () {
69
+ return _utils.defaultGetRowsToExport;
70
+ }
71
+ });
60
72
  Object.defineProperty(exports, "densityStateInitializer", {
61
73
  enumerable: true,
62
74
  get: function () {
@@ -75,6 +87,12 @@ Object.defineProperty(exports, "editingStateInitializer_old", {
75
87
  return _useGridEditing2.editingStateInitializer;
76
88
  }
77
89
  });
90
+ Object.defineProperty(exports, "exportAs", {
91
+ enumerable: true,
92
+ get: function () {
93
+ return _exportAs.exportAs;
94
+ }
95
+ });
78
96
  Object.defineProperty(exports, "filterStateInitializer", {
79
97
  enumerable: true,
80
98
  get: function () {
@@ -93,10 +111,16 @@ Object.defineProperty(exports, "focusStateInitializer", {
93
111
  return _useGridFocus.focusStateInitializer;
94
112
  }
95
113
  });
114
+ Object.defineProperty(exports, "getColumnsToExport", {
115
+ enumerable: true,
116
+ get: function () {
117
+ return _utils.getColumnsToExport;
118
+ }
119
+ });
96
120
  Object.defineProperty(exports, "isDeepEqual", {
97
121
  enumerable: true,
98
122
  get: function () {
99
- return _utils.isDeepEqual;
123
+ return _utils2.isDeepEqual;
100
124
  }
101
125
  });
102
126
  Object.defineProperty(exports, "isNavigationKey", {
@@ -141,6 +165,12 @@ Object.defineProperty(exports, "sortingStateInitializer", {
141
165
  return _useGridSorting.sortingStateInitializer;
142
166
  }
143
167
  });
168
+ Object.defineProperty(exports, "unstable_resetCreateSelectorCache", {
169
+ enumerable: true,
170
+ get: function () {
171
+ return _createSelector.unstable_resetCreateSelectorCache;
172
+ }
173
+ });
144
174
  Object.defineProperty(exports, "useGridClipboard", {
145
175
  enumerable: true,
146
176
  get: function () {
@@ -159,6 +189,12 @@ Object.defineProperty(exports, "useGridColumnMenu", {
159
189
  return _useGridColumnMenu.useGridColumnMenu;
160
190
  }
161
191
  });
192
+ Object.defineProperty(exports, "useGridColumnSpanning", {
193
+ enumerable: true,
194
+ get: function () {
195
+ return _useGridColumnSpanning.useGridColumnSpanning;
196
+ }
197
+ });
162
198
  Object.defineProperty(exports, "useGridColumns", {
163
199
  enumerable: true,
164
200
  get: function () {
@@ -352,6 +388,8 @@ var _useGridColumnMenu = require("../hooks/features/columnMenu/useGridColumnMenu
352
388
 
353
389
  var _useGridColumns = require("../hooks/features/columns/useGridColumns");
354
390
 
391
+ var _useGridColumnSpanning = require("../hooks/features/columns/useGridColumnSpanning");
392
+
355
393
  var _useGridDensity = require("../hooks/features/density/useGridDensity");
356
394
 
357
395
  var _useGridCsvExport = require("../hooks/features/export/useGridCsvExport");
@@ -400,10 +438,16 @@ var _useGridVisibleRows = require("../hooks/utils/useGridVisibleRows");
400
438
 
401
439
  var _useGridInitializeState = require("../hooks/utils/useGridInitializeState");
402
440
 
441
+ var _utils = require("../hooks/features/export/utils");
442
+
403
443
  var _createSelector = require("../utils/createSelector");
404
444
 
405
445
  var _domUtils = require("../utils/domUtils");
406
446
 
407
447
  var _keyboardUtils = require("../utils/keyboardUtils");
408
448
 
409
- var _utils = require("../utils/utils");
449
+ var _utils2 = require("../utils/utils");
450
+
451
+ var _warning = require("../utils/warning");
452
+
453
+ var _exportAs = require("../utils/exportAs");
@@ -29,11 +29,16 @@ const arSDGrid = {
29
29
  toolbarFiltersTooltipHide: 'إخفاء المرشِحات',
30
30
  toolbarFiltersTooltipShow: 'اظهر المرشِحات',
31
31
  toolbarFiltersTooltipActive: count => count !== 1 ? `${count} من المرشِحات النشطة` : `مرشِح نشط`,
32
+ // Quick filter toolbar field
33
+ // toolbarQuickFilterPlaceholder: 'Search...',
34
+ // toolbarQuickFilterLabel: 'Search',
35
+ // toolbarQuickFilterDeleteIconLabel: 'Clear',
32
36
  // Export selector toolbar button text
33
37
  toolbarExport: 'تصدير',
34
38
  toolbarExportLabel: 'تصدير',
35
39
  toolbarExportCSV: 'تنزيل كملف CSV',
36
40
  // toolbarExportPrint: 'Print',
41
+ // toolbarExportExcel: 'Download as Excel',
37
42
  // Columns panel text
38
43
  columnsPanelTextFieldLabel: 'البحث عن العمود',
39
44
  columnsPanelTextFieldPlaceholder: 'عنوان العمود',
@@ -112,7 +117,9 @@ const arSDGrid = {
112
117
  unGroupColumn: name => `إيقاف التجميع حسب ${name}`,
113
118
  // Master/detail
114
119
  expandDetailPanel: 'توسيع',
115
- collapseDetailPanel: 'طوي'
120
+ collapseDetailPanel: 'طوي' // Row reordering text
121
+ // rowReorderingHeaderName: 'Row reordering',
122
+
116
123
  };
117
124
  const arSD = (0, _getGridLocalization.getGridLocalization)(arSDGrid, _locale.arSD);
118
125
  exports.arSD = arSD;