69 lines
2.5 KiB
Text
69 lines
2.5 KiB
Text
// Hooks
|
|
import { serverSideTranslations } from 'next-i18next/serverSideTranslations'
|
|
// Components
|
|
import Head from 'next/head'
|
|
import { MdxWrapper } from 'shared/components/wrappers/mdx.mjs'
|
|
//import { TocWrapper } from 'shared/components/wrappers/toc.mjs'
|
|
import { PageWrapper, ns } from 'shared/components/wrappers/page.mjs'
|
|
// MDX content for each language
|
|
import MDX, { frontmatter } from 'markdown/{{{ slug }}}/en.md'
|
|
|
|
/*
|
|
* This page is auto-generated by the prebuild script.
|
|
* Any changes you make will be overwritten on the next (pre)build.
|
|
*
|
|
* See the page-templates folder for more info.
|
|
*/
|
|
const DocsPage = ({ page }) => {
|
|
|
|
return (
|
|
<PageWrapper {...page} title={frontmatter.title}>
|
|
<Head>
|
|
<meta property="og:title" content={frontmatter.title} key="title" />
|
|
<meta property="og:type" content="article" key="type" />
|
|
<meta property="og:description" content={`{{{introEn}}}`} key="type" />
|
|
<meta property="og:article:author" content="Joost De Cock" key="author" />
|
|
<meta
|
|
property="og:image"
|
|
content={`https://canary.backend.freesewing.org/og-img/${page.locale}/dev/{{{ slug }}}}`}
|
|
key="image"
|
|
/>
|
|
<meta property="og:image:type" content="image/png" />
|
|
<meta property="og:image:width" content="1200" />
|
|
<meta property="og:image:height" content="630" />
|
|
<meta property="og:url" content={`https://freesewing.dev/{{{ slug }}}`} key="url" />
|
|
<meta property="og:locale" content="en" key="locale" />
|
|
<meta property="og:site_name" content="freesewing.dev" key="site" />
|
|
<title>{frontmatter.title} - FreeSewing.dev</title>
|
|
</Head>
|
|
<div className="flex flex-row-reverse flex-wrap xl:flex-nowrap justify-end">
|
|
{frontmatter.toc && (
|
|
<div className="mb-8 w-full xl:w-80 2xl:w-96 xl:pl-8 2xl:pl-16">
|
|
{/* FIXME: Implement toc plugin that adds it to frontmatter */}
|
|
{/* <TocWrapper toc={frontmatter.toc} /> */}
|
|
</div>
|
|
)}
|
|
<MdxWrapper {...{ MDX, frontmatter }} />
|
|
</div>
|
|
</PageWrapper>
|
|
)
|
|
}
|
|
|
|
export default DocsPage
|
|
|
|
/*
|
|
* getStaticProps() is used to fetch data at build-time.
|
|
* To learn more, see: https://nextjs.org/docs/basic-features/data-fetching
|
|
*/
|
|
export async function getStaticProps({ locale }) {
|
|
return {
|
|
props: {
|
|
...(await serverSideTranslations(locale, ['docs', ...ns])),
|
|
locale,
|
|
page: {
|
|
locale,
|
|
path: {{{ slugArray }}},
|
|
},
|
|
},
|
|
}
|
|
}
|