Skip to content

Commit d6cb98d

Browse files
authored
Fix image for broken image urls in token list (#5747)
1 parent 77a0dbe commit d6cb98d

2 files changed

Lines changed: 50 additions & 3 deletions

File tree

.changeset/big-shrimps-speak.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
'@reown/appkit': patch
3+
'@reown/appkit-ui': patch
4+
'pay-test-exchange': patch
5+
'@reown/appkit-adapter-bitcoin': patch
6+
'@reown/appkit-adapter-ethers': patch
7+
'@reown/appkit-adapter-ethers5': patch
8+
'@reown/appkit-adapter-solana': patch
9+
'@reown/appkit-adapter-ton': patch
10+
'@reown/appkit-adapter-tron': patch
11+
'@reown/appkit-adapter-wagmi': patch
12+
'@reown/appkit-utils': patch
13+
'@reown/appkit-cdn': patch
14+
'@reown/appkit-cli': patch
15+
'@reown/appkit-codemod': patch
16+
'@reown/appkit-common': patch
17+
'@reown/appkit-controllers': patch
18+
'@reown/appkit-core': patch
19+
'@reown/appkit-experimental': patch
20+
'@reown/appkit-pay': patch
21+
'@reown/appkit-polyfills': patch
22+
'@reown/appkit-scaffold-ui': patch
23+
'@reown/appkit-siwe': patch
24+
'@reown/appkit-siwx': patch
25+
'@reown/appkit-testing': patch
26+
'@reown/appkit-universal-connector': patch
27+
'@reown/appkit-wallet': patch
28+
'@reown/appkit-wallet-button': patch
29+
---
30+
31+
Fix broken image in tokens with broken image url

packages/ui/src/composites/wui-list-token/index.ts

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { LitElement, html } from 'lit'
2-
import { property } from 'lit/decorators.js'
2+
import { property, state } from 'lit/decorators.js'
33

44
import { NumberUtil } from '@reown/appkit-common'
55

@@ -28,6 +28,8 @@ export class WuiListToken extends LitElement {
2828

2929
@property({ type: Boolean }) public clickable = false
3030

31+
@state() private imageError = false
32+
3133
// -- Render -------------------------------------------- //
3234
public override render() {
3335
return html`
@@ -67,13 +69,27 @@ export class WuiListToken extends LitElement {
6769
}
6870

6971
// -- Private ------------------------------------------- //
72+
public override updated(changedProperties: Map<string | number | symbol, unknown>) {
73+
if (changedProperties.has('tokenImageUrl')) {
74+
this.imageError = false
75+
}
76+
}
77+
7078
public visualTemplate() {
71-
if (this.tokenName && this.tokenImageUrl) {
72-
return html`<wui-image alt=${this.tokenName} src=${this.tokenImageUrl}></wui-image>`
79+
if (this.tokenName && this.tokenImageUrl && !this.imageError) {
80+
return html`<wui-image
81+
alt=${this.tokenName}
82+
src=${this.tokenImageUrl}
83+
@onLoadError=${this.handleImageError}
84+
></wui-image>`
7385
}
7486

7587
return html`<wui-icon name="coinPlaceholder" color="default"></wui-icon>`
7688
}
89+
90+
private handleImageError() {
91+
this.imageError = true
92+
}
7793
}
7894

7995
declare global {

0 commit comments

Comments
 (0)