Added the ability to delete a user

This commit is contained in:
Tiago Ribeiro
2023-09-26 13:51:41 +01:00
parent 733138f2be
commit 64e7fcbcc7

View File

@@ -16,6 +16,20 @@ const columnHelper = createColumnHelper<User>();
export default function UserList({user}: {user: User}) {
const {users, reload} = useUsers();
const deleteAccount = (user: User) => {
if (!confirm(`Are you sure you want to delete ${user.name}'s account?`)) return;
axios
.delete<{ok: boolean}>(`/api/user?id=${user.id}`)
.then(() => {
toast.success("User deleted successfully!");
reload();
})
.catch(() => {
toast.error("Something went wrong!", {toastId: "delete-error"});
});
};
const updateAccountType = (user: User, type: Type) => {
if (!confirm(`Are you sure you want to update ${user.name}'s account from ${capitalize(user.type)} to ${capitalize(type)}?`)) return;
@@ -128,7 +142,7 @@ export default function UserList({user}: {user: User}) {
</Popover>
)}
{PERMISSIONS.deleteUser[row.original.type].includes(user.type) && (
<div data-tip="Delete" className="cursor-pointer tooltip">
<div data-tip="Delete" className="cursor-pointer tooltip" onClick={() => deleteAccount(row.original)}>
<BsTrash className="hover:text-mti-purple-light transition ease-in-out duration-300" />
</div>
)}