@@ -2,7 +2,7 @@ import WalletConnect from '@walletconnect/client';
22import QRCodeModal from '@walletconnect/qrcode-modal';
33import { ITxData } from '@walletconnect/types';
44
5−import { useEffect, useState } from 'react';
5+import { useEffect, useMemo, useState } from 'react';
66import { Just } from 'folktale/maybe';
77
88import { useWallet } from 'store/wallet';
@@ -103,6 +103,17 @@ export const useWalletConnect = () => {
103103 return connector.connected;
104104 };
105105
106+ const peerIcon = useMemo(() => {
107+ if (!peerMeta?.icons) {
108+ return null;
109+ }
110+
111+ // Some peers return a list of empty string(s) :)
112+ const iconCandidates = peerMeta.icons.filter(pm => pm !== '');
113+
114+ return iconCandidates.length > 0 ? iconCandidates[0] : null;
115+ }, [peerMeta]);
116+
106117 const signTransaction = async ({
107118 from,
108119 to,
@@ -219,6 +230,7 @@ export const useWalletConnect = () => {
219230 connector,
220231 disconnect,
221232 isConnected,
233+ peerIcon,
222234 peerMeta,
223235 resetConnector,
224236 signTransaction,