import { useEffect, useRef, useState } from "react"; import { markdownServiceClient } from "@/grpcweb"; import { Node } from "@/types/proto/api/v2/markdown_service"; import Renderer from "./Renderer"; interface Props { content: string; className?: string; onMemoContentClick?: (e: React.MouseEvent) => void; } const MemoContentV1: React.FC = (props: Props) => { const { className, content, onMemoContentClick } = props; const [nodes, setNodes] = useState([]); const memoContentContainerRef = useRef(null); useEffect(() => { markdownServiceClient .parseMarkdown({ markdown: content, }) .then(({ nodes }) => { setNodes(nodes); }); }, [content]); const handleMemoContentClick = async (e: React.MouseEvent) => { if (onMemoContentClick) { onMemoContentClick(e); } }; return (
{nodes.map((node, index) => ( ))}
); }; export default MemoContentV1;