@mui/x-data-grid-premium 8.0.0-alpha.8 → 8.0.0-beta.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.
- package/CHANGELOG.md +2566 -687
- package/DataGridPremium/DataGrid.d.ts +1 -1
- package/DataGridPremium/DataGridPremium.d.ts +6 -6
- package/DataGridPremium/DataGridPremium.js +61 -35
- package/DataGridPremium/index.d.ts +3 -3
- package/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -4
- package/DataGridPremium/useDataGridPremiumComponent.js +5 -4
- package/DataGridPremium/useDataGridPremiumProps.d.ts +2 -2
- package/DataGridPremium/useDataGridPremiumProps.js +2 -2
- package/README.md +1 -1
- package/components/GridAggregationHeader.d.ts +3 -3
- package/components/GridAggregationHeader.js +13 -12
- package/components/GridAggregationRowOverlay.d.ts +3 -0
- package/components/GridAggregationRowOverlay.js +44 -0
- package/components/GridBottomContainer.d.ts +3 -0
- package/components/GridBottomContainer.js +51 -0
- package/components/GridColumnMenuAggregationItem.d.ts +2 -2
- package/components/GridColumnMenuAggregationItem.js +36 -46
- package/components/GridColumnMenuRowGroupItem.d.ts +1 -1
- package/components/GridColumnMenuRowUngroupItem.d.ts +1 -1
- package/components/GridDataSourceGroupingCriteriaCell.d.ts +2 -2
- package/components/GridDataSourceGroupingCriteriaCell.js +8 -12
- package/components/GridExcelExportMenuItem.d.ts +3 -3
- package/components/GridFooterCell.d.ts +2 -2
- package/components/GridFooterCell.js +5 -6
- package/components/GridGroupingColumnFooterCell.d.ts +1 -1
- package/components/GridGroupingColumnFooterCell.js +2 -1
- package/components/GridGroupingColumnLeafCell.d.ts +1 -1
- package/components/GridGroupingColumnLeafCell.js +3 -9
- package/components/GridGroupingCriteriaCell.d.ts +2 -2
- package/components/GridGroupingCriteriaCell.js +3 -8
- package/components/GridPremiumColumnMenu.d.ts +26 -26
- package/components/GridPremiumToolbar.d.ts +3 -0
- package/components/GridPremiumToolbar.js +31 -0
- package/components/export/ExportExcel.d.ts +29 -0
- package/components/export/ExportExcel.js +216 -0
- package/components/export/index.d.ts +1 -0
- package/components/export/index.js +16 -0
- package/components/index.d.ts +6 -5
- package/components/index.js +13 -1
- package/components/promptControl/GridToolbarPromptControl.d.ts +22 -22
- package/components/promptControl/GridToolbarPromptControl.js +33 -20
- package/components/promptControl/RecordButton.d.ts +9 -9
- package/components/promptControl/index.d.ts +1 -1
- package/components/reexports.d.ts +1 -1
- package/constants/dataGridPremiumDefaultSlotsComponents.d.ts +1 -1
- package/constants/dataGridPremiumDefaultSlotsComponents.js +5 -1
- package/esm/DataGridPremium/DataGrid.d.ts +8 -0
- package/esm/DataGridPremium/DataGridPremium.d.ts +16 -0
- package/esm/DataGridPremium/DataGridPremium.js +61 -35
- package/esm/DataGridPremium/index.d.ts +3 -0
- package/esm/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -0
- package/esm/DataGridPremium/useDataGridPremiumComponent.js +6 -5
- package/esm/DataGridPremium/useDataGridPremiumProps.d.ts +6 -0
- package/esm/DataGridPremium/useDataGridPremiumProps.js +2 -2
- package/esm/components/GridAggregationHeader.d.ts +7 -0
- package/esm/components/GridAggregationHeader.js +13 -12
- package/esm/components/GridAggregationRowOverlay.d.ts +3 -0
- package/esm/components/GridAggregationRowOverlay.js +37 -0
- package/esm/components/GridBottomContainer.d.ts +3 -0
- package/esm/components/GridBottomContainer.js +43 -0
- package/esm/components/GridColumnMenuAggregationItem.d.ts +7 -0
- package/esm/components/GridColumnMenuAggregationItem.js +36 -46
- package/esm/components/GridColumnMenuRowGroupItem.d.ts +3 -0
- package/esm/components/GridColumnMenuRowUngroupItem.d.ts +3 -0
- package/esm/components/GridDataSourceGroupingCriteriaCell.d.ts +7 -0
- package/esm/components/GridDataSourceGroupingCriteriaCell.js +9 -13
- package/esm/components/GridExcelExportMenuItem.d.ts +9 -0
- package/esm/components/GridFooterCell.d.ts +9 -0
- package/esm/components/GridFooterCell.js +5 -6
- package/esm/components/GridGroupingColumnFooterCell.d.ts +4 -0
- package/esm/components/GridGroupingColumnFooterCell.js +2 -1
- package/esm/components/GridGroupingColumnLeafCell.d.ts +4 -0
- package/esm/components/GridGroupingColumnLeafCell.js +3 -8
- package/esm/components/GridGroupingCriteriaCell.d.ts +7 -0
- package/esm/components/GridGroupingCriteriaCell.js +3 -8
- package/esm/components/GridPremiumColumnMenu.d.ts +33 -0
- package/esm/components/GridPremiumToolbar.d.ts +3 -0
- package/esm/components/GridPremiumToolbar.js +23 -0
- package/esm/components/export/ExportExcel.d.ts +29 -0
- package/esm/components/export/ExportExcel.js +209 -0
- package/esm/components/export/index.d.ts +1 -0
- package/esm/components/export/index.js +1 -0
- package/esm/components/index.d.ts +6 -0
- package/esm/components/index.js +2 -1
- package/esm/components/promptControl/GridToolbarPromptControl.d.ts +26 -0
- package/esm/components/promptControl/GridToolbarPromptControl.js +33 -20
- package/esm/components/promptControl/RecordButton.d.ts +16 -0
- package/esm/components/promptControl/index.d.ts +1 -0
- package/esm/components/reexports.d.ts +1 -0
- package/esm/constants/dataGridPremiumDefaultSlotsComponents.d.ts +2 -0
- package/esm/constants/dataGridPremiumDefaultSlotsComponents.js +5 -1
- package/esm/hooks/features/aggregation/createAggregationLookup.d.ts +17 -0
- package/esm/hooks/features/aggregation/createAggregationLookup.js +3 -3
- package/esm/hooks/features/aggregation/gridAggregationFunctions.d.ts +8 -0
- package/esm/hooks/features/aggregation/gridAggregationInterfaces.d.ts +129 -0
- package/esm/hooks/features/aggregation/gridAggregationSelectors.d.ts +13 -0
- package/esm/hooks/features/aggregation/gridAggregationSelectors.js +2 -2
- package/esm/hooks/features/aggregation/gridAggregationUtils.d.ts +62 -0
- package/esm/hooks/features/aggregation/gridAggregationUtils.js +1 -1
- package/esm/hooks/features/aggregation/index.d.ts +4 -0
- package/esm/hooks/features/aggregation/useGridAggregation.d.ts +6 -0
- package/esm/hooks/features/aggregation/useGridAggregation.js +6 -8
- package/esm/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -0
- package/esm/hooks/features/aggregation/useGridAggregationPreProcessors.js +7 -6
- package/esm/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +81 -0
- package/esm/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
- package/esm/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +40 -0
- package/esm/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -0
- package/esm/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -1
- package/esm/hooks/features/cellSelection/index.d.ts +1 -0
- package/esm/hooks/features/cellSelection/useGridCellSelection.d.ts +6 -0
- package/esm/hooks/features/cellSelection/useGridCellSelection.js +15 -13
- package/esm/hooks/features/clipboard/useGridClipboardImport.d.ts +4 -0
- package/esm/hooks/features/clipboard/useGridClipboardImport.js +5 -5
- package/esm/hooks/features/dataSource/models.d.ts +54 -0
- package/esm/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -0
- package/esm/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
- package/esm/hooks/features/export/gridExcelExportInterface.d.ts +71 -0
- package/esm/hooks/features/export/index.d.ts +2 -0
- package/esm/hooks/features/export/index.js +1 -1
- package/esm/hooks/features/export/serializer/excelSerializer.d.ts +40 -0
- package/esm/hooks/features/export/serializer/excelSerializer.js +69 -180
- package/esm/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
- package/esm/hooks/features/export/serializer/setupExcelExportWebWorker.js +53 -0
- package/esm/hooks/features/export/serializer/utils.d.ts +36 -0
- package/esm/hooks/features/export/serializer/utils.js +93 -0
- package/esm/hooks/features/export/useGridExcelExport.d.ts +11 -0
- package/esm/hooks/features/export/useGridExcelExport.js +11 -5
- package/esm/hooks/features/index.d.ts +5 -0
- package/esm/hooks/features/promptControl/api.d.ts +2 -0
- package/esm/hooks/features/promptControl/index.d.ts +2 -0
- package/esm/hooks/features/promptControl/types.d.ts +25 -0
- package/esm/hooks/features/rowGrouping/createGroupingColDef.d.ts +57 -0
- package/esm/hooks/features/rowGrouping/createGroupingColDef.js +5 -5
- package/esm/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +44 -0
- package/esm/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +3 -0
- package/esm/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
- package/esm/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +54 -0
- package/esm/hooks/features/rowGrouping/gridRowGroupingUtils.js +5 -3
- package/esm/hooks/features/rowGrouping/index.d.ts +3 -0
- package/esm/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -0
- package/esm/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
- package/esm/hooks/features/rowGrouping/useGridRowGrouping.d.ts +11 -0
- package/esm/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
- package/esm/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -0
- package/esm/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
- package/esm/hooks/features/rows/index.d.ts +1 -0
- package/esm/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -0
- package/esm/hooks/index.d.ts +2 -0
- package/esm/hooks/utils/index.d.ts +1 -0
- package/esm/hooks/utils/useGridApiContext.d.ts +4 -0
- package/esm/hooks/utils/useGridApiRef.d.ts +4 -0
- package/esm/hooks/utils/useGridAriaAttributes.d.ts +2 -0
- package/esm/hooks/utils/useGridPrivateApiContext.d.ts +2 -0
- package/esm/hooks/utils/useGridRootProps.d.ts +2 -0
- package/esm/hooks/utils/useKeepGroupedColumnsHidden.d.ts +12 -0
- package/esm/hooks/utils/useKeepGroupedColumnsHidden.js +2 -2
- package/esm/index.d.ts +23 -0
- package/esm/index.js +6 -5
- package/esm/locales.d.ts +1 -0
- package/esm/material/icons.d.ts +15 -0
- package/esm/material/index.d.ts +8 -0
- package/esm/models/dataGridPremiumProps.d.ts +162 -0
- package/esm/models/gridApiPremium.d.ts +14 -0
- package/esm/models/gridGroupingValueGetter.d.ts +4 -0
- package/esm/models/gridPastedValueParser.d.ts +4 -0
- package/esm/models/gridPremiumIconSlotsComponent.d.ts +28 -0
- package/esm/models/gridPremiumSlotsComponent.d.ts +7 -0
- package/esm/models/gridStatePremium.d.ts +18 -0
- package/esm/models/index.d.ts +4 -0
- package/esm/package.json +1 -0
- package/esm/setupExcelExportWebWorker.d.ts +1 -0
- package/esm/setupExcelExportWebWorker.js +1 -0
- package/esm/themeAugmentation/index.d.ts +2 -0
- package/esm/themeAugmentation/overrides.d.ts +7 -0
- package/esm/themeAugmentation/props.d.ts +15 -0
- package/esm/typeOverloads/index.d.ts +2 -0
- package/esm/typeOverloads/modules.d.ts +97 -0
- package/esm/typeOverloads/reexports.d.ts +17 -0
- package/esm/utils/releaseInfo.d.ts +1 -0
- package/esm/utils/releaseInfo.js +1 -1
- package/hooks/features/aggregation/createAggregationLookup.d.ts +17 -11
- package/hooks/features/aggregation/createAggregationLookup.js +2 -2
- package/hooks/features/aggregation/gridAggregationFunctions.d.ts +7 -7
- package/hooks/features/aggregation/gridAggregationInterfaces.d.ts +81 -82
- package/hooks/features/aggregation/gridAggregationSelectors.d.ts +3 -3
- package/hooks/features/aggregation/gridAggregationSelectors.js +1 -2
- package/hooks/features/aggregation/gridAggregationUtils.d.ts +43 -26
- package/hooks/features/aggregation/gridAggregationUtils.js +1 -1
- package/hooks/features/aggregation/index.d.ts +4 -4
- package/hooks/features/aggregation/useGridAggregation.d.ts +4 -4
- package/hooks/features/aggregation/useGridAggregation.js +6 -8
- package/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -4
- package/hooks/features/aggregation/useGridAggregationPreProcessors.js +7 -6
- package/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +68 -62
- package/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
- package/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +34 -34
- package/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -2
- package/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -2
- package/hooks/features/cellSelection/index.d.ts +1 -1
- package/hooks/features/cellSelection/useGridCellSelection.d.ts +4 -4
- package/hooks/features/cellSelection/useGridCellSelection.js +13 -11
- package/hooks/features/clipboard/useGridClipboardImport.d.ts +3 -3
- package/hooks/features/clipboard/useGridClipboardImport.js +4 -4
- package/hooks/features/dataSource/models.d.ts +41 -34
- package/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -4
- package/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
- package/hooks/features/export/gridExcelExportInterface.d.ts +52 -52
- package/hooks/features/export/index.d.ts +2 -2
- package/hooks/features/export/index.js +2 -2
- package/hooks/features/export/serializer/excelSerializer.d.ts +25 -52
- package/hooks/features/export/serializer/excelSerializer.js +74 -187
- package/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
- package/hooks/features/export/serializer/setupExcelExportWebWorker.js +59 -0
- package/hooks/features/export/serializer/utils.d.ts +36 -0
- package/hooks/features/export/serializer/utils.js +106 -0
- package/hooks/features/export/useGridExcelExport.d.ts +4 -4
- package/hooks/features/export/useGridExcelExport.js +10 -3
- package/hooks/features/index.d.ts +5 -5
- package/hooks/features/promptControl/api.d.ts +2 -2
- package/hooks/features/promptControl/index.d.ts +2 -2
- package/hooks/features/promptControl/types.d.ts +15 -15
- package/hooks/features/rowGrouping/createGroupingColDef.d.ts +45 -33
- package/hooks/features/rowGrouping/createGroupingColDef.js +4 -4
- package/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +32 -32
- package/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +2 -2
- package/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
- package/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +32 -24
- package/hooks/features/rowGrouping/gridRowGroupingUtils.js +4 -2
- package/hooks/features/rowGrouping/index.d.ts +3 -3
- package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -4
- package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
- package/hooks/features/rowGrouping/useGridRowGrouping.d.ts +4 -4
- package/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
- package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -4
- package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
- package/hooks/features/rows/index.d.ts +1 -1
- package/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -1
- package/hooks/index.d.ts +2 -2
- package/hooks/utils/index.d.ts +1 -1
- package/hooks/utils/useGridApiContext.d.ts +4 -2
- package/hooks/utils/useGridApiRef.d.ts +4 -2
- package/hooks/utils/useGridAriaAttributes.d.ts +1 -1
- package/hooks/utils/useGridPrivateApiContext.d.ts +2 -2
- package/hooks/utils/useGridRootProps.d.ts +2 -2
- package/hooks/utils/useKeepGroupedColumnsHidden.d.ts +5 -5
- package/hooks/utils/useKeepGroupedColumnsHidden.js +2 -2
- package/index.d.ts +9 -17
- package/index.js +2 -11
- package/locales.d.ts +1 -1
- package/material/icons.d.ts +6 -6
- package/material/index.d.ts +6 -6
- package/models/dataGridPremiumProps.d.ts +141 -136
- package/models/gridApiPremium.d.ts +4 -6
- package/models/gridGroupingValueGetter.d.ts +3 -2
- package/models/gridPastedValueParser.d.ts +3 -2
- package/models/gridPremiumIconSlotsComponent.d.ts +26 -26
- package/models/gridPremiumSlotsComponent.d.ts +2 -3
- package/models/gridStatePremium.d.ts +7 -7
- package/models/index.d.ts +4 -4
- package/modern/DataGridPremium/DataGrid.d.ts +8 -0
- package/modern/DataGridPremium/DataGridPremium.d.ts +16 -0
- package/modern/DataGridPremium/DataGridPremium.js +61 -35
- package/modern/DataGridPremium/index.d.ts +3 -0
- package/modern/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -0
- package/modern/DataGridPremium/useDataGridPremiumComponent.js +6 -5
- package/modern/DataGridPremium/useDataGridPremiumProps.d.ts +6 -0
- package/modern/DataGridPremium/useDataGridPremiumProps.js +2 -2
- package/modern/components/GridAggregationHeader.d.ts +7 -0
- package/modern/components/GridAggregationHeader.js +13 -12
- package/modern/components/GridAggregationRowOverlay.d.ts +3 -0
- package/modern/components/GridAggregationRowOverlay.js +37 -0
- package/modern/components/GridBottomContainer.d.ts +3 -0
- package/modern/components/GridBottomContainer.js +43 -0
- package/modern/components/GridColumnMenuAggregationItem.d.ts +7 -0
- package/modern/components/GridColumnMenuAggregationItem.js +36 -46
- package/modern/components/GridColumnMenuRowGroupItem.d.ts +3 -0
- package/modern/components/GridColumnMenuRowUngroupItem.d.ts +3 -0
- package/modern/components/GridDataSourceGroupingCriteriaCell.d.ts +7 -0
- package/modern/components/GridDataSourceGroupingCriteriaCell.js +9 -13
- package/modern/components/GridExcelExportMenuItem.d.ts +9 -0
- package/modern/components/GridFooterCell.d.ts +9 -0
- package/modern/components/GridFooterCell.js +5 -6
- package/modern/components/GridGroupingColumnFooterCell.d.ts +4 -0
- package/modern/components/GridGroupingColumnFooterCell.js +2 -1
- package/modern/components/GridGroupingColumnLeafCell.d.ts +4 -0
- package/modern/components/GridGroupingColumnLeafCell.js +3 -8
- package/modern/components/GridGroupingCriteriaCell.d.ts +7 -0
- package/modern/components/GridGroupingCriteriaCell.js +3 -8
- package/modern/components/GridPremiumColumnMenu.d.ts +33 -0
- package/modern/components/GridPremiumToolbar.d.ts +3 -0
- package/modern/components/GridPremiumToolbar.js +23 -0
- package/modern/components/export/ExportExcel.d.ts +29 -0
- package/modern/components/export/ExportExcel.js +209 -0
- package/modern/components/export/index.d.ts +1 -0
- package/modern/components/export/index.js +1 -0
- package/modern/components/index.d.ts +6 -0
- package/modern/components/index.js +2 -1
- package/modern/components/promptControl/GridToolbarPromptControl.d.ts +26 -0
- package/modern/components/promptControl/GridToolbarPromptControl.js +33 -20
- package/modern/components/promptControl/RecordButton.d.ts +16 -0
- package/modern/components/promptControl/index.d.ts +1 -0
- package/modern/components/reexports.d.ts +1 -0
- package/modern/constants/dataGridPremiumDefaultSlotsComponents.d.ts +2 -0
- package/modern/constants/dataGridPremiumDefaultSlotsComponents.js +5 -1
- package/modern/hooks/features/aggregation/createAggregationLookup.d.ts +17 -0
- package/modern/hooks/features/aggregation/createAggregationLookup.js +3 -3
- package/modern/hooks/features/aggregation/gridAggregationFunctions.d.ts +8 -0
- package/modern/hooks/features/aggregation/gridAggregationInterfaces.d.ts +129 -0
- package/modern/hooks/features/aggregation/gridAggregationSelectors.d.ts +13 -0
- package/modern/hooks/features/aggregation/gridAggregationSelectors.js +2 -2
- package/modern/hooks/features/aggregation/gridAggregationUtils.d.ts +62 -0
- package/modern/hooks/features/aggregation/gridAggregationUtils.js +1 -1
- package/modern/hooks/features/aggregation/index.d.ts +4 -0
- package/modern/hooks/features/aggregation/useGridAggregation.d.ts +6 -0
- package/modern/hooks/features/aggregation/useGridAggregation.js +6 -8
- package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -0
- package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.js +7 -6
- package/modern/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +81 -0
- package/modern/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
- package/modern/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +40 -0
- package/modern/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -0
- package/modern/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -1
- package/modern/hooks/features/cellSelection/index.d.ts +1 -0
- package/modern/hooks/features/cellSelection/useGridCellSelection.d.ts +6 -0
- package/modern/hooks/features/cellSelection/useGridCellSelection.js +15 -13
- package/modern/hooks/features/clipboard/useGridClipboardImport.d.ts +4 -0
- package/modern/hooks/features/clipboard/useGridClipboardImport.js +5 -5
- package/modern/hooks/features/dataSource/models.d.ts +54 -0
- package/modern/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -0
- package/modern/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
- package/modern/hooks/features/export/gridExcelExportInterface.d.ts +71 -0
- package/modern/hooks/features/export/index.d.ts +2 -0
- package/modern/hooks/features/export/index.js +1 -1
- package/modern/hooks/features/export/serializer/excelSerializer.d.ts +40 -0
- package/modern/hooks/features/export/serializer/excelSerializer.js +69 -180
- package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
- package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.js +53 -0
- package/modern/hooks/features/export/serializer/utils.d.ts +36 -0
- package/modern/hooks/features/export/serializer/utils.js +93 -0
- package/modern/hooks/features/export/useGridExcelExport.d.ts +11 -0
- package/modern/hooks/features/export/useGridExcelExport.js +11 -5
- package/modern/hooks/features/index.d.ts +5 -0
- package/modern/hooks/features/promptControl/api.d.ts +2 -0
- package/modern/hooks/features/promptControl/index.d.ts +2 -0
- package/modern/hooks/features/promptControl/types.d.ts +25 -0
- package/modern/hooks/features/rowGrouping/createGroupingColDef.d.ts +57 -0
- package/modern/hooks/features/rowGrouping/createGroupingColDef.js +5 -5
- package/modern/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +44 -0
- package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +3 -0
- package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
- package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +54 -0
- package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.js +5 -3
- package/modern/hooks/features/rowGrouping/index.d.ts +3 -0
- package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -0
- package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
- package/modern/hooks/features/rowGrouping/useGridRowGrouping.d.ts +11 -0
- package/modern/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
- package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -0
- package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
- package/modern/hooks/features/rows/index.d.ts +1 -0
- package/modern/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -0
- package/modern/hooks/index.d.ts +2 -0
- package/modern/hooks/utils/index.d.ts +1 -0
- package/modern/hooks/utils/useGridApiContext.d.ts +4 -0
- package/modern/hooks/utils/useGridApiRef.d.ts +4 -0
- package/modern/hooks/utils/useGridAriaAttributes.d.ts +2 -0
- package/modern/hooks/utils/useGridPrivateApiContext.d.ts +2 -0
- package/modern/hooks/utils/useGridRootProps.d.ts +2 -0
- package/modern/hooks/utils/useKeepGroupedColumnsHidden.d.ts +12 -0
- package/modern/hooks/utils/useKeepGroupedColumnsHidden.js +2 -2
- package/modern/index.d.ts +23 -0
- package/modern/index.js +1 -7
- package/modern/locales.d.ts +1 -0
- package/modern/material/icons.d.ts +15 -0
- package/modern/material/index.d.ts +8 -0
- package/modern/models/dataGridPremiumProps.d.ts +162 -0
- package/modern/models/gridApiPremium.d.ts +14 -0
- package/modern/models/gridGroupingValueGetter.d.ts +4 -0
- package/modern/models/gridPastedValueParser.d.ts +4 -0
- package/modern/models/gridPremiumIconSlotsComponent.d.ts +28 -0
- package/modern/models/gridPremiumSlotsComponent.d.ts +7 -0
- package/modern/models/gridStatePremium.d.ts +18 -0
- package/modern/models/index.d.ts +4 -0
- package/modern/package.json +1 -0
- package/modern/setupExcelExportWebWorker.d.ts +1 -0
- package/modern/setupExcelExportWebWorker.js +1 -0
- package/modern/themeAugmentation/index.d.ts +2 -0
- package/modern/themeAugmentation/overrides.d.ts +7 -0
- package/modern/themeAugmentation/props.d.ts +15 -0
- package/modern/typeOverloads/index.d.ts +2 -0
- package/modern/typeOverloads/modules.d.ts +97 -0
- package/modern/typeOverloads/reexports.d.ts +17 -0
- package/modern/utils/releaseInfo.d.ts +1 -0
- package/modern/utils/releaseInfo.js +1 -1
- package/package.json +42 -9
- package/setupExcelExportWebWorker.d.ts +1 -0
- package/setupExcelExportWebWorker.js +12 -0
- package/themeAugmentation/index.d.ts +2 -2
- package/themeAugmentation/overrides.d.ts +3 -4
- package/themeAugmentation/props.d.ts +9 -11
- package/tsconfig.build.tsbuildinfo +1 -0
- package/typeOverloads/index.d.ts +1 -1
- package/typeOverloads/modules.d.ts +75 -82
- package/typeOverloads/reexports.d.ts +5 -5
- package/utils/releaseInfo.d.ts +1 -1
- package/utils/releaseInfo.js +1 -1
- package/DataGridPremium/package.json +0 -6
- package/components/package.json +0 -6
- package/esm/hooks/features/dataSource/cache.js +0 -3
- package/hooks/features/dataSource/cache.d.ts +0 -2
- package/hooks/features/dataSource/cache.js +0 -9
- package/hooks/package.json +0 -6
- package/material/package.json +0 -6
- package/models/package.json +0 -6
- package/modern/hooks/features/dataSource/cache.js +0 -3
- package/themeAugmentation/package.json +0 -6
- package/typeOverloads/package.json +0 -6
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
export const getExcelJs = async () => {
|
|
3
|
+
const excelJsModule = await import('exceljs');
|
|
4
|
+
return excelJsModule.default ?? excelJsModule;
|
|
5
|
+
};
|
|
6
|
+
export const addColumnGroupingHeaders = (worksheet, columns, columnGroupPaths, columnGroupDetails) => {
|
|
7
|
+
const maxDepth = Math.max(...columns.map(({
|
|
8
|
+
key
|
|
9
|
+
}) => columnGroupPaths[key]?.length ?? 0));
|
|
10
|
+
if (maxDepth === 0) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
for (let rowIndex = 0; rowIndex < maxDepth; rowIndex += 1) {
|
|
14
|
+
const row = columns.map(({
|
|
15
|
+
key
|
|
16
|
+
}) => {
|
|
17
|
+
const groupingPath = columnGroupPaths[key];
|
|
18
|
+
if (groupingPath.length <= rowIndex) {
|
|
19
|
+
return {
|
|
20
|
+
groupId: null,
|
|
21
|
+
parents: groupingPath
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
return _extends({}, columnGroupDetails[groupingPath[rowIndex]], {
|
|
25
|
+
parents: groupingPath.slice(0, rowIndex)
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
const newRow = worksheet.addRow(row.map(group => group.groupId === null ? null : group?.headerName ?? group.groupId));
|
|
29
|
+
|
|
30
|
+
// use `rowCount`, since worksheet can have additional rows added in `exceljsPreProcess`
|
|
31
|
+
const lastRowIndex = newRow.worksheet.rowCount;
|
|
32
|
+
let leftIndex = 0;
|
|
33
|
+
let rightIndex = 1;
|
|
34
|
+
while (rightIndex < columns.length) {
|
|
35
|
+
const {
|
|
36
|
+
groupId: leftGroupId,
|
|
37
|
+
parents: leftParents
|
|
38
|
+
} = row[leftIndex];
|
|
39
|
+
const {
|
|
40
|
+
groupId: rightGroupId,
|
|
41
|
+
parents: rightParents
|
|
42
|
+
} = row[rightIndex];
|
|
43
|
+
const areInSameGroup = leftGroupId === rightGroupId && leftParents.length === rightParents.length && leftParents.every((leftParent, index) => rightParents[index] === leftParent);
|
|
44
|
+
if (areInSameGroup) {
|
|
45
|
+
rightIndex += 1;
|
|
46
|
+
} else {
|
|
47
|
+
if (rightIndex - leftIndex > 1) {
|
|
48
|
+
worksheet.mergeCells(lastRowIndex, leftIndex + 1, lastRowIndex, rightIndex);
|
|
49
|
+
}
|
|
50
|
+
leftIndex = rightIndex;
|
|
51
|
+
rightIndex += 1;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
if (rightIndex - leftIndex > 1) {
|
|
55
|
+
worksheet.mergeCells(lastRowIndex, leftIndex + 1, lastRowIndex, rightIndex);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
export function addSerializedRowToWorksheet(serializedRow, worksheet) {
|
|
60
|
+
const {
|
|
61
|
+
row,
|
|
62
|
+
dataValidation,
|
|
63
|
+
outlineLevel,
|
|
64
|
+
mergedCells
|
|
65
|
+
} = serializedRow;
|
|
66
|
+
const newRow = worksheet.addRow(row);
|
|
67
|
+
Object.keys(dataValidation).forEach(field => {
|
|
68
|
+
newRow.getCell(field).dataValidation = _extends({}, dataValidation[field]);
|
|
69
|
+
});
|
|
70
|
+
if (outlineLevel) {
|
|
71
|
+
newRow.outlineLevel = outlineLevel;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// use `rowCount`, since worksheet can have additional rows added in `exceljsPreProcess`
|
|
75
|
+
const lastRowIndex = newRow.worksheet.rowCount;
|
|
76
|
+
mergedCells.forEach(mergedCell => {
|
|
77
|
+
worksheet.mergeCells(lastRowIndex, mergedCell.leftIndex, lastRowIndex, mergedCell.rightIndex);
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
export async function createValueOptionsSheetIfNeeded(valueOptionsData, sheetName, workbook) {
|
|
81
|
+
if (Object.keys(valueOptionsData).length === 0) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const valueOptionsWorksheet = workbook.addWorksheet(sheetName);
|
|
85
|
+
valueOptionsWorksheet.columns = Object.keys(valueOptionsData).map(key => ({
|
|
86
|
+
key
|
|
87
|
+
}));
|
|
88
|
+
Object.entries(valueOptionsData).forEach(([field, {
|
|
89
|
+
values
|
|
90
|
+
}]) => {
|
|
91
|
+
valueOptionsWorksheet.getColumn(field).values = values;
|
|
92
|
+
});
|
|
93
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
3
|
+
import { DataGridPremiumProps } from "../../../models/dataGridPremiumProps.js";
|
|
4
|
+
/**
|
|
5
|
+
* @requires useGridColumns (state)
|
|
6
|
+
* @requires useGridFilter (state)
|
|
7
|
+
* @requires useGridSorting (state)
|
|
8
|
+
* @requires useGridSelection (state)
|
|
9
|
+
* @requires useGridParamsApi (method)
|
|
10
|
+
*/
|
|
11
|
+
export declare const useGridExcelExport: (apiRef: RefObject<GridPrivateApiPremium>, props: DataGridPremiumProps) => void;
|
|
@@ -5,7 +5,7 @@ import { useGridApiMethod, useGridLogger, useGridApiOptionHandler } from '@mui/x
|
|
|
5
5
|
import { useGridRegisterPipeProcessor, exportAs, getColumnsToExport, defaultGetRowsToExport } from '@mui/x-data-grid/internals';
|
|
6
6
|
import { buildExcel, getDataForValueOptionsSheet, serializeColumns, serializeRowUnsafe } from "./serializer/excelSerializer.js";
|
|
7
7
|
import { GridExcelExportMenuItem } from "../../../components/index.js";
|
|
8
|
-
|
|
8
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
9
|
/**
|
|
10
10
|
* @requires useGridColumns (state)
|
|
11
11
|
* @requires useGridFilter (state)
|
|
@@ -13,7 +13,6 @@ import { GridExcelExportMenuItem } from "../../../components/index.js";
|
|
|
13
13
|
* @requires useGridSelection (state)
|
|
14
14
|
* @requires useGridParamsApi (method)
|
|
15
15
|
*/
|
|
16
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
17
16
|
export const useGridExcelExport = (apiRef, props) => {
|
|
18
17
|
const logger = useGridLogger(apiRef, 'useGridExcelExport');
|
|
19
18
|
const getDataAsExcel = React.useCallback((options = {}) => {
|
|
@@ -89,15 +88,22 @@ export const useGridExcelExport = (apiRef, props) => {
|
|
|
89
88
|
const valueOptionsData = await getDataForValueOptionsSheet(exportedColumns, valueOptionsSheetName, apiRef.current);
|
|
90
89
|
const serializedColumns = serializeColumns(exportedColumns, options.columnsStyles || {});
|
|
91
90
|
apiRef.current.resetColSpan();
|
|
92
|
-
const serializedRows =
|
|
93
|
-
|
|
94
|
-
|
|
91
|
+
const serializedRows = [];
|
|
92
|
+
for (let i = 0; i < exportedRowIds.length; i += 1) {
|
|
93
|
+
const id = exportedRowIds[i];
|
|
94
|
+
const serializedRow = serializeRowUnsafe(id, exportedColumns, apiRef, valueOptionsData, {
|
|
95
|
+
escapeFormulas: options.escapeFormulas ?? true
|
|
96
|
+
});
|
|
97
|
+
serializedRows.push(serializedRow);
|
|
98
|
+
}
|
|
95
99
|
apiRef.current.resetColSpan();
|
|
96
100
|
const columnGroupPaths = exportedColumns.reduce((acc, column) => {
|
|
97
101
|
acc[column.field] = apiRef.current.getColumnGroupPath(column.field);
|
|
98
102
|
return acc;
|
|
99
103
|
}, {});
|
|
100
104
|
const message = {
|
|
105
|
+
// workers share the pub-sub channel namespace. Use this property to filter out messages.
|
|
106
|
+
namespace: 'mui-x-data-grid-export',
|
|
101
107
|
serializedColumns,
|
|
102
108
|
serializedRows,
|
|
103
109
|
valueOptionsData,
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export type Sort = {
|
|
2
|
+
column: string;
|
|
3
|
+
direction: 'asc' | 'desc';
|
|
4
|
+
};
|
|
5
|
+
export type Grouping = {
|
|
6
|
+
column: string;
|
|
7
|
+
};
|
|
8
|
+
export type Filter = {
|
|
9
|
+
operator: string;
|
|
10
|
+
value: string | number | boolean | string[] | number[];
|
|
11
|
+
column: string;
|
|
12
|
+
};
|
|
13
|
+
export type AggregationFunction = 'avg' | 'sum' | 'min' | 'max' | 'size';
|
|
14
|
+
export type Aggregation = {
|
|
15
|
+
[column: string]: AggregationFunction;
|
|
16
|
+
};
|
|
17
|
+
export type PromptResponse = {
|
|
18
|
+
select: number;
|
|
19
|
+
filters: Filter[];
|
|
20
|
+
filterOperator?: 'and' | 'or';
|
|
21
|
+
aggregation: Aggregation;
|
|
22
|
+
sorting: Sort[];
|
|
23
|
+
grouping: Grouping[];
|
|
24
|
+
error: string | null;
|
|
25
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridColDef, GridGroupingColDefOverride } from '@mui/x-data-grid-pro';
|
|
3
|
+
import { GridColumnRawLookup } from '@mui/x-data-grid-pro/internals';
|
|
4
|
+
import { GridApiPremium } from "../../../models/gridApiPremium.js";
|
|
5
|
+
import { RowGroupingStrategy } from "./gridRowGroupingUtils.js";
|
|
6
|
+
interface CreateGroupingColDefMonoCriteriaParams {
|
|
7
|
+
columnsLookup: GridColumnRawLookup;
|
|
8
|
+
/**
|
|
9
|
+
* The field from which we are grouping the rows.
|
|
10
|
+
*/
|
|
11
|
+
groupingCriteria: string;
|
|
12
|
+
/**
|
|
13
|
+
* The col def from which we are grouping the rows.
|
|
14
|
+
*/
|
|
15
|
+
groupedByColDef: GridColDef;
|
|
16
|
+
/**
|
|
17
|
+
* The col def properties the user wants to override.
|
|
18
|
+
* This value comes `prop.groupingColDef`.
|
|
19
|
+
*/
|
|
20
|
+
colDefOverride: GridGroupingColDefOverride | null | undefined;
|
|
21
|
+
strategy?: RowGroupingStrategy;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Creates the `GridColDef` for a grouping column that only takes care of a single grouping criteria
|
|
25
|
+
*/
|
|
26
|
+
export declare const createGroupingColDefForOneGroupingCriteria: ({
|
|
27
|
+
columnsLookup,
|
|
28
|
+
groupedByColDef,
|
|
29
|
+
groupingCriteria,
|
|
30
|
+
colDefOverride,
|
|
31
|
+
strategy
|
|
32
|
+
}: CreateGroupingColDefMonoCriteriaParams) => GridColDef;
|
|
33
|
+
interface CreateGroupingColDefSeveralCriteriaParams {
|
|
34
|
+
apiRef: RefObject<GridApiPremium>;
|
|
35
|
+
columnsLookup: GridColumnRawLookup;
|
|
36
|
+
/**
|
|
37
|
+
* The fields from which we are grouping the rows.
|
|
38
|
+
*/
|
|
39
|
+
rowGroupingModel: string[];
|
|
40
|
+
/**
|
|
41
|
+
* The col def properties the user wants to override.
|
|
42
|
+
* This value comes `prop.groupingColDef`.
|
|
43
|
+
*/
|
|
44
|
+
colDefOverride: GridGroupingColDefOverride | null | undefined;
|
|
45
|
+
strategy?: RowGroupingStrategy;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Creates the `GridColDef` for a grouping column that takes care of all the grouping criteria
|
|
49
|
+
*/
|
|
50
|
+
export declare const createGroupingColDefForAllGroupingCriteria: ({
|
|
51
|
+
apiRef,
|
|
52
|
+
columnsLookup,
|
|
53
|
+
rowGroupingModel,
|
|
54
|
+
colDefOverride,
|
|
55
|
+
strategy
|
|
56
|
+
}: CreateGroupingColDefSeveralCriteriaParams) => GridColDef;
|
|
57
|
+
export {};
|
|
@@ -3,7 +3,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
3
3
|
const _excluded = ["leafField", "mainGroupingCriteria", "hideDescendantCount"],
|
|
4
4
|
_excluded2 = ["leafField", "mainGroupingCriteria", "hideDescendantCount"];
|
|
5
5
|
import * as React from 'react';
|
|
6
|
-
import { GRID_STRING_COL_DEF } from '@mui/x-data-grid-pro';
|
|
6
|
+
import { GRID_STRING_COL_DEF, gridRowIdSelector, gridRowNodeSelector } from '@mui/x-data-grid-pro';
|
|
7
7
|
import { isSingleSelectColDef } from '@mui/x-data-grid-pro/internals';
|
|
8
8
|
import { GridGroupingColumnFooterCell } from "../../../components/GridGroupingColumnFooterCell.js";
|
|
9
9
|
import { GridGroupingCriteriaCell } from "../../../components/GridGroupingCriteriaCell.js";
|
|
@@ -140,8 +140,8 @@ export const createGroupingColDefForOneGroupingCriteria = ({
|
|
|
140
140
|
return '';
|
|
141
141
|
},
|
|
142
142
|
valueGetter: (value, row, column, apiRef) => {
|
|
143
|
-
const rowId = apiRef
|
|
144
|
-
const rowNode = apiRef
|
|
143
|
+
const rowId = gridRowIdSelector(apiRef, row);
|
|
144
|
+
const rowNode = gridRowNodeSelector(apiRef, rowId);
|
|
145
145
|
if (!rowNode || rowNode.type === 'footer' || rowNode.type === 'pinnedRow') {
|
|
146
146
|
return undefined;
|
|
147
147
|
}
|
|
@@ -232,8 +232,8 @@ export const createGroupingColDefForAllGroupingCriteria = ({
|
|
|
232
232
|
}));
|
|
233
233
|
},
|
|
234
234
|
valueGetter: (value, row) => {
|
|
235
|
-
const rowId = apiRef
|
|
236
|
-
const rowNode = apiRef
|
|
235
|
+
const rowId = gridRowIdSelector(apiRef, row);
|
|
236
|
+
const rowNode = gridRowNodeSelector(apiRef, rowId);
|
|
237
237
|
if (!rowNode || rowNode.type === 'footer' || rowNode.type === 'pinnedRow') {
|
|
238
238
|
return undefined;
|
|
239
239
|
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { GridColDef, GridValidRowModel } from '@mui/x-data-grid';
|
|
2
|
+
export type GridRowGroupingModel = string[];
|
|
3
|
+
export interface GridRowGroupingState {
|
|
4
|
+
model: GridRowGroupingModel;
|
|
5
|
+
}
|
|
6
|
+
export interface GridRowGroupingInitialState {
|
|
7
|
+
model?: GridRowGroupingModel;
|
|
8
|
+
}
|
|
9
|
+
export interface GridRowGroupingInternalCache {
|
|
10
|
+
/**
|
|
11
|
+
* Tracks the model on the last pre-processing
|
|
12
|
+
* Allows to check if we need to re-build the grouping columns when the grid upserts a column.
|
|
13
|
+
*/
|
|
14
|
+
rulesOnLastRowTreeCreation: GridGroupingRules;
|
|
15
|
+
}
|
|
16
|
+
export interface GridRowGroupingApi {
|
|
17
|
+
/**
|
|
18
|
+
* Sets the columns to use as grouping criteria.
|
|
19
|
+
* @param {GridRowGroupingModel} model The columns to use as grouping criteria.
|
|
20
|
+
*/
|
|
21
|
+
setRowGroupingModel: (model: GridRowGroupingModel) => void;
|
|
22
|
+
/**
|
|
23
|
+
* Adds the field to the row grouping model.
|
|
24
|
+
* @param {string} groupingCriteriaField The field from which we want to group the rows.
|
|
25
|
+
* @param {number | undefined} groupingIndex The grouping index at which we want to insert the new grouping criteria. By default, it will be inserted at the end of the model.
|
|
26
|
+
*/
|
|
27
|
+
addRowGroupingCriteria: (groupingCriteriaField: string, groupingIndex?: number) => void;
|
|
28
|
+
/**
|
|
29
|
+
* Remove the field from the row grouping model.
|
|
30
|
+
* @param {string} groupingCriteriaField The field from which we want to stop grouping the rows.
|
|
31
|
+
*/
|
|
32
|
+
removeRowGroupingCriteria: (groupingCriteriaField: string) => void;
|
|
33
|
+
/**
|
|
34
|
+
* Sets the grouping index of a grouping criteria.
|
|
35
|
+
* @param {string} groupingCriteriaField The field of the grouping criteria from which we want to change the grouping index.
|
|
36
|
+
* @param {number} groupingIndex The new grouping index of this grouping criteria.
|
|
37
|
+
*/
|
|
38
|
+
setRowGroupingCriteriaIndex: (groupingCriteriaField: string, groupingIndex: number) => void;
|
|
39
|
+
}
|
|
40
|
+
export interface GridGroupingRule<R extends GridValidRowModel = GridValidRowModel, V = any> {
|
|
41
|
+
field: string;
|
|
42
|
+
groupingValueGetter?: GridColDef<R, V>['groupingValueGetter'];
|
|
43
|
+
}
|
|
44
|
+
export type GridGroupingRules<R extends GridValidRowModel = GridValidRowModel> = GridGroupingRule<R>[];
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { GridStatePremium } from "../../../models/gridStatePremium.js";
|
|
2
|
+
export declare const gridRowGroupingModelSelector: import("@mui/x-data-grid").OutputSelector<GridStatePremium, import("./gridRowGroupingInterfaces").GridRowGroupingState, import("./gridRowGroupingInterfaces").GridRowGroupingModel>;
|
|
3
|
+
export declare const gridRowGroupingSanitizedModelSelector: import("@mui/x-data-grid").OutputSelector<GridStatePremium, import("@mui/x-data-grid").GridColumnLookup, string[]>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { gridColumnLookupSelector } from '@mui/x-data-grid-pro';
|
|
2
|
-
import { createSelector, createSelectorMemoized } from '@mui/x-data-grid/internals';
|
|
3
|
-
const gridRowGroupingStateSelector = state => state.rowGrouping;
|
|
2
|
+
import { createSelector, createRootSelector, createSelectorMemoized } from '@mui/x-data-grid-pro/internals';
|
|
3
|
+
const gridRowGroupingStateSelector = createRootSelector(state => state.rowGrouping);
|
|
4
4
|
export const gridRowGroupingModelSelector = createSelector(gridRowGroupingStateSelector, rowGrouping => rowGrouping.model);
|
|
5
5
|
export const gridRowGroupingSanitizedModelSelector = createSelectorMemoized(gridRowGroupingModelSelector, gridColumnLookupSelector, (model, columnsLookup) => model.filter(field => !!columnsLookup[field]));
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridRowTreeConfig, GridFilterState, GridFilterModel, GridRowModel, GridColDef, GridKeyValue, GridDataSource } from '@mui/x-data-grid-pro';
|
|
3
|
+
import { GridAggregatedFilterItemApplier, GridColumnRawLookup, GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn } from '@mui/x-data-grid-pro/internals';
|
|
4
|
+
import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
|
|
5
|
+
import { GridGroupingRule, GridGroupingRules, GridRowGroupingModel } from "./gridRowGroupingInterfaces.js";
|
|
6
|
+
import { GridStatePremium } from "../../../models/gridStatePremium.js";
|
|
7
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
8
|
+
export { GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn };
|
|
9
|
+
export declare enum RowGroupingStrategy {
|
|
10
|
+
Default = "grouping-columns",
|
|
11
|
+
DataSource = "grouping-columns-data-source",
|
|
12
|
+
}
|
|
13
|
+
export declare const getRowGroupingFieldFromGroupingCriteria: (groupingCriteria: string | null) => string;
|
|
14
|
+
interface FilterRowTreeFromTreeDataParams {
|
|
15
|
+
rowTree: GridRowTreeConfig;
|
|
16
|
+
isRowMatchingFilters: GridAggregatedFilterItemApplier | null;
|
|
17
|
+
filterModel: GridFilterModel;
|
|
18
|
+
apiRef: RefObject<GridPrivateApiPremium>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* A leaf is visible if it passed the filter
|
|
22
|
+
* A group is visible if all the following criteria are met:
|
|
23
|
+
* - One of its children is passing the filter
|
|
24
|
+
* - It is passing the filter
|
|
25
|
+
*/
|
|
26
|
+
export declare const filterRowTreeFromGroupingColumns: (params: FilterRowTreeFromTreeDataParams) => Omit<GridFilterState, "filterModel">;
|
|
27
|
+
export declare const getColDefOverrides: (groupingColDefProp: DataGridPremiumProcessedProps["groupingColDef"], fields: string[], strategy?: RowGroupingStrategy) => import("@mui/x-data-grid-pro").GridGroupingColDefOverride<any> | null | undefined;
|
|
28
|
+
export declare const mergeStateWithRowGroupingModel: (rowGroupingModel: GridRowGroupingModel) => (state: GridStatePremium) => GridStatePremium;
|
|
29
|
+
export declare const setStrategyAvailability: (privateApiRef: RefObject<GridPrivateApiPremium>, disableRowGrouping: boolean, dataSource?: GridDataSource) => void;
|
|
30
|
+
export declare const getCellGroupingCriteria: ({
|
|
31
|
+
row,
|
|
32
|
+
colDef,
|
|
33
|
+
groupingRule,
|
|
34
|
+
apiRef
|
|
35
|
+
}: {
|
|
36
|
+
row: GridRowModel;
|
|
37
|
+
colDef: GridColDef;
|
|
38
|
+
groupingRule: GridGroupingRule;
|
|
39
|
+
apiRef: RefObject<GridPrivateApiPremium>;
|
|
40
|
+
}) => {
|
|
41
|
+
key: GridKeyValue | null | undefined;
|
|
42
|
+
field: string;
|
|
43
|
+
};
|
|
44
|
+
export declare const getGroupingRules: ({
|
|
45
|
+
sanitizedRowGroupingModel,
|
|
46
|
+
columnsLookup
|
|
47
|
+
}: {
|
|
48
|
+
sanitizedRowGroupingModel: GridRowGroupingModel;
|
|
49
|
+
columnsLookup: GridColumnRawLookup;
|
|
50
|
+
}) => GridGroupingRules;
|
|
51
|
+
/**
|
|
52
|
+
* Compares two sets of grouping rules to determine if they are equal or not.
|
|
53
|
+
*/
|
|
54
|
+
export declare const areGroupingRulesEqual: (newValue: GridGroupingRules, previousValue: GridGroupingRules) => boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import { passFilterLogic, GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn, GridStrategyGroup } from '@mui/x-data-grid-pro/internals';
|
|
2
|
+
import { passFilterLogic, GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn, GridStrategyGroup, getRowValue } from '@mui/x-data-grid-pro/internals';
|
|
3
3
|
import { gridRowGroupingSanitizedModelSelector } from "./gridRowGroupingSelector.js";
|
|
4
4
|
export { GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn };
|
|
5
5
|
export let RowGroupingStrategy = /*#__PURE__*/function (RowGroupingStrategy) {
|
|
@@ -75,7 +75,9 @@ export const filterRowTreeFromGroupingColumns = params => {
|
|
|
75
75
|
isPassingFiltering = passFilterLogic(allResults.map(result => result.passingFilterItems), allResults.map(result => result.passingQuickFilterValues), filterModel, params.apiRef, filterCache);
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
|
-
|
|
78
|
+
if (!isPassingFiltering) {
|
|
79
|
+
filteredRowsLookup[node.id] = false;
|
|
80
|
+
}
|
|
79
81
|
if (!isPassingFiltering) {
|
|
80
82
|
return 0;
|
|
81
83
|
}
|
|
@@ -136,7 +138,7 @@ export const getCellGroupingCriteria = ({
|
|
|
136
138
|
if (groupingRule.groupingValueGetter) {
|
|
137
139
|
key = groupingRule.groupingValueGetter(row[groupingRule.field], row, colDef, apiRef);
|
|
138
140
|
} else {
|
|
139
|
-
key = row
|
|
141
|
+
key = getRowValue(row, colDef, apiRef);
|
|
140
142
|
}
|
|
141
143
|
return {
|
|
142
144
|
key,
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
|
|
3
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
4
|
+
export declare const useGridDataSourceRowGroupingPreProcessors: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "dataSource">) => void;
|
|
@@ -5,11 +5,11 @@ import { getGroupingRules, RowGroupingStrategy } from "./gridRowGroupingUtils.js
|
|
|
5
5
|
import { gridRowGroupingSanitizedModelSelector } from "./gridRowGroupingSelector.js";
|
|
6
6
|
export const useGridDataSourceRowGroupingPreProcessors = (apiRef, props) => {
|
|
7
7
|
const createRowTreeForRowGrouping = React.useCallback(params => {
|
|
8
|
-
const getGroupKey = props.
|
|
8
|
+
const getGroupKey = props.dataSource?.getGroupKey;
|
|
9
9
|
if (!getGroupKey) {
|
|
10
10
|
throw new Error('MUI X: No `getGroupKey` method provided with the dataSource.');
|
|
11
11
|
}
|
|
12
|
-
const getChildrenCount = props.
|
|
12
|
+
const getChildrenCount = props.dataSource?.getChildrenCount;
|
|
13
13
|
if (!getChildrenCount) {
|
|
14
14
|
throw new Error('MUI X: No `getChildrenCount` method provided with the dataSource.');
|
|
15
15
|
}
|
|
@@ -57,7 +57,7 @@ export const useGridDataSourceRowGroupingPreProcessors = (apiRef, props) => {
|
|
|
57
57
|
isGroupExpandedByDefault: props.isGroupExpandedByDefault,
|
|
58
58
|
groupingName: RowGroupingStrategy.DataSource
|
|
59
59
|
});
|
|
60
|
-
}, [apiRef, props.
|
|
60
|
+
}, [apiRef, props.dataSource, props.defaultGroupingExpansionDepth, props.isGroupExpandedByDefault]);
|
|
61
61
|
const filterRows = React.useCallback(() => {
|
|
62
62
|
const rowTree = gridRowTreeSelector(apiRef);
|
|
63
63
|
return skipFiltering(rowTree);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridStateInitializer } from '@mui/x-data-grid-pro/internals';
|
|
3
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
4
|
+
import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
|
|
5
|
+
export declare const rowGroupingStateInitializer: GridStateInitializer<Pick<DataGridPremiumProcessedProps, 'rowGroupingModel' | 'initialState'>>;
|
|
6
|
+
/**
|
|
7
|
+
* @requires useGridColumns (state, method) - can be after, async only
|
|
8
|
+
* @requires useGridRows (state, method) - can be after, async only
|
|
9
|
+
* @requires useGridParamsApi (method) - can be after, async only
|
|
10
|
+
*/
|
|
11
|
+
export declare const useGridRowGrouping: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "initialState" | "rowGroupingModel" | "onRowGroupingModelChange" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "groupingColDef" | "rowGroupingColumnMode" | "disableRowGrouping" | "slotProps" | "slots" | "dataSource">) => void;
|
|
@@ -37,7 +37,6 @@ export const useGridRowGrouping = (apiRef, props) => {
|
|
|
37
37
|
if (currentModel !== model) {
|
|
38
38
|
apiRef.current.setState(mergeStateWithRowGroupingModel(model));
|
|
39
39
|
setStrategyAvailability(apiRef, props.disableRowGrouping);
|
|
40
|
-
apiRef.current.forceUpdate();
|
|
41
40
|
}
|
|
42
41
|
}, [apiRef, props.disableRowGrouping]);
|
|
43
42
|
const addRowGroupingCriteria = React.useCallback((field, groupingIndex) => {
|
|
@@ -141,13 +140,13 @@ export const useGridRowGrouping = (apiRef, props) => {
|
|
|
141
140
|
if (!isOnGroupingCell) {
|
|
142
141
|
return;
|
|
143
142
|
}
|
|
144
|
-
if (props.
|
|
145
|
-
apiRef.current.
|
|
143
|
+
if (props.dataSource && !params.rowNode.childrenExpanded) {
|
|
144
|
+
apiRef.current.dataSource.fetchRows(params.id);
|
|
146
145
|
return;
|
|
147
146
|
}
|
|
148
147
|
apiRef.current.setRowChildrenExpansion(params.id, !params.rowNode.childrenExpanded);
|
|
149
148
|
}
|
|
150
|
-
}, [apiRef, props.rowGroupingColumnMode, props.
|
|
149
|
+
}, [apiRef, props.rowGroupingColumnMode, props.dataSource]);
|
|
151
150
|
const checkGroupingColumnsModelDiff = React.useCallback(() => {
|
|
152
151
|
const sanitizedRowGroupingModel = gridRowGroupingSanitizedModelSelector(apiRef);
|
|
153
152
|
const rulesOnLastRowTreeCreation = apiRef.current.caches.rowGrouping.rulesOnLastRowTreeCreation || [];
|
|
@@ -170,7 +169,7 @@ export const useGridRowGrouping = (apiRef, props) => {
|
|
|
170
169
|
useGridApiEventHandler(apiRef, 'cellKeyDown', handleCellKeyDown);
|
|
171
170
|
useGridApiEventHandler(apiRef, 'columnsChange', checkGroupingColumnsModelDiff);
|
|
172
171
|
useGridApiEventHandler(apiRef, 'rowGroupingModelChange', checkGroupingColumnsModelDiff);
|
|
173
|
-
useGridApiEventHandler(apiRef, 'rowGroupingModelChange', () => apiRef.current.
|
|
172
|
+
useGridApiEventHandler(apiRef, 'rowGroupingModelChange', () => apiRef.current.dataSource.fetchRows());
|
|
174
173
|
|
|
175
174
|
/*
|
|
176
175
|
* EFFECTS
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
|
|
3
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
4
|
+
export declare const useGridRowGroupingPreProcessors: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "dataSource">) => void;
|
|
@@ -9,7 +9,7 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
|
|
|
9
9
|
if (props.disableRowGrouping) {
|
|
10
10
|
return [];
|
|
11
11
|
}
|
|
12
|
-
const strategy = props.
|
|
12
|
+
const strategy = props.dataSource ? RowGroupingStrategy.DataSource : RowGroupingStrategy.Default;
|
|
13
13
|
const groupingColDefProp = props.groupingColDef;
|
|
14
14
|
|
|
15
15
|
// We can't use `gridGroupingRowsSanitizedModelSelector` here because the new columns are not in the state yet
|
|
@@ -43,7 +43,7 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
|
|
|
43
43
|
return [];
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
}, [apiRef, props.groupingColDef, props.rowGroupingColumnMode, props.disableRowGrouping, props.
|
|
46
|
+
}, [apiRef, props.groupingColDef, props.rowGroupingColumnMode, props.disableRowGrouping, props.dataSource]);
|
|
47
47
|
const updateGroupingColumn = React.useCallback(columnsState => {
|
|
48
48
|
const groupingColDefs = getGroupingColDefs(columnsState);
|
|
49
49
|
let newColumnFields = [];
|
|
@@ -148,14 +148,14 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
|
|
|
148
148
|
useGridRegisterStrategyProcessor(apiRef, RowGroupingStrategy.Default, 'sorting', sortRows);
|
|
149
149
|
useGridRegisterStrategyProcessor(apiRef, RowGroupingStrategy.Default, 'visibleRowsLookupCreation', getVisibleRowsLookup);
|
|
150
150
|
useFirstRender(() => {
|
|
151
|
-
setStrategyAvailability(apiRef, props.disableRowGrouping, props.
|
|
151
|
+
setStrategyAvailability(apiRef, props.disableRowGrouping, props.dataSource);
|
|
152
152
|
});
|
|
153
153
|
const isFirstRender = React.useRef(true);
|
|
154
154
|
React.useEffect(() => {
|
|
155
155
|
if (!isFirstRender.current) {
|
|
156
|
-
setStrategyAvailability(apiRef, props.disableRowGrouping, props.
|
|
156
|
+
setStrategyAvailability(apiRef, props.disableRowGrouping, props.dataSource);
|
|
157
157
|
} else {
|
|
158
158
|
isFirstRender.current = false;
|
|
159
159
|
}
|
|
160
|
-
}, [apiRef, props.disableRowGrouping, props.
|
|
160
|
+
}, [apiRef, props.disableRowGrouping, props.dataSource]);
|
|
161
161
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./useGridRowAriaAttributes.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useGridRowAriaAttributes: () => (rowNode: import("@mui/x-data-grid").GridTreeNode, index: number) => React.HTMLAttributes<HTMLElement>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./useKeepGroupedColumnsHidden.js";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridApiCommon } from '@mui/x-data-grid';
|
|
3
|
+
import { GridApiPremium } from "../../models/gridApiPremium.js";
|
|
4
|
+
export declare const useGridApiContext: <Api extends GridApiCommon = GridApiPremium>() => RefObject<Api>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridApiCommon } from '@mui/x-data-grid';
|
|
3
|
+
import { GridApiPremium } from "../../models/gridApiPremium.js";
|
|
4
|
+
export declare const useGridApiRef: <Api extends GridApiCommon = GridApiPremium>() => RefObject<Api | null>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridApi } from '@mui/x-data-grid-pro';
|
|
3
|
+
import { GridInitialStatePremium } from "../../models/gridStatePremium.js";
|
|
4
|
+
import { DataGridPremiumProps } from "../../models/dataGridPremiumProps.js";
|
|
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: RefObject<GridApi | null>;
|
|
12
|
+
} & Pick<DataGridPremiumProps, "initialState" | "rowGroupingModel">) => GridInitialStatePremium;
|
|
@@ -25,9 +25,9 @@ export const useKeepGroupedColumnsHidden = props => {
|
|
|
25
25
|
const initialProps = React.useRef(props);
|
|
26
26
|
const rowGroupingModel = React.useRef(props.rowGroupingModel ?? props.initialState?.rowGrouping?.model);
|
|
27
27
|
React.useEffect(() => {
|
|
28
|
-
props.apiRef.current
|
|
28
|
+
props.apiRef.current?.subscribeEvent('rowGroupingModelChange', newModel => {
|
|
29
29
|
const columnVisibilityModel = updateColumnVisibilityModel(gridColumnVisibilityModelSelector(props.apiRef), newModel, rowGroupingModel.current);
|
|
30
|
-
props.apiRef.current
|
|
30
|
+
props.apiRef.current?.setColumnVisibilityModel(columnVisibilityModel);
|
|
31
31
|
rowGroupingModel.current = newModel;
|
|
32
32
|
});
|
|
33
33
|
}, [props.apiRef]);
|
package/esm/index.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import "./typeOverloads/index.js";
|
|
2
|
+
export * from '@mui/x-data-grid/components';
|
|
3
|
+
export * from '@mui/x-data-grid-pro/components';
|
|
4
|
+
export * from '@mui/x-data-grid/constants';
|
|
5
|
+
export * from '@mui/x-data-grid/hooks';
|
|
6
|
+
export * from '@mui/x-data-grid-pro/hooks';
|
|
7
|
+
export * from '@mui/x-data-grid/models';
|
|
8
|
+
export * from '@mui/x-data-grid-pro/models';
|
|
9
|
+
export * from '@mui/x-data-grid/context';
|
|
10
|
+
export * from '@mui/x-data-grid/colDef';
|
|
11
|
+
export * from '@mui/x-data-grid/utils';
|
|
12
|
+
export * from '@mui/x-data-grid-pro/utils';
|
|
13
|
+
export * from "./DataGridPremium/index.js";
|
|
14
|
+
export * from "./hooks/index.js";
|
|
15
|
+
export * from "./models/index.js";
|
|
16
|
+
export * from "./components/index.js";
|
|
17
|
+
export { GridColumnHeaders } from '@mui/x-data-grid-pro';
|
|
18
|
+
export type { GridColumnHeadersProps } from '@mui/x-data-grid-pro';
|
|
19
|
+
export type { DataGridPremiumProps, GridExperimentalPremiumFeatures } from './models/dataGridPremiumProps';
|
|
20
|
+
export { useGridApiContext, useGridApiRef, useGridRootProps } from "./typeOverloads/reexports.js";
|
|
21
|
+
export type { GridApi, GridInitialState, GridState } from './typeOverloads/reexports';
|
|
22
|
+
export { GridColumnMenu, GRID_COLUMN_MENU_SLOTS, GRID_COLUMN_MENU_SLOT_PROPS } from "./components/reexports.js";
|
|
23
|
+
export type { GridGetRowsParamsPremium as GridGetRowsParams, GridGetRowsResponsePremium as GridGetRowsResponse, GridDataSourcePremium as GridDataSource, GridDataSourceApiPremium as GridDataSourceApi, GridDataSourceApiBasePremium as GridDataSourceApiBase, GridDataSourcePremiumPrivateApi as GridDataSourcePrivateApi } from './hooks/features/dataSource/models';
|