diff options
author | Florian Dold <florian@dold.me> | 2024-03-31 16:50:34 +0200 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2024-03-31 16:50:34 +0200 |
commit | f45340eb11435f47a3a561c724cd356e5b4ba885 (patch) | |
tree | 3c2a079d78202908f0007fe065f7225ba016e415 /packages/taler-wallet-core/src/shepherd.ts | |
parent | 2d61180dce798ab260d47f94b382fd4f843a55bf (diff) | |
download | wallet-core-f45340eb11435f47a3a561c724cd356e5b4ba885.tar.xz |
wallet-core: implement denom-loss transaction
Diffstat (limited to 'packages/taler-wallet-core/src/shepherd.ts')
-rw-r--r-- | packages/taler-wallet-core/src/shepherd.ts | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/packages/taler-wallet-core/src/shepherd.ts b/packages/taler-wallet-core/src/shepherd.ts index f04bcd2c2..4ca472e7b 100644 --- a/packages/taler-wallet-core/src/shepherd.ts +++ b/packages/taler-wallet-core/src/shepherd.ts @@ -61,7 +61,10 @@ import { computeDepositTransactionStatus, processDepositGroup, } from "./deposits.js"; -import { updateExchangeFromUrlHandler } from "./exchanges.js"; +import { + computeDenomLossTransactionStatus, + updateExchangeFromUrlHandler, +} from "./exchanges.js"; import { computePayMerchantTransactionState, computeRefundTransactionState, @@ -636,6 +639,7 @@ async function getTransactionState( "peerPushCredit", "rewards", "refreshGroups", + "denomLossEvents", ] >, transactionId: string, @@ -674,12 +678,13 @@ async function getTransactionState( } return computeRefundTransactionState(rec); } - case TransactionType.PeerPullCredit: + case TransactionType.PeerPullCredit: { const rec = await tx.peerPullCredit.get(parsedTxId.pursePub); if (!rec) { return undefined; } return computePeerPullCreditTransactionState(rec); + } case TransactionType.PeerPullDebit: { const rec = await tx.peerPullDebit.get(parsedTxId.peerPullDebitId); if (!rec) { @@ -717,6 +722,13 @@ async function getTransactionState( } case TransactionType.Recoup: throw Error("not yet supported"); + case TransactionType.DenomLoss: { + const rec = await tx.denomLossEvents.get(parsedTxId.denomLossEventId); + if (!rec) { + return undefined; + } + return computeDenomLossTransactionStatus(rec); + } default: assertUnreachable(parsedTxId); } @@ -864,6 +876,8 @@ export function listTaskForTransactionId(transactionId: string): TaskIdStr[] { withdrawalGroupId: tid.withdrawalGroupId, }), ]; + case TransactionType.DenomLoss: + return []; default: assertUnreachable(tid); } |