elk/components/account/AccountInfo.vue

29 lines
848 B
Vue
Raw Normal View History

2022-11-13 05:34:43 +00:00
<script setup lang="ts">
2022-11-14 02:20:07 +00:00
import type { Account } from 'masto'
2022-11-13 05:34:43 +00:00
2022-11-23 03:48:01 +00:00
const { account, link = true, fullServer = false } = defineProps<{
2022-11-13 05:34:43 +00:00
account: Account
2022-11-21 10:16:04 +00:00
link?: boolean
2022-11-23 03:48:01 +00:00
fullServer?: boolean
2022-11-25 10:54:49 +00:00
hover?: boolean
2022-11-13 05:34:43 +00:00
}>()
2022-11-23 03:48:01 +00:00
2022-11-24 14:20:50 +00:00
const accountHandle = $(useAccountHandle(account, fullServer))
2022-11-13 05:34:43 +00:00
</script>
<template>
2022-11-25 14:39:15 +00:00
<div flex gap-3 cursor-default>
2022-11-25 17:16:50 +00:00
<div flex-shrink-0>
<NuxtLink :to="link ? getAccountPath(account) : null">
2022-11-25 10:54:49 +00:00
<AccountAvatar :account="account" :hover="hover" w-12 h-12 />
2022-11-14 02:20:07 +00:00
</NuxtLink>
2022-11-13 05:34:43 +00:00
</div>
<NuxtLink flex flex-col :to="link ? getAccountPath(account) : null">
<ContentRich font-bold hover:underline :content="getDisplayName(account, { rich: true })" :emojis="account.emojis" />
<AccountHandle :account="account" text-sm op35 />
2022-11-23 00:00:52 +00:00
<slot name="bottom" />
2022-11-14 02:20:07 +00:00
</NuxtLink>
2022-11-14 02:56:48 +00:00
<slot />
2022-11-13 05:34:43 +00:00
</div>
</template>