import { useFlashKey } from '@/util/useFlash' import { useState } from 'react' import { useNavigate } from 'react-router-dom' import deleteUser from '@/api/admin/users/deleteUser' import useUserSWR from '@/api/admin/users/useUserSWR' import Button from '@/components/elements/Button' import FlashMessageRender from '@/components/elements/FlashMessageRenderer' import FormCard from '@/components/elements/FormCard' import MessageBox from '@/components/elements/MessageBox' const DeleteUserContainer = () => { const { data: user } = useUserSWR() const [loading, setLoading] = useState(false) const { clearFlashes, clearAndAddHttpError } = useFlashKey( 'admin:user:settings:delete' ) const navigate = useNavigate() const handleDelete = async () => { clearFlashes() setLoading(true) try { await deleteUser(user!.id) navigate('/admin/users') } catch (e) { clearAndAddHttpError(e as Error) } setLoading(false) } return ( Delete User

The user and its associated data will be deleted

{user.serversCount > 0 ? ( This user cannot be deleted with servers still associated with it. ) : null}
) } export default DeleteUserContainer