import { useState } from "react"; import { View, Text } from "react-native"; import { Dialog, IconButton } from "react-native-paper"; import { DialogContainer } from "@/components/ui/DialogContainer"; import { User } from "@/store/models/User.model"; import { Button } from "@/components/ui/Button"; import { LoadingSpinner } from "@/components/ui/LoadingSpinner"; interface DeleteUserModalProps { visible: boolean; user: User | null; onDismiss: () => void; onDelete: (user: User) => void; isLoading?: boolean; } export const DeleteUserModal = ({ visible, user, onDismiss, onDelete, isLoading = false, }: DeleteUserModalProps) => { const [error, setError] = useState(null); if (!user) return null; const handleDelete = () => { try { setError(null); onDelete(user); } catch (err) { setError("Failed to delete user. Please try again."); console.error("Error in UserDeleteModal:", err); } }; return ( Delete User Are you sure you want to delete {user.firstName} {user.lastName}? {error && {error}} {isLoading && ( )} ); };