@mui/x-data-grid 7.0.0-beta.3 → 7.0.0-beta.5

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 (531) hide show
  1. package/CHANGELOG.md +357 -22
  2. package/DataGrid/DataGrid.js +2 -0
  3. package/colDef/gridActionsColDef.js +1 -0
  4. package/colDef/gridBooleanColDef.js +1 -0
  5. package/colDef/gridBooleanOperators.js +1 -1
  6. package/colDef/gridCheckboxSelectionColDef.js +1 -0
  7. package/components/GridRow.d.ts +7 -9
  8. package/components/GridRow.js +36 -47
  9. package/components/GridScrollbarFillerCell.js +6 -21
  10. package/components/cell/GridCell.d.ts +2 -1
  11. package/components/cell/GridCell.js +17 -15
  12. package/components/cell/GridSkeletonCell.d.ts +3 -2
  13. package/components/cell/GridSkeletonCell.js +14 -6
  14. package/components/columnSelection/GridCellCheckboxRenderer.js +7 -6
  15. package/components/columnsManagement/GridColumnsManagement.js +1 -1
  16. package/components/containers/GridRootStyles.js +59 -21
  17. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  18. package/components/virtualization/GridBottomContainer.js +1 -1
  19. package/components/virtualization/GridTopContainer.js +1 -1
  20. package/components/virtualization/GridVirtualScroller.js +2 -2
  21. package/components/virtualization/GridVirtualScrollerRenderZone.js +9 -3
  22. package/constants/gridClasses.d.ts +24 -8
  23. package/constants/gridClasses.js +1 -1
  24. package/hooks/features/clipboard/useGridClipboard.js +1 -1
  25. package/hooks/features/columnHeaders/useGridColumnHeaders.js +11 -8
  26. package/hooks/features/columns/gridColumnsSelector.d.ts +6 -0
  27. package/hooks/features/columns/gridColumnsSelector.js +8 -1
  28. package/hooks/features/columns/useGridColumns.js +4 -0
  29. package/hooks/features/editing/useGridCellEditing.js +3 -4
  30. package/hooks/features/editing/useGridRowEditing.js +4 -6
  31. package/hooks/features/filter/useGridFilter.js +2 -2
  32. package/hooks/features/rows/useGridRows.js +8 -4
  33. package/hooks/features/rows/useGridRowsMeta.js +5 -13
  34. package/hooks/features/sorting/gridSortingUtils.js +9 -1
  35. package/hooks/features/sorting/useGridSorting.js +1 -2
  36. package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +0 -9
  37. package/hooks/features/virtualization/gridVirtualizationSelectors.js +0 -7
  38. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +3 -0
  39. package/hooks/features/virtualization/useGridVirtualScroller.js +82 -138
  40. package/hooks/features/virtualization/useGridVirtualization.d.ts +0 -8
  41. package/hooks/features/virtualization/useGridVirtualization.js +1 -6
  42. package/hooks/utils/useTimeout.d.ts +5 -3
  43. package/hooks/utils/useTimeout.js +13 -5
  44. package/index.js +1 -1
  45. package/internals/index.d.ts +1 -1
  46. package/internals/index.js +1 -1
  47. package/models/colDef/gridColDef.d.ts +13 -0
  48. package/modern/DataGrid/DataGrid.js +2 -0
  49. package/modern/colDef/gridActionsColDef.js +1 -0
  50. package/modern/colDef/gridBooleanColDef.js +1 -0
  51. package/modern/colDef/gridBooleanOperators.js +1 -1
  52. package/modern/colDef/gridCheckboxSelectionColDef.js +1 -0
  53. package/modern/components/GridRow.js +35 -46
  54. package/modern/components/GridScrollbarFillerCell.js +6 -21
  55. package/modern/components/cell/GridCell.js +17 -15
  56. package/modern/components/cell/GridSkeletonCell.js +14 -6
  57. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +7 -6
  58. package/modern/components/columnsManagement/GridColumnsManagement.js +1 -1
  59. package/modern/components/containers/GridRootStyles.js +59 -21
  60. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  61. package/modern/components/virtualization/GridBottomContainer.js +1 -1
  62. package/modern/components/virtualization/GridTopContainer.js +1 -1
  63. package/modern/components/virtualization/GridVirtualScroller.js +2 -2
  64. package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +8 -3
  65. package/modern/constants/gridClasses.js +1 -1
  66. package/modern/hooks/features/clipboard/useGridClipboard.js +1 -1
  67. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +11 -8
  68. package/modern/hooks/features/columns/gridColumnsSelector.js +8 -1
  69. package/modern/hooks/features/columns/useGridColumns.js +2 -0
  70. package/modern/hooks/features/editing/useGridCellEditing.js +3 -4
  71. package/modern/hooks/features/editing/useGridRowEditing.js +4 -6
  72. package/modern/hooks/features/filter/useGridFilter.js +2 -2
  73. package/modern/hooks/features/rows/useGridRows.js +8 -4
  74. package/modern/hooks/features/rows/useGridRowsMeta.js +5 -13
  75. package/modern/hooks/features/sorting/gridSortingUtils.js +9 -1
  76. package/modern/hooks/features/sorting/useGridSorting.js +1 -2
  77. package/modern/hooks/features/virtualization/gridVirtualizationSelectors.js +0 -7
  78. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +80 -136
  79. package/modern/hooks/features/virtualization/useGridVirtualization.js +1 -6
  80. package/modern/hooks/utils/useTimeout.js +13 -5
  81. package/modern/index.js +1 -1
  82. package/modern/internals/index.js +1 -1
  83. package/modern/utils/keyboardUtils.js +20 -11
  84. package/modern/utils/utils.js +9 -0
  85. package/node/DataGrid/DataGrid.js +1 -0
  86. package/node/colDef/gridActionsColDef.js +1 -0
  87. package/node/colDef/gridBooleanColDef.js +1 -0
  88. package/node/colDef/gridBooleanOperators.js +1 -1
  89. package/node/colDef/gridCheckboxSelectionColDef.js +1 -0
  90. package/node/components/GridRow.js +35 -46
  91. package/node/components/GridScrollbarFillerCell.js +5 -20
  92. package/node/components/cell/GridCell.js +17 -15
  93. package/node/components/cell/GridSkeletonCell.js +15 -7
  94. package/node/components/columnSelection/GridCellCheckboxRenderer.js +7 -6
  95. package/node/components/columnsManagement/GridColumnsManagement.js +1 -1
  96. package/node/components/containers/GridRootStyles.js +59 -21
  97. package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  98. package/node/components/virtualization/GridBottomContainer.js +1 -1
  99. package/node/components/virtualization/GridTopContainer.js +1 -1
  100. package/node/components/virtualization/GridVirtualScroller.js +2 -2
  101. package/node/components/virtualization/GridVirtualScrollerRenderZone.js +7 -2
  102. package/node/constants/gridClasses.js +1 -1
  103. package/node/hooks/features/clipboard/useGridClipboard.js +1 -1
  104. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +8 -5
  105. package/node/hooks/features/columns/gridColumnsSelector.js +9 -2
  106. package/node/hooks/features/columns/useGridColumns.js +2 -0
  107. package/node/hooks/features/editing/useGridCellEditing.js +2 -3
  108. package/node/hooks/features/editing/useGridRowEditing.js +3 -5
  109. package/node/hooks/features/filter/useGridFilter.js +2 -2
  110. package/node/hooks/features/rows/useGridRows.js +8 -4
  111. package/node/hooks/features/rows/useGridRowsMeta.js +5 -13
  112. package/node/hooks/features/sorting/gridSortingUtils.js +9 -1
  113. package/node/hooks/features/sorting/useGridSorting.js +1 -2
  114. package/node/hooks/features/virtualization/gridVirtualizationSelectors.js +1 -8
  115. package/node/hooks/features/virtualization/useGridVirtualScroller.js +81 -136
  116. package/node/hooks/features/virtualization/useGridVirtualization.js +2 -7
  117. package/node/hooks/utils/useTimeout.js +13 -4
  118. package/node/index.js +1 -1
  119. package/node/internals/index.js +7 -0
  120. package/node/utils/keyboardUtils.js +25 -20
  121. package/node/utils/utils.js +12 -1
  122. package/package.json +1 -1
  123. package/utils/keyboardUtils.d.ts +7 -6
  124. package/utils/keyboardUtils.js +20 -11
  125. package/utils/utils.d.ts +4 -0
  126. package/utils/utils.js +9 -0
  127. package/legacy/DataGrid/DataGrid.js +0 -664
  128. package/legacy/DataGrid/index.js +0 -2
  129. package/legacy/DataGrid/useDataGridComponent.js +0 -81
  130. package/legacy/DataGrid/useDataGridProps.js +0 -98
  131. package/legacy/colDef/gridActionsColDef.js +0 -18
  132. package/legacy/colDef/gridBooleanColDef.js +0 -42
  133. package/legacy/colDef/gridBooleanOperators.js +0 -16
  134. package/legacy/colDef/gridCheckboxSelectionColDef.js +0 -33
  135. package/legacy/colDef/gridDateColDef.js +0 -62
  136. package/legacy/colDef/gridDateOperators.js +0 -115
  137. package/legacy/colDef/gridDefaultColumnTypes.js +0 -19
  138. package/legacy/colDef/gridNumericColDef.js +0 -19
  139. package/legacy/colDef/gridNumericOperators.js +0 -145
  140. package/legacy/colDef/gridSingleSelectColDef.js +0 -64
  141. package/legacy/colDef/gridSingleSelectOperators.js +0 -46
  142. package/legacy/colDef/gridStringColDef.js +0 -27
  143. package/legacy/colDef/gridStringOperators.js +0 -112
  144. package/legacy/colDef/index.js +0 -13
  145. package/legacy/components/GridApiContext.js +0 -5
  146. package/legacy/components/GridColumnHeaders.js +0 -94
  147. package/legacy/components/GridDetailPanels.js +0 -4
  148. package/legacy/components/GridFooter.js +0 -42
  149. package/legacy/components/GridHeader.js +0 -13
  150. package/legacy/components/GridHeaders.js +0 -53
  151. package/legacy/components/GridLoadingOverlay.js +0 -21
  152. package/legacy/components/GridNoResultsOverlay.js +0 -14
  153. package/legacy/components/GridNoRowsOverlay.js +0 -23
  154. package/legacy/components/GridPagination.js +0 -85
  155. package/legacy/components/GridPinnedRows.js +0 -4
  156. package/legacy/components/GridRow.js +0 -465
  157. package/legacy/components/GridRowCount.js +0 -63
  158. package/legacy/components/GridScrollbarFillerCell.js +0 -34
  159. package/legacy/components/GridSelectedRowCount.js +0 -66
  160. package/legacy/components/base/GridBody.js +0 -2
  161. package/legacy/components/base/GridFooterPlaceholder.js +0 -12
  162. package/legacy/components/base/GridOverlays.js +0 -122
  163. package/legacy/components/base/index.js +0 -3
  164. package/legacy/components/cell/GridActionsCell.js +0 -294
  165. package/legacy/components/cell/GridActionsCellItem.js +0 -69
  166. package/legacy/components/cell/GridBooleanCell.js +0 -121
  167. package/legacy/components/cell/GridCell.js +0 -350
  168. package/legacy/components/cell/GridEditBooleanCell.js +0 -174
  169. package/legacy/components/cell/GridEditDateCell.js +0 -230
  170. package/legacy/components/cell/GridEditInputCell.js +0 -198
  171. package/legacy/components/cell/GridEditSingleSelectCell.js +0 -231
  172. package/legacy/components/cell/GridSkeletonCell.js +0 -52
  173. package/legacy/components/cell/index.js +0 -9
  174. package/legacy/components/columnHeaders/ColumnHeaderMenuIcon.js +0 -59
  175. package/legacy/components/columnHeaders/GridBaseColumnHeaders.js +0 -41
  176. package/legacy/components/columnHeaders/GridColumnGroupHeader.js +0 -132
  177. package/legacy/components/columnHeaders/GridColumnHeaderFilterIconButton.js +0 -93
  178. package/legacy/components/columnHeaders/GridColumnHeaderItem.js +0 -212
  179. package/legacy/components/columnHeaders/GridColumnHeaderSeparator.js +0 -71
  180. package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +0 -79
  181. package/legacy/components/columnHeaders/GridColumnHeaderTitle.js +0 -84
  182. package/legacy/components/columnHeaders/GridColumnHeadersInner.js +0 -55
  183. package/legacy/components/columnHeaders/GridGenericColumnHeaderItem.js +0 -107
  184. package/legacy/components/columnHeaders/GridIconButtonContainer.js +0 -41
  185. package/legacy/components/columnHeaders/index.js +0 -5
  186. package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +0 -160
  187. package/legacy/components/columnSelection/GridHeaderCheckbox.js +0 -134
  188. package/legacy/components/columnSelection/index.js +0 -2
  189. package/legacy/components/columnsManagement/GridColumnsManagement.js +0 -307
  190. package/legacy/components/columnsManagement/index.js +0 -1
  191. package/legacy/components/columnsManagement/utils.js +0 -22
  192. package/legacy/components/containers/GridFooterContainer.js +0 -50
  193. package/legacy/components/containers/GridOverlay.js +0 -52
  194. package/legacy/components/containers/GridRoot.js +0 -79
  195. package/legacy/components/containers/GridRootStyles.js +0 -395
  196. package/legacy/components/containers/GridToolbarContainer.js +0 -59
  197. package/legacy/components/containers/index.js +0 -4
  198. package/legacy/components/index.js +0 -19
  199. package/legacy/components/menu/GridMenu.js +0 -132
  200. package/legacy/components/menu/columnMenu/GridColumnHeaderMenu.js +0 -61
  201. package/legacy/components/menu/columnMenu/GridColumnMenu.js +0 -81
  202. package/legacy/components/menu/columnMenu/GridColumnMenuContainer.js +0 -56
  203. package/legacy/components/menu/columnMenu/GridColumnMenuItemProps.js +0 -1
  204. package/legacy/components/menu/columnMenu/GridColumnMenuProps.js +0 -1
  205. package/legacy/components/menu/columnMenu/index.js +0 -9
  206. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuColumnsItem.js +0 -21
  207. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +0 -41
  208. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +0 -60
  209. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +0 -41
  210. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +0 -80
  211. package/legacy/components/menu/columnMenu/menuItems/index.js +0 -5
  212. package/legacy/components/menu/index.js +0 -2
  213. package/legacy/components/panel/GridColumnsPanel.js +0 -22
  214. package/legacy/components/panel/GridPanel.js +0 -137
  215. package/legacy/components/panel/GridPanelContent.js +0 -49
  216. package/legacy/components/panel/GridPanelFooter.js +0 -50
  217. package/legacy/components/panel/GridPanelHeader.js +0 -48
  218. package/legacy/components/panel/GridPanelWrapper.js +0 -64
  219. package/legacy/components/panel/GridPreferencesPanel.js +0 -26
  220. package/legacy/components/panel/filterPanel/GridFilterForm.js +0 -528
  221. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +0 -118
  222. package/legacy/components/panel/filterPanel/GridFilterInputDate.js +0 -121
  223. package/legacy/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -116
  224. package/legacy/components/panel/filterPanel/GridFilterInputMultipleValue.js +0 -102
  225. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +0 -149
  226. package/legacy/components/panel/filterPanel/GridFilterInputValue.js +0 -106
  227. package/legacy/components/panel/filterPanel/GridFilterInputValueProps.js +0 -1
  228. package/legacy/components/panel/filterPanel/GridFilterPanel.js +0 -264
  229. package/legacy/components/panel/filterPanel/filterPanelUtils.js +0 -22
  230. package/legacy/components/panel/filterPanel/index.js +0 -9
  231. package/legacy/components/panel/index.js +0 -7
  232. package/legacy/components/reexportable.js +0 -1
  233. package/legacy/components/toolbar/GridToolbar.js +0 -64
  234. package/legacy/components/toolbar/GridToolbarColumnsButton.js +0 -68
  235. package/legacy/components/toolbar/GridToolbarDensitySelector.js +0 -142
  236. package/legacy/components/toolbar/GridToolbarExport.js +0 -80
  237. package/legacy/components/toolbar/GridToolbarExportContainer.js +0 -105
  238. package/legacy/components/toolbar/GridToolbarFilterButton.js +0 -136
  239. package/legacy/components/toolbar/GridToolbarQuickFilter.js +0 -164
  240. package/legacy/components/toolbar/index.js +0 -7
  241. package/legacy/components/virtualization/GridBottomContainer.js +0 -25
  242. package/legacy/components/virtualization/GridMainContainer.js +0 -20
  243. package/legacy/components/virtualization/GridTopContainer.js +0 -35
  244. package/legacy/components/virtualization/GridVirtualScrollbar.js +0 -129
  245. package/legacy/components/virtualization/GridVirtualScroller.js +0 -93
  246. package/legacy/components/virtualization/GridVirtualScrollerContent.js +0 -35
  247. package/legacy/components/virtualization/GridVirtualScrollerFiller.js +0 -70
  248. package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +0 -49
  249. package/legacy/constants/defaultGridSlotsComponents.js +0 -33
  250. package/legacy/constants/envConstants.js +0 -19
  251. package/legacy/constants/gridClasses.js +0 -5
  252. package/legacy/constants/gridDetailPanelToggleField.js +0 -2
  253. package/legacy/constants/index.js +0 -3
  254. package/legacy/constants/localeTextConstants.js +0 -158
  255. package/legacy/context/GridContextProvider.js +0 -21
  256. package/legacy/context/GridRootPropsContext.js +0 -6
  257. package/legacy/context/index.js +0 -1
  258. package/legacy/hooks/core/gridCoreSelector.js +0 -7
  259. package/legacy/hooks/core/index.js +0 -1
  260. package/legacy/hooks/core/pipeProcessing/gridPipeProcessingApi.js +0 -1
  261. package/legacy/hooks/core/pipeProcessing/index.js +0 -4
  262. package/legacy/hooks/core/pipeProcessing/useGridPipeProcessing.js +0 -114
  263. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +0 -26
  264. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -26
  265. package/legacy/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +0 -1
  266. package/legacy/hooks/core/strategyProcessing/index.js +0 -3
  267. package/legacy/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +0 -18
  268. package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +0 -116
  269. package/legacy/hooks/core/useGridApiInitialization.js +0 -124
  270. package/legacy/hooks/core/useGridInitialization.js +0 -26
  271. package/legacy/hooks/core/useGridLocaleText.js +0 -12
  272. package/legacy/hooks/core/useGridLoggerFactory.js +0 -51
  273. package/legacy/hooks/core/useGridRefs.js +0 -13
  274. package/legacy/hooks/core/useGridStateInitialization.js +0 -106
  275. package/legacy/hooks/core/useGridTheme.js +0 -21
  276. package/legacy/hooks/features/clipboard/useGridClipboard.js +0 -92
  277. package/legacy/hooks/features/columnGrouping/gridColumnGroupsInterfaces.js +0 -1
  278. package/legacy/hooks/features/columnGrouping/gridColumnGroupsSelector.js +0 -24
  279. package/legacy/hooks/features/columnGrouping/gridColumnGroupsUtils.js +0 -92
  280. package/legacy/hooks/features/columnGrouping/index.js +0 -2
  281. package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +0 -140
  282. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +0 -272
  283. package/legacy/hooks/features/columnMenu/columnMenuInterfaces.js +0 -1
  284. package/legacy/hooks/features/columnMenu/columnMenuSelector.js +0 -3
  285. package/legacy/hooks/features/columnMenu/index.js +0 -2
  286. package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +0 -108
  287. package/legacy/hooks/features/columnMenu/useGridColumnMenuSlots.js +0 -71
  288. package/legacy/hooks/features/columns/gridColumnsInterfaces.js +0 -9
  289. package/legacy/hooks/features/columns/gridColumnsSelector.js +0 -174
  290. package/legacy/hooks/features/columns/gridColumnsUtils.js +0 -338
  291. package/legacy/hooks/features/columns/index.js +0 -2
  292. package/legacy/hooks/features/columns/useGridColumnSpanning.js +0 -105
  293. package/legacy/hooks/features/columns/useGridColumns.js +0 -319
  294. package/legacy/hooks/features/density/densitySelector.js +0 -10
  295. package/legacy/hooks/features/density/densityState.js +0 -1
  296. package/legacy/hooks/features/density/index.js +0 -2
  297. package/legacy/hooks/features/density/useGridDensity.js +0 -48
  298. package/legacy/hooks/features/dimensions/gridDimensionsApi.js +0 -1
  299. package/legacy/hooks/features/dimensions/gridDimensionsSelectors.js +0 -3
  300. package/legacy/hooks/features/dimensions/index.js +0 -2
  301. package/legacy/hooks/features/dimensions/useGridDimensions.js +0 -302
  302. package/legacy/hooks/features/editing/gridEditingSelectors.js +0 -4
  303. package/legacy/hooks/features/editing/useGridCellEditing.js +0 -456
  304. package/legacy/hooks/features/editing/useGridEditing.js +0 -145
  305. package/legacy/hooks/features/editing/useGridRowEditing.js +0 -567
  306. package/legacy/hooks/features/events/useGridEvents.js +0 -23
  307. package/legacy/hooks/features/export/serializers/csvSerializer.js +0 -155
  308. package/legacy/hooks/features/export/useGridCsvExport.js +0 -75
  309. package/legacy/hooks/features/export/useGridPrintExport.js +0 -313
  310. package/legacy/hooks/features/export/utils.js +0 -49
  311. package/legacy/hooks/features/filter/gridFilterSelector.js +0 -165
  312. package/legacy/hooks/features/filter/gridFilterState.js +0 -20
  313. package/legacy/hooks/features/filter/gridFilterUtils.js +0 -330
  314. package/legacy/hooks/features/filter/index.js +0 -2
  315. package/legacy/hooks/features/filter/useGridFilter.js +0 -378
  316. package/legacy/hooks/features/focus/gridFocusState.js +0 -1
  317. package/legacy/hooks/features/focus/gridFocusStateSelector.js +0 -31
  318. package/legacy/hooks/features/focus/index.js +0 -2
  319. package/legacy/hooks/features/focus/useGridFocus.js +0 -408
  320. package/legacy/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +0 -10
  321. package/legacy/hooks/features/headerFiltering/index.js +0 -1
  322. package/legacy/hooks/features/headerFiltering/useGridHeaderFiltering.js +0 -93
  323. package/legacy/hooks/features/index.js +0 -16
  324. package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +0 -565
  325. package/legacy/hooks/features/pagination/gridPaginationInterfaces.js +0 -1
  326. package/legacy/hooks/features/pagination/gridPaginationSelector.js +0 -115
  327. package/legacy/hooks/features/pagination/gridPaginationUtils.js +0 -31
  328. package/legacy/hooks/features/pagination/index.js +0 -2
  329. package/legacy/hooks/features/pagination/useGridPagination.js +0 -175
  330. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +0 -3
  331. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelState.js +0 -1
  332. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -6
  333. package/legacy/hooks/features/preferencesPanel/index.js +0 -3
  334. package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +0 -125
  335. package/legacy/hooks/features/rowSelection/gridRowSelectionSelector.js +0 -19
  336. package/legacy/hooks/features/rowSelection/index.js +0 -1
  337. package/legacy/hooks/features/rowSelection/useGridRowSelection.js +0 -419
  338. package/legacy/hooks/features/rowSelection/useGridRowSelectionPreProcessors.js +0 -45
  339. package/legacy/hooks/features/rowSelection/utils.js +0 -8
  340. package/legacy/hooks/features/rows/gridRowsInterfaces.js +0 -1
  341. package/legacy/hooks/features/rows/gridRowsMetaSelector.js +0 -3
  342. package/legacy/hooks/features/rows/gridRowsMetaState.js +0 -1
  343. package/legacy/hooks/features/rows/gridRowsSelector.js +0 -90
  344. package/legacy/hooks/features/rows/gridRowsUtils.js +0 -294
  345. package/legacy/hooks/features/rows/index.js +0 -4
  346. package/legacy/hooks/features/rows/useGridParamsApi.js +0 -142
  347. package/legacy/hooks/features/rows/useGridRows.js +0 -466
  348. package/legacy/hooks/features/rows/useGridRowsMeta.js +0 -236
  349. package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +0 -82
  350. package/legacy/hooks/features/scroll/useGridScroll.js +0 -133
  351. package/legacy/hooks/features/sorting/gridSortingSelector.js +0 -56
  352. package/legacy/hooks/features/sorting/gridSortingState.js +0 -1
  353. package/legacy/hooks/features/sorting/gridSortingUtils.js +0 -154
  354. package/legacy/hooks/features/sorting/index.js +0 -2
  355. package/legacy/hooks/features/sorting/useGridSorting.js +0 -276
  356. package/legacy/hooks/features/statePersistence/gridStatePersistenceInterface.js +0 -1
  357. package/legacy/hooks/features/statePersistence/index.js +0 -1
  358. package/legacy/hooks/features/statePersistence/useGridStatePersistence.js +0 -25
  359. package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +0 -61
  360. package/legacy/hooks/features/virtualization/index.js +0 -2
  361. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +0 -646
  362. package/legacy/hooks/features/virtualization/useGridVirtualization.js +0 -63
  363. package/legacy/hooks/index.js +0 -3
  364. package/legacy/hooks/utils/index.js +0 -9
  365. package/legacy/hooks/utils/useFirstRender.js +0 -8
  366. package/legacy/hooks/utils/useGridApiContext.js +0 -9
  367. package/legacy/hooks/utils/useGridApiEventHandler.js +0 -105
  368. package/legacy/hooks/utils/useGridApiMethod.js +0 -11
  369. package/legacy/hooks/utils/useGridApiRef.js +0 -7
  370. package/legacy/hooks/utils/useGridAriaAttributes.js +0 -25
  371. package/legacy/hooks/utils/useGridInitializeState.js +0 -8
  372. package/legacy/hooks/utils/useGridLogger.js +0 -10
  373. package/legacy/hooks/utils/useGridNativeEventListener.js +0 -32
  374. package/legacy/hooks/utils/useGridPrivateApiContext.js +0 -12
  375. package/legacy/hooks/utils/useGridRootProps.js +0 -9
  376. package/legacy/hooks/utils/useGridSelector.js +0 -54
  377. package/legacy/hooks/utils/useGridVisibleRows.js +0 -42
  378. package/legacy/hooks/utils/useLazyRef.js +0 -11
  379. package/legacy/hooks/utils/useOnMount.js +0 -7
  380. package/legacy/hooks/utils/useResizeObserver.js +0 -36
  381. package/legacy/hooks/utils/useRunOnce.js +0 -18
  382. package/legacy/hooks/utils/useTimeout.js +0 -38
  383. package/legacy/index.js +0 -38
  384. package/legacy/internals/index.js +0 -68
  385. package/legacy/internals/utils/computeSlots.js +0 -17
  386. package/legacy/internals/utils/index.js +0 -3
  387. package/legacy/internals/utils/propValidation.js +0 -21
  388. package/legacy/internals/utils/useProps.js +0 -32
  389. package/legacy/joy/icons.js +0 -432
  390. package/legacy/joy/index.js +0 -2
  391. package/legacy/joy/joySlots.js +0 -420
  392. package/legacy/locales/arSD.js +0 -160
  393. package/legacy/locales/beBY.js +0 -184
  394. package/legacy/locales/bgBG.js +0 -160
  395. package/legacy/locales/coreLocales.js +0 -62
  396. package/legacy/locales/csCZ.js +0 -181
  397. package/legacy/locales/daDK.js +0 -160
  398. package/legacy/locales/deDE.js +0 -160
  399. package/legacy/locales/elGR.js +0 -160
  400. package/legacy/locales/enUS.js +0 -4
  401. package/legacy/locales/esES.js +0 -160
  402. package/legacy/locales/faIR.js +0 -160
  403. package/legacy/locales/fiFI.js +0 -160
  404. package/legacy/locales/frFR.js +0 -160
  405. package/legacy/locales/heIL.js +0 -160
  406. package/legacy/locales/hrHR.js +0 -160
  407. package/legacy/locales/huHU.js +0 -160
  408. package/legacy/locales/index.js +0 -35
  409. package/legacy/locales/itIT.js +0 -160
  410. package/legacy/locales/jaJP.js +0 -160
  411. package/legacy/locales/koKR.js +0 -162
  412. package/legacy/locales/nbNO.js +0 -162
  413. package/legacy/locales/nlNL.js +0 -160
  414. package/legacy/locales/plPL.js +0 -163
  415. package/legacy/locales/ptBR.js +0 -160
  416. package/legacy/locales/ptPT.js +0 -160
  417. package/legacy/locales/roRO.js +0 -160
  418. package/legacy/locales/ruRU.js +0 -181
  419. package/legacy/locales/skSK.js +0 -181
  420. package/legacy/locales/svSE.js +0 -160
  421. package/legacy/locales/trTR.js +0 -161
  422. package/legacy/locales/ukUA.js +0 -182
  423. package/legacy/locales/urPK.js +0 -160
  424. package/legacy/locales/viVN.js +0 -160
  425. package/legacy/locales/zhCN.js +0 -160
  426. package/legacy/locales/zhHK.js +0 -160
  427. package/legacy/locales/zhTW.js +0 -160
  428. package/legacy/material/components/MUISelectOption.js +0 -14
  429. package/legacy/material/icons/GridColumnUnsortedIcon.js +0 -16
  430. package/legacy/material/icons/index.js +0 -89
  431. package/legacy/material/index.js +0 -69
  432. package/legacy/models/api/gridApiCommon.js +0 -1
  433. package/legacy/models/api/gridApiCommunity.js +0 -1
  434. package/legacy/models/api/gridCallbackDetails.js +0 -1
  435. package/legacy/models/api/gridColumnApi.js +0 -1
  436. package/legacy/models/api/gridColumnGroupingApi.js +0 -1
  437. package/legacy/models/api/gridColumnMenuApi.js +0 -1
  438. package/legacy/models/api/gridColumnSpanning.js +0 -1
  439. package/legacy/models/api/gridCoreApi.js +0 -1
  440. package/legacy/models/api/gridCsvExportApi.js +0 -1
  441. package/legacy/models/api/gridDensityApi.js +0 -1
  442. package/legacy/models/api/gridEditingApi.js +0 -1
  443. package/legacy/models/api/gridFilterApi.js +0 -1
  444. package/legacy/models/api/gridFocusApi.js +0 -1
  445. package/legacy/models/api/gridHeaderFilteringApi.js +0 -1
  446. package/legacy/models/api/gridLocaleTextApi.js +0 -1
  447. package/legacy/models/api/gridLoggerApi.js +0 -1
  448. package/legacy/models/api/gridParamsApi.js +0 -1
  449. package/legacy/models/api/gridPreferencesPanelApi.js +0 -1
  450. package/legacy/models/api/gridPrintExportApi.js +0 -1
  451. package/legacy/models/api/gridRowApi.js +0 -1
  452. package/legacy/models/api/gridRowSelectionApi.js +0 -1
  453. package/legacy/models/api/gridRowsMetaApi.js +0 -1
  454. package/legacy/models/api/gridScrollApi.js +0 -1
  455. package/legacy/models/api/gridSortApi.js +0 -1
  456. package/legacy/models/api/gridStateApi.js +0 -1
  457. package/legacy/models/api/gridVirtualizationApi.js +0 -1
  458. package/legacy/models/api/index.js +0 -16
  459. package/legacy/models/colDef/gridColDef.js +0 -1
  460. package/legacy/models/colDef/gridColType.js +0 -1
  461. package/legacy/models/colDef/gridColumnTypesRecord.js +0 -1
  462. package/legacy/models/colDef/index.js +0 -6
  463. package/legacy/models/controlStateItem.js +0 -1
  464. package/legacy/models/cursorCoordinates.js +0 -1
  465. package/legacy/models/elementSize.js +0 -1
  466. package/legacy/models/events/gridEventListener.js +0 -1
  467. package/legacy/models/events/gridEventLookup.js +0 -1
  468. package/legacy/models/events/gridEventPublisher.js +0 -1
  469. package/legacy/models/events/index.js +0 -3
  470. package/legacy/models/gridApiCaches.js +0 -1
  471. package/legacy/models/gridCell.js +0 -1
  472. package/legacy/models/gridCellClass.js +0 -1
  473. package/legacy/models/gridColumnGrouping.js +0 -11
  474. package/legacy/models/gridColumnHeaderClass.js +0 -1
  475. package/legacy/models/gridColumnSpanning.js +0 -1
  476. package/legacy/models/gridDensity.js +0 -1
  477. package/legacy/models/gridEditRowModel.js +0 -16
  478. package/legacy/models/gridExport.js +0 -1
  479. package/legacy/models/gridFeatureMode.js +0 -1
  480. package/legacy/models/gridFilterItem.js +0 -11
  481. package/legacy/models/gridFilterModel.js +0 -1
  482. package/legacy/models/gridFilterOperator.js +0 -1
  483. package/legacy/models/gridHeaderFilteringModel.js +0 -1
  484. package/legacy/models/gridIconSlotsComponent.js +0 -1
  485. package/legacy/models/gridPaginationProps.js +0 -1
  486. package/legacy/models/gridRenderContextProps.js +0 -1
  487. package/legacy/models/gridRowSelectionModel.js +0 -1
  488. package/legacy/models/gridRows.js +0 -1
  489. package/legacy/models/gridSlotsComponent.js +0 -1
  490. package/legacy/models/gridSlotsComponentsProps.js +0 -1
  491. package/legacy/models/gridSortModel.js +0 -1
  492. package/legacy/models/gridStateCommunity.js +0 -1
  493. package/legacy/models/index.js +0 -29
  494. package/legacy/models/logger.js +0 -1
  495. package/legacy/models/muiEvent.js +0 -1
  496. package/legacy/models/params/gridCellParams.js +0 -1
  497. package/legacy/models/params/gridColumnGroupHeaderParams.js +0 -1
  498. package/legacy/models/params/gridColumnHeaderParams.js +0 -1
  499. package/legacy/models/params/gridColumnOrderChangeParams.js +0 -1
  500. package/legacy/models/params/gridColumnResizeParams.js +0 -1
  501. package/legacy/models/params/gridEditCellParams.js +0 -27
  502. package/legacy/models/params/gridHeaderSelectionCheckboxParams.js +0 -1
  503. package/legacy/models/params/gridMenuParams.js +0 -1
  504. package/legacy/models/params/gridPreferencePanelParams.js +0 -1
  505. package/legacy/models/params/gridRowParams.js +0 -44
  506. package/legacy/models/params/gridRowSelectionCheckboxParams.js +0 -1
  507. package/legacy/models/params/gridScrollParams.js +0 -1
  508. package/legacy/models/params/gridValueOptionsParams.js +0 -1
  509. package/legacy/models/params/index.js +0 -13
  510. package/legacy/models/props/DataGridProps.js +0 -1
  511. package/legacy/themeAugmentation/index.js +0 -4
  512. package/legacy/themeAugmentation/overrides.js +0 -1
  513. package/legacy/themeAugmentation/props.js +0 -1
  514. package/legacy/utils/EventManager.js +0 -91
  515. package/legacy/utils/Store.js +0 -34
  516. package/legacy/utils/cleanupTracking/CleanupTracking.js +0 -1
  517. package/legacy/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -29
  518. package/legacy/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -52
  519. package/legacy/utils/createControllablePromise.js +0 -11
  520. package/legacy/utils/createSelector.js +0 -120
  521. package/legacy/utils/doesSupportPreventScroll.js +0 -13
  522. package/legacy/utils/domUtils.js +0 -49
  523. package/legacy/utils/exportAs.js +0 -40
  524. package/legacy/utils/fastMemo.js +0 -5
  525. package/legacy/utils/fastObjectShallowCompare.js +0 -32
  526. package/legacy/utils/getGridLocalization.js +0 -15
  527. package/legacy/utils/getPublicApiRef.js +0 -5
  528. package/legacy/utils/index.js +0 -1
  529. package/legacy/utils/keyboardUtils.js +0 -60
  530. package/legacy/utils/utils.js +0 -189
  531. package/legacy/utils/warning.js +0 -25
@@ -1,528 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- var _excluded = ["item", "hasMultipleFilters", "deleteFilter", "applyFilterChanges", "showMultiFilterOperators", "disableMultiFilterOperator", "applyMultiFilterOperatorChanges", "focusElementRef", "logicOperators", "columnsSort", "filterColumns", "deleteIconProps", "logicOperatorInputProps", "operatorInputProps", "columnInputProps", "valueInputProps", "readOnly", "children"],
4
- _excluded2 = ["InputComponentProps"];
5
- import * as React from 'react';
6
- import PropTypes from 'prop-types';
7
- import { unstable_composeClasses as composeClasses, unstable_useId as useId, unstable_capitalize as capitalize } from '@mui/utils';
8
- import { styled } from '@mui/material/styles';
9
- import clsx from 'clsx';
10
- import { gridFilterableColumnDefinitionsSelector, gridColumnLookupSelector } from '../../../hooks/features/columns/gridColumnsSelector';
11
- import { gridFilterModelSelector } from '../../../hooks/features/filter/gridFilterSelector';
12
- import { useGridSelector } from '../../../hooks/utils/useGridSelector';
13
- import { GridLogicOperator } from '../../../models/gridFilterItem';
14
- import { useGridApiContext } from '../../../hooks/utils/useGridApiContext';
15
- import { useGridRootProps } from '../../../hooks/utils/useGridRootProps';
16
- import { getDataGridUtilityClass } from '../../../constants/gridClasses';
17
- import { getValueFromValueOptions, getValueOptions } from './filterPanelUtils';
18
- import { jsx as _jsx } from "react/jsx-runtime";
19
- import { createElement as _createElement } from "react";
20
- import { jsxs as _jsxs } from "react/jsx-runtime";
21
- var useUtilityClasses = function useUtilityClasses(ownerState) {
22
- var classes = ownerState.classes;
23
- var slots = {
24
- root: ['filterForm'],
25
- deleteIcon: ['filterFormDeleteIcon'],
26
- logicOperatorInput: ['filterFormLogicOperatorInput'],
27
- columnInput: ['filterFormColumnInput'],
28
- operatorInput: ['filterFormOperatorInput'],
29
- valueInput: ['filterFormValueInput']
30
- };
31
- return composeClasses(slots, getDataGridUtilityClass, classes);
32
- };
33
- var GridFilterFormRoot = styled('div', {
34
- name: 'MuiDataGrid',
35
- slot: 'FilterForm',
36
- overridesResolver: function overridesResolver(props, styles) {
37
- return styles.filterForm;
38
- }
39
- })(function (_ref) {
40
- var theme = _ref.theme;
41
- return {
42
- display: 'flex',
43
- padding: theme.spacing(1)
44
- };
45
- });
46
- var FilterFormDeleteIcon = styled('div', {
47
- name: 'MuiDataGrid',
48
- slot: 'FilterFormDeleteIcon',
49
- overridesResolver: function overridesResolver(_, styles) {
50
- return styles.filterFormDeleteIcon;
51
- }
52
- })(function (_ref2) {
53
- var theme = _ref2.theme;
54
- return {
55
- flexShrink: 0,
56
- justifyContent: 'flex-end',
57
- marginRight: theme.spacing(0.5),
58
- marginBottom: theme.spacing(0.2)
59
- };
60
- });
61
- var FilterFormLogicOperatorInput = styled('div', {
62
- name: 'MuiDataGrid',
63
- slot: 'FilterFormLogicOperatorInput',
64
- overridesResolver: function overridesResolver(_, styles) {
65
- return styles.filterFormLogicOperatorInput;
66
- }
67
- })({
68
- minWidth: 55,
69
- marginRight: 5,
70
- justifyContent: 'end'
71
- });
72
- var FilterFormColumnInput = styled('div', {
73
- name: 'MuiDataGrid',
74
- slot: 'FilterFormColumnInput',
75
- overridesResolver: function overridesResolver(_, styles) {
76
- return styles.filterFormColumnInput;
77
- }
78
- })({
79
- width: 150
80
- });
81
- var FilterFormOperatorInput = styled('div', {
82
- name: 'MuiDataGrid',
83
- slot: 'FilterFormOperatorInput',
84
- overridesResolver: function overridesResolver(_, styles) {
85
- return styles.filterFormOperatorInput;
86
- }
87
- })({
88
- width: 120
89
- });
90
- var FilterFormValueInput = styled('div', {
91
- name: 'MuiDataGrid',
92
- slot: 'FilterFormValueInput',
93
- overridesResolver: function overridesResolver(_, styles) {
94
- return styles.filterFormValueInput;
95
- }
96
- })({
97
- width: 190
98
- });
99
- var getLogicOperatorLocaleKey = function getLogicOperatorLocaleKey(logicOperator) {
100
- switch (logicOperator) {
101
- case GridLogicOperator.And:
102
- return 'filterPanelOperatorAnd';
103
- case GridLogicOperator.Or:
104
- return 'filterPanelOperatorOr';
105
- default:
106
- throw new Error('MUI X: Invalid `logicOperator` property in the `GridFilterPanel`.');
107
- }
108
- };
109
- var getColumnLabel = function getColumnLabel(col) {
110
- return col.headerName || col.field;
111
- };
112
- var collator = new Intl.Collator();
113
- var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props, ref) {
114
- var _filterModel$logicOpe, _rootProps$slotProps, _rootProps$slotProps2, _baseSelectProps$nati, _rootProps$slotProps3, _rootProps$slotProps4, _rootProps$slotProps5, _rootProps$slotProps6, _rootProps$slotProps7, _rootProps$slotProps8, _currentColumn$filter2;
115
- var item = props.item,
116
- hasMultipleFilters = props.hasMultipleFilters,
117
- deleteFilter = props.deleteFilter,
118
- applyFilterChanges = props.applyFilterChanges,
119
- showMultiFilterOperators = props.showMultiFilterOperators,
120
- disableMultiFilterOperator = props.disableMultiFilterOperator,
121
- applyMultiFilterOperatorChanges = props.applyMultiFilterOperatorChanges,
122
- focusElementRef = props.focusElementRef,
123
- _props$logicOperators = props.logicOperators,
124
- logicOperators = _props$logicOperators === void 0 ? [GridLogicOperator.And, GridLogicOperator.Or] : _props$logicOperators,
125
- columnsSort = props.columnsSort,
126
- filterColumns = props.filterColumns,
127
- _props$deleteIconProp = props.deleteIconProps,
128
- deleteIconProps = _props$deleteIconProp === void 0 ? {} : _props$deleteIconProp,
129
- _props$logicOperatorI = props.logicOperatorInputProps,
130
- logicOperatorInputProps = _props$logicOperatorI === void 0 ? {} : _props$logicOperatorI,
131
- _props$operatorInputP = props.operatorInputProps,
132
- operatorInputProps = _props$operatorInputP === void 0 ? {} : _props$operatorInputP,
133
- _props$columnInputPro = props.columnInputProps,
134
- columnInputProps = _props$columnInputPro === void 0 ? {} : _props$columnInputPro,
135
- _props$valueInputProp = props.valueInputProps,
136
- valueInputProps = _props$valueInputProp === void 0 ? {} : _props$valueInputProp,
137
- readOnly = props.readOnly,
138
- children = props.children,
139
- other = _objectWithoutProperties(props, _excluded);
140
- var apiRef = useGridApiContext();
141
- var columnLookup = useGridSelector(apiRef, gridColumnLookupSelector);
142
- var filterableColumns = useGridSelector(apiRef, gridFilterableColumnDefinitionsSelector);
143
- var filterModel = useGridSelector(apiRef, gridFilterModelSelector);
144
- var columnSelectId = useId();
145
- var columnSelectLabelId = useId();
146
- var operatorSelectId = useId();
147
- var operatorSelectLabelId = useId();
148
- var rootProps = useGridRootProps();
149
- var classes = useUtilityClasses(rootProps);
150
- var valueRef = React.useRef(null);
151
- var filterSelectorRef = React.useRef(null);
152
- var multiFilterOperator = (_filterModel$logicOpe = filterModel.logicOperator) != null ? _filterModel$logicOpe : GridLogicOperator.And;
153
- var hasLogicOperatorColumn = hasMultipleFilters && logicOperators.length > 0;
154
- var baseFormControlProps = ((_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseFormControl) || {};
155
- var baseSelectProps = ((_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseSelect) || {};
156
- var isBaseSelectNative = (_baseSelectProps$nati = baseSelectProps.native) != null ? _baseSelectProps$nati : false;
157
- var baseInputLabelProps = ((_rootProps$slotProps3 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps3.baseInputLabel) || {};
158
- var baseSelectOptionProps = ((_rootProps$slotProps4 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps4.baseSelectOption) || {};
159
- var InputComponentProps = valueInputProps.InputComponentProps,
160
- valueInputPropsOther = _objectWithoutProperties(valueInputProps, _excluded2);
161
- var _React$useMemo = React.useMemo(function () {
162
- var itemField = item.field;
163
-
164
- // Yields a valid value if the current filter belongs to a column that is not filterable
165
- var selectedNonFilterableColumn = columnLookup[item.field].filterable === false ? columnLookup[item.field] : null;
166
- if (selectedNonFilterableColumn) {
167
- return {
168
- filteredColumns: [selectedNonFilterableColumn],
169
- selectedField: itemField
170
- };
171
- }
172
- if (filterColumns === undefined || typeof filterColumns !== 'function') {
173
- return {
174
- filteredColumns: filterableColumns,
175
- selectedField: itemField
176
- };
177
- }
178
- var filteredFields = filterColumns({
179
- field: item.field,
180
- columns: filterableColumns,
181
- currentFilters: (filterModel == null ? void 0 : filterModel.items) || []
182
- });
183
- return {
184
- filteredColumns: filterableColumns.filter(function (column) {
185
- var isFieldIncluded = filteredFields.includes(column.field);
186
- if (column.field === item.field && !isFieldIncluded) {
187
- itemField = undefined;
188
- }
189
- return isFieldIncluded;
190
- }),
191
- selectedField: itemField
192
- };
193
- }, [filterColumns, filterModel == null ? void 0 : filterModel.items, filterableColumns, item.field, columnLookup]),
194
- filteredColumns = _React$useMemo.filteredColumns,
195
- selectedField = _React$useMemo.selectedField;
196
- var sortedFilteredColumns = React.useMemo(function () {
197
- switch (columnsSort) {
198
- case 'asc':
199
- return filteredColumns.sort(function (a, b) {
200
- return collator.compare(getColumnLabel(a), getColumnLabel(b));
201
- });
202
- case 'desc':
203
- return filteredColumns.sort(function (a, b) {
204
- return -collator.compare(getColumnLabel(a), getColumnLabel(b));
205
- });
206
- default:
207
- return filteredColumns;
208
- }
209
- }, [filteredColumns, columnsSort]);
210
- var currentColumn = item.field ? apiRef.current.getColumn(item.field) : null;
211
- var currentOperator = React.useMemo(function () {
212
- var _currentColumn$filter;
213
- if (!item.operator || !currentColumn) {
214
- return null;
215
- }
216
- return (_currentColumn$filter = currentColumn.filterOperators) == null ? void 0 : _currentColumn$filter.find(function (operator) {
217
- return operator.value === item.operator;
218
- });
219
- }, [item, currentColumn]);
220
- var changeColumn = React.useCallback(function (event) {
221
- var field = event.target.value;
222
- var column = apiRef.current.getColumn(field);
223
- if (column.field === currentColumn.field) {
224
- // column did not change
225
- return;
226
- }
227
-
228
- // try to keep the same operator when column change
229
- var newOperator = column.filterOperators.find(function (operator) {
230
- return operator.value === item.operator;
231
- }) || column.filterOperators[0];
232
-
233
- // Erase filter value if the input component or filtered column type is modified
234
- var eraseFilterValue = !newOperator.InputComponent || newOperator.InputComponent !== (currentOperator == null ? void 0 : currentOperator.InputComponent) || column.type !== currentColumn.type;
235
- var filterValue = eraseFilterValue ? undefined : item.value;
236
-
237
- // Check filter value against the new valueOptions
238
- if (column.type === 'singleSelect' && filterValue !== undefined) {
239
- var colDef = column;
240
- var valueOptions = getValueOptions(colDef);
241
- if (Array.isArray(filterValue)) {
242
- filterValue = filterValue.filter(function (val) {
243
- return (
244
- // Only keep values that are in the new value options
245
- getValueFromValueOptions(val, valueOptions, colDef == null ? void 0 : colDef.getOptionValue) !== undefined
246
- );
247
- });
248
- } else if (getValueFromValueOptions(item.value, valueOptions, colDef == null ? void 0 : colDef.getOptionValue) === undefined) {
249
- // Reset the filter value if it is not in the new value options
250
- filterValue = undefined;
251
- }
252
- }
253
- applyFilterChanges(_extends({}, item, {
254
- field: field,
255
- operator: newOperator.value,
256
- value: filterValue
257
- }));
258
- }, [apiRef, applyFilterChanges, item, currentColumn, currentOperator]);
259
- var changeOperator = React.useCallback(function (event) {
260
- var operator = event.target.value;
261
- var newOperator = currentColumn == null ? void 0 : currentColumn.filterOperators.find(function (op) {
262
- return op.value === operator;
263
- });
264
- var eraseItemValue = !(newOperator != null && newOperator.InputComponent) || (newOperator == null ? void 0 : newOperator.InputComponent) !== (currentOperator == null ? void 0 : currentOperator.InputComponent);
265
- applyFilterChanges(_extends({}, item, {
266
- operator: operator,
267
- value: eraseItemValue ? undefined : item.value
268
- }));
269
- }, [applyFilterChanges, item, currentColumn, currentOperator]);
270
- var changeLogicOperator = React.useCallback(function (event) {
271
- var logicOperator = event.target.value === GridLogicOperator.And.toString() ? GridLogicOperator.And : GridLogicOperator.Or;
272
- applyMultiFilterOperatorChanges(logicOperator);
273
- }, [applyMultiFilterOperatorChanges]);
274
- var handleDeleteFilter = function handleDeleteFilter() {
275
- if (rootProps.disableMultipleColumnsFiltering) {
276
- if (item.value === undefined) {
277
- deleteFilter(item);
278
- } else {
279
- // TODO v6: simplify the behavior by always remove the filter form
280
- applyFilterChanges(_extends({}, item, {
281
- value: undefined
282
- }));
283
- }
284
- } else {
285
- deleteFilter(item);
286
- }
287
- };
288
- React.useImperativeHandle(focusElementRef, function () {
289
- return {
290
- focus: function focus() {
291
- if (currentOperator != null && currentOperator.InputComponent) {
292
- var _valueRef$current;
293
- valueRef == null || (_valueRef$current = valueRef.current) == null || _valueRef$current.focus();
294
- } else {
295
- filterSelectorRef.current.focus();
296
- }
297
- }
298
- };
299
- }, [currentOperator]);
300
- return /*#__PURE__*/_jsxs(GridFilterFormRoot, _extends({
301
- ref: ref,
302
- className: classes.root,
303
- "data-id": item.id,
304
- ownerState: rootProps
305
- }, other, {
306
- children: [/*#__PURE__*/_jsx(FilterFormDeleteIcon, _extends({
307
- variant: "standard",
308
- as: rootProps.slots.baseFormControl
309
- }, baseFormControlProps, deleteIconProps, {
310
- className: clsx(classes.deleteIcon, baseFormControlProps.className, deleteIconProps.className),
311
- ownerState: rootProps,
312
- children: /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({
313
- "aria-label": apiRef.current.getLocaleText('filterPanelDeleteIconLabel'),
314
- title: apiRef.current.getLocaleText('filterPanelDeleteIconLabel'),
315
- onClick: handleDeleteFilter,
316
- size: "small",
317
- disabled: readOnly
318
- }, (_rootProps$slotProps5 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps5.baseIconButton, {
319
- children: /*#__PURE__*/_jsx(rootProps.slots.filterPanelDeleteIcon, {
320
- fontSize: "small"
321
- })
322
- }))
323
- })), /*#__PURE__*/_jsx(FilterFormLogicOperatorInput, _extends({
324
- variant: "standard",
325
- as: rootProps.slots.baseFormControl
326
- }, baseFormControlProps, logicOperatorInputProps, {
327
- sx: _extends({
328
- display: hasLogicOperatorColumn ? 'flex' : 'none',
329
- visibility: showMultiFilterOperators ? 'visible' : 'hidden'
330
- }, baseFormControlProps.sx || {}, logicOperatorInputProps.sx || {}),
331
- className: clsx(classes.logicOperatorInput, baseFormControlProps.className, logicOperatorInputProps.className),
332
- ownerState: rootProps,
333
- children: /*#__PURE__*/_jsx(rootProps.slots.baseSelect, _extends({
334
- inputProps: {
335
- 'aria-label': apiRef.current.getLocaleText('filterPanelLogicOperator')
336
- },
337
- value: multiFilterOperator != null ? multiFilterOperator : '',
338
- onChange: changeLogicOperator,
339
- disabled: !!disableMultiFilterOperator || logicOperators.length === 1,
340
- native: isBaseSelectNative
341
- }, (_rootProps$slotProps6 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps6.baseSelect, {
342
- children: logicOperators.map(function (logicOperator) {
343
- return /*#__PURE__*/_createElement(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
344
- native: isBaseSelectNative,
345
- key: logicOperator.toString(),
346
- value: logicOperator.toString()
347
- }), apiRef.current.getLocaleText(getLogicOperatorLocaleKey(logicOperator)));
348
- })
349
- }))
350
- })), /*#__PURE__*/_jsxs(FilterFormColumnInput, _extends({
351
- variant: "standard",
352
- as: rootProps.slots.baseFormControl
353
- }, baseFormControlProps, columnInputProps, {
354
- className: clsx(classes.columnInput, baseFormControlProps.className, columnInputProps.className),
355
- ownerState: rootProps,
356
- children: [/*#__PURE__*/_jsx(rootProps.slots.baseInputLabel, _extends({}, baseInputLabelProps, {
357
- htmlFor: columnSelectId,
358
- id: columnSelectLabelId,
359
- children: apiRef.current.getLocaleText('filterPanelColumns')
360
- })), /*#__PURE__*/_jsx(rootProps.slots.baseSelect, _extends({
361
- labelId: columnSelectLabelId,
362
- id: columnSelectId,
363
- label: apiRef.current.getLocaleText('filterPanelColumns'),
364
- value: selectedField != null ? selectedField : '',
365
- onChange: changeColumn,
366
- native: isBaseSelectNative,
367
- disabled: readOnly
368
- }, (_rootProps$slotProps7 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps7.baseSelect, {
369
- children: sortedFilteredColumns.map(function (col) {
370
- return /*#__PURE__*/_createElement(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
371
- native: isBaseSelectNative,
372
- key: col.field,
373
- value: col.field
374
- }), getColumnLabel(col));
375
- })
376
- }))]
377
- })), /*#__PURE__*/_jsxs(FilterFormOperatorInput, _extends({
378
- variant: "standard",
379
- as: rootProps.slots.baseFormControl
380
- }, baseFormControlProps, operatorInputProps, {
381
- className: clsx(classes.operatorInput, baseFormControlProps.className, operatorInputProps.className),
382
- ownerState: rootProps,
383
- children: [/*#__PURE__*/_jsx(rootProps.slots.baseInputLabel, _extends({}, baseInputLabelProps, {
384
- htmlFor: operatorSelectId,
385
- id: operatorSelectLabelId,
386
- children: apiRef.current.getLocaleText('filterPanelOperator')
387
- })), /*#__PURE__*/_jsx(rootProps.slots.baseSelect, _extends({
388
- labelId: operatorSelectLabelId,
389
- label: apiRef.current.getLocaleText('filterPanelOperator'),
390
- id: operatorSelectId,
391
- value: item.operator,
392
- onChange: changeOperator,
393
- native: isBaseSelectNative,
394
- inputRef: filterSelectorRef,
395
- disabled: readOnly
396
- }, (_rootProps$slotProps8 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps8.baseSelect, {
397
- children: currentColumn == null || (_currentColumn$filter2 = currentColumn.filterOperators) == null ? void 0 : _currentColumn$filter2.map(function (operator) {
398
- return /*#__PURE__*/_createElement(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
399
- native: isBaseSelectNative,
400
- key: operator.value,
401
- value: operator.value
402
- }), operator.label || apiRef.current.getLocaleText("filterOperator".concat(capitalize(operator.value))));
403
- })
404
- }))]
405
- })), /*#__PURE__*/_jsx(FilterFormValueInput, _extends({
406
- variant: "standard",
407
- as: rootProps.slots.baseFormControl
408
- }, baseFormControlProps, valueInputPropsOther, {
409
- className: clsx(classes.valueInput, baseFormControlProps.className, valueInputPropsOther.className),
410
- ownerState: rootProps,
411
- children: currentOperator != null && currentOperator.InputComponent ? /*#__PURE__*/_jsx(currentOperator.InputComponent, _extends({
412
- apiRef: apiRef,
413
- item: item,
414
- applyValue: applyFilterChanges,
415
- focusElementRef: valueRef,
416
- disabled: readOnly
417
- }, currentOperator.InputComponentProps, InputComponentProps), item.field) : null
418
- }))]
419
- }));
420
- });
421
- process.env.NODE_ENV !== "production" ? GridFilterForm.propTypes = {
422
- // ----------------------------- Warning --------------------------------
423
- // | These PropTypes are generated from the TypeScript type definitions |
424
- // | To update them edit the TypeScript types and run "yarn proptypes" |
425
- // ----------------------------------------------------------------------
426
- /**
427
- * Callback called when the operator, column field or value is changed.
428
- * @param {GridFilterItem} item The updated [[GridFilterItem]].
429
- */
430
- applyFilterChanges: PropTypes.func.isRequired,
431
- /**
432
- * Callback called when the logic operator is changed.
433
- * @param {GridLogicOperator} operator The new logic operator.
434
- */
435
- applyMultiFilterOperatorChanges: PropTypes.func.isRequired,
436
- /**
437
- * @ignore - do not document.
438
- */
439
- children: PropTypes.node,
440
- /**
441
- * Props passed to the column input component.
442
- * @default {}
443
- */
444
- columnInputProps: PropTypes.any,
445
- /**
446
- * Changes how the options in the columns selector should be ordered.
447
- * If not specified, the order is derived from the `columns` prop.
448
- */
449
- columnsSort: PropTypes.oneOf(['asc', 'desc']),
450
- /**
451
- * Callback called when the delete button is clicked.
452
- * @param {GridFilterItem} item The deleted [[GridFilterItem]].
453
- */
454
- deleteFilter: PropTypes.func.isRequired,
455
- /**
456
- * Props passed to the delete icon.
457
- * @default {}
458
- */
459
- deleteIconProps: PropTypes.any,
460
- /**
461
- * If `true`, disables the logic operator field but still renders it.
462
- */
463
- disableMultiFilterOperator: PropTypes.bool,
464
- /**
465
- * Allows to filter the columns displayed in the filter form.
466
- * @param {FilterColumnsArgs} args The columns of the grid and name of field.
467
- * @returns {GridColDef['field'][]} The filtered fields array.
468
- */
469
- filterColumns: PropTypes.func,
470
- /**
471
- * A ref allowing to set imperative focus.
472
- * It can be passed to the el
473
- */
474
- focusElementRef: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.func, PropTypes.object]),
475
- /**
476
- * If `true`, the logic operator field is rendered.
477
- * The field will be invisible if `showMultiFilterOperators` is also `true`.
478
- */
479
- hasMultipleFilters: PropTypes.bool.isRequired,
480
- /**
481
- * The [[GridFilterItem]] representing this form.
482
- */
483
- item: PropTypes.shape({
484
- field: PropTypes.string.isRequired,
485
- id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
486
- operator: PropTypes.string.isRequired,
487
- value: PropTypes.any
488
- }).isRequired,
489
- /**
490
- * Props passed to the logic operator input component.
491
- * @default {}
492
- */
493
- logicOperatorInputProps: PropTypes.any,
494
- /**
495
- * Sets the available logic operators.
496
- * @default [GridLogicOperator.And, GridLogicOperator.Or]
497
- */
498
- logicOperators: PropTypes.arrayOf(PropTypes.oneOf(['and', 'or']).isRequired),
499
- /**
500
- * Props passed to the operator input component.
501
- * @default {}
502
- */
503
- operatorInputProps: PropTypes.any,
504
- /**
505
- * `true` if the filter is disabled/read only.
506
- * i.e. `colDef.fiterable = false` but passed in `filterModel`
507
- * @default false
508
- */
509
- readOnly: PropTypes.bool,
510
- /**
511
- * If `true`, the logic operator field is visible.
512
- */
513
- showMultiFilterOperators: PropTypes.bool,
514
- /**
515
- * Props passed to the value input component.
516
- * @default {}
517
- */
518
- valueInputProps: PropTypes.any
519
- } : void 0;
520
-
521
- /**
522
- * Demos:
523
- * - [Filtering - overview](https://mui.com/x/react-data-grid/filtering/)
524
- *
525
- * API:
526
- * - [GridFilterForm API](https://mui.com/x/api/data-grid/grid-filter-form/)
527
- */
528
- export { GridFilterForm };
@@ -1,118 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
- var _excluded = ["item", "applyValue", "apiRef", "focusElementRef", "isFilterActive", "clearButton", "tabIndex", "label", "variant", "InputLabelProps"];
6
- import * as React from 'react';
7
- import PropTypes from 'prop-types';
8
- import { refType, unstable_useId as useId } from '@mui/utils';
9
- import { styled } from '@mui/material/styles';
10
- import { useGridRootProps } from '../../../hooks/utils/useGridRootProps';
11
- import { jsx as _jsx } from "react/jsx-runtime";
12
- import { jsxs as _jsxs } from "react/jsx-runtime";
13
- var BooleanOperatorContainer = styled('div')(_defineProperty({
14
- display: 'flex',
15
- alignItems: 'center',
16
- width: '100%'
17
- }, "& button", {
18
- margin: 'auto 0px 5px 5px'
19
- }));
20
- function GridFilterInputBoolean(props) {
21
- var _rootProps$slotProps, _baseSelectProps$nati, _rootProps$slotProps2, _rootProps$slotProps3;
22
- var item = props.item,
23
- applyValue = props.applyValue,
24
- apiRef = props.apiRef,
25
- focusElementRef = props.focusElementRef,
26
- isFilterActive = props.isFilterActive,
27
- clearButton = props.clearButton,
28
- tabIndex = props.tabIndex,
29
- labelProp = props.label,
30
- _props$variant = props.variant,
31
- variant = _props$variant === void 0 ? 'standard' : _props$variant,
32
- InputLabelProps = props.InputLabelProps,
33
- others = _objectWithoutProperties(props, _excluded);
34
- var _React$useState = React.useState(item.value || ''),
35
- _React$useState2 = _slicedToArray(_React$useState, 2),
36
- filterValueState = _React$useState2[0],
37
- setFilterValueState = _React$useState2[1];
38
- var rootProps = useGridRootProps();
39
- var labelId = useId();
40
- var selectId = useId();
41
- var baseSelectProps = ((_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseSelect) || {};
42
- var isSelectNative = (_baseSelectProps$nati = baseSelectProps.native) != null ? _baseSelectProps$nati : false;
43
- var baseSelectOptionProps = ((_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseSelectOption) || {};
44
- var onFilterChange = React.useCallback(function (event) {
45
- var value = event.target.value;
46
- setFilterValueState(value);
47
- applyValue(_extends({}, item, {
48
- value: value
49
- }));
50
- }, [applyValue, item]);
51
- React.useEffect(function () {
52
- setFilterValueState(item.value || '');
53
- }, [item.value]);
54
- var label = labelProp != null ? labelProp : apiRef.current.getLocaleText('filterPanelInputLabel');
55
- return /*#__PURE__*/_jsxs(BooleanOperatorContainer, {
56
- children: [/*#__PURE__*/_jsxs(rootProps.slots.baseFormControl, {
57
- fullWidth: true,
58
- children: [/*#__PURE__*/_jsx(rootProps.slots.baseInputLabel, _extends({}, (_rootProps$slotProps3 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps3.baseInputLabel, {
59
- id: labelId,
60
- shrink: true,
61
- variant: variant,
62
- children: label
63
- })), /*#__PURE__*/_jsxs(rootProps.slots.baseSelect, _extends({
64
- labelId: labelId,
65
- id: selectId,
66
- label: label,
67
- value: filterValueState,
68
- onChange: onFilterChange,
69
- variant: variant,
70
- notched: variant === 'outlined' ? true : undefined,
71
- native: isSelectNative,
72
- displayEmpty: true,
73
- inputProps: {
74
- ref: focusElementRef,
75
- tabIndex: tabIndex
76
- }
77
- }, others /* FIXME: typing error */, baseSelectProps, {
78
- children: [/*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
79
- native: isSelectNative,
80
- value: "",
81
- children: apiRef.current.getLocaleText('filterValueAny')
82
- })), /*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
83
- native: isSelectNative,
84
- value: "true",
85
- children: apiRef.current.getLocaleText('filterValueTrue')
86
- })), /*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
87
- native: isSelectNative,
88
- value: "false",
89
- children: apiRef.current.getLocaleText('filterValueFalse')
90
- }))]
91
- }))]
92
- }), clearButton]
93
- });
94
- }
95
- process.env.NODE_ENV !== "production" ? GridFilterInputBoolean.propTypes = {
96
- // ----------------------------- Warning --------------------------------
97
- // | These PropTypes are generated from the TypeScript type definitions |
98
- // | To update them edit the TypeScript types and run "yarn proptypes" |
99
- // ----------------------------------------------------------------------
100
- apiRef: PropTypes.shape({
101
- current: PropTypes.object.isRequired
102
- }).isRequired,
103
- applyValue: PropTypes.func.isRequired,
104
- clearButton: PropTypes.node,
105
- focusElementRef: refType,
106
- /**
107
- * It is `true` if the filter either has a value or an operator with no value
108
- * required is selected (e.g. `isEmpty`)
109
- */
110
- isFilterActive: PropTypes.bool,
111
- item: PropTypes.shape({
112
- field: PropTypes.string.isRequired,
113
- id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
114
- operator: PropTypes.string.isRequired,
115
- value: PropTypes.any
116
- }).isRequired
117
- } : void 0;
118
- export { GridFilterInputBoolean };