mirror of
https://github.com/donaldzou/WGDashboard.git
synced 2025-10-03 07:46:18 +00:00
2 lines
6.9 KiB
JavaScript
2 lines
6.9 KiB
JavaScript
![]() |
import{L as g}from"./localeText-C3GiyveB.js";import{q as S,c as l,a as n,b as e,t as v,F as y,i as $,u as _,n as f,d,r as k,J as G,m as E,y as I,j as N,e as w,_ as D,w as P,T as L,I as A}from"./index-BQYwwrw6.js";import{D as C}from"./DashboardClientAssignmentStore-C6unIiM-.js";const B={class:"d-flex flex-column gap-2"},M={class:"mb-0"},T={key:0,class:"d-flex flex-column gap-2"},V={class:"bg-body-secondary rounded-3 text-start p-2 d-flex"},j={class:"d-flex flex-column"},U={class:"mb-0"},F={class:"text-muted"},O=["onClick"],q={key:0,class:"spinner-border spinner-border-sm"},z={key:1,class:"bi bi-plus-circle-fill"},J={key:1},H={class:"text-muted"},K={__name:"searchClientsGroup",props:["group","groupName","searchString"],emits:["count","assign"],setup(r,{emit:p}){const i=r,t=p,a=C(),m=S(()=>{let s=i.group.filter(u=>!a.assignments.map(o=>o.Client.ClientID).includes(u.ClientID));if(i.searchString){let u=s.filter(o=>o.Name&&o.Name.includes(i.searchString)||o.Email&&o.Email.includes(i.searchString));return t("count",u.length),u}return t("count",s.length),s});return(s,u)=>(n(),l("div",B,[e("h6",M,[e("small",null,v(r.groupName),1)]),m.value.length>0?(n(),l("div",T,[(n(!0),l(y,null,$(m.value,o=>(n(),l("div",V,[e("div",j,[e("small",U,v(o.Email),1),e("small",F,v(o.Name?o.Name:"No Name"),1)]),e("button",{onClick:c=>t("assign",o.ClientID),class:f([{disabled:_(a).assigning},"btn bg-success-subtle text-success-emphasis ms-auto"])},[_(a).assigning===o.ClientID?(n(),l("span",q)):(n(),l("i",z))],10,O)]))),256))])):(n(),l("div",J,[e("small",H,[d(g,{t:"No result"})])]))]))}},Q={class:"p-3 bg-body-tertiary rounded-3 position-relative"},R={for:"SearchClient",class:"form-label"},W={class:"text-muted"},X={class:"w-100 rounded-3 d-flex flex-column gap-2"},Y={class:"mt-1"},Z=["onClick"],ee={class:"p-3 border rounded-3 d-flex flex-column gap-2 overflow-y-scroll",style:{height:"400px"}},se={__name:"searchClients",props:["clients","newAssignClients","assignments"],emits:["assign"],setup(r,{emit:p}){const i=C(),t=k(""),a=k(""),m=S(()=>t.value?{[t.value]:i.clients[t.value]}:i.clients),s=G({});Object.keys(i.clients).forEach(o=>s[o]=i.clients[o].length);const u=p;return(o,c)=>(n(),l("div",Q,[e("h6",null,[d(g,{t:"Assign to Clients"})]),e("label",R,[e("small",W,[d(g,{t:"Enter Email or Name to Search"})])]),E(e("input",{class:"form-control rounded-3 mb-2",id:"SearchClient","onUpdate:modelValue":c[0]||(c[0]=b=>a.value=b),type:"email"},null,512),[[I,a.value]]),e("div",X,[e("div",null,[c[3]||(c[3]=e("small",{class:"text-muted"},"Groups",-1)),e("div",Y,[e("button",{class:f([{active:!t.value},"btn bg-primary-subtle text-primary-emphasis btn-sm me-2 rounded-3"]),onClick:c[1]||(c[1]=b=>t.value="")},[d(g,{t:"All"})],2),(n(!0),l(y,null,$(_(i).clients,(b,h)=>(n(),l("button",{onClick:x=>t.value=h,class:f([{active:t.value===h},"btn bg-primary-subtle text-primary-emphasis btn-sm me-2 rounded-3"])},[d(g,{t:h},null,8,["t"]),e("span",{class:f(["ms-1 badge",[s[h]>0?"bg-primary":"bg-secondary"]])},v(s[h]),3)],10,Z))),256))])]),e("div",ee,[(n(!0),l(y,null,$(m.value,(b,h)=>(n(),N(K,{onAssign:c[2]||(c[2]=x=>u("assign",x)),onCount:x=>s[h]=x,searchString:a.value,group:b,groupName:h},null,8,["onCount","searchString","group","groupName"]))),256))])])]))}},te={class:"bg-body-secondary rounded-3 text-start p-2 mb-2 assignment"},ne={key:0,class:"d-flex"},ie={class:"d-flex flex-column"},le={class:"text-muted"},ae={key:1,class:"d-flex gap-2"},oe={class:"d-flex flex-column"},re={class:"text-muted"},ce={key:0,class:"spinner-border spinner-border-sm"},de={key:1,class:"bi bi-check-lg"},ue={__name:"assignment",props:["assignment"],emits:["unassign"],setup(r,{emit:p}){const i=p,t=k(!1),a=C();return(m,s)=>(n(),l("div",te,[t.value?(n(),l("div",ae,[e("div",oe,[e("small",null,[d(g,{t:"Are you sure to delete assignment for"})]),e("small",re,[d(g,{t:r.assignment.Client.Email+" in group "+(r.assignment.Client.ClientGroup?r.assignment.Client.ClientGroup:"Local")+"?"},null,8,["t"])])]),e("button",{onClick:s[1]||(s[1]=u=>i("unassign")),"aria-label":"Delete Assignment",class:f([{disabled:_(a).unassignin
|