2025-07-27 10:05:37 -07:00
|
|
|
import defaultMdxComponents from "fumadocs-ui/mdx";
|
|
|
|
|
import type { MDXComponents } from "mdx/types";
|
2026-01-07 19:10:53 -08:00
|
|
|
import Image, { type ImageProps } from "next/image";
|
2025-12-24 18:03:22 -08:00
|
|
|
import {
|
|
|
|
|
Accordion,
|
|
|
|
|
AccordionContent,
|
|
|
|
|
AccordionItem,
|
|
|
|
|
AccordionTrigger,
|
|
|
|
|
} from "@/components/ui/accordion";
|
|
|
|
|
import { cn } from "@/lib/utils";
|
2025-07-27 10:05:37 -07:00
|
|
|
|
2025-04-22 02:24:13 -07:00
|
|
|
export function getMDXComponents(components?: MDXComponents): MDXComponents {
|
2025-07-27 10:05:37 -07:00
|
|
|
return {
|
|
|
|
|
...defaultMdxComponents,
|
2026-01-06 17:41:50 -08:00
|
|
|
img: ({ className, alt, ...props }: React.ComponentProps<"img">) => (
|
|
|
|
|
<Image
|
2026-01-07 19:10:53 -08:00
|
|
|
{...(props as ImageProps)}
|
2026-01-06 17:41:50 -08:00
|
|
|
className={cn("rounded-md border", className)}
|
|
|
|
|
alt={alt ?? ""}
|
|
|
|
|
/>
|
2025-12-24 18:03:22 -08:00
|
|
|
),
|
|
|
|
|
Video: ({ className, ...props }: React.ComponentProps<"video">) => (
|
|
|
|
|
<video className={cn("rounded-md border", className)} controls loop {...props} />
|
|
|
|
|
),
|
|
|
|
|
Accordion,
|
|
|
|
|
AccordionItem,
|
|
|
|
|
AccordionTrigger,
|
|
|
|
|
AccordionContent,
|
2025-07-27 10:05:37 -07:00
|
|
|
...components,
|
|
|
|
|
};
|
|
|
|
|
}
|
2025-12-24 18:03:22 -08:00
|
|
|
|
|
|
|
|
export const useMDXComponents = getMDXComponents;
|