2022-09-09 11:53:35 +00:00
|
|
|
---
|
2022-09-22 09:37:49 +00:00
|
|
|
import { Root } from '../../components/Root'
|
2022-11-13 03:40:37 +00:00
|
|
|
import Zine from '../../main.astro'
|
2022-09-09 11:53:35 +00:00
|
|
|
import { apiClient } from '../../utils/apiClient'
|
2022-10-28 21:21:47 +00:00
|
|
|
import { PRERENDERED_ARTICLES_COUNT } from '../../components/Views/Topic'
|
2022-09-09 11:53:35 +00:00
|
|
|
|
|
|
|
const slug = Astro.params.slug?.toString() || ''
|
2022-11-13 03:40:37 +00:00
|
|
|
const shouts = await apiClient.getArticlesForTopics({ topicSlugs: [slug], limit: PRERENDERED_ARTICLES_COUNT })
|
|
|
|
const topic = shouts[0].topics.find(({ slug: topicSlug }) => topicSlug === slug)
|
2022-09-09 11:53:35 +00:00
|
|
|
|
2022-09-23 18:27:05 +00:00
|
|
|
import { initRouter } from '../../stores/router'
|
|
|
|
|
|
|
|
const { pathname, search } = Astro.url
|
|
|
|
initRouter(pathname, search)
|
|
|
|
|
2022-09-09 11:53:35 +00:00
|
|
|
Astro.response.headers.set('Cache-Control', 's-maxage=1, stale-while-revalidate')
|
|
|
|
---
|
|
|
|
|
|
|
|
<Zine>
|
2022-11-13 03:40:37 +00:00
|
|
|
<Root shouts={shouts} topic={topic} client:load />
|
2022-09-09 11:53:35 +00:00
|
|
|
</Zine>
|