95 lines
2.3 KiB
JavaScript
95 lines
2.3 KiB
JavaScript
import createMDX from "@next/mdx"
|
|
import bundleAnalyzer from "@next/bundle-analyzer"
|
|
import rehypeMdxCodeProps from "rehype-mdx-code-props"
|
|
import rehypeSlug from "rehype-slug"
|
|
import {
|
|
brokenLinkCheckerPlugin,
|
|
crossProjectLinksPlugin,
|
|
} from "remark-rehype-plugins"
|
|
import path from "path"
|
|
|
|
/** @type {import('next').NextConfig} */
|
|
const nextConfig = {
|
|
// Configure `pageExtensions` to include MDX files
|
|
pageExtensions: ["js", "jsx", "mdx", "ts", "tsx"],
|
|
basePath: process.env.NEXT_PUBLIC_BASE_PATH || "/api",
|
|
webpack: (config) => {
|
|
config.ignoreWarnings = [{ module: /node_modules\/keyv\/src\/index\.js/ }]
|
|
|
|
return config
|
|
},
|
|
transpilePackages: ["docs-ui"],
|
|
async redirects() {
|
|
return [
|
|
{
|
|
source: "/api/download/:path",
|
|
destination: "/download/:path",
|
|
permanent: true,
|
|
},
|
|
]
|
|
},
|
|
}
|
|
|
|
const withMDX = createMDX({
|
|
options: {
|
|
rehypePlugins: [
|
|
[
|
|
brokenLinkCheckerPlugin,
|
|
{
|
|
crossProjects: {
|
|
docs: {
|
|
projectPath: path.resolve("..", "book"),
|
|
},
|
|
resources: {
|
|
projectPath: path.resolve("..", "resources"),
|
|
hasGeneratedSlugs: true,
|
|
},
|
|
ui: {
|
|
projectPath: path.resolve("..", "ui"),
|
|
contentPath: "src/content/docs",
|
|
},
|
|
},
|
|
},
|
|
],
|
|
[
|
|
crossProjectLinksPlugin,
|
|
{
|
|
baseUrl: process.env.NEXT_PUBLIC_BASE_URL,
|
|
projectUrls: {
|
|
docs: {
|
|
url: process.env.NEXT_PUBLIC_DOCS_URL,
|
|
path: "",
|
|
},
|
|
resources: {
|
|
url: process.env.NEXT_PUBLIC_RESOURCES_URL,
|
|
},
|
|
"user-guide": {
|
|
url: process.env.NEXT_PUBLIC_USER_GUIDE_URL,
|
|
},
|
|
ui: {
|
|
url: process.env.NEXT_PUBLIC_UI_URL,
|
|
},
|
|
},
|
|
useBaseUrl:
|
|
process.env.NODE_ENV === "production" ||
|
|
process.env.VERCEL_ENV === "production",
|
|
},
|
|
],
|
|
[
|
|
rehypeMdxCodeProps,
|
|
{
|
|
tagName: "code",
|
|
},
|
|
],
|
|
[rehypeSlug],
|
|
],
|
|
development: process.env.NODE_ENV === "development",
|
|
},
|
|
})
|
|
|
|
const withBundleAnalyzer = bundleAnalyzer({
|
|
enabled: process.env.ANALYZE_BUNDLE === "true",
|
|
})
|
|
|
|
export default withMDX(nextConfig)
|