frontend_nyla/src/components/Mitglieder/MitgliederItemDelete/MitgliederItemDelete.tsx
2025-05-19 14:07:43 +02:00

37 lines
No EOL
1.2 KiB
TypeScript

import { FaTrash } from "react-icons/fa";
import styles from "./MitgliederItemDelete.module.css";
import { useState } from "react";
import DeletePopUp from "./DeletePopUp";
import { User } from "../../../hooks/useUsers";
type MitgliederItemDeleteProps = {
user: User;
refetchUsers: () => Promise<void>;
isDisabled?: boolean;
};
const MitgliederItemDelete = ({ user, refetchUsers, isDisabled = false }: MitgliederItemDeleteProps) => {
const [deleteWindow, setDeleteWindow] = useState(false);
return (
<div className={styles.deleteBtnContainer}>
<button
onClick={() => !isDisabled && setDeleteWindow(true)}
className={`${styles.deleteBtn} ${isDisabled ? styles.disabled : ''}`}
disabled={isDisabled}
title={isDisabled ? "Cannot delete the only remaining user" : "Delete user"}>
<FaTrash />
</button>
{deleteWindow && (
<DeletePopUp
user={user}
closePopup={() => setDeleteWindow(false)}
refetchUsers={refetchUsers}
/>
)}
</div>
);
};
export default MitgliederItemDelete;