From cea0ac02b64c2a575a5788552e813d315e3f3096 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Thu, 13 Jan 2022 01:33:24 -0300 Subject: import db from the wallet web extension --- .../src/popup/DeveloperPage.tsx | 27 +++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx') diff --git a/packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx b/packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx index 840398a44..ea87ba01f 100644 --- a/packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx +++ b/packages/taler-wallet-webextension/src/popup/DeveloperPage.tsx @@ -18,7 +18,7 @@ import { NotificationType } from "@gnu-taler/taler-util"; import { PendingTaskInfo } from "@gnu-taler/taler-wallet-core"; import { format } from "date-fns"; import { Fragment, h, VNode } from "preact"; -import { useState } from "preact/hooks"; +import { useRef, useState } from "preact/hooks"; import { Diagnostics } from "../components/Diagnostics"; import { NotifyUpdateFadeOut } from "../components/styled"; import { Time } from "../components/Time"; @@ -83,11 +83,34 @@ export function View({ content, }); } + const fileRef = useRef(null); + async function onImportDatabase(str: string): Promise { + return wxApi.importDB(JSON.parse(str)); + } return (

Debug tools:


+ + { + const f: FileList | null = e.currentTarget.files; + if (!f || f.length != 1) { + return Promise.reject(); + } + const buf = await f[0].arrayBuffer(); + const str = new Uint8Array(buf).reduce( + (data, byte) => data + String.fromCharCode(byte), + "", + ); + return onImportDatabase(str); + }} + /> +
{downloadedDatabase && (
@@ -152,6 +175,8 @@ export function reload(): void { } } +function runIntegrationTest() {} + export async function confirmReset(): Promise { if ( confirm( -- cgit v1.2.3