2022-12-11 19:52:36 +09:00
|
|
|
<script lang="ts" setup>
|
|
|
|
// @ts-expect-error missing types
|
|
|
|
import { DynamicScrollerItem } from 'vue-virtual-scroller'
|
|
|
|
import { STORAGE_KEY_HIDE_EXPLORE_NEWS_TIPS } from '~~/constants'
|
2022-12-14 03:44:40 +09:00
|
|
|
|
|
|
|
const { t } = useI18n()
|
|
|
|
|
2022-12-11 19:52:36 +09:00
|
|
|
const paginator = useMasto().trends.links
|
|
|
|
|
|
|
|
const hideNewsTips = useLocalStorage(STORAGE_KEY_HIDE_EXPLORE_NEWS_TIPS, false)
|
2022-12-14 03:44:40 +09:00
|
|
|
|
|
|
|
useHeadFixed({
|
|
|
|
title: () => `${t('tab.news')} | ${t('nav_side.explore')}`,
|
|
|
|
})
|
2022-12-11 19:52:36 +09:00
|
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
2022-12-26 16:45:56 +09:00
|
|
|
<CommonAlert v-if="isHydrated.value && !hideNewsTips" @close="hideNewsTips = true">
|
2022-12-11 19:52:36 +09:00
|
|
|
<p>{{ $t('tooltip.explore_links_intro') }}</p>
|
|
|
|
</CommonAlert>
|
|
|
|
|
|
|
|
<CommonPaginator v-bind="{ paginator }">
|
|
|
|
<template #default="{ item }">
|
|
|
|
<StatusPreviewCard :card="item" border="!b base" rounded="!none" p="!4" small-picture-only root />
|
|
|
|
</template>
|
|
|
|
<template #loading>
|
|
|
|
<StatusPreviewCardSkeleton square root border="b base" />
|
|
|
|
<StatusPreviewCardSkeleton square root border="b base" op50 />
|
|
|
|
<StatusPreviewCardSkeleton square root border="b base" op25 />
|
|
|
|
</template>
|
|
|
|
</CommonPaginator>
|
|
|
|
</template>
|