PageSourceSearch

https://snowbolt.ai/chunk-VLX7YQV3.js

js snowbolt.ai collected 2026-10-05 15:07:27 UTC 6,276 bytes, 1 lines download raw bytes

1import{a as ee,b as te}from"./chunk-LTSQNGW4.js";import{b as K,c as Q}from"./chunk-GZXWBLDX.js";import{b as B,g as W,h as q,i as D,j,k as H,m as G,o as U,q as J}from"./chunk-SYMMHUDK.js";import{a as V,b as z,d as I,h as L,i as T}from"./chunk-OJN5SAVN.js";import{a as X,b as Y,d as Z,e as $}from"./chunk-AGXY5RHB.js";import"./chunk-AAP46BYF.js";import{i as E,m as O,n as R,va as F,wa as N,ya as A}from"./chunk-FHAXE5UL.js";import{Eb as t,Fb as n,Gb as v,Kb as y,Nb as x,Pb as m,Zb as o,_a as a,_b as w,bc as C,cc as M,dc as b,fc as k,ga as f,jb as c,ka as P,qb as _,sa as d,ta as p,tb as S,ub as g,zb as h}from"./chunk-4LN5X2PU.js";import"./chunk-2WH2EVR6.js";function ne(i,u){i&1&&(t(0,"div",7)(1,"mat-icon"),o(2,"check_circle"),n(),t(3,"div")(4,"strong"),o(5,"Mot de passe mis \xE0 jour"),n(),t(6,"p"),o(7," Vous pouvez maintenant vous connecter avec votre nouveau mot de passe. "),n()()(),t(8,"a",8),o(9," Aller \xE0 la connexion "),n())}function ie(i,u){if(i&1&&(t(0,"p",14),o(1),n()),i&2){let e=m(2);a(),w(e.error())}}function oe(i,u){i&1&&(v(0,"mat-spinner",16),t(1,"span"),o(2,"Enregistrement\u2026"),n())}function re(i,u){i&1&&(t(0,"span"),o(1,"R\xE9initialiser"),n())}function ae(i,u){if(i&1){let e=y();t(0,"form",9),x("ngSubmit",function(){d(e);let r=m();return p(r.submit())}),t(1,"mat-form-field",10)(2,"mat-label"),o(3,"Nouveau mot de passe"),n(),t(4,"input",11),b("ngModelChange",function(r){d(e);let l=m();return M(l.password,r)||(l.password=r),p(r)}),n(),t(5,"button",12),x("click",function(){d(e);let r=m();return p(r.showPwd.set(!r.showPwd()))}),t(6,"mat-icon"),o(7),n()(),t(8,"mat-hint"),o(9,"8 caract\xE8res minimum."),n()(),t(10,"mat-form-field",10)(11,"mat-label"),o(12,"Confirmer le mot de passe"),n(),t(13,"input",13),b("ngModelChange",function(r){d(e);let l=m();return M(l.confirm,r)||(l.confirm=r),p(r)}),n()(),_(14,ie,2,1,"p",14),t(15,"button",15),_(16,oe,3,0)(17,re,2,0,"span"),n()()}if(i&2){let e=m();a(4),g("type",e.showPwd()?"text":"password"),C("ngModel",e.password),a(),S("aria-label",e.showPwd()?"Masquer":"Afficher"),a(2),w(e.showPwd()?"visibility_off":"visibility"),a(6),g("type",e.showPwd()?"text":"password"),C("ngModel",e.confirm),a(),h(e.error()?14:-1),a(),g("disabled",e.loading()||!e.canSubmit()),a(),h(e.loading()?16:17)}}var Se=(()=>{class i{constructor(){this.auth=f(A),this.route=f(E),this.router=f(O),this.password="",this.confirm="",this.loading=c(!1),this.error=c(null),this.done=c(!1),this.showPwd=c(!1),this.uid=this.route.snapshot.paramMap.get("uid")||"",this.token=this.route.snapshot.paramMap.get("token")||""}canSubmit(){return this.password.length>=8&&this.password===this.confirm&&this.uid&&this.token}submit(){if(!this.canSubmit()){this.password!==this.confirm?this.error.set("Les mots de passe ne correspondent pas."):this.password.length<8&&this.error.set("Le mot de passe doit contenir au moins 8 caract\xE8res.");return}this.error.set(null),this.loading.set(!0),this.auth.confirmPasswordReset(this.uid,this.token,this.password).subscribe({next:()=>{this.loading.set(!1),this.done.set(!0)},error:e=>{this.loading.set(!1),this.error.set(e?.error?.detail||"Lien invalide ou expir\xE9. Veuillez recommencer la proc\xE9dure.")}})}static{this.\u0275fac=function(s){return new(s||i)}}static{this.\u0275cmp=P({type:i,selectors:[["app-reset-password"]],standalone:!0,features:[k],decls:12,vars:1,consts:[[1,"auth"],[1,"auth__panel"],["routerLink","/login",1,"brand"],[1,"brand__name"],[1,"auth__head"],[1,"muted"],["novalidate","",1,"auth__form"],["role","status",1,"ok"],["mat-flat-button","","color","primary","routerLink","/login",1,"back"],["novalidate","",1,"auth__form",3,"ngSubmit"],["appearance","outline"],["matInput","","name","password","autocomplete","new-password","required","","minlength","8","autofocus","",3,"ngModelChange","type","ngModel"],["matSuffix","","mat-icon-button","","type","button",3,"click"],["matInput","","name","confirm","autocomplete","new-password","required","",3,"ngModelChange","type","ngModel"],["role","alert",1,"error"],["mat-flat-button","","color","primary","type","submit",1,"submit",3,"disabled"],["diameter","16"]],template:function(s,r){s&1&&(t(0,"div",0)(1,"div",1)(2,"a",2)(3,"span",3),o(4,"Snowbolt"),n()(),t(5,"div",4)(6,"h1"),o(7,"Nouveau mot de passe"),n(),t(8,"p",5),o(9," Choisissez un nouveau mot de passe pour votre compte. "),n()(),_(10,ne,10,0)(11,ae,18,9,"form",6),n()()),s&2&&(a(10),h(r.done()?10:11))},dependencies:[J,H,B,W,q,G,U,j,D,R,$,Y,X,Z,T,L,V,z,I,N,F,Q,K,te,ee],styles:[".auth[_ngcontent-%COMP%]{min-height:100vh;display:grid;place-items:center;background:#f7f7fb;padding:2.4rem}.auth__panel[_ngcontent-%COMP%]{width:min(48rem,100%);background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 4px 12px #0f172a14,0 2px 4px #0f172a0a;padding:4rem 3.2rem;display:flex;flex-direction:column;gap:2.4rem}.brand__name[_ngcontent-%COMP%]{font-size:2rem;font-weight:600;color:#0f172a}.auth__head[_ngcontent-%COMP%]   h1[_ngcontent-%COMP%]{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:600;margin:0;line-height:1.15;color:#0f172a;letter-spacing:-.01em;font-size:3rem;margin:1.2rem 0 .8rem}@media (min-width: 768px){.auth__head[_ngcontent-%COMP%]   h1[_ngcontent-%COMP%]{font-size:3.6rem}}.auth__head[_ngcontent-%COMP%]   .muted[_ngcontent-%COMP%]{color:#64748b;font-size:1.6rem}.auth__form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.2rem}.submit[_ngcontent-%COMP%]{margin-top:.8rem;gap:.8rem}.back[_ngcontent-%COMP%]{align-self:flex-start}.error[_ngcontent-%COMP%]{font-size:1.3rem;color:#b91c1c;background:#fef2f2;padding:1.2rem 1.6rem;border:1px solid rgba(239,68,68,.25);border-radius:10px}.ok[_ngcontent-%COMP%]{display:flex;gap:1.2rem;align-items:flex-start;padding:1.6rem;background:#ecfdf5;border:1px solid rgba(16,185,129,.3);color:#047857;border-radius:10px}.ok[_ngcontent-%COMP%]   mat-icon[_ngcontent-%COMP%]{flex-shrink:0;color:#047857;font-size:24px;width:24px;height:24px;line-height:24px;overflow:visible}.ok[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%]{display:block;font-size:1.6rem;font-weight:600}.ok[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{margin:.4rem 0 0;font-size:1.5rem;color:#475569}"]})}}return i})();export{Se as ResetPasswordComponent};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.