source.config.ts 841 B

1234567891011121314151617181920212223242526272829303132
  1. import { defineConfig, defineDocs } from "fumadocs-mdx/config";
  2. import rehypeKatex from "rehype-katex";
  3. import remarkMath from "remark-math";
  4. import { z } from "zod";
  5. export const docs = defineDocs({
  6. docs: {
  7. schema: z.object({
  8. title: z.string(),
  9. description: z.string(),
  10. icon: z.string().optional(),
  11. full: z.boolean().default(false),
  12. index: z.boolean().default(false),
  13. }),
  14. },
  15. meta: {
  16. schema: z.object({
  17. title: z.string().optional(),
  18. pages: z.array(z.string()).optional(),
  19. description: z.string().optional(),
  20. root: z.boolean().optional(),
  21. defaultOpen: z.boolean().optional(),
  22. icon: z.string().optional(),
  23. }),
  24. },
  25. });
  26. export default defineConfig({
  27. mdxOptions: {
  28. remarkPlugins: [remarkMath],
  29. rehypePlugins: (v) => [rehypeKatex, ...v],
  30. },
  31. });