import React, { useEffect, useState } from 'react'; import { AlertTriangle, X, Check, ArrowRight } from 'lucide-react'; import { formatBytes } from '../utils/formatters'; interface ConflictModalProps { isOpen: boolean; sourceFile: { name: string; size: number; date: string }; targetFile: { name: string; size: number; date: string }; onOverwrite: (applyToAll: boolean) => void; onSkip: (applyToAll: boolean) => void; onClose: () => void; // Usually acts as cancel/skip logic if forced closed } const ConflictModal: React.FC = ({ isOpen, sourceFile, targetFile, onOverwrite, onSkip, onClose }) => { const [applyToAll, setApplyToAll] = useState(false); if (!isOpen) return null; return (
{/* Header */}

파일 중복 확인 (File Conflict)

{/* Content */}

대상 위치에 동일한 이름의 파일이 이미 존재합니다. 어떻게 처리하시겠습니까?

{/* Target (Existing) */}
기존 파일 (Target) {targetFile.name}
{formatBytes(targetFile.size)} {new Date(targetFile.date).toLocaleString()}
{/* Source (New) */}
새 파일 (Source) {sourceFile.name}
{formatBytes(sourceFile.size)} {new Date(sourceFile.date).toLocaleString()}
setApplyToAll(e.target.checked)} className="rounded border-slate-300 text-blue-600 focus:ring-blue-500" />
{/* Footer */}
); }; export default ConflictModal;