diff options
Diffstat (limited to 'packages/frontend/src/components')
| -rw-r--r-- | packages/frontend/src/components/global/MkAvatar.vue | 6 | ||||
| -rw-r--r-- | packages/frontend/src/components/index.ts | 42 |
2 files changed, 28 insertions, 20 deletions
diff --git a/packages/frontend/src/components/global/MkAvatar.vue b/packages/frontend/src/components/global/MkAvatar.vue index d392ec6d6f..7fb830d537 100644 --- a/packages/frontend/src/components/global/MkAvatar.vue +++ b/packages/frontend/src/components/global/MkAvatar.vue @@ -1,5 +1,5 @@ <template> -<span v-if="!link" v-user-preview="preview ? user.id : undefined" class="_noSelect" :class="[$style.root, { [$style.cat]: user.isCat, [$style.square]: $store.state.squareAvatars }]" :style="{ color }" :title="acct(user)" @click="onClick"> +<span v-if="!link" v-user-preview="preview ? user.id : undefined" class="_noSelect" :class="[$style.root, { [$style.cat]: user.isCat, [$style.square]: squareAvatars }]" :style="{ color }" :title="acct(user)" @click="onClick"> <img :class="$style.inner" :src="url" decoding="async"/> <MkUserOnlineIndicator v-if="indicator" :class="$style.indicator" :user="user"/> <template v-if="user.isCat"> @@ -7,7 +7,7 @@ <div :class="$style.earRight"/> </template> </span> -<MkA v-else v-user-preview="preview ? user.id : undefined" class="_noSelect" :class="[$style.root, { [$style.cat]: user.isCat, [$style.square]: $store.state.squareAvatars }]" :style="{ color }" :title="acct(user)" :to="userPage(user)" :target="target"> +<MkA v-else v-user-preview="preview ? user.id : undefined" class="_noSelect" :class="[$style.root, { [$style.cat]: user.isCat, [$style.square]: squareAvatars }]" :style="{ color }" :title="acct(user)" :to="userPage(user)" :target="target"> <img :class="$style.inner" :src="url" decoding="async"/> <MkUserOnlineIndicator v-if="indicator" :class="$style.indicator" :user="user"/> <template v-if="user.isCat"> @@ -26,6 +26,8 @@ import { acct, userPage } from '@/filters/user'; import MkUserOnlineIndicator from '@/components/MkUserOnlineIndicator.vue'; import { defaultStore } from '@/store'; +const squareAvatars = $ref(defaultStore.state.squareAvatars); + const props = withDefaults(defineProps<{ user: misskey.entities.User; target?: string | null; diff --git a/packages/frontend/src/components/index.ts b/packages/frontend/src/components/index.ts index 560870f84c..63e8fc225c 100644 --- a/packages/frontend/src/components/index.ts +++ b/packages/frontend/src/components/index.ts @@ -20,26 +20,32 @@ import MkSpacer from './global/MkSpacer.vue'; import MkStickyContainer from './global/MkStickyContainer.vue'; export default function(app: App) { - app.component('I18n', I18n); - app.component('RouterView', RouterView); - app.component('Mfm', Mfm); - app.component('MkA', MkA); - app.component('MkAcct', MkAcct); - app.component('MkAvatar', MkAvatar); - app.component('MkEmoji', MkEmoji); - app.component('MkCustomEmoji', MkCustomEmoji); - app.component('MkUserName', MkUserName); - app.component('MkEllipsis', MkEllipsis); - app.component('MkTime', MkTime); - app.component('MkUrl', MkUrl); - app.component('MkLoading', MkLoading); - app.component('MkError', MkError); - app.component('MkAd', MkAd); - app.component('MkPageHeader', MkPageHeader); - app.component('MkSpacer', MkSpacer); - app.component('MkStickyContainer', MkStickyContainer); + for (const [key, value] of Object.entries(components)) { + app.component(key, value); + } } +export const components = { + I18n: I18n, + RouterView: RouterView, + Mfm: Mfm, + MkA: MkA, + MkAcct: MkAcct, + MkAvatar: MkAvatar, + MkEmoji: MkEmoji, + MkCustomEmoji: MkCustomEmoji, + MkUserName: MkUserName, + MkEllipsis: MkEllipsis, + MkTime: MkTime, + MkUrl: MkUrl, + MkLoading: MkLoading, + MkError: MkError, + MkAd: MkAd, + MkPageHeader: MkPageHeader, + MkSpacer: MkSpacer, + MkStickyContainer: MkStickyContainer, +}; + declare module '@vue/runtime-core' { export interface GlobalComponents { I18n: typeof I18n; |