Files
myeasycms-v2/apps/web/app/(marketing)/blog/page.tsx
giancarlo 9ecbf0816e Update CSS classes in web pages
The CSS classes used across different web pages in the web application have been updated. This change mainly consists of adjustments to spacing on various elements to improve the visual layout. The alterations should enhance the readability and user experience of the mentioned pages.
2024-04-07 15:37:03 +08:00

45 lines
1.2 KiB
TypeScript

import { createCmsClient } from '@kit/cms';
import { GridList } from '~/(marketing)/_components/grid-list';
import { SitePageHeader } from '~/(marketing)/_components/site-page-header';
import { PostPreview } from '~/(marketing)/blog/_components/post-preview';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n';
export const generateMetadata = async () => {
const { t } = await createI18nServerInstance();
return {
title: t('marketing:blog'),
description: t('marketing:blogSubtitle'),
};
};
async function BlogPage() {
const { t } = await createI18nServerInstance();
const cms = await createCmsClient();
const posts = await cms.getContentItems({
categories: ['blog'],
});
return (
<div className={'container mx-auto'}>
<div className={'flex flex-col space-y-16'}>
<SitePageHeader
title={t('marketing:blog')}
subtitle={t('marketing:blogSubtitle')}
/>
<GridList>
{posts.map((post, idx) => {
return <PostPreview key={idx} post={post} />;
})}
</GridList>
</div>
</div>
);
}
export default withI18n(BlogPage);