@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
|
@@ -9,18 +9,18 @@ exports.wrapColumnWithAggregationValue = exports.unwrapColumnFromAggregation = v
|
|
|
9
9
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
var React = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _xDataGridPro = require("@mui/x-data-grid-pro");
|
|
12
13
|
var _gridAggregationSelectors = require("./gridAggregationSelectors");
|
|
13
14
|
var _GridFooterCell = require("../../../components/GridFooterCell");
|
|
14
15
|
var _GridAggregationHeader = require("../../../components/GridAggregationHeader");
|
|
15
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
17
|
const _excluded = ["aggregationWrappedProperties"];
|
|
17
|
-
const AGGREGATION_WRAPPABLE_PROPERTIES = ['valueGetter', 'valueFormatter', 'renderCell', 'renderHeader', 'filterOperators'];
|
|
18
18
|
const getAggregationValueWrappedValueGetter = ({
|
|
19
19
|
value: valueGetter,
|
|
20
20
|
getCellAggregationResult
|
|
21
21
|
}) => {
|
|
22
22
|
const wrappedValueGetter = (value, row, column, apiRef) => {
|
|
23
|
-
const rowId =
|
|
23
|
+
const rowId = (0, _xDataGridPro.gridRowIdSelector)(apiRef, row);
|
|
24
24
|
const cellAggregationResult = rowId ? getCellAggregationResult(rowId, column.field) : null;
|
|
25
25
|
if (cellAggregationResult != null) {
|
|
26
26
|
return cellAggregationResult?.value ?? null;
|
|
@@ -43,7 +43,7 @@ const getAggregationValueWrappedValueFormatter = ({
|
|
|
43
43
|
return valueFormatter;
|
|
44
44
|
}
|
|
45
45
|
const wrappedValueFormatter = (value, row, column, apiRef) => {
|
|
46
|
-
const rowId =
|
|
46
|
+
const rowId = (0, _xDataGridPro.gridRowIdSelector)(apiRef, row);
|
|
47
47
|
if (rowId != null) {
|
|
48
48
|
const cellAggregationResult = getCellAggregationResult(rowId, column.field);
|
|
49
49
|
if (cellAggregationResult != null) {
|
|
@@ -102,7 +102,8 @@ const getWrappedFilterOperators = ({
|
|
|
102
102
|
return null;
|
|
103
103
|
}
|
|
104
104
|
return (value, row, column, api) => {
|
|
105
|
-
|
|
105
|
+
const rowId = (0, _xDataGridPro.gridRowIdSelector)(apiRef, row);
|
|
106
|
+
if (getCellAggregationResult(rowId, column.field) != null) {
|
|
106
107
|
return true;
|
|
107
108
|
}
|
|
108
109
|
return filterFn(value, row, column, api);
|
|
@@ -141,7 +142,7 @@ const wrapColumnWithAggregationValue = ({
|
|
|
141
142
|
}) => {
|
|
142
143
|
const getCellAggregationResult = (id, field) => {
|
|
143
144
|
let cellAggregationPosition = null;
|
|
144
|
-
const rowNode =
|
|
145
|
+
const rowNode = (0, _xDataGridPro.gridRowNodeSelector)(apiRef, id);
|
|
145
146
|
if (rowNode.type === 'group') {
|
|
146
147
|
cellAggregationPosition = 'inline';
|
|
147
148
|
} else if (id.toString().startsWith('auto-generated-group-footer-')) {
|
|
@@ -4,37 +4,37 @@ export type GridCellSelectionModel = Record<GridRowId, Record<GridColDef['field'
|
|
|
4
4
|
* The cell selection API interface that is available in the grid [[apiRef]].
|
|
5
5
|
*/
|
|
6
6
|
export interface GridCellSelectionApi {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
7
|
+
/**
|
|
8
|
+
* Determines if a cell is selected or not.
|
|
9
|
+
* @param {GridRowId} id The id of the row.
|
|
10
|
+
* @param {GridColDef['field']} field The field.
|
|
11
|
+
* @returns {boolean} A boolean indicating if the cell is selected.
|
|
12
|
+
*/
|
|
13
|
+
isCellSelected: (id: GridRowId, field: GridColDef['field']) => boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Returns an object containing the selection state of the cells.
|
|
16
|
+
* The keys of the object correspond to the row IDs.
|
|
17
|
+
* The value of each key is also an object, which has a column field for a key and a boolean value for its selection state.
|
|
18
|
+
* @returns {GridCellSelectionModel} Object containing the selection state of the cells
|
|
19
|
+
*/
|
|
20
|
+
getCellSelectionModel: () => GridCellSelectionModel;
|
|
21
|
+
/**
|
|
22
|
+
* Updates the cell selection model according to the value passed to the `newModel` argument.
|
|
23
|
+
* Any cell already selected will be unselected.
|
|
24
|
+
* @param {GridCellSelectionModel} newModel The cells to select.
|
|
25
|
+
*/
|
|
26
|
+
setCellSelectionModel: (newModel: GridCellSelectionModel) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Selects all cells that are inside the range given by `start` and `end` coordinates.
|
|
29
|
+
* @param {GridCellCoordinates} start Object containing the row ID and field of the first cell to select.
|
|
30
|
+
* @param {GridCellCoordinates} end Object containing the row ID and field of the last cell to select.
|
|
31
|
+
* @param {boolean} keepOtherSelected Whether to keep current selected cells or discard. Default is false.
|
|
32
|
+
*/
|
|
33
|
+
selectCellRange: (start: GridCellCoordinates, end: GridCellCoordinates, keepOtherSelected?: boolean) => void;
|
|
34
|
+
/**
|
|
35
|
+
* Returns an array containing only the selected cells.
|
|
36
|
+
* Each item is an object with the ID and field of the cell.
|
|
37
|
+
* @returns {GridCellCoordinates[]} Array with the selected cells.
|
|
38
|
+
*/
|
|
39
|
+
getSelectedCellsAsArray: () => GridCellCoordinates[];
|
|
40
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { GridStatePremium } from
|
|
2
|
-
export declare const gridCellSelectionStateSelector: (
|
|
1
|
+
import { GridStatePremium } from "../../../models/gridStatePremium.js";
|
|
2
|
+
export declare const gridCellSelectionStateSelector: import("@mui/x-data-grid").OutputSelector<GridStatePremium, unknown, import("./gridCellSelectionInterfaces").GridCellSelectionModel>;
|
|
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.gridCellSelectionStateSelector = void 0;
|
|
7
|
-
|
|
8
|
-
exports.gridCellSelectionStateSelector =
|
|
7
|
+
var _internals = require("@mui/x-data-grid-pro/internals");
|
|
8
|
+
const gridCellSelectionStateSelector = exports.gridCellSelectionStateSelector = (0, _internals.createRootSelector)(state => state.cellSelection);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from
|
|
1
|
+
export * from "./gridCellSelectionInterfaces.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
2
|
import { GridStateInitializer } from '@mui/x-data-grid-pro/internals';
|
|
3
|
-
import { DataGridPremiumProcessedProps } from
|
|
4
|
-
import { GridPrivateApiPremium } from
|
|
3
|
+
import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
|
|
4
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
5
5
|
export declare const cellSelectionStateInitializer: GridStateInitializer<Pick<DataGridPremiumProcessedProps, 'cellSelectionModel' | 'initialState'>>;
|
|
6
|
-
export declare const useGridCellSelection: (apiRef:
|
|
6
|
+
export declare const useGridCellSelection: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "cellSelection" | "cellSelectionModel" | "onCellSelectionModelChange" | "pagination" | "paginationMode" | "ignoreValueFormatterDuringExport" | "clipboardCopyCellDelimiter" | "columnHeaderHeight">) => void;
|
|
@@ -25,13 +25,10 @@ const AUTO_SCROLL_SPEED = 20; // The speed to scroll once the mouse enters the s
|
|
|
25
25
|
|
|
26
26
|
const useGridCellSelection = (apiRef, props) => {
|
|
27
27
|
const hasRootReference = apiRef.current.rootElementRef.current !== null;
|
|
28
|
-
const visibleRows = (0, _internals.useGridVisibleRows)(apiRef, props);
|
|
29
28
|
const cellWithVirtualFocus = React.useRef(null);
|
|
30
29
|
const lastMouseDownCell = React.useRef(null);
|
|
31
30
|
const mousePosition = React.useRef(null);
|
|
32
31
|
const autoScrollRAF = React.useRef(null);
|
|
33
|
-
const sortedRowIds = (0, _xDataGridPro.useGridSelector)(apiRef, _xDataGridPro.gridSortedRowIdsSelector);
|
|
34
|
-
const dimensions = (0, _xDataGridPro.useGridSelector)(apiRef, _xDataGridPro.gridDimensionsSelector);
|
|
35
32
|
const totalHeaderHeight = (0, _internals.getTotalHeaderHeight)(apiRef, props);
|
|
36
33
|
const ignoreValueFormatterProp = props.ignoreValueFormatterDuringExport;
|
|
37
34
|
const ignoreValueFormatter = (typeof ignoreValueFormatterProp === 'object' ? ignoreValueFormatterProp?.clipboardExport : ignoreValueFormatterProp) || false;
|
|
@@ -52,11 +49,11 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
52
49
|
if (!props.cellSelection) {
|
|
53
50
|
return false;
|
|
54
51
|
}
|
|
55
|
-
const cellSelectionModel = (0, _gridCellSelectionSelector.gridCellSelectionStateSelector)(apiRef
|
|
52
|
+
const cellSelectionModel = (0, _gridCellSelectionSelector.gridCellSelectionStateSelector)(apiRef);
|
|
56
53
|
return cellSelectionModel[id] ? !!cellSelectionModel[id][field] : false;
|
|
57
54
|
}, [apiRef, props.cellSelection]);
|
|
58
55
|
const getCellSelectionModel = React.useCallback(() => {
|
|
59
|
-
return (0, _gridCellSelectionSelector.gridCellSelectionStateSelector)(apiRef
|
|
56
|
+
return (0, _gridCellSelectionSelector.gridCellSelectionStateSelector)(apiRef);
|
|
60
57
|
}, [apiRef]);
|
|
61
58
|
const setCellSelectionModel = React.useCallback(newModel => {
|
|
62
59
|
if (!props.cellSelection) {
|
|
@@ -65,7 +62,6 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
65
62
|
apiRef.current.setState(prevState => (0, _extends2.default)({}, prevState, {
|
|
66
63
|
cellSelection: newModel
|
|
67
64
|
}));
|
|
68
|
-
apiRef.current.forceUpdate();
|
|
69
65
|
}, [apiRef, props.cellSelection]);
|
|
70
66
|
const selectCellRange = React.useCallback((start, end, keepOtherSelected = false) => {
|
|
71
67
|
const startRowIndex = apiRef.current.getRowIndexRelativeToVisibleRows(start.id);
|
|
@@ -85,6 +81,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
85
81
|
finalEndColumnIndex = startColumnIndex;
|
|
86
82
|
}
|
|
87
83
|
const visibleColumns = apiRef.current.getVisibleColumns();
|
|
84
|
+
const visibleRows = (0, _internals.getVisibleRows)(apiRef);
|
|
88
85
|
const rowsInRange = visibleRows.rows.slice(finalStartRowIndex, finalEndRowIndex + 1);
|
|
89
86
|
const columnsInRange = visibleColumns.slice(finalStartColumnIndex, finalEndColumnIndex + 1);
|
|
90
87
|
const newModel = keepOtherSelected ? (0, _extends2.default)({}, apiRef.current.getCellSelectionModel()) : {};
|
|
@@ -97,7 +94,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
97
94
|
}, {});
|
|
98
95
|
});
|
|
99
96
|
apiRef.current.setCellSelectionModel(newModel);
|
|
100
|
-
}, [apiRef
|
|
97
|
+
}, [apiRef]);
|
|
101
98
|
const getSelectedCellsAsArray = React.useCallback(() => {
|
|
102
99
|
const selectionModel = apiRef.current.getCellSelectionModel();
|
|
103
100
|
const currentVisibleRows = (0, _internals.getVisibleRows)(apiRef, props);
|
|
@@ -195,6 +192,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
195
192
|
if (!mousePosition.current || !apiRef.current.virtualScrollerRef?.current) {
|
|
196
193
|
return;
|
|
197
194
|
}
|
|
195
|
+
const dimensions = (0, _xDataGridPro.gridDimensionsSelector)(apiRef);
|
|
198
196
|
const {
|
|
199
197
|
x: mouseX,
|
|
200
198
|
y: mouseY
|
|
@@ -237,7 +235,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
237
235
|
autoScrollRAF.current = requestAnimationFrame(autoScroll);
|
|
238
236
|
}
|
|
239
237
|
autoScroll();
|
|
240
|
-
}, [apiRef,
|
|
238
|
+
}, [apiRef, totalHeaderHeight]);
|
|
241
239
|
const handleCellMouseOver = React.useCallback((params, event) => {
|
|
242
240
|
if (!lastMouseDownCell.current) {
|
|
243
241
|
return;
|
|
@@ -254,6 +252,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
254
252
|
if (!virtualScrollerRect) {
|
|
255
253
|
return;
|
|
256
254
|
}
|
|
255
|
+
const dimensions = (0, _xDataGridPro.gridDimensionsSelector)(apiRef);
|
|
257
256
|
const {
|
|
258
257
|
x,
|
|
259
258
|
y
|
|
@@ -279,7 +278,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
279
278
|
// Mouse has left the sensitivity area while auto scroll is on
|
|
280
279
|
stopAutoScroll();
|
|
281
280
|
}
|
|
282
|
-
}, [apiRef, startAutoScroll, stopAutoScroll, totalHeaderHeight
|
|
281
|
+
}, [apiRef, startAutoScroll, stopAutoScroll, totalHeaderHeight]);
|
|
283
282
|
const handleCellClick = (0, _useEventCallback.default)((params, event) => {
|
|
284
283
|
const {
|
|
285
284
|
id,
|
|
@@ -339,6 +338,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
339
338
|
} else if (event.key === 'ArrowLeft') {
|
|
340
339
|
endColumnIndex -= 1;
|
|
341
340
|
}
|
|
341
|
+
const visibleRows = (0, _internals.getVisibleRows)(apiRef);
|
|
342
342
|
if (endRowIndex < 0 || endRowIndex >= visibleRows.rows.length) {
|
|
343
343
|
return;
|
|
344
344
|
}
|
|
@@ -391,6 +391,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
391
391
|
id,
|
|
392
392
|
field
|
|
393
393
|
}) => {
|
|
394
|
+
const visibleRows = (0, _internals.getVisibleRows)(apiRef);
|
|
394
395
|
if (!visibleRows.range || !apiRef.current.isCellSelected(id, field)) {
|
|
395
396
|
return classes;
|
|
396
397
|
}
|
|
@@ -439,7 +440,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
439
440
|
newClasses.push(_xDataGridPro.gridClasses['cell--rangeRight']);
|
|
440
441
|
}
|
|
441
442
|
return newClasses;
|
|
442
|
-
}, [apiRef
|
|
443
|
+
}, [apiRef]);
|
|
443
444
|
const canUpdateFocus = React.useCallback((initialValue, {
|
|
444
445
|
event,
|
|
445
446
|
cell
|
|
@@ -460,6 +461,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
460
461
|
if (apiRef.current.getSelectedCellsAsArray().length <= 1) {
|
|
461
462
|
return value;
|
|
462
463
|
}
|
|
464
|
+
const sortedRowIds = (0, _xDataGridPro.gridSortedRowIdsSelector)(apiRef);
|
|
463
465
|
const cellSelectionModel = apiRef.current.getCellSelectionModel();
|
|
464
466
|
const unsortedSelectedRowIds = Object.keys(cellSelectionModel);
|
|
465
467
|
const sortedSelectedRowIds = sortedRowIds.filter(id => unsortedSelectedRowIds.includes(`${id}`));
|
|
@@ -485,7 +487,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
485
487
|
return acc === '' ? rowString : [acc, rowString].join('\r\n');
|
|
486
488
|
}, '');
|
|
487
489
|
return copyData;
|
|
488
|
-
}, [apiRef, ignoreValueFormatter, clipboardCopyCellDelimiter
|
|
490
|
+
}, [apiRef, ignoreValueFormatter, clipboardCopyCellDelimiter]);
|
|
489
491
|
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'isCellSelected', checkIfCellIsSelected);
|
|
490
492
|
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'cellClassName', addClassesToCells);
|
|
491
493
|
(0, _internals.useGridRegisterPipeProcessor)(apiRef, 'canUpdateFocus', canUpdateFocus);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { GridPrivateApiPremium } from
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
3
3
|
import type { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
|
|
4
|
-
export declare const useGridClipboardImport: (apiRef:
|
|
4
|
+
export declare const useGridClipboardImport: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "pagination" | "paginationMode" | "processRowUpdate" | "onProcessRowUpdateError" | "getRowId" | "onClipboardPasteStart" | "onClipboardPasteEnd" | "splitClipboardPastedText" | "disableClipboardPaste" | "onBeforeClipboardPasteStart">) => void;
|
|
@@ -201,10 +201,10 @@ function defaultPasteResolver({
|
|
|
201
201
|
}
|
|
202
202
|
return true;
|
|
203
203
|
});
|
|
204
|
-
|
|
205
|
-
if (selectedRows.size > 0 && !isSingleValuePasted) {
|
|
204
|
+
if ((0, _xDataGrid.gridRowSelectionCountSelector)(apiRef) > 0 && !isSingleValuePasted) {
|
|
206
205
|
// Multiple values are pasted starting from the first and top-most cell
|
|
207
206
|
const pastedRowsDataCount = pastedData.length;
|
|
207
|
+
const selectedRows = (0, _xDataGrid.gridRowSelectionIdsSelector)(apiRef);
|
|
208
208
|
|
|
209
209
|
// There's no guarantee that the selected rows are in the same order as the pasted rows
|
|
210
210
|
selectedRows.forEach((row, rowId) => {
|
|
@@ -263,7 +263,6 @@ const useGridClipboardImport = (apiRef, props) => {
|
|
|
263
263
|
const onProcessRowUpdateError = props.onProcessRowUpdateError;
|
|
264
264
|
const getRowId = props.getRowId;
|
|
265
265
|
const enableClipboardPaste = !props.disableClipboardPaste;
|
|
266
|
-
const rootEl = apiRef.current.rootElementRef?.current;
|
|
267
266
|
const logger = (0, _internals.useGridLogger)(apiRef, 'useGridClipboardImport');
|
|
268
267
|
const splitClipboardPastedText = props.splitClipboardPastedText;
|
|
269
268
|
const {
|
|
@@ -286,6 +285,7 @@ const useGridClipboardImport = (apiRef, props) => {
|
|
|
286
285
|
return;
|
|
287
286
|
}
|
|
288
287
|
}
|
|
288
|
+
const rootEl = apiRef.current.rootElementRef?.current;
|
|
289
289
|
if (!rootEl) {
|
|
290
290
|
return;
|
|
291
291
|
}
|
|
@@ -326,7 +326,7 @@ const useGridClipboardImport = (apiRef, props) => {
|
|
|
326
326
|
paginationMode
|
|
327
327
|
});
|
|
328
328
|
cellUpdater.applyUpdates();
|
|
329
|
-
}, [apiRef, processRowUpdate, onProcessRowUpdateError, getRowId, enableClipboardPaste,
|
|
329
|
+
}, [apiRef, processRowUpdate, onProcessRowUpdateError, getRowId, enableClipboardPaste, splitClipboardPastedText, pagination, paginationMode, onBeforeClipboardPasteStart, logger]);
|
|
330
330
|
const checkIfCanStartEditing = React.useCallback((initialValue, {
|
|
331
331
|
event
|
|
332
332
|
}) => {
|
|
@@ -1,47 +1,54 @@
|
|
|
1
1
|
import type { GridColDef, GridRowId, GridValidRowModel, GridDataSource, GridGetRowsResponse, GridGetRowsParams, GridDataSourceApiBase, GridDataSourcePrivateApi } from '@mui/x-data-grid-pro';
|
|
2
2
|
import type { GridAggregationModel } from '../aggregation/gridAggregationInterfaces';
|
|
3
3
|
export interface GridGetRowsResponsePremium extends GridGetRowsResponse {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Row to be used for aggregation footer row.
|
|
6
|
+
* It must provide the values for the aggregated columns passed in
|
|
7
|
+
* `GridGetRowsParams.aggregationModel`.
|
|
8
|
+
*/
|
|
9
|
+
aggregateRow?: GridValidRowModel;
|
|
10
10
|
}
|
|
11
11
|
export interface GridGetRowsParamsPremium extends GridGetRowsParams {
|
|
12
|
-
|
|
12
|
+
/**
|
|
13
|
+
* List of aggregated columns.
|
|
14
|
+
*/
|
|
15
|
+
aggregationModel?: GridAggregationModel;
|
|
16
|
+
/**
|
|
17
|
+
* List of grouped columns (only applicable with `rowGrouping`).
|
|
18
|
+
*/
|
|
19
|
+
groupFields?: GridColDef['field'][];
|
|
13
20
|
}
|
|
14
21
|
export interface GridDataSourcePremium extends Omit<GridDataSource, 'getRows'> {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
22
|
+
/**
|
|
23
|
+
* This method will be called when the grid needs to fetch some rows.
|
|
24
|
+
* @param {GridGetRowsParamsPremium} params The parameters required to fetch the rows.
|
|
25
|
+
* @returns {Promise<GridGetRowsResponsePremium>} A promise that resolves to the data of type [GridGetRowsResponsePremium].
|
|
26
|
+
*/
|
|
27
|
+
getRows(params: GridGetRowsParamsPremium): Promise<GridGetRowsResponsePremium>;
|
|
28
|
+
/**
|
|
29
|
+
* Used to get the aggregated value for a parent row.
|
|
30
|
+
* @param {GridValidRowModel} row The row to extract the aggregated value from.
|
|
31
|
+
* @param {GridColDef['field']} field The field to extract the aggregated value for.
|
|
32
|
+
* @returns {string} The aggregated value for a specific aggregated column.
|
|
33
|
+
*/
|
|
34
|
+
getAggregatedValue?: (row: GridValidRowModel, field: GridColDef['field']) => string;
|
|
28
35
|
}
|
|
29
36
|
export interface GridDataSourceApiBasePremium extends Omit<GridDataSourceApiBase, 'fetchRows'> {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
/**
|
|
38
|
+
* Fetches the rows from the server.
|
|
39
|
+
* If no `parentId` option is provided, it fetches the root rows.
|
|
40
|
+
* Any missing parameter from `params` will be filled from the state (sorting, filtering, etc.).
|
|
41
|
+
* @param {GridRowId} parentId The id of the parent node (default: `GRID_ROOT_GROUP_ID`).
|
|
42
|
+
* @param {Partial<GridGetRowsParamsPremium>} params Request parameters override.
|
|
43
|
+
*/
|
|
44
|
+
fetchRows: (parentId?: GridRowId, params?: Partial<GridGetRowsParamsPremium>) => void;
|
|
38
45
|
}
|
|
39
46
|
export interface GridDataSourceApiPremium {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
47
|
+
/**
|
|
48
|
+
* The data source API.
|
|
49
|
+
*/
|
|
50
|
+
dataSource: GridDataSourceApiBasePremium;
|
|
44
51
|
}
|
|
45
52
|
export interface GridDataSourcePremiumPrivateApi extends GridDataSourcePrivateApi {
|
|
46
|
-
|
|
47
|
-
}
|
|
53
|
+
resolveGroupAggregation: (groupId: GridRowId, field: string) => any;
|
|
54
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { GridPrivateApiPremium } from
|
|
3
|
-
import { DataGridPremiumProcessedProps } from
|
|
4
|
-
export declare const useGridDataSourcePremium: (apiRef:
|
|
1
|
+
import { RefObject } from '@mui/x-internals/types';
|
|
2
|
+
import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
|
|
3
|
+
import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
|
|
4
|
+
export declare const useGridDataSourcePremium: (apiRef: RefObject<GridPrivateApiPremium>, props: DataGridPremiumProcessedProps) => void;
|
|
@@ -10,18 +10,21 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
10
10
|
var React = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _xDataGridPro = require("@mui/x-data-grid-pro");
|
|
12
12
|
var _internals = require("@mui/x-data-grid-pro/internals");
|
|
13
|
-
|
|
13
|
+
function getKeyPremium(params) {
|
|
14
|
+
return JSON.stringify([params.filterModel, params.sortModel, params.groupKeys, params.groupFields, params.start, params.end, params.aggregationModel]);
|
|
15
|
+
}
|
|
14
16
|
const options = {
|
|
15
17
|
cacheOptions: {
|
|
16
|
-
getKey:
|
|
18
|
+
getKey: getKeyPremium
|
|
17
19
|
}
|
|
18
20
|
};
|
|
19
21
|
const useGridDataSourcePremium = (apiRef, props) => {
|
|
20
22
|
const {
|
|
21
23
|
api,
|
|
22
24
|
strategyProcessor,
|
|
23
|
-
events
|
|
24
|
-
|
|
25
|
+
events,
|
|
26
|
+
setStrategyAvailability
|
|
27
|
+
} = (0, _internals.useGridDataSourceBasePro)(apiRef, props, options);
|
|
25
28
|
const aggregateRowRef = React.useRef({});
|
|
26
29
|
const processDataSourceRows = React.useCallback(({
|
|
27
30
|
params,
|
|
@@ -43,11 +46,11 @@ const useGridDataSourcePremium = (apiRef, props) => {
|
|
|
43
46
|
}, [apiRef]);
|
|
44
47
|
const resolveGroupAggregation = React.useCallback((groupId, field) => {
|
|
45
48
|
if (groupId === _xDataGridPro.GRID_ROOT_GROUP_ID) {
|
|
46
|
-
return props.
|
|
49
|
+
return props.dataSource?.getAggregatedValue?.(aggregateRowRef.current, field);
|
|
47
50
|
}
|
|
48
51
|
const row = apiRef.current.getRow(groupId);
|
|
49
|
-
return props.
|
|
50
|
-
}, [apiRef, props.
|
|
52
|
+
return props.dataSource?.getAggregatedValue?.(row, field);
|
|
53
|
+
}, [apiRef, props.dataSource]);
|
|
51
54
|
const privateApi = (0, _extends2.default)({}, api.private, {
|
|
52
55
|
resolveGroupAggregation
|
|
53
56
|
});
|
|
@@ -58,5 +61,8 @@ const useGridDataSourcePremium = (apiRef, props) => {
|
|
|
58
61
|
Object.entries(events).forEach(([event, handler]) => {
|
|
59
62
|
(0, _xDataGridPro.useGridApiEventHandler)(apiRef, event, handler);
|
|
60
63
|
});
|
|
64
|
+
React.useEffect(() => {
|
|
65
|
+
setStrategyAvailability();
|
|
66
|
+
}, [setStrategyAvailability]);
|
|
61
67
|
};
|
|
62
68
|
exports.useGridDataSourcePremium = useGridDataSourcePremium;
|
|
@@ -3,11 +3,11 @@ import { GridFileExportOptions, GridExportFormat as GridExportFormatCommunity, G
|
|
|
3
3
|
export type GridExportFormat = GridExportFormatCommunity | 'excel';
|
|
4
4
|
export type GridExportExtension = GridExportExtensionCommunity | 'xlsx';
|
|
5
5
|
export interface GridExceljsProcessInput {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
workbook: Excel.Workbook;
|
|
7
|
+
worksheet: Excel.Worksheet;
|
|
8
8
|
}
|
|
9
9
|
export interface ColumnsStylesInterface {
|
|
10
|
-
|
|
10
|
+
[field: string]: Partial<Excel.Style>;
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* The options to apply on the Excel export.
|
|
@@ -15,57 +15,57 @@ export interface ColumnsStylesInterface {
|
|
|
15
15
|
* - [Excel export](/x/react-data-grid/export/#excel-export)
|
|
16
16
|
*/
|
|
17
17
|
export interface GridExcelExportOptions extends GridFileExportOptions {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Function to return the Worker instance to be called.
|
|
20
|
+
* @returns {() => Worker} A Worker instance.
|
|
21
|
+
*/
|
|
22
|
+
worker?: () => Worker;
|
|
23
|
+
/**
|
|
24
|
+
* Name given to the worksheet containing the columns valueOptions.
|
|
25
|
+
* valueOptions are added to this worksheet if they are provided as an array.
|
|
26
|
+
*/
|
|
27
|
+
valueOptionsSheetName?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Method called before adding the rows to the workbook.
|
|
30
|
+
* Not supported when `worker` is set.
|
|
31
|
+
* To use with web workers, use the option in `setupExcelExportWebWorker`.
|
|
32
|
+
* @param {GridExceljsProcessInput} processInput object containing the workbook and the worksheet.
|
|
33
|
+
* @returns {Promise<void>} A promise which resolves after processing the input.
|
|
34
|
+
* */
|
|
35
|
+
exceljsPreProcess?: (processInput: GridExceljsProcessInput) => Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Method called after adding the rows to the workbook.
|
|
38
|
+
* Not supported when `worker` is set.
|
|
39
|
+
* To use with web workers, use the option in `setupExcelExportWebWorker`.
|
|
40
|
+
* @param {GridExceljsProcessInput} processInput object containing the workbook and the worksheet.
|
|
41
|
+
* @returns {Promise<void>} A promise which resolves after processing the input.
|
|
42
|
+
* */
|
|
43
|
+
exceljsPostProcess?: (processInput: GridExceljsProcessInput) => Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Object mapping column field to Exceljs style
|
|
46
|
+
* */
|
|
47
|
+
columnsStyles?: ColumnsStylesInterface;
|
|
48
|
+
/**
|
|
49
|
+
* If `true`, the headers of the column groups will be added into the file.
|
|
50
|
+
* @default true
|
|
51
|
+
*/
|
|
52
|
+
includeColumnGroupsHeaders?: boolean;
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
55
|
* The excel export API interface that is available in the grid [[apiRef]].
|
|
56
56
|
*/
|
|
57
57
|
export interface GridExcelExportApi {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
}
|
|
58
|
+
/**
|
|
59
|
+
* Returns the grid data as an exceljs workbook.
|
|
60
|
+
* This method is used internally by `exportDataAsExcel`.
|
|
61
|
+
* @param {GridExcelExportOptions} options The options to apply on the export.
|
|
62
|
+
* @returns {Promise<Excel.Workbook>} The data in a exceljs workbook object.
|
|
63
|
+
*/
|
|
64
|
+
getDataAsExcel: (options?: GridExcelExportOptions) => Promise<Excel.Workbook> | null;
|
|
65
|
+
/**
|
|
66
|
+
* Downloads and exports an Excel file of the grid's data.
|
|
67
|
+
* @param {GridExcelExportOptions} options The options to apply on the export.
|
|
68
|
+
* @returns {Promise<void>} A promise which resolves after exporting to Excel.
|
|
69
|
+
*/
|
|
70
|
+
exportDataAsExcel: (options?: GridExcelExportOptions) => Promise<void>;
|
|
71
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export { setupExcelExportWebWorker } from
|
|
1
|
+
export * from "./gridExcelExportInterface.js";
|
|
2
|
+
export { setupExcelExportWebWorker } from "./serializer/setupExcelExportWebWorker.js";
|
|
@@ -9,7 +9,7 @@ var _exportNames = {
|
|
|
9
9
|
Object.defineProperty(exports, "setupExcelExportWebWorker", {
|
|
10
10
|
enumerable: true,
|
|
11
11
|
get: function () {
|
|
12
|
-
return
|
|
12
|
+
return _setupExcelExportWebWorker.setupExcelExportWebWorker;
|
|
13
13
|
}
|
|
14
14
|
});
|
|
15
15
|
var _gridExcelExportInterface = require("./gridExcelExportInterface");
|
|
@@ -24,4 +24,4 @@ Object.keys(_gridExcelExportInterface).forEach(function (key) {
|
|
|
24
24
|
}
|
|
25
25
|
});
|
|
26
26
|
});
|
|
27
|
-
var
|
|
27
|
+
var _setupExcelExportWebWorker = require("./serializer/setupExcelExportWebWorker");
|