diff --git a/frontend/src/pages/Admin.jsx b/frontend/src/pages/Admin.jsx index ed16c66..a07b480 100644 --- a/frontend/src/pages/Admin.jsx +++ b/frontend/src/pages/Admin.jsx @@ -132,6 +132,7 @@ export default function Admin({ isMobile = false }) { { id: 2, version: '1.1.0', name: '테스트 서버 모드팩', date: '2024-12-15', size: '12.0 MB' }, { id: 3, version: '1.0.0', name: '테스트 서버 모드팩', date: '2024-12-01', size: '8.0 MB' }, ]); + const [modpackDeleteTarget, setModpackDeleteTarget] = useState(null); // 삭제 확인 다이얼로그용 // 권한 확인 useEffect(() => { @@ -1614,12 +1615,7 @@ export default function Admin({ isMobile = false }) { { - if (confirm(`${pack.name} v${pack.version}을(를) 삭제하시겠습니까?`)) { - setModpacks(prev => prev.filter(p => p.id !== pack.id)); - setToast('모드팩이 삭제되었습니다.'); - } - }} + onClick={() => setModpackDeleteTarget(pack)} className="p-1.5 text-zinc-400 hover:text-red-400 transition-colors" > @@ -1659,12 +1655,7 @@ export default function Admin({ isMobile = false }) { { - if (confirm(`${pack.name} v${pack.version}을(를) 삭제하시겠습니까?`)) { - setModpacks(prev => prev.filter(p => p.id !== pack.id)); - setToast('모드팩이 삭제되었습니다.'); - } - }} + onClick={() => setModpackDeleteTarget(pack)} className="p-2 text-zinc-400 hover:text-red-400 transition-colors" title="삭제" > @@ -2012,6 +2003,55 @@ export default function Admin({ isMobile = false }) { )} + + {/* 모드팩 삭제 확인 다이얼로그 */} + + {modpackDeleteTarget && ( + setModpackDeleteTarget(null)} + > + e.stopPropagation()} + > + + + + + 모드팩 삭제 + + {modpackDeleteTarget.name} v{modpackDeleteTarget.version}을(를) 삭제하시겠습니까? + + + + setModpackDeleteTarget(null)} + className="flex-1 px-4 py-2.5 bg-zinc-800 hover:bg-zinc-700 text-white rounded-xl font-medium transition-colors" + > + 취소 + + { + setModpacks(prev => prev.filter(p => p.id !== modpackDeleteTarget.id)); + setToast('모드팩이 삭제되었습니다.'); + setModpackDeleteTarget(null); + }} + className="flex-1 px-4 py-2.5 bg-red-500 hover:bg-red-600 text-white rounded-xl font-medium transition-colors" + > + 삭제 + + + + + )} + ); }
+ {modpackDeleteTarget.name} v{modpackDeleteTarget.version}을(를) 삭제하시겠습니까? +