diff options
author | Sebastian <sebasjm@gmail.com> | 2023-11-03 19:01:21 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2023-11-03 19:01:21 -0300 |
commit | 954557e841d2d9a978b1b012f0fddc44c37add8a (patch) | |
tree | 0bdfeb66472ccead477ad528a794e35d55649cc3 /packages/demobank-ui/src/hooks | |
parent | 11b99b9256d13e16aff460db6f014390ded4670b (diff) | |
download | wallet-core-954557e841d2d9a978b1b012f0fddc44c37add8a.tar.xz |
add error messages for new error cases
Diffstat (limited to 'packages/demobank-ui/src/hooks')
-rw-r--r-- | packages/demobank-ui/src/hooks/circuit.ts | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/packages/demobank-ui/src/hooks/circuit.ts b/packages/demobank-ui/src/hooks/circuit.ts index e7a28bd98..845f37822 100644 --- a/packages/demobank-ui/src/hooks/circuit.ts +++ b/packages/demobank-ui/src/hooks/circuit.ts @@ -18,7 +18,7 @@ import { useState } from "preact/hooks"; import { MAX_RESULT_SIZE, PAGE_SIZE } from "../utils.js"; import { useBackendState } from "./backend.js"; -import { AccessToken, AmountJson, AmountString, Amounts, OperationOk, TalerCoreBankResultByMethod, TalerCorebankApi, TalerError, TalerHttpError } from "@gnu-taler/taler-util"; +import { AccessToken, AmountJson, AmountString, Amounts, OperationOk, TalerCoreBankErrorsByMethod, TalerCoreBankResultByMethod, TalerCorebankApi, TalerError, TalerHttpError } from "@gnu-taler/taler-util"; import _useSWR, { SWRHook } from "swr"; import { useBankCoreApiContext } from "../context/config.js"; import { assertUnreachable } from "../pages/WithdrawalOperationPage.js"; @@ -105,7 +105,7 @@ export function useBusinessAccounts() { function fetcher([token, offset]: [AccessToken, string]) { //FIXME: add account name filter - return api.getAccounts(token,{}, { + return api.getAccounts(token, {}, { limit: MAX_RESULT_SIZE, offset, order: "asc" @@ -164,10 +164,7 @@ export function useCashouts(account: string) { async function fetcher([username, token]: [string, AccessToken]) { const list = await api.getAccountCashouts({ username, token }) if (list.type !== "ok") { - if (list.case === "cashout-not-supported") { - throw Error("cashout is not supported") - } - assertUnreachable(list.case) + return list; } const all: Array<CashoutWithId | undefined> = await Promise.all(list.body.cashouts.map(c => { return api.getCashoutById({ username, token }, c.cashout_id).then(r => { @@ -180,7 +177,7 @@ export function useCashouts(account: string) { return { type: "ok" as const, body: { cashouts } } } - const { data, error } = useSWR<OperationOk<{ cashouts: CashoutWithId[] }>, TalerHttpError>( + const { data, error } = useSWR<OperationOk<{ cashouts: CashoutWithId[] }> | TalerCoreBankErrorsByMethod<"getAccountCashouts">, TalerHttpError>( !config.have_cashout ? false : [account, token, "getAccountCashouts"], fetcher, { refreshInterval: 0, refreshWhenHidden: false, @@ -269,6 +266,7 @@ export function useLastMonitorInfo(time: Date, timeframe: TalerCorebankApi.Monit const current: TalerCoreBankResultByMethod<"getMonitor"> = { type: "ok" as const, body: { + type: "with-cashout" as const, cashinCount: 1, cashinExternalVolume: "LOCAL:1234" as AmountString, cashoutCount: 2, @@ -281,6 +279,7 @@ export function useLastMonitorInfo(time: Date, timeframe: TalerCorebankApi.Monit const previous = { type: "ok" as const, body: { + type: "with-cashout" as const, cashinCount: 1, cashinExternalVolume: "LOCAL:2345" as AmountString, cashoutCount: 2, |