taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit 9a861b80efc1b753296b477ce61b8abf24137dee
parent 6f1b7f5b998c1d7c385cad2f29a85db311999131
Author: Florian Dold <florian@dold.me>
Date:   Thu, 20 May 2021 18:27:35 +0200

allow deletion via API

Diffstat:
Mpackages/taler-util/src/walletTypes.ts | 10++++++----
Mpackages/taler-wallet-core/src/wallet.ts | 9++++++++-
2 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/packages/taler-util/src/walletTypes.ts b/packages/taler-util/src/walletTypes.ts @@ -68,8 +68,6 @@ export class CreateReserveResponse { reservePub: string; } - - export interface Balance { available: AmountString; pendingIncoming: AmountString; @@ -949,4 +947,9 @@ export interface WalletCurrencyInfo { export interface DeleteTransactionRequest { transactionId: string; -} -\ No newline at end of file +} + +export const codecForDeleteTransactionRequest = (): Codec<DeleteTransactionRequest> => + buildCodecForObject<DeleteTransactionRequest>() + .property("transactionId", codecForString()) + .build("DeleteTransactionRequest"); diff --git a/packages/taler-wallet-core/src/wallet.ts b/packages/taler-wallet-core/src/wallet.ts @@ -25,6 +25,7 @@ import { BackupRecovery, codecForAny, + codecForDeleteTransactionRequest, DeleteTransactionRequest, TalerErrorCode, WalletCurrencyInfo, @@ -1191,9 +1192,15 @@ export class Wallet { const req = codecForCreateDepositGroupRequest().decode(payload); return await createDepositGroup(this.ws, req); } - case "trackDepositGroup": + case "trackDepositGroup": { const req = codecForTrackDepositGroupRequest().decode(payload); return trackDepositGroup(this.ws, req); + } + case "deleteTransaction": { + const req = codecForDeleteTransactionRequest().decode(payload); + await deleteTransaction(this.ws, req.transactionId); + return {}; + } } throw OperationFailedError.fromCode( TalerErrorCode.WALLET_CORE_API_OPERATION_UNKNOWN,