"use client" import React from 'react'; import { CopyButton } from './copy-button'; import { Highlight, PrismTheme } from 'prism-react-renderer'; import theme from '@/styles/prism-theme.json'; interface CodeSnippetProps { title?: string; code: string; language?: string; } export const CodeSnippet: React.FC = ({ title, code, language = 'typescript', }) => { const lines = code.trim().split('\n'); const handleCopy = async () => { try { await navigator.clipboard.writeText(code); } catch (err) { console.warn('Copy failed:', err); } }; return (
{title ? (

{title}

) : null}
{!title && (
)} {({ className, style, tokens, getLineProps, getTokenProps }) => (
              {tokens.map((line, i) => (
                
{i + 1} {line.map((token, key) => ( ))}
))}
)}
); };