diff --git a/src/hooks/useDydxClient.tsx b/src/hooks/useDydxClient.tsx index f605000..29ebc87 100644 --- a/src/hooks/useDydxClient.tsx +++ b/src/hooks/useDydxClient.tsx @@ -15,12 +15,14 @@ import type { ResolutionString } from 'public/tradingview/charting_library'; import type { ConnectNetworkEvent, NetworkConfig } from '@/constants/abacus'; import { type Candle, RESOLUTION_MAP } from '@/constants/candles'; +import { ENVIRONMENT_CONFIG_MAP } from '@/constants/networks'; import { getSelectedNetwork } from '@/state/appSelectors'; import { log } from '@/lib/telemetry'; import { useRestrictions } from './useRestrictions'; +import { DydxChainAsset } from '@/constants/wallets'; type DydxContextType = ReturnType; const DydxContext = createContext({} as DydxContextType); @@ -36,6 +38,7 @@ const useDydxClientContext = () => { // ------ Network ------ // const selectedNetwork = useSelector(getSelectedNetwork); + const tokensConfigs = ENVIRONMENT_CONFIG_MAP[selectedNetwork].tokens; const [networkConfig, setNetworkConfig] = useState(); @@ -65,7 +68,14 @@ const useDydxClientContext = () => { new Network( selectedNetwork, new IndexerConfig(networkConfig.indexerUrl, networkConfig.websocketUrl), - new ValidatorConfig(networkConfig.validatorUrl, networkConfig.chainId, { + new ValidatorConfig(networkConfig.validatorUrl, networkConfig.chainId, + { + USDC_DENOM: tokensConfigs[DydxChainAsset.USDC].denom, + USDC_DECIMALS: tokensConfigs[DydxChainAsset.USDC].decimals, + USDC_GAS_DENOM: tokensConfigs[DydxChainAsset.USDC].gasDenom, + CHAINTOKEN_DENOM: tokensConfigs[DydxChainAsset.CHAINTOKEN].denom, + CHAINTOKEN_DECIMALS: tokensConfigs[DydxChainAsset.CHAINTOKEN].decimals, + }, { broadcastPollIntervalMs: 3_000, broadcastTimeoutMs: 60_000, }) diff --git a/src/hooks/useTokenConfigs.ts b/src/hooks/useTokenConfigs.ts index d99b3e5..2a2b728 100644 --- a/src/hooks/useTokenConfigs.ts +++ b/src/hooks/useTokenConfigs.ts @@ -9,11 +9,13 @@ export const useTokenConfigs = (): { denom: string; name: string; decimals: number; + gasDenom?: string; }, [DydxChainAsset.CHAINTOKEN]: { denom: string; name: string; decimals: number; + gasDenom?: string; }, }; usdcDenom: string;