veza/apps/web/dist_verification/assets/ForgotPasswordPage-wIZ3bMJo.js
2026-02-07 20:36:48 +01:00

1 line
2.4 KiB
JavaScript

import{a as n,j as t}from"./vendor-react-YMhRUmcb.js";import{L as h}from"./vendor-router-DX94Iu-2.js";import{A as b}from"./AuthLayout-CeiHDQMs.js";import{A as g}from"./AuthInput-CLUfktvv.js";import{A as j}from"./AuthButton-C1maCyAI.js";import{u as y}from"./usePasswordReset-BHItX07X.js";import"./vendor-fFnFILYR.js";import"./index-D2uzyr9g.js";import"./vendor-tanstack-CoFNL2zy.js";import"./vendor-utils-4BWoYre8.js";import"./vendor-icons-DINCNwpk.js";function D(){const{handleRequestReset:m,loading:u,error:l,success:c}=y(),[i,d]=n.useState({email:""}),[r,s]=n.useState({}),p=()=>{const e={};return i.email?/\S+@\S+\.\S+/.test(i.email)||(e.email="Email invalide"):e.email="Email requis",s(e),Object.keys(e).length===0},v=(e,a)=>{d({...i,[e]:a}),r[e]&&s({...r,[e]:void 0})},x=e=>{const a=i[e];let o;a?/\S+@\S+\.\S+/.test(a)||(o="Email invalide"):o="Email requis",s(o?{...r,[e]:o}:{...r,[e]:void 0})},f=async e=>{e.preventDefault(),p()&&await m(i)};return t.jsx(b,{title:"Mot de passe oublié",subtitle:"Entrez votre email pour recevoir un lien de réinitialisation",footerLinks:[{label:"Retour à la connexion",to:"/login"}],children:c?t.jsxs("div",{className:"text-center space-y-4",role:"status","aria-live":"polite",children:[t.jsxs("div",{className:"bg-success/10 border border-success text-success px-4 py-4 rounded",role:"alert","aria-live":"assertive",children:[t.jsx("p",{className:"font-medium",children:"Email envoyé !"}),t.jsxs("p",{className:"text-sm mt-1",children:["Un lien de réinitialisation a été envoyé à ",i.email]})]}),t.jsx("p",{className:"text-sm text-muted-foreground",children:"Veuillez vérifier votre boîte mail et cliquer sur le lien pour réinitialiser votre mot de passe."}),t.jsx(h,{to:"/login",className:"text-kodo-cyan hover:underline text-sm block focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 rounded",children:"Retour à la connexion"})]}):t.jsxs("form",{onSubmit:f,className:"space-y-4","aria-label":"Formulaire de réinitialisation de mot de passe",children:[l&&t.jsx("div",{className:"bg-destructive/10 border border-destructive text-destructive px-4 py-4 rounded",role:"alert","aria-live":"assertive",children:l.message}),t.jsx(g,{type:"email",label:"Email",value:i.email,onChange:e=>v("email",e.target.value),onBlur:()=>x("email"),error:r.email,required:!0,autoComplete:"email"}),t.jsx(j,{type:"submit",loading:u,children:"Envoyer le lien de réinitialisation"})]})})}export{D as ForgotPasswordPage,D as default};