1import{G as D,R as ue}from"./group-DqHLD7t8.js";import{d as de,e as me,c as L,b as ce,ay as q,bN as ge,ag as z,dR as pe,L as $,dS as ve,g as b,i as m,n as v,o as i,j as s,h as d,l as e,a3 as p,k as h,w as r,ae as U,V as fe,W as be,t as o,s as l,b3 as _e,bp as k,b7 as _,bh as Pe,bi as ye,m as G,cl as H}from"./main-ClBra0b9.js";import{A as W}from"./ActorCard-CVnyEAZ0.js";import{_ as I}from"./EmptyContent.vue_vue_type_script_setup_true_lang-BSsK0oUt.js";import{u as Ee}from"./head-D61NCrDr.js";import{u as F,i as B}from"./index-CrR6G5xF.js";import"./resources-D7vWurZK.js";import"./post-CzYHNEo7.js";import"./Email-B_GZ9qki.js";const we={key:0,class:"section"},ke={key:0,class:"mx-auto max-w-sm block mb-2"},he={key:0,class:"table w-full"},Re={key:0},Ae={key:1},Ne={class:"flex gap-1"},Se={class:"flex gap-1"},xe={class:"flex-none"},De={key:0},Ie=["src"],Oe={class:"prose dark:prose-invert"},Te={class:"has-text-centered"},R=10,O=10,J=10,Qe=de({__name:"AdminGroupProfile",props:{id:{}},setup(T){const f=T,P=F("organizedEventsPage",1,B),w=F("membersPage",1,B),y=F("postsPage",1,B),{result:K,loading:A,fetchMore:C}=me(D,()=>({id:f.id,organizedEventsPage:P.value,organizedEventsLimit:R,postsPage:y.value,postsLimit:O,membersLimit:J,membersPage:w.value}),()=>({enabled:f.id!==void 0})),n=L(()=>K.value?.getGroup),{t:a}=ce({useScope:"global"});Ee({title:L(()=>q(n.value))});const V=L(()=>n.value?[{key:a("Status"),value:n.value.suspended?a("Suspended"):a("Active")},{key:a("Domain"),value:n.value.domain?n.value.domain:a("Local")},{key:a("Uploaded media size"),value:ge(n.value.mediaSize)}]:[]),X=$("dialog"),N=$("notifier"),Y=()=>{const u=n.value.domain?a("Are you sure you want to <b>suspend</b> this group? As this group originates from instance {instance}, this will only remove local members and delete the local data, as well as rejecting all the future data.",{instance:n.value.domain}):a("Are you sure you want to <b>suspend</b> this group? All members - including remote ones - will be notified and removed from the group, and <b>all of the group data (events, posts, discussions, todosâ¦) will be irretrievably destroyed</b>.");X?.confirm({title:a("Suspend group"),message:u,confirmText:a("Suspend group"),cancelText:a("Cancel"),variant:"danger",hasIcon:!0,onConfirm:()=>Z({id:f.id})})},{mutate:Z,onError:ee}=z(pe,()=>({update:(u,{data:c})=>{if(c==null)return;const S=f.id,g=u.readQuery({query:D,variables:{id:S,organizedEventsPage:P.value,organizedEventsLimit:R,postsPage:y.value,postsLimit:O}});g&&u.writeQuery({query:D,variables:{id:S},data:{getGroup:{...g.getGroup,suspended:!0,avatar:null,name:"",summary:""}}})}}));ee(u=>{console.error(u),N?.error(a("Error while suspending group"))});const{mutate:ae,onError:te}=z(ve,()=>({refetchQueries:[{query:D,variables:{id:f.id}}]}));te(u=>{console.error(u),N?.error(a("Error while suspending group"))});const{mutate:re,onDone:oe,onError:ne}=z(ue);oe(()=>{N?.success(a("Triggered profile refreshment"))}),ne(u=>{console.error(u),N?.error(a("Error while suspending group"))});const le=async u=>{P.value=u,await C({variables:{id:f.id,organizedEventsPage:P.value,organizedEventsLimit:R}})},ie=async u=>{w.value=u,await C({variables:{id:f.id,membersPage:w.value,membersLimit:R}})},se=async u=>{y.value=u,await C({variables:{id:f.id,postsPage:y.value,postsLimit:O}})};return(u,c)=>{const S=h("breadcrumbs-nav"),g=h("router-link"),x=h("o-button"),E=h("o-table-column"),M=h("o-table");return n.value?(i(),b("div",we,[s(S,{links:[{name:e(p).ADMIN,text:e(a)("Admin")},{name:e(p).ADMIN_GROUPS,text:e(a)("Groups")},{name:e(p).PROFILES,params:{id:n.value.id},text:e(q)(n.value)}]},null,8,["links"]),d("div",null,[n.value.suspended?(i(),b("p",ke,[s(W,{actor:n.value,full:!0,popover:!1,limit:!1},null,8,["actor"])])):(i(),m(g,{key:1,class:"mx-auto max-w-sm block mb-2",to:{name:e(p).GROUP,params:{preferredUsername:e(U)(n.value)}}},{default:r(()=>[s(W,{actor:n.value,full:!0,popover:!1,limit:!1},null,8,["actor"])]),_:1},8,["to"]))]),V.value.length>0?(i(),b("table",he,[d("tbody",null,[(i(!0),b(fe,null,be(V.value,({key:t,value:Q,link:j})=>(i(),b("tr",{key:t},[d("td",null,o(t),1),j?(i(),b("td",Re,[s(g,{to:j},{default:r(()=>[l(o(Q),1)]),_:2},1032,["to"])])):(i(),b("td",Ae,o(Q),1))]))),128))])])):v("",!0),d("div",Ne,[n.value.suspended?v("",!0):(i(),m(x,{key:0,onClick:Y,variant:"primary"},{default:r(()=>[l(o(e(a)("Suspend")),1)]),_:1})),n.value.suspended?(i(),m(x,{key:1,onClick:c[0]||(c[0]=t=>e(ae)({id:T.id})),variant:"primary"},{default:r(()=>[l(o(e(a)("Unsuspend")),1)]),_:1})):v("",!0),n.value.domain?(i(),m(x,{key:2,onClick:c[1]||(c[1]=t=>e(re)({actorId:T.id})),variant:"primary",outlined:""},{default:r(()=>[l(o(e(a)("Refresh profile")),1)]),_:1})):v("",!0)]),d("section",null,[d("h2",null,o(e(a)("{number} members",{number:n.value.members.total},n.value.members.total)),1),s(M,{data:n.value.members.elements,loading:e(A),paginated:"","backend-pagination":"","current-page":e(w),"onUpdate:currentPage":c[2]||(c[2]=t=>G(w)?w.value=t:null),"aria-next-label":e(a)("Next page"),"aria-previous-label":e(a)("Previous page"),"aria-page-label":e(a)("Page"),"aria-current-label":e(a)("Current page"),total:n.value.members.total,"per-page":J,onPageChange:ie},{empty:r(()=>[s(I,{icon:"account-group",inline:!0},{default:r(()=>[l(o(e(a)("No members found")),1)]),_:1})]),default:r(()=>[s(E,{field:"actor.preferredUsername",label:e(a)("Member")},{default:r(t=>[d("article",Se,[d("div",xe,[s(g,{class:"no-underline",to:{name:e(p).ADMIN_PROFILE,params:{id:t.row.actor.id}}},{default:r(()=>[t.row.actor.avatar?(i(),b("figure",De,[d("img",{class:"rounded",src:t.row.actor.avatar.url,alt:"",width:"48",height:"48"},null,8,Ie)])):(i(),m(_e,{key:1,size:48}))]),_:2},1032,["to"])]),d("div",null,[d("div",Oe,[t.row.actor.name?(i(),m(g,{key:0,class:"no-underline",to:{name:e(p).ADMIN_PROFILE,params:{id:t.row.actor.id}}},{default:r(()=>[l(o(t.row.actor.name),1)]),_:2},1032,["to"])):(i(),m(g,{key:1,class:"no-underline",to:{name:e(p).ADMIN_PROFILE,params:{id:t.row.actor.id}}},{default:r(()=>[l("@"+o(e(U)(t.row.actor)),1)]),_:2},1032,["to"])),c[5]||(c[5]=d("br",null,null,-1)),t.row.actor.name?(i(),m(g,{key:2,class:"no-underline",to:{name:e(p).ADMIN_PROFILE,params:{id:t.row.actor.id}}},{default:r(()=>[l("@"+o(e(U)(t.row.actor)),1)]),_:2},1032,["to"])):v("",!0)])])])]),_:1},8,["label"]),s(E,{field:"role",label:e(a)("Role")},{default:r(t=>[t.row.role===e(k).ADMINISTRATOR?(i(),m(_,{key:0,variant:"primary"},{default:r(()=>[l(o(e(a)("Administrator")),1)]),_:1})):t.row.role===e(k).MODERATOR?(i(),m(_,{key:1,variant:"primary"},{default:r(()=>[l(o(e(a)("Moderator")),1)]),_:1})):t.row.role===e(k).MEMBER?(i(),m(_,{key:2},{default:r(()=>[l(o(e(a)("Member")),1)]),_:1})):t.row.role===e(k).NOT_APPROVED?(i(),m(_,{key:3,variant:"warning"},{default:r(()=>[l(o(e(a)("Not approved")),1)]),_:1})):t.row.role===e(k).REJECTED?(i(),m(_,{key:4,variant:"danger"},{default:r(()=>[l(o(e(a)("Rejected")),1)]),_:1})):t.row.role===e(k).INVITED?(i(),m(_,{key:5,variant:"danger"},{default:r(()=>[l(o(e(a)("Invited")),1)]),_:1})):v("",!0)]),_:1},8,["label"]),s(E,{field:"insertedAt",label:e(a)("Date")},{default:r(t=>[d("span",Te,[l(o(e(Pe)(t.row.insertedAt)),1),c[6]||(c[6]=d("br",null,null,-1)),l(o(e(ye)(t.row.insertedAt)),1)])]),_:1},8,["label"])]),_:1},8,["data","loading","current-page","aria-next-label","aria-previous-label","aria-page-label","aria-current-label","total"])]),d("section",null,[d("h2",null,o(e(a)("{number} organized events",{number:n.value.organizedEvents.total},n.value.organizedEvents.total)),1),s(M,{data:n.value.organizedEvents.elements,loading:e(A),paginated:"","backend-pagination":"","current-page":e(P),"onUpdate:currentPage":c[3]||(c[3]=t=>G(P)?P.value=t:null),"aria-next-label":e(a)("Next page"),"aria-previous-label":e(a)("Previous page"),"aria-page-label":e(a)("Page"),"aria-current-label":e(a)("Current page"),total:n.value.organizedEvents.total,"per-page":R,onPageChange:le},{empty:r(()=>[s(I,{icon:"account-group",inline:!0},{default:r(()=>[l(o(e(a)("No organized events found")),1)]),_:1})]),default:r(()=>[s(E,{field:"title",label:e(a)("Title")},{default:r(t=>[s(g,{to:{name:e(p).EVENT,params:{uuid:t.row.uuid}}},{default:r(()=>[l(o(t.row.title)+" ",1),t.row.draft?(i(),m(_,{key:0,variant:"info"},{default:r(()=>[l(o(e(a)("Draft")),1)]),_:1})):v("",!0)]),_:2},1032,["to"])]),_:1},8,["label"]),s(E,{field:"beginsOn",label:e(a)("Begins on")},{default:r(t=>[l(o(e(H)(t.row.beginsOn)),1)]),_:1},8,["label"])]),_:1},8,["data","loading","current-page","aria-next-label","aria-previous-label","aria-page-label","aria-current-label","total"])]),d("section",null,[d("h2",null,o(e(a)("{number} posts",{number:n.value.posts.total},n.value.posts.total)),1),s(M,{data:n.value.posts.elements,loading:e(A),paginated:"","backend-pagination":"","current-page":e(y),"onUpdate:currentPage":c[4]||(c[4]=t=>G(y)?y.value=t:null),"aria-next-label":e(a)("Next page"),"aria-previous-label":e(a)("Previous page"),"aria-page-label":e(a)("Page"),"aria-current-label":e(a)("Current page"),total:n.value.posts.total,"per-page":O,onPageChange:se},{empty:r(()=>[s(I,{icon:"bullhorn",inline:!0},{default:r(()=>[l(o(e(a)("No posts found")),1)]),_:1})]),default:r(()=>[s(E,{field:"title",label:e(a)("Title")},{default:r(t=>[s(g,{to:{name:e(p).POST,params:{slug:t.row.slug}}},{default:r(()=>[l(o(t.row.title)+" ",1),t.row.draft?(i(),m(_,{key:0,variant:"info"},{default:r(()=>[l(o(e(a)("Draft")),1)]),_:1})):v("",!0)]),_:2},1032,["to"])]),_:1},8,["label"]),s(E,{field:"publishAt",label:e(a)("Publication date")},{default:r(t=>[l(o(e(H)(t.row.publishAt)),1)]),_:1},8,["label"])]),_:1},8,["data","loading","current-page","aria-next-label","aria-previous-label","aria-page-label","aria-current-label","total"])])])):e(A)?v("",!0):(i(),m(I,{key:1,icon:"account-multiple"},{desc:r(()=>[s(x,{variant:"text",tag:"router-link",to:{name:e(p).ADMIN_GROUPS}},{default:r(()=>[l(o(e(a)("Back to group list")),1)]),_:1},8,["to"])]),default:r(()=>[l(o(e(a)("This group was not found"))+" ",1)]),_:1}))}}});
1export{Qe as default}; 2//# sourceMappingURL=AdminGroupProfile-h5LeXYZK.js.map
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.