gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-wallet-core] branch master updated: -type fixes


From: gnunet
Subject: [taler-wallet-core] branch master updated: -type fixes
Date: Mon, 31 Oct 2022 17:18:19 +0100

This is an automated email from the git hooks/post-receive script.

dold pushed a commit to branch master
in repository wallet-core.

The following commit(s) were added to refs/heads/master by this push:
     new 0e7a0741c -type fixes
0e7a0741c is described below

commit 0e7a0741c67ef788523eb26afa36105a49405f68
Author: Florian Dold <florian@dold.me>
AuthorDate: Mon Oct 31 17:18:16 2022 +0100

    -type fixes
---
 packages/anastasis-core/tsconfig.json              |  2 +-
 packages/taler-util/src/amounts.ts                 | 24 +++++++++++---------
 .../src/cta/Deposit/state.ts                       |  4 ++--
 .../src/cta/Deposit/test.ts                        | 26 +++++++++++-----------
 4 files changed, 29 insertions(+), 27 deletions(-)

diff --git a/packages/anastasis-core/tsconfig.json 
b/packages/anastasis-core/tsconfig.json
index b5476273c..7cab21017 100644
--- a/packages/anastasis-core/tsconfig.json
+++ b/packages/anastasis-core/tsconfig.json
@@ -4,7 +4,7 @@
     "composite": true,
     "target": "ES2018",
     "module": "ESNext",
-    "moduleResolution": "node",
+    "moduleResolution": "Node16",
     "sourceMap": true,
     "lib": ["es6", "DOM"],
     "noImplicitReturns": true,
diff --git a/packages/taler-util/src/amounts.ts 
b/packages/taler-util/src/amounts.ts
index 337f342a3..c9a78356e 100644
--- a/packages/taler-util/src/amounts.ts
+++ b/packages/taler-util/src/amounts.ts
@@ -192,16 +192,18 @@ export class Amounts {
    *
    * Throws when currencies don't match.
    */
-  static sub(a: AmountJson, ...rest: AmountJson[]): Result {
-    const currency = a.currency;
-    let value = a.value;
-    let fraction = a.fraction;
+  static sub(a: AmountLike, ...rest: AmountLike[]): Result {
+    const aJ = Amounts.jsonifyAmount(a);
+    const currency = aJ.currency;
+    let value = aJ.value;
+    let fraction = aJ.fraction;
 
     for (const b of rest) {
-      if (b.currency.toUpperCase() !== a.currency.toUpperCase()) {
-        throw Error(`Mismatched currency: ${b.currency} and ${currency}`);
+      const bJ = Amounts.jsonifyAmount(b);
+      if (bJ.currency.toUpperCase() !== aJ.currency.toUpperCase()) {
+        throw Error(`Mismatched currency: ${bJ.currency} and ${currency}`);
       }
-      if (fraction < b.fraction) {
+      if (fraction < bJ.fraction) {
         if (value < 1) {
           return {
             amount: { currency, value: 0, fraction: 0 },
@@ -211,12 +213,12 @@ export class Amounts {
         value--;
         fraction += amountFractionalBase;
       }
-      console.assert(fraction >= b.fraction);
-      fraction -= b.fraction;
-      if (value < b.value) {
+      console.assert(fraction >= bJ.fraction);
+      fraction -= bJ.fraction;
+      if (value < bJ.value) {
         return { amount: { currency, value: 0, fraction: 0 }, saturated: true 
};
       }
-      value -= b.value;
+      value -= bJ.value;
     }
 
     return { amount: { currency, value, fraction }, saturated: false };
diff --git a/packages/taler-wallet-webextension/src/cta/Deposit/state.ts 
b/packages/taler-wallet-webextension/src/cta/Deposit/state.ts
index ba7bd147b..77e918ca9 100644
--- a/packages/taler-wallet-webextension/src/cta/Deposit/state.ts
+++ b/packages/taler-wallet-webextension/src/cta/Deposit/state.ts
@@ -61,8 +61,8 @@ export function useComponentState(
     },
     fee: Amounts.sub(deposit.totalDepositCost, deposit.effectiveDepositAmount)
       .amount,
-    cost: deposit.totalDepositCost,
-    effective: deposit.effectiveDepositAmount,
+    cost: Amounts.parseOrThrow(deposit.totalDepositCost),
+    effective: Amounts.parseOrThrow(deposit.effectiveDepositAmount),
     cancel,
   };
 }
diff --git a/packages/taler-wallet-webextension/src/cta/Deposit/test.ts 
b/packages/taler-wallet-webextension/src/cta/Deposit/test.ts
index f628b3287..a5bfed4a8 100644
--- a/packages/taler-wallet-webextension/src/cta/Deposit/test.ts
+++ b/packages/taler-wallet-webextension/src/cta/Deposit/test.ts
@@ -38,11 +38,9 @@ describe("Deposit CTA states", () => {
       onSuccess: async () => {
         null;
       },
-    }
+    };
     const { pullLastResultOrThrow, waitForStateUpdate, assertNoPendingUpdate } 
=
-      mountHook(() =>
-        useComponentState(props, mock),
-      );
+      mountHook(() => useComponentState(props, mock));
 
     {
       const { status } = pullLastResultOrThrow();
@@ -62,15 +60,19 @@ describe("Deposit CTA states", () => {
       expect(error.message).eq("ERROR_NO-URI-FOR-DEPOSIT");
     }
     await assertNoPendingUpdate();
-    expect(handler.getCallingQueueState()).eq("empty")
+    expect(handler.getCallingQueueState()).eq("empty");
   });
 
   it("should be ready after loading", async () => {
     const { handler, mock } = createWalletApiMock();
-    handler.addWalletCallResponse(WalletApiOperation.PrepareDeposit, 
undefined, {
-      effectiveDepositAmount: Amounts.parseOrThrow("EUR:1"),
-      totalDepositCost: Amounts.parseOrThrow("EUR:1.2"),
-    });
+    handler.addWalletCallResponse(
+      WalletApiOperation.PrepareDeposit,
+      undefined,
+      {
+        effectiveDepositAmount: "EUR:1",
+        totalDepositCost: "EUR:1.2",
+      },
+    );
     const props = {
       talerDepositUri: "payto://refund/asdasdas",
       amountStr: "EUR:1",
@@ -80,12 +82,10 @@ describe("Deposit CTA states", () => {
       onSuccess: async () => {
         null;
       },
-    }
+    };
 
     const { pullLastResultOrThrow, waitForStateUpdate, assertNoPendingUpdate } 
=
-      mountHook(() =>
-        useComponentState(props, mock),
-      );
+      mountHook(() => useComponentState(props, mock));
 
     {
       const { status } = pullLastResultOrThrow();

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]