PageSourceSearch

https://solidguide.web.app/chunk-ALSWMOLV.js

js solidguide.web.app collected 2026-10-03 12:36:20 UTC 2,821 bytes, 1 lines download raw bytes

1import{a as C,b as x,c as S}from"./chunk-S5X2PXHR.js";import{a as E}from"./chunk-WDNJHZ6H.js";import{a as M}from"./chunk-VKQBPN3F.js";import{c as k,e as D,h as F,l as f,m as L}from"./chunk-I2VXFDLW.js";import{Ea as r,Ia as p,Ja as u,Lb as a,Nb as _,Ra as h,X as s,db as b,eb as y,jb as d,kb as t,la as c,lb as o,mb as g,vb as m,xb as w}from"./chunk-2B6X3O7I.js";function T(l,e){if(l&1&&(t(0,"div",8),a(1),o()),l&2){let n=w();r(),_(" ",n.loginErrorMessage," ")}}var P=class l{model=c({username:"",password:""});f=k(this.model,e=>{f(e.username,{message:"Email is required."}),F(e.username,{message:"A valid email address is required."}),f(e.password,{message:"Password is required."})});loginError=c(!1);loginErrorMessage="";authService=s(S);dialogRef=s(E);dialogService=s(x);login(){D(this.f,async()=>{this.loginError.set(!1);try{await this.authService.loginWithEmailAndPassword(this.model().username,this.model().password),this.close()}catch(e){this.loginError.set(!0),this.loginErrorMessage=e instanceof C?e.message:"An unexpected error occurred."}})}close(){this.dialogRef.close()}forgotPassword(){this.authService.resetPassword(),this.close()}static \u0275fac=function(n){return new(n||l)};static \u0275cmp=h({type:l,selectors:[["app-login"]],decls:16,vars:6,consts:[[1,"bg-white","dark:bg-gray-800","p-8","overflow-y-auto","scrolling-touch","rounded-lg"],[1,"text-xl","my-4","font-bold","leading-tight","tracking-tight","md:text-2xl"],["autocomplete","off","novalidate","",1,"space-y-4",3,"submit"],["label","Email",3,"formField","kind"],["label","Password",3,"formField","kind"],[1,"text-sm","underline","text-pure-blue-500","text-right","cursor-pointer","mt-1",3,"click"],[1,"space-y-4"],["type","submit",1,"w-full","bg-pure-blue-500","hover:bg-pure-blue-700","text-white","font-bold","py-2","rounded-lg","focus:outline-hidden","cursor-pointer",3,"disabled"],[1,"mt-4","text-red-500","text-center"],["type","button",1,"w-full","bg-red-500","hover:bg-red-700","text-white","font-bold","py-2","rounded-lg","focus:outline-hidden","focus:ring","focus:ring-red-300","cursor-pointer",3,"click"]],template:function(n,i){n&1&&(t(0,"div",0)(1,"h2",1),a(2," Sign in to your account "),o(),t(3,"form",2),m("submit",function(A){return i.login(),A.preventDefault()}),g(4,"app-input-signal",3),p(),t(5,"div"),g(6,"app-input-signal",4),p(),t(7,"div",5),m("click",function(){return i.forgotPassword()}),a(8,"Forgot password?"),o()(),t(9,"div",6)(10,"div")(11,"button",7),a(12,"Login"),o(),b(13,T,2,1,"div",8),o(),t(14,"button",9),m("click",function(){return i.close()}),a(15,"Cancel"),o()()()()),n&2&&(r(4),d("formField",i.f.username)("kind","email"),u(),r(2),d("formField",i.f.password)("kind","password"),u(),r(5),d("disabled",i.f().invalid()),r(2),y(i.loginError()?13:-1))},dependencies:[L,M],encapsulation:2})};export{P as a};

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.