"use client"; import React from "react"; import { Stack, Typography, Button, Alert } from "@mui/material"; import Modal from "@/app/components/Modal/Modal"; import Spinner from "@/app/components/Spinner/Spinner"; import { IDeleteModalProps } from "./types"; const DeleteModal: React.FC = ({ open, onClose, onConfirm, resource, resourceType = "item", isLoading = false, error = null, }) => { const handleConfirm = async () => { if (!resource?.id) return; await Promise.resolve(onConfirm(resource.id)); }; const handleClose = () => { if (!isLoading) { onClose(); } }; const resourceLabel = resource?.label || `this ${resourceType}`; const title = `Delete ${resourceType.charAt(0).toUpperCase() + resourceType.slice(1)}`; return ( Are you sure you want to delete {resourceLabel}? This action cannot be undone. {error && ( {error} )} ); }; export default DeleteModal;