simplify networks config

This commit is contained in:
hueso
2026-05-01 19:21:11 -03:00
committed by hueso
parent 46be71046a
commit ec1053c660
2 changed files with 23 additions and 23 deletions

View File

@@ -40,21 +40,8 @@ export function useGraphQL(network: Ref<NetworkConfig>) {
totalReleases: '0' totalReleases: '0'
}); });
const getGraphQLUrl = () => {
const rskNetworkName = isTestnetEnvironment() ? rootstockTestnet.name : rootstock.name;
switch (network.value.name) {
case sepolia.name:
return import.meta.env.VITE_SEPOLIA_SUBGRAPH_URL!;
case rskNetworkName:
return import.meta.env.VITE_RSK_SUBGRAPH_URL!;
default:
throw new Error(`Unsupported network: ${network.value.name}`);
}
};
const executeQuery = async (query: string, variables: any = {}) => { const executeQuery = async (query: string, variables: any = {}) => {
const url = getGraphQLUrl(); const url = network.value.subgraphUrls[0]; // TODO: try all available URLs
try { try {
const response = await fetch(url, { const response = await fetch(url, {

View File

@@ -1,14 +1,27 @@
import { sepolia, rootstock, rootstockTestnet } from "viem/chains"; import { mainnet, sepolia, rootstock, rootstockTestnet } from "viem/chains";
import { NetworkConfig } from "@/model/NetworkEnum" import { NetworkConfig } from "@/model/NetworkEnum"
// TODO: import addresses from p2pix-smart-contracts deployments // TODO: import addresses from p2pix-smart-contracts deployments
export const isTestnetEnvironment = () => { export const Networks: {[key:string]: NetworkConfig} = {
return import.meta.env.VITE_ENVIRONMENT === 'testnet' || mainnet: { ...mainnet,
import.meta.env.NODE_ENV === 'development' || rpcUrls: { default: { http: [import.meta.env.VITE_MAINNET_API_URL]}},
import.meta.env.MODE === 'development'; contracts: { ...mainnet.contracts,
p2pix: { address: import.meta.env.VITE_MAINNET_P2PIX_ADDRESS } },
tokens: {
BRZ: { address: import.meta.env.VITE_MAINNET_TOKEN_ADDRESS } },
subgraphUrls: [import.meta.env.VITE_MAINNET_SUBGRAPH_URL]
},
rootstock: { ...rootstock,
rpcUrls: { default: { http: [import.meta.env.VITE_RSK_API_URL]}},
contracts: { ...rootstock.contracts,
p2pix: { address: import.meta.env.VITE_RSK_P2PIX_ADDRESS } },
tokens: {
BRZ: { address: import.meta.env.VITE_RSK_TOKEN_ADDRESS } },
subgraphUrls: [import.meta.env.VITE_RSK_SUBGRAPH_URL]
},
}; };
export const Networks: {[key:string]: NetworkConfig} = { export const NetworksTestnet: {[key:string]: NetworkConfig} = {
sepolia: { ...sepolia, sepolia: { ...sepolia,
rpcUrls: { default: { http: [import.meta.env.VITE_SEPOLIA_API_URL]}}, rpcUrls: { default: { http: [import.meta.env.VITE_SEPOLIA_API_URL]}},
contracts: { ...sepolia.contracts, contracts: { ...sepolia.contracts,
@@ -17,9 +30,9 @@ export const Networks: {[key:string]: NetworkConfig} = {
BRZ: { address: import.meta.env.VITE_SEPOLIA_TOKEN_ADDRESS } }, BRZ: { address: import.meta.env.VITE_SEPOLIA_TOKEN_ADDRESS } },
subgraphUrls: [import.meta.env.VITE_SEPOLIA_SUBGRAPH_URL] subgraphUrls: [import.meta.env.VITE_SEPOLIA_SUBGRAPH_URL]
}, },
rootstock: { ...(isTestnetEnvironment() ? rootstockTestnet : rootstock), rootstockTestnet: { ...rootstockTestnet,
rpcUrls: { default: { http: [import.meta.env.VITE_RSK_API_URL]}}, rpcUrls: { default: { http: [import.meta.env.VITE_RSK_API_URL]}},
contracts: { ...(isTestnetEnvironment() ? rootstockTestnet.contracts : rootstock.contracts), contracts: { ...rootstockTestnet.contracts,
p2pix: { address: import.meta.env.VITE_RSK_P2PIX_ADDRESS } }, p2pix: { address: import.meta.env.VITE_RSK_P2PIX_ADDRESS } },
tokens: { tokens: {
BRZ: { address: import.meta.env.VITE_RSK_TOKEN_ADDRESS } }, BRZ: { address: import.meta.env.VITE_RSK_TOKEN_ADDRESS } },
@@ -27,4 +40,4 @@ export const Networks: {[key:string]: NetworkConfig} = {
}, },
}; };
export const DEFAULT_NETWORK = Networks.sepolia; export const DEFAULT_NETWORK = Networks.mainnet;