교육과정 삭제 팝업 완료, 레슨 틀 작업1

This commit is contained in:
2025-11-19 11:13:55 +09:00
parent c94316f8ce
commit dbac109f5b
3 changed files with 120 additions and 4 deletions

View File

@@ -11,6 +11,7 @@ export default function AdminCoursesPage() {
const [isModalOpen, setIsModalOpen] = useState(false);
const [editingCourse, setEditingCourse] = useState<Course | null>(null);
const [currentPage, setCurrentPage] = useState(1);
const [showToast, setShowToast] = useState(false);
const totalCount = useMemo(() => courses.length, [courses]);
@@ -68,6 +69,17 @@ export default function AdminCoursesPage() {
setIsModalOpen(true);
};
const handleDeleteCourse = () => {
if (editingCourse) {
setCourses(prev => prev.filter(course => course.id !== editingCourse.id));
setEditingCourse(null);
setShowToast(true);
setTimeout(() => {
setShowToast(false);
}, 3000);
}
};
return (
<div className="min-h-screen flex flex-col bg-white">
{/* 메인 레이아웃 */}
@@ -265,8 +277,26 @@ export default function AdminCoursesPage() {
open={isModalOpen}
onClose={handleModalClose}
onSave={handleSaveCourse}
onDelete={handleDeleteCourse}
editingCourse={editingCourse}
/>
{/* 삭제 완료 토스트 */}
{showToast && (
<div className="fixed right-[60px] bottom-[60px] z-50">
<div className="bg-white border border-[#dee1e6] rounded-[8px] p-4 min-w-[360px] flex gap-[10px] items-center">
<div className="relative shrink-0 w-[16.667px] h-[16.667px]">
<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="8.5" cy="8.5" r="8.5" fill="#384FBF"/>
<path d="M5.5 8.5L7.5 10.5L11.5 6.5" stroke="white" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"/>
</svg>
</div>
<p className="text-[15px] font-medium leading-[1.5] text-[#1b2027] text-nowrap">
.
</p>
</div>
</div>
)}
</div>
);
}