diff options
author | Sebastian <sebasjm@gmail.com> | 2023-01-15 17:49:57 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2023-01-15 17:49:57 -0300 |
commit | bd57fa46a44db8e8c685b40f66eaa7998e71efa5 (patch) | |
tree | 35dbf2c3125c744bea500d8b73e35a929179b7ab /packages/taler-wallet-webextension/src/wallet/Transaction.tsx | |
parent | fc38d0da958323b994d2e4f8a8f2e9632865557f (diff) | |
download | wallet-core-bd57fa46a44db8e8c685b40f66eaa7998e71efa5.tar.xz |
show deposit transaction info
Diffstat (limited to 'packages/taler-wallet-webextension/src/wallet/Transaction.tsx')
-rw-r--r-- | packages/taler-wallet-webextension/src/wallet/Transaction.tsx | 52 |
1 files changed, 39 insertions, 13 deletions
diff --git a/packages/taler-wallet-webextension/src/wallet/Transaction.tsx b/packages/taler-wallet-webextension/src/wallet/Transaction.tsx index 5ed05f87f..cc3a65f2d 100644 --- a/packages/taler-wallet-webextension/src/wallet/Transaction.tsx +++ b/packages/taler-wallet-webextension/src/wallet/Transaction.tsx @@ -38,7 +38,7 @@ import { } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; import { styled } from "@linaria/react"; -import { differenceInSeconds } from "date-fns"; +import { differenceInSeconds, isAfter, isFuture, isPast } from "date-fns"; import { ComponentChildren, Fragment, h, VNode } from "preact"; import { useEffect, useState } from "preact/hooks"; import emptyImg from "../../static/img/empty.png"; @@ -641,6 +641,11 @@ export function TransactionView({ if (transaction.type === TransactionType.Deposit) { const total = Amounts.parseOrThrow(transaction.amountRaw); const payto = parsePaytoUri(transaction.targetPaytoUri); + + const wireTime = AbsoluteTime.fromTimestamp( + transaction.wireTransferDeadline, + ); + const shouldBeWired = wireTime.t_ms !== "never" && isPast(wireTime.t_ms); return ( <TransactionTemplate transaction={transaction} @@ -663,18 +668,39 @@ export function TransactionView({ text={<DepositDetails transaction={transaction} />} kind="neutral" /> - <Part - title={i18n.str`Wire transfer deadline`} - text={ - <Time - timestamp={AbsoluteTime.fromTimestamp( - transaction.wireTransferDeadline, - )} - format="dd MMMM yyyy 'at' HH:mm" - /> - } - kind="neutral" - /> + {!shouldBeWired ? ( + <Part + title={i18n.str`Wire transfer deadline`} + text={ + <Time timestamp={wireTime} format="dd MMMM yyyy 'at' HH:mm" /> + } + kind="neutral" + /> + ) : transaction.wireTransferProgress === 0 ? ( + <AlertView + alert={{ + type: "warning", + message: i18n.str`Wire transfer is not initiated`, + description: i18n.str` `, + }} + /> + ) : transaction.wireTransferProgress === 100 ? ( + <AlertView + alert={{ + type: "success", + message: i18n.str`Wire transfer completed`, + description: i18n.str` `, + }} + /> + ) : ( + <AlertView + alert={{ + type: "info", + message: i18n.str`Wire transfer in progress`, + description: i18n.str` `, + }} + /> + )} </TransactionTemplate> ); } |