taler-typescript-core

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

commit 0218169ce64f89c3c7aaa7d7feb3aa7cb3e2d37d
parent a5bb5c524261fafa2e46ab3c77f019ef14873874
Author: Sebastian <sebasjm@taler-systems.com>
Date:   Wed,  1 Jul 2026 12:06:18 -0300

when the proposoal is in dialog stage it still loading

Diffstat:
Mpackages/taler-wallet-webextension/src/cta/Payment/state.ts | 21+++++++--------------
1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/packages/taler-wallet-webextension/src/cta/Payment/state.ts b/packages/taler-wallet-webextension/src/cta/Payment/state.ts @@ -21,6 +21,7 @@ import { ChoiceSelectionDetailType, ConfirmPayResultType, NotificationType, + Result, TransactionMajorState, TransactionType, TranslatedString @@ -87,9 +88,11 @@ export function useComponentStateFromTxId({ WalletApiOperation.GetTransactionById, { transactionId, includeContractTerms: true } ); - const choices = await api.wallet.call( + const choices = Result.orUndefined(await api.wallet.callForResult( WalletApiOperation.GetChoicesForPayment, { transactionId } - ); + )); + + return { transaction, choices }; }, []); @@ -131,19 +134,9 @@ export function useComponentStateFromTxId({ } const payStatus = hook.response.transaction.type === TransactionType.Payment ? hook.response.transaction : undefined; const contractTerms = payStatus?.contractTerms - if (!contractTerms) { - return { - status: "error", - error: { - message: i18n.str`The transaction doesn't have contract terms.`, - cause: {}, - context: undefined, - description: "" as TranslatedString, - type: "error" - }, - }; - } const { choices } = hook.response; + if (!contractTerms) return { status: "loading", error: undefined }; + if (!choices) return { status: "loading", error: undefined }; async function doPayment(): Promise<void> { const res = await api.wallet.call(WalletApiOperation.ConfirmPay, {