summaryrefslogtreecommitdiff
path: root/packages/frontend/src/components/MkRolePreview.vue
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2023-02-22 14:43:18 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2023-02-22 14:43:18 +0900
commit870f7608beca17d4360cab33c76d0bba95729ef0 (patch)
treea7e82e69aeb4b40d5e263525cee9fb93fb785883 /packages/frontend/src/components/MkRolePreview.vue
parentenhance(client): improve entrance page (diff)
downloadmisskey-870f7608beca17d4360cab33c76d0bba95729ef0.tar.gz
misskey-870f7608beca17d4360cab33c76d0bba95729ef0.tar.bz2
misskey-870f7608beca17d4360cab33c76d0bba95729ef0.zip
enhance: exploreで公開ロール一覧とそのメンバーを閲覧できるように
Diffstat (limited to 'packages/frontend/src/components/MkRolePreview.vue')
-rw-r--r--packages/frontend/src/components/MkRolePreview.vue19
1 files changed, 15 insertions, 4 deletions
diff --git a/packages/frontend/src/components/MkRolePreview.vue b/packages/frontend/src/components/MkRolePreview.vue
index 8c1d7af190..2f5866f340 100644
--- a/packages/frontend/src/components/MkRolePreview.vue
+++ b/packages/frontend/src/components/MkRolePreview.vue
@@ -1,10 +1,15 @@
<template>
-<MkA v-adaptive-bg :to="`/admin/roles/${role.id}`" class="_panel" :class="$style.root" tabindex="-1" :style="{ '--color': role.color }">
+<MkA v-adaptive-bg :to="forModeration ? `/admin/roles/${role.id}` : `/roles/${role.id}`" class="_panel" :class="$style.root" tabindex="-1" :style="{ '--color': role.color }">
<div :class="$style.title">
<span :class="$style.icon">
- <i v-if="role.isAdministrator" class="ti ti-crown" style="color: var(--accent);"></i>
- <i v-else-if="role.isModerator" class="ti ti-shield" style="color: var(--accent);"></i>
- <i v-else class="ti ti-user" style="opacity: 0.7;"></i>
+ <template v-if="role.iconUrl">
+ <img :class="$style.badge" :src="role.iconUrl"/>
+ </template>
+ <template v-else>
+ <i v-if="role.isAdministrator" class="ti ti-crown" style="color: var(--accent);"></i>
+ <i v-else-if="role.isModerator" class="ti ti-shield" style="color: var(--accent);"></i>
+ <i v-else class="ti ti-user" style="opacity: 0.7;"></i>
+ </template>
</span>
<span :class="$style.name">{{ role.name }}</span>
<span v-if="role.target === 'manual'" :class="$style.users">{{ role.usersCount }} users</span>
@@ -20,6 +25,7 @@ import { i18n } from '@/i18n';
const props = defineProps<{
role: any;
+ forModeration: boolean;
}>();
</script>
@@ -38,6 +44,11 @@ const props = defineProps<{
margin-right: 8px;
}
+.badge {
+ height: 1.3em;
+ vertical-align: -20%;
+}
+
.name {
font-weight: bold;
}