38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
| // File: frontend/app/(protected)/admin/_components/confirm-delete-dialog.jsx
 | |
| import {
 | |
|   AlertDialog,
 | |
|   AlertDialogAction,
 | |
|   AlertDialogCancel,
 | |
|   AlertDialogContent,
 | |
|   AlertDialogDescription,
 | |
|   AlertDialogFooter,
 | |
|   AlertDialogHeader,
 | |
|   AlertDialogTitle,
 | |
| } from "@/components/ui/alert-dialog"
 | |
| import { Button } from "@/components/ui/button"
 | |
| 
 | |
| export function ConfirmDeleteDialog({
 | |
|   isOpen,
 | |
|   setIsOpen,
 | |
|   title,
 | |
|   description,
 | |
|   onConfirm,
 | |
|   isLoading,
 | |
| }) {
 | |
|   return (
 | |
|     <AlertDialog open={isOpen} onOpenChange={setIsOpen}>
 | |
|       <AlertDialogContent>
 | |
|         <AlertDialogHeader>
 | |
|           <AlertDialogTitle>{title}</AlertDialogTitle>
 | |
|           <AlertDialogDescription>{description}</AlertDialogDescription>
 | |
|         </AlertDialogHeader>
 | |
|         <AlertDialogFooter>
 | |
|           <AlertDialogCancel disabled={isLoading}>Cancel</AlertDialogCancel>
 | |
|           <AlertDialogAction onClick={onConfirm} disabled={isLoading} className="bg-red-600 hover:bg-red-700">
 | |
|             {isLoading ? 'Processing...' : 'Confirm'}
 | |
|           </AlertDialogAction>
 | |
|         </AlertDialogFooter>
 | |
|       </AlertDialogContent>
 | |
|     </AlertDialog>
 | |
|   );
 | |
| } |