aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src/operations/deposits.ts
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2022-11-02 17:42:14 +0100
committerFlorian Dold <florian@dold.me>2022-11-02 18:23:17 +0100
commitd50294f76e0aa357d690a933bb6d696a2f6aef1b (patch)
treeabe961337c5df1614b5095bce6c5b09e761cda2c /packages/taler-wallet-core/src/operations/deposits.ts
parent6c3ef31d9a7ba44829e779afed0af9be3ab23723 (diff)
downloadwallet-core-d50294f76e0aa357d690a933bb6d696a2f6aef1b.tar.xz
wallet-core: DB FIXMEs (amount format)
Diffstat (limited to 'packages/taler-wallet-core/src/operations/deposits.ts')
-rw-r--r--packages/taler-wallet-core/src/operations/deposits.ts30
1 files changed, 16 insertions, 14 deletions
diff --git a/packages/taler-wallet-core/src/operations/deposits.ts b/packages/taler-wallet-core/src/operations/deposits.ts
index b2bd18260..6ac4f3986 100644
--- a/packages/taler-wallet-core/src/operations/deposits.ts
+++ b/packages/taler-wallet-core/src/operations/deposits.ts
@@ -348,10 +348,10 @@ export async function prepareDepositGroup(
auditors: contractData.allowedAuditors,
exchanges: contractData.allowedExchanges,
wireMethod: contractData.wireMethod,
- contractTermsAmount: contractData.amount,
- depositFeeLimit: contractData.maxDepositFee,
+ contractTermsAmount: Amounts.parseOrThrow(contractData.amount),
+ depositFeeLimit: Amounts.parseOrThrow(contractData.maxDepositFee),
wireFeeAmortization: contractData.wireFeeAmortization ?? 1,
- wireFeeLimit: contractData.maxWireFee,
+ wireFeeLimit: Amounts.parseOrThrow(contractData.maxWireFee),
prevPayCoins: [],
});
@@ -445,10 +445,10 @@ export async function createDepositGroup(
auditors: contractData.allowedAuditors,
exchanges: contractData.allowedExchanges,
wireMethod: contractData.wireMethod,
- contractTermsAmount: contractData.amount,
- depositFeeLimit: contractData.maxDepositFee,
+ contractTermsAmount: Amounts.parseOrThrow(contractData.amount),
+ depositFeeLimit: Amounts.parseOrThrow(contractData.maxDepositFee),
wireFeeAmortization: contractData.wireFeeAmortization ?? 1,
- wireFeeLimit: contractData.maxWireFee,
+ wireFeeLimit: Amounts.parseOrThrow(contractData.maxWireFee),
prevPayCoins: [],
});
@@ -479,8 +479,8 @@ export async function createDepositGroup(
depositedPerCoin: payCoinSel.coinPubs.map(() => false),
merchantPriv: merchantPair.priv,
merchantPub: merchantPair.pub,
- totalPayCost: totalDepositCost,
- effectiveDepositAmount,
+ totalPayCost: Amounts.stringify(totalDepositCost),
+ effectiveDepositAmount: Amounts.stringify(effectiveDepositAmount),
wire: {
payto_uri: req.depositPaytoUri,
salt: wireSalt,
@@ -501,7 +501,9 @@ export async function createDepositGroup(
await spendCoins(ws, tx, {
allocationId: `txn:deposit:${depositGroup.depositGroupId}`,
coinPubs: payCoinSel.coinPubs,
- contributions: payCoinSel.coinContributions,
+ contributions: payCoinSel.coinContributions.map((x) =>
+ Amounts.parseOrThrow(x),
+ ),
refreshReason: RefreshReason.PayDeposit,
});
await tx.depositGroups.put(depositGroup);
@@ -543,8 +545,8 @@ export async function getEffectiveDepositAmount(
if (!denom) {
throw Error("can't find denomination to calculate deposit amount");
}
- amt.push(pcs.coinContributions[i]);
- fees.push(denom.feeDeposit);
+ amt.push(Amounts.parseOrThrow(pcs.coinContributions[i]));
+ fees.push(Amounts.parseOrThrow(denom.feeDeposit));
exchangeSet.add(coin.exchangeBaseUrl);
}
@@ -565,7 +567,7 @@ export async function getEffectiveDepositAmount(
);
})?.wireFee;
if (fee) {
- fees.push(fee);
+ fees.push(Amounts.parseOrThrow(fee));
}
}
});
@@ -604,7 +606,7 @@ export async function getTotalFeesForDepositAmount(
if (!denom) {
throw Error("can't find denomination to calculate deposit amount");
}
- coinFee.push(denom.feeDeposit);
+ coinFee.push(Amounts.parseOrThrow(denom.feeDeposit));
exchangeSet.add(coin.exchangeBaseUrl);
const allDenoms = await tx.denominations.indexes.byExchangeBaseUrl
@@ -638,7 +640,7 @@ export async function getTotalFeesForDepositAmount(
},
)?.wireFee;
if (fee) {
- wireFee.push(fee);
+ wireFee.push(Amounts.parseOrThrow(fee));
}
}
});