diff --git a/astro.config.mjs b/astro.config.mjs
index 7490e417d..28feda494 100644
--- a/astro.config.mjs
+++ b/astro.config.mjs
@@ -9,6 +9,7 @@ import rehypeSlug from "rehype-slug";
import remarkDirective from "remark-directive";
import remarkMath from "remark-math";
import { customAsidePlugin } from "./src/lib/aside/customAsidePlugin";
+import { apiDocsOnly } from "./src/lib/markdown/apiDocsOnly";
import { normalizeMath } from "./src/lib/markdown/normalizeMath";
import { mermaid } from "./src/utils/mermaid";
import { redirects } from "./src/utils/redirects";
@@ -18,9 +19,9 @@ export default defineConfig({
markdown: {
remarkPlugins: [remarkMath, normalizeMath, remarkDirective, mermaid, customAsidePlugin],
rehypePlugins: [
- rehypeSlug,
+ apiDocsOnly(rehypeSlug),
[
- rehypeAutolinkHeadings,
+ apiDocsOnly(rehypeAutolinkHeadings),
{
behavior: "append",
properties: {
diff --git a/src/layouts/docs-layout.astro b/src/layouts/docs-layout.astro
index 86da527ea..a9ef487ae 100644
--- a/src/layouts/docs-layout.astro
+++ b/src/layouts/docs-layout.astro
@@ -19,6 +19,8 @@ const { title, description, image } = Astro.props;
const pages = await getCollection("Docs");
let nav = generateDocsNav(pages);
+
+const isApiDocs = Astro.url.pathname.startsWith("/docs/api-documentation/");
---
>(plugin: P): P { + const wrapped = function (this: unknown, ...args: any[]) { + const transformer = (plugin as any).apply(this, args); + if (typeof transformer !== "function") return transformer; + return function (tree: any, file: any) { + const path = String(file?.history?.[0] ?? file?.path ?? "").replace(/\\/g, "/"); + if (!path.includes(API_DOCS_PATH_FRAGMENT)) return; + return transformer(tree, file); + }; + }; + return wrapped as unknown as P; +}