@mui/x-data-grid 8.0.0-alpha.12 → 8.0.0-alpha.14

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 (504) hide show
  1. package/CHANGELOG.md +430 -0
  2. package/DataGrid/DataGrid.js +31 -22
  3. package/DataGrid/useDataGridProps.js +1 -1
  4. package/colDef/gridActionsColDef.js +1 -1
  5. package/colDef/gridBooleanColDef.js +1 -1
  6. package/colDef/gridCheckboxSelectionColDef.js +2 -4
  7. package/components/GridFooter.js +1 -1
  8. package/components/GridHeader.js +1 -1
  9. package/components/GridPagination.js +5 -6
  10. package/components/GridRowCount.js +4 -5
  11. package/components/GridScrollArea.js +4 -3
  12. package/components/GridSelectedRowCount.js +5 -6
  13. package/components/GridShadowScrollArea.d.ts +8 -0
  14. package/components/GridShadowScrollArea.js +82 -0
  15. package/components/cell/GridEditInputCell.js +2 -3
  16. package/components/columnSelection/GridHeaderCheckbox.js +51 -17
  17. package/components/columnsManagement/GridColumnsManagement.js +60 -61
  18. package/components/columnsPanel/ColumnsPanelTrigger.d.ts +33 -0
  19. package/components/columnsPanel/ColumnsPanelTrigger.js +209 -0
  20. package/components/columnsPanel/index.d.ts +1 -0
  21. package/components/columnsPanel/index.js +16 -0
  22. package/components/containers/GridOverlay.js +6 -8
  23. package/components/containers/GridRoot.js +4 -2
  24. package/components/containers/GridRootStyles.d.ts +1 -2
  25. package/components/containers/GridRootStyles.js +77 -100
  26. package/components/containers/GridToolbarContainer.js +5 -6
  27. package/components/export/ExportCsv.d.ts +30 -0
  28. package/components/export/ExportCsv.js +196 -0
  29. package/components/export/ExportPrint.d.ts +30 -0
  30. package/components/export/ExportPrint.js +196 -0
  31. package/components/export/index.d.ts +2 -0
  32. package/components/export/index.js +27 -0
  33. package/components/filterPanel/FilterPanelTrigger.d.ts +37 -0
  34. package/components/filterPanel/FilterPanelTrigger.js +212 -0
  35. package/components/filterPanel/index.d.ts +1 -0
  36. package/components/filterPanel/index.js +16 -0
  37. package/components/index.d.ts +6 -1
  38. package/components/index.js +60 -0
  39. package/components/menu/GridMenu.js +7 -6
  40. package/components/menu/columnMenu/GridColumnHeaderMenu.js +4 -3
  41. package/components/panel/GridPanel.js +18 -20
  42. package/components/panel/GridPanelContent.js +6 -8
  43. package/components/panel/GridPanelFooter.js +5 -6
  44. package/components/panel/GridPanelHeader.js +4 -5
  45. package/components/panel/filterPanel/GridFilterForm.js +13 -20
  46. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.d.ts +2 -2
  47. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +10 -39
  48. package/components/panel/filterPanel/GridFilterInputMultipleValue.d.ts +2 -2
  49. package/components/panel/filterPanel/GridFilterInputMultipleValue.js +20 -45
  50. package/components/panel/filterPanel/GridFilterInputValue.js +3 -6
  51. package/components/quickFilter/QuickFilter.d.ts +41 -0
  52. package/components/quickFilter/QuickFilter.js +110 -0
  53. package/components/quickFilter/QuickFilterClear.d.ts +28 -0
  54. package/components/quickFilter/QuickFilterClear.js +161 -0
  55. package/components/quickFilter/QuickFilterContext.d.ts +13 -0
  56. package/components/quickFilter/QuickFilterContext.js +17 -0
  57. package/components/quickFilter/QuickFilterControl.d.ts +28 -0
  58. package/components/quickFilter/QuickFilterControl.js +104 -0
  59. package/components/quickFilter/index.d.ts +3 -0
  60. package/components/quickFilter/index.js +38 -0
  61. package/components/toolbar/GridToolbar.d.ts +1 -1
  62. package/components/toolbar/GridToolbar.js +2 -2
  63. package/components/toolbar/GridToolbarFilterButton.js +5 -6
  64. package/components/toolbar/GridToolbarQuickFilter.js +57 -97
  65. package/components/toolbarV8/GridToolbar.d.ts +11 -0
  66. package/components/toolbarV8/GridToolbar.js +142 -0
  67. package/components/toolbarV8/Toolbar.d.ts +32 -0
  68. package/components/toolbarV8/Toolbar.js +132 -0
  69. package/components/toolbarV8/ToolbarButton.d.ts +23 -0
  70. package/components/toolbarV8/ToolbarButton.js +179 -0
  71. package/components/toolbarV8/ToolbarContext.d.ts +9 -0
  72. package/components/toolbarV8/ToolbarContext.js +17 -0
  73. package/components/toolbarV8/index.d.ts +2 -0
  74. package/components/toolbarV8/index.js +27 -0
  75. package/components/virtualization/GridVirtualScrollbar.js +15 -6
  76. package/components/virtualization/GridVirtualScrollerFiller.js +2 -1
  77. package/constants/cssVariables.d.ts +294 -0
  78. package/constants/cssVariables.js +168 -0
  79. package/constants/dataGridPropsDefaultValues.js +1 -0
  80. package/constants/defaultGridSlotsComponents.js +2 -1
  81. package/constants/gridClasses.d.ts +17 -0
  82. package/constants/gridClasses.js +1 -1
  83. package/context/GridContextProvider.js +4 -1
  84. package/esm/DataGrid/DataGrid.js +31 -22
  85. package/esm/DataGrid/useDataGridProps.js +1 -1
  86. package/esm/colDef/gridActionsColDef.js +1 -1
  87. package/esm/colDef/gridBooleanColDef.js +1 -1
  88. package/esm/colDef/gridCheckboxSelectionColDef.js +2 -4
  89. package/esm/components/GridFooter.js +2 -2
  90. package/esm/components/GridHeader.js +1 -1
  91. package/esm/components/GridPagination.js +5 -6
  92. package/esm/components/GridRowCount.js +4 -5
  93. package/esm/components/GridScrollArea.js +2 -1
  94. package/esm/components/GridSelectedRowCount.js +5 -6
  95. package/esm/components/GridShadowScrollArea.d.ts +8 -0
  96. package/esm/components/GridShadowScrollArea.js +74 -0
  97. package/esm/components/cell/GridEditInputCell.js +2 -3
  98. package/esm/components/columnSelection/GridHeaderCheckbox.js +51 -17
  99. package/esm/components/columnsManagement/GridColumnsManagement.js +61 -62
  100. package/esm/components/columnsPanel/ColumnsPanelTrigger.d.ts +33 -0
  101. package/esm/components/columnsPanel/ColumnsPanelTrigger.js +202 -0
  102. package/esm/components/columnsPanel/index.d.ts +1 -0
  103. package/esm/components/columnsPanel/index.js +1 -0
  104. package/esm/components/containers/GridOverlay.js +6 -8
  105. package/esm/components/containers/GridRoot.js +4 -2
  106. package/esm/components/containers/GridRootStyles.d.ts +1 -2
  107. package/esm/components/containers/GridRootStyles.js +78 -101
  108. package/esm/components/containers/GridToolbarContainer.js +5 -6
  109. package/esm/components/export/ExportCsv.d.ts +30 -0
  110. package/esm/components/export/ExportCsv.js +189 -0
  111. package/esm/components/export/ExportPrint.d.ts +30 -0
  112. package/esm/components/export/ExportPrint.js +189 -0
  113. package/esm/components/export/index.d.ts +2 -0
  114. package/esm/components/export/index.js +2 -0
  115. package/esm/components/filterPanel/FilterPanelTrigger.d.ts +37 -0
  116. package/esm/components/filterPanel/FilterPanelTrigger.js +205 -0
  117. package/esm/components/filterPanel/index.d.ts +1 -0
  118. package/esm/components/filterPanel/index.js +1 -0
  119. package/esm/components/index.d.ts +6 -1
  120. package/esm/components/index.js +6 -1
  121. package/esm/components/menu/GridMenu.js +7 -6
  122. package/esm/components/menu/columnMenu/GridColumnHeaderMenu.js +2 -1
  123. package/esm/components/panel/GridPanel.js +18 -20
  124. package/esm/components/panel/GridPanelContent.js +6 -8
  125. package/esm/components/panel/GridPanelFooter.js +5 -6
  126. package/esm/components/panel/GridPanelHeader.js +4 -5
  127. package/esm/components/panel/filterPanel/GridFilterForm.js +13 -20
  128. package/esm/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.d.ts +2 -2
  129. package/esm/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +10 -39
  130. package/esm/components/panel/filterPanel/GridFilterInputMultipleValue.d.ts +2 -2
  131. package/esm/components/panel/filterPanel/GridFilterInputMultipleValue.js +19 -44
  132. package/esm/components/panel/filterPanel/GridFilterInputValue.js +3 -6
  133. package/esm/components/quickFilter/QuickFilter.d.ts +41 -0
  134. package/esm/components/quickFilter/QuickFilter.js +103 -0
  135. package/esm/components/quickFilter/QuickFilterClear.d.ts +28 -0
  136. package/esm/components/quickFilter/QuickFilterClear.js +154 -0
  137. package/esm/components/quickFilter/QuickFilterContext.d.ts +13 -0
  138. package/esm/components/quickFilter/QuickFilterContext.js +9 -0
  139. package/esm/components/quickFilter/QuickFilterControl.d.ts +28 -0
  140. package/esm/components/quickFilter/QuickFilterControl.js +97 -0
  141. package/esm/components/quickFilter/index.d.ts +3 -0
  142. package/esm/components/quickFilter/index.js +3 -0
  143. package/esm/components/toolbar/GridToolbar.d.ts +1 -1
  144. package/esm/components/toolbar/GridToolbar.js +2 -2
  145. package/esm/components/toolbar/GridToolbarFilterButton.js +5 -6
  146. package/esm/components/toolbar/GridToolbarQuickFilter.js +59 -97
  147. package/esm/components/toolbarV8/GridToolbar.d.ts +11 -0
  148. package/esm/components/toolbarV8/GridToolbar.js +135 -0
  149. package/esm/components/toolbarV8/Toolbar.d.ts +32 -0
  150. package/esm/components/toolbarV8/Toolbar.js +125 -0
  151. package/esm/components/toolbarV8/ToolbarButton.d.ts +23 -0
  152. package/esm/components/toolbarV8/ToolbarButton.js +172 -0
  153. package/esm/components/toolbarV8/ToolbarContext.d.ts +9 -0
  154. package/esm/components/toolbarV8/ToolbarContext.js +9 -0
  155. package/esm/components/toolbarV8/index.d.ts +2 -0
  156. package/esm/components/toolbarV8/index.js +2 -0
  157. package/esm/components/virtualization/GridVirtualScrollbar.js +10 -2
  158. package/esm/components/virtualization/GridVirtualScrollerFiller.js +2 -1
  159. package/esm/constants/cssVariables.d.ts +294 -0
  160. package/esm/constants/cssVariables.js +161 -0
  161. package/esm/constants/dataGridPropsDefaultValues.js +1 -0
  162. package/esm/constants/defaultGridSlotsComponents.js +2 -1
  163. package/esm/constants/gridClasses.d.ts +17 -0
  164. package/esm/constants/gridClasses.js +1 -1
  165. package/esm/context/GridContextProvider.js +4 -1
  166. package/esm/hooks/features/clipboard/useGridClipboard.js +3 -2
  167. package/esm/hooks/features/columnHeaders/useGridColumnHeaders.js +2 -2
  168. package/esm/hooks/features/columnResize/useGridColumnResize.js +2 -1
  169. package/esm/hooks/features/columns/gridColumnsInterfaces.d.ts +1 -0
  170. package/esm/hooks/features/columns/gridColumnsSelector.d.ts +7 -0
  171. package/esm/hooks/features/columns/gridColumnsSelector.js +8 -0
  172. package/esm/hooks/features/columns/gridColumnsUtils.d.ts +3 -1
  173. package/esm/hooks/features/columns/gridColumnsUtils.js +6 -3
  174. package/esm/hooks/features/columns/index.d.ts +1 -1
  175. package/esm/hooks/features/columns/index.js +1 -1
  176. package/esm/hooks/features/columns/useGridColumns.js +4 -2
  177. package/esm/hooks/features/dataSource/gridDataSourceError.d.ts +31 -0
  178. package/esm/hooks/features/dataSource/gridDataSourceError.js +32 -0
  179. package/esm/hooks/features/dataSource/index.d.ts +2 -0
  180. package/esm/hooks/features/dataSource/index.js +2 -0
  181. package/esm/hooks/features/dataSource/models.d.ts +1 -1
  182. package/esm/hooks/features/dataSource/useGridDataSourceBase.d.ts +1 -1
  183. package/esm/hooks/features/dataSource/useGridDataSourceBase.js +27 -17
  184. package/esm/hooks/features/dimensions/useGridDimensions.js +11 -10
  185. package/esm/hooks/features/editing/useGridCellEditing.js +2 -1
  186. package/esm/hooks/features/editing/useGridRowEditing.js +2 -1
  187. package/esm/hooks/features/export/utils.js +4 -2
  188. package/esm/hooks/features/focus/useGridFocus.js +3 -2
  189. package/esm/hooks/features/index.d.ts +1 -1
  190. package/esm/hooks/features/index.js +1 -1
  191. package/esm/hooks/features/rowSelection/gridRowSelectionSelector.d.ts +3 -3
  192. package/esm/hooks/features/rowSelection/gridRowSelectionSelector.js +27 -7
  193. package/esm/hooks/features/rowSelection/useGridRowSelection.js +148 -81
  194. package/esm/hooks/features/rowSelection/utils.d.ts +2 -2
  195. package/esm/hooks/features/rowSelection/utils.js +11 -11
  196. package/esm/hooks/features/rows/gridRowsInterfaces.d.ts +1 -1
  197. package/esm/hooks/features/rows/gridRowsUtils.d.ts +2 -1
  198. package/esm/hooks/features/rows/gridRowsUtils.js +8 -0
  199. package/esm/hooks/features/rows/useGridParamsApi.js +2 -8
  200. package/esm/hooks/features/rows/useGridRowAriaAttributes.js +2 -4
  201. package/esm/hooks/features/rows/useGridRows.d.ts +2 -2
  202. package/esm/hooks/features/rows/useGridRows.js +7 -7
  203. package/esm/hooks/features/rows/useGridRowsMeta.js +8 -0
  204. package/esm/hooks/features/virtualization/useGridVirtualScroller.d.ts +0 -2
  205. package/esm/hooks/features/virtualization/useGridVirtualScroller.js +5 -11
  206. package/esm/hooks/utils/index.d.ts +2 -1
  207. package/esm/hooks/utils/useGridComponentRenderer.d.ts +12 -0
  208. package/esm/hooks/utils/useGridComponentRenderer.js +36 -0
  209. package/esm/hooks/utils/useGridSelector.js +4 -1
  210. package/esm/hooks/utils/useIsSSR.js +4 -1
  211. package/esm/index.js +1 -1
  212. package/esm/internals/demo/TailwindDemoContainer.d.ts +11 -0
  213. package/esm/internals/demo/TailwindDemoContainer.js +55 -0
  214. package/esm/internals/demo/index.d.ts +1 -0
  215. package/esm/internals/demo/index.js +1 -0
  216. package/esm/internals/index.d.ts +6 -1
  217. package/esm/internals/index.js +5 -1
  218. package/esm/internals/utils/propValidation.js +1 -1
  219. package/esm/locales/bnBD.d.ts +2 -0
  220. package/esm/locales/bnBD.js +167 -0
  221. package/esm/locales/deDE.js +3 -5
  222. package/esm/locales/huHU.js +10 -13
  223. package/esm/locales/index.d.ts +1 -0
  224. package/esm/locales/index.js +1 -0
  225. package/esm/locales/ruRU.js +17 -21
  226. package/esm/material/icons/index.d.ts +3 -3
  227. package/esm/material/icons/index.js +6 -6
  228. package/esm/material/index.d.ts +1 -0
  229. package/esm/material/index.js +167 -52
  230. package/esm/material/variables.d.ts +5 -0
  231. package/esm/material/variables.js +89 -0
  232. package/esm/models/api/gridRowSelectionApi.d.ts +4 -2
  233. package/esm/models/api/gridSortApi.d.ts +1 -1
  234. package/esm/models/configuration/gridConfiguration.d.ts +7 -1
  235. package/esm/models/gridBaseSlots.d.ts +61 -7
  236. package/esm/models/gridDataSource.d.ts +9 -4
  237. package/esm/models/gridIconSlotsComponent.d.ts +1 -1
  238. package/esm/models/gridRowSelectionManager.d.ts +9 -0
  239. package/esm/models/gridRowSelectionManager.js +36 -0
  240. package/esm/models/gridRowSelectionModel.d.ts +4 -2
  241. package/esm/models/gridSlotsComponent.d.ts +7 -28
  242. package/esm/models/gridSlotsComponentsProps.d.ts +3 -11
  243. package/esm/models/gridSortModel.d.ts +1 -1
  244. package/esm/models/index.d.ts +2 -1
  245. package/esm/models/index.js +2 -3
  246. package/esm/models/props/DataGridProps.d.ts +22 -17
  247. package/esm/utils/css/context.d.ts +14 -0
  248. package/esm/utils/css/context.js +54 -0
  249. package/esm/utils/index.d.ts +2 -1
  250. package/esm/utils/index.js +1 -1
  251. package/hooks/features/clipboard/useGridClipboard.js +3 -2
  252. package/hooks/features/columnHeaders/useGridColumnHeaders.js +2 -2
  253. package/hooks/features/columnResize/useGridColumnResize.js +28 -27
  254. package/hooks/features/columns/gridColumnsInterfaces.d.ts +1 -0
  255. package/hooks/features/columns/gridColumnsSelector.d.ts +7 -0
  256. package/hooks/features/columns/gridColumnsSelector.js +9 -1
  257. package/hooks/features/columns/gridColumnsUtils.d.ts +3 -1
  258. package/hooks/features/columns/gridColumnsUtils.js +6 -3
  259. package/hooks/features/columns/index.d.ts +1 -1
  260. package/hooks/features/columns/index.js +94 -10
  261. package/hooks/features/columns/useGridColumns.js +4 -2
  262. package/hooks/features/dataSource/gridDataSourceError.d.ts +31 -0
  263. package/hooks/features/dataSource/gridDataSourceError.js +40 -0
  264. package/hooks/features/dataSource/index.d.ts +2 -0
  265. package/hooks/features/dataSource/index.js +25 -0
  266. package/hooks/features/dataSource/models.d.ts +1 -1
  267. package/hooks/features/dataSource/useGridDataSourceBase.d.ts +1 -1
  268. package/hooks/features/dataSource/useGridDataSourceBase.js +27 -17
  269. package/hooks/features/dimensions/useGridDimensions.js +19 -18
  270. package/hooks/features/editing/useGridCellEditing.js +10 -9
  271. package/hooks/features/editing/useGridRowEditing.js +11 -10
  272. package/hooks/features/export/utils.js +4 -2
  273. package/hooks/features/focus/useGridFocus.js +8 -7
  274. package/hooks/features/index.d.ts +1 -1
  275. package/hooks/features/index.js +11 -28
  276. package/hooks/features/rowSelection/gridRowSelectionSelector.d.ts +3 -3
  277. package/hooks/features/rowSelection/gridRowSelectionSelector.js +27 -7
  278. package/hooks/features/rowSelection/useGridRowSelection.js +146 -79
  279. package/hooks/features/rowSelection/utils.d.ts +2 -2
  280. package/hooks/features/rowSelection/utils.js +10 -10
  281. package/hooks/features/rows/gridRowsInterfaces.d.ts +1 -1
  282. package/hooks/features/rows/gridRowsUtils.d.ts +2 -1
  283. package/hooks/features/rows/gridRowsUtils.js +10 -1
  284. package/hooks/features/rows/useGridParamsApi.js +2 -8
  285. package/hooks/features/rows/useGridRowAriaAttributes.js +2 -4
  286. package/hooks/features/rows/useGridRows.d.ts +2 -2
  287. package/hooks/features/rows/useGridRows.js +7 -7
  288. package/hooks/features/rows/useGridRowsMeta.js +8 -0
  289. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +0 -2
  290. package/hooks/features/virtualization/useGridVirtualScroller.js +21 -27
  291. package/hooks/utils/index.d.ts +2 -1
  292. package/hooks/utils/useGridComponentRenderer.d.ts +12 -0
  293. package/hooks/utils/useGridComponentRenderer.js +44 -0
  294. package/hooks/utils/useGridSelector.js +6 -2
  295. package/hooks/utils/useIsSSR.js +6 -2
  296. package/index.js +1 -1
  297. package/internals/demo/TailwindDemoContainer.d.ts +11 -0
  298. package/internals/demo/TailwindDemoContainer.js +63 -0
  299. package/internals/demo/index.d.ts +1 -0
  300. package/internals/demo/index.js +12 -0
  301. package/internals/index.d.ts +6 -1
  302. package/internals/index.js +43 -0
  303. package/internals/utils/propValidation.js +1 -1
  304. package/locales/bnBD.d.ts +2 -0
  305. package/locales/bnBD.js +173 -0
  306. package/locales/deDE.js +3 -5
  307. package/locales/huHU.js +10 -13
  308. package/locales/index.d.ts +1 -0
  309. package/locales/index.js +11 -0
  310. package/locales/ruRU.js +17 -21
  311. package/material/icons/index.d.ts +3 -3
  312. package/material/icons/index.js +7 -7
  313. package/material/index.d.ts +1 -0
  314. package/material/index.js +172 -51
  315. package/material/variables.d.ts +5 -0
  316. package/material/variables.js +95 -0
  317. package/models/api/gridRowSelectionApi.d.ts +4 -2
  318. package/models/api/gridSortApi.d.ts +1 -1
  319. package/models/configuration/gridConfiguration.d.ts +7 -1
  320. package/models/gridBaseSlots.d.ts +61 -7
  321. package/models/gridDataSource.d.ts +9 -4
  322. package/models/gridIconSlotsComponent.d.ts +1 -1
  323. package/models/gridRowSelectionManager.d.ts +9 -0
  324. package/models/gridRowSelectionManager.js +43 -0
  325. package/models/gridRowSelectionModel.d.ts +4 -2
  326. package/models/gridSlotsComponent.d.ts +7 -28
  327. package/models/gridSlotsComponentsProps.d.ts +3 -11
  328. package/models/gridSortModel.d.ts +1 -1
  329. package/models/index.d.ts +2 -1
  330. package/models/index.js +34 -11
  331. package/models/props/DataGridProps.d.ts +22 -17
  332. package/modern/DataGrid/DataGrid.js +31 -22
  333. package/modern/DataGrid/useDataGridProps.js +1 -1
  334. package/modern/colDef/gridActionsColDef.js +1 -1
  335. package/modern/colDef/gridBooleanColDef.js +1 -1
  336. package/modern/colDef/gridCheckboxSelectionColDef.js +2 -4
  337. package/modern/components/GridFooter.js +2 -2
  338. package/modern/components/GridHeader.js +1 -1
  339. package/modern/components/GridPagination.js +5 -6
  340. package/modern/components/GridRowCount.js +4 -5
  341. package/modern/components/GridScrollArea.js +2 -1
  342. package/modern/components/GridSelectedRowCount.js +5 -6
  343. package/modern/components/GridShadowScrollArea.d.ts +8 -0
  344. package/modern/components/GridShadowScrollArea.js +74 -0
  345. package/modern/components/cell/GridEditInputCell.js +2 -3
  346. package/modern/components/columnSelection/GridHeaderCheckbox.js +51 -17
  347. package/modern/components/columnsManagement/GridColumnsManagement.js +61 -62
  348. package/modern/components/columnsPanel/ColumnsPanelTrigger.d.ts +33 -0
  349. package/modern/components/columnsPanel/ColumnsPanelTrigger.js +202 -0
  350. package/modern/components/columnsPanel/index.d.ts +1 -0
  351. package/modern/components/columnsPanel/index.js +1 -0
  352. package/modern/components/containers/GridOverlay.js +6 -8
  353. package/modern/components/containers/GridRoot.js +4 -2
  354. package/modern/components/containers/GridRootStyles.d.ts +1 -2
  355. package/modern/components/containers/GridRootStyles.js +78 -101
  356. package/modern/components/containers/GridToolbarContainer.js +5 -6
  357. package/modern/components/export/ExportCsv.d.ts +30 -0
  358. package/modern/components/export/ExportCsv.js +189 -0
  359. package/modern/components/export/ExportPrint.d.ts +30 -0
  360. package/modern/components/export/ExportPrint.js +189 -0
  361. package/modern/components/export/index.d.ts +2 -0
  362. package/modern/components/export/index.js +2 -0
  363. package/modern/components/filterPanel/FilterPanelTrigger.d.ts +37 -0
  364. package/modern/components/filterPanel/FilterPanelTrigger.js +205 -0
  365. package/modern/components/filterPanel/index.d.ts +1 -0
  366. package/modern/components/filterPanel/index.js +1 -0
  367. package/modern/components/index.d.ts +6 -1
  368. package/modern/components/index.js +6 -1
  369. package/modern/components/menu/GridMenu.js +7 -6
  370. package/modern/components/menu/columnMenu/GridColumnHeaderMenu.js +2 -1
  371. package/modern/components/panel/GridPanel.js +18 -20
  372. package/modern/components/panel/GridPanelContent.js +6 -8
  373. package/modern/components/panel/GridPanelFooter.js +5 -6
  374. package/modern/components/panel/GridPanelHeader.js +4 -5
  375. package/modern/components/panel/filterPanel/GridFilterForm.js +13 -20
  376. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.d.ts +2 -2
  377. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +10 -39
  378. package/modern/components/panel/filterPanel/GridFilterInputMultipleValue.d.ts +2 -2
  379. package/modern/components/panel/filterPanel/GridFilterInputMultipleValue.js +19 -44
  380. package/modern/components/panel/filterPanel/GridFilterInputValue.js +3 -6
  381. package/modern/components/quickFilter/QuickFilter.d.ts +41 -0
  382. package/modern/components/quickFilter/QuickFilter.js +103 -0
  383. package/modern/components/quickFilter/QuickFilterClear.d.ts +28 -0
  384. package/modern/components/quickFilter/QuickFilterClear.js +154 -0
  385. package/modern/components/quickFilter/QuickFilterContext.d.ts +13 -0
  386. package/modern/components/quickFilter/QuickFilterContext.js +9 -0
  387. package/modern/components/quickFilter/QuickFilterControl.d.ts +28 -0
  388. package/modern/components/quickFilter/QuickFilterControl.js +97 -0
  389. package/modern/components/quickFilter/index.d.ts +3 -0
  390. package/modern/components/quickFilter/index.js +3 -0
  391. package/modern/components/toolbar/GridToolbar.d.ts +1 -1
  392. package/modern/components/toolbar/GridToolbar.js +2 -2
  393. package/modern/components/toolbar/GridToolbarFilterButton.js +5 -6
  394. package/modern/components/toolbar/GridToolbarQuickFilter.js +59 -97
  395. package/modern/components/toolbarV8/GridToolbar.d.ts +11 -0
  396. package/modern/components/toolbarV8/GridToolbar.js +135 -0
  397. package/modern/components/toolbarV8/Toolbar.d.ts +32 -0
  398. package/modern/components/toolbarV8/Toolbar.js +125 -0
  399. package/modern/components/toolbarV8/ToolbarButton.d.ts +23 -0
  400. package/modern/components/toolbarV8/ToolbarButton.js +172 -0
  401. package/modern/components/toolbarV8/ToolbarContext.d.ts +9 -0
  402. package/modern/components/toolbarV8/ToolbarContext.js +9 -0
  403. package/modern/components/toolbarV8/index.d.ts +2 -0
  404. package/modern/components/toolbarV8/index.js +2 -0
  405. package/modern/components/virtualization/GridVirtualScrollbar.js +10 -2
  406. package/modern/components/virtualization/GridVirtualScrollerFiller.js +2 -1
  407. package/modern/constants/cssVariables.d.ts +294 -0
  408. package/modern/constants/cssVariables.js +161 -0
  409. package/modern/constants/dataGridPropsDefaultValues.js +1 -0
  410. package/modern/constants/defaultGridSlotsComponents.js +2 -1
  411. package/modern/constants/gridClasses.d.ts +17 -0
  412. package/modern/constants/gridClasses.js +1 -1
  413. package/modern/context/GridContextProvider.js +4 -1
  414. package/modern/hooks/features/clipboard/useGridClipboard.js +3 -2
  415. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +2 -2
  416. package/modern/hooks/features/columnResize/useGridColumnResize.js +2 -1
  417. package/modern/hooks/features/columns/gridColumnsInterfaces.d.ts +1 -0
  418. package/modern/hooks/features/columns/gridColumnsSelector.d.ts +7 -0
  419. package/modern/hooks/features/columns/gridColumnsSelector.js +8 -0
  420. package/modern/hooks/features/columns/gridColumnsUtils.d.ts +3 -1
  421. package/modern/hooks/features/columns/gridColumnsUtils.js +6 -3
  422. package/modern/hooks/features/columns/index.d.ts +1 -1
  423. package/modern/hooks/features/columns/index.js +1 -1
  424. package/modern/hooks/features/columns/useGridColumns.js +4 -2
  425. package/modern/hooks/features/dataSource/gridDataSourceError.d.ts +31 -0
  426. package/modern/hooks/features/dataSource/gridDataSourceError.js +32 -0
  427. package/modern/hooks/features/dataSource/index.d.ts +2 -0
  428. package/modern/hooks/features/dataSource/index.js +2 -0
  429. package/modern/hooks/features/dataSource/models.d.ts +1 -1
  430. package/modern/hooks/features/dataSource/useGridDataSourceBase.d.ts +1 -1
  431. package/modern/hooks/features/dataSource/useGridDataSourceBase.js +27 -17
  432. package/modern/hooks/features/dimensions/useGridDimensions.js +11 -10
  433. package/modern/hooks/features/editing/useGridCellEditing.js +2 -1
  434. package/modern/hooks/features/editing/useGridRowEditing.js +2 -1
  435. package/modern/hooks/features/export/utils.js +4 -2
  436. package/modern/hooks/features/focus/useGridFocus.js +3 -2
  437. package/modern/hooks/features/index.d.ts +1 -1
  438. package/modern/hooks/features/index.js +1 -1
  439. package/modern/hooks/features/rowSelection/gridRowSelectionSelector.d.ts +3 -3
  440. package/modern/hooks/features/rowSelection/gridRowSelectionSelector.js +27 -7
  441. package/modern/hooks/features/rowSelection/useGridRowSelection.js +148 -81
  442. package/modern/hooks/features/rowSelection/utils.d.ts +2 -2
  443. package/modern/hooks/features/rowSelection/utils.js +11 -11
  444. package/modern/hooks/features/rows/gridRowsInterfaces.d.ts +1 -1
  445. package/modern/hooks/features/rows/gridRowsUtils.d.ts +2 -1
  446. package/modern/hooks/features/rows/gridRowsUtils.js +8 -0
  447. package/modern/hooks/features/rows/useGridParamsApi.js +2 -8
  448. package/modern/hooks/features/rows/useGridRowAriaAttributes.js +2 -4
  449. package/modern/hooks/features/rows/useGridRows.d.ts +2 -2
  450. package/modern/hooks/features/rows/useGridRows.js +7 -7
  451. package/modern/hooks/features/rows/useGridRowsMeta.js +8 -0
  452. package/modern/hooks/features/virtualization/useGridVirtualScroller.d.ts +0 -2
  453. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +5 -11
  454. package/modern/hooks/utils/index.d.ts +2 -1
  455. package/modern/hooks/utils/useGridComponentRenderer.d.ts +12 -0
  456. package/modern/hooks/utils/useGridComponentRenderer.js +36 -0
  457. package/modern/hooks/utils/useGridSelector.js +4 -1
  458. package/modern/hooks/utils/useIsSSR.js +4 -1
  459. package/modern/index.js +1 -1
  460. package/modern/internals/demo/TailwindDemoContainer.d.ts +11 -0
  461. package/modern/internals/demo/TailwindDemoContainer.js +55 -0
  462. package/modern/internals/demo/index.d.ts +1 -0
  463. package/modern/internals/demo/index.js +1 -0
  464. package/modern/internals/index.d.ts +6 -1
  465. package/modern/internals/index.js +5 -1
  466. package/modern/internals/utils/propValidation.js +1 -1
  467. package/modern/locales/bnBD.d.ts +2 -0
  468. package/modern/locales/bnBD.js +167 -0
  469. package/modern/locales/deDE.js +3 -5
  470. package/modern/locales/huHU.js +10 -13
  471. package/modern/locales/index.d.ts +1 -0
  472. package/modern/locales/index.js +1 -0
  473. package/modern/locales/ruRU.js +17 -21
  474. package/modern/material/icons/index.d.ts +3 -3
  475. package/modern/material/icons/index.js +6 -6
  476. package/modern/material/index.d.ts +1 -0
  477. package/modern/material/index.js +167 -52
  478. package/modern/material/variables.d.ts +5 -0
  479. package/modern/material/variables.js +89 -0
  480. package/modern/models/api/gridRowSelectionApi.d.ts +4 -2
  481. package/modern/models/api/gridSortApi.d.ts +1 -1
  482. package/modern/models/configuration/gridConfiguration.d.ts +7 -1
  483. package/modern/models/gridBaseSlots.d.ts +61 -7
  484. package/modern/models/gridDataSource.d.ts +9 -4
  485. package/modern/models/gridIconSlotsComponent.d.ts +1 -1
  486. package/modern/models/gridRowSelectionManager.d.ts +9 -0
  487. package/modern/models/gridRowSelectionManager.js +36 -0
  488. package/modern/models/gridRowSelectionModel.d.ts +4 -2
  489. package/modern/models/gridSlotsComponent.d.ts +7 -28
  490. package/modern/models/gridSlotsComponentsProps.d.ts +3 -11
  491. package/modern/models/gridSortModel.d.ts +1 -1
  492. package/modern/models/index.d.ts +2 -1
  493. package/modern/models/index.js +2 -3
  494. package/modern/models/props/DataGridProps.d.ts +22 -17
  495. package/modern/utils/css/context.d.ts +14 -0
  496. package/modern/utils/css/context.js +54 -0
  497. package/modern/utils/index.d.ts +2 -1
  498. package/modern/utils/index.js +1 -1
  499. package/package.json +2 -2
  500. package/tsconfig.build.tsbuildinfo +1 -1
  501. package/utils/css/context.d.ts +14 -0
  502. package/utils/css/context.js +64 -0
  503. package/utils/index.d.ts +2 -1
  504. package/utils/index.js +8 -1
@@ -4,9 +4,8 @@ const huHUGrid = {
4
4
  // Root
5
5
  noRowsLabel: 'Nincsenek sorok',
6
6
  noResultsOverlayLabel: 'Nincs találat.',
7
- // noColumnsOverlayLabel: 'No columns',
8
- // noColumnsOverlayManageColumns: 'Manage columns',
9
-
7
+ noColumnsOverlayLabel: 'Nincsenek oszlopok',
8
+ noColumnsOverlayManageColumns: 'Oszlopok kezelése',
10
9
  // Density selector toolbar button text
11
10
  toolbarDensity: 'Sormagasság',
12
11
  toolbarDensityLabel: 'Sormagasság',
@@ -48,8 +47,7 @@ const huHUGrid = {
48
47
  columnsManagementNoColumns: 'Nincsenek oszlopok',
49
48
  columnsManagementShowHideAllText: 'Összes',
50
49
  columnsManagementReset: 'Visszavon',
51
- // columnsManagementDeleteIconLabel: 'Clear',
52
-
50
+ columnsManagementDeleteIconLabel: 'Törlés',
53
51
  // Filter panel text
54
52
  filterPanelAddFilter: 'Szűrő hozzáadása',
55
53
  filterPanelRemoveAll: 'Összes törlése',
@@ -63,9 +61,9 @@ const huHUGrid = {
63
61
  filterPanelInputPlaceholder: 'Érték szűrése',
64
62
  // Filter operators text
65
63
  filterOperatorContains: 'tartalmazza:',
66
- // filterOperatorDoesNotContain: 'does not contain',
64
+ filterOperatorDoesNotContain: 'nem tartalmazza',
67
65
  filterOperatorEquals: 'egyenlő ezzel:',
68
- // filterOperatorDoesNotEqual: 'does not equal',
66
+ filterOperatorDoesNotEqual: 'nem egyenlő',
69
67
  filterOperatorStartsWith: 'ezzel kezdődik:',
70
68
  filterOperatorEndsWith: 'ezzel végződik:',
71
69
  filterOperatorIs: 'a következő:',
@@ -85,13 +83,13 @@ const huHUGrid = {
85
83
  'filterOperator<=': '<=',
86
84
  // Header filter operators text
87
85
  headerFilterOperatorContains: 'Tartalmazza:',
88
- // headerFilterOperatorDoesNotContain: 'Does not contain',
86
+ headerFilterOperatorDoesNotContain: 'Nem tartalmazza',
89
87
  headerFilterOperatorEquals: 'Egyenlő ezzel:',
90
- // headerFilterOperatorDoesNotEqual: 'Does not equal',
88
+ headerFilterOperatorDoesNotEqual: 'Nem egyenlő',
91
89
  headerFilterOperatorStartsWith: 'Ezzel kezdődik:',
92
90
  headerFilterOperatorEndsWith: 'Ezzel végződik:',
93
- // headerFilterOperatorIs: 'Is',
94
- // headerFilterOperatorNot: 'Is not',
91
+ headerFilterOperatorIs: 'Megegyezik',
92
+ headerFilterOperatorNot: 'Nem egyezik meg',
95
93
  headerFilterOperatorAfter: 'Ezutáni:',
96
94
  headerFilterOperatorOnOrAfter: 'Ekkori vagy ezutáni:',
97
95
  headerFilterOperatorBefore: 'Ezelőtti:',
@@ -105,8 +103,7 @@ const huHUGrid = {
105
103
  'headerFilterOperator>=': 'Nagyobb vagy egyenlő',
106
104
  'headerFilterOperator<': 'Kisebb mint',
107
105
  'headerFilterOperator<=': 'Kisebb vagy egyenlő',
108
- // headerFilterClear: 'Clear filter',
109
-
106
+ headerFilterClear: 'Szűrő ürítése',
110
107
  // Filter values text
111
108
  filterValueAny: 'bármilyen',
112
109
  filterValueTrue: 'igaz',
@@ -1,6 +1,7 @@
1
1
  export * from "./arSD.js";
2
2
  export * from "./beBY.js";
3
3
  export * from "./bgBG.js";
4
+ export * from "./bnBD.js";
4
5
  export * from "./csCZ.js";
5
6
  export * from "./daDK.js";
6
7
  export * from "./deDE.js";
@@ -2,6 +2,7 @@
2
2
  export * from "./arSD.js";
3
3
  export * from "./beBY.js";
4
4
  export * from "./bgBG.js";
5
+ export * from "./bnBD.js";
5
6
  export * from "./csCZ.js";
6
7
  export * from "./daDK.js";
7
8
  export * from "./deDE.js";
@@ -15,9 +15,8 @@ const ruRUGrid = {
15
15
  // Root
16
16
  noRowsLabel: 'Нет строк',
17
17
  noResultsOverlayLabel: 'Данные не найдены.',
18
- // noColumnsOverlayLabel: 'No columns',
19
- // noColumnsOverlayManageColumns: 'Manage columns',
20
-
18
+ noColumnsOverlayLabel: 'Нет столбцов',
19
+ noColumnsOverlayManageColumns: 'Управление столбцами',
21
20
  // Density selector toolbar button text
22
21
  toolbarDensity: 'Высота строки',
23
22
  toolbarDensityLabel: 'Высота строки',
@@ -42,16 +41,15 @@ const ruRUGrid = {
42
41
  toolbarQuickFilterLabel: 'Поиск',
43
42
  toolbarQuickFilterDeleteIconLabel: 'Очистить',
44
43
  // Prompt toolbar field
45
- // toolbarPromptControlPlaceholder: 'Type a prompt…',
46
- // toolbarPromptControlWithRecordingPlaceholder: 'Type or record a prompt…',
47
- // toolbarPromptControlRecordingPlaceholder: 'Listening for prompt…',
48
- // toolbarPromptControlLabel: 'Prompt input',
49
- // toolbarPromptControlRecordButtonDefaultLabel: 'Record',
50
- // toolbarPromptControlRecordButtonActiveLabel: 'Stop recording',
51
- // toolbarPromptControlSendActionLabel: 'Send',
52
- // toolbarPromptControlSendActionAriaLabel: 'Send prompt',
53
- // toolbarPromptControlErrorMessage: 'An error occurred while processing the request. Please try again with a different prompt.',
54
-
44
+ toolbarPromptControlPlaceholder: 'Введите запрос…',
45
+ toolbarPromptControlWithRecordingPlaceholder: 'Введите или запишите запрос…',
46
+ toolbarPromptControlRecordingPlaceholder: 'Прослушивание запроса…',
47
+ toolbarPromptControlLabel: 'Ввод запроса',
48
+ toolbarPromptControlRecordButtonDefaultLabel: 'Запись',
49
+ toolbarPromptControlRecordButtonActiveLabel: 'Остановить запись',
50
+ toolbarPromptControlSendActionLabel: 'Отправить',
51
+ toolbarPromptControlSendActionAriaLabel: 'Отправить запрос',
52
+ toolbarPromptControlErrorMessage: 'При обработке запроса произошла ошибка. Пожалуйста, повторите попытку с другим запросом.',
55
53
  // Export selector toolbar button text
56
54
  toolbarExport: 'Экспорт',
57
55
  toolbarExportLabel: 'Экспорт',
@@ -63,8 +61,7 @@ const ruRUGrid = {
63
61
  columnsManagementNoColumns: 'Нет столбцов',
64
62
  columnsManagementShowHideAllText: 'Показать/Скрыть Всё',
65
63
  columnsManagementReset: 'Сбросить',
66
- // columnsManagementDeleteIconLabel: 'Clear',
67
-
64
+ columnsManagementDeleteIconLabel: 'Очистить',
68
65
  // Filter panel text
69
66
  filterPanelAddFilter: 'Добавить фильтр',
70
67
  filterPanelRemoveAll: 'Очистить фильтр',
@@ -78,9 +75,9 @@ const ruRUGrid = {
78
75
  filterPanelInputPlaceholder: 'Значение фильтра',
79
76
  // Filter operators text
80
77
  filterOperatorContains: 'содержит',
81
- // filterOperatorDoesNotContain: 'does not contain',
78
+ filterOperatorDoesNotContain: 'не содержит',
82
79
  filterOperatorEquals: 'равен',
83
- // filterOperatorDoesNotEqual: 'does not equal',
80
+ filterOperatorDoesNotEqual: 'не равен',
84
81
  filterOperatorStartsWith: 'начинается с',
85
82
  filterOperatorEndsWith: 'заканчивается на',
86
83
  filterOperatorIs: 'равен',
@@ -100,9 +97,9 @@ const ruRUGrid = {
100
97
  'filterOperator<=': '<=',
101
98
  // Header filter operators text
102
99
  headerFilterOperatorContains: 'содержит',
103
- // headerFilterOperatorDoesNotContain: 'Does not contain',
100
+ headerFilterOperatorDoesNotContain: 'не содержит',
104
101
  headerFilterOperatorEquals: 'равен',
105
- // headerFilterOperatorDoesNotEqual: 'Does not equal',
102
+ headerFilterOperatorDoesNotEqual: 'не равен',
106
103
  headerFilterOperatorStartsWith: 'начинается с',
107
104
  headerFilterOperatorEndsWith: 'заканчивается на',
108
105
  headerFilterOperatorIs: 'равен',
@@ -120,8 +117,7 @@ const ruRUGrid = {
120
117
  'headerFilterOperator>=': 'больше или равно',
121
118
  'headerFilterOperator<': 'меньше чем',
122
119
  'headerFilterOperator<=': 'меньше или равно',
123
- // headerFilterClear: 'Clear filter',
124
-
120
+ headerFilterClear: 'Очистить фильтр',
125
121
  // Filter values text
126
122
  filterValueAny: 'любой',
127
123
  filterValueTrue: 'истина',
@@ -58,9 +58,6 @@ export declare const GridLoadIcon: import("@mui/material/OverridableComponent").
58
58
  export declare const GridDragIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
59
59
  muiName: string;
60
60
  };
61
- export declare const GridSaveAltIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
62
- muiName: string;
63
- };
64
61
  export declare const GridCheckIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
65
62
  muiName: string;
66
63
  };
@@ -81,4 +78,7 @@ export declare const GridDeleteIcon: import("@mui/material/OverridableComponent"
81
78
  };
82
79
  export declare const GridDeleteForeverIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
83
80
  muiName: string;
81
+ };
82
+ export declare const GridDownloadIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
83
+ muiName: string;
84
84
  };
@@ -29,7 +29,7 @@ export const GridCheckCircleIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
29
29
  d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"
30
30
  }), 'CheckCircle');
31
31
  export const GridColumnIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
32
- d: "M6 5H3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1zm14 0h-3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1zm-7 0h-3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1z"
32
+ d: "M14.67 5v14H9.33V5zm1 14H21V5h-5.33zm-7.34 0V5H3v14z"
33
33
  }), 'ColumnIcon');
34
34
  export const GridSeparatorIcon = createSvgIcon(/*#__PURE__*/_jsx("rect", {
35
35
  width: "1",
@@ -64,9 +64,6 @@ export const GridLoadIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
64
64
  export const GridDragIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
65
65
  d: "M11 18c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm-2-8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 4c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"
66
66
  }), 'Drag');
67
- export const GridSaveAltIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
68
- d: "M19 12v7H5v-7H3v7c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-7h-2zm-6 .67l2.59-2.58L17 11.5l-5 5-5-5 1.41-1.41L11 12.67V3h2z"
69
- }), 'SaveAlt');
70
67
  export const GridCheckIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
71
68
  d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"
72
69
  }), 'Check');
@@ -82,11 +79,14 @@ export const GridViewColumnIcon = createSvgIcon(/*#__PURE__*/_jsx("g", {
82
79
  })
83
80
  }), 'ViewColumn');
84
81
  export const GridClearIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
85
- d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
82
+ d: "M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12z"
86
83
  }), 'Clear');
87
84
  export const GridDeleteIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
88
85
  d: "M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"
89
86
  }), 'Delete');
90
87
  export const GridDeleteForeverIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
91
88
  d: "M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zm2.46-7.12l1.41-1.41L12 12.59l2.12-2.12 1.41 1.41L13.41 14l2.12 2.12-1.41 1.41L12 15.41l-2.12 2.12-1.41-1.41L10.59 14l-2.13-2.12zM15.5 4l-1-1h-5l-1 1H5v2h14V4z"
92
- }), 'Delete');
89
+ }), 'Delete');
90
+ export const GridDownloadIcon = createSvgIcon(/*#__PURE__*/_jsx("path", {
91
+ d: "M5 20h14v-2H5zM19 9h-4V3H9v6H5l7 7z"
92
+ }), 'Download');
@@ -1,4 +1,5 @@
1
1
  import type { GridIconSlotsComponent } from '../models';
2
2
  import type { GridBaseSlots } from '../models/gridSlotsComponent';
3
+ export { useMaterialCSSVariables } from "./variables.js";
3
4
  declare const materialSlots: GridBaseSlots & GridIconSlotsComponent;
4
5
  export default materialSlots;
@@ -1,13 +1,18 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  const _excluded = ["id", "label", "labelId", "disabled", "slotProps", "onChange", "onKeyDown", "onOpen", "onClose", "size", "style", "fullWidth"],
4
- _excluded2 = ["autoFocus", "label", "fullWidth", "slotProps", "className", "density"],
4
+ _excluded2 = ["autoFocus", "label", "fullWidth", "slotProps", "className"],
5
5
  _excluded3 = ["inert", "iconStart", "iconEnd", "children"],
6
6
  _excluded4 = ["slotProps"],
7
- _excluded5 = ["slotProps"],
8
- _excluded6 = ["native"];
7
+ _excluded5 = ["id", "multiple", "freeSolo", "options", "getOptionLabel", "isOptionEqualToValue", "value", "onChange", "label", "placeholder", "slotProps"],
8
+ _excluded6 = ["key"],
9
+ _excluded7 = ["inputProps", "InputProps", "InputLabelProps"],
10
+ _excluded8 = ["slotProps"],
11
+ _excluded9 = ["native"];
9
12
  import * as React from 'react';
10
13
  import useForkRef from '@mui/utils/useForkRef';
14
+ import { styled } from '@mui/material/styles';
15
+ import MUIAutocomplete from '@mui/material/Autocomplete';
11
16
  import MUIBadge from '@mui/material/Badge';
12
17
  import MUICheckbox from '@mui/material/Checkbox';
13
18
  import MUIChip from '@mui/material/Chip';
@@ -22,12 +27,12 @@ import MUIMenuList from '@mui/material/MenuList';
22
27
  import MUIMenuItem from '@mui/material/MenuItem';
23
28
  import MUITextField from '@mui/material/TextField';
24
29
  import MUIFormControl from '@mui/material/FormControl';
25
- import MUIFormControlLabel from '@mui/material/FormControlLabel';
30
+ import MUIFormControlLabel, { formControlLabelClasses } from '@mui/material/FormControlLabel';
26
31
  import MUISelect from '@mui/material/Select';
27
32
  import MUISwitch from '@mui/material/Switch';
28
33
  import MUIButton from '@mui/material/Button';
29
- import MUIIconButton from '@mui/material/IconButton';
30
- import MUIInputAdornment from '@mui/material/InputAdornment';
34
+ import MUIIconButton, { iconButtonClasses } from '@mui/material/IconButton';
35
+ import MUIInputAdornment, { inputAdornmentClasses } from '@mui/material/InputAdornment';
31
36
  import MUITooltip from '@mui/material/Tooltip';
32
37
  import MUIPopper from '@mui/material/Popper';
33
38
  import MUIClickAwayListener from '@mui/material/ClickAwayListener';
@@ -37,12 +42,50 @@ import MUIInputLabel from '@mui/material/InputLabel';
37
42
  import MUISkeleton from '@mui/material/Skeleton';
38
43
  import { forwardRef } from '@mui/x-internals/forwardRef';
39
44
  import { GridColumnUnsortedIcon } from "./icons/GridColumnUnsortedIcon.js";
40
- import { GridAddIcon, GridArrowDownwardIcon, GridArrowUpwardIcon, GridCheckIcon, GridCloseIcon, GridColumnIcon, GridDragIcon, GridExpandMoreIcon, GridFilterAltIcon, GridFilterListIcon, GridKeyboardArrowRight, GridMoreVertIcon, GridRemoveIcon, GridSaveAltIcon, GridSearchIcon, GridSeparatorIcon, GridTableRowsIcon, GridTripleDotsVerticalIcon, GridViewHeadlineIcon, GridViewStreamIcon, GridVisibilityOffIcon, GridViewColumnIcon, GridClearIcon, GridLoadIcon, GridDeleteForeverIcon } from "./icons/index.js";
45
+ import { GridAddIcon, GridArrowDownwardIcon, GridArrowUpwardIcon, GridCheckIcon, GridCloseIcon, GridColumnIcon, GridDragIcon, GridExpandMoreIcon, GridFilterAltIcon, GridFilterListIcon, GridKeyboardArrowRight, GridMoreVertIcon, GridRemoveIcon, GridSearchIcon, GridSeparatorIcon, GridTableRowsIcon, GridTripleDotsVerticalIcon, GridViewHeadlineIcon, GridViewStreamIcon, GridVisibilityOffIcon, GridViewColumnIcon, GridClearIcon, GridLoadIcon, GridDeleteForeverIcon, GridDownloadIcon } from "./icons/index.js";
41
46
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
42
47
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
48
+ export { useMaterialCSSVariables } from "./variables.js";
43
49
  const ClickAwayListener = forwardRef(MUIClickAwayListener);
50
+ const InputAdornment = styled(MUIInputAdornment)({
51
+ [`&.${inputAdornmentClasses.positionEnd} .${iconButtonClasses.sizeSmall}`]: {
52
+ marginRight: '-7px'
53
+ }
54
+ });
55
+ const FormControlLabel = styled(MUIFormControlLabel, {
56
+ shouldForwardProp: prop => prop !== 'fullWidth'
57
+ })(({
58
+ theme
59
+ }) => ({
60
+ gap: theme.spacing(0.5),
61
+ margin: 0,
62
+ [`& .${formControlLabelClasses.label}`]: {
63
+ fontSize: theme.typography.pxToRem(14)
64
+ },
65
+ variants: [{
66
+ props: {
67
+ fullWidth: true
68
+ },
69
+ style: {
70
+ width: '100%'
71
+ }
72
+ }]
73
+ }));
74
+ const Checkbox = styled(MUICheckbox, {
75
+ shouldForwardProp: prop => prop !== 'density'
76
+ })(({
77
+ theme
78
+ }) => ({
79
+ variants: [{
80
+ props: {
81
+ density: 'compact'
82
+ },
83
+ style: {
84
+ padding: theme.spacing(0.5)
85
+ }
86
+ }]
87
+ }));
44
88
  const BaseSelect = forwardRef(function BaseSelect(props, ref) {
45
- const rootProps = useGridRootProps();
46
89
  const {
47
90
  id,
48
91
  label,
@@ -58,21 +101,27 @@ const BaseSelect = forwardRef(function BaseSelect(props, ref) {
58
101
  fullWidth
59
102
  } = props,
60
103
  rest = _objectWithoutPropertiesLoose(props, _excluded);
61
- return /*#__PURE__*/_jsxs(MUIFormControl, _extends({
104
+ const menuProps = {
105
+ PaperProps: {
106
+ onKeyDown
107
+ }
108
+ };
109
+ if (onClose) {
110
+ menuProps.onClose = onClose;
111
+ }
112
+ return /*#__PURE__*/_jsxs(MUIFormControl, {
62
113
  size: size,
63
114
  fullWidth: fullWidth,
64
115
  style: style,
65
- disabled: disabled
66
- }, rootProps.slotProps?.baseFormControl, {
116
+ disabled: disabled,
67
117
  ref: ref,
68
- children: [/*#__PURE__*/_jsx(MUIInputLabel, _extends({
118
+ children: [/*#__PURE__*/_jsx(MUIInputLabel, {
69
119
  id: labelId,
70
120
  htmlFor: id,
71
121
  shrink: true,
72
- variant: "outlined"
73
- }, rootProps.slotProps?.baseInputLabel, {
122
+ variant: "outlined",
74
123
  children: label
75
- })), /*#__PURE__*/_jsx(MUISelect, _extends({
124
+ }), /*#__PURE__*/_jsx(MUISelect, _extends({
76
125
  id: id,
77
126
  labelId: labelId,
78
127
  label: label,
@@ -83,15 +132,10 @@ const BaseSelect = forwardRef(function BaseSelect(props, ref) {
83
132
  notched: true,
84
133
  inputProps: slotProps?.htmlInput,
85
134
  onOpen: onOpen,
86
- MenuProps: {
87
- onClose,
88
- PaperProps: {
89
- onKeyDown
90
- }
91
- },
135
+ MenuProps: menuProps,
92
136
  size: size
93
137
  }))]
94
- }));
138
+ });
95
139
  });
96
140
 
97
141
  /* eslint-disable material-ui/disallow-react-api-in-server-components */
@@ -111,7 +155,7 @@ const iconSlots = {
111
155
  densityCompactIcon: GridViewHeadlineIcon,
112
156
  densityStandardIcon: GridTableRowsIcon,
113
157
  densityComfortableIcon: GridViewStreamIcon,
114
- exportIcon: GridSaveAltIcon,
158
+ exportIcon: GridDownloadIcon,
115
159
  moreActionsIcon: GridMoreVertIcon,
116
160
  treeDataCollapseIcon: GridExpandMoreIcon,
117
161
  treeDataExpandIcon: GridKeyboardArrowRight,
@@ -121,7 +165,7 @@ const iconSlots = {
121
165
  detailPanelCollapseIcon: GridRemoveIcon,
122
166
  rowReorderIcon: GridDragIcon,
123
167
  quickFilterIcon: GridSearchIcon,
124
- quickFilterClearIcon: GridCloseIcon,
168
+ quickFilterClearIcon: GridClearIcon,
125
169
  columnMenuHideIcon: GridVisibilityOffIcon,
126
170
  columnMenuSortAscendingIcon: GridArrowUpwardIcon,
127
171
  columnMenuSortDescendingIcon: GridArrowDownwardIcon,
@@ -135,6 +179,7 @@ const iconSlots = {
135
179
  menuItemCheckIcon: GridCheckIcon
136
180
  };
137
181
  const baseSlots = {
182
+ baseAutocomplete: BaseAutocomplete,
138
183
  baseBadge: MUIBadge,
139
184
  baseCheckbox: /*#__PURE__*/React.forwardRef(BaseCheckbox),
140
185
  baseCircularProgress: MUICircularProgress,
@@ -144,38 +189,29 @@ const baseSlots = {
144
189
  baseMenuList: BaseMenuList,
145
190
  baseMenuItem: BaseMenuItem,
146
191
  baseTextField: BaseTextField,
147
- baseFormControl: MUIFormControl,
148
192
  baseButton: MUIButton,
149
193
  baseIconButton: MUIIconButton,
150
- baseInputAdornment: MUIInputAdornment,
151
194
  baseTooltip: MUITooltip,
152
195
  basePopper: BasePopper,
153
- baseInputLabel: MUIInputLabel,
154
196
  baseSelect: BaseSelect,
155
197
  baseSelectOption: BaseSelectOption,
156
198
  baseSkeleton: MUISkeleton,
157
- baseSwitch: MUISwitch,
158
- baseChip: MUIChip
199
+ baseSwitch: MUISwitch
159
200
  };
160
201
  const materialSlots = _extends({}, baseSlots, iconSlots);
161
202
  export default materialSlots;
162
- const CHECKBOX_COMPACT = {
163
- p: 0.5
164
- };
165
203
  function BaseCheckbox(props, ref) {
166
204
  const {
167
205
  autoFocus,
168
206
  label,
169
207
  fullWidth,
170
208
  slotProps,
171
- className,
172
- density
209
+ className
173
210
  } = props,
174
211
  other = _objectWithoutPropertiesLoose(props, _excluded2);
175
212
  const elementRef = React.useRef(null);
176
213
  const handleRef = useForkRef(elementRef, ref);
177
214
  const rippleRef = React.useRef(null);
178
- const sx = density === 'compact' ? CHECKBOX_COMPACT : undefined;
179
215
  React.useEffect(() => {
180
216
  if (autoFocus) {
181
217
  const input = elementRef.current?.querySelector('input');
@@ -189,27 +225,22 @@ function BaseCheckbox(props, ref) {
189
225
  }
190
226
  }, [autoFocus]);
191
227
  if (!label) {
192
- return /*#__PURE__*/_jsx(MUICheckbox, _extends({}, other, {
228
+ return /*#__PURE__*/_jsx(Checkbox, _extends({}, other, {
193
229
  className: className,
194
230
  inputProps: slotProps?.htmlInput,
195
231
  ref: handleRef,
196
- sx: sx,
197
232
  touchRippleRef: rippleRef
198
233
  }));
199
234
  }
200
- return /*#__PURE__*/_jsx(MUIFormControlLabel, {
235
+ return /*#__PURE__*/_jsx(FormControlLabel, {
201
236
  className: className,
202
- control: /*#__PURE__*/_jsx(MUICheckbox, _extends({}, other, {
237
+ control: /*#__PURE__*/_jsx(Checkbox, _extends({}, other, {
203
238
  inputProps: slotProps?.htmlInput,
204
239
  ref: handleRef,
205
- sx: sx,
206
240
  touchRippleRef: rippleRef
207
241
  })),
208
242
  label: label,
209
- sx: fullWidth ? {
210
- width: '100%',
211
- margin: 0
212
- } : undefined
243
+ fullWidth: fullWidth
213
244
  });
214
245
  }
215
246
  function BaseMenuList(props) {
@@ -245,20 +276,102 @@ function BaseTextField(props) {
245
276
  variant: "outlined"
246
277
  }, rest, {
247
278
  inputProps: slotProps?.htmlInput,
248
- InputProps: slotProps?.input,
279
+ InputProps: transformInputProps(slotProps?.input),
249
280
  InputLabelProps: _extends({
250
281
  shrink: true
251
282
  }, slotProps?.inputLabel)
252
283
  }));
253
284
  }
254
- function BaseInput(props) {
285
+ function BaseAutocomplete(props) {
286
+ const rootProps = useGridRootProps();
255
287
  const {
288
+ id,
289
+ multiple,
290
+ freeSolo,
291
+ options,
292
+ getOptionLabel,
293
+ isOptionEqualToValue,
294
+ value,
295
+ onChange,
296
+ label,
297
+ placeholder,
256
298
  slotProps
257
299
  } = props,
258
300
  rest = _objectWithoutPropertiesLoose(props, _excluded5);
259
- return /*#__PURE__*/_jsx(MUIInputBase, _extends({}, rest, {
260
- inputProps: slotProps?.htmlInput
261
- }));
301
+ return /*#__PURE__*/_jsx(MUIAutocomplete, _extends({
302
+ id: id,
303
+ multiple: multiple,
304
+ freeSolo: freeSolo,
305
+ options: options,
306
+ getOptionLabel: getOptionLabel,
307
+ isOptionEqualToValue: isOptionEqualToValue,
308
+ value: value,
309
+ onChange: onChange,
310
+ renderTags: (currentValue, getTagProps) => currentValue.map((option, index) => {
311
+ const _getTagProps = getTagProps({
312
+ index
313
+ }),
314
+ {
315
+ key
316
+ } = _getTagProps,
317
+ tagProps = _objectWithoutPropertiesLoose(_getTagProps, _excluded6);
318
+ return /*#__PURE__*/_jsx(MUIChip, _extends({
319
+ variant: "outlined",
320
+ size: "small",
321
+ label: typeof option === 'string' ? option : getOptionLabel?.(option)
322
+ }, tagProps), key);
323
+ }),
324
+ renderInput: params => {
325
+ const {
326
+ inputProps,
327
+ InputProps,
328
+ InputLabelProps
329
+ } = params,
330
+ inputRest = _objectWithoutPropertiesLoose(params, _excluded7);
331
+ return /*#__PURE__*/_jsx(rootProps.slots.baseTextField, _extends({}, inputRest, {
332
+ label: label,
333
+ placeholder: placeholder,
334
+ slotProps: {
335
+ input: InputProps,
336
+ inputLabel: InputLabelProps,
337
+ htmlInput: inputProps
338
+ }
339
+ }, slotProps?.textField, rootProps.slotProps?.baseTextField));
340
+ }
341
+ }, rest));
342
+ }
343
+ function BaseInput(props) {
344
+ return /*#__PURE__*/_jsx(MUIInputBase, _extends({}, transformInputProps(props)));
345
+ }
346
+ function transformInputProps(props) {
347
+ if (!props) {
348
+ return undefined;
349
+ }
350
+ const {
351
+ slotProps
352
+ } = props,
353
+ rest = _objectWithoutPropertiesLoose(props, _excluded8);
354
+ const result = rest;
355
+ if (result.startAdornment) {
356
+ result.startAdornment = /*#__PURE__*/_jsx(InputAdornment, {
357
+ position: "start",
358
+ children: result.startAdornment
359
+ });
360
+ }
361
+ if (result.endAdornment) {
362
+ result.endAdornment = /*#__PURE__*/_jsx(InputAdornment, {
363
+ position: "end",
364
+ children: result.endAdornment
365
+ });
366
+ }
367
+ if (slotProps?.htmlInput) {
368
+ if (result.inputProps) {
369
+ result.inputProps = _extends({}, result.inputProps, slotProps?.htmlInput);
370
+ } else {
371
+ result.inputProps = slotProps?.htmlInput;
372
+ }
373
+ }
374
+ return result;
262
375
  }
263
376
  const transformOrigin = {
264
377
  'bottom-start': 'top left',
@@ -353,15 +466,17 @@ function focusTrapWrapper(props, content) {
353
466
  return /*#__PURE__*/_jsx(MUIFocusTrap, {
354
467
  open: true,
355
468
  disableEnforceFocus: true,
356
- isEnabled: () => props.focusTrapEnabled ?? true,
357
- children: content
469
+ children: /*#__PURE__*/_jsx("div", {
470
+ tabIndex: -1,
471
+ children: content
472
+ })
358
473
  });
359
474
  }
360
475
  function BaseSelectOption(_ref) {
361
476
  let {
362
477
  native
363
478
  } = _ref,
364
- props = _objectWithoutPropertiesLoose(_ref, _excluded6);
479
+ props = _objectWithoutPropertiesLoose(_ref, _excluded9);
365
480
  if (native) {
366
481
  return /*#__PURE__*/_jsx("option", _extends({}, props));
367
482
  }
@@ -0,0 +1,5 @@
1
+ import { type GridCSSVariablesInterface } from "../constants/cssVariables.js";
2
+ export declare function useMaterialCSSVariables(): {
3
+ id: string;
4
+ variables: GridCSSVariablesInterface;
5
+ };