taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit 0f8e9b67dd1dede142f0cb25406f212d07da7b3f
parent 3587766046be4b4a7a85002e8ae0fcb13be094de
Author: Sebastian <sebasjm@gmail.com>
Date:   Wed,  1 Dec 2021 14:57:37 -0300

exportDb call to the wallet-core

Diffstat:
Mpackages/taler-wallet-webextension/src/popup/DeveloperPage.tsx | 7+++++--
Mpackages/taler-wallet-webextension/src/wxApi.ts | 4++++
2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx b/packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx @@ -46,7 +46,10 @@ export function DeveloperPage(): VNode { return <View status={status} timedOut={timedOut} operations={operations} - onDownloadDatabase={async () => "content"} + onDownloadDatabase={async () => { + const db = await wxApi.exportDB() + return JSON.stringify(db) + }} />; } @@ -81,7 +84,7 @@ export function View({ status, timedOut, operations, onDownloadDatabase }: Props <br /> <button onClick={onExportDatabase}>export database</button> {downloadedDatabase && <div> - Database exported at <Time timestamp={{t_ms: downloadedDatabase.time.getTime()}} format="yyyy/MM/dd HH:mm:ss" /> <a href={`data:text/plain;charset=utf-8;base64,${Buffer.from(downloadedDatabase.content).toString('base64')}`} download={`taler-wallet-database-${format(downloadedDatabase.time, 'yyyy/MM/dd_HH:mm')}.json`}>click here</a> to download + Database exported at <Time timestamp={{t_ms: downloadedDatabase.time.getTime()}} format="yyyy/MM/dd HH:mm:ss" /> <a href={`data:text/plain;charset=utf-8;base64,${btoa(downloadedDatabase.content)}`} download={`taler-wallet-database-${format(downloadedDatabase.time, 'yyyy/MM/dd_HH:mm')}.json`}>click here</a> to download </div>} <br /> <Diagnostics diagnostics={status} timedOut={timedOut} /> diff --git a/packages/taler-wallet-webextension/src/wxApi.ts b/packages/taler-wallet-webextension/src/wxApi.ts @@ -355,6 +355,10 @@ export function acceptTip(req: AcceptTipRequest): Promise<void> { return callBackend("acceptTip", req); } +export function exportDB(): Promise<any> { + return callBackend("exportDb", {}); +} + export function onUpdateNotification(messageTypes: Array<NotificationType>, doCallback: () => void): () => void { // eslint-disable-next-line no-undef const port = chrome.runtime.connect({ name: "notifications" });