@mui/x-data-grid 5.6.1 → 5.7.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 (778) hide show
  1. package/CHANGELOG.md +71 -1
  2. package/DataGrid/DataGrid.js +10 -0
  3. package/DataGrid/useDataGridComponent.js +8 -2
  4. package/components/ErrorOverlay.js +8 -1
  5. package/components/GridLoadingOverlay.d.ts +4 -2
  6. package/components/GridLoadingOverlay.js +11 -2
  7. package/components/GridNoResultsOverlay.d.ts +3 -2
  8. package/components/GridNoRowsOverlay.d.ts +4 -2
  9. package/components/GridNoRowsOverlay.js +11 -2
  10. package/components/base/GridErrorHandler.js +6 -25
  11. package/components/cell/GridEditBooleanCell.js +1 -1
  12. package/components/cell/GridEditDateCell.js +1 -1
  13. package/components/cell/GridEditInputCell.js +66 -5
  14. package/components/cell/GridEditSingleSelectCell.js +76 -4
  15. package/components/columnHeaders/GridColumnHeaderTitle.d.ts +2 -2
  16. package/components/columnHeaders/GridColumnHeaderTitle.js +1 -1
  17. package/components/columnHeaders/GridColumnHeaders.js +3 -1
  18. package/components/containers/GridOverlay.d.ts +9 -2
  19. package/components/containers/GridOverlay.js +11 -2
  20. package/components/containers/GridRootStyles.js +2 -2
  21. package/components/panel/GridColumnsPanel.d.ts +4 -1
  22. package/components/panel/GridColumnsPanel.js +3 -3
  23. package/components/panel/GridPanelWrapper.d.ts +1 -1
  24. package/components/panel/GridPreferencesPanel.js +4 -6
  25. package/hooks/core/preProcessing/gridPreProcessingApi.d.ts +11 -15
  26. package/hooks/core/preProcessing/useGridPreProcessing.d.ts +3 -0
  27. package/hooks/core/preProcessing/useGridPreProcessing.js +5 -1
  28. package/hooks/core/preProcessing/useGridRegisterPreProcessor.d.ts +5 -2
  29. package/hooks/core/preProcessing/useGridRegisterPreProcessor.js +4 -0
  30. package/hooks/core/strategyProcessing/gridStrategyProcessingApi.d.ts +58 -0
  31. package/hooks/core/{rowGroupsPreProcessing/gridRowGroupsPreProcessingApi.js → strategyProcessing/gridStrategyProcessingApi.js} +0 -0
  32. package/hooks/core/strategyProcessing/index.d.ts +3 -0
  33. package/hooks/core/strategyProcessing/index.js +3 -0
  34. package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.d.ts +4 -0
  35. package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +18 -0
  36. package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +37 -0
  37. package/hooks/core/strategyProcessing/useGridStrategyProcessing.js +114 -0
  38. package/hooks/core/useGridInitialization.js +2 -2
  39. package/hooks/features/columns/gridColumnsInterfaces.d.ts +6 -1
  40. package/hooks/features/columns/gridColumnsUtils.d.ts +12 -4
  41. package/hooks/features/columns/gridColumnsUtils.js +113 -29
  42. package/hooks/features/columns/useGridColumns.d.ts +1 -1
  43. package/hooks/features/columns/useGridColumns.js +79 -42
  44. package/hooks/features/editRows/useGridCellEditing.new.d.ts +4 -0
  45. package/hooks/features/editRows/useGridCellEditing.new.js +315 -0
  46. package/hooks/features/editRows/{useGridCellEditing.d.ts → useGridCellEditing.old.d.ts} +0 -0
  47. package/hooks/features/editRows/{useGridCellEditing.js → useGridCellEditing.old.js} +1 -1
  48. package/hooks/features/editRows/useGridEditing.new.d.ts +6 -0
  49. package/hooks/features/editRows/useGridEditing.new.js +118 -0
  50. package/hooks/features/editRows/{useGridEditing.d.ts → useGridEditing.old.d.ts} +0 -0
  51. package/hooks/features/editRows/{useGridEditing.js → useGridEditing.old.js} +4 -4
  52. package/hooks/features/editRows/useGridRowEditing.new.d.ts +4 -0
  53. package/hooks/features/editRows/useGridRowEditing.new.js +486 -0
  54. package/hooks/features/editRows/{useGridRowEditing.d.ts → useGridRowEditing.old.d.ts} +0 -0
  55. package/hooks/features/editRows/{useGridRowEditing.js → useGridRowEditing.old.js} +7 -7
  56. package/hooks/features/filter/gridFilterState.d.ts +2 -5
  57. package/hooks/features/filter/useGridFilter.d.ts +1 -1
  58. package/hooks/features/filter/useGridFilter.js +21 -27
  59. package/hooks/features/focus/useGridFocus.d.ts +1 -1
  60. package/hooks/features/focus/useGridFocus.js +37 -1
  61. package/hooks/features/preferencesPanel/gridPreferencePanelState.d.ts +5 -0
  62. package/hooks/features/rows/gridRowsState.d.ts +20 -5
  63. package/hooks/features/rows/useGridRows.d.ts +0 -3
  64. package/hooks/features/rows/useGridRows.js +63 -42
  65. package/hooks/features/rows/useGridRowsPreProcessors.d.ts +3 -0
  66. package/hooks/features/rows/useGridRowsPreProcessors.js +37 -0
  67. package/hooks/features/selection/useGridSelection.js +4 -0
  68. package/hooks/features/sorting/gridSortingState.d.ts +2 -5
  69. package/hooks/features/sorting/useGridSorting.js +7 -26
  70. package/hooks/features/virtualization/useGridVirtualScroller.js +5 -3
  71. package/index.js +1 -1
  72. package/internals/index.d.ts +10 -7
  73. package/internals/index.js +4 -3
  74. package/legacy/DataGrid/DataGrid.js +10 -0
  75. package/legacy/DataGrid/useDataGridComponent.js +8 -2
  76. package/legacy/components/ErrorOverlay.js +8 -1
  77. package/legacy/components/GridLoadingOverlay.js +11 -2
  78. package/legacy/components/GridNoRowsOverlay.js +11 -2
  79. package/legacy/components/base/GridErrorHandler.js +3 -24
  80. package/legacy/components/cell/GridEditBooleanCell.js +2 -1
  81. package/legacy/components/cell/GridEditDateCell.js +2 -1
  82. package/legacy/components/cell/GridEditInputCell.js +66 -5
  83. package/legacy/components/cell/GridEditSingleSelectCell.js +83 -7
  84. package/legacy/components/columnHeaders/GridColumnHeaderTitle.js +1 -1
  85. package/legacy/components/columnHeaders/GridColumnHeaders.js +3 -1
  86. package/legacy/components/containers/GridOverlay.js +11 -2
  87. package/legacy/components/containers/GridRootStyles.js +2 -2
  88. package/legacy/components/panel/GridColumnsPanel.js +3 -3
  89. package/legacy/components/panel/GridPreferencesPanel.js +4 -6
  90. package/legacy/hooks/core/preProcessing/useGridPreProcessing.js +5 -1
  91. package/legacy/hooks/core/preProcessing/useGridRegisterPreProcessor.js +4 -0
  92. package/legacy/hooks/core/{rowGroupsPreProcessing/gridRowGroupsPreProcessingApi.js → strategyProcessing/gridStrategyProcessingApi.js} +0 -0
  93. package/legacy/hooks/core/strategyProcessing/index.js +3 -0
  94. package/legacy/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +18 -0
  95. package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +119 -0
  96. package/legacy/hooks/core/useGridInitialization.js +2 -2
  97. package/legacy/hooks/features/columns/gridColumnsUtils.js +117 -27
  98. package/legacy/hooks/features/columns/useGridColumns.js +80 -43
  99. package/legacy/hooks/features/editRows/useGridCellEditing.new.js +329 -0
  100. package/legacy/hooks/features/editRows/{useGridCellEditing.js → useGridCellEditing.old.js} +1 -1
  101. package/legacy/hooks/features/editRows/useGridEditing.new.js +152 -0
  102. package/legacy/hooks/features/editRows/{useGridEditing.js → useGridEditing.old.js} +4 -4
  103. package/legacy/hooks/features/editRows/useGridRowEditing.new.js +493 -0
  104. package/legacy/hooks/features/editRows/{useGridRowEditing.js → useGridRowEditing.old.js} +7 -7
  105. package/legacy/hooks/features/filter/useGridFilter.js +21 -27
  106. package/legacy/hooks/features/focus/useGridFocus.js +37 -1
  107. package/legacy/hooks/features/rows/useGridRows.js +65 -44
  108. package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +36 -0
  109. package/legacy/hooks/features/selection/useGridSelection.js +4 -0
  110. package/legacy/hooks/features/sorting/useGridSorting.js +7 -26
  111. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +5 -3
  112. package/legacy/index.js +1 -1
  113. package/legacy/internals/index.js +4 -3
  114. package/legacy/locales/arSD.js +62 -58
  115. package/legacy/locales/faIR.js +26 -22
  116. package/legacy/locales/koKR.js +1 -1
  117. package/legacy/locales/plPL.js +30 -26
  118. package/legacy/models/events/gridEvents.js +2 -1
  119. package/legacy/models/gridEditRowModel.js +1 -0
  120. package/legacy/models/params/gridEditCellParams.js +34 -1
  121. package/legacy/models/params/gridRowParams.js +39 -1
  122. package/legacy/utils/cleanupTracking/TimerBasedCleanupTracking.js +5 -1
  123. package/legacy/utils/utils.js +150 -3
  124. package/locales/arSD.js +58 -58
  125. package/locales/faIR.js +22 -22
  126. package/locales/koKR.js +1 -1
  127. package/locales/plPL.js +26 -26
  128. package/models/api/gridApiCommon.d.ts +2 -2
  129. package/models/api/gridEditingApi.d.ts +125 -4
  130. package/models/api/gridFocusApi.d.ts +9 -0
  131. package/models/api/index.d.ts +1 -1
  132. package/models/colDef/gridColDef.d.ts +4 -0
  133. package/models/events/gridEventLookup.d.ts +11 -5
  134. package/models/events/gridEvents.d.ts +9 -2
  135. package/models/events/gridEvents.js +2 -1
  136. package/models/gridEditRowModel.d.ts +4 -3
  137. package/models/gridEditRowModel.js +1 -0
  138. package/models/params/gridCellParams.d.ts +10 -1
  139. package/models/params/gridEditCellParams.d.ts +50 -0
  140. package/models/params/gridEditCellParams.js +34 -1
  141. package/models/params/gridRowParams.d.ts +41 -1
  142. package/models/params/gridRowParams.js +39 -1
  143. package/models/props/DataGridProps.d.ts +13 -1
  144. package/modern/DataGrid/DataGrid.js +10 -0
  145. package/modern/DataGrid/useDataGridComponent.js +6 -2
  146. package/modern/components/ErrorOverlay.js +8 -1
  147. package/modern/components/GridLoadingOverlay.js +11 -2
  148. package/modern/components/GridNoRowsOverlay.js +11 -2
  149. package/modern/components/base/GridErrorHandler.js +1 -20
  150. package/modern/components/cell/GridEditBooleanCell.js +1 -1
  151. package/modern/components/cell/GridEditDateCell.js +1 -1
  152. package/modern/components/cell/GridEditInputCell.js +64 -5
  153. package/modern/components/cell/GridEditSingleSelectCell.js +72 -4
  154. package/modern/components/columnHeaders/GridColumnHeaderTitle.js +1 -1
  155. package/modern/components/columnHeaders/GridColumnHeaders.js +3 -1
  156. package/modern/components/containers/GridOverlay.js +11 -2
  157. package/modern/components/containers/GridRootStyles.js +2 -2
  158. package/modern/components/panel/GridColumnsPanel.js +3 -3
  159. package/modern/components/panel/GridPreferencesPanel.js +3 -5
  160. package/modern/hooks/core/preProcessing/useGridPreProcessing.js +5 -1
  161. package/modern/hooks/core/preProcessing/useGridRegisterPreProcessor.js +4 -0
  162. package/modern/hooks/core/{rowGroupsPreProcessing/gridRowGroupsPreProcessingApi.js → strategyProcessing/gridStrategyProcessingApi.js} +0 -0
  163. package/modern/hooks/core/strategyProcessing/index.js +3 -0
  164. package/modern/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +18 -0
  165. package/modern/hooks/core/strategyProcessing/useGridStrategyProcessing.js +112 -0
  166. package/modern/hooks/core/useGridInitialization.js +2 -2
  167. package/modern/hooks/features/columns/gridColumnsUtils.js +113 -27
  168. package/modern/hooks/features/columns/useGridColumns.js +74 -39
  169. package/modern/hooks/features/editRows/useGridCellEditing.new.js +315 -0
  170. package/modern/hooks/features/editRows/{useGridCellEditing.js → useGridCellEditing.old.js} +1 -1
  171. package/modern/hooks/features/editRows/useGridEditing.new.js +118 -0
  172. package/modern/hooks/features/editRows/{useGridEditing.js → useGridEditing.old.js} +4 -4
  173. package/modern/hooks/features/editRows/useGridRowEditing.new.js +484 -0
  174. package/modern/hooks/features/editRows/{useGridRowEditing.js → useGridRowEditing.old.js} +7 -7
  175. package/modern/hooks/features/filter/useGridFilter.js +17 -27
  176. package/modern/hooks/features/focus/useGridFocus.js +37 -1
  177. package/modern/hooks/features/rows/useGridRows.js +63 -42
  178. package/modern/hooks/features/rows/useGridRowsPreProcessors.js +37 -0
  179. package/modern/hooks/features/selection/useGridSelection.js +4 -0
  180. package/modern/hooks/features/sorting/useGridSorting.js +7 -26
  181. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +5 -3
  182. package/modern/index.js +1 -1
  183. package/modern/internals/index.js +4 -3
  184. package/modern/locales/arSD.js +58 -58
  185. package/modern/locales/faIR.js +22 -22
  186. package/modern/locales/koKR.js +1 -1
  187. package/modern/locales/plPL.js +26 -26
  188. package/modern/models/events/gridEvents.js +2 -1
  189. package/modern/models/gridEditRowModel.js +1 -0
  190. package/modern/models/params/gridEditCellParams.js +34 -1
  191. package/modern/models/params/gridRowParams.js +39 -1
  192. package/modern/utils/cleanupTracking/TimerBasedCleanupTracking.js +4 -2
  193. package/modern/utils/utils.js +150 -3
  194. package/node/DataGrid/DataGrid.js +10 -0
  195. package/node/DataGrid/useDataGridComponent.js +11 -3
  196. package/node/components/ErrorOverlay.js +10 -1
  197. package/node/components/GridLoadingOverlay.js +10 -1
  198. package/node/components/GridNoRowsOverlay.js +10 -1
  199. package/node/components/base/GridErrorHandler.js +7 -30
  200. package/node/components/cell/GridEditBooleanCell.js +1 -1
  201. package/node/components/cell/GridEditDateCell.js +1 -1
  202. package/node/components/cell/GridEditInputCell.js +66 -5
  203. package/node/components/cell/GridEditSingleSelectCell.js +76 -4
  204. package/node/components/columnHeaders/GridColumnHeaderTitle.js +1 -1
  205. package/node/components/columnHeaders/GridColumnHeaders.js +3 -1
  206. package/node/components/containers/GridOverlay.js +10 -1
  207. package/node/components/containers/GridRootStyles.js +2 -2
  208. package/node/components/panel/GridColumnsPanel.js +3 -3
  209. package/node/components/panel/GridPreferencesPanel.js +4 -5
  210. package/node/hooks/core/preProcessing/useGridPreProcessing.js +4 -1
  211. package/node/hooks/core/preProcessing/useGridRegisterPreProcessor.js +3 -0
  212. package/node/hooks/core/{rowGroupsPreProcessing/gridRowGroupsPreProcessingApi.js → strategyProcessing/gridStrategyProcessingApi.js} +0 -0
  213. package/node/hooks/core/strategyProcessing/index.js +44 -0
  214. package/node/hooks/{features/sorting/useGridRegisterSortingMethod.js → core/strategyProcessing/useGridRegisterStrategyProcessor.js} +18 -9
  215. package/node/hooks/core/strategyProcessing/useGridStrategyProcessing.js +135 -0
  216. package/node/hooks/core/useGridInitialization.js +2 -2
  217. package/node/hooks/features/columns/gridColumnsUtils.js +118 -31
  218. package/node/hooks/features/columns/useGridColumns.js +82 -41
  219. package/node/hooks/features/editRows/useGridCellEditing.new.js +334 -0
  220. package/node/hooks/features/editRows/{useGridCellEditing.js → useGridCellEditing.old.js} +1 -1
  221. package/node/hooks/features/editRows/useGridEditing.new.js +142 -0
  222. package/node/hooks/features/editRows/{useGridEditing.js → useGridEditing.old.js} +4 -4
  223. package/node/hooks/features/editRows/useGridRowEditing.new.js +499 -0
  224. package/node/hooks/features/editRows/{useGridRowEditing.js → useGridRowEditing.old.js} +6 -6
  225. package/node/hooks/features/filter/useGridFilter.js +21 -26
  226. package/node/hooks/features/focus/useGridFocus.js +40 -1
  227. package/node/hooks/features/rows/useGridRows.js +62 -41
  228. package/node/hooks/features/rows/useGridRowsPreProcessors.js +46 -0
  229. package/node/hooks/features/selection/useGridSelection.js +4 -0
  230. package/node/hooks/features/sorting/useGridSorting.js +7 -26
  231. package/node/hooks/features/virtualization/useGridVirtualScroller.js +5 -3
  232. package/node/index.js +1 -1
  233. package/node/internals/index.js +29 -15
  234. package/node/locales/arSD.js +58 -58
  235. package/node/locales/faIR.js +22 -22
  236. package/node/locales/koKR.js +1 -1
  237. package/node/locales/plPL.js +26 -26
  238. package/node/models/events/gridEvents.js +2 -1
  239. package/node/models/gridEditRowModel.js +1 -0
  240. package/node/models/params/gridEditCellParams.js +37 -1
  241. package/node/models/params/gridRowParams.js +42 -1
  242. package/node/utils/cleanupTracking/TimerBasedCleanupTracking.js +4 -2
  243. package/node/utils/utils.js +152 -11
  244. package/package.json +1 -1
  245. package/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +2 -0
  246. package/utils/cleanupTracking/TimerBasedCleanupTracking.js +4 -2
  247. package/utils/utils.d.ts +27 -2
  248. package/utils/utils.js +150 -3
  249. package/hooks/core/rowGroupsPreProcessing/gridRowGroupsPreProcessingApi.d.ts +0 -35
  250. package/hooks/core/rowGroupsPreProcessing/index.d.ts +0 -2
  251. package/hooks/core/rowGroupsPreProcessing/index.js +0 -2
  252. package/hooks/core/rowGroupsPreProcessing/useGridRowGroupsPreProcessing.d.ts +0 -3
  253. package/hooks/core/rowGroupsPreProcessing/useGridRowGroupsPreProcessing.js +0 -72
  254. package/hooks/features/filter/useGridRegisterFilteringMethod.d.ts +0 -4
  255. package/hooks/features/filter/useGridRegisterFilteringMethod.js +0 -9
  256. package/hooks/features/sorting/useGridRegisterSortingMethod.d.ts +0 -4
  257. package/hooks/features/sorting/useGridRegisterSortingMethod.js +0 -9
  258. package/legacy/hooks/core/rowGroupsPreProcessing/index.js +0 -2
  259. package/legacy/hooks/core/rowGroupsPreProcessing/useGridRowGroupsPreProcessing.js +0 -71
  260. package/legacy/hooks/features/filter/useGridRegisterFilteringMethod.js +0 -9
  261. package/legacy/hooks/features/sorting/useGridRegisterSortingMethod.js +0 -9
  262. package/legacy/lib/lodash/_DataView.js +0 -8
  263. package/legacy/lib/lodash/_Hash.js +0 -33
  264. package/legacy/lib/lodash/_ListCache.js +0 -33
  265. package/legacy/lib/lodash/_Map.js +0 -8
  266. package/legacy/lib/lodash/_MapCache.js +0 -33
  267. package/legacy/lib/lodash/_Promise.js +0 -8
  268. package/legacy/lib/lodash/_Set.js +0 -8
  269. package/legacy/lib/lodash/_SetCache.js +0 -28
  270. package/legacy/lib/lodash/_Stack.js +0 -28
  271. package/legacy/lib/lodash/_Symbol.js +0 -7
  272. package/legacy/lib/lodash/_Uint8Array.js +0 -7
  273. package/legacy/lib/lodash/_WeakMap.js +0 -8
  274. package/legacy/lib/lodash/_arrayFilter.js +0 -29
  275. package/legacy/lib/lodash/_arrayLikeKeys.js +0 -46
  276. package/legacy/lib/lodash/_arrayPush.js +0 -23
  277. package/legacy/lib/lodash/_arraySome.js +0 -26
  278. package/legacy/lib/lodash/_assocIndexOf.js +0 -25
  279. package/legacy/lib/lodash/_baseGetAllKeys.js +0 -22
  280. package/legacy/lib/lodash/_baseGetTag.js +0 -29
  281. package/legacy/lib/lodash/_baseIsArguments.js +0 -20
  282. package/legacy/lib/lodash/_baseIsEqual.js +0 -32
  283. package/legacy/lib/lodash/_baseIsEqualDeep.js +0 -85
  284. package/legacy/lib/lodash/_baseIsNative.js +0 -47
  285. package/legacy/lib/lodash/_baseIsTypedArray.js +0 -49
  286. package/legacy/lib/lodash/_baseKeys.js +0 -35
  287. package/legacy/lib/lodash/_baseTimes.js +0 -23
  288. package/legacy/lib/lodash/_baseUnary.js +0 -16
  289. package/legacy/lib/lodash/_cacheHas.js +0 -15
  290. package/legacy/lib/lodash/_coreJsData.js +0 -7
  291. package/legacy/lib/lodash/_equalArrays.js +0 -84
  292. package/legacy/lib/lodash/_equalByTag.js +0 -117
  293. package/legacy/lib/lodash/_equalObjects.js +0 -92
  294. package/legacy/lib/lodash/_freeGlobal.js +0 -6
  295. package/legacy/lib/lodash/_getAllKeys.js +0 -18
  296. package/legacy/lib/lodash/_getMapData.js +0 -18
  297. package/legacy/lib/lodash/_getNative.js +0 -19
  298. package/legacy/lib/lodash/_getRawTag.js +0 -50
  299. package/legacy/lib/lodash/_getSymbols.js +0 -32
  300. package/legacy/lib/lodash/_getTag.js +0 -64
  301. package/legacy/lib/lodash/_getValue.js +0 -15
  302. package/legacy/lib/lodash/_hashClear.js +0 -17
  303. package/legacy/lib/lodash/_hashDelete.js +0 -19
  304. package/legacy/lib/lodash/_hashGet.js +0 -34
  305. package/legacy/lib/lodash/_hashHas.js +0 -25
  306. package/legacy/lib/lodash/_hashSet.js +0 -25
  307. package/legacy/lib/lodash/_isIndex.js +0 -25
  308. package/legacy/lib/lodash/_isKeyable.js +0 -18
  309. package/legacy/lib/lodash/_isMasked.js +0 -23
  310. package/legacy/lib/lodash/_isPrototype.js +0 -19
  311. package/legacy/lib/lodash/_listCacheClear.js +0 -15
  312. package/legacy/lib/lodash/_listCacheDelete.js +0 -40
  313. package/legacy/lib/lodash/_listCacheGet.js +0 -20
  314. package/legacy/lib/lodash/_listCacheHas.js +0 -18
  315. package/legacy/lib/lodash/_listCacheSet.js +0 -29
  316. package/legacy/lib/lodash/_mapCacheClear.js +0 -23
  317. package/legacy/lib/lodash/_mapCacheDelete.js +0 -20
  318. package/legacy/lib/lodash/_mapCacheGet.js +0 -18
  319. package/legacy/lib/lodash/_mapCacheHas.js +0 -18
  320. package/legacy/lib/lodash/_mapCacheSet.js +0 -23
  321. package/legacy/lib/lodash/_mapToArray.js +0 -19
  322. package/legacy/lib/lodash/_nativeCreate.js +0 -7
  323. package/legacy/lib/lodash/_nativeKeys.js +0 -7
  324. package/legacy/lib/lodash/_nodeUtil.js +0 -25
  325. package/legacy/lib/lodash/_objectToString.js +0 -24
  326. package/legacy/lib/lodash/_overArg.js +0 -17
  327. package/legacy/lib/lodash/_root.js +0 -11
  328. package/legacy/lib/lodash/_setCacheAdd.js +0 -22
  329. package/legacy/lib/lodash/_setCacheHas.js +0 -16
  330. package/legacy/lib/lodash/_setToArray.js +0 -19
  331. package/legacy/lib/lodash/_stackClear.js +0 -17
  332. package/legacy/lib/lodash/_stackDelete.js +0 -19
  333. package/legacy/lib/lodash/_stackGet.js +0 -16
  334. package/legacy/lib/lodash/_stackHas.js +0 -16
  335. package/legacy/lib/lodash/_stackSet.js +0 -40
  336. package/legacy/lib/lodash/_toSource.js +0 -30
  337. package/legacy/lib/lodash/date.default.js +0 -4
  338. package/legacy/lib/lodash/date.js +0 -2
  339. package/legacy/lib/lodash/eq.js +0 -39
  340. package/legacy/lib/lodash/function.default.js +0 -4
  341. package/legacy/lib/lodash/function.js +0 -2
  342. package/legacy/lib/lodash/isArguments.js +0 -38
  343. package/legacy/lib/lodash/isArray.js +0 -27
  344. package/legacy/lib/lodash/isArrayLike.js +0 -35
  345. package/legacy/lib/lodash/isBuffer.js +0 -40
  346. package/legacy/lib/lodash/isDeepEqual.js +0 -45
  347. package/legacy/lib/lodash/isFunction.js +0 -40
  348. package/legacy/lib/lodash/isLength.js +0 -36
  349. package/legacy/lib/lodash/isObject.js +0 -36
  350. package/legacy/lib/lodash/isObjectLike.js +0 -33
  351. package/legacy/lib/lodash/isSymbol.js +0 -31
  352. package/legacy/lib/lodash/isTypedArray.js +0 -28
  353. package/legacy/lib/lodash/keys.js +0 -39
  354. package/legacy/lib/lodash/lang.default.js +0 -28
  355. package/legacy/lib/lodash/lang.js +0 -14
  356. package/legacy/lib/lodash/now.js +0 -25
  357. package/legacy/lib/lodash/object.default.js +0 -4
  358. package/legacy/lib/lodash/object.js +0 -2
  359. package/legacy/lib/lodash/stubArray.js +0 -25
  360. package/legacy/lib/lodash/stubFalse.js +0 -20
  361. package/legacy/lib/lodash/toNumber.js +0 -70
  362. package/legacy/lib/lodash/util.default.js +0 -6
  363. package/legacy/lib/lodash/util.js +0 -3
  364. package/lib/lodash/_DataView.d.ts +0 -2
  365. package/lib/lodash/_DataView.js +0 -8
  366. package/lib/lodash/_Hash.d.ts +0 -29
  367. package/lib/lodash/_Hash.js +0 -33
  368. package/lib/lodash/_ListCache.d.ts +0 -29
  369. package/lib/lodash/_ListCache.js +0 -33
  370. package/lib/lodash/_Map.d.ts +0 -2
  371. package/lib/lodash/_Map.js +0 -8
  372. package/lib/lodash/_MapCache.d.ts +0 -29
  373. package/lib/lodash/_MapCache.js +0 -33
  374. package/lib/lodash/_Promise.d.ts +0 -2
  375. package/lib/lodash/_Promise.js +0 -8
  376. package/lib/lodash/_Set.d.ts +0 -2
  377. package/lib/lodash/_Set.js +0 -8
  378. package/lib/lodash/_SetCache.d.ts +0 -28
  379. package/lib/lodash/_SetCache.js +0 -28
  380. package/lib/lodash/_Stack.d.ts +0 -32
  381. package/lib/lodash/_Stack.js +0 -28
  382. package/lib/lodash/_Symbol.d.ts +0 -3
  383. package/lib/lodash/_Symbol.js +0 -7
  384. package/lib/lodash/_Uint8Array.d.ts +0 -3
  385. package/lib/lodash/_Uint8Array.js +0 -7
  386. package/lib/lodash/_WeakMap.d.ts +0 -2
  387. package/lib/lodash/_WeakMap.js +0 -8
  388. package/lib/lodash/_arrayFilter.d.ts +0 -11
  389. package/lib/lodash/_arrayFilter.js +0 -29
  390. package/lib/lodash/_arrayLikeKeys.d.ts +0 -10
  391. package/lib/lodash/_arrayLikeKeys.js +0 -46
  392. package/lib/lodash/_arrayPush.d.ts +0 -10
  393. package/lib/lodash/_arrayPush.js +0 -23
  394. package/lib/lodash/_arraySome.d.ts +0 -12
  395. package/lib/lodash/_arraySome.js +0 -26
  396. package/lib/lodash/_assocIndexOf.d.ts +0 -10
  397. package/lib/lodash/_assocIndexOf.js +0 -25
  398. package/lib/lodash/_baseGetAllKeys.d.ts +0 -13
  399. package/lib/lodash/_baseGetAllKeys.js +0 -22
  400. package/lib/lodash/_baseGetTag.d.ts +0 -9
  401. package/lib/lodash/_baseGetTag.js +0 -29
  402. package/lib/lodash/_baseIsArguments.d.ts +0 -9
  403. package/lib/lodash/_baseIsArguments.js +0 -20
  404. package/lib/lodash/_baseIsEqual.d.ts +0 -16
  405. package/lib/lodash/_baseIsEqual.js +0 -32
  406. package/lib/lodash/_baseIsEqualDeep.d.ts +0 -16
  407. package/lib/lodash/_baseIsEqualDeep.js +0 -85
  408. package/lib/lodash/_baseIsNative.d.ts +0 -10
  409. package/lib/lodash/_baseIsNative.js +0 -47
  410. package/lib/lodash/_baseIsTypedArray.d.ts +0 -9
  411. package/lib/lodash/_baseIsTypedArray.js +0 -49
  412. package/lib/lodash/_baseKeys.d.ts +0 -9
  413. package/lib/lodash/_baseKeys.js +0 -35
  414. package/lib/lodash/_baseTimes.d.ts +0 -11
  415. package/lib/lodash/_baseTimes.js +0 -23
  416. package/lib/lodash/_baseUnary.d.ts +0 -9
  417. package/lib/lodash/_baseUnary.js +0 -16
  418. package/lib/lodash/_cacheHas.d.ts +0 -10
  419. package/lib/lodash/_cacheHas.js +0 -15
  420. package/lib/lodash/_coreJsData.d.ts +0 -3
  421. package/lib/lodash/_coreJsData.js +0 -7
  422. package/lib/lodash/_equalArrays.d.ts +0 -15
  423. package/lib/lodash/_equalArrays.js +0 -84
  424. package/lib/lodash/_equalByTag.d.ts +0 -19
  425. package/lib/lodash/_equalByTag.js +0 -117
  426. package/lib/lodash/_equalObjects.d.ts +0 -15
  427. package/lib/lodash/_equalObjects.js +0 -92
  428. package/lib/lodash/_freeGlobal.d.ts +0 -3
  429. package/lib/lodash/_freeGlobal.js +0 -5
  430. package/lib/lodash/_getAllKeys.d.ts +0 -9
  431. package/lib/lodash/_getAllKeys.js +0 -18
  432. package/lib/lodash/_getMapData.d.ts +0 -10
  433. package/lib/lodash/_getMapData.js +0 -18
  434. package/lib/lodash/_getNative.d.ts +0 -10
  435. package/lib/lodash/_getNative.js +0 -19
  436. package/lib/lodash/_getRawTag.d.ts +0 -9
  437. package/lib/lodash/_getRawTag.js +0 -50
  438. package/lib/lodash/_getSymbols.d.ts +0 -2
  439. package/lib/lodash/_getSymbols.js +0 -32
  440. package/lib/lodash/_getTag.d.ts +0 -10
  441. package/lib/lodash/_getTag.js +0 -64
  442. package/lib/lodash/_getValue.d.ts +0 -10
  443. package/lib/lodash/_getValue.js +0 -15
  444. package/lib/lodash/_hashClear.d.ts +0 -13
  445. package/lib/lodash/_hashClear.js +0 -17
  446. package/lib/lodash/_hashDelete.d.ts +0 -12
  447. package/lib/lodash/_hashDelete.js +0 -19
  448. package/lib/lodash/_hashGet.d.ts +0 -11
  449. package/lib/lodash/_hashGet.js +0 -34
  450. package/lib/lodash/_hashHas.d.ts +0 -11
  451. package/lib/lodash/_hashHas.js +0 -25
  452. package/lib/lodash/_hashSet.d.ts +0 -12
  453. package/lib/lodash/_hashSet.js +0 -25
  454. package/lib/lodash/_isIndex.d.ts +0 -10
  455. package/lib/lodash/_isIndex.js +0 -23
  456. package/lib/lodash/_isKeyable.d.ts +0 -9
  457. package/lib/lodash/_isKeyable.js +0 -15
  458. package/lib/lodash/_isMasked.d.ts +0 -9
  459. package/lib/lodash/_isMasked.js +0 -23
  460. package/lib/lodash/_isPrototype.d.ts +0 -9
  461. package/lib/lodash/_isPrototype.js +0 -19
  462. package/lib/lodash/_listCacheClear.d.ts +0 -13
  463. package/lib/lodash/_listCacheClear.js +0 -15
  464. package/lib/lodash/_listCacheDelete.d.ts +0 -11
  465. package/lib/lodash/_listCacheDelete.js +0 -40
  466. package/lib/lodash/_listCacheGet.d.ts +0 -11
  467. package/lib/lodash/_listCacheGet.js +0 -20
  468. package/lib/lodash/_listCacheHas.d.ts +0 -11
  469. package/lib/lodash/_listCacheHas.js +0 -18
  470. package/lib/lodash/_listCacheSet.d.ts +0 -12
  471. package/lib/lodash/_listCacheSet.js +0 -29
  472. package/lib/lodash/_mapCacheClear.d.ts +0 -18
  473. package/lib/lodash/_mapCacheClear.js +0 -23
  474. package/lib/lodash/_mapCacheDelete.d.ts +0 -11
  475. package/lib/lodash/_mapCacheDelete.js +0 -20
  476. package/lib/lodash/_mapCacheGet.d.ts +0 -11
  477. package/lib/lodash/_mapCacheGet.js +0 -18
  478. package/lib/lodash/_mapCacheHas.d.ts +0 -11
  479. package/lib/lodash/_mapCacheHas.js +0 -18
  480. package/lib/lodash/_mapCacheSet.d.ts +0 -12
  481. package/lib/lodash/_mapCacheSet.js +0 -23
  482. package/lib/lodash/_mapToArray.d.ts +0 -9
  483. package/lib/lodash/_mapToArray.js +0 -19
  484. package/lib/lodash/_nativeCreate.d.ts +0 -2
  485. package/lib/lodash/_nativeCreate.js +0 -7
  486. package/lib/lodash/_nativeKeys.d.ts +0 -2
  487. package/lib/lodash/_nativeKeys.js +0 -7
  488. package/lib/lodash/_nodeUtil.d.ts +0 -3
  489. package/lib/lodash/_nodeUtil.js +0 -24
  490. package/lib/lodash/_objectToString.d.ts +0 -9
  491. package/lib/lodash/_objectToString.js +0 -24
  492. package/lib/lodash/_overArg.d.ts +0 -10
  493. package/lib/lodash/_overArg.js +0 -17
  494. package/lib/lodash/_root.d.ts +0 -3
  495. package/lib/lodash/_root.js +0 -10
  496. package/lib/lodash/_setCacheAdd.d.ts +0 -12
  497. package/lib/lodash/_setCacheAdd.js +0 -22
  498. package/lib/lodash/_setCacheHas.d.ts +0 -11
  499. package/lib/lodash/_setCacheHas.js +0 -16
  500. package/lib/lodash/_setToArray.d.ts +0 -9
  501. package/lib/lodash/_setToArray.js +0 -19
  502. package/lib/lodash/_stackClear.d.ts +0 -14
  503. package/lib/lodash/_stackClear.js +0 -17
  504. package/lib/lodash/_stackDelete.d.ts +0 -24
  505. package/lib/lodash/_stackDelete.js +0 -19
  506. package/lib/lodash/_stackGet.d.ts +0 -11
  507. package/lib/lodash/_stackGet.js +0 -16
  508. package/lib/lodash/_stackHas.d.ts +0 -11
  509. package/lib/lodash/_stackHas.js +0 -16
  510. package/lib/lodash/_stackSet.d.ts +0 -28
  511. package/lib/lodash/_stackSet.js +0 -40
  512. package/lib/lodash/_toSource.d.ts +0 -9
  513. package/lib/lodash/_toSource.js +0 -30
  514. package/lib/lodash/date.d.ts +0 -2
  515. package/lib/lodash/date.default.d.ts +0 -5
  516. package/lib/lodash/date.default.js +0 -4
  517. package/lib/lodash/date.js +0 -2
  518. package/lib/lodash/eq.d.ts +0 -34
  519. package/lib/lodash/eq.js +0 -39
  520. package/lib/lodash/function.d.ts +0 -1
  521. package/lib/lodash/function.default.d.ts +0 -4
  522. package/lib/lodash/function.default.js +0 -4
  523. package/lib/lodash/function.js +0 -2
  524. package/lib/lodash/isArguments.d.ts +0 -2
  525. package/lib/lodash/isArguments.js +0 -38
  526. package/lib/lodash/isArray.d.ts +0 -25
  527. package/lib/lodash/isArray.js +0 -27
  528. package/lib/lodash/isArrayLike.d.ts +0 -27
  529. package/lib/lodash/isArrayLike.js +0 -35
  530. package/lib/lodash/isBuffer.d.ts +0 -19
  531. package/lib/lodash/isBuffer.js +0 -39
  532. package/lib/lodash/isDeepEqual.d.ts +0 -30
  533. package/lib/lodash/isDeepEqual.js +0 -45
  534. package/lib/lodash/isFunction.d.ts +0 -19
  535. package/lib/lodash/isFunction.js +0 -40
  536. package/lib/lodash/isLength.d.ts +0 -28
  537. package/lib/lodash/isLength.js +0 -36
  538. package/lib/lodash/isObject.d.ts +0 -27
  539. package/lib/lodash/isObject.js +0 -33
  540. package/lib/lodash/isObjectLike.d.ts +0 -26
  541. package/lib/lodash/isObjectLike.js +0 -31
  542. package/lib/lodash/isSymbol.d.ts +0 -19
  543. package/lib/lodash/isSymbol.js +0 -30
  544. package/lib/lodash/isTypedArray.d.ts +0 -19
  545. package/lib/lodash/isTypedArray.js +0 -28
  546. package/lib/lodash/keys.d.ts +0 -30
  547. package/lib/lodash/keys.js +0 -39
  548. package/lib/lodash/lang.d.ts +0 -14
  549. package/lib/lodash/lang.default.d.ts +0 -29
  550. package/lib/lodash/lang.default.js +0 -28
  551. package/lib/lodash/lang.js +0 -14
  552. package/lib/lodash/now.d.ts +0 -18
  553. package/lib/lodash/now.js +0 -25
  554. package/lib/lodash/object.d.ts +0 -2
  555. package/lib/lodash/object.default.d.ts +0 -5
  556. package/lib/lodash/object.default.js +0 -4
  557. package/lib/lodash/object.js +0 -2
  558. package/lib/lodash/stubArray.d.ts +0 -20
  559. package/lib/lodash/stubArray.js +0 -25
  560. package/lib/lodash/stubFalse.d.ts +0 -15
  561. package/lib/lodash/stubFalse.js +0 -20
  562. package/lib/lodash/toNumber.d.ts +0 -25
  563. package/lib/lodash/toNumber.js +0 -70
  564. package/lib/lodash/util.d.ts +0 -3
  565. package/lib/lodash/util.default.d.ts +0 -7
  566. package/lib/lodash/util.default.js +0 -6
  567. package/lib/lodash/util.js +0 -3
  568. package/modern/hooks/core/rowGroupsPreProcessing/index.js +0 -2
  569. package/modern/hooks/core/rowGroupsPreProcessing/useGridRowGroupsPreProcessing.js +0 -70
  570. package/modern/hooks/features/filter/useGridRegisterFilteringMethod.js +0 -9
  571. package/modern/hooks/features/sorting/useGridRegisterSortingMethod.js +0 -9
  572. package/modern/lib/lodash/_DataView.js +0 -8
  573. package/modern/lib/lodash/_Hash.js +0 -33
  574. package/modern/lib/lodash/_ListCache.js +0 -33
  575. package/modern/lib/lodash/_Map.js +0 -8
  576. package/modern/lib/lodash/_MapCache.js +0 -33
  577. package/modern/lib/lodash/_Promise.js +0 -8
  578. package/modern/lib/lodash/_Set.js +0 -8
  579. package/modern/lib/lodash/_SetCache.js +0 -28
  580. package/modern/lib/lodash/_Stack.js +0 -28
  581. package/modern/lib/lodash/_Symbol.js +0 -7
  582. package/modern/lib/lodash/_Uint8Array.js +0 -7
  583. package/modern/lib/lodash/_WeakMap.js +0 -8
  584. package/modern/lib/lodash/_arrayFilter.js +0 -29
  585. package/modern/lib/lodash/_arrayLikeKeys.js +0 -46
  586. package/modern/lib/lodash/_arrayPush.js +0 -23
  587. package/modern/lib/lodash/_arraySome.js +0 -26
  588. package/modern/lib/lodash/_assocIndexOf.js +0 -25
  589. package/modern/lib/lodash/_baseGetAllKeys.js +0 -22
  590. package/modern/lib/lodash/_baseGetTag.js +0 -29
  591. package/modern/lib/lodash/_baseIsArguments.js +0 -20
  592. package/modern/lib/lodash/_baseIsEqual.js +0 -32
  593. package/modern/lib/lodash/_baseIsEqualDeep.js +0 -85
  594. package/modern/lib/lodash/_baseIsNative.js +0 -47
  595. package/modern/lib/lodash/_baseIsTypedArray.js +0 -49
  596. package/modern/lib/lodash/_baseKeys.js +0 -35
  597. package/modern/lib/lodash/_baseTimes.js +0 -23
  598. package/modern/lib/lodash/_baseUnary.js +0 -16
  599. package/modern/lib/lodash/_cacheHas.js +0 -15
  600. package/modern/lib/lodash/_coreJsData.js +0 -7
  601. package/modern/lib/lodash/_equalArrays.js +0 -84
  602. package/modern/lib/lodash/_equalByTag.js +0 -117
  603. package/modern/lib/lodash/_equalObjects.js +0 -92
  604. package/modern/lib/lodash/_freeGlobal.js +0 -5
  605. package/modern/lib/lodash/_getAllKeys.js +0 -18
  606. package/modern/lib/lodash/_getMapData.js +0 -18
  607. package/modern/lib/lodash/_getNative.js +0 -19
  608. package/modern/lib/lodash/_getRawTag.js +0 -50
  609. package/modern/lib/lodash/_getSymbols.js +0 -32
  610. package/modern/lib/lodash/_getTag.js +0 -64
  611. package/modern/lib/lodash/_getValue.js +0 -15
  612. package/modern/lib/lodash/_hashClear.js +0 -17
  613. package/modern/lib/lodash/_hashDelete.js +0 -19
  614. package/modern/lib/lodash/_hashGet.js +0 -34
  615. package/modern/lib/lodash/_hashHas.js +0 -25
  616. package/modern/lib/lodash/_hashSet.js +0 -25
  617. package/modern/lib/lodash/_isIndex.js +0 -23
  618. package/modern/lib/lodash/_isKeyable.js +0 -15
  619. package/modern/lib/lodash/_isMasked.js +0 -23
  620. package/modern/lib/lodash/_isPrototype.js +0 -19
  621. package/modern/lib/lodash/_listCacheClear.js +0 -15
  622. package/modern/lib/lodash/_listCacheDelete.js +0 -40
  623. package/modern/lib/lodash/_listCacheGet.js +0 -20
  624. package/modern/lib/lodash/_listCacheHas.js +0 -18
  625. package/modern/lib/lodash/_listCacheSet.js +0 -29
  626. package/modern/lib/lodash/_mapCacheClear.js +0 -23
  627. package/modern/lib/lodash/_mapCacheDelete.js +0 -20
  628. package/modern/lib/lodash/_mapCacheGet.js +0 -18
  629. package/modern/lib/lodash/_mapCacheHas.js +0 -18
  630. package/modern/lib/lodash/_mapCacheSet.js +0 -23
  631. package/modern/lib/lodash/_mapToArray.js +0 -19
  632. package/modern/lib/lodash/_nativeCreate.js +0 -7
  633. package/modern/lib/lodash/_nativeKeys.js +0 -7
  634. package/modern/lib/lodash/_nodeUtil.js +0 -24
  635. package/modern/lib/lodash/_objectToString.js +0 -24
  636. package/modern/lib/lodash/_overArg.js +0 -17
  637. package/modern/lib/lodash/_root.js +0 -10
  638. package/modern/lib/lodash/_setCacheAdd.js +0 -22
  639. package/modern/lib/lodash/_setCacheHas.js +0 -16
  640. package/modern/lib/lodash/_setToArray.js +0 -19
  641. package/modern/lib/lodash/_stackClear.js +0 -17
  642. package/modern/lib/lodash/_stackDelete.js +0 -19
  643. package/modern/lib/lodash/_stackGet.js +0 -16
  644. package/modern/lib/lodash/_stackHas.js +0 -16
  645. package/modern/lib/lodash/_stackSet.js +0 -40
  646. package/modern/lib/lodash/_toSource.js +0 -30
  647. package/modern/lib/lodash/date.default.js +0 -4
  648. package/modern/lib/lodash/date.js +0 -2
  649. package/modern/lib/lodash/eq.js +0 -39
  650. package/modern/lib/lodash/function.default.js +0 -4
  651. package/modern/lib/lodash/function.js +0 -2
  652. package/modern/lib/lodash/isArguments.js +0 -38
  653. package/modern/lib/lodash/isArray.js +0 -27
  654. package/modern/lib/lodash/isArrayLike.js +0 -35
  655. package/modern/lib/lodash/isBuffer.js +0 -39
  656. package/modern/lib/lodash/isDeepEqual.js +0 -45
  657. package/modern/lib/lodash/isFunction.js +0 -40
  658. package/modern/lib/lodash/isLength.js +0 -36
  659. package/modern/lib/lodash/isObject.js +0 -33
  660. package/modern/lib/lodash/isObjectLike.js +0 -31
  661. package/modern/lib/lodash/isSymbol.js +0 -30
  662. package/modern/lib/lodash/isTypedArray.js +0 -28
  663. package/modern/lib/lodash/keys.js +0 -39
  664. package/modern/lib/lodash/lang.default.js +0 -28
  665. package/modern/lib/lodash/lang.js +0 -14
  666. package/modern/lib/lodash/now.js +0 -25
  667. package/modern/lib/lodash/object.default.js +0 -4
  668. package/modern/lib/lodash/object.js +0 -2
  669. package/modern/lib/lodash/stubArray.js +0 -25
  670. package/modern/lib/lodash/stubFalse.js +0 -20
  671. package/modern/lib/lodash/toNumber.js +0 -70
  672. package/modern/lib/lodash/util.default.js +0 -6
  673. package/modern/lib/lodash/util.js +0 -3
  674. package/node/hooks/core/rowGroupsPreProcessing/index.js +0 -31
  675. package/node/hooks/core/rowGroupsPreProcessing/useGridRowGroupsPreProcessing.js +0 -87
  676. package/node/hooks/features/filter/useGridRegisterFilteringMethod.js +0 -24
  677. package/node/lib/lodash/_DataView.js +0 -20
  678. package/node/lib/lodash/_Hash.js +0 -48
  679. package/node/lib/lodash/_ListCache.js +0 -48
  680. package/node/lib/lodash/_Map.js +0 -20
  681. package/node/lib/lodash/_MapCache.js +0 -48
  682. package/node/lib/lodash/_Promise.js +0 -20
  683. package/node/lib/lodash/_Set.js +0 -20
  684. package/node/lib/lodash/_SetCache.js +0 -41
  685. package/node/lib/lodash/_Stack.js +0 -44
  686. package/node/lib/lodash/_Symbol.js +0 -18
  687. package/node/lib/lodash/_Uint8Array.js +0 -18
  688. package/node/lib/lodash/_WeakMap.js +0 -20
  689. package/node/lib/lodash/_arrayFilter.js +0 -35
  690. package/node/lib/lodash/_arrayLikeKeys.js +0 -62
  691. package/node/lib/lodash/_arrayPush.js +0 -29
  692. package/node/lib/lodash/_arraySome.js +0 -32
  693. package/node/lib/lodash/_assocIndexOf.js +0 -36
  694. package/node/lib/lodash/_baseGetAllKeys.js +0 -34
  695. package/node/lib/lodash/_baseGetTag.js +0 -42
  696. package/node/lib/lodash/_baseIsArguments.js +0 -32
  697. package/node/lib/lodash/_baseIsEqual.js +0 -44
  698. package/node/lib/lodash/_baseIsEqualDeep.js +0 -103
  699. package/node/lib/lodash/_baseIsNative.js +0 -61
  700. package/node/lib/lodash/_baseIsTypedArray.js +0 -62
  701. package/node/lib/lodash/_baseKeys.js +0 -47
  702. package/node/lib/lodash/_baseTimes.js +0 -29
  703. package/node/lib/lodash/_baseUnary.js +0 -22
  704. package/node/lib/lodash/_cacheHas.js +0 -21
  705. package/node/lib/lodash/_coreJsData.js +0 -18
  706. package/node/lib/lodash/_equalArrays.js +0 -97
  707. package/node/lib/lodash/_equalByTag.js +0 -133
  708. package/node/lib/lodash/_equalObjects.js +0 -103
  709. package/node/lib/lodash/_freeGlobal.js +0 -10
  710. package/node/lib/lodash/_getAllKeys.js +0 -31
  711. package/node/lib/lodash/_getMapData.js +0 -29
  712. package/node/lib/lodash/_getNative.js +0 -31
  713. package/node/lib/lodash/_getRawTag.js +0 -61
  714. package/node/lib/lodash/_getSymbols.js +0 -44
  715. package/node/lib/lodash/_getTag.js +0 -81
  716. package/node/lib/lodash/_getValue.js +0 -21
  717. package/node/lib/lodash/_hashClear.js +0 -28
  718. package/node/lib/lodash/_hashDelete.js +0 -25
  719. package/node/lib/lodash/_hashGet.js +0 -45
  720. package/node/lib/lodash/_hashHas.js +0 -36
  721. package/node/lib/lodash/_hashSet.js +0 -36
  722. package/node/lib/lodash/_isIndex.js +0 -28
  723. package/node/lib/lodash/_isKeyable.js +0 -21
  724. package/node/lib/lodash/_isMasked.js +0 -34
  725. package/node/lib/lodash/_isPrototype.js +0 -24
  726. package/node/lib/lodash/_listCacheClear.js +0 -21
  727. package/node/lib/lodash/_listCacheDelete.js +0 -51
  728. package/node/lib/lodash/_listCacheGet.js +0 -31
  729. package/node/lib/lodash/_listCacheHas.js +0 -29
  730. package/node/lib/lodash/_listCacheSet.js +0 -40
  731. package/node/lib/lodash/_mapCacheClear.js +0 -36
  732. package/node/lib/lodash/_mapCacheDelete.js +0 -31
  733. package/node/lib/lodash/_mapCacheGet.js +0 -29
  734. package/node/lib/lodash/_mapCacheHas.js +0 -29
  735. package/node/lib/lodash/_mapCacheSet.js +0 -34
  736. package/node/lib/lodash/_mapToArray.js +0 -25
  737. package/node/lib/lodash/_nativeCreate.js +0 -18
  738. package/node/lib/lodash/_nativeKeys.js +0 -18
  739. package/node/lib/lodash/_nodeUtil.js +0 -35
  740. package/node/lib/lodash/_objectToString.js +0 -29
  741. package/node/lib/lodash/_overArg.js +0 -23
  742. package/node/lib/lodash/_root.js +0 -21
  743. package/node/lib/lodash/_setCacheAdd.js +0 -27
  744. package/node/lib/lodash/_setCacheHas.js +0 -22
  745. package/node/lib/lodash/_setToArray.js +0 -25
  746. package/node/lib/lodash/_stackClear.js +0 -28
  747. package/node/lib/lodash/_stackDelete.js +0 -25
  748. package/node/lib/lodash/_stackGet.js +0 -22
  749. package/node/lib/lodash/_stackHas.js +0 -22
  750. package/node/lib/lodash/_stackSet.js +0 -53
  751. package/node/lib/lodash/_toSource.js +0 -35
  752. package/node/lib/lodash/date.default.js +0 -15
  753. package/node/lib/lodash/date.js +0 -23
  754. package/node/lib/lodash/eq.js +0 -45
  755. package/node/lib/lodash/function.default.js +0 -15
  756. package/node/lib/lodash/function.js +0 -23
  757. package/node/lib/lodash/isArguments.js +0 -50
  758. package/node/lib/lodash/isArray.js +0 -32
  759. package/node/lib/lodash/isArrayLike.js +0 -47
  760. package/node/lib/lodash/isBuffer.js +0 -51
  761. package/node/lib/lodash/isDeepEqual.js +0 -56
  762. package/node/lib/lodash/isFunction.js +0 -52
  763. package/node/lib/lodash/isLength.js +0 -41
  764. package/node/lib/lodash/isObject.js +0 -39
  765. package/node/lib/lodash/isObjectLike.js +0 -37
  766. package/node/lib/lodash/isSymbol.js +0 -42
  767. package/node/lib/lodash/isTypedArray.js +0 -41
  768. package/node/lib/lodash/keys.js +0 -52
  769. package/node/lib/lodash/lang.default.js +0 -51
  770. package/node/lib/lodash/lang.js +0 -119
  771. package/node/lib/lodash/now.js +0 -36
  772. package/node/lib/lodash/object.default.js +0 -15
  773. package/node/lib/lodash/object.js +0 -23
  774. package/node/lib/lodash/stubArray.js +0 -31
  775. package/node/lib/lodash/stubFalse.js +0 -26
  776. package/node/lib/lodash/toNumber.js +0 -82
  777. package/node/lib/lodash/util.default.js +0 -18
  778. package/node/lib/lodash/util.js +0 -31
@@ -0,0 +1,486 @@
1
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
+ import _toPropertyKey from "@babel/runtime/helpers/esm/toPropertyKey";
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import * as React from 'react';
5
+ import { useGridApiEventHandler, useGridApiOptionHandler } from '../../utils/useGridApiEventHandler';
6
+ import { GridEvents } from '../../../models/events/gridEvents';
7
+ import { GridEditModes, GridRowModes } from '../../../models/gridEditRowModel';
8
+ import { useGridApiMethod } from '../../utils/useGridApiMethod';
9
+ import { gridEditRowsStateSelector } from './gridEditRowsSelector';
10
+ import { isPrintableKey } from '../../../utils/keyboardUtils';
11
+ import { gridColumnFieldsSelector } from '../columns/gridColumnsSelector';
12
+ import { GridRowEditStopReasons, GridRowEditStartReasons } from '../../../models/params/gridRowParams';
13
+ export const useGridRowEditing = (apiRef, props) => {
14
+ const focusTimeout = React.useRef(null);
15
+ const nextFocusedCell = React.useRef(null);
16
+ const {
17
+ processRowUpdate
18
+ } = props;
19
+
20
+ const runIfEditModeIsRow = callback => (...args) => {
21
+ if (props.editMode === GridEditModes.Row) {
22
+ callback(...args);
23
+ }
24
+ };
25
+
26
+ const throwIfNotEditable = React.useCallback((id, field) => {
27
+ const params = apiRef.current.getCellParams(id, field);
28
+
29
+ if (!apiRef.current.isCellEditable(params)) {
30
+ throw new Error(`MUI: The cell with id=${id} and field=${field} is not editable.`);
31
+ }
32
+ }, [apiRef]);
33
+ const throwIfNotInMode = React.useCallback((id, mode) => {
34
+ if (apiRef.current.getRowMode(id) !== mode) {
35
+ throw new Error(`MUI: The row with id=${id} is not in ${mode} mode.`);
36
+ }
37
+ }, [apiRef]);
38
+ const handleCellDoubleClick = React.useCallback((params, event) => {
39
+ if (!params.isEditable) {
40
+ return;
41
+ }
42
+
43
+ if (apiRef.current.getRowMode(params.id) === GridRowModes.Edit) {
44
+ return;
45
+ }
46
+
47
+ const rowParams = apiRef.current.getRowParams(params.id);
48
+
49
+ const newParams = _extends({}, rowParams, {
50
+ field: params.field,
51
+ reason: GridRowEditStartReasons.cellDoubleClick
52
+ });
53
+
54
+ apiRef.current.publishEvent(GridEvents.rowEditStart, newParams, event);
55
+ }, [apiRef]);
56
+ const handleCellFocusIn = React.useCallback(params => {
57
+ nextFocusedCell.current = params;
58
+ }, []);
59
+ const handleCellFocusOut = React.useCallback((params, event) => {
60
+ if (!params.isEditable) {
61
+ return;
62
+ }
63
+
64
+ if (apiRef.current.getRowMode(params.id) === GridRowModes.View) {
65
+ return;
66
+ } // The mechanism to detect if we can stop editing a row is different from
67
+ // the cell editing. Instead of triggering it when clicking outside a cell,
68
+ // we must check if another cell in the same row was not clicked. To achieve
69
+ // that, first we keep track of all cells that gained focus. When a cell loses
70
+ // focus we check if the next cell that received focus is from a different row.
71
+
72
+
73
+ nextFocusedCell.current = null;
74
+ focusTimeout.current = setTimeout(() => {
75
+ var _nextFocusedCell$curr;
76
+
77
+ focusTimeout.current = null;
78
+
79
+ if (((_nextFocusedCell$curr = nextFocusedCell.current) == null ? void 0 : _nextFocusedCell$curr.id) !== params.id) {
80
+ const rowParams = apiRef.current.getRowParams(params.id);
81
+
82
+ const newParams = _extends({}, rowParams, {
83
+ field: params.field,
84
+ reason: GridRowEditStopReasons.rowFocusOut
85
+ });
86
+
87
+ apiRef.current.publishEvent(GridEvents.rowEditStop, newParams, event);
88
+ }
89
+ });
90
+ }, [apiRef]);
91
+ React.useEffect(() => {
92
+ return () => {
93
+ clearTimeout(focusTimeout.current);
94
+ };
95
+ }, []);
96
+ const handleCellKeyDown = React.useCallback((params, event) => {
97
+ if (params.cellMode === GridRowModes.Edit) {
98
+ let reason;
99
+
100
+ if (event.key === 'Escape') {
101
+ reason = GridRowEditStopReasons.escapeKeyDown;
102
+ } else if (event.key === 'Enter') {
103
+ reason = GridRowEditStopReasons.enterKeyDown;
104
+ } else if (event.key === 'Tab') {
105
+ const columnFields = gridColumnFieldsSelector(apiRef).filter(field => apiRef.current.isCellEditable(apiRef.current.getCellParams(params.id, field)));
106
+
107
+ if (event.shiftKey) {
108
+ if (params.field === columnFields[0]) {
109
+ // Exit if user pressed Shift+Tab on the first field
110
+ reason = GridRowEditStopReasons.shiftTabKeyDown;
111
+ }
112
+ } else if (params.field === columnFields[columnFields.length - 1]) {
113
+ // Exit if user pressed Tab on the last field
114
+ reason = GridRowEditStopReasons.tabKeyDown;
115
+ }
116
+
117
+ if (reason) {
118
+ event.preventDefault(); // Prevent going to the next element in the tab sequence
119
+ }
120
+ }
121
+
122
+ if (reason) {
123
+ const rowParams = apiRef.current.getRowParams(params.id);
124
+
125
+ const newParams = _extends({}, rowParams, {
126
+ reason,
127
+ field: params.field
128
+ });
129
+
130
+ apiRef.current.publishEvent(GridEvents.rowEditStop, newParams, event);
131
+ }
132
+ } else if (params.isEditable) {
133
+ let reason;
134
+
135
+ if (isPrintableKey(event.key)) {
136
+ if (event.shiftKey || event.ctrlKey || event.metaKey || event.altKey) {
137
+ return;
138
+ }
139
+
140
+ reason = GridRowEditStartReasons.printableKeyDown;
141
+ } else if (event.key === 'Enter') {
142
+ reason = GridRowEditStartReasons.enterKeyDown;
143
+ } else if (event.key === 'Delete') {
144
+ reason = GridRowEditStartReasons.deleteKeyDown;
145
+ }
146
+
147
+ if (reason) {
148
+ const rowParams = apiRef.current.getRowParams(params.id);
149
+
150
+ const newParams = _extends({}, rowParams, {
151
+ field: params.field,
152
+ reason
153
+ });
154
+
155
+ apiRef.current.publishEvent(GridEvents.rowEditStart, newParams, event);
156
+ }
157
+ }
158
+ }, [apiRef]);
159
+ const handleRowEditStart = React.useCallback((params, event) => {
160
+ const {
161
+ id,
162
+ field,
163
+ reason
164
+ } = params;
165
+ apiRef.current.startRowEditMode({
166
+ id,
167
+ fieldToFocus: field
168
+ });
169
+
170
+ if (reason === GridRowEditStartReasons.deleteKeyDown || reason === GridRowEditStartReasons.printableKeyDown) {
171
+ apiRef.current.setEditCellValue({
172
+ id,
173
+ field: field,
174
+ value: ''
175
+ }, event);
176
+ }
177
+ }, [apiRef]);
178
+ const handleRowEditStop = React.useCallback(params => {
179
+ const {
180
+ id,
181
+ reason,
182
+ field
183
+ } = params;
184
+ apiRef.current.unstable_runPendingEditCellValueMutation(id);
185
+ let cellToFocusAfter;
186
+
187
+ if (reason === GridRowEditStopReasons.enterKeyDown) {
188
+ cellToFocusAfter = 'below';
189
+ } else if (reason === GridRowEditStopReasons.tabKeyDown) {
190
+ cellToFocusAfter = 'right';
191
+ } else if (reason === GridRowEditStopReasons.shiftTabKeyDown) {
192
+ cellToFocusAfter = 'left';
193
+ }
194
+
195
+ let ignoreModifications = reason === 'escapeKeyDown';
196
+ const editingState = gridEditRowsStateSelector(apiRef.current.state);
197
+
198
+ if (!ignoreModifications) {
199
+ // The user wants to stop editing the cell but we can't wait for the props to be processed.
200
+ // In this case, discard the modifications if any field is processing its props.
201
+ ignoreModifications = Object.values(editingState[id]).some(fieldProps => {
202
+ return fieldProps.isProcessingProps;
203
+ });
204
+ }
205
+
206
+ apiRef.current.stopRowEditMode({
207
+ id,
208
+ ignoreModifications,
209
+ field,
210
+ cellToFocusAfter
211
+ });
212
+ }, [apiRef]);
213
+ useGridApiEventHandler(apiRef, GridEvents.cellDoubleClick, runIfEditModeIsRow(handleCellDoubleClick));
214
+ useGridApiEventHandler(apiRef, GridEvents.cellFocusIn, runIfEditModeIsRow(handleCellFocusIn));
215
+ useGridApiEventHandler(apiRef, GridEvents.cellFocusOut, runIfEditModeIsRow(handleCellFocusOut));
216
+ useGridApiEventHandler(apiRef, GridEvents.cellKeyDown, runIfEditModeIsRow(handleCellKeyDown));
217
+ useGridApiEventHandler(apiRef, GridEvents.rowEditStart, runIfEditModeIsRow(handleRowEditStart));
218
+ useGridApiEventHandler(apiRef, GridEvents.rowEditStop, runIfEditModeIsRow(handleRowEditStop));
219
+ useGridApiOptionHandler(apiRef, GridEvents.rowEditStart, props.onRowEditStart);
220
+ useGridApiOptionHandler(apiRef, GridEvents.rowEditStop, props.onRowEditStop);
221
+ const getRowMode = React.useCallback(id => {
222
+ if (props.editMode === GridEditModes.Cell) {
223
+ return GridRowModes.View;
224
+ }
225
+
226
+ const editingState = gridEditRowsStateSelector(apiRef.current.state);
227
+ const isEditing = editingState[id] && Object.keys(editingState[id]).length > 0;
228
+ return isEditing ? GridRowModes.Edit : GridRowModes.View;
229
+ }, [apiRef, props.editMode]);
230
+ const updateOrDeleteRowState = React.useCallback((id, newProps) => {
231
+ apiRef.current.setState(state => {
232
+ const newEditingState = _extends({}, state.editRows);
233
+
234
+ if (newProps !== null) {
235
+ newEditingState[id] = newProps;
236
+ } else {
237
+ delete newEditingState[id];
238
+ }
239
+
240
+ return _extends({}, state, {
241
+ editRows: newEditingState
242
+ });
243
+ });
244
+ apiRef.current.forceUpdate();
245
+ }, [apiRef]);
246
+ const updateOrDeleteFieldState = React.useCallback((id, field, newProps) => {
247
+ apiRef.current.setState(state => {
248
+ const newEditingState = _extends({}, state.editRows);
249
+
250
+ if (newProps !== null) {
251
+ newEditingState[id] = _extends({}, newEditingState[id], {
252
+ [field]: _extends({}, newProps)
253
+ });
254
+ } else {
255
+ delete newEditingState[id][field];
256
+
257
+ if (Object.keys(newEditingState[id]).length === 0) {
258
+ delete newEditingState[id];
259
+ }
260
+ }
261
+
262
+ return _extends({}, state, {
263
+ editRows: newEditingState
264
+ });
265
+ });
266
+ apiRef.current.forceUpdate();
267
+ }, [apiRef]);
268
+ const startRowEditMode = React.useCallback(params => {
269
+ const {
270
+ id,
271
+ fieldToFocus
272
+ } = params;
273
+ throwIfNotInMode(id, GridRowModes.View);
274
+
275
+ if (apiRef.current.getRowMode(id) === GridRowModes.Edit) {
276
+ throw new Error(`MUI: The cell with id=${id} is already in edit mode.`);
277
+ }
278
+
279
+ const columnFields = gridColumnFieldsSelector(apiRef);
280
+ const newProps = columnFields.reduce((acc, field) => {
281
+ const cellParams = apiRef.current.getCellParams(id, field);
282
+
283
+ if (!cellParams.isEditable) {
284
+ return acc;
285
+ }
286
+
287
+ acc[field] = {
288
+ value: apiRef.current.getCellValue(id, field),
289
+ error: false,
290
+ isProcessingProps: false
291
+ };
292
+ return acc;
293
+ }, {});
294
+ updateOrDeleteRowState(id, newProps);
295
+
296
+ if (fieldToFocus) {
297
+ apiRef.current.setCellFocus(id, fieldToFocus);
298
+ }
299
+ }, [apiRef, throwIfNotInMode, updateOrDeleteRowState]);
300
+ const stopRowEditMode = React.useCallback(params => {
301
+ const {
302
+ id,
303
+ ignoreModifications,
304
+ field: focusedField,
305
+ cellToFocusAfter = 'none'
306
+ } = params;
307
+ throwIfNotInMode(id, GridRowModes.Edit);
308
+ apiRef.current.unstable_runPendingEditCellValueMutation(id);
309
+
310
+ const updateFocusedCellIfNeeded = () => {
311
+ if (cellToFocusAfter !== 'none' && focusedField) {
312
+ apiRef.current.unstable_moveFocusToRelativeCell(id, focusedField, cellToFocusAfter);
313
+ }
314
+ };
315
+
316
+ if (ignoreModifications) {
317
+ updateFocusedCellIfNeeded();
318
+ updateOrDeleteRowState(id, null);
319
+ return;
320
+ }
321
+
322
+ const editingState = gridEditRowsStateSelector(apiRef.current.state);
323
+ const row = apiRef.current.getRow(id);
324
+ const isSomeFieldProcessingProps = Object.values(editingState[id]).some(fieldProps => fieldProps.isProcessingProps);
325
+
326
+ if (isSomeFieldProcessingProps) {
327
+ return;
328
+ }
329
+
330
+ const hasSomeFieldWithError = Object.values(editingState[id]).some(fieldProps => fieldProps.error);
331
+
332
+ if (hasSomeFieldWithError) {
333
+ return;
334
+ }
335
+
336
+ let rowUpdate = _extends({}, row);
337
+
338
+ Object.entries(editingState[id]).forEach(([field, fieldProps]) => {
339
+ const column = apiRef.current.getColumn(field);
340
+
341
+ if (column.valueSetter) {
342
+ rowUpdate = column.valueSetter({
343
+ value: fieldProps.value,
344
+ row: rowUpdate
345
+ });
346
+ } else {
347
+ rowUpdate[field] = fieldProps.value;
348
+ }
349
+ });
350
+
351
+ if (processRowUpdate) {
352
+ Promise.resolve(processRowUpdate(rowUpdate, row)).then(finalRowUpdate => {
353
+ apiRef.current.updateRows([finalRowUpdate]);
354
+ updateFocusedCellIfNeeded();
355
+ updateOrDeleteRowState(id, null);
356
+ });
357
+ } else {
358
+ apiRef.current.updateRows([rowUpdate]);
359
+ updateFocusedCellIfNeeded();
360
+ updateOrDeleteRowState(id, null);
361
+ }
362
+ }, [apiRef, processRowUpdate, throwIfNotInMode, updateOrDeleteRowState]);
363
+ const setRowEditingEditCellValue = React.useCallback(params => {
364
+ const {
365
+ id,
366
+ field,
367
+ value
368
+ } = params;
369
+ throwIfNotEditable(id, field);
370
+ const column = apiRef.current.getColumn(field);
371
+ const row = apiRef.current.getRow(id);
372
+ let parsedValue = value;
373
+
374
+ if (column.valueParser) {
375
+ parsedValue = column.valueParser(value, apiRef.current.getCellParams(id, field));
376
+ }
377
+
378
+ let editingState = gridEditRowsStateSelector(apiRef.current.state);
379
+
380
+ let newProps = _extends({}, editingState[id][field], {
381
+ value: parsedValue
382
+ });
383
+
384
+ if (!column.preProcessEditCellProps) {
385
+ updateOrDeleteFieldState(id, field, newProps);
386
+ }
387
+
388
+ return new Promise(resolve => {
389
+ const promises = [];
390
+
391
+ if (column.preProcessEditCellProps) {
392
+ const hasChanged = newProps.value !== editingState[id][field].value;
393
+ newProps = _extends({}, newProps, {
394
+ isProcessingProps: true
395
+ });
396
+ updateOrDeleteFieldState(id, field, newProps);
397
+
398
+ const _editingState$id = editingState[id],
399
+ otherFieldsProps = _objectWithoutPropertiesLoose(_editingState$id, [field].map(_toPropertyKey));
400
+
401
+ const promise = Promise.resolve(column.preProcessEditCellProps({
402
+ id,
403
+ row,
404
+ props: newProps,
405
+ hasChanged,
406
+ otherFieldsProps
407
+ })).then(processedProps => {
408
+ // Check again if the row is in edit mode because the user may have
409
+ // discarded the changes while the props were being processed.
410
+ if (apiRef.current.getRowMode(id) === GridRowModes.View) {
411
+ resolve(false);
412
+ return;
413
+ }
414
+
415
+ editingState = gridEditRowsStateSelector(apiRef.current.state);
416
+ processedProps = _extends({}, processedProps, {
417
+ isProcessingProps: false
418
+ }); // We don't reuse the value from the props pre-processing because when the
419
+ // promise resolves it may be already outdated. The only exception to this rule
420
+ // is when there's no pre-processing.
421
+
422
+ processedProps.value = column.preProcessEditCellProps ? editingState[id][field].value : parsedValue;
423
+ updateOrDeleteFieldState(id, field, processedProps);
424
+ });
425
+ promises.push(promise);
426
+ }
427
+
428
+ Object.entries(editingState[id]).forEach(([thisField, fieldProps]) => {
429
+ if (thisField === field) {
430
+ return;
431
+ }
432
+
433
+ const fieldColumn = apiRef.current.getColumn(thisField);
434
+
435
+ if (!fieldColumn.preProcessEditCellProps) {
436
+ return;
437
+ }
438
+
439
+ fieldProps = _extends({}, fieldProps, {
440
+ isProcessingProps: true
441
+ });
442
+ updateOrDeleteFieldState(id, thisField, fieldProps);
443
+ editingState = gridEditRowsStateSelector(apiRef.current.state);
444
+
445
+ const _editingState$id2 = editingState[id],
446
+ otherFieldsProps = _objectWithoutPropertiesLoose(_editingState$id2, [thisField].map(_toPropertyKey));
447
+
448
+ const promise = Promise.resolve(fieldColumn.preProcessEditCellProps({
449
+ id,
450
+ row,
451
+ props: fieldProps,
452
+ hasChanged: false,
453
+ otherFieldsProps
454
+ })).then(processedProps => {
455
+ // Check again if the row is in edit mode because the user may have
456
+ // discarded the changes while the props were being processed.
457
+ if (apiRef.current.getRowMode(id) === GridRowModes.View) {
458
+ resolve(false);
459
+ return;
460
+ }
461
+
462
+ processedProps = _extends({}, processedProps, {
463
+ isProcessingProps: false
464
+ });
465
+ updateOrDeleteFieldState(id, thisField, processedProps);
466
+ });
467
+ promises.push(promise);
468
+ });
469
+ Promise.all(promises).then(() => {
470
+ if (apiRef.current.getRowMode(id) === GridRowModes.Edit) {
471
+ editingState = gridEditRowsStateSelector(apiRef.current.state);
472
+ resolve(!editingState[id][field].error);
473
+ } else {
474
+ resolve(false);
475
+ }
476
+ });
477
+ });
478
+ }, [apiRef, throwIfNotEditable, updateOrDeleteFieldState]);
479
+ const editingApi = {
480
+ getRowMode,
481
+ startRowEditMode,
482
+ stopRowEditMode,
483
+ unstable_setRowEditingEditCellValue: setRowEditingEditCellValue
484
+ };
485
+ useGridApiMethod(apiRef, editingApi, 'EditingApi');
486
+ };
@@ -4,7 +4,7 @@ import { useEventCallback } from '@mui/material/utils';
4
4
  import { useGridApiMethod } from '../../utils/useGridApiMethod';
5
5
  import { GridRowModes, GridEditModes, GridCellModes } from '../../../models/gridEditRowModel';
6
6
  import { useGridSelector } from '../../utils/useGridSelector';
7
- import { gridColumnFieldsSelector } from '../columns/gridColumnsSelector';
7
+ import { gridColumnDefinitionsSelector } from '../columns/gridColumnsSelector';
8
8
  import { gridEditRowsStateSelector } from './gridEditRowsSelector';
9
9
  import { GridEvents } from '../../../models/events/gridEvents';
10
10
  import { gridFocusCellSelector } from '../focus/gridFocusStateSelector';
@@ -14,7 +14,7 @@ export const useGridRowEditing = (apiRef, props) => {
14
14
 
15
15
  const focusTimeout = React.useRef(null);
16
16
  const nextFocusedCell = React.useRef(null);
17
- const columnFields = useGridSelector(apiRef, gridColumnFieldsSelector);
17
+ const columns = useGridSelector(apiRef, gridColumnDefinitionsSelector);
18
18
 
19
19
  const buildCallback = callback => (...args) => {
20
20
  if (props.editMode === GridEditModes.Row) {
@@ -32,11 +32,11 @@ export const useGridRowEditing = (apiRef, props) => {
32
32
 
33
33
  if (mode === GridRowModes.Edit) {
34
34
  newEditRowsState[id] = {};
35
- columnFields.forEach(field => {
36
- const cellParams = apiRef.current.getCellParams(id, field);
35
+ columns.forEach(column => {
36
+ const cellParams = apiRef.current.getCellParams(id, column.field);
37
37
 
38
38
  if (cellParams.isEditable) {
39
- newEditRowsState[id][field] = {
39
+ newEditRowsState[id][column.field] = {
40
40
  value: cellParams.value
41
41
  };
42
42
  }
@@ -50,7 +50,7 @@ export const useGridRowEditing = (apiRef, props) => {
50
50
  });
51
51
  });
52
52
  apiRef.current.forceUpdate();
53
- }, [apiRef, columnFields]);
53
+ }, [apiRef, columns]);
54
54
  const getRowMode = React.useCallback(id => {
55
55
  if (props.editMode === GridEditModes.Cell) {
56
56
  return GridRowModes.View;
@@ -66,7 +66,7 @@ export const useGridRowEditing = (apiRef, props) => {
66
66
  throw new Error(`MUI: You can't commit changes when the edit mode is 'cell'.`);
67
67
  }
68
68
 
69
- apiRef.current.unstable_runPendingEditCellValueChangeDebounce(id);
69
+ apiRef.current.unstable_runPendingEditCellValueMutation(id);
70
70
  const model = apiRef.current.getEditRowsModel();
71
71
  const editRowProps = model[id];
72
72
 
@@ -33,10 +33,7 @@ export interface GridFilterInitialState {
33
33
  * @param {(filterItem: GridFilterItem) => boolean} shouldApplyItem An optional callback to allow the filtering engine to only apply some items.
34
34
  */
35
35
  export declare type GridAggregatedFilterItemApplier = (rowId: GridRowId, shouldApplyItem?: (filterItem: GridFilterItem) => boolean) => boolean;
36
- export interface GridFilteringParams {
36
+ export interface GridFilteringMethodParams {
37
37
  isRowMatchingFilters: GridAggregatedFilterItemApplier | null;
38
38
  }
39
- export declare type GridFilteringMethod = (params: GridFilteringParams) => Omit<GridFilterState, 'filterModel'>;
40
- export declare type GridFilteringMethodCollection = {
41
- [methodName: string]: GridFilteringMethod;
42
- };
39
+ export declare type GridFilteringMethodValue = Omit<GridFilterState, 'filterModel'>;
@@ -8,4 +8,4 @@ export declare const filterStateInitializer: GridStateInitializer<Pick<DataGridP
8
8
  * @requires useGridParamsApi (method)
9
9
  * @requires useGridRows (event)
10
10
  */
11
- export declare const useGridFilter: (apiRef: React.MutableRefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'initialState' | 'filterModel' | 'onFilterModelChange' | 'filterMode' | 'disableMultipleColumnsFiltering'>) => void;
11
+ export declare const useGridFilter: (apiRef: React.MutableRefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'initialState' | 'filterModel' | 'onFilterModelChange' | 'filterMode' | 'disableMultipleColumnsFiltering' | 'components' | 'componentsProps'>) => void;
@@ -10,10 +10,11 @@ import { GridPreferencePanelsValue } from '../preferencesPanel/gridPreferencePan
10
10
  import { getDefaultGridFilterModel } from './gridFilterState';
11
11
  import { gridFilterModelSelector, gridVisibleSortedRowEntriesSelector } from './gridFilterSelector';
12
12
  import { useFirstRender } from '../../utils/useFirstRender';
13
- import { gridRowIdsSelector, gridRowGroupingNameSelector } from '../rows';
13
+ import { gridRowIdsSelector } from '../rows';
14
14
  import { useGridRegisterPreProcessor } from '../../core/preProcessing';
15
- import { useGridRegisterFilteringMethod } from './useGridRegisterFilteringMethod';
15
+ import { GRID_DEFAULT_STRATEGY, useGridRegisterStrategyProcessor } from '../../core/strategyProcessing';
16
16
  import { buildAggregatedFilterApplier, sanitizeFilterModel, mergeStateWithFilterModel } from './gridFilterUtils';
17
+ import { jsx as _jsx } from "react/jsx-runtime";
17
18
  export const filterStateInitializer = (state, props, apiRef) => {
18
19
  var _ref, _props$filterModel, _props$initialState, _props$initialState$f;
19
20
 
@@ -33,9 +34,9 @@ export const filterStateInitializer = (state, props, apiRef) => {
33
34
  */
34
35
 
35
36
  export const useGridFilter = (apiRef, props) => {
37
+ var _props$componentsProp2;
38
+
36
39
  const logger = useGridLogger(apiRef, 'useGridFilter');
37
- const filteringMethodCollectionRef = React.useRef({});
38
- const lastFilteringMethodApplied = React.useRef(null);
39
40
  apiRef.current.unstable_updateControlState({
40
41
  stateId: 'filter',
41
42
  propModel: props.filterModel,
@@ -49,17 +50,9 @@ export const useGridFilter = (apiRef, props) => {
49
50
 
50
51
  const applyFilters = React.useCallback(() => {
51
52
  apiRef.current.setState(state => {
52
- const rowGroupingName = gridRowGroupingNameSelector(state, apiRef.current.instanceId);
53
- const filteringMethod = filteringMethodCollectionRef.current[rowGroupingName];
54
-
55
- if (!filteringMethod) {
56
- throw new Error('MUI: Invalid filtering method.');
57
- }
58
-
59
53
  const filterModel = gridFilterModelSelector(state, apiRef.current.instanceId);
60
54
  const isRowMatchingFilters = props.filterMode === GridFeatureModeConstant.client ? buildAggregatedFilterApplier(filterModel, apiRef) : null;
61
- lastFilteringMethodApplied.current = filteringMethod;
62
- const filteringResult = filteringMethod({
55
+ const filteringResult = apiRef.current.unstable_applyStrategyProcessor('filtering', {
63
56
  isRowMatchingFilters
64
57
  });
65
58
  return _extends({}, state, {
@@ -194,6 +187,16 @@ export const useGridFilter = (apiRef, props) => {
194
187
  callbacks: [...params.callbacks, apiRef.current.unstable_applyFilters]
195
188
  });
196
189
  }, [apiRef, props.disableMultipleColumnsFiltering]);
190
+ const preferencePanelPreProcessing = React.useCallback((initialValue, value) => {
191
+ if (value === GridPreferencePanelsValue.filters) {
192
+ var _props$componentsProp;
193
+
194
+ const FilterPanel = props.components.FilterPanel;
195
+ return /*#__PURE__*/_jsx(FilterPanel, _extends({}, (_props$componentsProp = props.componentsProps) == null ? void 0 : _props$componentsProp.filterPanel));
196
+ }
197
+
198
+ return initialValue;
199
+ }, [props.components.FilterPanel, (_props$componentsProp2 = props.componentsProps) == null ? void 0 : _props$componentsProp2.filterPanel]);
197
200
  const flatFilteringMethod = React.useCallback(params => {
198
201
  if (props.filterMode === GridFeatureModeConstant.client && params.isRowMatchingFilters) {
199
202
  const rowIds = gridRowIdsSelector(apiRef);
@@ -220,7 +223,8 @@ export const useGridFilter = (apiRef, props) => {
220
223
  }, [apiRef, props.filterMode]);
221
224
  useGridRegisterPreProcessor(apiRef, 'exportState', stateExportPreProcessing);
222
225
  useGridRegisterPreProcessor(apiRef, 'restoreState', stateRestorePreProcessing);
223
- useGridRegisterFilteringMethod(apiRef, 'none', flatFilteringMethod);
226
+ useGridRegisterPreProcessor(apiRef, 'preferencePanel', preferencePanelPreProcessing);
227
+ useGridRegisterStrategyProcessor(apiRef, GRID_DEFAULT_STRATEGY, 'filtering', flatFilteringMethod);
224
228
  /**
225
229
  * EVENTS
226
230
  */
@@ -237,30 +241,20 @@ export const useGridFilter = (apiRef, props) => {
237
241
  }));
238
242
  }
239
243
  }, [apiRef, logger]);
240
- const handlePreProcessorRegister = React.useCallback(name => {
241
- if (name !== 'filteringMethod') {
242
- return;
243
- }
244
-
245
- filteringMethodCollectionRef.current = apiRef.current.unstable_applyPreProcessors('filteringMethod', {});
246
- const rowGroupingName = gridRowGroupingNameSelector(apiRef);
247
-
248
- if (lastFilteringMethodApplied.current !== filteringMethodCollectionRef.current[rowGroupingName]) {
244
+ const handleStrategyProcessorChange = React.useCallback(methodName => {
245
+ if (methodName === 'filtering') {
249
246
  apiRef.current.unstable_applyFilters();
250
247
  }
251
248
  }, [apiRef]);
252
249
  useGridApiEventHandler(apiRef, GridEvents.rowsSet, apiRef.current.unstable_applyFilters);
253
250
  useGridApiEventHandler(apiRef, GridEvents.rowExpansionChange, apiRef.current.unstable_applyFilters);
254
251
  useGridApiEventHandler(apiRef, GridEvents.columnsChange, handleColumnsChange);
255
- useGridApiEventHandler(apiRef, GridEvents.preProcessorRegister, handlePreProcessorRegister);
252
+ useGridApiEventHandler(apiRef, GridEvents.activeStrategyProcessorChange, handleStrategyProcessorChange);
256
253
  /**
257
254
  * 1ST RENDER
258
255
  */
259
256
 
260
257
  useFirstRender(() => {
261
- // This line of pre-processor initialization should always come after the registration of `flatFilteringMethod`
262
- // Otherwise on the 1st render there would be no filtering method registered
263
- filteringMethodCollectionRef.current = apiRef.current.unstable_applyPreProcessors('filteringMethod', {});
264
258
  apiRef.current.unstable_applyFilters();
265
259
  });
266
260
  /**
@@ -8,4 +8,4 @@ export declare const focusStateInitializer: GridStateInitializer;
8
8
  * @requires useGridRows (method)
9
9
  * @requires useGridEditing (event)
10
10
  */
11
- export declare const useGridFocus: (apiRef: React.MutableRefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'rows'>) => void;
11
+ export declare const useGridFocus: (apiRef: React.MutableRefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'rows' | 'pagination' | 'paginationMode'>) => void;