aboutsummaryrefslogtreecommitdiff
path: root/src/headless/taler-wallet-cli.ts
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2020-07-28 15:18:01 +0530
committerFlorian Dold <florian.dold@gmail.com>2020-07-28 15:18:01 +0530
commit43655adff0f8f1db082e1f0c18f1271a29ab8905 (patch)
treeaf106a1e45f85eb12399d8e25ae6f3a413d4fe60 /src/headless/taler-wallet-cli.ts
parent86fd5f24406d05fe473c0ffe6c22666fe1b3e343 (diff)
downloadwallet-core-43655adff0f8f1db082e1f0c18f1271a29ab8905.tar.xz
updated preparePay API according to spec
Diffstat (limited to 'src/headless/taler-wallet-cli.ts')
-rw-r--r--src/headless/taler-wallet-cli.ts32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/headless/taler-wallet-cli.ts b/src/headless/taler-wallet-cli.ts
index 4bae298a0..ca0f0f5d1 100644
--- a/src/headless/taler-wallet-cli.ts
+++ b/src/headless/taler-wallet-cli.ts
@@ -43,6 +43,7 @@ import { NodeHttpLib } from "./NodeHttpLib";
import * as nacl from "../crypto/primitives/nacl-fast";
import { addPaytoQueryParams } from "../util/payto";
import { handleCoreApiRequest } from "../walletCoreApiHandler";
+import { PreparePayResultType } from "../types/walletTypes";
const logger = new Logger("taler-wallet-cli.ts");
@@ -58,19 +59,19 @@ async function doPay(
options: { alwaysYes: boolean } = { alwaysYes: true },
): Promise<void> {
const result = await wallet.preparePayForUri(payUrl);
- if (result.status === "error") {
- console.error("Could not pay:", result.error);
- process.exit(1);
- return;
- }
- if (result.status === "insufficient-balance") {
+ if (result.status === PreparePayResultType.InsufficientBalance) {
console.log("contract", result.contractTermsRaw);
console.error("insufficient balance");
process.exit(1);
return;
}
- if (result.status === "paid") {
- console.log("already paid!");
+ if (result.status === PreparePayResultType.AlreadyConfirmed) {
+ if (result.paid) {
+ console.log("already paid!");
+ } else {
+ console.log("payment already in progress");
+ }
+
process.exit(0);
return;
}
@@ -502,16 +503,17 @@ advancedCli
await withWallet(args, async (wallet) => {
const res = await wallet.preparePayForUri(args.payPrepare.url);
switch (res.status) {
- case "error":
- console.log("error:", res.error);
- break;
- case "insufficient-balance":
+ case PreparePayResultType.InsufficientBalance:
console.log("insufficient balance");
break;
- case "paid":
- console.log("already paid");
+ case PreparePayResultType.AlreadyConfirmed:
+ if (res.paid) {
+ console.log("already paid!");
+ } else {
+ console.log("payment in progress");
+ }
break;
- case "payment-possible":
+ case PreparePayResultType.PaymentPossible:
console.log("payment possible");
break;
default: