2 lines
6.6 KiB
JavaScript
2 lines
6.6 KiB
JavaScript
import"../chunks/DsnmJJEf.js";import{o as ke}from"../chunks/DukJHxi2.js";import{p as Le,i,m as Z,f as L,a as v,b as Xe,k as we,o as Fe,j as a,g as e,c as _,h as p,s as l,$ as ze,d,r as u,t as A}from"../chunks/krC2xWPP.js";import{e as Be,s as G}from"../chunks/CddAxf8c.js";import{i as X}from"../chunks/DjsWWzyL.js";import{h as je,s as fe}from"../chunks/j_DJpx8B.js";import{i as o,c as Ce}from"../chunks/Cu5ilWky.js";import{p as Je}from"../chunks/euuZp6ft.js";import{g as me}from"../chunks/BVTiZ3e2.js";import{b as ve}from"../chunks/BSopV7IU.js";import{c as Ke}from"../chunks/CuDfWLaU.js";import{d as qe,g as Ve,u as He}from"../chunks/DRw0n_lJ.js";import{d as We}from"../chunks/Lyt-zgeV.js";import{a as pe,c as Ye,s as Qe,B as Ze,v as et,h as tt}from"../chunks/D7PIEGLR.js";import{P as rt}from"../chunks/DHzx-VDt.js";import{C as at}from"../chunks/CqW2kplp.js";import{A as st}from"../chunks/CsG_FdPZ.js";import{t as $,B as ee}from"../chunks/Lvd_r9sp.js";import{S as ot}from"../chunks/K87jKp17.js";import{D as it}from"../chunks/nlum2O0L.js";import{U as nt}from"../chunks/DwS2ehmU.js";import{T as lt}from"../chunks/CSNyvbvN.js";import{L as _e}from"../chunks/C_E2vM9U.js";import{S as dt}from"../chunks/CV_JZMCk.js";var ut=_('<p class="mt-0.5 truncate text-xs text-muted-foreground"> </p>'),ct=_("<!> ",1),ft=_("<!> ",1),mt=_("<!> ",1),vt=_("<!> <!>",1),pt=_('<div><div class="flex items-center gap-2 min-w-0"><!> <div class="min-w-0"><h1> </h1> <!></div></div> <div class="flex items-center gap-2"><!> <!></div></div>'),_t=_('<div class="flex flex-1 items-center justify-center"><!></div>'),gt=_('<div class="flex-1 overflow-y-auto"><div class="mx-auto max-w-3xl px-6 py-6 space-y-6"><!> <div class="rounded-lg border border-border bg-card p-4"><h2 class="mb-3 text-sm font-semibold text-foreground"> </h2> <!></div></div></div>'),Et=_('<div class="flex h-full flex-col"><!> <!></div>'),ht=_("<!> <!>",1);function Ct(ge,Ee){Le(Ee,!0);const he=p(()=>Ce.isSuperAdmin||Ke("users")),De=new Set(["permissions"]),c=p(()=>Je.params.name??"");let w=i(null),F=i(null),V=i(""),H=i(!0),I=i(!1),W=i(!1),z=i(!1),te=i(!1),g=i(Z({})),h=i(Z({})),re=i("{}"),T=i(Z({})),ae=i("{}");const se=p(()=>pe(e(g))!==e(re)||JSON.stringify(e(T))!==e(ae));function oe(t){return t.filter(r=>!De.has(r.type)).map(r=>r.fields?{...r,fields:oe(r.fields)}:r)}const D=p(()=>e(F)?{...e(F),fields:oe(e(F).fields)}:null);let Ne=p(()=>!e(D)||!tt(e(D).fields,e(g)));function ie(t){a(g,{groupname:t.groupname,readableName:t.readableName??"",description:t.description??"",icon:t.icon??"",enabled:t.enabled},!0),a(re,pe(e(g)),!0),a(T,structuredClone(t.access??{}),!0),a(ae,JSON.stringify(e(T)),!0)}async function xe(){a(H,!0);try{const[t,r]=await Promise.all([Ve(e(c)),We().catch(()=>null)]);a(w,t.group,!0),a(V,t.etag,!0),a(F,r,!0),ie(t.group)}catch(t){(t&&typeof t=="object"&&"status"in t?t.status:0)===403?a(te,!0):$.error(o.t("ADMIN_NEXT.GROUPS.FAILED_TO_LOAD_GROUP",{name:e(c)}))}finally{a(H,!1)}}function Oe(t,r){const E=t.split("."),U={...e(g)};let m=U;for(let n=0;n<E.length-1;n++){const s=E[n];typeof m[s]!="object"||m[s]===null?m[s]={}:m[s]={...m[s]},m=m[s]}m[E[E.length-1]]=r,a(g,U,!0);const B=e(D)?et(e(D).fields,t,U):null;if(B)a(h,{...e(h),[t]:B},!0);else if(e(h)[t]){const{[t]:n,...s}=e(h);a(h,s,!0)}}async function ne(){if(a(h,e(D)?Ye(e(D).fields,e(g)):{},!0),Object.keys(e(h)).length>0){Qe();return}a(I,!0);try{const t={...e(g),access:e(T)};delete t.groupname;const r=await He(e(c),t,e(V));a(w,r.group,!0),a(V,r.etag,!0),ie(r.group),$.success(o.t("ADMIN_NEXT.GROUPS.GROUP_SAVED",{name:e(c)}))}catch(t){(t&&typeof t=="object"&&"status"in t?t.status:0)===409?$.error(o.t("ADMIN_NEXT.GROUPS.GROUP_MODIFIED_ELSEWHERE")):$.error(o.t("ADMIN_NEXT.GROUPS.FAILED_TO_SAVE_GROUP"))}finally{a(I,!1)}}async function Se(){a(z,!1),a(W,!0);try{await qe(e(c)),$.success(o.t("ADMIN_NEXT.GROUPS.GROUP_DELETED",{name:e(c)})),me(`${ve}/users/groups`)}catch{$.error(o.t("ADMIN_NEXT.GROUPS.GROUP_DELETE_FAILED",{name:e(c)}))}finally{a(W,!1)}}function be(t){(t.metaKey||t.ctrlKey)&&t.key==="s"&&(t.preventDefault(),e(se)&&!e(I)&&ne())}ke(()=>{xe()});var le=ht();je("hito1o",t=>{we(r=>{ze.title=r??""},[()=>o.t("ADMIN_NEXT.GROUPS.GROUP_PAGE_TITLE",{name:e(c)})])}),Be("keydown",Fe,be);var de=L(le);{var Pe=t=>{st(t,{})},ye=t=>{var r=Et(),E=d(r);ot(E,{children:(s,R)=>{let O=()=>R?.().scrolled;var S=pt(),b=d(S),j=d(b);{let f=p(()=>O()?16:20);nt(j,{get size(){return e(f)},class:"shrink-0 text-muted-foreground"})}var C=l(j,2),N=d(C),Re=d(N,!0);u(N);var Ae=l(N,2);{var Ge=f=>{var P=ut(),y=d(P,!0);u(P),A(()=>G(y,e(c))),v(f,P)};X(Ae,f=>{O()||f(Ge)})}u(C),u(b);var ue=l(b,2),ce=d(ue);ee(ce,{variant:"outline",size:"sm",onclick:()=>me(`${ve}/users/groups`),children:(f,P)=>{var y=ct(),J=L(y);it(J,{name:"chevron-back",size:14});var M=l(J);A(K=>G(M,` ${K??""}`),[()=>o.t("ADMIN_NEXT.GROUPS.BACK_TO_GROUPS")]),v(f,y)},$$slots:{default:!0}});var $e=l(ce,2);{var Ie=f=>{var P=vt(),y=L(P);ee(y,{variant:"outline",size:"sm",get disabled(){return e(W)},onclick:()=>a(z,!0),children:(M,K)=>{var Y=ft(),k=L(Y);lt(k,{size:14});var q=l(k);A(Q=>G(q,` ${Q??""}`),[()=>o.t("ADMIN_NEXT.DELETE")]),v(M,Y)},$$slots:{default:!0}});var J=l(y,2);{let M=p(()=>!e(se)||e(I)||!e(Ne));ee(J,{size:"sm",get disabled(){return e(M)},onclick:ne,children:(K,Y)=>{var k=mt(),q=L(k);{var Q=x=>{_e(x,{size:14,class:"animate-spin"})},Ue=x=>{dt(x,{size:14})};X(q,x=>{e(I)?x(Q):x(Ue,-1)})}var Me=l(q);A(x=>G(Me,` ${x??""}`),[()=>o.t("ADMIN_NEXT.SAVE")]),v(K,k)},$$slots:{default:!0}})}v(f,P)};X($e,f=>{e(he)&&f(Ie)})}u(ue),u(S),A(()=>{fe(S,1,`flex items-center justify-between px-6 transition-[padding] duration-200 ${O()?"py-2":"pt-6 pb-3"}`),fe(N,1,`truncate font-semibold tracking-tight text-foreground transition-[font-size] duration-200 ${O()?"text-sm":"text-xl"}`),G(Re,e(w)?.readableName||e(c))}),v(s,S)},$$slots:{default:!0}});var U=l(E,2);{var m=n=>{var s=_t(),R=d(s);_e(R,{size:24,class:"animate-spin text-muted-foreground"}),u(s),v(n,s)},B=n=>{var s=gt(),R=d(s),O=d(R);Ze(O,{get fields(){return e(D).fields},get data(){return e(g)},onchange:Oe,get errors(){return e(h)}});var S=l(O,2),b=d(S),j=d(b,!0);u(b);var C=l(b,2);rt(C,{get value(){return e(T)},onchange:N=>a(T,N,!0)}),u(S),u(R),u(s),A(N=>G(j,N),[()=>o.t("ADMIN_NEXT.USERS.PERMISSIONS")]),v(n,s)};X(U,n=>{e(H)?n(m):e(w)&&e(D)&&n(B,1)})}u(r),v(t,r)};X(de,t=>{e(te)?t(Pe):t(ye,-1)})}var Te=l(de,2);{let t=p(()=>o.t("ADMIN_NEXT.GROUPS.DELETE_GROUP")),r=p(()=>o.t("ADMIN_NEXT.GROUPS.CONFIRM_DELETE_GROUP",{name:e(c)})),E=p(()=>o.t("ADMIN_NEXT.DELETE"));at(Te,{get open(){return e(z)},get title(){return e(t)},get message(){return e(r)},get confirmLabel(){return e(E)},variant:"destructive",onconfirm:Se,oncancel:()=>{a(z,!1)}})}v(ge,le),Xe()}export{Ct as component};
|