2022-12-11 19:52:36 +09:00
|
|
|
<script lang="ts" setup>
|
2024-03-07 23:33:25 +09:00
|
|
|
import { STORAGE_KEY_HIDE_EXPLORE_NEWS_TIPS, STORAGE_KEY_LAST_ACCESSED_EXPLORE_ROUTE } from '~~/constants'
|
2022-12-14 03:44:40 +09:00
|
|
|
|
|
|
|
const { t } = useI18n()
|
2024-03-07 23:33:25 +09:00
|
|
|
const route = useRoute()
|
2022-12-14 03:44:40 +09:00
|
|
|
|
2024-01-09 17:56:15 +09:00
|
|
|
const paginator = useMastoClient().v1.trends.links.list()
|
2022-12-11 19:52:36 +09:00
|
|
|
|
|
|
|
const hideNewsTips = useLocalStorage(STORAGE_KEY_HIDE_EXPLORE_NEWS_TIPS, false)
|
2022-12-14 03:44:40 +09:00
|
|
|
|
2023-04-17 04:33:51 +09:00
|
|
|
useHydratedHead({
|
2023-01-12 08:08:31 +09:00
|
|
|
title: () => `${t('tab.news')} | ${t('nav.explore')}`,
|
2022-12-14 03:44:40 +09:00
|
|
|
})
|
2024-03-07 23:33:25 +09:00
|
|
|
|
|
|
|
const lastAccessedExploreRoute = useLocalStorage(STORAGE_KEY_LAST_ACCESSED_EXPLORE_ROUTE, '')
|
|
|
|
lastAccessedExploreRoute.value = route.path.replace(/(.*\/explore\/?)/, '')
|
|
|
|
|
|
|
|
onActivated(() => {
|
|
|
|
lastAccessedExploreRoute.value = route.path.replace(/(.*\/explore\/?)/, '')
|
|
|
|
})
|
2022-12-11 19:52:36 +09:00
|
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
2023-01-02 05:43:09 +09:00
|
|
|
<CommonAlert v-if="isHydrated && !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>
|