1import{d as Q,r as n,c as x,q as M,w as W,o as J,D,K as k,B as t,z as b,G as o,u as i,k as p,H as w,a1 as O,E as X,Q as Y,W as Z,A as ee,U as te,C as v}from"./vendor-vue-Dzwqm9Y9.js";import"./AppHeader.vue_vue_type_style_index_0_scoped_25b0c839_lang-B0lsvCqV.js";import{a as ae,L as ne,_ as C,a0 as se,D as le}from"./index-Dg7iAOYr.js";import"./vendor-misc-B-nM3tYW.js";import"./useClipboard-DI2IZ1WO.js";/* empty css */import{A as ie}from"./AuthLayout-z7fxUHCk.js";import{_ as re}from"./CaptchaChallenge.vue_vue_type_script_setup_true_lang-CcmCoDPI.js";import{u as oe}from"./vendor-i18n-BuoWFzps.js";const ce={class:"space-y-6"},ue={class:"text-center"},de={class:"text-2xl font-bold text-gray-900 dark:text-white"},me={class:"mt-2 text-sm text-gray-500 dark:text-dark-400"},pe={key:0,class:"space-y-6"},ve={class:"rounded-xl border border-green-200 bg-green-50 p-6 dark:border-green-800/50 dark:bg-green-900/20"},fe={class:"flex flex-col items-center gap-4 text-center"},he={class:"flex h-12 w-12 items-center justify-center rounded-full bg-green-100 dark:bg-green-800/50"},_e={class:"text-lg font-semibold text-green-800 dark:text-green-200"},ye={class:"mt-2 text-sm text-green-700 dark:text-green-300"},ge={class:"text-center"},xe={for:"email",class:"input-label"},ke={class:"relative"},be={class:"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3.5"},we=["disabled","placeholder"],Ce={key:0},Ee=["disabled"],Se={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin text-white",fill:"none",viewBox:"0 0 24 24"},Ve={class:"text-gray-500 dark:text-dark-400"},Pe=Q({__name:"ForgotPasswordView",setup(Be){const{t:a}=oe(),E=ae(),c=n(!1),L=n(!1),f=n(""),u=n(!1),S=n(""),h=n(!1),V=n(""),T=n("cn"),y=n(!1),P=n(""),B=n(""),z=n("cn"),R=n(null),r=n(""),d=n(""),I=x(()=>y.value&&!!P.value&&!!B.value),A=x(()=>h.value&&!!V.value||I.value),F=x(()=>u.value&&!!S.value||A.value),_=M({email:""}),l=M({email:"",turnstile:""}),q=x(()=>l.email||l.turnstile||"");W(q,(e,s)=>{e&&e!==s&&E.showError(e)}),J(async()=>{try{const e=await ne();u.value=e.turnstile_enabled,S.value=e.turnstile_site_key||"",h.value=e.tencent_captcha_enabled===!0,V.value=e.tencent_captcha_app_id||"",T.value=e.tencent_captcha_region||"cn",y.value=e.aliyun_captcha_enabled===!0,P.value=e.aliyun_captcha_scene_id||"",B.value=e.aliyun_captcha_prefix||"",z.value=e.aliyun_captcha_region||"cn"}catch(e){console.error("Failed to load public settings:",e)}});function H(e,s=""){r.value=e,d.value=s,l.turnstile=""}function N(){r.value="",d.value="",l.turnstile=a("auth.turnstileExpired")}function $(){r.value="",d.value="",l.turnstile=a("auth.turnstileFailed")}function K(){var e;(e=R.value)==null||e.reset(),r.value="",d.value="",l.turnstile=""}async function U(){var s;if(!A.value)return!0;const e=await((s=R.value)==null?void 0:s.verifyAction());return e?(r.value=e.token,d.value=e.randstr,!0):!1}function j(){l.email="",l.turnstile="";let e=!0;return _.email.trim()?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(_.email)||(l.email=a("auth.invalidEmail"),e=!1):(l.email=a("auth.emailRequired"),e=!1),u.value&&!r.value&&(l.turnstile=a("auth.completeVerification"),e=!1),e}async function G(){var e,s;if(f.value="",!!j()&&await U()){c.value=!0;try{await se({email:_.email,turnstile_token:u.value||y.value?r.value:void 0,tencent_captcha_ticket:h.value?r.value:void 0,tencent_captcha_randstr:h.value?d.value:void 0}),L.value=!0,E.showSuccess(a("auth.resetEmailSent"))}catch(g){const m=g;(s=(e=m.response)==null?void 0:e.data)!=null&&s.detail?f.value=m.response.data.detail:m.message?f.value=m.message:f.value=a("auth.sendResetLinkFailed"),E.showError(f.value)}finally{F.value&&K(),c.value=!1}}}return(e,s)=>{const g=O("router-link");return v(),D(i(ie),null,{footer:k(()=>[t("p",Ve,[w(o(i(a)("auth.rememberedPassword"))+" ",1),p(g,{to:"/login",class:"font-medium text-primary-600 transition-colors hover:text-primary-500 dark:text-primary-400 dark:hover:text-primary-300"},{default:k(()=>[w(o(i(a)("auth.signIn")),1)]),_:1})])]),default:k(()=>[t("div",ce,[t("div",ue,[t("h2",de,o(i(a)("auth.forgotPasswordTitle")),1),t("p",me,o(i(a)("auth.forgotPasswordHint")),1)]),L.value?(v(),b("div",pe,[t("div",ve,[t("div",fe,[t("div",he,[p(C,{name:"checkCircle",size:"lg",class:"text-green-600 dark:text-green-400"})]),t("div",null,[t("h3",_e,o(i(a)("auth.resetEmailSent")),1),t("p",ye,o(i(a)("auth.resetEmailSentHint")),1)])])]),t("div",ge,[p(g,{to:"/login",class:"inline-flex items-center gap-2 font-medium text-primary-600 transition-colors hover:text-primary-500 dark:text-primary-400 dark:hover:text-primary-300"},{default:k(()=>[p(C,{name:"arrowLeft",size:"sm"}),w(" "+o(i(a)("auth.backToLogin")),1)]),_:1})])])):(v(),b("form",{key:1,onSubmit:te(G,["prevent"]),class:"space-y-5"},[t("div",null,[t("label",xe,o(i(a)("auth.emailLabel")),1),t("div",ke,[t("div",be,[p(C,{name:"mail",size:"md",class:"text-gray-400 dark:text-dark-500"})]),Y(t("input",{id:"email","onUpdate:modelValue":s[0]||(s[0]=m=>_.email=m),type:"email",required:"",autofocus:"",autocomplete:"email",disabled:c.value,class:ee(["input pl-11",{"input-error":l.email}]),placeholder:i(a)("auth.emailPlaceholder")},null,10,we),[[Z,_.email]])])]),F.value?(v(),b("div",Ce,[p(re,{ref_key:"turnstileRef",ref:R,"turnstile-enabled":u.value,"turnstile-site-key":S.value,"tencent-enabled":h.value,"tencent-app-id":V.value,"tencent-region":T.value,"aliyun-enabled":y.value,"aliyun-scene-id":P.value,"aliyun-prefix":B.value,"aliyun-region":z.value,onVerify:H,onExpire:N,onError:$},null,8,["turnstile-enabled","turnstile-site-key","tencent-enabled","tencent-app-id","tencent-region","aliyun-enabled","aliyun-scene-id","aliyun-prefix","aliyun-region"])])):X("",!0),t("button",{type:"submit",disabled:c.value||u.value&&!r.value,class:"btn btn-primary w-full"},[c.value?(v(),b("svg",Se,[...s[1]||(s[1]=[t("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),t("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(v(),D(C,{key:1,name:"mail",size:"md",class:"mr-2"})),w(" "+o(c.value?i(a)("auth.sendingResetLink"):i(a)("auth.send
1ResetLink")),1)],8,Ee)],32))])]),_:1})}}}),qe=le(Pe,[["__scopeId","data-v-14824d55"]]);export{qe 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.