@@ -3,6 +3,7 @@ import ReactMarkdown from "react-markdown";
33import remarkGfm from "remark-gfm" ;
44import rehypeRaw from "rehype-raw" ;
55import CodeBlock from "@/docs-app/ui/components/content/CodeBlock.tsx" ;
6+ import HeaderWithLink from "@/docs-app/ui/components/content/HeaderWithLink.tsx" ;
67import type { Components } from "react-markdown" ;
78import type { Root , Element as MdElement , Text as MdText } from "hast" ; // Import HAST types
89import {
@@ -110,57 +111,41 @@ const MarkdownContent: React.FC<MarkdownContentProps> = ({ content }) => {
110111 h1 : ( { node, children, ...props } ) => {
111112 const text = extractTextFromChildren ( children ) ;
112113 const id = generateHeadingId ( text ) ;
113- return (
114- < >
115- < h1
116- id = { id }
117- className = "text-3xl font-bold mt-12 mb-2 scroll-mt-24 text-foreground leading-tight"
118- { ...props }
119- >
120- { children }
121- </ h1 >
122- < Separator className = "mb-2 opacity-60" />
123- </ >
124- ) ;
114+ return (
115+ < >
116+ < HeaderWithLink id = { id } level = { 1 } { ...props } >
117+ { children }
118+ </ HeaderWithLink >
119+ < Separator className = "mb-2 opacity-60" />
120+ </ >
121+ ) ;
125122 } ,
126123 h2 : ( { node, children, ...props } ) => {
127124 const text = extractTextFromChildren ( children ) ;
128125 const id = generateHeadingId ( text ) ;
129- return (
130- < h2
131- id = { id }
132- className = "text-2xl font-semibold mt-6 mb-4 scroll-mt-24 text-foreground leading-snug"
133- { ...props }
134- >
135- { children }
136- </ h2 >
137- ) ;
126+ return (
127+ < HeaderWithLink id = { id } level = { 2 } { ...props } >
128+ { children }
129+ </ HeaderWithLink >
130+ ) ;
138131 } ,
139132 h3 : ( { node, children, ...props } ) => {
140133 const text = extractTextFromChildren ( children ) ;
141134 const id = generateHeadingId ( text ) ;
142- return (
143- < h3
144- id = { id }
145- className = "text-xl font-semibold mt-8 mb-3 scroll-mt-24 text-foreground leading-snug"
146- { ...props }
147- >
148- { children }
149- </ h3 >
150- ) ;
135+ return (
136+ < HeaderWithLink id = { id } level = { 3 } { ...props } >
137+ { children }
138+ </ HeaderWithLink >
139+ ) ;
151140 } ,
152141 h4 : ( { node, children, ...props } ) => {
153142 const text = extractTextFromChildren ( children ) ;
154143 const id = generateHeadingId ( text ) ;
155- return (
156- < h4
157- id = { id }
158- className = "text-lg font-medium mt-6 mb-2 scroll-mt-24 text-foreground"
159- { ...props }
160- >
161- { children }
162- </ h4 >
163- ) ;
144+ return (
145+ < HeaderWithLink id = { id } level = { 4 } { ...props } >
146+ { children }
147+ </ HeaderWithLink >
148+ ) ;
164149 } ,
165150 a : ( { node, ...props } ) => (
166151 < a
0 commit comments