2022-11-18 18:37:22 +09:00
|
|
|
<script setup lang="ts">
|
2023-01-08 15:21:09 +09:00
|
|
|
import type { Paginator, mastodon } from 'masto'
|
2022-11-18 18:37:22 +09:00
|
|
|
|
|
|
|
const { paginator } = defineProps<{
|
2023-01-08 15:21:09 +09:00
|
|
|
paginator: Paginator<mastodon.v1.Conversation[], mastodon.DefaultPaginationParams>
|
2022-11-18 18:37:22 +09:00
|
|
|
}>()
|
2023-01-24 04:33:21 +09:00
|
|
|
|
|
|
|
function preprocess(items: mastodon.v1.Conversation[]): mastodon.v1.Conversation[] {
|
2023-02-06 00:05:42 +09:00
|
|
|
const isAuthored = (conversation: mastodon.v1.Conversation) => conversation.lastStatus ? conversation.lastStatus.account.id === currentUser.value?.account.id : false
|
|
|
|
return items.filter(item => isAuthored(item) || !item.lastStatus?.filtered?.find(
|
2023-01-24 04:33:21 +09:00
|
|
|
filter => filter.filter.filterAction === 'hide' && filter.filter.context.includes('thread'),
|
|
|
|
))
|
|
|
|
}
|
2022-11-18 18:37:22 +09:00
|
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
2023-01-24 04:33:21 +09:00
|
|
|
<CommonPaginator :paginator="paginator" :preprocess="preprocess">
|
2022-11-18 18:37:22 +09:00
|
|
|
<template #default="{ item }">
|
|
|
|
<ConversationCard
|
|
|
|
:conversation="item"
|
2022-11-23 11:16:31 +09:00
|
|
|
border="b base" py-1
|
2022-11-18 18:37:22 +09:00
|
|
|
/>
|
|
|
|
</template>
|
|
|
|
</CommonPaginator>
|
|
|
|
</template>
|