Skip to content

Commit f899e02

Browse files
committed
update
1 parent 17f9b75 commit f899e02

File tree

3 files changed

+892
-137
lines changed

3 files changed

+892
-137
lines changed

components/PriceFeedTable.tsx

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@ import { useState, useEffect } from "react";
22
import { TextField, Select, MenuItem } from "@mui/material";
33
import { HermesClient, PriceFeedMetadata } from "@pythnetwork/hermes-client";
44
import { Table, Td, Th, Tr, CopyToClipboard } from "nextra/components";
5+
import base58 from "bs58";
6+
import { getPriceFeedAccountForProgram } from "@pythnetwork/pyth-solana-receiver";
57

6-
const fetchStablePriceFeeds = async () => {
8+
const fetchPriceFeeds = async (stable: boolean) => {
79
const priceFeeds = await new HermesClient(
8-
"https://hermes.pyth.network"
10+
stable ? "https://hermes.pyth.network" : "https://hermes-beta.pyth.network"
911
).getPriceFeeds();
1012
const assetTypes = Array.from(
1113
new Set(priceFeeds.map((feed) => feed.attributes.asset_type ?? ""))
@@ -14,15 +16,12 @@ const fetchStablePriceFeeds = async () => {
1416
return { priceFeeds, assetTypes };
1517
};
1618

17-
const fetchBetaPriceFeeds = async () => {
18-
const priceFeeds = await new HermesClient(
19-
"https://hermes-beta.pyth.network"
20-
).getPriceFeeds();
21-
const assetTypes = Array.from(
22-
new Set(priceFeeds.map((feed) => feed.attributes.asset_type ?? ""))
19+
const fetchSolanaPriceFeedAccounts = async () => {
20+
const priceFeeds = await fetchPriceFeeds(true);
21+
const priceFeedIds = priceFeeds.priceFeeds.map((feed) =>
22+
getPriceFeedAccountForProgram(0, base58.decode(feed.id)).toBase58()
2323
);
24-
console.log(priceFeeds);
25-
return { priceFeeds, assetTypes };
24+
return priceFeedIds;
2625
};
2726

2827
type AssetTypesSelectorProps = {
@@ -63,7 +62,8 @@ const usePriceFeeds = (): PriceFeedsState => {
6362

6463
useEffect(() => {
6564
setPriceFeeds(PriceFeedsState.Loading());
66-
fetchStablePriceFeeds()
65+
// console.log(fetchSolanaPriceFeedAccounts())
66+
fetchPriceFeeds(true)
6767
.then(({ priceFeeds, assetTypes }) => {
6868
setPriceFeeds(PriceFeedsState.Loaded(priceFeeds, assetTypes));
6969
})

0 commit comments

Comments
 (0)