'use client'; import React, { useState } from 'react'; interface MermaidCodeViewerProps { chart: string; renderPreview: () => React.ReactNode; } export const MermaidCodeViewer: React.FC = ({ chart, renderPreview, }) => { const [activeTab, setActiveTab] = useState<'preview' | 'code'>('preview'); const [copied, setCopied] = useState(false); const handleCopy = async () => { await navigator.clipboard.writeText(chart); setCopied(true); setTimeout(() => setCopied(false), 2000); }; return (
{/* Tabs */}
{/* Copy button - show only on Code tab */} {activeTab === 'code' && ( )}
{/* Content */}
{activeTab === 'preview' ? (
{renderPreview()}
) : (
                        {chart}
                    
)}
); };