diff --git a/apps/docs/components/ai/markdown.tsx b/apps/docs/components/ai/markdown.tsx index f44d616..3d2eec0 100644 --- a/apps/docs/components/ai/markdown.tsx +++ b/apps/docs/components/ai/markdown.tsx @@ -14,6 +14,7 @@ import { import { Fragment, jsx, jsxs } from 'react/jsx-runtime'; import { DynamicCodeBlock } from 'fumadocs-ui/components/dynamic-codeblock'; import defaultMdxComponents from 'fumadocs-ui/mdx'; +import { Skeleton } from '../ui/Skeleton'; export interface Processor { process: (content: string) => Promise; @@ -65,7 +66,7 @@ export function Markdown({ text }: { text: string }) { const deferredText = useDeferredValue(text); return ( - + }> ); diff --git a/apps/docs/components/ui/Skeleton.tsx b/apps/docs/components/ui/Skeleton.tsx new file mode 100644 index 0000000..49b3e90 --- /dev/null +++ b/apps/docs/components/ui/Skeleton.tsx @@ -0,0 +1,12 @@ +export function Skeleton({ lines = 4 }: { lines?: number }) { + return ( +
+ {Array.from({ length: lines }).map((_, i) => ( +
+ ))} +
+ ); +}