@mui/x-data-grid-premium 5.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/CHANGELOG.md +4052 -0
  2. package/DataGridPremium/DataGridPremium.d.ts +9 -0
  3. package/DataGridPremium/DataGridPremium.js +986 -0
  4. package/DataGridPremium/index.d.ts +2 -0
  5. package/DataGridPremium/index.js +2 -0
  6. package/DataGridPremium/package.json +6 -0
  7. package/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -0
  8. package/DataGridPremium/useDataGridPremiumComponent.js +78 -0
  9. package/DataGridPremium/useDataGridPremiumProps.d.ts +6 -0
  10. package/DataGridPremium/useDataGridPremiumProps.js +37 -0
  11. package/LICENSE +12 -0
  12. package/README.md +31 -0
  13. package/components/GridExcelExportMenuItem.d.ts +9 -0
  14. package/components/GridExcelExportMenuItem.js +32 -0
  15. package/components/GridGroupingColumnLeafCell.d.ts +4 -0
  16. package/components/GridGroupingColumnLeafCell.js +22 -0
  17. package/components/GridGroupingCriteriaCell.d.ts +7 -0
  18. package/components/GridGroupingCriteriaCell.js +78 -0
  19. package/components/GridRowGroupableColumnMenuItems.d.ts +11 -0
  20. package/components/GridRowGroupableColumnMenuItems.js +63 -0
  21. package/components/GridRowGroupingColumnMenuItems.d.ts +11 -0
  22. package/components/GridRowGroupingColumnMenuItems.js +58 -0
  23. package/components/index.d.ts +1 -0
  24. package/components/index.js +1 -0
  25. package/components/package.json +6 -0
  26. package/hooks/features/export/gridExcelExportInterface.d.ts +58 -0
  27. package/hooks/features/export/gridExcelExportInterface.js +1 -0
  28. package/hooks/features/export/index.d.ts +1 -0
  29. package/hooks/features/export/index.js +1 -0
  30. package/hooks/features/export/serializer/excelSerializer.d.ts +14 -0
  31. package/hooks/features/export/serializer/excelSerializer.js +218 -0
  32. package/hooks/features/export/useGridExcelExport.d.ts +10 -0
  33. package/hooks/features/export/useGridExcelExport.js +77 -0
  34. package/hooks/features/index.d.ts +2 -0
  35. package/hooks/features/index.js +3 -0
  36. package/hooks/features/rowGrouping/createGroupingColDef.d.ts +42 -0
  37. package/hooks/features/rowGrouping/createGroupingColDef.js +318 -0
  38. package/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +37 -0
  39. package/hooks/features/rowGrouping/gridRowGroupingInterfaces.js +1 -0
  40. package/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +4 -0
  41. package/hooks/features/rowGrouping/gridRowGroupingSelector.js +5 -0
  42. package/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +27 -0
  43. package/hooks/features/rowGrouping/gridRowGroupingUtils.js +139 -0
  44. package/hooks/features/rowGrouping/index.d.ts +3 -0
  45. package/hooks/features/rowGrouping/index.js +3 -0
  46. package/hooks/features/rowGrouping/useGridRowGrouping.d.ts +11 -0
  47. package/hooks/features/rowGrouping/useGridRowGrouping.js +200 -0
  48. package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -0
  49. package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +201 -0
  50. package/hooks/index.d.ts +2 -0
  51. package/hooks/index.js +3 -0
  52. package/hooks/package.json +6 -0
  53. package/hooks/utils/index.d.ts +1 -0
  54. package/hooks/utils/index.js +1 -0
  55. package/hooks/utils/useGridApiContext.d.ts +4 -0
  56. package/hooks/utils/useGridApiContext.js +2 -0
  57. package/hooks/utils/useGridApiRef.d.ts +4 -0
  58. package/hooks/utils/useGridApiRef.js +2 -0
  59. package/hooks/utils/useGridRootProps.d.ts +2 -0
  60. package/hooks/utils/useGridRootProps.js +2 -0
  61. package/hooks/utils/useKeepGroupedColumnsHidden.d.ts +12 -0
  62. package/hooks/utils/useKeepGroupedColumnsHidden.js +50 -0
  63. package/index.d.ts +22 -0
  64. package/index.js +25 -0
  65. package/legacy/DataGridPremium/DataGridPremium.js +986 -0
  66. package/legacy/DataGridPremium/index.js +2 -0
  67. package/legacy/DataGridPremium/useDataGridPremiumComponent.js +78 -0
  68. package/legacy/DataGridPremium/useDataGridPremiumProps.js +46 -0
  69. package/legacy/components/GridExcelExportMenuItem.js +30 -0
  70. package/legacy/components/GridGroupingColumnLeafCell.js +20 -0
  71. package/legacy/components/GridGroupingCriteriaCell.js +74 -0
  72. package/legacy/components/GridRowGroupableColumnMenuItems.js +61 -0
  73. package/legacy/components/GridRowGroupingColumnMenuItems.js +56 -0
  74. package/legacy/components/index.js +1 -0
  75. package/legacy/hooks/features/export/gridExcelExportInterface.js +1 -0
  76. package/legacy/hooks/features/export/index.js +1 -0
  77. package/legacy/hooks/features/export/serializer/excelSerializer.js +260 -0
  78. package/legacy/hooks/features/export/useGridExcelExport.js +111 -0
  79. package/legacy/hooks/features/index.js +3 -0
  80. package/legacy/hooks/features/rowGrouping/createGroupingColDef.js +319 -0
  81. package/legacy/hooks/features/rowGrouping/gridRowGroupingInterfaces.js +1 -0
  82. package/legacy/hooks/features/rowGrouping/gridRowGroupingSelector.js +13 -0
  83. package/legacy/hooks/features/rowGrouping/gridRowGroupingUtils.js +147 -0
  84. package/legacy/hooks/features/rowGrouping/index.js +3 -0
  85. package/legacy/hooks/features/rowGrouping/useGridRowGrouping.js +206 -0
  86. package/legacy/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +215 -0
  87. package/legacy/hooks/index.js +3 -0
  88. package/legacy/hooks/utils/index.js +1 -0
  89. package/legacy/hooks/utils/useGridApiContext.js +2 -0
  90. package/legacy/hooks/utils/useGridApiRef.js +2 -0
  91. package/legacy/hooks/utils/useGridRootProps.js +2 -0
  92. package/legacy/hooks/utils/useKeepGroupedColumnsHidden.js +50 -0
  93. package/legacy/index.js +25 -0
  94. package/legacy/models/dataGridPremiumProps.js +1 -0
  95. package/legacy/models/gridApiPremium.js +1 -0
  96. package/legacy/models/gridGroupingValueGetterParams.js +1 -0
  97. package/legacy/models/gridStatePremium.js +1 -0
  98. package/legacy/models/index.js +1 -0
  99. package/legacy/typeOverloads/index.js +1 -0
  100. package/legacy/typeOverloads/modules.js +33 -0
  101. package/legacy/typeOverloads/reexports.js +6 -0
  102. package/legacy/utils/releaseInfo.js +15 -0
  103. package/models/dataGridPremiumProps.d.ts +64 -0
  104. package/models/dataGridPremiumProps.js +1 -0
  105. package/models/gridApiPremium.d.ts +13 -0
  106. package/models/gridApiPremium.js +1 -0
  107. package/models/gridGroupingValueGetterParams.d.ts +31 -0
  108. package/models/gridGroupingValueGetterParams.js +1 -0
  109. package/models/gridStatePremium.d.ts +14 -0
  110. package/models/gridStatePremium.js +1 -0
  111. package/models/index.d.ts +1 -0
  112. package/models/index.js +1 -0
  113. package/models/package.json +6 -0
  114. package/modern/DataGridPremium/DataGridPremium.js +986 -0
  115. package/modern/DataGridPremium/index.js +2 -0
  116. package/modern/DataGridPremium/useDataGridPremiumComponent.js +76 -0
  117. package/modern/DataGridPremium/useDataGridPremiumProps.js +37 -0
  118. package/modern/components/GridExcelExportMenuItem.js +32 -0
  119. package/modern/components/GridGroupingColumnLeafCell.js +20 -0
  120. package/modern/components/GridGroupingCriteriaCell.js +76 -0
  121. package/modern/components/GridRowGroupableColumnMenuItems.js +61 -0
  122. package/modern/components/GridRowGroupingColumnMenuItems.js +56 -0
  123. package/modern/components/index.js +1 -0
  124. package/modern/hooks/features/export/gridExcelExportInterface.js +1 -0
  125. package/modern/hooks/features/export/index.js +1 -0
  126. package/modern/hooks/features/export/serializer/excelSerializer.js +216 -0
  127. package/modern/hooks/features/export/useGridExcelExport.js +73 -0
  128. package/modern/hooks/features/index.js +3 -0
  129. package/modern/hooks/features/rowGrouping/createGroupingColDef.js +302 -0
  130. package/modern/hooks/features/rowGrouping/gridRowGroupingInterfaces.js +1 -0
  131. package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.js +5 -0
  132. package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.js +137 -0
  133. package/modern/hooks/features/rowGrouping/index.js +3 -0
  134. package/modern/hooks/features/rowGrouping/useGridRowGrouping.js +192 -0
  135. package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +201 -0
  136. package/modern/hooks/index.js +3 -0
  137. package/modern/hooks/utils/index.js +1 -0
  138. package/modern/hooks/utils/useGridApiContext.js +2 -0
  139. package/modern/hooks/utils/useGridApiRef.js +2 -0
  140. package/modern/hooks/utils/useGridRootProps.js +2 -0
  141. package/modern/hooks/utils/useKeepGroupedColumnsHidden.js +46 -0
  142. package/modern/index.js +25 -0
  143. package/modern/models/dataGridPremiumProps.js +1 -0
  144. package/modern/models/gridApiPremium.js +1 -0
  145. package/modern/models/gridGroupingValueGetterParams.js +1 -0
  146. package/modern/models/gridStatePremium.js +1 -0
  147. package/modern/models/index.js +1 -0
  148. package/modern/typeOverloads/index.js +1 -0
  149. package/modern/typeOverloads/modules.js +33 -0
  150. package/modern/typeOverloads/reexports.js +6 -0
  151. package/modern/utils/releaseInfo.js +15 -0
  152. package/node/DataGridPremium/DataGridPremium.js +1009 -0
  153. package/node/DataGridPremium/index.js +30 -0
  154. package/node/DataGridPremium/useDataGridPremiumComponent.js +91 -0
  155. package/node/DataGridPremium/useDataGridPremiumProps.js +57 -0
  156. package/node/components/GridExcelExportMenuItem.js +49 -0
  157. package/node/components/GridGroupingColumnLeafCell.js +38 -0
  158. package/node/components/GridGroupingCriteriaCell.js +99 -0
  159. package/node/components/GridRowGroupableColumnMenuItems.js +82 -0
  160. package/node/components/GridRowGroupingColumnMenuItems.js +78 -0
  161. package/node/components/index.js +18 -0
  162. package/node/hooks/features/export/gridExcelExportInterface.js +5 -0
  163. package/node/hooks/features/export/index.js +18 -0
  164. package/node/hooks/features/export/serializer/excelSerializer.js +233 -0
  165. package/node/hooks/features/export/useGridExcelExport.js +95 -0
  166. package/node/hooks/features/index.js +31 -0
  167. package/node/hooks/features/rowGrouping/createGroupingColDef.js +341 -0
  168. package/node/hooks/features/rowGrouping/gridRowGroupingInterfaces.js +5 -0
  169. package/node/hooks/features/rowGrouping/gridRowGroupingSelector.js +18 -0
  170. package/node/hooks/features/rowGrouping/gridRowGroupingUtils.js +172 -0
  171. package/node/hooks/features/rowGrouping/index.js +51 -0
  172. package/node/hooks/features/rowGrouping/useGridRowGrouping.js +228 -0
  173. package/node/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +223 -0
  174. package/node/hooks/index.js +31 -0
  175. package/node/hooks/utils/index.js +18 -0
  176. package/node/hooks/utils/useGridApiContext.js +11 -0
  177. package/node/hooks/utils/useGridApiRef.js +11 -0
  178. package/node/hooks/utils/useGridRootProps.js +11 -0
  179. package/node/hooks/utils/useKeepGroupedColumnsHidden.js +66 -0
  180. package/node/index.js +272 -0
  181. package/node/models/dataGridPremiumProps.js +5 -0
  182. package/node/models/gridApiPremium.js +5 -0
  183. package/node/models/gridGroupingValueGetterParams.js +5 -0
  184. package/node/models/gridStatePremium.js +5 -0
  185. package/node/models/index.js +18 -0
  186. package/node/typeOverloads/index.js +3 -0
  187. package/node/typeOverloads/modules.js +34 -0
  188. package/node/typeOverloads/reexports.js +29 -0
  189. package/node/utils/releaseInfo.js +25 -0
  190. package/package.json +63 -0
  191. package/typeOverloads/index.d.ts +1 -0
  192. package/typeOverloads/index.js +1 -0
  193. package/typeOverloads/modules.d.ts +0 -0
  194. package/typeOverloads/modules.js +33 -0
  195. package/typeOverloads/package.json +6 -0
  196. package/typeOverloads/reexports.d.ts +22 -0
  197. package/typeOverloads/reexports.js +6 -0
  198. package/utils/releaseInfo.d.ts +1 -0
  199. package/utils/releaseInfo.js +15 -0
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { GridApiCommon } from '@mui/x-data-grid-pro';
3
+ import { GridApiPremium } from '../../models/gridApiPremium';
4
+ export declare const useGridApiContext: <GridApi extends GridApiCommon = GridApiPremium>() => React.MutableRefObject<GridApi>;
@@ -0,0 +1,2 @@
1
+ import { useGridApiContext as useCommunityGridApiContext } from '@mui/x-data-grid-pro';
2
+ export const useGridApiContext = useCommunityGridApiContext;
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { GridApiCommon } from '@mui/x-data-grid-pro';
3
+ import { GridApiPremium } from '../../models/gridApiPremium';
4
+ export declare const useGridApiRef: <Api extends GridApiCommon = GridApiPremium>() => React.MutableRefObject<Api>;
@@ -0,0 +1,2 @@
1
+ import { useGridApiRef as useCommunityGridApiRef } from '@mui/x-data-grid-pro';
2
+ export const useGridApiRef = useCommunityGridApiRef;
@@ -0,0 +1,2 @@
1
+ import { DataGridPremiumProcessedProps } from '../../models/dataGridPremiumProps';
2
+ export declare const useGridRootProps: () => DataGridPremiumProcessedProps;
@@ -0,0 +1,2 @@
1
+ import { useGridRootProps as useCommunityGridRootProps } from '@mui/x-data-grid-pro';
2
+ export const useGridRootProps = useCommunityGridRootProps;
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+ import { GridApi } from '@mui/x-data-grid-pro';
3
+ import { GridInitialStatePremium } from '../../models/gridStatePremium';
4
+ import { DataGridPremiumProps } from '../../models/dataGridPremiumProps';
5
+ /**
6
+ * Automatically hide columns when added to the row grouping model and stop hiding them when they are removed.
7
+ * Handles both the `props.initialState.rowGrouping.model` and `props.rowGroupingModel`
8
+ * Does not work when used with the `hide` property of `GridColDef`
9
+ */
10
+ export declare const useKeepGroupedColumnsHidden: (props: {
11
+ apiRef: React.MutableRefObject<GridApi>;
12
+ } & Pick<DataGridPremiumProps, 'initialState' | 'rowGroupingModel'>) => GridInitialStatePremium;
@@ -0,0 +1,50 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { gridColumnVisibilityModelSelector, GridEvents } from '@mui/x-data-grid-pro';
4
+
5
+ const updateColumnVisibilityModel = (columnVisibilityModel, rowGroupingModel, prevRowGroupingModel) => {
6
+ const newColumnVisibilityModel = _extends({}, columnVisibilityModel);
7
+
8
+ rowGroupingModel == null ? void 0 : rowGroupingModel.forEach(field => {
9
+ if (!(prevRowGroupingModel != null && prevRowGroupingModel.includes(field))) {
10
+ newColumnVisibilityModel[field] = false;
11
+ }
12
+ });
13
+ prevRowGroupingModel == null ? void 0 : prevRowGroupingModel.forEach(field => {
14
+ if (!(rowGroupingModel != null && rowGroupingModel.includes(field))) {
15
+ newColumnVisibilityModel[field] = true;
16
+ }
17
+ });
18
+ return newColumnVisibilityModel;
19
+ };
20
+ /**
21
+ * Automatically hide columns when added to the row grouping model and stop hiding them when they are removed.
22
+ * Handles both the `props.initialState.rowGrouping.model` and `props.rowGroupingModel`
23
+ * Does not work when used with the `hide` property of `GridColDef`
24
+ */
25
+
26
+
27
+ export const useKeepGroupedColumnsHidden = props => {
28
+ var _props$rowGroupingMod, _props$initialState, _props$initialState$r;
29
+
30
+ const initialProps = React.useRef(props);
31
+ const rowGroupingModel = React.useRef((_props$rowGroupingMod = props.rowGroupingModel) != null ? _props$rowGroupingMod : (_props$initialState = props.initialState) == null ? void 0 : (_props$initialState$r = _props$initialState.rowGrouping) == null ? void 0 : _props$initialState$r.model);
32
+ React.useEffect(() => {
33
+ props.apiRef.current.subscribeEvent(GridEvents.rowGroupingModelChange, newModel => {
34
+ const columnVisibilityModel = updateColumnVisibilityModel(gridColumnVisibilityModelSelector(props.apiRef), newModel, rowGroupingModel.current);
35
+ props.apiRef.current.setColumnVisibilityModel(columnVisibilityModel);
36
+ rowGroupingModel.current = newModel;
37
+ });
38
+ }, [props.apiRef]);
39
+ return React.useMemo(() => {
40
+ var _invariantInitialStat;
41
+
42
+ const invariantInitialState = initialProps.current.initialState;
43
+ const columnVisibilityModel = updateColumnVisibilityModel(invariantInitialState == null ? void 0 : (_invariantInitialStat = invariantInitialState.columns) == null ? void 0 : _invariantInitialStat.columnVisibilityModel, rowGroupingModel.current, undefined);
44
+ return _extends({}, invariantInitialState, {
45
+ columns: _extends({}, invariantInitialState == null ? void 0 : invariantInitialState.columns, {
46
+ columnVisibilityModel
47
+ })
48
+ });
49
+ }, []);
50
+ };
package/index.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ import './typeOverloads';
2
+ import '@mui/x-data-grid-pro/typeOverloads';
3
+ export { LicenseInfo } from '@mui/x-license-pro';
4
+ export * from '@mui/x-data-grid/components';
5
+ export * from '@mui/x-data-grid-pro/components';
6
+ export * from '@mui/x-data-grid/constants';
7
+ export * from '@mui/x-data-grid/hooks';
8
+ export * from '@mui/x-data-grid-pro/hooks';
9
+ export * from '@mui/x-data-grid/locales';
10
+ export * from '@mui/x-data-grid/models';
11
+ export * from '@mui/x-data-grid-pro/models';
12
+ export * from '@mui/x-data-grid/context';
13
+ export * from '@mui/x-data-grid/colDef';
14
+ export * from '@mui/x-data-grid/utils';
15
+ export * from '@mui/x-data-grid-pro/utils';
16
+ export * from './DataGridPremium';
17
+ export * from './hooks';
18
+ export * from './models';
19
+ export * from './components';
20
+ export type { DataGridPremiumProps, GridExperimentalPremiumFeatures, } from './models/dataGridPremiumProps';
21
+ export { useGridApiContext, useGridApiRef, useGridRootProps } from './typeOverloads/reexports';
22
+ export type { GridApiRef, GridApi, GridInitialState, GridState } from './typeOverloads/reexports';
package/index.js ADDED
@@ -0,0 +1,25 @@
1
+ /** @license MUI v5.11.0
2
+ *
3
+ * This source code is licensed under the MIT license found in the
4
+ * LICENSE file in the root directory of this source tree.
5
+ */
6
+ import './typeOverloads';
7
+ import '@mui/x-data-grid-pro/typeOverloads';
8
+ export { LicenseInfo } from '@mui/x-license-pro';
9
+ export * from '@mui/x-data-grid/components';
10
+ export * from '@mui/x-data-grid-pro/components';
11
+ export * from '@mui/x-data-grid/constants';
12
+ export * from '@mui/x-data-grid/hooks';
13
+ export * from '@mui/x-data-grid-pro/hooks';
14
+ export * from '@mui/x-data-grid/locales';
15
+ export * from '@mui/x-data-grid/models';
16
+ export * from '@mui/x-data-grid-pro/models';
17
+ export * from '@mui/x-data-grid/context';
18
+ export * from '@mui/x-data-grid/colDef';
19
+ export * from '@mui/x-data-grid/utils';
20
+ export * from '@mui/x-data-grid-pro/utils';
21
+ export * from './DataGridPremium';
22
+ export * from './hooks';
23
+ export * from './models';
24
+ export * from './components';
25
+ export { useGridApiContext, useGridApiRef, useGridRootProps } from './typeOverloads/reexports';