diff options
author | Florian Dold <florian.dold@gmail.com> | 2019-11-30 00:36:20 +0100 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2019-11-30 00:36:20 +0100 |
commit | aaf7e1338d6cdb1b4e01ad318938b3eaea2f922b (patch) | |
tree | 594129ccdf20757aeb86d434dd62c0c1e8259ed5 /src/webex/wxBackend.ts | |
parent | 809fa186448dbd924f258f89920b9336f1979bb0 (diff) | |
download | wallet-core-aaf7e1338d6cdb1b4e01ad318938b3eaea2f922b.tar.xz |
wallet robustness WIP
Diffstat (limited to 'src/webex/wxBackend.ts')
-rw-r--r-- | src/webex/wxBackend.ts | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/src/webex/wxBackend.ts b/src/webex/wxBackend.ts index 57c10d94a..78c86a976 100644 --- a/src/webex/wxBackend.ts +++ b/src/webex/wxBackend.ts @@ -117,8 +117,8 @@ async function handleMessage( return needsWallet().confirmReserve(req); } case "confirm-pay": { - if (typeof detail.proposalId !== "number") { - throw Error("proposalId must be number"); + if (typeof detail.proposalId !== "string") { + throw Error("proposalId must be string"); } return needsWallet().confirmPay(detail.proposalId, detail.sessionId); } @@ -178,11 +178,11 @@ async function handleMessage( } return needsWallet().getCoinsForExchange(detail.exchangeBaseUrl); } - case "get-precoins": { + case "get-planchets": { if (typeof detail.exchangeBaseUrl !== "string") { return Promise.reject(Error("exchangBaseUrl missing")); } - return needsWallet().getPreCoins(detail.exchangeBaseUrl); + return needsWallet().getPlanchets(detail.exchangeBaseUrl); } case "get-denoms": { if (typeof detail.exchangeBaseUrl !== "string") { @@ -658,8 +658,8 @@ export async function wxMain() { if (!wallet) { console.warn("wallet not available while handling header"); } - if (details.statusCode === 402) { - console.log(`got 402 from ${details.url}`); + if (details.statusCode === 402 || details.statusCode === 202) { + console.log(`got 402/202 from ${details.url}`); for (let header of details.responseHeaders || []) { if (header.name.toLowerCase() === "taler") { const talerUri = header.value || ""; @@ -705,6 +705,15 @@ export async function wxMain() { talerRefundUri: talerUri, }, ); + } else if (talerUri.startsWith("taler://notify-reserve/")) { + Promise.resolve().then(() => { + const w = currentWallet; + if (!w) { + return; + } + w.handleNotifyReserve(); + }); + } else { console.warn("Unknown action in taler:// URI, ignoring."); } |