From 42fcae04655ce6360790984d5a7a4bc0f9d4062b Mon Sep 17 00:00:00 2001 From: hueso Date: Wed, 9 Oct 2024 21:56:33 -0300 Subject: [PATCH] add RPC to wallet on unrecognized chains --- src/blockchain/provider.ts | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/blockchain/provider.ts b/src/blockchain/provider.ts index 80166ee..e905278 100644 --- a/src/blockchain/provider.ts +++ b/src/blockchain/provider.ts @@ -73,15 +73,20 @@ const listenToNetworkChange = (connection: any) => { const requestNetworkChange = async (network: NetworkEnum): Promise => { const etherStore = useEtherStore(); if (!etherStore.walletAddress) return true; + const window_ = window as any; try { - const window_ = window as any; await window_.ethereum.request({ method: "wallet_switchEthereumChain", params: [{ chainId: Networks[network].chainId }], // chainId must be in hexadecimal numbers }); - } catch { - return false; + } catch (e:any){ + if (e.code == 4902){ // Unrecognized chain ID + await window_.ethereum.request({ + "method": "wallet_addEthereumChain", + "params": [ Networks[network] ], + }); + } } return true;