diff --git a/web/app/guides/[slug]/GuideContent.tsx b/web/app/guides/[slug]/GuideContent.tsx new file mode 100644 index 0000000..d84a95d --- /dev/null +++ b/web/app/guides/[slug]/GuideContent.tsx @@ -0,0 +1,44 @@ +"use client" + +import { useState, useEffect } from "react" +import CopyableCode from "@/components/CopyableCode" + +function processContent(content: string) { + const codeBlockRegex = /
([\s\S]*?)<\/code><\/pre>/g
+ return content.replace(codeBlockRegex, (match, code) => {
+ return ` `
+ })
+}
+
+export default function GuideContent({ content }: { content: string }) {
+ const [processedContent, setProcessedContent] = useState("")
+
+ useEffect(() => {
+ setProcessedContent(processContent(content))
+ }, [content])
+
+ useEffect(() => {
+ const placeholders = document.querySelectorAll("CopyableCodePlaceholder")
+ placeholders.forEach((placeholder, index) => {
+ const code = decodeURIComponent(placeholder.getAttribute("code") || "")
+ const codeElement =
+ placeholder.replaceWith(codeElement)
+ })
+ }, []) // Removed unnecessary dependency: processedContent
+
+ return (
+
+ )
+}