Files
intotheeast-com-content/plugins/admin2/app/_app/immutable/nodes/13.D2eTIxoK.js
T

5 lines
11 KiB
JavaScript

import"../chunks/DsnmJJEf.js";import{p as ot,i as N,m as be,u as Ge,g as e,t as _,a as u,b as it,k as nt,c as b,d as a,$ as lt,r as t,s as o,l as Se,f as U,e as Me,j as l,h as xe}from"../chunks/krC2xWPP.js";import{d as dt,a as Ie,s as v,e as Re}from"../chunks/CddAxf8c.js";import{i as T}from"../chunks/DjsWWzyL.js";import{h as vt}from"../chunks/DSIsCMt7.js";import{h as ut,s as Ee}from"../chunks/j_DJpx8B.js";import{s as we,r as te,B as Xe,t as E}from"../chunks/Lvd_r9sp.js";import{b as re}from"../chunks/ciapVzar.js";import{g as Ue}from"../chunks/BVTiZ3e2.js";import{b as de}from"../chunks/BSopV7IU.js";import{p as mt}from"../chunks/euuZp6ft.js";import{c as C,i}from"../chunks/Cu5ilWky.js";import{g as _t,l as ft,b as ct}from"../chunks/CNrnzl73.js";import{D as pt}from"../chunks/nlum2O0L.js";import{B as gt,t as Ce}from"../chunks/BzsopytP.js";import{S as Nt,M as bt}from"../chunks/BrVNO555.js";import{S as xt}from"../chunks/hE_Oj9Ry.js";import{C as It}from"../chunks/ZWbUro-G.js";import{L as ke}from"../chunks/C_E2vM9U.js";import{L as Et}from"../chunks/D_RTrvTj.js";import{S as $e}from"../chunks/BeCwQYrA.js";import{G as ht}from"../chunks/6XVG9yYt.js";var Tt=b('<div class="mt-3 space-y-3 pb-1"><div class="space-y-1.5"><label for="server-url" class="text-[0.8125rem] font-medium text-foreground"> </label> <div class="flex rounded-md shadow-sm"><span class="inline-flex items-center rounded-l-md border border-r-0 border-input bg-muted px-3 text-muted-foreground"><!></span> <input id="server-url" type="url" class="flex h-9 w-full rounded-r-md border border-input bg-transparent px-3 py-1 text-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"/></div></div> <div class="space-y-1.5"><label for="environment" class="text-[0.8125rem] font-medium text-foreground"> </label> <input id="environment" type="text" class="flex h-9 w-full rounded-md border bg-transparent px-3 py-1 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"/></div></div>'),At=b('<p class="text-xs text-red-500"> </p>'),Dt=b('<p class="text-xs text-red-500"> </p>'),Ot=b("<!> ",1),Lt=b("<!> ",1),yt=b('<div class="border-b border-border px-6 py-3"><button type="button" class="flex w-full items-center gap-2 text-[0.8125rem] font-medium text-muted-foreground transition-colors hover:text-foreground"><!> <!></button> <!></div> <form class="space-y-4 px-6 py-5"><div class="space-y-1.5"><label for="username" class="text-[0.8125rem] font-medium text-foreground"> </label> <input id="username" type="text" autocomplete="username"/> <!></div> <div class="space-y-1.5"><label for="password" class="text-[0.8125rem] font-medium text-foreground"> </label> <input id="password" type="password" autocomplete="current-password"/> <!> <div class="pt-0.5 text-end"><a class="text-[0.75rem] font-medium text-muted-foreground transition-colors hover:text-foreground"> </a></div></div> <!></form>',1),Gt=b('<p class="text-xs text-red-500"> </p>'),St=b("<!> ",1),Mt=b("<!> ",1),Rt=b('<form class="space-y-4 px-6 py-5"><div class="flex items-center gap-3 rounded-md border border-border bg-muted/40 px-3 py-2.5"><!> <p class="text-[0.75rem] text-muted-foreground"></p></div> <div class="space-y-1.5"><label for="twofa-code" class="text-[0.8125rem] font-medium text-foreground"> </label> <input id="twofa-code" type="text" inputmode="numeric" pattern="[0-9]*" maxlength="6" autocomplete="one-time-code" placeholder="000000"/> <!></div> <!> <button type="button" class="flex w-full items-center justify-center gap-1.5 text-[0.75rem] font-medium text-muted-foreground transition-colors hover:text-foreground"><!> </button></form>'),wt=b('<div class="flex min-h-screen items-center justify-center bg-background p-4"><button type="button" class="absolute top-4 right-4 inline-flex h-8 w-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground"><!></button> <div class="w-full max-w-sm"><div class="mb-8 flex flex-col items-center text-center"><div class="mb-4"><!></div> <h1 class="text-2xl font-semibold tracking-tight text-foreground"> </h1> <p class="mt-1 text-[0.8125rem] text-muted-foreground"><!></p></div> <div class="rounded-lg border border-border bg-card shadow-sm"><!></div> <p class="mt-6 text-center text-xs text-muted-foreground"> </p></div></div>');function sr(Ve,ze){ot(ze,!0);let ae=N(be(C.serverUrl||"https://localhost/grav-api")),se=N(be(C.environment||"localhost")),k=N(""),$=N(""),f=N(!1),oe=N(be(!C.serverUrl&&!C.hasGravConfig)),ie=N(!1),V=N("credentials"),ve=N(""),G=N(""),z=N(!1);const he=xe(()=>e(ie)&&e(V)==="credentials"&&!e(k).trim()),Te=xe(()=>e(ie)&&e(V)==="credentials"&&!e($).trim());Ge(()=>{i.loaded||(C.setServer(e(ae),e(se)),i.loadPrefix("PLUGIN_LOGIN").then(()=>{i.loadAllInBackground()}))}),Ge(()=>{C.serverUrl&&_t().then(r=>{r.setup_required&&Ue(`${de}/setup`)}).catch(()=>{})});function Ae(){E.success(i.t("ADMIN_NEXT.LOGIN.SIGNED_IN_SUCCESSFULLY"));const r=mt.url.searchParams.get("returnTo");Ue(r&&r!==`${de}/login`?r:`${de}/`)}function Pe(){l(V,"credentials"),l(ve,""),l(G,""),l(z,!1),l($,"")}async function Be(r){if(r.preventDefault(),l(ie,!0),!e(k).trim()||!e($).trim()){E.error(i.t("ADMIN_NEXT.LOGIN.PLEASE_FILL_IN_ALL_REQUIRED_FIELDS"));return}l(f,!0);try{C.setServer(e(ae),e(se));const s=await ft(e(k),e($));if(s.requires2fa&&s.challengeToken){l(V,"2fa"),l(ve,s.challengeToken,!0),l(G,""),l(ie,!1);return}Ae()}catch(s){if(s&&typeof s=="object"&&"status"in s){const n=s;n.status===401?E.error(i.t("ADMIN_NEXT.LOGIN.INVALID_USERNAME_OR_PASSWORD")):n.status===429?E.error(n.message||"Too many login attempts. Try again later."):E.error(n.message||"Login failed")}else E.error(i.t("ADMIN_NEXT.LOGIN.UNABLE_TO_CONNECT_TO_SERVER_CHECK_YOUR"))}finally{l(f,!1)}}async function Fe(r){if(r.preventDefault(),l(z,!1),!e(G).trim()||!/^\d{6}$/.test(e(G).trim())){l(z,!0);return}l(f,!0);try{await ct(e(ve),e(G).trim()),Ae()}catch(s){if(s&&typeof s=="object"&&"status"in s){const n=s;l(z,!0),n.status===429?E.error(n.message||"Too many attempts. Try again later."):n.status===401?E.error(n.message||"Invalid 2FA code"):E.error(n.message||"Verification failed")}else E.error(i.t("ADMIN_NEXT.LOGIN.UNABLE_TO_VERIFY_CODE_CHECK_YOUR"))}finally{l(f,!1)}}var ue=wt();ut("1x05zx6",r=>{nt(s=>{lt.title=s??""},[()=>i.t("ADMIN_NEXT.LOGIN.LOGIN_GRAV_ADMIN")])});var j=a(ue),Ye=a(j);{var je=r=>{Nt(r,{size:16})},We=r=>{bt(r,{size:16})};T(Ye,r=>{Ce.isDark?r(je):r(We,-1)})}t(j);var De=o(j,2),me=a(De),_e=a(me),He=a(_e);gt(He,{size:"login"}),t(_e);var fe=o(_e,2),Ke=a(fe,!0);t(fe);var Oe=o(fe,2),Qe=a(Oe);{var qe=r=>{var s=Se();_(n=>v(s,n),[()=>i.t("ADMIN_NEXT.LOGIN.TWOFA_SUBTITLE")]),u(r,s)},Je=r=>{var s=Se();_(n=>v(s,n),[()=>i.t("ADMIN_NEXT.LOGIN.SUBTITLE")]),u(r,s)};T(Qe,r=>{e(V)==="2fa"?r(qe):r(Je,-1)})}t(Oe),t(me);var ce=o(me,2),Ze=a(ce);{var et=r=>{var s=yt(),n=U(s),S=a(n),W=a(S);xt(W,{size:13});var P=o(W),H=o(P);{let d=xe(()=>e(oe)?"rotate-180":"");It(H,{size:13,get class(){return`ms-auto transition-transform ${e(d)??""}`}})}t(S);var pe=o(S,2);{var M=d=>{var m=Tt(),c=a(m),g=a(c),Ne=a(g,!0);t(g);var le=o(g,2),I=a(le),w=a(I);ht(w,{size:13}),t(I);var y=o(I,2);te(y),t(le),t(c);var Y=o(c,2),X=a(Y),at=a(X,!0);t(X);var ye=o(X,2);te(ye),t(Y),t(m),_((ee,st)=>{v(Ne,ee),v(at,st)},[()=>i.t("ADMIN_NEXT.LOGIN.SERVER_URL"),()=>i.t("ADMIN_NEXT.LOGIN.ENVIRONMENT")]),re(y,()=>e(ae),ee=>l(ae,ee)),re(ye,()=>e(se),ee=>l(se,ee)),u(d,m)};T(pe,d=>{e(oe)&&d(M)})}t(n);var K=o(n,2),Q=a(K),B=a(Q),F=a(B,!0);t(B);var A=o(B,2);te(A);var ge=o(A,2);{var p=d=>{var m=At(),c=a(m,!0);t(m),_(g=>v(c,g),[()=>i.t("ADMIN_NEXT.LOGIN.USERNAME_IS_REQUIRED")]),u(d,m)};T(ge,d=>{e(he)&&d(p)})}t(Q);var x=o(Q,2),D=a(x),q=a(D,!0);t(D);var R=o(D,2);te(R);var ne=o(R,2);{var O=d=>{var m=Dt(),c=a(m,!0);t(m),_(g=>v(c,g),[()=>i.t("ADMIN_NEXT.LOGIN.PASSWORD_IS_REQUIRED")]),u(d,m)};T(ne,d=>{e(Te)&&d(O)})}var L=o(ne,2),h=a(L),J=a(h,!0);t(h),t(L),t(x);var Z=o(x,2);Xe(Z,{type:"submit",class:"w-full",get disabled(){return e(f)},children:(d,m)=>{var c=Me(),g=U(c);{var Ne=I=>{var w=Ot(),y=U(w);ke(y,{size:15,class:"animate-spin"});var Y=o(y);_(X=>v(Y,` ${X??""}`),[()=>i.t("ADMIN_NEXT.LOGIN.SIGNING_IN")]),u(I,w)},le=I=>{var w=Lt(),y=U(w);Et(y,{size:15});var Y=o(y);_(X=>v(Y,` ${X??""}`),[()=>i.t("ADMIN_NEXT.LOGIN.SIGN_IN")]),u(I,w)};T(g,I=>{e(f)?I(Ne):I(le,-1)})}u(d,c)},$$slots:{default:!0}}),t(K),_((d,m,c,g)=>{v(P,` ${d??""} `),v(F,m),Ee(A,1,`flex h-9 w-full rounded-md border bg-transparent px-3 py-1 text-sm shadow-sm transition-all focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring
${e(he)?"border-red-500 ring-1 ring-red-500/30 animate-[shake_0.3s_ease-in-out]":"border-input"}`),A.disabled=e(f),v(q,c),Ee(R,1,`flex h-9 w-full rounded-md border bg-transparent px-3 py-1 text-sm shadow-sm transition-all focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring
${e(Te)?"border-red-500 ring-1 ring-red-500/30 animate-[shake_0.3s_ease-in-out]":"border-input"}`),R.disabled=e(f),we(h,"href",`${de??""}/forgot`),v(J,g)},[()=>i.t("ADMIN_NEXT.LOGIN.SERVER_CONFIGURATION"),()=>i.t("ADMIN_NEXT.USERNAME"),()=>i.t("ADMIN_NEXT.PASSWORD"),()=>i.t("ADMIN_NEXT.LOGIN.FORGOT_PASSWORD")]),Ie("click",S,()=>l(oe,!e(oe))),Re("submit",K,Be),re(A,()=>e(k),d=>l(k,d)),re(R,()=>e($),d=>l($,d)),u(r,s)},tt=r=>{var s=Rt(),n=a(s),S=a(n);$e(S,{size:16,class:"shrink-0 text-muted-foreground"});var W=o(S,2);vt(W,()=>i.tHtml("ADMIN_NEXT.LOGIN.AUTH_CODE_PROMPT",{username:e(k)}),!0),t(W),t(n);var P=o(n,2),H=a(P),pe=a(H,!0);t(H);var M=o(H,2);te(M);var K=o(M,2);{var Q=p=>{var x=Gt(),D=a(x,!0);t(x),_(q=>v(D,q),[()=>i.t("ADMIN_NEXT.LOGIN.ENTER_A_VALID_6_DIGIT_CODE")]),u(p,x)};T(K,p=>{e(z)&&p(Q)})}t(P);var B=o(P,2);Xe(B,{type:"submit",class:"w-full",get disabled(){return e(f)},children:(p,x)=>{var D=Me(),q=U(D);{var R=O=>{var L=St(),h=U(L);ke(h,{size:15,class:"animate-spin"});var J=o(h);_(Z=>v(J,` ${Z??""}`),[()=>i.t("ADMIN_NEXT.LOGIN.VERIFYING")]),u(O,L)},ne=O=>{var L=Mt(),h=U(L);$e(h,{size:15});var J=o(h);_(Z=>v(J,` ${Z??""}`),[()=>i.t("ADMIN_NEXT.LOGIN.VERIFY")]),u(O,L)};T(q,O=>{e(f)?O(R):O(ne,-1)})}u(p,D)},$$slots:{default:!0}});var F=o(B,2),A=a(F);pt(A,{name:"arrow-back",size:12});var ge=o(A);t(F),t(s),_((p,x)=>{v(pe,p),Ee(M,1,`flex h-10 w-full rounded-md border bg-transparent px-3 py-1 text-center font-mono text-lg tracking-[0.4em] shadow-sm transition-all focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring
${e(z)?"border-red-500 ring-1 ring-red-500/30 animate-[shake_0.3s_ease-in-out]":"border-input"}`),M.disabled=e(f),F.disabled=e(f),v(ge,` ${x??""}`)},[()=>i.t("ADMIN_NEXT.LOGIN.AUTHENTICATION_CODE"),()=>i.t("ADMIN_NEXT.LOGIN.BACK_TO_SIGN_IN")]),Re("submit",s,Fe),re(M,()=>e(G),p=>l(G,p)),Ie("click",F,Pe),u(r,s)};T(Ze,r=>{e(V)==="credentials"?r(et):r(tt,-1)})}t(ce);var Le=o(ce,2),rt=a(Le,!0);t(Le),t(De),t(ue),_((r,s,n)=>{we(j,"aria-label",r),v(Ke,s),v(rt,n)},[()=>i.t("ADMIN_NEXT.TOGGLE_DARK_MODE"),()=>i.t("ADMIN_NEXT.LOGIN.GRAV_ADMIN"),()=>i.t("ADMIN_NEXT.LOGIN.POWERED_BY_GRAV_CMS")]),Ie("click",j,()=>Ce.toggleColorMode()),u(Ve,ue),it()}dt(["click"]);export{sr as component};