diff options
Diffstat (limited to 'packages/taler-wallet-webextension/src/hooks/useBackupDeviceName.ts')
-rw-r--r-- | packages/taler-wallet-webextension/src/hooks/useBackupDeviceName.ts | 42 |
1 files changed, 23 insertions, 19 deletions
diff --git a/packages/taler-wallet-webextension/src/hooks/useBackupDeviceName.ts b/packages/taler-wallet-webextension/src/hooks/useBackupDeviceName.ts index f3b1b3b5f..6288b6986 100644 --- a/packages/taler-wallet-webextension/src/hooks/useBackupDeviceName.ts +++ b/packages/taler-wallet-webextension/src/hooks/useBackupDeviceName.ts @@ -1,6 +1,6 @@ /* This file is part of GNU Taler - (C) 2021 Taler Systems S.A. + (C) 2022 Taler Systems S.A. GNU Taler is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software @@ -14,37 +14,41 @@ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> */ +import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; import { useEffect, useState } from "preact/hooks"; -import * as wxApi from "../wxApi"; - +import { useBackendContext } from "../context/backend.js"; export interface BackupDeviceName { name: string; - update: (s:string) => Promise<void> + update: (s: string) => Promise<void>; } - export function useBackupDeviceName(): BackupDeviceName { const [status, setStatus] = useState<BackupDeviceName>({ - name: '', - update: () => Promise.resolve() - }) + name: "", + update: () => Promise.resolve(), + }); + const api = useBackendContext(); useEffect(() => { - async function run() { + async function run(): Promise<void> { //create a first list of backup info by currency - const status = await wxApi.getBackupInfo() - - async function update(newName: string) { - await wxApi.setWalletDeviceId(newName) - setStatus(old => ({ ...old, name: newName })) + const status = await api.wallet.call( + WalletApiOperation.GetBackupInfo, + {}, + ); + + async function update(newName: string): Promise<void> { + await api.wallet.call(WalletApiOperation.SetWalletDeviceId, { + walletDeviceId: newName, + }); + setStatus((old) => ({ ...old, name: newName })); } - setStatus({ name: status.deviceId, update }) + setStatus({ name: status.deviceId, update }); } - run() - }, []) + run(); + }, []); - return status + return status; } - |