<script setup lang="ts"> import type { ComponentPublicInstance } from 'vue' const avatar = ref<ComponentPublicInstance>() const switcher = ref() let showSwitcher = $ref(false) onClickOutside(avatar, () => { showSwitcher = false }, { ignore: [switcher] }) </script> <template> <VDropdown v-if="currentUser" v-model:shown="showSwitcher" :triggers="[]" :auto-hide="false" @click="showSwitcher = true" > <div style="-webkit-touch-callout: none;"> <AccountAvatar ref="avatar" :account="currentUser.account" h="2em" :draggable="false" /> </div> <template #popper> <UserSwitcher ref="switcher" /> </template> </VDropdown> <button v-else btn-solid text-sm px-2 py-1 text-center @click="openSigninDialog()"> Sign in </button> </template>