aboutsummaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx7
-rw-r--r--packages/taler-wallet-webextension/src/wxApi.ts4
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
index 8d24545d5..b32555248 100644
--- 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
index 46a175afa..4d8b932d3 100644
--- 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" });