Files
Vlad Durnea cffdf8af86
Some checks failed
CI/CD Pipeline / unit-tests (push) Failing after 1m16s
CI/CD Pipeline / integration-tests (push) Failing after 2m32s
CI/CD Pipeline / lint (push) Successful in 5m22s
CI/CD Pipeline / e2e-tests (push) Has been skipped
CI/CD Pipeline / build (push) Has been skipped
wip:milestone 0 fixes
2026-03-15 12:35:42 +02:00

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');
};