veza/apps/web/dist_verification/assets/ResetPasswordPage-DNSUNR25.js
senke 670282989b chore(refactor/sumi-migration): commit pending changes — tests, stream server, dist_verification
- apps/web: test updates (Vitest/setup), playbackAnalyticsService, TrackGrid, serviceErrorHandler
- veza-common: logging, metrics, traits, validation, random
- veza-stream-server: audio pipeline, codecs, cache, monitoring, routes
- apps/web/dist_verification: refresh build assets (content-hashed filenames)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-13 19:39:18 +01:00

1 line
4.1 KiB
JavaScript

import{j as s,a as n}from"./vendor-react-C9dYU-TK.js";import{u as y,a as L}from"./vendor-router-Dr0ZB7zf.js";import{A as m,a as N}from"./AuthLayout-JL7y5GL_.js";import{A as h}from"./AuthInput-b0K9khMl.js";import{h as k}from"./index-BMBS6scK.js";import{P as E}from"./PasswordStrengthIndicator-BcWVshm9.js";import{u as R}from"./usePasswordReset-PwlpCC1O.js";import"./vendor-CjLUfV8Y.js";import"./vendor-security-DsrNJhpn.js";import"./vendor-icons-BSV6HBy1.js";import"./vendor-tanstack-C4XaEYj2.js";import"./vendor-http-CctT3C58.js";import"./vendor-utils-D0JLFg89.js";import"./vendor-motion-CbAtAbUE.js";import"./vendor-i18n-PN7w4axr.js";function C({message:i,className:l,id:c}){return i?s.jsx("div",{id:c,children:s.jsx(k,{error:i,variant:"inline",severity:"error",className:l,context:{action:"authenticating",resource:"auth"},dismissible:!1})}):null}function K(){const[i]=y(),l=L(),{handleReset:c,loading:g,error:p,success:u}=R(),[f,j]=n.useState(null),[r,v]=n.useState({token:"",password:"",confirmPassword:""}),[o,d]=n.useState({});n.useEffect(()=>{const e=i.get("token");e&&(j(e),v(t=>({...t,token:e})))},[i]),n.useEffect(()=>{if(u){const e=setTimeout(()=>{l("/login",{replace:!0})},3e3);return()=>clearTimeout(e)}},[u,l]);const b=()=>{const e={};return r.password?r.password.length<8&&(e.password="Le mot de passe doit contenir au moins 8 caractères"):e.password="Mot de passe requis",r.confirmPassword?r.password!==r.confirmPassword&&(e.confirmPassword="Les mots de passe ne correspondent pas"):e.confirmPassword="Confirmation du mot de passe requise",d(e),Object.keys(e).length===0},x=(e,t)=>{v({...r,[e]:t}),o[e]&&d({...o,[e]:void 0})},w=e=>{const t=r[e];let a;e==="password"?t?t.length<8&&(a="Le mot de passe doit contenir au moins 8 caractères"):a="Mot de passe requis":e==="confirmPassword"&&(t?r.password!==t&&(a="Les mots de passe ne correspondent pas"):a="Confirmation du mot de passe requise"),d(a?{...o,[e]:a}:{...o,[e]:void 0})},P=async e=>{e.preventDefault(),f&&b()&&await c(r)};return f?u?s.jsx(m,{title:"Mot de passe réinitialisé",subtitle:"Votre mot de passe a été modifié avec succès",footerLinks:[{label:"Retour à la connexion",to:"/login"}],children:s.jsx("div",{className:"text-center space-y-4",role:"status","aria-live":"polite",children:s.jsxs("div",{className:"bg-success/10 border border-success text-success px-4 py-4 rounded",role:"alert",children:[s.jsx("p",{className:"font-medium",children:"Succès !"}),s.jsx("p",{className:"text-sm mt-1",children:"Votre mot de passe a été réinitialisé avec succès. Vous allez être redirigé vers la page de connexion..."})]})})}):s.jsx(m,{title:"Réinitialiser le mot de passe",subtitle:"Entrez votre nouveau mot de passe",footerLinks:[{label:"Retour à la connexion",to:"/login"}],children:s.jsxs("form",{onSubmit:P,className:"space-y-4","aria-label":"Formulaire de réinitialisation de mot de passe",children:[p&&s.jsx(C,{message:p.message}),s.jsx(h,{type:"password",label:"Nouveau mot de passe",value:r.password,onChange:e=>x("password",e.target.value),onBlur:()=>w("password"),error:o.password,required:!0,autoComplete:"new-password"}),s.jsx("div",{"aria-live":"polite","aria-atomic":"true",children:s.jsx(E,{password:r.password})}),s.jsx(h,{type:"password",label:"Confirmer le mot de passe",value:r.confirmPassword,onChange:e=>x("confirmPassword",e.target.value),onBlur:()=>w("confirmPassword"),error:o.confirmPassword,required:!0,autoComplete:"new-password"}),s.jsx(N,{type:"submit",loading:g,children:"Réinitialiser le mot de passe"})]})}):s.jsx(m,{title:"Lien de réinitialisation invalide",subtitle:"Le lien de réinitialisation est invalide ou a expiré",footerLinks:[{label:"Demander un nouveau lien",to:"/forgot-password"},{label:"Retour à la connexion",to:"/login"}],children:s.jsx("div",{className:"text-center space-y-4",role:"alert","aria-live":"assertive",children:s.jsxs("div",{className:"bg-destructive/10 border border-destructive text-destructive px-4 py-4 rounded",children:[s.jsx("p",{className:"font-medium",children:"Lien invalide"}),s.jsx("p",{className:"text-sm mt-1",children:"Le lien de réinitialisation est invalide ou a expiré. Veuillez demander un nouveau lien."})]})})})}export{K as ResetPasswordPage,K as default};