stupa-pdf-api/frontend/node_modules/@mui/x-data-grid/hooks/features/statePersistence/useGridStatePersistence.js

24 lines
785 B
JavaScript

import * as React from 'react';
import { useGridApiMethod } from '../../utils';
export const useGridStatePersistence = apiRef => {
const exportState = React.useCallback((params = {}) => {
const stateToExport = apiRef.current.unstable_applyPipeProcessors('exportState', {}, params);
return stateToExport;
}, [apiRef]);
const restoreState = React.useCallback(stateToRestore => {
const response = apiRef.current.unstable_applyPipeProcessors('restoreState', {
callbacks: []
}, {
stateToRestore
});
response.callbacks.forEach(callback => {
callback();
});
apiRef.current.forceUpdate();
}, [apiRef]);
const statePersistenceApi = {
exportState,
restoreState
};
useGridApiMethod(apiRef, statePersistenceApi, 'public');
};