LoginForm-0ed6d18c.js 3.8 KB

1
  1. var f=(I,u,d)=>new Promise((l,y)=>{var S=o=>{try{p(d.next(o))}catch(m){y(m)}},x=o=>{try{p(d.throw(o))}catch(m){y(m)}},p=o=>o.done?l(o.value):Promise.resolve(o.value).then(S,x);p((d=d.apply(I,u)).next())});import{d as $,aj as q,o as O,f as w,r as D,Y as P,Z as Y,n as h,z as v,l as s,a7 as n,u as a,_ as j,E as A,$ as G,am as Z,F as H}from"./vue-8fccce23.js";import{a as J,c as Q,b as W}from"./LoginFormTitle-8902674d.js";import{a as X,f as ee,O as ae,Y as se,aq as oe,ar as te,as as E,at as re,_ as ne}from"./index.js";import{b as R}from"./uuid-31b8b5a4.js";import{s as le}from"./sysConfigApi-4f086771.js";import{aa as T,A as b,a6 as ce,a5 as U,B as ie}from"./antd-d98832c6.js";const ue=["src"],de=$({__name:"LoginForm",setup(I){const u=T.Item,d=b.Password,{t:l}=X(),{notification:y,createMessage:S}=re();ee("login");const x=ae(),{clientId:p,clientSecret:o}=se(),{getFormRules:m}=J(),z=q(),_=oe.createBase64Encryption(),c=te({prefixKey:""});O(()=>f(this,null,function*(){e.username=c.get("username")?_.decrypt(c.get("username")):"",e.password=c.get("password")?_.decrypt(c.get("password")):"",yield N()}));const K=w(),C=w(!1),M=w(!0),e=D({username:"",password:"",codeKey:R(),code:""}),g=D({loading:!1,captchaSrc:E(e.codeKey),showCaptcha:!0}),{validForm:V}=Q(K),L=w(!0);function k(){return f(this,null,function*(){e.codeKey=R(),g.captchaSrc=E(e.codeKey)})}function B(){return f(this,null,function*(){var t;const i=yield V();if(i)try{C.value=!0;const r=((t=z.query)==null?void 0:t.redirect)||"",F=yield x.login({username:i.username,password:i.password,loginType:"login",mode:"none",captchaKey:e.codeKey,captchaCode:e.code,grant_type:"",redirect:r,client_id:p,client_secret:o,captchaVerification:""});console.log("🚀 ~ file: LoginForm.vue:169 ~ handleLogin ~ userInfo:",F),F&&(M.value?(c.set("username",_.encrypt(e.username)),c.set("password",_.encrypt(e.password))):(c.set("username",""),c.set("password","")),y.success({message:l("sys.login.loginSuccessTitle"),description:`${l("sys.login.loginSuccessDesc")}: ${F.nickname}`,duration:3}))}catch(r){k(),S.error(r.message||l("sys.api.networkExceptionMsg"))}finally{C.value=!1}})}function N(){return f(this,null,function*(){const i=yield le();console.log("🚀 ~ file: LoginForm.vue:194 ~ getSystemConfig ~ res:",i),i.captchaOpen==1?g.showCaptcha=!0:g.showCaptcha=!1})}return(i,t)=>(P(),Y(H,null,[h(s(W,{class:"enter-x"},null,512),[[v,L.value]]),h(s(a(T),{class:"p-4 enter-x",model:e,rules:a(m),ref_key:"formRef",ref:K,onKeypress:Z(B,["enter"]),layout:"vertical"},{default:n(()=>[s(a(u),{name:"username",class:"enter-x",label:"用户名"},{default:n(()=>[s(a(b),{size:"large",value:e.username,"onUpdate:value":t[0]||(t[0]=r=>e.username=r),placeholder:a(l)("sys.login.userName"),class:"fix-auto-fill"},null,8,["value","placeholder"])]),_:1}),s(a(u),{name:"password",class:"enter-x",label:"密码"},{default:n(()=>[s(a(d),{size:"large",visibilityToggle:"",value:e.password,"onUpdate:value":t[1]||(t[1]=r=>e.password=r),placeholder:a(l)("sys.login.password")},null,8,["value","placeholder"])]),_:1}),h(s(a(ce),{class:"enter-x flex-items-center"},{default:n(()=>[s(a(U),{span:"16"},{default:n(()=>[s(a(u),{class:"code-input",name:"code",label:"验证码"},{default:n(()=>[s(a(b),{size:"large",visibilityToggle:"",value:e.code,"onUpdate:value":t[2]||(t[2]=r=>e.code=r),placeholder:"验证码"},null,8,["value"])]),_:1})]),_:1}),s(a(U),{span:"8",class:"login-captcha"},{default:n(()=>[h(j("img",{src:g.captchaSrc,onClick:k,alt:"captcha",class:"code-image"},null,8,ue),[[v,!0]])]),_:1})]),_:1},512),[[v,g.showCaptcha]]),s(a(u),{class:"mt-10 enter-x"},{default:n(()=>[s(a(ie),{type:"primary",size:"large",block:"",onClick:B,loading:C.value},{default:n(()=>[A(G(a(l)("sys.login.loginButton")),1)]),_:1},8,["loading"])]),_:1})]),_:1},8,["model","rules","onKeypress"]),[[v,L.value]])],64))}});const he=ne(de,[["__scopeId","data-v-91ba9925"]]);export{he as default};