1import{d as e,_ as a,b as s,B as l,Q as r,M as o,t as u,I as t,N as n,L as v,K as d,y as c,z as i,A as m,F as w,O as p,r as f}from"./vendor-vue-C2bVq467.js";import{w as h,x as g,y as x,n as y,h as b,s as _,z as k,o as P}from"./vendor-ionic-DCfJUywR.js";import{f as V,a as j,B as A,A as C,cj as I,s as $,ab as z,_ as L}from"./index-C8PG4kWr.js";import"./vendor-ui-CbgI8NhS.js";import"./vendor-misc-B37Nxpbl.js";import"./vendor-i18n-z_f_yr-S.js";import"./vendor-utils-CLI4rNKq.js";import"./vendor-heavy-C201fLCC.js";const R={class:"action-view"},M={key:0,class:"w-100%"},N={class:"w-100%"},U={class:"password-strength flex items-center"},q={class:"strength-bars flex-1"},B={class:"w-100%"},Z={class:"action-view-footer"},F={key:0,class:"ani-spinner"},K=L(e({__name:"LoginPasswordView",setup(e){const L=a(),{t:K}=V("securityView.loginPassword"),O=j(),Q=f({current:"password",new:"password",confirm:"password"}),S=e=>{Q.value[e]="password"===Q.value[e]?"text":"password"},T=f(""),D=f(!1),E=f(""),G=f(""),H=f(!1),J=f(""),W=f(0),X=f(""),Y=f(!1),ee=f("");const ae=()=>{var e;return!(null==(e=O.userInfo)?void 0:e.hasLoginPwd)||(T.value?T.value.length<6?(D.value=!0,E.value=K("passwordRule"),!1):(D.value=!1,E.value="",!0):(D.value=!0,E.value=K("currentPasswordRequired"),!1))},se=()=>{var e;return G.value?/^(?![a-zA-Z]+$)(?![0-9]+$)(?![^a-zA-Z0-9]+$).{6,16}$/.test(G.value)?G.value===(null==(e=O.userInfo)?void 0:e.account)?(H.value=!0,J.value=K("passwordNotSameAsAccount"),!1):(H.value=!1,J.value="",Y.value&&G.value===X.value&&(Y.value=!1,ee.value=""),!0):(H.value=!0,J.value=K("passwordRule"),!1):(H.value=!0,J.value=K("newPasswordRequired"),!1)},le=()=>X.value?G.value!==X.value?(Y.value=!0,ee.value=K("passwordNotMatch"),!1):(Y.value=!1,ee.value="",!0):(Y.value=!0,ee.value=K("confirmPasswordRequired"),!1),re=f(!1),oe=async()=>{const e=ae(),a=se(),s=le();if(e&&a&&s)try{re.value=!0,await I({oldPassword:T.value,newPassword:X.value}),$(K("success")),O.loadUserInfo(),setTimeout(()=>{z(L)},500)}catch(l){$(l.message||"")}finally{re.value=!1}};return s(()=>T.value,()=>{ae()}),s(()=>G.value,()=>{!function(e){let a=0;e?(e.length>=6&&a++,/\d/.test(e)&&a++,/[a-z]/.test(e)&&a++,/[A-Z]/.test(e)&&a++,/[!@#$%^&*(),.?":{}|<>]/.test(e)&&a++,W.value=Math.min(a,4)):W.value=0}(G.value),se()}),s(()=>X.value,()=>{le()}),(e,a)=>(l(),r(t(P),{class:"ak-page-view"},{default:o(()=>[u(t(h),{class:"ion-no-border"},{default:o(()=>[u(t(g),{mode:"ios"},{default:o(()=>[u(A),u(t(x),null,{default:o(()=>[n(v(t(K)("label")),1)]),_:1})]),_:1})]),_:1}),u(t(y),null,{default:o(()=>{var e;return[d("div",R,[(null==(e=t(O).userInfo)?void 0:e.hasLoginPwd)?(l(),c("div",M,[u(t(C),{modelValue:T.value,"onUpdate:modelValue":a[1]||(a[1]=e=>T.value=e),type:Q.value.current,label:t(K)("currentPassword"),placeholder:t(K)("enterCurrentPassword"),"show-error":D.value,"error-message":E.value,maxlength:16},{prefix:o(()=>[u(t(b),{src:"/static/svg/lock-closed.svg",class:"text-.975rem"})]),suffix:o(()=>[u(t(b),{name:"password"===Q.value.current?"eye-off":"eye",class:i(["text-.975rem",{"color-[var(--ak-primary-color)]!":"text"===Q.value.current}]),onClick:a[0]||(a[0]=e=>S("current"))},null,8,["name","class"])]),_:1},8,["modelValue","type","label","placeholder","show-error","error-message"])])):m("",!0),d("div",N,[u(t(C),{modelValue:G.value,"onUpdate:modelValue":a[3]||(a[3]=e=>G.value=e),type:Q.value.new,label:t(K)("newPassword"),placeholder:t(K)("enterNewPassword"),"show-error":H.value,"error-message":J.value,maxlength:16},{prefix:o(()=>[u(t(b),{src:"/static/svg/lock-closed.svg",class:"text-.975rem"})]),suffix:o(()=>[u(t(b),{name:"password"===Q.value.new?"eye-off":"eye",class:i(["text-.975rem",{"color-[var(--ak-primary-color)]!":"text"===Q.value.new}]),onClick:a[2]||(a[2]=e=>S("new"))},null,8,["name","class"])]),_:1},8,["modelValue","type","label","placeholder","show-error","error-message"])]),d("div",U,[u(t(_),{class:"strength-label"},{default:o(()=>[n(v(t(K)("strength")),1)]),_:1}),d("div",q,[(l(),c(w,null,p(4,e=>d("div",{key:e,class:i(["strength-bar w-4",{weak:W.value>=1&&1===e,fair:W.value>=2&&e<=2,good:W.value>=3&&e<=3,strong:W.value>=4&&e<=4}])},null,2)),64))])]),d("div",B,[u(t(C),{modelValue:X.value,"onUpdate:modelValue":a[5]||(a[5]=e=>X.value=e),type:Q.value.confirm,label:t(K)("confirmPassword"),placeholder:t(K)("enterConfirmPassword"),"show-error":Y.value,"error-message":ee.value,maxlength:16},{prefix:o(()=>[u(t(b),{src:"/static/svg/lock-closed.svg",class:"text-.975rem"})]),suffix:o(()=>[u(t(b),{name:"password"===Q.value.confirm?"eye-off":"eye",class:i(["text-.975rem",{"color-[var(--ak-primary-color)]!":"text"===Q.value.confirm}]),onClick:a[4]||(a[4]=e=>
1S("confirm"))},null,8,["name","class"])]),_:1},8,["modelValue","type","label","placeholder","show-error","error-message"])])])]}),_:1}),u(t(k),{style:{"box-shadow":"0 -0.03rem 0.1rem rgba(0, 0, 0, 0.1)"}},{default:o(()=>[d("div",Z,[d("div",{class:"action-view-footer-button",onClick:oe},[re.value?(l(),c("span",F,[...a[6]||(a[6]=[d("svg",{xmlns:"http://www.w3.org/2000/svg",width:".8rem",height:".8rem",viewBox:"0 0 24 24"},[d("path",{fill:"currentColor",d:"M18.364 5.636L16.95 7.05A7 7 0 1 0 19 12h2a9 9 0 1 1-2.636-6.364"})],-1)])])):m("",!0),d("span",null,v(e.$t("main.submit")),1)])])]),_:1})]),_:1}))}}),[["__scopeId","data-v-24be113b"]]);export{K as default};
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.