'use client'; import * as React from 'react'; import { Card } from '@/components/ui/Card'; import { Button } from '@/components/ui/Button'; import { EmptyState } from '@/components/ui/EmptyState'; import { Copy, X, Download, GitCompare } from 'lucide-react'; import { cn } from '@/lib/utils/cn'; import type { FigletFont } from '@/types/figlet'; export interface ComparisonModeProps { text: string; selectedFonts: string[]; fontResults: Record; onRemoveFont: (fontName: string) => void; onCopyFont: (fontName: string, result: string) => void; onDownloadFont: (fontName: string, result: string) => void; className?: string; } export function ComparisonMode({ text, selectedFonts, fontResults, onRemoveFont, onCopyFont, onDownloadFont, className, }: ComparisonModeProps) { return (

Font Comparison

{selectedFonts.length} font{selectedFonts.length !== 1 ? 's' : ''} selected
{selectedFonts.length === 0 ? ( ) : (
{selectedFonts.map((fontName, index) => (
{/* Font Header */}
{fontName}
{/* ASCII Art Preview */}
                    
                      {fontResults[fontName] || 'Loading...'}
                    
                  
{/* Stats */} {fontResults[fontName] && (
{fontResults[fontName].split('\n').length} lines {Math.max( ...fontResults[fontName].split('\n').map((line) => line.length) )} chars wide
)}
))}
)}
); }