From adfc6f9f863011925ac8e44de8638cb1eaa20221 Mon Sep 17 00:00:00 2001 From: Polybius93 <99192647+Polybius93@users.noreply.github.com> Date: Fri, 14 Feb 2025 13:31:06 +0100 Subject: [PATCH] feat: replace bitcoin usd price fetch api url (#244) --- src/app/hooks/use-bitcoin-price.ts | 18 +++++++----------- .../proof-of-reserve-context-provider.tsx | 2 +- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/app/hooks/use-bitcoin-price.ts b/src/app/hooks/use-bitcoin-price.ts index f53a3a06..3de90111 100644 --- a/src/app/hooks/use-bitcoin-price.ts +++ b/src/app/hooks/use-bitcoin-price.ts @@ -1,26 +1,22 @@ import { BitcoinError } from '@models/error-types'; -import { useQuery } from '@tanstack/react-query'; +import { UseQueryResult, useQuery } from '@tanstack/react-query'; -interface UseBitcoinPriceReturnType { - bitcoinPrice: number | undefined; -} - -export function useBitcoinPrice(): UseBitcoinPriceReturnType { +export function useBitcoinPrice(): UseQueryResult { const fetchBitcoinPrice = async (): Promise => { try { - const response = await fetch('https://api.coindesk.com/v1/bpi/currentprice.json'); + const response = await fetch( + 'https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd' + ); const data = await response.json(); - return data.bpi.USD.rate_float; + return data.bitcoin.usd; } catch (error) { throw new BitcoinError(`Error fetching Bitcoin price: ${error}`); } }; - const { data: bitcoinPrice } = useQuery({ + return useQuery({ queryKey: ['bitcoinPrice'], queryFn: fetchBitcoinPrice, refetchInterval: 60000, }); - - return { bitcoinPrice }; } diff --git a/src/app/providers/proof-of-reserve-context-provider.tsx b/src/app/providers/proof-of-reserve-context-provider.tsx index 5fe26e13..fbec00b6 100644 --- a/src/app/providers/proof-of-reserve-context-provider.tsx +++ b/src/app/providers/proof-of-reserve-context-provider.tsx @@ -39,7 +39,7 @@ export const ProofOfReserveContext = createContext