import { Alert, Box, Button, CircularProgress, Grid, TextField, Typography, } from "@mui/material"; import React from "react"; import { ServerApi } from "../../api/ServerApi"; import { Link } from "react-router-dom"; import { APIClient } from "../../api/ApiClient"; import { AuthApi } from "../../api/AuthApi"; export function PasswordForgottenRoute(): React.ReactElement { const [loading, setLoading] = React.useState(false); const [error, setError] = React.useState(null); const [success, setSuccess] = React.useState(null); const handleSubmit = async (event: React.FormEvent) => { event.preventDefault(); const data = new FormData(event.currentTarget); try { setError(null); setSuccess(null); setLoading(true); await AuthApi.RequestResetPassword(data.get("email")!.toString()); setSuccess( `Si l'adresse mail spécifiée est valide, alors la demande de réinitalisation de mot de passe a été traitée avec succès. Un courriel provenant de ${ServerApi.Config.mail} devrait alors être arrivé dans votre boîte mail.` ); } catch (e) { console.error(e); setError("Echec de la demande de réinitialisation de mot de passe!"); } setLoading(false); }; if (loading) return ( <> ); return ( <> {error && ( {error} )} {success && ( {success} )} Mot de passe oublié Retour au formulaire de connexion {" "} ); }