10 lines
43 KiB
JavaScript
10 lines
43 KiB
JavaScript
import"../chunks/DsnmJJEf.js";import{o as Vr}from"../chunks/DukJHxi2.js";import{p as ir,i as ve,m as or,u as $t,j as D,e as tt,f as oe,a as n,b as lr,g as e,o as Fr,d as r,r as t,s as a,t as c,c as v,h as V,n as Ir,l as qt,k as Kr,$ as jr}from"../chunks/krC2xWPP.js";import{d as vr,e as Hr,s as l,a as ne}from"../chunks/CddAxf8c.js";import{p as Yr,i}from"../chunks/DjsWWzyL.js";import{t as fe,r as Sr,e as We,B as xt,s as Q,i as pt,d as Wr}from"../chunks/Lvd_r9sp.js";import{h as Dr}from"../chunks/DSIsCMt7.js";import{s as xe,h as $r}from"../chunks/j_DJpx8B.js";import{b as yr}from"../chunks/ciapVzar.js";import{g as pr}from"../chunks/BVTiZ3e2.js";import{b as gr}from"../chunks/BSopV7IU.js";import{p as br}from"../chunks/euuZp6ft.js";import{b as qr,o as Jr,p as Qr,q as Zr,t as ea,r as ta,u as ra,c as aa}from"../chunks/18iuIwwJ.js";import{p as Pt,d as Lr,f as Ft,i as Kt,a as Jt,b as Qt,r as Er}from"../chunks/CQDj4r_w.js";import{i as d,s as hr,a as Nr}from"../chunks/Cu5ilWky.js";import{d as sr}from"../chunks/DtZdUUoV.js";import{S as sa}from"../chunks/K87jKp17.js";import{X as oa}from"../chunks/CiIMiELt.js";import{L as je}from"../chunks/C_E2vM9U.js";import{S as Mr}from"../chunks/agE6NDSA.js";import{P as jt}from"../chunks/Bi6PtFz0.js";import{B as Ht,S as Ar,C as nr,a as Vt}from"../chunks/CD06zTmh.js";import{D as Tr}from"../chunks/DBVjMAyX.js";import{E as Zt}from"../chunks/CYnWUDOj.js";import{D as na}from"../chunks/nlum2O0L.js";import{c as da}from"../chunks/CuDfWLaU.js";import{p as Mt}from"../chunks/BzvfRedh.js";import{S as ia}from"../chunks/h5AuRbZl.js";import{T as dr}from"../chunks/CSNyvbvN.js";import{A as Yt,a as Wt}from"../chunks/CZyBFLho.js";import{R as la}from"../chunks/DmaMvHCd.js";import{P as va}from"../chunks/C1jLV8_5.js";import{L as ua}from"../chunks/tFcFjFQJ.js";import{T as ca}from"../chunks/CH2SFP9U.js";var _a=v('<p class="mt-0.5 text-xs text-muted-foreground"> </p>'),ma=v("<!> Buy",1),fa=v("<!> ",1),xa=v("<!> ",1),pa=v('<div class="flex flex-1 items-center justify-center"><!></div>'),ga=v("<i></i>"),ba=v('<span class="shrink-0 rounded-full bg-red-500/15 px-1.5 py-0.5 text-[0.625rem] font-medium text-red-600 dark:text-red-400"> </span>'),Ea=v('<div><div class="flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-muted text-muted-foreground"><!></div> <div class="min-w-0 flex-1"><div class="flex items-center gap-1.5"><span class="truncate text-sm font-medium text-foreground"> </span> <!> <!></div> <p class="truncate text-xs text-muted-foreground"> </p></div> <!></div>'),ha=v('<div class="px-4 py-8 text-center text-sm text-muted-foreground"> </div>'),Na=v("<i></i>"),Aa=v('<span class="rounded-full bg-red-500/15 px-2 py-0.5 text-xs font-medium text-red-600 dark:text-red-400"> </span>'),Ta=v("<span> </span>"),Ia=v('<div class="prose prose-sm dark:prose-invert mt-4 max-w-none text-sm leading-relaxed text-muted-foreground [&_a]:text-primary [&_a]:no-underline hover:[&_a]:underline [&_p]:my-0 [&_p+p]:mt-2"></div>'),Sa=v('<p class="mt-4 text-sm leading-relaxed text-muted-foreground"> </p>'),Da=v('<a target="_blank" rel="noopener" class="text-primary hover:underline"> <!></a>'),ya=v('<div><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-0.5 text-sm text-foreground"><!></dd></div>'),La=v('<div><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-0.5 text-sm"><a target="_blank" rel="noopener" class="text-primary hover:underline">Visit <!></a></dd></div>'),Ma=v('<span class="rounded-md bg-muted px-2 py-0.5 text-xs text-muted-foreground"> </span>'),Pa=v('<div class="mt-4"><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-1.5 flex flex-wrap gap-1.5"></dd></div>'),wa=v('<span class="rounded-md bg-muted px-2 py-0.5 text-muted-foreground"> </span>'),ka=v('<div class="flex flex-wrap items-center gap-1.5 text-xs"><span class="min-w-12 font-medium text-foreground"> </span> <!></div>'),Ua=v('<div class="mt-4"><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-1.5 space-y-1.5"></dd></div>'),Xa=v('<span class="text-muted-foreground"> </span>'),za=v('<span class="inline-flex items-center gap-1.5 rounded-md bg-muted px-2.5 py-1 text-xs"><span class="font-medium text-foreground"> </span> <!></span>'),Oa=v('<div class="mt-4"><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-1.5 flex flex-wrap gap-1.5"></dd></div>'),Ca=v('<div class="p-6"><div class="flex items-start gap-4"><div class="flex h-14 w-14 shrink-0 items-center justify-center rounded-xl bg-muted text-muted-foreground"><!></div> <div class="min-w-0 flex-1"><div class="flex items-center gap-1.5"><h3 class="text-lg font-semibold text-foreground"> </h3> <!> <!></div> <div class="mt-1 flex flex-wrap items-center gap-2 text-xs text-muted-foreground"><span> </span> <!></div></div></div> <!> <div class="mt-6 grid grid-cols-2 gap-4"><!> <!> <div><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-0.5 font-mono text-xs text-foreground"> </dd></div> <div><dt class="text-xs font-medium text-muted-foreground">Slug</dt> <dd class="mt-0.5 font-mono text-xs text-foreground"> </dd></div></div> <!> <!> <!></div>'),Ga=v('<div class="flex h-full items-center justify-center text-sm text-muted-foreground"> </div>'),Ra=v('<div class="shrink-0 border-b border-border px-4 py-2"><div class="relative"><!> <input type="text" class="h-8 w-full rounded-md border border-input bg-muted/50 ps-9 pe-3 text-sm placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring"/></div></div> <div class="flex flex-1 overflow-hidden"><div class="w-full overflow-y-auto border-e border-border lg:w-[360px] xl:w-[400px]"><!> <!></div> <div class="hidden flex-1 overflow-y-auto lg:block"><!></div></div>',1),Ba=v('<div class="fixed inset-0 z-50 flex items-center justify-center bg-neutral-900/75 p-4 backdrop-blur-sm sm:p-8"><div class="flex h-[85vh] w-full max-w-5xl flex-col rounded-xl border border-border bg-card shadow-2xl"><div class="flex shrink-0 items-center justify-between border-b border-border px-6 py-4"><div><h2 class="text-lg font-semibold text-foreground"> </h2> <!></div> <div class="flex items-center gap-2"><!> <button type="button" class="inline-flex h-8 w-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground"><!></button></div></div> <!></div></div>');function Va(wt,k){ir(k,!0);let pe=Yr(k,"initialSearch",3,""),j=ve(or([])),Oe=ve(!1),he=ve(or(pe()));$t(()=>{pe()&&D(he,pe())});let H=ve(null),Ie=ve(null);const Le=V(()=>{let y=e(j).filter(u=>!u.installed);if(e(he)){const u=e(he).toLowerCase();y=y.filter(w=>w.name.toLowerCase().includes(u)||w.slug.toLowerCase().includes(u)||(w.description??"").toLowerCase().includes(u)||(w.author?.name??"").toLowerCase().includes(u)||Pt(w.keywords).some(Pe=>Pe.toLowerCase().includes(u))||w.premium&&"premium".includes(u))}return y.sort((u,w)=>u.name.localeCompare(w.name)),y}),I=V(()=>e(H)?e(Le).find(y=>y.slug===e(H))??null:null);async function Ue(){D(Oe,!0);try{D(j,await qr(),!0);const u=(pe()?e(j).find(w=>!w.installed&&w.slug===pe()):null)??e(j).find(w=>!w.installed);u&&D(H,u.slug,!0)}catch{fe.error(d.t("ADMIN_NEXT.ADD_PLUGIN_MODAL.FAILED_TO_LOAD_AVAILABLE_PLUGINS_FROM"))}finally{D(Oe,!1)}}function Ce(y){return!!y.premium&&!y.licensed}function He(y){y.purchase_url&&window.open(y.purchase_url,"_blank","noopener")}async function rt(y){D(Ie,y,!0);try{const u=await Jr(y),w=[y,...u.dependencies??[]];for(const ue of w){const Se=e(j).findIndex(ot=>ot.slug===ue);Se!==-1&&(e(j)[Se]={...e(j)[Se],installed:!0})}if(D(j,[...e(j)],!0),e(H)===y){const ue=e(Le).find(Se=>Se.slug!==y);D(H,ue?.slug??null,!0)}for(const ue of u.dependencies??[]){const Se=e(j).find(ot=>ot.slug===ue)?.name??ue;fe.success(d.t("ADMIN_NEXT.TOASTS.DEPENDENCY_INSTALLED",{slug:Se}))}const Pe=e(j).find(ue=>ue.slug===y)?.name??y;fe.success(d.t("ADMIN_NEXT.TOASTS.PLUGIN_INSTALLED",{name:Pe})),k.oninstalled()}catch(u){const w=u instanceof Error?u.message:String(u);fe.error(d.t("ADMIN_NEXT.TOASTS.INSTALL_FAILED",{slug:y,detail:w}))}finally{D(Ie,null)}}function it(y){y.target===y.currentTarget&&k.onclose()}function at(y){y.key==="Escape"&&k.onclose()}$t(()=>{k.open&&(D(he,pe()||"",!0),D(H,null),Ue())});var Me=tt();Hr("keydown",Fr,function(...y){(k.open?at:void 0)?.apply(this,y)});var Xe=oe(Me);{var st=y=>{var u=Ba(),w=r(u),Pe=r(w),ue=r(Pe),Se=r(ue),ot=r(Se,!0);t(Se);var $e=a(Se,2);{var gt=Y=>{var h=_a(),m=r(h);t(h),c(()=>l(m,`${e(Le).length??""} available`)),n(Y,h)};i($e,Y=>{e(Oe)||Y(gt)})}t(ue);var lt=a(ue,2),vt=r(lt);{var kt=Y=>{var h=tt(),m=oe(h);{var o=_=>{xt(_,{size:"sm",variant:"destructive",onclick:()=>He(e(I)),children:(B,ce)=>{var ge=ma(),de=oe(ge);Ar(de,{size:14,class:"me-1.5"}),Ir(),n(B,ge)},$$slots:{default:!0}})},f=V(()=>Ce(e(I))),b=_=>{{let B=V(()=>e(Ie)===e(I).slug);xt(_,{size:"sm",onclick:()=>rt(e(I).slug),get disabled(){return e(B)},children:(ce,ge)=>{var de=tt(),we=oe(de);{var qe=ke=>{var U=fa(),N=oe(U);je(N,{size:14,class:"me-1.5 animate-spin"});var C=a(N);c(K=>l(C,` ${K??""}`),[()=>d.t("ADMIN_NEXT.INSTALLING")]),n(ke,U)},Ge=ke=>{var U=xa(),N=oe(U);Tr(N,{size:14,class:"me-1.5"});var C=a(N);c(K=>l(C,` ${K??""}`),[()=>d.t("ADMIN_NEXT.INSTALL")]),n(ke,U)};i(we,ke=>{e(Ie)===e(I).slug?ke(qe):ke(Ge,-1)})}n(ce,de)},$$slots:{default:!0}})}};i(m,_=>{e(f)?_(o):_(b,-1)})}n(Y,h)};i(vt,Y=>{e(I)&&Y(kt)})}var ut=a(vt,2),Tt=r(ut);oa(Tt,{size:16}),t(ut),t(lt),t(Pe);var ct=a(Pe,2);{var bt=Y=>{var h=pa(),m=r(h);je(m,{size:24,class:"animate-spin text-muted-foreground"}),t(h),n(Y,h)},Ut=Y=>{var h=Ra(),m=oe(h),o=r(m),f=r(o);Mr(f,{size:14,class:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"});var b=a(f,2);Sr(b),t(o),t(m);var _=a(m,2),B=r(_),ce=r(B);We(ce,17,()=>e(Le),U=>U.slug,(U,N)=>{var C=Ea(),K=r(C),Re=r(K);{var ze=S=>{var s=ga();c(g=>xe(s,1,`${g??""} text-sm`),[()=>Ft(e(N).icon)]),n(S,s)},Be=S=>{jt(S,{size:16})};i(Re,S=>{e(N).icon?S(ze):S(Be,-1)})}t(K);var Z=a(K,2),Ne=r(Z),Ae=r(Ne),be=r(Ae,!0);t(Ae);var ee=a(Ae,2);{var W=S=>{Ht(S,{size:14,class:"shrink-0 text-purple-500"})},q=V(()=>Kt(e(N).author));i(ee,S=>{e(q)&&S(W)})}var De=a(ee,2);{var _e=S=>{var s=ba(),g=r(s,!0);t(s),c(z=>l(g,z),[()=>d.t("ADMIN_NEXT.PREMIUM")]),n(S,s)};i(De,S=>{e(N).premium&&S(_e)})}t(Ne);var Ve=a(Ne,2),Fe=r(Ve,!0);t(Ve),t(Z);var Je=a(Z,2);{var Ke=S=>{xt(S,{variant:"outline",size:"sm",onclick:s=>{s.stopPropagation(),He(e(N))},class:"shrink-0",children:(s,g)=>{Ar(s,{size:12})},$$slots:{default:!0}})},Et=V(()=>Ce(e(N))),_t=S=>{{let s=V(()=>e(Ie)===e(N).slug);xt(S,{variant:"outline",size:"sm",onclick:g=>{g.stopPropagation(),rt(e(N).slug)},get disabled(){return e(s)},class:"shrink-0",children:(g,z)=>{var ie=tt(),Ye=oe(ie);{var O=Te=>{je(Te,{size:12,class:"animate-spin"})},Ee=Te=>{Tr(Te,{size:12})};i(Ye,Te=>{e(Ie)===e(N).slug?Te(O):Te(Ee,-1)})}n(g,ie)},$$slots:{default:!0}})}};i(Je,S=>{e(Et)?S(Ke):S(_t,-1)})}t(C),c(S=>{xe(C,1,`flex w-full items-center gap-3 border-b border-border px-4 py-3 text-start transition-colors
|
|
${e(H)===e(N).slug?"bg-accent":"hover:bg-muted/50"}`),l(be,e(N).name),l(Fe,S)},[()=>Lr(e(N))]),ne("click",C,()=>D(H,e(N).slug,!0)),n(U,C)});var ge=a(ce,2);{var de=U=>{var N=ha(),C=r(N,!0);t(N),c(()=>l(C,e(he)?"No plugins match your filter":"All plugins are already installed")),n(U,N)};i(ge,U=>{e(Le).length===0&&U(de)})}t(B);var we=a(B,2),qe=r(we);{var Ge=U=>{var N=Ca(),C=r(N),K=r(C),Re=r(K);{var ze=A=>{var M=Na();c(X=>xe(M,1,`${X??""} text-2xl`),[()=>Ft(e(I).icon)]),n(A,M)},Be=A=>{jt(A,{size:28})};i(Re,A=>{e(I).icon?A(ze):A(Be,-1)})}t(K);var Z=a(K,2),Ne=r(Z),Ae=r(Ne),be=r(Ae,!0);t(Ae);var ee=a(Ae,2);{var W=A=>{Ht(A,{size:18,class:"shrink-0 text-purple-500"})},q=V(()=>Kt(e(I).author));i(ee,A=>{e(q)&&A(W)})}var De=a(ee,2);{var _e=A=>{var M=Aa(),X=r(M,!0);t(M),c(me=>l(X,me),[()=>d.t("ADMIN_NEXT.PREMIUM")]),n(A,M)};i(De,A=>{e(I).premium&&A(_e)})}t(Ne);var Ve=a(Ne,2),Fe=r(Ve),Je=r(Fe);t(Fe);var Ke=a(Fe,2);{var Et=A=>{var M=Ta(),X=r(M);t(M),c(()=>l(X,`by ${e(I).author.name??""}`)),n(A,M)};i(Ke,A=>{e(I).author?.name&&A(Et)})}t(Ve),t(Z),t(C);var _t=a(C,2);{var S=A=>{var M=tt(),X=oe(M);{var me=x=>{var T=Ia();Dr(T,()=>e(I).description_html,!0),t(T),n(x,T)},te=x=>{var T=Sa(),G=r(T,!0);t(T),c(()=>l(G,e(I).description)),n(x,T)};i(X,x=>{e(I).description_html?x(me):x(te,-1)})}n(A,M)};i(_t,A=>{e(I).description&&A(S)})}var s=a(_t,2),g=r(s);{var z=A=>{var M=ya(),X=r(M),me=r(X,!0);t(X);var te=a(X,2),x=r(te);{var T=R=>{var ye=Da(),re=r(ye),nt=a(re);Zt(nt,{size:10,class:"inline"}),t(ye),c(()=>{Q(ye,"href",e(I).author.url),l(re,`${e(I).author.name??""} `)}),n(R,ye)},G=R=>{var ye=qt();c(()=>l(ye,e(I).author.name)),n(R,ye)};i(x,R=>{e(I).author.url?R(T):R(G,-1)})}t(te),t(M),c(R=>l(me,R),[()=>d.t("ADMIN_NEXT.AUTHOR")]),n(A,M)};i(g,A=>{e(I).author?.name&&A(z)})}var ie=a(g,2);{var Ye=A=>{var M=La(),X=r(M),me=r(X,!0);t(X);var te=a(X,2),x=r(te),T=a(r(x));Zt(T,{size:10,class:"inline"}),t(x),t(te),t(M),c(G=>{l(me,G),Q(x,"href",e(I).homepage)},[()=>d.t("ADMIN_NEXT.HOMEPAGE")]),n(A,M)};i(ie,A=>{e(I).homepage&&A(Ye)})}var O=a(ie,2),Ee=r(O),Te=r(Ee,!0);t(Ee);var Qe=a(Ee,2),Xt=r(Qe,!0);t(Qe),t(O);var mt=a(O,2),It=a(r(mt),2),zt=r(It,!0);t(It),t(mt),t(s);var ft=a(s,2);{var Ot=A=>{var M=Pa(),X=r(M),me=r(X,!0);t(X);var te=a(X,2);We(te,21,()=>Pt(e(I).keywords),pt,(x,T)=>{var G=Ma(),R=r(G,!0);t(G),c(()=>l(R,e(T))),n(x,G)}),t(te),t(M),c(x=>l(me,x),[()=>d.t("ADMIN_NEXT.KEYWORDS")]),n(A,M)},Ct=V(()=>Pt(e(I).keywords).length);i(ft,A=>{e(Ct)&&A(Ot)})}var St=a(ft,2);{var ht=A=>{var M=Ua(),X=r(M),me=r(X,!0);t(X);var te=a(X,2);We(te,21,()=>Jt(e(I).compatibility),pt,(x,T)=>{var G=ka(),R=r(G),ye=r(R,!0);t(R);var re=a(R,2);We(re,17,()=>e(T).values,pt,(nt,dt)=>{var et=wa(),Gt=r(et,!0);t(et),c(()=>l(Gt,e(dt))),n(nt,et)}),t(G),c(()=>l(ye,e(T).label)),n(x,G)}),t(te),t(M),c(x=>l(me,x),[()=>d.t("ADMIN_NEXT.COMPATIBILITY")]),n(A,M)},Nt=V(()=>Jt(e(I).compatibility).length);i(St,A=>{e(Nt)&&A(ht)})}var Dt=a(St,2);{var yt=A=>{var M=Oa(),X=r(M),me=r(X,!0);t(X);var te=a(X,2);We(te,21,()=>Qt(e(I).dependencies),pt,(x,T)=>{var G=za(),R=r(G),ye=r(R,!0);t(R);var re=a(R,2);{var nt=dt=>{var et=Xa(),Gt=r(et,!0);t(et),c(()=>l(Gt,e(T).version)),n(dt,et)};i(re,dt=>{e(T).version&&dt(nt)})}t(G),c(()=>l(ye,e(T).name)),n(x,G)}),t(te),t(M),c(x=>l(me,x),[()=>d.t("ADMIN_NEXT.DEPENDENCIES")]),n(A,M)},Ze=V(()=>Qt(e(I).dependencies).length);i(Dt,A=>{e(Ze)&&A(yt)})}t(N),c(A=>{l(be,e(I).name),l(Je,`v${e(I).version??""}`),l(Te,A),l(Xt,e(I).version),l(zt,e(I).slug)},[()=>d.t("ADMIN_NEXT.VERSION")]),n(U,N)},ke=U=>{var N=Ga(),C=r(N,!0);t(N),c(K=>l(C,K),[()=>d.t("ADMIN_NEXT.ADD_PLUGIN_MODAL.SELECT_A_PLUGIN_TO_VIEW_DETAILS")]),n(U,N)};i(qe,U=>{e(I)?U(Ge):U(ke,-1)})}t(we),t(_),c(U=>Q(b,"placeholder",U),[()=>d.t("ADMIN_NEXT.ADD_PLUGIN_MODAL.FILTER_PLUGINS")]),yr(b,()=>e(he),U=>D(he,U)),n(Y,h)};i(ct,Y=>{e(Oe)?Y(bt):Y(Ut,-1)})}t(w),t(u),c(Y=>l(ot,Y),[()=>d.t("ADMIN_NEXT.ADD_PLUGIN_MODAL.ADD_PLUGIN")]),ne("click",u,it),ne("click",ut,function(...Y){k.onclose?.apply(this,Y)}),n(y,u)};i(Xe,y=>{k.open&&y(st)})}n(wt,Me),lr()}vr(["click"]);var Fa=v("<i></i>"),Ka=v('<span class="rounded-full bg-red-500/15 px-1.5 py-0.5 text-[0.625rem] font-medium text-red-600 dark:text-red-400"> </span>'),ja=v('<span class="ms-1 inline-flex items-center gap-0.5 rounded-full bg-amber-500/15 px-1.5 py-0.5 text-[0.625rem] font-medium text-amber-600 dark:text-amber-400"><!> </span>'),Ha=v('<button class="rounded p-1 text-amber-600 hover:bg-amber-500/10 dark:text-amber-400"><!></button>'),Ya=v('<button class="rounded p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive disabled:opacity-50"><!></button>'),Wa=v('<tr class="border-b border-border transition-colors hover:bg-muted/30"><td class="px-4 py-2"><button class="inline-flex items-center gap-2 text-start text-primary hover:underline"><span><!></span> <span class="font-medium"> </span> <!> <!> <!></button></td><td class="px-4 py-2 text-muted-foreground"> </td><td class="px-4 py-2 font-mono text-xs"> <!></td><td class="px-4 py-2"><button type="button"><!></button></td><td class="px-4 py-2 text-end"><div class="inline-flex items-center gap-1"><!> <button class="rounded p-1 text-muted-foreground hover:bg-accent hover:text-foreground"><!></button> <!></div></td></tr>'),$a=v('<tr><td colspan="5" class="px-4 py-8 text-center text-sm text-muted-foreground"> </td></tr>'),qa=v('<div class="overflow-x-auto"><table class="w-full text-sm"><thead class="border-b border-border bg-muted/30 text-xs uppercase tracking-wide text-muted-foreground"><tr><th class="px-4 py-2 text-start font-medium"><button class="inline-flex items-center gap-1 hover:text-foreground"> <!></button></th><th class="px-4 py-2 text-start font-medium"><button class="inline-flex items-center gap-1 hover:text-foreground"> <!></button></th><th class="px-4 py-2 text-start font-medium"><button class="inline-flex items-center gap-1 hover:text-foreground"> <!></button></th><th class="px-4 py-2 text-start font-medium"><button class="inline-flex items-center gap-1 hover:text-foreground"> <!></button></th><th class="w-32 px-4 py-2 text-end font-medium"> </th></tr></thead><tbody><!><!></tbody></table></div>');function Ja(wt,k){ir(k,!0);let pe=ve("name"),j=ve("asc");function Oe(h){e(pe)===h?D(j,e(j)==="asc"?"desc":"asc",!0):(D(pe,h,!0),D(j,"asc"))}function he(h,m,o){switch(o){case"author":return(h.author?.name??"").localeCompare(m.author?.name??"");case"version":return(h.version??"").localeCompare(m.version??"",void 0,{numeric:!0});case"enabled":return(m.enabled?1:0)-(h.enabled?1:0);default:return h.name.localeCompare(m.name)}}const H=V(()=>{const h=[...k.plugins];return h.sort((m,o)=>{const f=he(m,o,e(pe));return e(j)==="asc"?f:-f}),h});var Ie=qa(),Le=r(Ie),I=r(Le),Ue=r(I),Ce=r(Ue),He=r(Ce),rt=r(He),it=a(rt);{var at=h=>{var m=tt(),o=oe(m);{var f=_=>{Yt(_,{size:11})},b=_=>{Wt(_,{size:11})};i(o,_=>{e(j)==="asc"?_(f):_(b,-1)})}n(h,m)};i(it,h=>{e(pe)==="name"&&h(at)})}t(He),t(Ce);var Me=a(Ce),Xe=r(Me),st=r(Xe),y=a(st);{var u=h=>{var m=tt(),o=oe(m);{var f=_=>{Yt(_,{size:11})},b=_=>{Wt(_,{size:11})};i(o,_=>{e(j)==="asc"?_(f):_(b,-1)})}n(h,m)};i(y,h=>{e(pe)==="author"&&h(u)})}t(Xe),t(Me);var w=a(Me),Pe=r(w),ue=r(Pe),Se=a(ue);{var ot=h=>{var m=tt(),o=oe(m);{var f=_=>{Yt(_,{size:11})},b=_=>{Wt(_,{size:11})};i(o,_=>{e(j)==="asc"?_(f):_(b,-1)})}n(h,m)};i(Se,h=>{e(pe)==="version"&&h(ot)})}t(Pe),t(w);var $e=a(w),gt=r($e),lt=r(gt),vt=a(lt);{var kt=h=>{var m=tt(),o=oe(m);{var f=_=>{Yt(_,{size:11})},b=_=>{Wt(_,{size:11})};i(o,_=>{e(j)==="asc"?_(f):_(b,-1)})}n(h,m)};i(vt,h=>{e(pe)==="enabled"&&h(kt)})}t(gt),t($e);var ut=a($e),Tt=r(ut,!0);t(ut),t(Ue),t(I);var ct=a(I),bt=r(ct);We(bt,17,()=>e(H),h=>h.slug,(h,m)=>{var o=Wa(),f=r(o),b=r(f),_=r(b),B=r(_);{var ce=s=>{var g=Fa();c(z=>xe(g,1,`${z??""} text-xs`),[()=>Ft(e(m).icon)]),n(s,g)},ge=s=>{jt(s,{size:13})};i(B,s=>{e(m).icon?s(ce):s(ge,-1)})}t(_);var de=a(_,2),we=r(de,!0);t(de);var qe=a(de,2);{var Ge=s=>{Ht(s,{size:13,class:"text-purple-500"})},ke=V(()=>Kt(e(m).author));i(qe,s=>{e(ke)&&s(Ge)})}var U=a(qe,2);{var N=s=>{var g=Ka(),z=r(g,!0);t(g),c(ie=>l(z,ie),[()=>d.t("ADMIN_NEXT.PREMIUM")]),n(s,g)};i(U,s=>{e(m).premium&&s(N)})}var C=a(U,2);{var K=s=>{nr(s,{size:12,class:"text-muted-foreground/60"})};i(C,s=>{e(m).is_symlink&&s(K)})}t(b),t(f);var Re=a(f),ze=r(Re,!0);t(Re);var Be=a(Re),Z=r(Be),Ne=a(Z);{var Ae=s=>{var g=ja(),z=r(g);Vt(z,{size:10});var ie=a(z);t(g),c(()=>l(ie,` ${e(m).available_version??""}`)),n(s,g)};i(Ne,s=>{e(m).updatable&&s(Ae)})}t(Be);var be=a(Be),ee=r(be),W=r(ee);{var q=s=>{je(s,{size:10,class:"inline animate-spin"})},De=s=>{var g=qt();c(z=>l(g,z),[()=>e(m).enabled?d.t("ADMIN_NEXT.USERS_TABLE.ENABLED"):d.t("ADMIN_NEXT.USERS_TABLE.DISABLED")]),n(s,g)};i(W,s=>{k.togglingSlug===e(m).slug?s(q):s(De,-1)})}t(ee),t(be);var _e=a(be),Ve=r(_e),Fe=r(Ve);{var Je=s=>{var g=Ha(),z=r(g);{var ie=O=>{je(O,{size:14,class:"animate-spin"})},Ye=O=>{Vt(O,{size:14})};i(z,O=>{k.updatingSlug===e(m).slug?O(ie):O(Ye,-1)})}t(g),c((O,Ee)=>{Q(g,"aria-label",O),Q(g,"title",Ee),g.disabled=k.updatingSlug===e(m).slug||k.updatingAll},[()=>d.t("ADMIN_NEXT.UPDATE_TO_VERSION",{version:e(m).available_version??""}),()=>d.t("ADMIN_NEXT.UPDATE_TO_VERSION",{version:e(m).available_version??""})]),ne("click",g,O=>k.onUpdate(e(m),O)),n(s,g)};i(Fe,s=>{e(m).updatable&&k.canEdit&&s(Je)})}var Ke=a(Fe,2),Et=r(Ke);ia(Et,{size:14}),t(Ke);var _t=a(Ke,2);{var S=s=>{var g=Ya(),z=r(g);{var ie=O=>{je(O,{size:14,class:"animate-spin"})},Ye=O=>{dr(O,{size:14})};i(z,O=>{k.removingSlug===e(m).slug?O(ie):O(Ye,-1)})}t(g),c((O,Ee)=>{Q(g,"aria-label",O),Q(g,"title",Ee),g.disabled=k.removingSlug===e(m).slug},[()=>d.t("ADMIN_NEXT.DELETE"),()=>d.t("ADMIN_NEXT.DELETE")]),ne("click",g,O=>k.onRemove(e(m),O)),n(s,g)};i(_t,s=>{k.onRemove&&k.canEdit&&s(S)})}t(Ve),t(_e),t(o),c((s,g,z,ie)=>{xe(_,1,`flex h-7 w-7 shrink-0 items-center justify-center rounded-md ${e(m).enabled?"bg-primary/10 text-primary":"bg-muted text-muted-foreground"}`),l(we,e(m).name),l(ze,e(m).author?.name??"—"),l(Z,`${e(m).version??""} `),xe(ee,1,`rounded-full px-2.5 py-0.5 text-[0.625rem] font-medium transition-colors
|
|
${e(m).enabled?"bg-green-500/15 text-green-600 hover:bg-green-500/25 dark:text-green-400":"bg-muted text-muted-foreground hover:bg-muted/80"}`),ee.disabled=s,Q(ee,"title",g),Q(Ke,"aria-label",z),Q(Ke,"title",ie)},[()=>!k.canEdit||k.togglingSlug===e(m).slug||e(m).enabled&&k.protectedSlugs.has(e(m).slug),()=>e(m).enabled&&k.protectedSlugs.has(e(m).slug)?d.t("ADMIN_NEXT.PLUGINS_TABLE.PROTECTED_PLUGIN"):"",()=>d.t("ADMIN_NEXT.PLUGINS.CONFIGURE"),()=>d.t("ADMIN_NEXT.PLUGINS.CONFIGURE")]),ne("click",b,()=>k.onConfigure(e(m).slug)),ne("click",ee,s=>k.onToggle(e(m),s)),ne("click",Ke,()=>k.onConfigure(e(m).slug)),n(h,o)});var Ut=a(bt);{var Y=h=>{var m=$a(),o=r(m),f=r(o,!0);t(o),t(m),c(b=>l(f,b),[()=>d.t("ADMIN_NEXT.PLUGINS_TABLE.NO_PLUGINS")]),n(h,m)};i(Ut,h=>{e(H).length===0&&h(Y)})}t(ct),t(Le),t(Ie),c((h,m,o,f,b)=>{l(rt,`${h??""} `),l(st,`${m??""} `),l(ue,`${o??""} `),l(lt,`${f??""} `),l(Tt,b)},[()=>d.t("ADMIN_NEXT.PLUGINS_TABLE.NAME"),()=>d.t("ADMIN_NEXT.AUTHOR"),()=>d.t("ADMIN_NEXT.PLUGINS_TABLE.VERSION"),()=>d.t("ADMIN_NEXT.PAGES.HEADER_STATUS"),()=>d.t("ADMIN_NEXT.USERS_TABLE.ACTIONS")]),ne("click",He,()=>Oe("name")),ne("click",Xe,()=>Oe("author")),ne("click",Pe,()=>Oe("version")),ne("click",gt,()=>Oe("enabled")),n(wt,Ie),lr()}vr(["click"]);var Qa=v('<p class="mt-0.5 text-xs text-muted-foreground"> </p>'),Za=v("<!> ",1),es=v("<!> ",1),ts=v("<!> Add",1),rs=v('<div class="flex items-center gap-2"><!> <!> <!></div>'),as=v("<div><div><div><h1> </h1> <!></div> <!></div></div>"),ss=v('<div class="flex flex-1 items-center justify-center"><!></div>'),os=v('<div class="flex-1 overflow-y-auto"><!></div>'),ns=v("<i></i>"),ds=v('<span class="shrink-0 rounded-full bg-red-500/15 px-1.5 py-0.5 text-[0.625rem] font-medium text-red-600 dark:text-red-400"> </span>'),is=v('<span class="inline-flex shrink-0"><!></span>'),ls=v('<button type="button" class="inline-flex h-6 w-6 shrink-0 items-center justify-center rounded text-muted-foreground transition-colors hover:bg-destructive/10 hover:text-destructive disabled:opacity-50"><!></button>'),vs=v('<div><div><!></div> <div class="min-w-0 flex-1"><div class="flex items-center gap-1.5"><span class="truncate text-sm font-medium text-foreground"> </span> <!> <!> <!></div> <p class="truncate text-xs text-muted-foreground"> </p></div> <!> <button type="button"><!></button> <!></div>'),us=v('<div class="px-4 py-8 text-center text-sm text-muted-foreground"> </div>'),cs=v("<i></i>"),_s=v('<span class="inline-flex shrink-0"><!></span>'),ms=v('<span class="shrink-0 rounded-full bg-red-500/15 px-2 py-0.5 text-xs font-medium text-red-600 dark:text-red-400"> </span>'),fs=v("<span> </span>"),xs=v('<span class="rounded-full bg-amber-500/15 px-2 py-0.5 text-amber-600 dark:text-amber-400"> </span>'),ps=v("<!> ",1),gs=v('<button type="button" class="inline-flex h-9 w-9 items-center justify-center rounded-lg border border-border text-muted-foreground transition-colors hover:bg-destructive/10 hover:text-destructive disabled:opacity-50"><!></button>'),bs=v('<div class="prose prose-sm dark:prose-invert mt-4 max-w-none text-sm leading-relaxed text-muted-foreground [&_a]:text-primary [&_a]:no-underline hover:[&_a]:underline [&_p]:my-0 [&_p+p]:mt-2"></div>'),Es=v('<p class="mt-4 text-sm leading-relaxed text-muted-foreground"> </p>'),hs=v('<a target="_blank" rel="noopener" class="text-primary hover:underline"> <!></a>'),Ns=v('<div><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-0.5 text-sm text-foreground"><!></dd></div>'),As=v('<div><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-0.5 text-sm"><a target="_blank" rel="noopener" class="text-primary hover:underline">Visit <!></a></dd></div>'),Ts=v('<span class="rounded-md bg-muted px-2 py-0.5 text-xs text-muted-foreground"> </span>'),Is=v('<div class="mt-4"><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-1.5 flex flex-wrap gap-1.5"></dd></div>'),Ss=v('<span class="rounded-md bg-muted px-2 py-0.5 text-muted-foreground"> </span>'),Ds=v('<div class="flex flex-wrap items-center gap-1.5 text-xs"><span class="min-w-12 font-medium text-foreground"> </span> <!></div>'),ys=v('<div class="mt-4"><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-1.5 space-y-1.5"></dd></div>'),Ls=v('<span class="text-muted-foreground"> </span>'),Ms=v('<span class="inline-flex items-center gap-1.5 rounded-md bg-muted px-2.5 py-1 text-xs"><span class="font-medium text-foreground"> </span> <!></span>'),Ps=v('<div class="mt-4"><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-1.5 flex flex-wrap gap-1.5"></dd></div>'),ws=v('<div class="p-6"><div class="flex items-start gap-4"><div><!></div> <div class="min-w-0 flex-1"><div class="flex items-center gap-1.5"><h2 class="text-lg font-semibold text-foreground"> </h2> <!> <!> <!></div> <div class="mt-1 flex flex-wrap items-center gap-2 text-xs text-muted-foreground"><span> </span> <!> <!></div></div> <div class="flex items-center gap-2"><!> <!> <button type="button" class="inline-flex h-9 items-center gap-2 rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground shadow-sm transition-colors hover:bg-primary/90"> <!></button></div></div> <!> <div class="mt-6 grid grid-cols-2 gap-4"><!> <!> <div><dt class="text-xs font-medium text-muted-foreground"> </dt> <dd class="mt-0.5 text-sm"><span> </span></dd></div> <div><dt class="text-xs font-medium text-muted-foreground">Slug</dt> <dd class="mt-0.5 font-mono text-xs text-foreground"> </dd></div></div> <!> <!> <!></div>'),ks=v('<div class="flex h-full items-center justify-center text-sm text-muted-foreground"> </div>'),Us=v('<div class="flex flex-1 overflow-hidden"><div class="w-full overflow-y-auto border-e border-border lg:w-[400px] xl:w-[440px]"><!> <!></div> <div class="hidden flex-1 overflow-y-auto lg:block"><!></div></div>'),Xs=v('<div class="flex items-center gap-3 border-b border-border px-4 py-2"><div class="relative flex-1"><!> <input type="text" class="h-8 w-full rounded-md border border-input bg-muted/50 ps-9 pe-3 text-sm placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring"/></div> <select class="h-8 rounded-md border border-input bg-muted/50 px-2 text-xs text-foreground focus:outline-none focus:ring-1 focus:ring-ring"><option>Name</option><option> </option><option> </option></select> <div class="inline-flex rounded-md border border-border shadow-sm"><button><!> <span class="hidden sm:inline"> </span></button> <button><!> <span class="hidden sm:inline"> </span></button></div></div> <!>',1),zs=v('<div class="flex h-full flex-col"><!> <!></div> <!>',1);function go(wt,k){ir(k,!0);const pe="admin-next:plugins:selected-slug";function j(){if(typeof localStorage>"u")return null;try{return localStorage.getItem(hr(pe))}catch{return null}}function Oe(o){if(!(typeof localStorage>"u"))try{const f=hr(pe);o?localStorage.setItem(f,o):localStorage.removeItem(f)}catch{}}const he=V(()=>da("gpm"));let H=ve(or([])),Ie=ve(!0),Le=ve(""),I=ve("name"),Ue=ve(null),Ce=ve(null),He=ve(!1),rt=ve("");$t(()=>{const o=br.url.searchParams.get("install");o&&(D(rt,o,!0),D(He,!0))});let it=ve(!1),at=ve(null),Me=ve(!1),Xe=ve(null);const st=V(()=>e(H).filter(o=>o.updatable).length),y=V(()=>{let o=[...e(H)];if(e(Le)){const f=e(Le).toLowerCase();o=o.filter(b=>b.name.toLowerCase().includes(f)||b.slug.toLowerCase().includes(f)||(b.description??"").toLowerCase().includes(f)||(b.author?.name??"").toLowerCase().includes(f)||Pt(b.keywords).some(_=>_.toLowerCase().includes(f)))}return o.sort((f,b)=>{switch(e(I)){case"author":return(f.author?.name??"").localeCompare(b.author?.name??"");case"enabled":return(b.enabled?1:0)-(f.enabled?1:0);default:return f.name.localeCompare(b.name)}}),o}),u=V(()=>e(Ue)?e(H).find(o=>o.slug===e(Ue))??null:null);async function w(){D(Ie,!0);try{if(D(H,await Qr(),!0),!e(Ue)&&e(H).length>0){const o=j(),f=o&&e(H).some(b=>b.slug===o)?o:null;D(Ue,f??e(H)[0].slug,!0)}}catch{fe.error(d.t("ADMIN_NEXT.PLUGINS.FAILED_TO_LOAD_PLUGINS"))}finally{D(Ie,!1)}}const Pe=new Set(["api","login"]);async function ue(o,f){if(f.stopPropagation(),o.enabled&&Pe.has(o.slug)){fe.error(d.t("ADMIN_NEXT.TOASTS.PLUGIN_LOCKOUT_BLOCK",{name:o.name}));return}D(Ce,o.slug,!0);const b=!o.enabled;try{await aa(o.slug,b),o.enabled=b,D(H,[...e(H)],!0),fe.success(d.t(b?"ADMIN_NEXT.TOASTS.PLUGIN_ENABLED":"ADMIN_NEXT.TOASTS.PLUGIN_DISABLED",{name:o.name}))}catch(_){const B=_ instanceof Error?_.message:String(_);fe.error(d.t(b?"ADMIN_NEXT.TOASTS.PLUGIN_ENABLE_FAILED":"ADMIN_NEXT.TOASTS.PLUGIN_DISABLE_FAILED",{name:o.name,detail:B}))}finally{D(Ce,null)}}const Se=()=>typeof window<"u"&&window.matchMedia("(min-width: 1024px)").matches;function ot(o){if(!Se()){$e(o);return}D(Ue,o,!0),Oe(o)}function $e(o){pr(`${gr}/plugins/${o}`)}async function gt(){D(it,!0);try{const o=await Zr(!0);fe.success(d.t("ADMIN_NEXT.TOASTS.GPM_REFRESHED",{n:o.total})),await w()}catch{fe.error(d.t("ADMIN_NEXT.PLUGINS.FAILED_TO_CHECK_FOR_UPDATES"))}finally{D(it,!1)}}async function lt(o,f){if(f.stopPropagation(),!!await sr.confirm({title:"Update plugin?",message:`Update ${o.name} to v${o.available_version}?`,confirmLabel:"Update"})){D(at,o.slug,!0);try{const _=await ra(o.slug);for(const B of _.dependencies??[])fe.success(d.t("ADMIN_NEXT.TOASTS.DEPENDENCY_INSTALLED",{slug:B}));fe.success(d.t("ADMIN_NEXT.TOASTS.PACKAGE_UPDATED",{name:o.name})),await w(),Er([o.slug,..._.dependencies??[]])}catch(_){const B=_ instanceof Error?_.message:String(_);fe.error(d.t("ADMIN_NEXT.TOASTS.PACKAGE_UPDATE_FAILED",{name:o.name,detail:B}))}finally{D(at,null)}}}async function vt(o,f){if(f.stopPropagation(),!!await sr.confirm({title:d.t("ADMIN_NEXT.PLUGINS.REMOVE_CONFIRM_TITLE"),message:d.t("ADMIN_NEXT.PLUGINS.REMOVE_CONFIRM_MESSAGE",{name:o.name}),confirmLabel:d.t("ADMIN_NEXT.DELETE"),variant:"destructive"})){D(Xe,o.slug,!0);try{await ta(o.slug),fe.success(d.t("ADMIN_NEXT.TOASTS.PLUGIN_REMOVED",{name:o.name})),e(Ue)===o.slug&&(D(Ue,null),Oe(null)),await w()}catch(_){const B=_ instanceof Error?_.message:String(_);fe.error(d.t("ADMIN_NEXT.TOASTS.PLUGIN_REMOVE_FAILED",{name:o.name,detail:B}))}finally{D(Xe,null)}}}async function kt(){if(await sr.confirm({title:"Update all packages?",message:`This will update ${e(st)} package${e(st)!==1?"s":""} (plugins and themes). Continue?`,confirmLabel:"Update All"})){D(Me,!0);try{const f=await ea(),b=f.updated.length;if(f.failed.length===0)fe.success(d.t("ADMIN_NEXT.TOASTS.PACKAGES_UPDATED",{n:b}));else{const B=f.failed.map(ce=>`${ce.package}: ${ce.error}`).join(`
|
|
`);fe.error((b>0?d.t("ADMIN_NEXT.TOASTS.PACKAGES_UPDATED",{n:b})+" · ":"")+`${B}`)}await w(),Er([...f.updated,...f.cascaded_dependencies])}catch(f){const b=f instanceof Error?f.message:String(f);fe.error(d.t("ADMIN_NEXT.TOASTS.UPDATE_FAILED",{detail:b}))}finally{D(Me,!1)}}}function ut(){w()}$t(()=>{w()}),Vr(()=>{const o=Nr.subscribe("plugins:*",()=>w()),f=Nr.subscribe("*:focus",()=>w());return()=>{o(),f()}});var Tt=zs();$r("1nj0iur",o=>{Kr(f=>{jr.title=f??""},[()=>d.t("ADMIN_NEXT.PLUGINS.PLUGINS_GRAV_ADMIN")])});var ct=oe(Tt),bt=r(ct);sa(bt,{noBorder:!0,children:(f,b)=>{let _=()=>b?.().scrolled;var B=as(),ce=r(B),ge=r(ce),de=r(ge),we=r(de,!0);t(de);var qe=a(de,2);{var Ge=N=>{var C=Qa(),K=r(C);t(C),c(()=>l(K,`${e(H).length??""} installed`)),n(N,C)};i(qe,N=>{!_()&&!e(Ie)&&N(Ge)})}t(ge);var ke=a(ge,2);{var U=N=>{var C=rs(),K=r(C);{let Z=V(()=>e(it)||e(Me));xt(K,{variant:"outline",size:"sm",onclick:gt,get disabled(){return e(Z)},children:(Ne,Ae)=>{var be=Za(),ee=oe(be);{let q=V(()=>e(it)?"animate-spin":"");la(ee,{size:13,get class(){return e(q)}})}var W=a(ee);c(q=>l(W,` ${q??""}`),[()=>d.t("ADMIN_NEXT.PLUGINS.CHECK_UPDATES")]),n(Ne,be)},$$slots:{default:!0}})}var Re=a(K,2);{var ze=Z=>{xt(Z,{variant:"outline",size:"sm",onclick:kt,get disabled(){return e(Me)},children:(Ne,Ae)=>{var be=es(),ee=oe(be);{var W=_e=>{je(_e,{size:13,class:"animate-spin"})},q=_e=>{Vt(_e,{size:13})};i(ee,_e=>{e(Me)?_e(W):_e(q,-1)})}var De=a(ee);c(()=>l(De,` Update All (${e(st)??""})`)),n(Ne,be)},$$slots:{default:!0}})};i(Re,Z=>{e(st)>0&&Z(ze)})}var Be=a(Re,2);xt(Be,{size:"sm",onclick:()=>D(He,!0),children:(Z,Ne)=>{var Ae=ts(),be=oe(Ae);va(be,{size:14}),Ir(),n(Z,Ae)},$$slots:{default:!0}}),t(C),n(N,C)};i(ke,N=>{e(he)&&N(U)})}t(ce),t(B),c(N=>{xe(B,1,`px-6 transition-[padding] duration-200 ${_()?"py-2":"pt-6 pb-3"}`),xe(ce,1,`flex items-center justify-between ${_()?"min-h-6":"min-h-8"}`),xe(de,1,`font-semibold tracking-tight text-foreground transition-[font-size] duration-200 ${_()?"text-sm":"text-xl"}`),l(we,N)},[()=>d.t("ADMIN_NEXT.NAV.PLUGINS")]),n(f,B)},$$slots:{default:!0}});var Ut=a(bt,2);{var Y=o=>{var f=ss(),b=r(f);je(b,{size:24,class:"animate-spin text-muted-foreground"}),t(f),n(o,f)},h=o=>{var f=Xs(),b=oe(f),_=r(b),B=r(_);Mr(B,{size:14,class:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"});var ce=a(B,2);Sr(ce),t(_);var ge=a(_,2),de=r(ge);de.value=de.__value="name";var we=a(de),qe=r(we,!0);t(we),we.value=we.__value="author";var Ge=a(we),ke=r(Ge,!0);t(Ge),Ge.value=Ge.__value="enabled",t(ge);var U=a(ge,2),N=r(U),C=r(N);ua(C,{size:14});var K=a(C,2),Re=r(K,!0);t(K),t(N);var ze=a(N,2),Be=r(ze);ca(Be,{size:14});var Z=a(Be,2),Ne=r(Z,!0);t(Z),t(ze),t(U),t(b);var Ae=a(b,2);{var be=W=>{var q=os(),De=r(q);Ja(De,{get plugins(){return e(y)},get canEdit(){return e(he)},get togglingSlug(){return e(Ce)},get updatingSlug(){return e(at)},get updatingAll(){return e(Me)},get removingSlug(){return e(Xe)},get protectedSlugs(){return Pe},onConfigure:$e,onToggle:ue,onUpdate:lt,onRemove:vt}),t(q),n(W,q)},ee=W=>{var q=Us(),De=r(q),_e=r(De);We(_e,17,()=>e(y),S=>S.slug,(S,s)=>{var g=vs(),z=r(g),ie=r(z);{var Ye=x=>{var T=ns();c(G=>xe(T,1,`${G??""} text-sm`),[()=>Ft(e(s).icon)]),n(x,T)},O=x=>{jt(x,{size:16})};i(ie,x=>{e(s).icon?x(Ye):x(O,-1)})}t(z);var Ee=a(z,2),Te=r(Ee),Qe=r(Te),Xt=r(Qe,!0);t(Qe);var mt=a(Qe,2);{var It=x=>{Ht(x,{size:14,class:"shrink-0 text-purple-500"})},zt=V(()=>Kt(e(s).author));i(mt,x=>{e(zt)&&x(It)})}var ft=a(mt,2);{var Ot=x=>{var T=ds(),G=r(T,!0);t(T),c(R=>l(G,R),[()=>d.t("ADMIN_NEXT.PREMIUM")]),n(x,T)};i(ft,x=>{e(s).premium&&x(Ot)})}var Ct=a(ft,2);{var St=x=>{Vt(x,{size:12,class:"shrink-0 text-amber-500"})};i(Ct,x=>{e(s).updatable&&x(St)})}t(Te);var ht=a(Te,2),Nt=r(ht,!0);t(ht),t(Ee);var Dt=a(Ee,2);{var yt=x=>{var T=is(),G=r(T);{let R=V(()=>d.t("ADMIN_NEXT.PLUGINS.SYMLINKED"));nr(G,{size:14,class:"text-muted-foreground/60",get"aria-label"(){return e(R)}})}t(T),c(R=>Q(T,"title",R),[()=>d.t("ADMIN_NEXT.PLUGINS.SYMLINKED")]),n(x,T)};i(Dt,x=>{e(s).is_symlink&&x(yt)})}var Ze=a(Dt,2),A=r(Ze);{var M=x=>{je(x,{size:10,class:"inline animate-spin"})},X=x=>{var T=qt();c(()=>l(T,e(s).enabled?"Enabled":"Disabled")),n(x,T)};i(A,x=>{e(Ce)===e(s).slug?x(M):x(X,-1)})}t(Ze);var me=a(Ze,2);{var te=x=>{var T=ls(),G=r(T);{var R=re=>{je(re,{size:12,class:"animate-spin"})},ye=re=>{dr(re,{size:12})};i(G,re=>{e(Xe)===e(s).slug?re(R):re(ye,-1)})}t(T),c((re,nt)=>{Q(T,"aria-label",re),Q(T,"title",nt),T.disabled=e(Xe)===e(s).slug},[()=>d.t("ADMIN_NEXT.DELETE"),()=>d.t("ADMIN_NEXT.DELETE")]),ne("click",T,re=>vt(e(s),re)),n(x,T)};i(me,x=>{e(he)&&x(te)})}t(g),c(x=>{xe(g,1,`flex w-full items-center gap-3 border-b border-border px-4 py-3 text-start transition-colors
|
|
${e(Ue)===e(s).slug?"bg-accent":"hover:bg-muted/50"}`),xe(z,1,`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg ${e(s).enabled?"bg-primary/10 text-primary":"bg-muted text-muted-foreground"}`),l(Xt,e(s).name),l(Nt,x),xe(Ze,1,`shrink-0 rounded-full px-2.5 py-0.5 text-[0.625rem] font-medium transition-colors
|
|
${e(s).enabled?"bg-green-500/15 text-green-600 hover:bg-green-500/25 dark:text-green-400":"bg-muted text-muted-foreground hover:bg-muted/80"}`),Ze.disabled=e(Ce)===e(s).slug||!e(he)},[()=>Lr(e(s))]),ne("click",g,()=>ot(e(s).slug)),ne("dblclick",g,()=>$e(e(s).slug)),ne("click",Ze,x=>ue(e(s),x)),n(S,g)});var Ve=a(_e,2);{var Fe=S=>{var s=us(),g=r(s,!0);t(s),c(()=>l(g,e(Le)?"No plugins match your search":"No plugins installed")),n(S,s)};i(Ve,S=>{e(y).length===0&&S(Fe)})}t(De);var Je=a(De,2),Ke=r(Je);{var Et=S=>{var s=ws(),g=r(s),z=r(g),ie=r(z);{var Ye=p=>{var E=cs();c(P=>xe(E,1,`${P??""} text-2xl`),[()=>Ft(e(u).icon)]),n(p,E)},O=p=>{jt(p,{size:28})};i(ie,p=>{e(u).icon?p(Ye):p(O,-1)})}t(z);var Ee=a(z,2),Te=r(Ee),Qe=r(Te),Xt=r(Qe,!0);t(Qe);var mt=a(Qe,2);{var It=p=>{Ht(p,{size:18,class:"shrink-0 text-purple-500"})},zt=V(()=>Kt(e(u).author));i(mt,p=>{e(zt)&&p(It)})}var ft=a(mt,2);{var Ot=p=>{var E=_s(),P=r(E);{let $=V(()=>d.t("ADMIN_NEXT.PLUGINS.SYMLINKED"));nr(P,{size:14,class:"text-muted-foreground/60",get"aria-label"(){return e($)}})}t(E),c($=>Q(E,"title",$),[()=>d.t("ADMIN_NEXT.PLUGINS.SYMLINKED")]),n(p,E)};i(ft,p=>{e(u).is_symlink&&p(Ot)})}var Ct=a(ft,2);{var St=p=>{var E=ms(),P=r(E,!0);t(E),c($=>l(P,$),[()=>d.t("ADMIN_NEXT.PREMIUM")]),n(p,E)};i(Ct,p=>{e(u).premium&&p(St)})}t(Te);var ht=a(Te,2),Nt=r(ht),Dt=r(Nt);t(Nt);var yt=a(Nt,2);{var Ze=p=>{var E=fs(),P=r(E);t(E),c(()=>l(P,`by ${e(u).author.name??""}`)),n(p,E)};i(yt,p=>{e(u).author?.name&&p(Ze)})}var A=a(yt,2);{var M=p=>{var E=xs(),P=r(E,!0);t(E),c($=>l(P,$),[()=>d.t("ADMIN_NEXT.UPDATE_AVAILABLE_VERSION",{version:e(u).available_version})]),n(p,E)};i(A,p=>{e(u).updatable&&p(M)})}t(ht),t(Ee);var X=a(Ee,2),me=r(X);{var te=p=>{{let E=V(()=>e(at)===e(u).slug||e(Me));xt(p,{variant:"outline",size:"sm",onclick:P=>lt(e(u),P),get disabled(){return e(E)},children:(P,$)=>{var J=ps(),L=oe(J);{var F=se=>{je(se,{size:14,class:"me-1.5 animate-spin"})},le=se=>{Vt(se,{size:14,class:"me-1.5"})};i(L,se=>{e(at)===e(u).slug?se(F):se(le,-1)})}var ae=a(L);c(se=>l(ae,` ${se??""}`),[()=>d.t("ADMIN_NEXT.UPDATE_TO_VERSION",{version:e(u).available_version})]),n(P,J)},$$slots:{default:!0}})}};i(me,p=>{e(u).updatable&&e(he)&&p(te)})}var x=a(me,2);{var T=p=>{var E=gs(),P=r(E);{var $=L=>{je(L,{size:14,class:"animate-spin"})},J=L=>{dr(L,{size:14})};i(P,L=>{e(Xe)===e(u).slug?L($):L(J,-1)})}t(E),c((L,F)=>{Q(E,"aria-label",L),Q(E,"title",F),E.disabled=e(Xe)===e(u).slug},[()=>d.t("ADMIN_NEXT.DELETE"),()=>d.t("ADMIN_NEXT.DELETE")]),ne("click",E,L=>vt(e(u),L)),n(p,E)};i(x,p=>{e(he)&&p(T)})}var G=a(x,2),R=r(G),ye=a(R);na(ye,{name:"chevron-forward",size:14}),t(G),t(X),t(g);var re=a(g,2);{var nt=p=>{var E=tt(),P=oe(E);{var $=L=>{var F=bs();Dr(F,()=>e(u).description_html,!0),t(F),n(L,F)},J=L=>{var F=Es(),le=r(F,!0);t(F),c(()=>l(le,e(u).description)),n(L,F)};i(P,L=>{e(u).description_html?L($):L(J,-1)})}n(p,E)};i(re,p=>{e(u).description&&p(nt)})}var dt=a(re,2),et=r(dt);{var Gt=p=>{var E=Ns(),P=r(E),$=r(P,!0);t(P);var J=a(P,2),L=r(J);{var F=ae=>{var se=hs(),Lt=r(se),Rt=a(Lt);Zt(Rt,{size:10,class:"inline"}),t(se),c(()=>{Q(se,"href",e(u).author.url),l(Lt,`${e(u).author.name??""} `)}),n(ae,se)},le=ae=>{var se=qt();c(()=>l(se,e(u).author.name)),n(ae,se)};i(L,ae=>{e(u).author.url?ae(F):ae(le,-1)})}t(J),t(E),c(ae=>l($,ae),[()=>d.t("ADMIN_NEXT.AUTHOR")]),n(p,E)};i(et,p=>{e(u).author?.name&&p(Gt)})}var ur=a(et,2);{var Pr=p=>{var E=As(),P=r(E),$=r(P,!0);t(P);var J=a(P,2),L=r(J),F=a(r(L));Zt(F,{size:10,class:"inline"}),t(L),t(J),t(E),c(le=>{l($,le),Q(L,"href",e(u).homepage)},[()=>d.t("ADMIN_NEXT.HOMEPAGE")]),n(p,E)};i(ur,p=>{e(u).homepage&&p(Pr)})}var er=a(ur,2),tr=r(er),wr=r(tr,!0);t(tr);var cr=a(tr,2),rr=r(cr),kr=r(rr,!0);t(rr),t(cr),t(er);var _r=a(er,2),mr=a(r(_r),2),Ur=r(mr,!0);t(mr),t(_r),t(dt);var fr=a(dt,2);{var Xr=p=>{var E=Is(),P=r(E),$=r(P,!0);t(P);var J=a(P,2);We(J,21,()=>Pt(e(u).keywords),pt,(L,F)=>{var le=Ts(),ae=r(le,!0);t(le),c(()=>l(ae,e(F))),n(L,le)}),t(J),t(E),c(L=>l($,L),[()=>d.t("ADMIN_NEXT.KEYWORDS")]),n(p,E)},zr=V(()=>Pt(e(u).keywords).length);i(fr,p=>{e(zr)&&p(Xr)})}var xr=a(fr,2);{var Or=p=>{var E=ys(),P=r(E),$=r(P,!0);t(P);var J=a(P,2);We(J,21,()=>Jt(e(u).compatibility),pt,(L,F)=>{var le=Ds(),ae=r(le),se=r(ae,!0);t(ae);var Lt=a(ae,2);We(Lt,17,()=>e(F).values,pt,(Rt,Bt)=>{var At=Ss(),ar=r(At,!0);t(At),c(()=>l(ar,e(Bt))),n(Rt,At)}),t(le),c(()=>l(se,e(F).label)),n(L,le)}),t(J),t(E),c(L=>l($,L),[()=>d.t("ADMIN_NEXT.COMPATIBILITY")]),n(p,E)},Cr=V(()=>Jt(e(u).compatibility).length);i(xr,p=>{e(Cr)&&p(Or)})}var Gr=a(xr,2);{var Rr=p=>{var E=Ps(),P=r(E),$=r(P,!0);t(P);var J=a(P,2);We(J,21,()=>Qt(e(u).dependencies),pt,(L,F)=>{var le=Ms(),ae=r(le),se=r(ae,!0);t(ae);var Lt=a(ae,2);{var Rt=Bt=>{var At=Ls(),ar=r(At,!0);t(At),c(()=>l(ar,e(F).version)),n(Bt,At)};i(Lt,Bt=>{e(F).version&&Bt(Rt)})}t(le),c(()=>l(se,e(F).name)),n(L,le)}),t(J),t(E),c(L=>l($,L),[()=>d.t("ADMIN_NEXT.DEPENDENCIES")]),n(p,E)},Br=V(()=>Qt(e(u).dependencies).length);i(Gr,p=>{e(Br)&&p(Rr)})}t(s),c((p,E)=>{xe(z,1,`flex h-14 w-14 shrink-0 items-center justify-center rounded-xl ${e(u).enabled?"bg-primary/10 text-primary":"bg-muted text-muted-foreground"}`),l(Xt,e(u).name),l(Dt,`v${e(u).version??""}`),l(R,`${p??""} `),l(wr,E),xe(rr,1,`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium
|
|
${e(u).enabled?"bg-green-500/15 text-green-600 dark:text-green-400":"bg-muted text-muted-foreground"}`),l(kr,e(u).enabled?"Enabled":"Disabled"),l(Ur,e(u).slug)},[()=>d.t("ADMIN_NEXT.PLUGINS.CONFIGURE"),()=>d.t("ADMIN_NEXT.PAGES.HEADER_STATUS")]),ne("click",G,()=>$e(e(u).slug)),n(S,s)},_t=S=>{var s=ks(),g=r(s,!0);t(s),c(z=>l(g,z),[()=>d.t("ADMIN_NEXT.PLUGINS.SELECT_A_PLUGIN_TO_VIEW_DETAILS")]),n(S,s)};i(Ke,S=>{e(u)?S(Et):S(_t,-1)})}t(Je),t(q),n(W,q)};i(Ae,W=>{Mt.pluginsViewMode==="table"?W(be):W(ee,-1)})}c((W,q,De,_e,Ve,Fe,Je)=>{Q(ce,"placeholder",W),ge.disabled=Mt.pluginsViewMode==="table",l(qe,q),l(ke,De),xe(N,1,`inline-flex h-8 items-center gap-1.5 px-3 text-[0.75rem] font-medium transition-colors first:rounded-l-md last:rounded-r-md
|
|
${Mt.pluginsViewMode==="cards"?"bg-accent text-accent-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`),Q(N,"title",_e),l(Re,Ve),xe(ze,1,`inline-flex h-8 items-center gap-1.5 px-3 text-[0.75rem] font-medium transition-colors first:rounded-l-md last:rounded-r-md
|
|
${Mt.pluginsViewMode==="table"?"bg-accent text-accent-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`),Q(ze,"title",Fe),l(Ne,Je)},[()=>d.t("ADMIN_NEXT.PLUGINS.SEARCH_PLUGINS"),()=>d.t("ADMIN_NEXT.AUTHOR"),()=>d.t("ADMIN_NEXT.PAGES.HEADER_STATUS"),()=>d.t("ADMIN_NEXT.USERS_TABLE.CARDS"),()=>d.t("ADMIN_NEXT.USERS_TABLE.CARDS"),()=>d.t("ADMIN_NEXT.USERS_TABLE.TABLE"),()=>d.t("ADMIN_NEXT.USERS_TABLE.TABLE")]),yr(ce,()=>e(Le),W=>D(Le,W)),Wr(ge,()=>e(I),W=>D(I,W)),ne("click",N,()=>Mt.pluginsViewMode="cards"),ne("click",ze,()=>Mt.pluginsViewMode="table"),n(o,f)};i(Ut,o=>{e(Ie)?o(Y):o(h,-1)})}t(ct);var m=a(ct,2);Va(m,{get open(){return e(He)},get initialSearch(){return e(rt)},onclose:()=>{D(He,!1),D(rt,""),br.url.searchParams.has("install")&&pr(`${gr}/plugins`,{replaceState:!0})},oninstalled:ut}),n(wt,Tt),lr()}vr(["click","dblclick"]);export{go as component};
|