- Fixes #5504 - Fixes #5503 - Return 404 when the page does not exist - Modified the footer in order to align it properly - Removed "noticed something to change" in each table of content - Fixed the URLs of the edit module - Added the edit module to Developers - Fixed header style on the REST API page. - Edited the README to point to Developers - Fixed selected state when clicking on sidebar elements --------- Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
41 lines
1.2 KiB
TypeScript
41 lines
1.2 KiB
TypeScript
import { Metadata } from 'next';
|
|
import { notFound } from 'next/navigation';
|
|
|
|
import DocsMain from '@/app/_components/docs/DocsMain';
|
|
import { getDocsArticles } from '@/content/user-guide/constants/getDocsArticles';
|
|
import { fetchArticleFromSlug } from '@/shared-utils/fetchArticleFromSlug';
|
|
import { formatSlug } from '@/shared-utils/formatSlug';
|
|
|
|
export const dynamic = 'force-dynamic';
|
|
|
|
export async function generateMetadata({
|
|
params,
|
|
}: {
|
|
params: { folder: string };
|
|
}): Promise<Metadata> {
|
|
const formattedSlug = formatSlug(params.folder);
|
|
const basePath = '/src/content/developers';
|
|
const mainPost = await fetchArticleFromSlug(params.folder, basePath);
|
|
return {
|
|
title: 'Twenty - ' + formattedSlug,
|
|
description: mainPost?.itemInfo?.info,
|
|
};
|
|
}
|
|
|
|
export default async function DocsSlug({
|
|
params,
|
|
}: {
|
|
params: { folder: string };
|
|
}) {
|
|
const filePath = `src/content/developers/${params.folder}/`;
|
|
const docsArticleCards = getDocsArticles(filePath);
|
|
const isSection = true;
|
|
const hasOnlyEmptySections = docsArticleCards.every(
|
|
(article) => article.topic === 'Empty Section',
|
|
);
|
|
if (!docsArticleCards || hasOnlyEmptySections) {
|
|
notFound();
|
|
}
|
|
return <DocsMain docsArticleCards={docsArticleCards} isSection={isSection} />;
|
|
}
|