Files
cinny/src/app/hooks/useRestoreBackupOnVerification.ts
T

25 lines
712 B
TypeScript
Raw Normal View History

import { useSetAtom } from 'jotai';
import { useCallback } from 'react';
import { backupRestoreProgressAtom } from '../state/backupRestore';
import { useMatrixClient } from './useMatrixClient';
import { useKeyBackupDecryptionKeyCached } from './useKeyBackup';
export const useRestoreBackupOnVerification = () => {
const setRestoreProgress = useSetAtom(backupRestoreProgressAtom);
const mx = useMatrixClient();
useKeyBackupDecryptionKeyCached(
useCallback(() => {
const crypto = mx.getCrypto();
if (!crypto) return;
crypto.restoreKeyBackup({
progressCallback(progress) {
setRestoreProgress(progress);
},
});
}, [mx, setRestoreProgress])
);
};