import { productName, productSlug } from 'data/metadata' import DocsPage from '@hashicorp/react-docs-page' import { NextPage, InferGetStaticPropsType } from 'next' import Badge from 'components/badge' import BadgesHeader from 'components/badges-header' import PluginBadge from 'components/plugin-badge' import DevAlert from 'components/dev-alert' import Checklist from 'components/checklist' // Imports below are only used server-side import { generateStaticPaths, generateStaticProps, } from 'components/remote-plugin-docs/server' // Configure the docs path and remote plugin docs loading const additionalComponents = { Badge, BadgesHeader, PluginBadge, Checklist } const baseRoute = 'plugins' const localContentDir = 'content/plugins' const mainBranch = 'master' const navDataFile = 'data/plugins-nav-data.json' const product = { name: productName, slug: productSlug } const remotePluginsFile = 'data/plugins-manifest.json' type Props = InferGetStaticPropsType const DocsLayout: NextPage = ({ isDevMissingRemotePlugins, ...props }) => { return ( <> {isDevMissingRemotePlugins ? ( Note for local development

🚨 {' '} This preview is missing plugin docs pulled from remote repos.

🛠 {' '} To preview docs pulled from plugin repos, please include a GITHUB_API_TOKEN in{' '} website/.env.local.

) : null} ) } export async function getStaticPaths() { const paths = await generateStaticPaths({ navDataFile, remotePluginsFile, }) return { paths, fallback: false } } export async function getStaticProps({ params }) { const props = await generateStaticProps({ additionalComponents, localContentDir, mainBranch, navDataFile, params, product, remotePluginsFile, }) return { props } } export default DocsLayout