fix default avatar rendering
This commit is contained in:
parent
f195264b10
commit
cee44c69ed
2 changed files with 22 additions and 21 deletions
|
@ -2,6 +2,7 @@ import type { NDKUserProfile } from '@nostr-dev-kit/ndk';
|
|||
import { LitElement, css, html } from 'lit-element';
|
||||
import { customElement, property } from 'lit/decorators.js';
|
||||
type AvatarSize = 'short' | 'medium' | 'large' | 'huge';
|
||||
import defaultAvatar from '@/default-avatar.png';
|
||||
|
||||
@customElement('arx-nostr-avatar')
|
||||
export class ArxNostrAvatar extends LitElement {
|
||||
|
@ -10,31 +11,31 @@ export class ArxNostrAvatar extends LitElement {
|
|||
|
||||
static override styles = [
|
||||
css`
|
||||
img {
|
||||
border-radius: 50%;
|
||||
width: var(--avatar-size);
|
||||
height: var(--avatar-size);
|
||||
}
|
||||
.short-avatar {
|
||||
--avatar-size: 2rem;
|
||||
}
|
||||
.medium-avatar {
|
||||
--avatar-size: 3rem;
|
||||
}
|
||||
.large-avatar {
|
||||
--avatar-size: 4rem;
|
||||
}
|
||||
.huge-avatar {
|
||||
--avatar-size: 5rem;
|
||||
}
|
||||
`,
|
||||
img {
|
||||
border-radius: 50%;
|
||||
width: var(--avatar-size);
|
||||
height: var(--avatar-size);
|
||||
}
|
||||
.short-avatar {
|
||||
--avatar-size: 2rem;
|
||||
}
|
||||
.medium-avatar {
|
||||
--avatar-size: 3rem;
|
||||
}
|
||||
.large-avatar {
|
||||
--avatar-size: 4rem;
|
||||
}
|
||||
.huge-avatar {
|
||||
--avatar-size: 5rem;
|
||||
}
|
||||
`,
|
||||
];
|
||||
|
||||
override render() {
|
||||
return html`
|
||||
<img
|
||||
class=${this.size}-avatar
|
||||
src=${this.profile.image || '/default-avatar.png'}
|
||||
class="${this.size}-avatar"
|
||||
src=${this.profile.image || defaultAvatar}
|
||||
alt=${this.profile.name || this.profile.displayName || ''}
|
||||
@error=${this.handleError}
|
||||
/>
|
||||
|
@ -43,6 +44,6 @@ export class ArxNostrAvatar extends LitElement {
|
|||
|
||||
handleError(event: Event) {
|
||||
event.preventDefault();
|
||||
(event.target as HTMLImageElement).src = '/default-avatar.png';
|
||||
(event.target as HTMLImageElement).src = defaultAvatar;
|
||||
}
|
||||
}
|
||||
|
|
BIN
src/default-avatar.png
Normal file
BIN
src/default-avatar.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 80 KiB |
Loading…
Add table
Reference in a new issue