import { NextRequest, NextResponse } from "next/server"; import { isMarkdownPreferred, rewritePath } from "fumadocs-core/negotiation"; import { docsContentRoute, docsRoute } from "@/lib/shared"; const { rewrite: rewriteDocs } = rewritePath( `${docsRoute}{/*path}`, `${docsContentRoute}{/*path}/content.md`, ); const { rewrite: rewriteSuffix } = rewritePath( `${docsRoute}{/*path}.md`, `${docsContentRoute}{/*path}/content.md`, ); export default function proxy(request: NextRequest) { const result = rewriteSuffix(request.nextUrl.pathname); if (result) { return NextResponse.rewrite(new URL(result, request.nextUrl)); } if (isMarkdownPreferred(request)) { const result = rewriteDocs(request.nextUrl.pathname); if (result) { return NextResponse.rewrite(new URL(result, request.nextUrl)); } } return NextResponse.next(); }