summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2020-05-15 23:41:47 +0530
committerFlorian Dold <florian.dold@gmail.com>2020-05-15 23:41:47 +0530
commitcf3aaee28acaa8d6aba8e0b1fe6dbcba5e4e67ae (patch)
treebb3a23cc8f91b28748d26117fcf52156f8cab304
parent6efc7e5600d3444e44697bc9c022d15990a98c50 (diff)
downloadwallet-core-cf3aaee28acaa8d6aba8e0b1fe6dbcba5e4e67ae.tar.gz
wallet-core-cf3aaee28acaa8d6aba8e0b1fe6dbcba5e4e67ae.tar.bz2
wallet-core-cf3aaee28acaa8d6aba8e0b1fe6dbcba5e4e67ae.zip
show reserve amount for reserve withdrawal via bank
-rw-r--r--src/operations/transactions.ts20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/operations/transactions.ts b/src/operations/transactions.ts
index c9d48fc01..f016fb8c3 100644
--- a/src/operations/transactions.ts
+++ b/src/operations/transactions.ts
@@ -18,7 +18,7 @@
* Imports.
*/
import { InternalWalletState } from "./state";
-import { Stores, ReserveRecordStatus, PurchaseRecord } from "../types/dbTypes";
+import { Stores, ReserveRecordStatus, PurchaseRecord, WithdrawalSourceType } from "../types/dbTypes";
import { Amounts, AmountJson } from "../util/amounts";
import { timestampCmp } from "../util/time";
import {
@@ -152,7 +152,7 @@ export async function getTransactions(
Stores.recoupGroups,
],
async (tx) => {
- tx.iter(Stores.withdrawalGroups).forEach((wsr) => {
+ tx.iter(Stores.withdrawalGroups).forEachAsync(async (wsr) => {
if (
shouldSkipCurrency(
transactionsRequest,
@@ -166,10 +166,22 @@ export async function getTransactions(
return;
}
+ let amountRaw: AmountJson | undefined = undefined;
+
+ if (wsr.source.type === WithdrawalSourceType.Reserve) {
+ const r = await tx.get(Stores.reserves, wsr.source.reservePub);
+ if (r?.bankInfo?.amount) {
+ amountRaw = r.bankInfo.amount;
+ }
+ }
+ if (!amountRaw) {
+ amountRaw = wsr.denomsSel.totalWithdrawCost;
+ }
+
transactions.push({
type: TransactionType.Withdrawal,
amountEffective: Amounts.stringify(wsr.denomsSel.totalCoinValue),
- amountRaw: Amounts.stringify(wsr.denomsSel.totalWithdrawCost),
+ amountRaw: Amounts.stringify(amountRaw),
confirmed: true,
exchangeBaseUrl: wsr.exchangeBaseUrl,
pending: !wsr.timestampFinish,
@@ -202,7 +214,7 @@ export async function getTransactions(
transactions.push({
type: TransactionType.Withdrawal,
confirmed: false,
- amountRaw: Amounts.stringify(r.bankInfo.denomSel.totalWithdrawCost),
+ amountRaw: Amounts.stringify(r.bankInfo.amount),
amountEffective: Amounts.stringify(
r.bankInfo.denomSel.totalCoinValue,
),