Skip to content

Commit 0aadcd4

Browse files
[SDK] Show injected wallet icon when available (#6871)
1 parent c137dd6 commit 0aadcd4

File tree

3 files changed

+25
-4
lines changed

3 files changed

+25
-4
lines changed

.changeset/tangy-bugs-feel.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"thirdweb": patch
3+
---
4+
5+
Show injected wallet icon when available

packages/thirdweb/src/react/core/utils/wallet.ts

+10-1
Original file line numberDiff line numberDiff line change
@@ -194,10 +194,19 @@ export function useWalletInfo(id: WalletId | undefined) {
194194
export function useWalletImage(id: WalletId | undefined) {
195195
return useQuery({
196196
queryKey: ["wallet-image", id],
197-
queryFn: () => {
197+
queryFn: async () => {
198198
if (!id) {
199199
throw new Error("Wallet id is required");
200200
}
201+
const { getInstalledWalletProviders } = await import(
202+
"../../../wallets/injected/mipdStore.js"
203+
);
204+
const mipdImage = getInstalledWalletProviders().find(
205+
(x) => x.info.rdns === id,
206+
)?.info.icon;
207+
if (mipdImage) {
208+
return mipdImage;
209+
}
201210
return getWalletInfo(id, true);
202211
},
203212
retry: false,

packages/thirdweb/src/react/core/utils/walletIcon.ts

+10-3
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,15 @@ export function useWalletIcon(props: {
129129
/**
130130
* @internal Exported for tests only
131131
*/
132-
export async function fetchWalletImage(props: {
133-
id: WalletId;
134-
}) {
132+
export async function fetchWalletImage(props: { id: WalletId }) {
133+
const { getInstalledWalletProviders } = await import(
134+
"../../../wallets/injected/mipdStore.js"
135+
);
136+
const mipdImage = getInstalledWalletProviders().find(
137+
(x) => x.info.rdns === props.id,
138+
)?.info.icon;
139+
if (mipdImage) {
140+
return mipdImage;
141+
}
135142
return getWalletInfo(props.id, true);
136143
}

0 commit comments

Comments
 (0)