veza/.build/incus/web/js/ForgotPasswordPage-C3HF-Rdc.js
senke 1ed6e7f07b state-ownership: delete unused optimisticStoreUpdates.ts file
- Deleted apps/web/src/utils/optimisticStoreUpdates.ts (unused file)
- File was unused - no imports found in codebase
- Mutations already use React Query's onMutate pattern
- No TypeScript errors after deletion
- Actions 4.4.1.2 and 4.4.1.3 complete
2026-01-15 19:26:53 +01:00

2 lines
2.4 KiB
JavaScript

import{r as n,j as r}from"./chunk-Cad8leGS.js";import{L as h}from"./index-D792PhRw.js";import{A as g,a as b}from"./chunk-BZkCXdk-.js";import{u as j,A as y}from"./chunk-BYCSW8da.js";import"./chunk-wkfC2Tom.js";import"./chunk-BoPufJSi.js";import"./chunk-VMUEamc6.js";import"./chunk-Df4po8fP.js";import"./chunk-B7sOPOlf.js";import"./chunk-B4NZlYwU.js";import"./chunk-BlDLB1ZZ.js";function D(){const{handleRequestReset:m,loading:u,error:l,success:c}=j(),[t,d]=n.useState({email:""}),[i,a]=n.useState({}),p=()=>{const e={};return t.email?/\S+@\S+\.\S+/.test(t.email)||(e.email="Email invalide"):e.email="Email requis",a(e),Object.keys(e).length===0},x=(e,s)=>{d({...t,[e]:s}),i[e]&&a({...i,[e]:void 0})},v=e=>{const s=t[e];let o;s?/\S+@\S+\.\S+/.test(s)||(o="Email invalide"):o="Email requis",a(o?{...i,[e]:o}:{...i,[e]:void 0})},f=async e=>{e.preventDefault(),p()&&await m(t)};return r.jsx(g,{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?r.jsxs("div",{className:"text-center space-y-4",role:"status","aria-live":"polite",children:[r.jsxs("div",{className:"bg-green-50 border border-green-200 text-green-700 px-4 py-3 rounded",role:"alert","aria-live":"assertive",children:[r.jsx("p",{className:"font-medium",children:"Email envoyé !"}),r.jsxs("p",{className:"text-sm mt-1",children:["Un lien de réinitialisation a été envoyé à ",t.email]})]}),r.jsx("p",{className:"text-sm text-gray-600",children:"Veuillez vérifier votre boîte mail et cliquer sur le lien pour réinitialiser votre mot de passe."}),r.jsx(h,{to:"/login",className:"text-blue-600 hover:underline text-sm block focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 rounded",children:"Retour à la connexion"})]}):r.jsxs("form",{onSubmit:f,className:"space-y-4","aria-label":"Formulaire de réinitialisation de mot de passe",children:[l&&r.jsx("div",{className:"bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded",role:"alert","aria-live":"assertive",children:l.message}),r.jsx(y,{type:"email",label:"Email",value:t.email,onChange:e=>x("email",e.target.value),onBlur:()=>v("email"),error:i.email,required:!0,autoComplete:"email"}),r.jsx(b,{type:"submit",loading:u,children:"Envoyer le lien de réinitialisation"})]})})}export{D as ForgotPasswordPage,D as default};
//# sourceMappingURL=ForgotPasswordPage-C3HF-Rdc.js.map