fix: user block enhancement

This commit is contained in:
オスカー、 2024-10-21 01:37:53 +09:00
parent 64d2828974
commit d12f67b2b0
No known key found for this signature in database
GPG key ID: 139D6573F92DA9F7
3 changed files with 39 additions and 11 deletions

View file

@ -32,8 +32,8 @@ SPDX-License-Identifier: AGPL-3.0-only
</div>
</div>
<span v-if="$i && $i.id !== user.id && user.isFollowed" class="followed">{{ i18n.ts.followsYou }}</span>
<span v-if="$i && $i.id !== user.id && user.isBlocking" class="followed">{{ i18n.ts.youAreBlocking }}</span>
<span v-if="$i && $i.id !== user.id && user.isBlocked" class="followed">{{ i18n.ts.youAreBlocked }}</span>
<span v-if="$i && $i.id !== user.id && user.isBlocking" class="blocking">{{ i18n.ts.youAreBlocking }}</span>
<span v-if="$i && $i.id !== user.id && user.isBlocked" class="blocked">{{ i18n.ts.youAreBlocked }}</span>
<div v-if="$i" class="actions">
<button class="menu _button" @click="menu"><i class="ti ti-dots"></i></button>
<MkFollowButton v-if="$i && $i.id !== user.id" v-model:user="user" :inline="true" :transparent="false" :full="true" class="koudoku"/>
@ -169,7 +169,7 @@ SPDX-License-Identifier: AGPL-3.0-only
</dl>
</div>
<div v-if="!hideCounters" class="status">
<div v-if="!hideCounters && !user.isBlocked" class="status">
<MkA :to="userPage(user)">
<b>{{ number(user.notesCount) }}</b>
<span>{{ i18n.ts.notes }}</span>
@ -186,7 +186,7 @@ SPDX-License-Identifier: AGPL-3.0-only
</div>
</div>
<div v-if="user.isBlocked !== true" class="contents _gaps">
<div v-if="!user.isBlocked" class="contents _gaps">
<div v-if="user.pinnedNotes.length > 0" class="_gaps">
<MkNote v-for="note in user.pinnedNotes" :key="note.id" class="note _panel" :note="note" :pinned="true"/>
</div>
@ -207,15 +207,15 @@ SPDX-License-Identifier: AGPL-3.0-only
</div>
</div>
<div v-if="!narrow" class="sub _gaps" style="container-type: inline-size;">
<XFiles :key="user.id" :user="user"/>
<XActivity v-if="!hideCounters" :key="user.id" :user="user"/>
<XFiles v-if="!user.isBlocked" :key="user.id" :user="user"/>
<XActivity v-if="!hideCounters && !user.isBlocked" :key="user.id" :user="user"/>
</div>
</div>
</MkSpacer>
</template>
<script lang="ts" setup>
import { defineAsyncComponent, computed, onMounted, onUnmounted, nextTick, watch, ref } from 'vue';
import { computed, defineAsyncComponent, nextTick, onMounted, onUnmounted, ref, watch } from 'vue';
import * as Misskey from 'misskey-js';
import MkNote from '@/components/MkNote.vue';
import MkFollowButton from '@/components/MkFollowButton.vue';
@ -236,7 +236,7 @@ import { $i, iAmModerator } from '@/account.js';
import { dateString } from '@/filters/date.js';
import { confetti } from '@/scripts/confetti.js';
import { misskeyApi, misskeyApiGet } from '@/scripts/misskey-api.js';
import { isFollowingVisibleForMe, isFollowersVisibleForMe } from '@/scripts/isFfVisibleForMe.js';
import { isFollowersVisibleForMe, isFollowingVisibleForMe } from '@/scripts/isFfVisibleForMe.js';
import { useRouter } from '@/router/supplier.js';
import { defaultStore } from '@/store.js';
import MkLink from '@/components/MkLink.vue';
@ -486,6 +486,28 @@ onUnmounted(() => {
border-radius: 6px;
}
> .blocking {
position: absolute;
top: 38px;
left: 12px;
padding: 4px 8px;
color: #fff;
background: rgba(0, 0, 0, 0.7);
font-size: 0.7em;
border-radius: 6px;
}
> .blocked {
position: absolute;
top: 64px;
left: 12px;
padding: 4px 8px;
color: #fff;
background: rgba(0, 0, 0, 0.7);
font-size: 0.7em;
border-radius: 6px;
}
> .actions {
position: absolute;
top: 12px;