elk/components/account/AccountAvatar.vue

25 lines
562 B
Vue
Raw Permalink Normal View History

<script setup lang="ts">
import type { Account } from 'masto'
defineProps<{
account: Account
}>()
const loaded = $ref(false)
const error = $ref(false)
</script>
<template>
2022-11-27 02:35:26 +00:00
<img
2022-11-27 13:12:25 +00:00
:key="account.avatar"
:src="error ? 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' : account.avatar"
2022-12-02 02:18:36 +00:00
:alt="$t('account.avatar_description', [account.username])"
2022-11-27 02:35:26 +00:00
loading="lazy"
rounded-full
:class="loaded ? 'bg-base' : 'bg-gray:10'"
2022-11-27 02:35:26 +00:00
v-bind="$attrs"
@load="loaded = true"
@error="error = true"
2022-11-27 02:35:26 +00:00
>
</template>