import"../chunks/DsnmJJEf.js";import{o as me}from"../chunks/DukJHxi2.js";import{p as Qt,d as r,s as o,g as t,r as e,t as S,a as c,b as Zt,i as V,j as N,h as j,e as Ct,f as lt,c as f,u as _e,k as fe,$ as pe}from"../chunks/krC2xWPP.js";import{d as te,s as v,a as G}from"../chunks/CddAxf8c.js";import{i as h}from"../chunks/DjsWWzyL.js";import{e as Vt,s as Et,t as zt,B as xe,r as ge,i as be}from"../chunks/Lvd_r9sp.js";import{h as Ee,s as ot}from"../chunks/j_DJpx8B.js";import{b as he}from"../chunks/ciapVzar.js";import{i as d,a as Wt,c as Ne}from"../chunks/Cu5ilWky.js";import{g as Kt}from"../chunks/BVTiZ3e2.js";import{b as Yt}from"../chunks/BSopV7IU.js";import{a as Se,d as Ae}from"../chunks/DRw0n_lJ.js";import{p as bt}from"../chunks/BzvfRedh.js";import{c as Te}from"../chunks/CuDfWLaU.js";import{S as De}from"../chunks/K87jKp17.js";import{C as Re}from"../chunks/CqW2kplp.js";import{D as Oe}from"../chunks/nlum2O0L.js";import{U as Ue}from"../chunks/Bf-u42YS.js";import{P as Ie}from"../chunks/mXADw150.js";import{T as Pe}from"../chunks/CSNyvbvN.js";import{A as Bt,a as jt}from"../chunks/CZyBFLho.js";import{P as we}from"../chunks/C1jLV8_5.js";import{L as Me}from"../chunks/C_E2vM9U.js";import{S as ye}from"../chunks/agE6NDSA.js";import{L as Ge}from"../chunks/tFcFjFQJ.js";import{T as Le}from"../chunks/CH2SFP9U.js";import{U as Jt}from"../chunks/DwS2ehmU.js";import{S as Xe}from"../chunks/BeCwQYrA.js";import{S as ke}from"../chunks/DyBzXF10.js";var Ce=f(' '),ze=f(' '),Be=f('
'),je=f(' '),Ve=f('');function He(Tt,L){Qt(L,!0);let P=V("groupname"),p=V("asc");function Y(a){t(P)===a?N(p,t(p)==="asc"?"desc":"asc",!0):(N(P,a,!0),N(p,"asc"))}const H=j(()=>{const a=[...L.groups];return a.sort((n,l)=>{const _=String(n[t(P)]??"").toLowerCase(),u=String(l[t(P)]??"").toLowerCase(),i=_.localeCompare(u);return t(p)==="asc"?i:-i}),a});var $=Ve(),w=r($),X=r(w),J=r(X),vt=r(J),Q=r(vt),T=r(Q),st=o(T);{var Dt=a=>{var n=Ct(),l=lt(n);{var _=i=>{Bt(i,{size:11})},u=i=>{jt(i,{size:11})};h(l,i=>{t(p)==="asc"?i(_):i(u,-1)})}c(a,n)};h(st,a=>{t(P)==="groupname"&&a(Dt)})}e(Q),e(vt);var ut=o(vt),F=r(ut),ht=r(F),Rt=o(ht);{var ct=a=>{var n=Ct(),l=lt(n);{var _=i=>{Bt(i,{size:11})},u=i=>{jt(i,{size:11})};h(l,i=>{t(p)==="asc"?i(_):i(u,-1)})}c(a,n)};h(Rt,a=>{t(P)==="readableName"&&a(ct)})}e(F),e(ut);var nt=o(ut),Z=r(nt),mt=r(Z),Nt=o(mt);{var Ot=a=>{var n=Ct(),l=lt(n);{var _=i=>{Bt(i,{size:11})},u=i=>{jt(i,{size:11})};h(l,i=>{t(p)==="asc"?i(_):i(u,-1)})}c(a,n)};h(Nt,a=>{t(P)==="description"&&a(Ot)})}e(Z),e(nt);var St=o(nt),Ut=r(St,!0);e(St),e(J),e(X);var At=o(X),s=r(At);Vt(s,17,()=>t(H),a=>a.groupname,(a,n)=>{var l=Be(),_=r(l),u=r(_),i=r(u,!0);e(u),e(_);var q=o(_),_t=r(q,!0);e(q);var M=o(q),dt=r(M,!0);e(M);var A=o(M),k=r(A),tt=r(k);{var W=g=>{var b=Ce(),C=r(b);Ie(C,{size:14}),e(b),S(K=>Et(b,"aria-label",K),[()=>d.t("ADMIN_NEXT.USERS_TABLE.EDIT")]),G("click",b,()=>L.onEdit(t(n).groupname)),c(g,b)};h(tt,g=>{L.canEdit&&g(W)})}var it=o(tt,2);{var D=g=>{var b=ze(),C=r(b);Pe(C,{size:14}),e(b),S(K=>Et(b,"aria-label",K),[()=>d.t("ADMIN_NEXT.USERS_TABLE.DELETE")]),G("click",b,()=>L.onDelete?.(t(n).groupname)),c(g,b)};h(it,g=>{L.canEdit&&L.onDelete&&g(D)})}e(k),e(A),e(l),S(()=>{v(i,t(n).groupname),v(_t,t(n).readableName||"—"),v(dt,t(n).description||"—")}),G("click",u,()=>L.onEdit(t(n).groupname)),c(a,l)});var m=o(s);{var x=a=>{var n=je(),l=r(n),_=r(l,!0);e(l),e(n),S(u=>v(_,u),[()=>d.t("ADMIN_NEXT.GROUPS.NO_GROUPS")]),c(a,n)};h(m,a=>{t(H).length===0&&a(x)})}e(At),e(w),e($),S((a,n,l,_)=>{v(T,`${a??""} `),v(ht,`${n??""} `),v(mt,`${l??""} `),v(Ut,_)},[()=>d.t("ADMIN_NEXT.GROUPS.GROUP_NAME"),()=>d.t("ADMIN_NEXT.GROUPS.DISPLAY_NAME"),()=>d.t("ADMIN_NEXT.GROUPS.DESCRIPTION"),()=>d.t("ADMIN_NEXT.USERS_TABLE.ACTIONS")]),G("click",Q,()=>Y("groupname")),G("click",F,()=>Y("readableName")),G("click",Z,()=>Y("description")),c(Tt,$),Zt()}te(["click"]);var $e=f('
'),Fe=f(" ",1),qe=f(""),We=f('
'),Ke=f('
'),Ye=f(''),Je=f('
'),Qe=f(' '),Ze=f('
'),tr=f(' '),er=f('
'),rr=f(''),ar=f('
'),or=f(''),sr=f(' ',1),nr=f('
',1);function Lr(Tt,L){Qt(L,!0);const P=j(()=>Ne.isSuperAdmin||Te("users"));let p=V(null),Y=V(!0),H=V(""),$=V(1),w=V(null),X=V(null),J=V(!1);const vt=20,Q=j(()=>{if(!t(p))return[];let s=t(p).groups;if(t(H)){const m=t(H).toLowerCase();s=s.filter(x=>x.groupname.toLowerCase().includes(m)||(x.readableName??"").toLowerCase().includes(m)||(x.description??"").toLowerCase().includes(m))}return s}),T=j(()=>t(w)?t(p)?.groups.find(s=>s.groupname===t(w))??null:null);async function st(s=1){N(Y,!0);try{N(p,await Se(s,vt),!0),N($,t(p).page,!0),!t(w)&&t(p).groups.length>0&&N(w,t(p).groups[0].groupname,!0)}catch{zt.error(d.t("ADMIN_NEXT.GROUPS.FAILED_TO_LOAD_GROUPS"))}finally{N(Y,!1)}}const Dt=()=>typeof window<"u"&&window.matchMedia("(min-width: 1024px)").matches;function ut(s){if(!Dt()){F(s);return}N(w,s,!0)}function F(s){Kt(`${Yt}/users/groups/${s}`)}function ht(s){N(X,s,!0),N(J,!0)}async function Rt(){const s=t(X);if(N(J,!1),N(X,null),!!s)try{await Ae(s),zt.success(d.t("ADMIN_NEXT.GROUPS.GROUP_DELETED",{name:s})),t(w)===s&&N(w,null),st(t($))}catch{zt.error(d.t("ADMIN_NEXT.GROUPS.GROUP_DELETE_FAILED",{name:s}))}}function ct(s,m=""){const x=[];for(const[a,n]of Object.entries(s)){const l=m?`${m}.${a}`:a;n===!0?x.push(l):n&&typeof n=="object"&&x.push(...ct(n,l))}return x}_e(()=>{st()}),me(()=>{const s=Wt.subscribe("groups:*",()=>st(t($))),m=Wt.subscribe("*:focus",()=>st(t($)));return()=>{s(),m()}});var nt=nr();Ee("1wdttiu",s=>{fe(m=>{pe.title=m??""},[()=>d.t("ADMIN_NEXT.GROUPS.GROUPS_GRAV_ADMIN")])});var Z=lt(nt),mt=r(Z);De(mt,{noBorder:!0,children:(m,x)=>{let a=()=>x?.().scrolled;var n=qe(),l=r(n),_=r(l),u=r(_),i=r(u,!0);e(u);var q=o(u,2);{var _t=A=>{var k=$e(),tt=r(k,!0);e(k),S(W=>v(tt,W),[()=>d.t(t(p).total===1?"ADMIN_NEXT.GROUPS.GROUP_COUNT_ONE":"ADMIN_NEXT.GROUPS.GROUP_COUNT_OTHER",{n:t(p).total})]),c(A,k)};h(q,A=>{!a()&&t(p)&&A(_t)})}e(_);var M=o(_,2);{var dt=A=>{xe(A,{size:"sm",onclick:()=>Kt(`${Yt}/users/groups/new`),children:(k,tt)=>{var W=Fe(),it=lt(W);we(it,{size:14});var D=o(it);S(g=>v(D,` ${g??""}`),[()=>d.t("ADMIN_NEXT.GROUPS.ADD_GROUP")]),c(k,W)},$$slots:{default:!0}})};h(M,A=>{t(P)&&A(dt)})}e(l),e(n),S(A=>{ot(n,1,`px-6 transition-[padding] duration-200 ${a()?"py-2":"pt-6 pb-3"}`),ot(l,1,`flex items-center justify-between ${a()?"min-h-6":"min-h-8"}`),ot(u,1,`font-semibold tracking-tight text-foreground transition-[font-size] duration-200 ${a()?"text-sm":"text-xl"}`),v(i,A)},[()=>d.t("ADMIN_NEXT.GROUPS.GROUPS")]),c(m,n)},$$slots:{default:!0}});var Nt=o(mt,2);Ue(Nt,{});var Ot=o(Nt,2);{var St=s=>{var m=We(),x=r(m);Me(x,{size:24,class:"animate-spin text-muted-foreground"}),e(m),c(s,m)},Ut=s=>{var m=sr(),x=lt(m),a=r(x),n=r(a);ye(n,{size:14,class:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"});var l=o(n,2);ge(l),e(a);var _=o(a,2),u=r(_),i=r(u);Ge(i,{size:14});var q=o(i,2),_t=r(q,!0);e(q),e(u);var M=o(u,2),dt=r(M);Le(dt,{size:14});var A=o(dt,2),k=r(A,!0);e(A),e(M),e(_),e(x);var tt=o(x,2);{var W=D=>{var g=Ke(),b=r(g);{let C=j(()=>t(P)?ht:void 0);He(b,{get groups(){return t(Q)},get canEdit(){return t(P)},onEdit:F,get onDelete(){return t(C)}})}e(g),c(D,g)},it=D=>{var g=or(),b=r(g),C=r(b),K=r(C);Vt(K,17,()=>t(Q),R=>R.groupname,(R,E)=>{var O=Ye(),y=r(O),It=r(y);Jt(It,{size:16,class:"text-muted-foreground"}),e(y);var et=o(y,2),rt=r(et),Pt=r(rt,!0);e(rt);var ft=o(rt,2),wt=r(ft,!0);e(ft),e(et);var Mt=o(et,2);{var yt=B=>{Xe(B,{size:14,class:"shrink-0 text-green-500/80"})},pt=B=>{ke(B,{size:14,class:"shrink-0 text-muted-foreground/60"})};h(Mt,B=>{t(E).enabled?B(yt):B(pt,-1)})}e(O),S(()=>{ot(O,1,`flex w-full items-center gap-3 border-b border-border px-4 py-3 text-start transition-colors
${t(w)===t(E).groupname?"bg-accent":"hover:bg-muted/50"}`),v(Pt,t(E).readableName||t(E).groupname),v(wt,t(E).groupname)}),G("click",O,()=>ut(t(E).groupname)),G("dblclick",O,()=>F(t(E).groupname)),c(R,O)});var ee=o(K,2);{var re=R=>{var E=Je(),O=r(E,!0);e(E),S(y=>v(O,y),[()=>t(H)?d.t("ADMIN_NEXT.GROUPS.NO_GROUPS_MATCH_SEARCH"):d.t("ADMIN_NEXT.GROUPS.NO_GROUPS")]),c(R,E)};h(ee,R=>{t(Q).length===0&&R(re)})}e(C),e(b);var Ht=o(b,2),ae=r(Ht);{var oe=R=>{var E=rr(),O=r(E),y=r(O),It=r(y);Jt(It,{size:24,class:"text-muted-foreground"}),e(y);var et=o(y,2),rt=r(et),Pt=r(rt,!0);e(rt);var ft=o(rt,2),wt=r(ft,!0);e(ft),e(et);var Mt=o(et,2);{var yt=I=>{var U=Qe(),z=r(U),xt=o(z);Oe(xt,{name:"chevron-forward",size:14}),e(U),S(at=>v(z,`${at??""} `),[()=>d.t("ADMIN_NEXT.EDIT")]),G("click",U,()=>F(t(T).groupname)),c(I,U)};h(Mt,I=>{t(P)&&I(yt)})}e(O);var pt=o(O,2),B=r(pt);{var ne=I=>{var U=Ze(),z=r(U),xt=r(z,!0);e(z);var at=o(z,2),gt=r(at,!0);e(at),e(U),S(Xt=>{v(xt,Xt),v(gt,t(T).description)},[()=>d.t("ADMIN_NEXT.GROUPS.DESCRIPTION")]),c(I,U)};h(B,I=>{t(T).description&&I(ne)})}var $t=o(B,2),Gt=r($t),de=r(Gt,!0);e(Gt);var Ft=o(Gt,2),Lt=r(Ft),ie=r(Lt,!0);e(Lt),e(Ft),e($t),e(pt);var le=o(pt,2);{var ve=I=>{var U=er(),z=r(U),xt=r(z,!0);e(z);var at=o(z,2);Vt(at,21,()=>ct(t(T).access??{}),be,(gt,Xt)=>{var kt=tr(),qt=r(kt),ce=r(qt,!0);e(qt),e(kt),S(()=>v(ce,t(Xt))),c(gt,kt)}),e(at),e(U),S(gt=>v(xt,gt),[()=>d.t("ADMIN_NEXT.USERS.PERMISSIONS")]),c(I,U)},ue=j(()=>ct(t(T).access??{}).length);h(le,I=>{t(ue)&&I(ve)})}e(E),S((I,U)=>{v(Pt,t(T).readableName||t(T).groupname),v(wt,t(T).groupname),v(de,I),ot(Lt,1,`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium
${t(T).enabled?"bg-green-500/15 text-green-600 dark:text-green-400":"bg-red-500/15 text-red-600 dark:text-red-400"}`),v(ie,U)},[()=>d.t("ADMIN_NEXT.PAGES.HEADER_STATUS"),()=>t(T).enabled?d.t("ADMIN_NEXT.USERS_TABLE.ENABLED"):d.t("ADMIN_NEXT.USERS_TABLE.DISABLED")]),c(R,E)},se=R=>{var E=ar(),O=r(E,!0);e(E),S(y=>v(O,y),[()=>d.t("ADMIN_NEXT.GROUPS.SELECT_A_GROUP_TO_VIEW_DETAILS")]),c(R,E)};h(ae,R=>{t(T)?R(oe):R(se,-1)})}e(Ht),e(g),c(D,g)};h(tt,D=>{bt.groupsViewMode==="table"?D(W):D(it,-1)})}S((D,g,b,C,K)=>{Et(l,"placeholder",D),ot(u,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
${bt.groupsViewMode==="cards"?"bg-accent text-accent-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`),Et(u,"title",g),v(_t,b),ot(M,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
${bt.groupsViewMode==="table"?"bg-accent text-accent-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`),Et(M,"title",C),v(k,K)},[()=>d.t("ADMIN_NEXT.GROUPS.SEARCH_GROUPS"),()=>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")]),he(l,()=>t(H),D=>N(H,D)),G("click",u,()=>bt.groupsViewMode="cards"),G("click",M,()=>bt.groupsViewMode="table"),c(s,m)};h(Ot,s=>{t(Y)?s(St):t(p)&&s(Ut,1)})}e(Z);var At=o(Z,2);{let s=j(()=>d.t("ADMIN_NEXT.GROUPS.DELETE_GROUP")),m=j(()=>t(X)?d.t("ADMIN_NEXT.GROUPS.CONFIRM_DELETE_GROUP",{name:t(X)}):""),x=j(()=>d.t("ADMIN_NEXT.DELETE"));Re(At,{get open(){return t(J)},get title(){return t(s)},get message(){return t(m)},get confirmLabel(){return t(x)},variant:"destructive",onconfirm:Rt,oncancel:()=>{N(J,!1),N(X,null)}})}c(Tt,nt),Zt()}te(["click","dblclick"]);export{Lr as component};