diff options
Diffstat (limited to 'packages/demobank-ui/src/hooks/circuit.ts')
-rw-r--r-- | packages/demobank-ui/src/hooks/circuit.ts | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/packages/demobank-ui/src/hooks/circuit.ts b/packages/demobank-ui/src/hooks/circuit.ts index 8a27f652c..8bff6858d 100644 --- a/packages/demobank-ui/src/hooks/circuit.ts +++ b/packages/demobank-ui/src/hooks/circuit.ts @@ -19,7 +19,7 @@ import { MAX_RESULT_SIZE, PAGE_SIZE } from "../utils.js"; import { useBackendState } from "./backend.js"; import { AccessToken, AmountJson, AmountString, Amounts, OperationOk, TalerBankConversionResultByMethod, TalerCoreBankErrorsByMethod, TalerCoreBankResultByMethod, TalerCorebankApi, TalerError, TalerHttpError, opFixedSuccess } from "@gnu-taler/taler-util"; -import _useSWR, { SWRHook } from "swr"; +import _useSWR, { SWRHook, mutate } from "swr"; import { useBankCoreApiContext } from "../context/config.js"; import { assertUnreachable } from "../pages/WithdrawalOperationPage.js"; import { format, getDate, getDay, getHours, getMonth, getYear, set, sub } from "date-fns"; @@ -42,6 +42,9 @@ type CashoutEstimators = { estimateByDebit: EstimatorFunction; }; +export function revalidateConversionInfo() { + mutate(key => Array.isArray(key) && key[key.length - 1] === "getConversionInfoAPI") +} export function useConversionInfo() { const { api, config } = useBankCoreApiContext() @@ -114,6 +117,9 @@ export function useEstimator(): CashoutEstimators { }; } +export function revalidateBusinessAccounts() { + mutate(key => Array.isArray(key) && key[key.length - 1] === "getAccounts") +} export function useBusinessAccounts() { const { state: credentials } = useBackendState(); const token = credentials.status !== "loggedIn" ? undefined : credentials.token @@ -174,6 +180,9 @@ type CashoutWithId = TalerCorebankApi.CashoutStatusResponse & { id: number } function notUndefined(c: CashoutWithId | undefined): c is CashoutWithId { return c !== undefined } +export function revalidateOnePendingCashouts() { + mutate(key => Array.isArray(key) && key[key.length - 1] === "useOnePendingCashouts") +} export function useOnePendingCashouts(account: string) { const { state: credentials } = useBackendState(); const { api, config } = useBankCoreApiContext(); @@ -211,6 +220,9 @@ export function useOnePendingCashouts(account: string) { return undefined; } +export function revalidateCashouts() { + mutate(key => Array.isArray(key) && key[key.length - 1] === "useCashouts") +} export function useCashouts(account: string) { const { state: credentials } = useBackendState(); const { api, config } = useBankCoreApiContext(); @@ -251,6 +263,9 @@ export function useCashouts(account: string) { return undefined; } +export function revalidateCashoutDetails() { + mutate(key => Array.isArray(key) && key[key.length - 1] === "getCashoutById") +} export function useCashoutDetails(cashoutId: number | undefined) { const { state: credentials } = useBackendState(); const creds = credentials.status !== "loggedIn" ? undefined : credentials @@ -284,6 +299,9 @@ export type MonitorMetrics = { } export type LastMonitor = { current: TalerCoreBankResultByMethod<"getMonitor">, previous: TalerCoreBankResultByMethod<"getMonitor"> } +export function revalidateLastMonitorInfo() { + mutate(key => Array.isArray(key) && key[key.length - 1] === "useLastMonitorInfo") +} export function useLastMonitorInfo(currentMoment: number, previousMoment: number, timeframe: TalerCorebankApi.MonitorTimeframeParam) { const { api, config } = useBankCoreApiContext(); const { state: credentials } = useBackendState(); |