@saberhq/sail
Version:
Account caching and batched loading for React-based Solana applications.
17 lines • 695 B
JavaScript
import { useSolana } from "@saberhq/use-solana";
import { useQuery } from "react-query";
/**
* Returns the current network TPS.
* @returns
*/
export const useNetworkTPS = () => {
const { network, connection } = useSolana();
return useQuery(["networkTps", network], async () => {
const performanceSamples = await connection.getRecentPerformanceSamples(15);
const avgTpsSamples = performanceSamples
.filter((sample) => sample.numTransactions !== 0)
.map((sample) => sample.numTransactions / sample.samplePeriodSecs);
return avgTpsSamples.reduce((a, b) => a + b) / avgTpsSamples.length;
});
};
//# sourceMappingURL=useNetworkTPS.js.map