Files
tk-mini-program/unpackage/dist/build/mp-weixin/TUIKit/components/TUIGroup/manage-group/index.js
pengxiaolong 8c70c2c850 优化页面
2025-06-09 23:02:05 +08:00

2 lines
12 KiB
JavaScript

"use strict";const e=require("../../../../common/vendor.js");require("../../../adapter-vue.js");const r=require("../../../../common/assets.js"),u=require("../../common/Toast/index.js"),a=require("../../../utils/env.js"),t=require("../server.js"),n=require("../../../utils/enableSampleTaskStatus.js"),o=require("../../common/Toast/type.js");Math||(p+v+f+d+m+c+i+l+s)();const l=()=>"../../common/MaskLayer/index.js",s=()=>"../../common/Dialog/index.js",i=()=>"../../common/Transfer/index.js",v=()=>"./manage-name.js",m=()=>"./manage-notification.js",f=()=>"./manage-member.js",d=()=>"./manage-profile.js",c=()=>"./manage-admin.js",p=()=>"../../common/Icon.js",T=e.defineComponent({__name:"index",props:{groupID:{type:String,default:""},groupCurrentTab:{type:String,default:""}},setup(l){const s=t.TUIGroupServer.getInstance(),i=s.constants,v=l,m=e.ref(void 0),f=e.ref(""),d=e.ref(""),c=e.ref(""),p=e.ref(!1),T=e.ref(""),I=e.ref({list:[]}),E=e.ref({}),R=e.ref({[e.qt.TYPES.GRP_WORK]:"好友工作群",[e.qt.TYPES.GRP_PUBLIC]:"陌生人社交群",[e.qt.TYPES.GRP_MEETING]:"临时会议群",[e.qt.TYPES.GRP_AVCHATROOM]:"直播群",[e.qt.TYPES.GRP_COMMUNITY]:"社群",[e.qt.TYPES.JOIN_OPTIONS_FREE_ACCESS]:"自由加入",[e.qt.TYPES.JOIN_OPTIONS_NEED_PERMISSION]:"需要验证",[e.qt.TYPES.JOIN_OPTIONS_DISABLE_APPLY]:"禁止加群"}),b=e.ref({admin:[],member:[],muteMember:[]}),G=e.ref([]),O=e.ref(""),P=e.ref(!1),g=e.ref(!1),_=e.ref([]),S=e.ref(!1),M=e.ref([]),h=e.ref([]),D=e.ref(),w=e.ref(""),U=e.ref("");e.onMounted((()=>{e.nextTick$1((()=>{m.value&&!a.isUniFrameWork&&e.O.listen({domRefs:m.value,handler:te})}))})),e.Jt.watch(e.o.GRP,{currentGroup:e=>{var r,u;e&&(D.value=e,w.value=null==(u=null==(r=D.value)?void 0:r.selfInfo)?void 0:u.role)},currentGroupMemberList:r=>{M.value=r,b.value={admin:[],member:[],muteMember:[]},Array.from(r).map((r=>{switch(null==r?void 0:r.role){case e.qt.TYPES.GRP_MBR_ROLE_ADMIN:b.value.admin.push(r);break;case e.qt.TYPES.GRP_MBR_ROLE_MEMBER:b.value.member.push(r)}return r}));const u=(new Date).getTime();b.value.muteMember=Array.from(r).filter((e=>1e3*(null==e?void 0:e.muteUntil)-u>0))}}),e.Jt.watch(e.o.CONV,{currentConversation:e=>{var r;U.value=null==(r=null==e?void 0:e.groupProfile)?void 0:r.groupID}}),e.watchEffect((()=>{const e=s.getOnCallParams(i.TUIGroup.SERVICE.METHOD.OPEN_GROUP_MANAGEMENT);T.value=(null==e?void 0:e.groupID)||U.value,f.value=v.groupCurrentTab}));const W=e.computed((()=>{let e="";switch(f.value){case"notification":e="群公告";break;case"member":case"profile":e="群成员";break;default:e="群管理"}return e})),k=e.computed((()=>{var r,u;return(null==(u=null==(r=D.value)?void 0:r.selfInfo)?void 0:u.role)===e.qt.TYPES.GRP_MBR_ROLE_OWNER})),y=e.computed((()=>{var r,u;return(null==(u=null==(r=D.value)?void 0:r.selfInfo)?void 0:u.role)===e.qt.TYPES.GRP_MBR_ROLE_OWNER})),$=e.computed((()=>{var r;return(null==(r=D.value)?void 0:r.type)===e.qt.TYPES.GRP_WORK})),q=e.computed((()=>!($.value||!k.value&&!y.value))),A=e.computed((()=>{var r;return!((null==(r=null==D?void 0:D.value)?void 0:r.type)===e.qt.TYPES.GRP_AVCHATROOM)})),C=async r=>{const{key:a,value:t}=r,n={groupID:D.value.groupID,[a]:t};e.es.updateGroupProfile(n).then((e=>{D.value=e.data.group,d.value=""})).catch((e=>{u.Toast({message:null==e?void 0:e.message,type:o.TOAST_TYPE.ERROR})}))},Y=e=>{f.value=e,d.value="","member"===f.value&&(c.value="remove"),f.value||(c.value="")},L=()=>{N()},N=async e=>{var r;_.value=[];let u=[];switch(e){case"add":g.value=!1,u=[...b.value.admin,...b.value.member].map((e=>e.userID)),G.value=(await j()).filter((e=>e.userID&&u.indexOf(e.userID)<0)),O.value="添加成员";break;case"remove":g.value=!1,G.value=M.value.filter((e=>{var r,u;return e.userID!==(null==(u=null==(r=null==D?void 0:D.value)?void 0:r.selfInfo)?void 0:u.userID)})),O.value="删除成员";break;case"addAdmin":g.value=!0,G.value=b.value.member,O.value="新增管理员";break;case"removeAdmin":g.value=!0,G.value=b.value.admin,O.value="移除管理员";break;case"changeOwner":g.value=!0,G.value=[...b.value.admin,...b.value.member],O.value="转让群组";break;case"addMute":g.value=!0,G.value=b.value.member,"Owner"===D.value.selfInfo.role&&(G.value=[...b.value.admin,...b.value.member]),G.value=null==(r=null==G?void 0:G.value)?void 0:r.filter((e=>{var r,u;return(null==(u=null==(r=null==b?void 0:b.value)?void 0:r.muteMember)?void 0:u.indexOf(e))<0})),O.value="新增禁言用户";break;case"removeMute":g.value=!0,G.value=b.value.muteMember,O.value="移除禁言用户"}e&&(c.value=e),p.value=!p.value},j=async()=>(await e.ts.getFriendList()).data.map((e=>null==e?void 0:e.profile)).filter((e=>!I.value.list.some((r=>r.userID===e.userID)))),B=e.computed((()=>{var r,u,a;const t=null==(u=null==(r=null==D?void 0:D.value)?void 0:r.selfInfo)?void 0:u.role,n=null==(a=null==D?void 0:D.value)?void 0:a.type;return t===e.qt.TYPES.GRP_MBR_ROLE_OWNER&&n!==e.qt.TYPES.GRP_WORK})),x=e.computed((()=>{var r;return(null==(r=null==D?void 0:D.value)?void 0:r.type)===e.qt.TYPES.GRP_WORK})),F=e.computed((()=>{var e,r;let u=3;return x.value||(u+=1),"Owner"!==(null==(r=null==(e=null==D?void 0:D.value)?void 0:e.selfInfo)?void 0:r.role)&&(u+=1),u})),H=e=>{E.value=e,Y("profile")},J=e=>{"remove"===c.value?(h.value=e,S.value=!S.value):X(e,c.value),p.value=!1},K=()=>{var r;a.isUniFrameWork?null==(r=e.i)||r.switchTab({url:"/TUIKit/components/TUIConversation/index"}):(te(),e.Xt.switchConversation())},V=r=>{C({key:"muteAllMembers",value:r}),r?(n.enableSampleTaskStatus("muteGroup"),u.Toast({message:e.Wt.t("TUIGroup.禁言设置成功"),type:o.TOAST_TYPE.SUCCESS})):u.Toast({message:e.Wt.t("TUIGroup.取消禁言成功"),type:o.TOAST_TYPE.SUCCESS})},z=async r=>{var a,t;let n={},l={};const s={groupID:T.value,userIDList:[r]};switch(c.value){case"add":try{l=await e.es.getGroupMemberProfile(s),G.value=G.value.filter((e=>{var r;return e.userID!==(null==(r=n.data[0])?void 0:r.userID)})),G.value=[...G.value,...n.data],(null==(a=null==l?void 0:l.data)?void 0:a.memberList.length)>0&&(G.value=G.value.map((e=>{var r;return e.userID===(null==(r=null==l?void 0:l.data)?void 0:r.memberList[0].userID)&&(e.isDisabled=!0),e})))}catch(i){const r=e.Wt.t("TUIGroup.该用户不存在");u.Toast({message:r,type:o.TOAST_TYPE.ERROR})}break;case"remove":try{if(n=await e.es.getGroupMemberProfile(s),0===n.data.memberList.length){const r=e.Wt.t("TUIGroup.该用户不在群组内");u.Toast({message:r,type:o.TOAST_TYPE.ERROR})}G.value=G.value.filter((e=>{var r,u;return e.userID!==(null==(u=null==(r=null==n?void 0:n.data)?void 0:r.memberList[0])?void 0:u.userID)})),(null==(t=null==n?void 0:n.data)?void 0:t.memberList.length)&&(G.value=[...G.value,...n.data.memberList])}catch(i){const r=e.Wt.t("TUIGroup.该用户不存在");u.Toast({message:r,type:o.TOAST_TYPE.ERROR})}}},X=(e,r)=>{const u=[];switch(e.map((e=>(u.push(e.userID),e))),r){case"add":Q(u);break;case"remove":ue(u);break;case"addAdmin":case"removeAdmin":re(e[0]);break;case"changeOwner":Z(u[0]);break;case"addMute":ee(u[0],"add");break;case"removeMute":ee(u[0],"remove")}},Q=async r=>{const u={groupID:T.value,userIDList:r};await e.es.addGroupMember(u)},Z=async r=>{const u={groupID:T.value,newOwnerID:r},a=await e.es.changeGroupOwner(u);D.value={},D.value=a.data.group},ee=async(r,u)=>{const a={groupID:T.value,userID:r,muteTime:"add"===u?2592e3:0};await e.es.setGroupMemberMuteTime(a)},re=async r=>{let u="";switch(r.role){case e.qt.TYPES.GRP_MBR_ROLE_ADMIN:u=e.qt.TYPES.GRP_MBR_ROLE_MEMBER;break;case e.qt.TYPES.GRP_MBR_ROLE_MEMBER:u=e.qt.TYPES.GRP_MBR_ROLE_ADMIN}const a={groupID:T.value,userID:r.userID,role:u};await e.es.setGroupMemberRole(a)},ue=async r=>{const u={groupID:T.value,userIDList:r,reason:""};await e.es.deleteGroupMember(u)},ae=()=>{f.value?Y(""):te()},te=()=>{e.Jt.update(e.o.GRP,"isShowManageComponent",!1);const r=s.getOnCallCallback(i.TUIGroup.SERVICE.METHOD.OPEN_GROUP_MANAGEMENT);r&&r()};return(t,l)=>e.e({a:!e.unref(a.isUniFrameWork)||"admin"===e.unref(f)},e.unref(a.isUniFrameWork)&&"admin"!==e.unref(f)?{}:{b:e.o$1(ae),c:e.p({file:e.unref(r.backIcon)}),d:e.t(e.unref(e.Wt).t(`TUIGroup.${e.unref(W)}`))},{e:!e.unref(f)||e.unref(a.isUniFrameWork)&&"admin"!=e.unref(f)},!e.unref(f)||e.unref(a.isUniFrameWork)&&"admin"!=e.unref(f)?e.e({f:e.o$1(C),g:e.p({isAuthor:e.unref(k)||e.unref(y)||e.unref($),data:e.unref(D)}),h:e.t(e.unref(e.Wt).t("TUIGroup.群成员")),i:e.t(e.unref(D).memberCount||e.unref(M).length),j:e.t(e.unref(e.Wt).t("TUIGroup.人")),k:e.p({file:e.unref(r.rightIcon)}),l:e.o$1((e=>Y("member"))),m:e.f(e.unref(M).slice(0,e.unref(F)),((r,u,a)=>({a:r.avatar||"https://web.sdk.qcloud.com/component/TUIKit/assets/avatar_21.png",b:e.o$1((e=>H(r)),u),c:e.t(r.nick||r.userID),d:u}))),n:e.unref(x)},e.unref(x)?{o:e.o$1((e=>N("add")))}:{},{p:"Owner"===e.unref(w)},"Owner"===e.unref(w)?{q:e.o$1((e=>N("remove")))}:{},{r:e.t(e.unref(e.Wt).t("TUIGroup.群公告")),s:e.t(e.unref(D).notification),t:e.p({file:e.unref(r.rightIcon)}),v:e.o$1((e=>Y("notification"))),w:(e.unref(y)||e.unref(k))&&e.unref(q)},(e.unref(y)||e.unref(k))&&e.unref(q)?{x:e.t(e.unref(e.Wt).t("TUIGroup.群管理")),y:e.p({file:e.unref(r.rightIcon)}),z:e.o$1((e=>Y("admin")))}:{},{A:e.t(e.unref(e.Wt).t("TUIGroup.群ID")),B:e.t(e.unref(T)),C:e.t(e.unref(e.Wt).t("TUIGroup.群头像")),D:e.unref(D).avatar||"https://web.sdk.qcloud.com/im/demo/TUIkit/web/img/constomer.svg",E:e.t(e.unref(e.Wt).t("TUIGroup.群类型")),F:e.t(e.unref(e.Wt).t(`TUIGroup.${e.unref(R)[e.unref(D).type]}`)),G:e.t(e.unref(e.Wt).t("TUIGroup.加群方式")),H:e.t(e.unref(e.Wt).t(`TUIGroup.${e.unref(R)[e.unref(D).joinOption]}`)),I:e.o$1((e=>d.value="")),J:"Owner"===e.unref(w)&&e.unref(M).length>1},"Owner"===e.unref(w)&&e.unref(M).length>1?{K:e.t(e.unref(e.Wt).t("TUIGroup.转让群组")),L:e.o$1((e=>N("changeOwner")))}:{},{M:e.unref(B)},e.unref(B)?{N:e.t(e.unref(e.Wt).t("TUIGroup.解散群聊")),O:e.o$1((r=>(async r=>{await e.es.dismissGroup(r.groupID),n.enableSampleTaskStatus("dismissGroup"),u.Toast({message:e.Wt.t("TUIGroup.群组解散成功"),type:o.TOAST_TYPE.SUCCESS}),K()})(e.unref(D))))}:{P:e.t(e.unref(e.Wt).t("TUIGroup.退出群组")),Q:e.o$1((r=>(async r=>{await e.es.quitGroup(r.groupID),K()})(e.unref(D))))}):{},{R:"member"===e.unref(f)},"member"===e.unref(f)?{S:e.o$1((r=>(async r=>{const u={groupID:T.value,count:100,offset:r&&"more"===r?I.value.list.length:0};await e.es.getGroupMemberList(u).then((e=>{I.value.list=r&&"more"===r?[...I.value.list,...e.data.memberList]:e.data.memberList}))})("more"))),T:e.o$1(J),U:e.o$1(H),V:e.o$1((e=>Y(""))),W:e.p({self:e.unref(D).selfInfo,list:e.unref(M),total:~~e.unref(D).memberCount,isShowDel:"Owner"===e.unref(w)&&e.unref(A)})}:{},{X:"profile"===e.unref(f)},"profile"===e.unref(f)?{Y:e.o$1((e=>Y(""))),Z:e.p({userInfo:e.unref(E)})}:{},{aa:"notification"===e.unref(f)},"notification"===e.unref(f)?{ab:e.o$1(C),ac:e.o$1((e=>Y(""))),ad:e.p({isAuthor:e.unref(k)||e.unref(y)||e.unref($),data:e.unref(D)})}:{},{ae:"admin"===e.unref(f)},"admin"===e.unref(f)?{af:e.unref(y),ag:e.o$1((e=>N("addAdmin"))),ah:e.o$1((e=>N("removeAdmin"))),ai:e.o$1(V),aj:e.o$1((e=>N("addMute"))),ak:e.o$1((e=>N("removeMute"))),al:e.o$1((e=>Y(""))),am:e.p({isSetMuteTime:e.unref(q),member:e.unref(b),currentGroup:e.unref(D)})}:{},{an:e.o$1(J),ao:e.o$1(L),ap:e.o$1(z),aq:e.p({title:e.unref(e.Wt).t(`TUIGroup.${e.unref(O)}`),list:e.unref(G),isSearch:e.unref(P),isRadio:e.unref(g),selectedList:e.unref(_),isH5:!e.unref(a.isPC)}),ar:e.o$1((e=>p.value=e)),as:e.p({show:e.unref(p)}),at:1===e.unref(h).length},1===e.unref(h).length?{av:e.t(e.unref(e.Wt).t("TUIGroup.确定从群聊中删除该成员?"))}:{},{aw:e.unref(h).length>1},e.unref(h).length>1?{ax:e.t(e.unref(e.Wt).t("TUIGroup.确定从群聊中删除所选成员?"))}:{},{ay:e.o$1((r=>X(e.unref(h),"remove"))),az:e.o$1((e=>S.value=e)),aA:e.p({title:e.unref(e.Wt).t("TUIGroup.删除成员"),show:e.unref(S),isH5:!e.unref(a.isPC),center:!0,isHeaderShow:e.unref(a.isPC)})})}}),I=e._export_sfc(T,[["__scopeId","data-v-9c9d57a3"]]);wx.createComponent(I);