1import{a,u as e,i as s,A as l,_ as t,Q as i,U as u,af as n,N as o,M as r,c}from"./index-DAe51Ink.js";import{d as v,l as d,s as m,v as p,r as f,U as h,a as y,e as w,y as g,a5 as k,c as b,i as _,q as x,m as T,k as P,p as S,w as A,al as D,P as I,o as B,ap as z,t as C,z as V,aK as U,E as Z,B as j,F as q,aJ as E,_ as G}from"./vendor-CSbCDvZF.js";import{_ as F}from"./common-back-title.vue_vue_type_script_setup_true_lang-Cxb8g0nD.js";import{u as M,_ as N}from"./useUnsavedChanges-B1WbT7iZ.js";const R={class:"py-4 lg:max-w-[37.5rem] lg:mx-auto"},$={class:"input-wrap mt-[1rem]"},H={class:"email-input mb-[0.5rem]"},J={class:"input-container relative"},K={key:0,class:"error text-[0.75rem] font-[SourceSans]"},L={class:"mt-[1rem]"},Q={class:"input-container relative"},O={class:"send-button absolute right-[0.63rem] top-[50%] translate-y-[-50%]"},Y={key:0},W={key:1},X={key:0,class:"error text-[0.75rem] font-[SourceSans]"},aa={class:"email-input mb-[0.5rem]"},ea={class:"input-container relative"},sa=["type"],la=["src"],ta=["src"],ia={key:0,class:"error text-[0.75rem] font-[SourceSans]"},ua={class:"email-input mb-[0.5rem]"},na={class:"input-container relative"},oa=["type"],ra=["src"],ca=["src"],va={key:0,class:"error text-[0.75rem] font-[SourceSans]"},da={class:"mt-[2.75rem]"},ma=G(v({__name:"forgot-password",setup(v){const G=a();d();m(p).greater("lg");const ma=f("Send"),pa=f(!1),fa=f(!1);f(!1);const ha=f(0),ya=f(0),wa=e(),ga=f(!1),ka=f(!1),ba=f(null),_a=f(!1),xa=f(""),Ta=f("verify"),Pa=f(""),Sa=f(""),Aa=f(""),Da=f(""),Ia=f(!1),Ba=f(!1);M(ba,_a);const za=f({email:"",code:""}),Ca=f({password:"",confirmPassword:""});h([za,Ca],([a,e])=>{const s=a.email||a.code,l=e.password||e.confirmPassword;_a.value=""!==s||""!==l},{deep:!0});const Va=y(()=>!(za.value.email&&!Pa.value&&!ga.value)),Ua=y(()=>{const a=za.value.email&&!Pa.value,e=za.value.code&&!Sa.value,s=Ca.value.password&&!Aa.value,l=Ca.value.confirmPassword&&!Da.value;return!(a&&e&&s&&l)});function Za(){Pa.value=""}function ja(){Aa.value=""}function qa(){Da.value=""}function Ea(){Sa.value=""}function Ga(){za.value.code?Sa.value="":Sa.value="This field is required."}async function Fa(){za.value.email?null===String(za.value.email).match(/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/)?Pa.value="This field must be an email.":Pa.value="":Pa.value="This field is required."}function Ma(){Ca.value.password?i.yup.string().matches(/(?=.*[0-9])(?=.*[a-zA-Z]).{8,}/,"It must contain at least 8 characters and 1 number").isValidSync(Ca.value.password)?Aa.value="":Aa.value="It must contain at least 8 characters and 1 number.":Aa.value="This field is required.",Ca.value.confirmPassword&&Na()}function Na(){Ca.value.confirmPassword?Ca.value.confirmPassword!==Ca.value.password?Da.value="Passwords do not match.":Da.value="":Da.value="This field is required."}async function Ra(){if(Pa.value)return;if(ga.value)return;if(pa.value)return;const a={email:za.value.email,businessType:"email_exists"};ga.value=!0;try{await u(a);const s=60,l={email:za.value.email};try{pa.value=!0,ha.value||(ya.value=s,ha.value=setInterval(()=>{ya.value>0&&ya.value<=s?ya.value--:(pa.value=!1,clearInterval(ha.value),ha.value=0,ma.value="Resend")},1e3)),window.grecaptcha.enterprise.ready(()=>{window.grecaptcha.enterprise.execute("6LdHBgwfAAAAAD4mHGyznIJPqLQVlUpcpyIVfnKG",{action:"login"}).then(async a=>{await n({email:l.email,googleToken:a,type:"account"}),o.config.globalProperties.$notify({message:"Verification code has been sent to your Email.",type:"success"})}).catch(()=>{fa.value=!1})})}catch(e){}finally{fa.value=!1}}catch(e){"error.email.exists"===e?Pa.value="* This Email has been used.":"error.email.has_verify"===e&&(Pa.value="* You have already verified this Email.")}finally{ga.value=!1}}async function $a(){if(!(ka.value||(Fa(),Ga(),Ma(),Na(),Pa.value||Sa.value||Aa.value||Da.value))){ka.value=!0;try{await wa.loginByResetPassword({email:za.value.email,email_code:za.value.code,password:E(Ca.value.password),type:"account"}),_a.value=!1,r.success({message:"Save successfully"}),s.value?window.handleGoBack&&window.handleGoBack.postMessage(""):c({name:"profile"})}catch(a){}finally{ka.value=!1}}}function Ha(){za.value.email=""}return w(()=>{const a=g("history");s.value&&a.forgot?za.value.email="":za.value.email=wa.getUserBaseInfoData?.email||"",Ta.value="verify",xa.value="Verify your Email",l()}),k(()=>
1{pa.value=!1,clearInterval(ha.value),ha.value=0,Pa.value="",Sa.value="",ma.value="Send"}),(a,e)=>{const s=t;return B(),b(q,null,[_("div",R,[x(F,{title:"Change Password"}),_("div",null,[_("div",$,[_("div",H,[_("div",{class:P(["info-label",S(G).isThemeDark?"dark":""])}," Email Address ",2),_("div",J,[A(_("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>za.value.email=a),autocomplete:"email",type:"text",class:P(["password-input",S(G).isThemeDark?"dark":""]),onBlur:Fa,onInput:Za},null,34),[[D,za.value.email]]),x(z,{name:"custom-classes-transition","enter-active-class":"animate__animated animate__fadeIn","leave-active-class":"animate__animated animate__fadeOut"},{default:I(()=>[za.value.email?(B(),b("button",{key:0,class:P(["clear",{dark:S(G).isThemeDark}]),"aria-label":"Clear input",onClick:Ha},null,2)):T("",!0)]),_:1})]),Pa.value?(B(),b("div",K,C(Pa.value),1)):T("",!0)]),_("div",L,[_("div",{class:P(["info-label",S(G).isThemeDark?"dark":""])}," Verification Code ",2),_("div",Q,[A(_("input",{"onUpdate:modelValue":e[1]||(e[1]=a=>za.value.code=a),type:"text",class:P(["password-input",S(G).isThemeDark?"dark":""]),onInput:Ea,onBlur:Ga},null,34),[[D,za.value.code]]),_("div",O,[x(s,{"show-loading":fa.value,class:P([{disabled:Va.value},"h-[1.88rem] rounded-[0.38rem] flex items-center justify-center text-[#ffffff] cursor-pointer text-[0.88rem] font-[PoppinsSemiBold] bg-[#3656F9]"]),style:V("Resend"===ma.value?"width:4.25rem;":"width: 3.25rem;"),onClick:Ra},{default:I(()=>[pa.value?(B(),b("span",W,C(ya.value)+"s",1)):(B(),b("span",Y,C(ma.value),1))]),_:1},8,["show-loading","class","style"])])]),Sa.value?(B(),b("div",X,C(Sa.value),1)):T("",!0)]),_("div",aa,[_("div",{class:P(["info-label",S(G).isThemeDark?"dark":""])}," New Password ",2),_("div",ea,[A(_("input",{"onUpdate:modelValue":e[2]||(e[2]=a=>Ca.value.password=a),autocomplete:"email",type:Ia.value?"text":"password",class:P(["password-input",S(G).isThemeDark?"dark":""]),onBlur:Ma,onInput:ja},null,42,sa),[[U,Ca.value.password]]),_("div",{class:"opt absolute cursor-pointer",onClick:e[3]||(e[3]=a=>Ia.value=!Ia.value)},[A(_("img",{src:S(G).isThemeDark?"https://static.hapabox.com/account/eye-hide.png":"https://static.hapabox.com/account/eye-hide-light.png",alt:""},null,8,la),[[Z,!Ia.value]]),A(_("img",{src:S(G).isThemeDark?"https://static.hapabox.com/account/eye-open.png":"https://static.hapabox.com/account/eye-open-light.png",alt:""},null,8,ta),[[Z,Ia.value]])])]),Aa.value?(B(),b("div",ia,C(Aa.value),1)):T("",!0)]),_("div",ua,[_("div",{class:P(["info-label",S(G).isThemeDark?"dark":""])}," Confirm New Password ",2),_("div",na,[A(_("input",{"onUpdate:modelValue":e[4]||(e[4]=a=>Ca.value.confirmPassword=a),autocomplete:"email",type:Ba.value?"text":"password",class:P(["password-input",S(G).isThemeDark?"dark":""]),onBlur:Na,onInput:qa},null,42,oa),[[U,Ca.value.confirmPassword]]),_("div",{class:"opt absolute cursor-pointer",onClick:e[5]||(e[5]=a=>Ba.value=!Ba.value)},[A(_("img",{src:S(G).isThemeDark?"https://static.hapabox.com/account/eye-hide.png":"https://static.hapabox.com/account/eye-hide-light.png",alt:""},null,8,ra),[[Z,!Ba.value]]),A(_("img",{src:(S(G).isThemeDark,"https://static.hapabox.com/account/eye-open.png"),alt:""},null,8,ca),[[Z,Ba.value]])])]),Da.value?(B(),b("div",va,C(Da.value),1)):T("",!0)]),_("div",da,[x(s,{"show-loading":ka.value,class:P([{disabled:Ua.value},"bg-[#3656F9] w-[13.44rem] h-[2.13rem] mx-auto flex items-center justify-center rounded-[0.38rem] text-[#ffffff] text-[1.13rem] font-[PoppinsSemiBold]"]),onClick:$a},{default:I(()=>[j(" Save Password ")]),_:1},8,["show-loading","class"])])])])]),x(N,{ref_key:"unsavedModal",ref:ba},null,512)],64)}}}
1),[["__scopeId","data-v-daf71530"]]);export{ma 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.