var f=(I,g,i)=>new Promise((M,u)=>{var t=s=>{try{a(i.next(s))}catch(l){u(l)}},n=s=>{try{a(i.throw(s))}catch(l){u(l)}},a=s=>s.done?M(s.value):Promise.resolve(s.value).then(t,n);a((i=i.apply(I,g)).next())});import{B as P}from"./index-BDvqZ5j4.js";import{u as $,s as R,F as q,aB as K,aG as O,aH as Q,bL as T,v as W,cZ as Z,eW as j,au as J}from"./index-X7Y8jykP.js";import{a as X}from"./useModal-DaJ3Bflg.js";import"./index-DSsDi_fL.js";import{v as Y,C as ee}from"./Group-UHkub2tu.js";import{A as se}from"./index-B4gPlWQt.js";import{e as oe,y as S,z as b,A as c,B as re,u as A,f as m,r as p,Q as y,H as ae,C as B,F as te,D as ne,c as le,E as ce,G as C}from"./vue-vendor-DNhG1Cve.js";import"./BasicModal-xH56XuRZ.js";import"./ModalHeader-Sr8KwhJJ.js";import"./useTimeout-D5AmIBZw.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";import"./index-BzChaRPg.js";import"./useWindowSizeFn-C-0M9_Ul.js";import"./index-ByCwbQDV.js";import"./index-Upeu4GGa.js";import"./index-C4wWpZeQ.js";import"./index-M9QP6cvf.js";import"./Skeleton-CimgOdM7.js";import"./useScrollTo-0FPEw5-K.js";import"./useIntersectionObserver-BGOgyKyu.js";import"./useAppInject-DPZGPcR3.js";import"./index-CuWaQdlK.js";import"./index-DO7ZhK45.js";import"./Checkbox-Dbxs4we4.js";import"./index-BuONesFs.js";import"./eagerComputed-BTlOruLW.js";const me={class:"member-list"},ie={class:"member-info"},ue={class:"member-name"},pe=oe({name:"ImGroupAddMemberModal",__name:"ImGroupAddMemberModal",emits:["success"],setup(I,{emit:g}){const i=$(),M=g,{createMessage:u}=R(),t=p(""),n=p([]),a=p([]),s=p(!1),l=p(""),w=p([]),k=le(()=>{const e=t.value.trim().toLowerCase();return e?a.value.filter(r=>`${r.realname||""}${r.username||""}`.toLowerCase().includes(e)):a.value});function U(e){var _;const r=((_=i.getUserInfo)==null?void 0:_.id)||"",d=new Set([r,...w.value]);return e.filter(v=>v.id&&!d.has(v.id))}const[L,{setModalProps:h,closeModal:G}]=X(e=>f(null,null,function*(){t.value="",n.value=[],l.value=(e==null?void 0:e.conversationId)||"",w.value=(e==null?void 0:e.existMemberIds)||[],h({confirmLoading:!1}),a.value=[],yield x()}));function F(e){return e?W(e):""}function x(){return f(this,null,function*(){s.value=!0;try{const e=(yield Z(t.value||void 0))||[];a.value=U(e)}catch(e){u.error("加载同事列表失败,请稍后重试")}finally{s.value=!1}})}function N(){return f(this,null,function*(){if(l.value){if(!n.value.length){u.warning("请至少选择1名同事");return}h({confirmLoading:!0});try{yield j({conversationId:l.value,memberUserIds:n.value}),u.success("添加成功"),M("success"),G()}finally{h({confirmLoading:!1})}}})}return(e,r)=>{const d=O,_=se,v=ee,V=Y,z=T,D=Q,E=K,H=q;return b(),S(A(P),re(e.$attrs,{title:"添加群成员",width:520,onRegister:A(L),onOk:N}),{default:c(()=>[m(H,{layout:"vertical"},{default:c(()=>[m(E,{label:"选择成员",required:""},{default:c(()=>[m(d,{value:t.value,"onUpdate:value":r[0]||(r[0]=o=>t.value=o),placeholder:"搜索同事","allow-clear":"",size:"small",class:"member-search",onPressEnter:x},null,8,["value"]),m(D,{spinning:s.value},{default:c(()=>[y("div",me,[m(V,{value:n.value,"onUpdate:value":r[1]||(r[1]=o=>n.value=o),class:"member-checkbox-group"},{default:c(()=>[(b(!0),B(te,null,ne(k.value,o=>(b(),B("div",{key:o.id,class:"member-row"},[m(v,{value:o.id},{default:c(()=>[y("div",ie,[m(_,{size:28,src:F(o.avatar)},{default:c(()=>[ce(C((o.realname||o.username||"?").slice(0,1)),1)]),_:2},1032,["src"]),y("span",ue,C(o.realname||o.username),1)])]),_:2},1032,["value"])]))),128))]),_:1},8,["value"]),k.value.length?ae("",!0):(b(),S(z,{key:0,description:"暂无可添加的同事"}))])]),_:1},8,["spinning"])]),_:1})]),_:1})]),_:1},16,["onRegister"])}}}),Pe=J(pe,[["__scopeId","data-v-7e76ab4a"]]);export{Pe as default};