import { getAllCategories, getAllPosts, getAllTags } from '@/lib/notion' import BLOG from '@/blog.config' import BaseLayout from '@/layouts/BaseLayout' import { getNotionPageData } from '@/lib/notion/getNotionData' import { useGlobal } from '@/lib/global' import React from 'react' import Link from 'next/link' import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { faFolder, faThList } from '@fortawesome/free-solid-svg-icons' export default function Category ({ tags, allPosts, categories }) { const { locale } = useGlobal() const meta = { title: `${BLOG.title} | ${locale.COMMON.CATEGORY}`, description: BLOG.description, type: 'website' } return
{locale.COMMON.CATEGORY}:
{Object.keys(categories).map(category => { return
{category}({categories[category]})
})}
} export async function getStaticProps () { const from = 'tag-index-props' const notionPageData = await getNotionPageData({ from }) const allPosts = await getAllPosts({ notionPageData, from }) const categories = await getAllCategories(allPosts) const tagOptions = notionPageData.tagOptions const tags = await getAllTags({ allPosts, sliceCount: 12, tagOptions }) return { props: { tags, allPosts, categories }, revalidate: 1 } }