diff options
author | Sebastian <sebasjm@gmail.com> | 2024-04-05 10:30:19 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2024-04-05 10:30:34 -0300 |
commit | 70151490bd79d38f8064b720fc124d1774a18235 (patch) | |
tree | 3d3238bf02743d38b243581457130804939f0473 /packages/bank-ui/src/hooks/account.ts | |
parent | 493fe38a603cc7a54a9d36b235da7abad3a10a92 (diff) | |
download | wallet-core-70151490bd79d38f8064b720fc124d1774a18235.tar.xz |
fix listing, add cache invalidation, fix codec for accounts
Diffstat (limited to 'packages/bank-ui/src/hooks/account.ts')
-rw-r--r-- | packages/bank-ui/src/hooks/account.ts | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/packages/bank-ui/src/hooks/account.ts b/packages/bank-ui/src/hooks/account.ts index e1cd423de..43d43a3f2 100644 --- a/packages/bank-ui/src/hooks/account.ts +++ b/packages/bank-ui/src/hooks/account.ts @@ -22,12 +22,12 @@ import { WithdrawalOperationStatus, } from "@gnu-taler/taler-util"; import { useEffect, useState } from "preact/hooks"; -import { PAGE_SIZE } from "../utils.js"; import { useSessionState } from "./session.js"; // FIX default import https://github.com/microsoft/TypeScript/issues/49189 import _useSWR, { SWRHook, mutate } from "swr"; import { useBankCoreApiContext } from "@gnu-taler/web-util/browser"; +import { PAGINATED_LIST_REQUEST } from "../utils.js"; const useSWR = _useSWR as unknown as SWRHook; export interface InstanceTemplateFilter { @@ -184,7 +184,7 @@ export function usePublicAccounts( return await api.getPublicAccounts( { account }, { - limit: PAGE_SIZE, + limit: PAGINATED_LIST_REQUEST, offset: txid ? String(txid) : undefined, order: "asc", }, @@ -232,11 +232,12 @@ export function buildPaginatedResult<DataType, OffsetId>( setOffset: (o: OffsetId | undefined) => void, getId: (r: DataType) => OffsetId, ): PaginatedResult<DataType[]> { - const isLastPage = data.length <= PAGE_SIZE; + const isLastPage = data.length < PAGINATED_LIST_REQUEST; const isFirstPage = offset === undefined; const result = structuredClone(data); - if (result.length == PAGE_SIZE + 1) { + if (result.length == PAGINATED_LIST_REQUEST) { + //do now show the last element, used to know if this is the last page result.pop(); } return { @@ -280,7 +281,7 @@ export function useTransactions(account: string, initial?: number) { return await api.getTransactions( { username, token }, { - limit: PAGE_SIZE + 1, + limit: PAGINATED_LIST_REQUEST, offset: txid ? String(txid) : undefined, order: "dec", }, |