Skip to content

Commit

Permalink
Add Base support, make it easy to identify listed SuperTokens
Browse files Browse the repository at this point in the history
  • Loading branch information
d10r authored Aug 9, 2023
2 parents a61e681 + db64eab commit 09da806
Show file tree
Hide file tree
Showing 7 changed files with 204 additions and 206 deletions.
4 changes: 2 additions & 2 deletions toga-dashboard/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"@rainbow-me/rainbowkit": "^1.0.2",
"@safe-global/safe-apps-sdk": "^7.11.0",
"@safe-global/safe-apps-web3modal": "^19.0.2",
"@superfluid-finance/metadata": "github:superfluid-finance/metadata",
"@superfluid-finance/metadata": "^1.1.10",
"@testing-library/jest-dom": "^5.11.4",
"@testing-library/react": "^11.1.0",
"@testing-library/user-event": "^12.1.10",
Expand All @@ -25,7 +25,7 @@
"react-table": "^7.7.0",
"styled-components": "^5.3.3",
"viem": "^1.1.1",
"wagmi": "^1.2.0",
"wagmi": "^1.3.9",
"web3modal": "^1.9.12"
},
"devDependencies": {
Expand Down
2 changes: 1 addition & 1 deletion toga-dashboard/src/components/HOC/withSelectedNetwork.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ function withSelectedNetwork(WrappedComponent) {
setApolloClient(
new ApolloClient({
link: createHttpLink({
uri: selectedNetwork.subgraphV1.hostedEndpoint,
uri: selectedNetwork.subgraphUrl,
fetch,
}),

Expand Down
4 changes: 3 additions & 1 deletion toga-dashboard/src/components/TokenSelection/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@ function TokenSelection({ setSelectedToken }) {
<TokenSelectionContainer>
<DropdownSelection
placeholder="Select a token..."
options={[...tokenMap.values()].map((t) => ({
options={[...tokenMap.values()]
.sort((a, b) => (b.isListed ? 1 : -1) - (a.isListed ? 1 : -1))
.map((t) => ({
value: t.id,
label: t.readable,
}))}
Expand Down
102 changes: 12 additions & 90 deletions toga-dashboard/src/constants/networks.js
Original file line number Diff line number Diff line change
@@ -1,99 +1,21 @@
import sfMeta from '@superfluid-finance/metadata';
import * as chain from 'wagmi/chains';
import * as wagmiChains from 'wagmi/chains';
const PROVIDER_URL_TEMPLATE = `https://rpc-endpoints.superfluid.dev/{{network}}`;

export const UNSUPPORTED = { name: 'Unsupported network' };

export const updatedChainDefination = {
[chain.goerli.id]: {
...chain.goerli,
rpcUrls: {
...chain.goerli.rpcUrls,
superfluid: 'https://rpc-endpoints.superfluid.dev/eth-goerli',
},
},
[chain.gnosis.id]: {
...chain.gnosis,
iconUrl: "/icons/network/gnosis.svg",
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/xdai-mainnet',
},
},
[chain.polygon.id]: {
...chain.polygon,
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/polygon-mainnet',
},
},
[chain.polygonMumbai.id]: {
...chain.polygonMumbai,
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/polygon-mumbai',
},
},
[chain.avalancheFuji.id]: {
...chain.avalancheFuji,
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/avalanche-fuji',
},
},
[chain.optimism.id]: {
...chain.optimism,

rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/optimism-mainnet',
},
},
[chain.arbitrum.id]: {
...chain.arbitrum,

rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/arbitrum-one',
},
},
[chain.avalanche.id]: {
...chain.avalanche,
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/avalanche-c',
},
},
[chain.bsc.id]: {
...chain.bsc,
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/bsc-mainnet',
},
},
[chain.mainnet.id]: {
...chain.mainnet,
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/eth-mainnet',
},
},
[chain.celo.id]: {
...chain.celo,
iconUrl: "/icons/network/celo-mainnet.svg",
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/celo-mainnet',
},
},
[chain.optimismGoerli.id]: {
...chain.optimismGoerli,
rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/optimism-goerli',
},
},
[chain.arbitrumGoerli.id]: {
...chain.arbitrumGoerli,

rpcUrls: {
superfluid: 'https://rpc-endpoints.superfluid.dev/arbitrum-goerli',
},
},
};

export const NETWORK_LIST = sfMeta.networks
.map((x) => {
return { ...x, ...updatedChainDefination[x.chainId] };
.map((n) => {
const wagmiChain = Object.values(wagmiChains).find(item => item.id === n.chainId);
return {
...n,
...wagmiChain,
rpcUrls: { // merge wagmi provided rpc url's with superfluid's
...wagmiChain.rpcUrls,
superfluid: `https://rpc-endpoints.superfluid.dev/${n.name}`
},
subgraphUrl: `https://${n.name}.subgraph.x.superfluid.dev`
};
})
.filter((n) => n.contractsV1.toga !== undefined);

Expand Down
1 change: 1 addition & 0 deletions toga-dashboard/src/helper/graphQueries.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ export const GET_SUPER_TOKENS = gql`
id
symbol
decimals
isListed
}
}
`;
Expand Down
3 changes: 2 additions & 1 deletion toga-dashboard/src/helper/tokenUtils.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export function getTokenString(token) {
if (!token) {
return '';
}
return `${token.symbol} (${abbreviateAddress(token.id)})`;
return `${!token.isListed ? ' (unlisted) ' : ''}${token.symbol} (${abbreviateAddress(token.id)})`;
}

async function fetchTokenUsd(networkGoinGeckoId, tokenAddress) {
Expand Down Expand Up @@ -48,6 +48,7 @@ export function generateTokenMap(tokens) {
readable: getTokenString(token),
symbol: token.symbol,
decimals: token.decimals,
isListed: token.isListed,
});
});
return tokenMap;
Expand Down
Loading

0 comments on commit 09da806

Please sign in to comment.