From d346f164b303a06ca2c34ed3b515dba85290ee79 Mon Sep 17 00:00:00 2001 From: Alexis Sellier Date: Wed, 4 Aug 2021 13:11:52 +0200 Subject: [PATCH] Improve walletconnect error message --- src/Connect.svelte | 3 +-- src/Error.svelte | 4 ++++ src/session.ts | 3 ++- src/utils.ts | 9 +++++++++ 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/Connect.svelte b/src/Connect.svelte index 4ee84f73d..2241b37c3 100644 --- a/src/Connect.svelte +++ b/src/Connect.svelte @@ -51,7 +51,6 @@ {#if $walletConnectState.state === "open"} {:else if error} - error = null} /> + error = null} /> {/if} diff --git a/src/Error.svelte b/src/Error.svelte index 4d6894de9..5b6502706 100644 --- a/src/Error.svelte +++ b/src/Error.svelte @@ -7,6 +7,7 @@ export let error: Err | null = null; export let title = "Error"; + export let emoji = ""; export let subtitle = ""; export let message = ""; export let floating = false; @@ -18,6 +19,9 @@ + {#if emoji} +
{emoji}
+ {/if} {title}
diff --git a/src/session.ts b/src/session.ts index 51045fea2..15dceba93 100644 --- a/src/session.ts +++ b/src/session.ts @@ -3,6 +3,7 @@ import type { BigNumber } from 'ethers'; import type { TransactionReceipt, TransactionResponse } from '@ethersproject/providers'; import { Config, getConfig } from "@app/config"; import { Unreachable, assert, assertEq } from "@app/error"; +import { formatNetwork } from "@app/utils"; import * as ethers from "ethers"; export enum Connection { @@ -99,7 +100,7 @@ export const loadState = (initial: State): Store => { if (network.chainId !== config.network.chainId) { config.walletConnect.client.killSession(); throw new Error( - `Network mismatch. Please switch to ${config.network.name}.` + `Network mismatch. Please switch your wallet to ${formatNetwork(config.network)}.` ); } store.set({ connection: Connection.Connected, session }); diff --git a/src/utils.ts b/src/utils.ts index 00d16f42f..f71edde22 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -71,6 +71,15 @@ export function formatSeedApi(input: string): string { return input; } +export function formatNetwork(input: { name: string }): string { + let name = input.name; + + if (name === "homestead") { + name = "mainnet"; + } + return capitalize(name); +} + export function capitalize(s: string): string { if (s === "") return s; return s[0].toUpperCase() + s.substr(1);