/* This file is part of GNU Taler (C) 2021-2023 Taler Systems S.A. GNU Taler is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Taler; see the file COPYING. If not, see */ import { HttpResponse, HttpResponseOk, RequestError, } from "@gnu-taler/web-util/browser"; import { AuditorBackend, WithId } from "../declaration.js"; import { useBackendRequest, useMatchMutate } from "./backend.js"; // FIX default import https://github.com/microsoft/TypeScript/issues/49189 import _useSWR, { SWRHook, useSWRConfig } from "swr"; const useSWR = _useSWR as unknown as SWRHook; export function getKeyFiguresData(): HttpResponse { const { multiFetcher } = useBackendRequest(); const endpoints = [ "monitoring/misattribution-in-inconsistency", "monitoring/coin-inconsistency", "monitoring/reserve-in-inconsistency", "monitoring/bad-sig-losses", "monitoring/balances", "monitoring/amount-arithmetic-inconsistency", "monitoring/wire-format-inconsistency", "monitoring/wire-out-inconsistency", "monitoring/reserve-balance-summary-wrong-inconsistency", ]; const { data: list, error: listError } = useSWR< HttpResponseOk[], RequestError >(endpoints, multiFetcher, { refreshInterval: 60, refreshWhenHidden: false, revalidateOnFocus: false, revalidateOnReconnect: false, refreshWhenOffline: false, }); if (listError) return listError.cause; if (list) { return { ok: true, data: [list] }; } return { loading: true }; }