-
Aggarwal Himanshu authoredAggarwal Himanshu authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
queries.js 1.08 KiB
import axios from "axios";
import { useQuery } from "react-query";
export function useCryptoTimeSeriesData(name, days = 7, interval = "daily") {
return useQuery(
`${name}_${days}_days`,
() => {
return axios
.get(
`https://api.coingecko.com/api/v3/coins/${name}/market_chart?vs_currency=usd&days=${days}&interval=${interval}`
)
.then((res) => res.data);
},
{
refetchOnWindowFocus: false,
staleTime: 5 * 60000, // 5 minutes,
}
);
}
export function useCryptoList(
currency = "usd",
numberOfCurrencies = 20,
sparkline = true
) {
return useQuery(
`list_of_${numberOfCurrencies}_currencies_in_${currency}_${
sparkline ? "with" : "without"
}_sparkline`,
() => {
return axios
.get(
`https://api.coingecko.com/api/v3/coins/markets?vs_currency=${currency}&order=market_cap_desc&per_page=${numberOfCurrencies}&page=1&sparkline=${sparkline}`
)
.then((res) => res.data);
},
{
refetchOnWindowFocus: false,
staleTime: 5 * 60000, // 5 minutes,
}
);
}