diff --git a/src/constants/wallets.ts b/src/constants/wallets.ts index 5a4a909..4eced61 100644 --- a/src/constants/wallets.ts +++ b/src/constants/wallets.ts @@ -40,7 +40,7 @@ export enum WalletErrorType { // General ChainMismatch, UserCanceled, - SwitchChainFailed, + SwitchChainMethodMissing, // Non-Deterministic NonDeterministicWallet, diff --git a/src/lib/wallet/index.ts b/src/lib/wallet/index.ts index 20f9e7d..7ce29c9 100644 --- a/src/lib/wallet/index.ts +++ b/src/lib/wallet/index.ts @@ -92,8 +92,8 @@ export const getWalletErrorType = ({ error }: { error: Error }) => { return WalletErrorType.ChainMismatch; } - if (messageLower.includes('switch chain')) { - return WalletErrorType.SwitchChainFailed; + if (messageLower.includes('Missing or invalid. request() method: wallet_switchEthereumChain')) { + return WalletErrorType.SwitchChainMethodMissing; } // ImToken - User canceled @@ -122,7 +122,7 @@ export const parseWalletError = ({ switch (walletErrorType) { case WalletErrorType.ChainMismatch: case WalletErrorType.UserCanceled: - case WalletErrorType.SwitchChainFailed: { + case WalletErrorType.SwitchChainMethodMissing: { isErrorExpected = true; message = error.message; break;