import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from "@/components/ui/dialog"; import { Button } from "@/components/ui/button"; import { User, USER_STATUS_LABELS } from "@/types/user"; interface UserStatusConfirmDialogProps { user: User | null; newStatus: string; isOpen: boolean; onConfirm: () => void; onCancel: () => void; } /** * 사용자 상태 변경 확인 모달 */ export function UserStatusConfirmDialog({ user, newStatus, isOpen, onConfirm, onCancel, }: UserStatusConfirmDialogProps) { if (!user) return null; // 현재 상태와 새로운 상태의 텍스트 및 색상 const currentStatusText = USER_STATUS_LABELS[user.status as keyof typeof USER_STATUS_LABELS] || user.status; const newStatusText = USER_STATUS_LABELS[newStatus as keyof typeof USER_STATUS_LABELS] || newStatus; const currentStatusColor = user.status === "active" ? "text-primary" : "text-muted-foreground"; const newStatusColor = newStatus === "active" ? "text-primary" : "text-muted-foreground"; return ( !open && onCancel()}> 사용자 상태 변경 사용자의 상태를 변경하시겠습니까?
사용자: {user.userName} ({user.userId})
상태 변경:
{currentStatusText} {newStatusText}
); }