import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, } from "@/components/ui/alert-dialog"; import { Service } from "@/types/service.types"; import { useTheme } from "@/contexts/ThemeContext"; import { Loader2 } from "lucide-react"; interface ServiceDeleteDialogProps { isOpen: boolean; onOpenChange: (open: boolean) => void; selectedService: Service | null; onConfirmDelete: () => Promise; isDeleting?: boolean; } export const ServiceDeleteDialog = ({ isOpen, onOpenChange, selectedService, onConfirmDelete, isDeleting = false, }: ServiceDeleteDialogProps) => { const { theme } = useTheme(); const handleConfirm = async () => { if (!isDeleting) { await onConfirmDelete(); } }; return ( Are you sure you want to delete this service? This action cannot be undone. This will permanently delete{' '} {selectedService?.name} {' '} and all of its uptime records. Cancel {isDeleting ? ( <> Deleting... ) : ( 'Delete' )} ); };