felicity-lims/felicity/templates/static/assets/Permissions-fad087fe.js
2024-11-17 19:39:30 +02:00

1 line
2.5 KiB
JavaScript

import{d as v,aK as P,x as p,o,c as i,b as s,F as a,E as l,t as u,g as k,f as U,j as A,_ as G,bG as E,M as D,k as S}from"./index-e62f5c21.js";const V={class:"overflow-x-auto mt-4"},B={class:"align-middle inline-block min-w-full shadow overflow-hidden bg-white shadow-dashboard px-2 pt-1 rounded-bl-lg rounded-br-lg"},z={class:"relative"},C={class:"min-w-full"},F=s("th",{class:"sticky top-0 z-10 bg-white px-1 py-1 border-b-2 border-gray-300 text-left text-sm leading-4 text-gray-800 tracking-wider"}," Permissions ",-1),M=s("th",{class:"sticky top-0 z-10 bg-white px-1 py-1 border-b-2 border-gray-300"},null,-1),O={class:"flex-1 overflow-y-auto max-h-[700px]"},R={class:"min-w-full"},T={class:"bg-white"},j={class:"bg-slate-100"},L={class:"py-1 font-bold px-1 text-gray-600"},N={class:"py-1 font-sm italic text-gray-500 px-1"},I=v({__name:"Permissions",setup(K){const h=A(()=>G(()=>import("./FelSwitch-dccbbb28.js"),["assets/FelSwitch-dccbbb28.js","assets/index-e62f5c21.js","assets/index-332ec99e.css"]));let d=P();const{withClientMutation:f}=D();d.fetchGroupsAndPermissions();const c=p(()=>d.getGroups);function m(r,n){return r?.permissions?.some(e=>e?.uid===n?.uid)??!1}const b=(r,n)=>r?.reduce(function(e,t){return(e[t[n]]=e[t[n]]||[]).push(t),e},{}),y=p(()=>Array.from(Object.entries(b(d.getPermissions,"target"))));function g(r,n){f(E,{groupUid:r?.uid,permissionUid:n?.uid},"updateGroupPermissions").then(e=>d.updateGroupsAndPermissions(e))}function x(r,n,e){e!==m(r,n)&&g(r,n)}return(r,n)=>(o(),i("div",V,[s("div",B,[s("div",z,[s("table",C,[s("thead",null,[s("tr",null,[F,(o(!0),i(a,null,l(c.value,e=>(o(),i("th",{key:e.uid,class:"sticky top-0 z-10 bg-white px-1 py-1 border-b-2 border-gray-300 text-left text-sm leading-4 text-gray-800 tracking-wider"},u(e.name),1))),128)),M])])]),s("div",O,[s("table",R,[s("tbody",T,[(o(!0),i(a,null,l(y.value,e=>(o(),i(a,{key:e[0]},[s("tr",j,[s("td",L,u(e[0]),1),(o(!0),i(a,null,l(c.value,t=>(o(),i("td",{class:"py-1 font-medium px-1 text-slate-100",key:t.uid},u(t.name),1))),128))]),(o(!0),i(a,null,l(e[1],t=>(o(),i("tr",{key:t.uid,class:"border-b border-slate-200"},[s("td",N,u(t.action),1),(o(!0),i(a,null,l(c.value,_=>(o(),i("td",{key:_.uid,class:"px-1"},[k(U(h),{"model-value":m(_,t),"onUpdate:modelValue":w=>x(_,t,w),reverse:""},null,8,["model-value","onUpdate:modelValue"])]))),128))]))),128))],64))),128))])])])])])]))}}),H=S(I,[["__file","/home/aurthurm/Documents/Development/felicity/felicity-lims/webapp/views/admin/users/Permissions.vue"]]);export{H as default};