import React, { useState } from 'react'; import { UploadCloud, Camera, CheckCircle2 } from 'lucide-react'; export default function PocketFishApp() { const [isDragging, setIsDragging] = useState(false); const [showResult, setShowResult] = useState(false); const [previewImage, setPreviewImage] = useState(null); const [isProcessing, setIsProcessing] = useState(false); // 드래그 앤 드롭 이벤트 핸들러 const handleDragOver = (e) => { e.preventDefault(); setIsDragging(true); }; const handleDragLeave = () => setIsDragging(false); const handleDrop = (e) => { e.preventDefault(); setIsDragging(false); if (e.dataTransfer.files && e.dataTransfer.files[0]) { handleFileUpload(e.dataTransfer.files[0]); } }; // 파일 업로드 (카메라/갤러리) const handleFileInput = (e) => { if (e.target.files && e.target.files[0]) { handleFileUpload(e.target.files[0]); } }; // 업로드 시뮬레이션 (AI 분석 딜레이) const handleFileUpload = (file) => { setPreviewImage(URL.createObjectURL(file)); setIsProcessing(true); setShowResult(false); // 1.5초 후 AI 분석 완료 팝업 띄우기 setTimeout(() => { setIsProcessing(false); setShowResult(true); }, 1500); }; return (
{/* 1. 상단 헤더 & 레벨 바 */}

포켓물고기 🎣

Lv.10 전설의 강태공
{/* 경험치 바 UI */}

다음 레벨까지 250 XP

{/* 2. 중앙 업로드 영역 */}
document.getElementById('file-upload').click()} > {previewImage ? (
업로드된 물고기 {isProcessing && (
AI가 어종을 분석 중입니다...
)}
) : (

여기를 눌러 사진 올리기

또는 사진을 드래그해서 놓아주세요

)}
{/* 3. 결과 팝업창 (Slide-up 애니메이션) */}

🎉 도감 등록 완료!

어종 감성돔 S급 대물
크기 48cm
방생 여부 포획 가능 🟢
); }