Module 963307

5,288 characters · in no known chunk
Dependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{Ay:()=>W,QP:()=>v,S9:()=>C,sN:()=>N}),n(321073);var r=n(735438),i=n.n(r),s=n(181370),a=n.n(s),o=n(136722),l=n(311907),u=n(73153),c=n(49463),d=n(488926),_=n(616356),f=n(961350),p=n(734057),h=n(498642),m=n(696451),E=n(317525),g=n(71393),A=n(290863),I=n(461213),T=n(287809),S=n(652215),y=n(985018);let v="everyone",N=0;var C=function(e){return e.GROUP="GROUP",e.MEMBER="MEMBER",e.CONTENT_INVENTORY="CONTENT_INVENTORY",e.CONTENT_INVENTORY_GROUP="CONTENT_INVENTORY_GROUP",e.HIDDEN_CONTENT_INVENTORY="HIDDEN_CONTENT_INVENTORY",e.CONTENT_INVENTORY_LEADERBOARD="CONTENT_INVENTORY_LEADERBOARD",e}({});function R(e,t,n,r){switch(t){case S.clD.ONLINE:case S.clD.OFFLINE:case S.clD.UNKNOWN:return{type:"GROUP",key:t,id:t,get title(){switch(t){case S.clD.ONLINE:return y.intl.string(y.t.WbGtnH);case S.clD.OFFLINE:return y.intl.string(y.t.Vv0abJ);default:return y.intl.string(y.t["UQMV/E"])}},count:n,index:r};default:let i=g.A.getGuild(e),s=null!=i?E.A.getRole(i.id,t):null;return{type:"GROUP",key:t,id:t,title:null!=s?s.name:"",count:n,index:r}}}function O(e,t,n){let r=n===f.default.getId(),i=A.A.isMobileOnline(n),s=A.A.isVROnline(n),a=r?I.A.getStatus():A.A.getStatus(n,e),o=r?I.A.getActivities():A.A.getActivities(n,e),l=_.A.getStreamForUser(n,e),u=T.default.getUser(n);return null==u?null:{type:"MEMBER",...m.Ay.getMember(e,n),user:u,status:a,activities:o,applicationStream:l,isOwner:t===n,isMobileOnline:i,isVROnline:s}}function b(e){let t=p.A.getChannel(e);return null==t?v:null==t.memberListId?D(t):t.memberListId}function D(e){return d.Ib(S.xBc.VIEW_CHANNEL,e)?v:a().v3(i()(e.permissionOverwrites).reduce((e,t)=>{let{id:n,allow:r,deny:i}=t;return o.zy(r,S.xBc.VIEW_CHANNEL)?e.push(`allow:${n}`):o.zy(i,S.xBc.VIEW_CHANNEL)&&e.push(`deny:${n}`),e},[]).sort().join(",")).toString()}class L{guildId;listId;ownerId;rows=[];groups=[];members={};version=0;constructor(e,t){this.guildId=e,this.listId=t,this.updateOwnerId()}updateOwnerId(){let e=g.A.getGuild(this.guildId);if(null==e)return!1;let t=d.wT(e);return this.ownerId!==t&&(this.ownerId=t,!0)}setGroups(e){let t=0;this.groups=e.map(e=>{let n=t,r=Math.max(0,e.count??0);return t+=r+1,R(this.guildId,e.id,r,n)}),this.rows.length=t}sync(e,t){let[n]=e;t.forEach((e,t)=>this.update(n+t,e))}invalidate(e){let[t,n]=e;for(let e=t;e<=n;e++){let t=this.rows[e];if(null==t)break;delete this.rows[e],"MEMBER"===t.type&&delete this.members[t.user.id]}this.version++}insert(e,t){let{group:n,member:r}=t;if(null!=n)this.rows.splice(e,0,R(this.guildId,n.id,n.count));else if(null!=r){let t=O(this.guildId,this.ownerId,r.user.id);if(null==t)return;this.rows.splice(e,0,t),this.members[r.user.id]=t}this.version++}update(e,t){let{group:n,member:r}=t,i=this.rows[e];if(null!=i&&"MEMBER"===i.type&&delete this.members[i.user.id],null!=n)this.rows[e]=R(this.guildId,n.id,n.count);else if(null!=r){let t=O(this.guildId,this.ownerId,r.user.id);if(null==t)return;this.rows[e]=t,this.members[r.user.id]=t}this.version++}delete(e){let t=this.rows[e];null!=t&&("MEMBER"===t.type&&delete this.members[t.user.id],this.rows.splice(e,1),this.version++)}rebuildMember(e){let t=this.members[e];null!=t&&(Object.assign(t,O(this.guildId,this.ownerId,e)),this.version++)}rebuildMembers(){let e=Object.keys(this.members);for(let t=0;t<e.length;t++){let n=e[t];this.rebuildMember(n)}}rebuildGroup(e){let t=this.groups.findIndex(t=>t.id===e),n=this.groups[t];null!=n&&(this.groups.splice(t,1,R(this.guildId,e,n.count,n.index)),this.version++)}}class w{_guildLists={};get(e,t){let n=this._guildLists[e];null==n&&(n=this._guildLists[e]={});let r=n[t];return null==r&&((r=new L(e,t)).setGroups([{id:S.clD.UNKNOWN,count:0}]),n[t]=r),r}forEach(e,t){if(null==e)i().forEach(this._guildLists,e=>{i().forEach(e,t)});else{let n=this._guildLists[e];null!=n&&i().forEach(n,t)}}delete(e){delete this._guildLists[e]}reset(){this._guildLists={}}}let M=new w;function P(e){let t=M.get(e.guildId,e.id);e.ops.forEach(e=>{switch(e.op){case"SYNC":t.sync(e.range,e.items);break;case"INVALIDATE":t.invalidate(e.range);break;case"INSERT":t.insert(e.index,e.item);break;case"UPDATE":t.update(e.index,e.item);break;case"DELETE":t.delete(e.index)}}),t.setGroups(e.groups)}function x(){M.reset()}function k(e){let{guild:t}=e;M.forEach(t.id,e=>{e.updateOwnerId()&&e.rebuildMembers()})}function U(e){let{guild:t}=e;M.delete(t.id)}function G(e){let{guildId:t,role:n}=e;M.forEach(t,e=>{e.rebuildGroup(n.id),e.rebuildMembers()})}function F(e){let{guildId:t,user:n}=e;M.forEach(t,e=>e.rebuildMember(n.id))}let V=[];function B(){let e=_.A.getAllApplicationStreams(),t=V.concat(e);V=e,t.forEach(e=>{M.forEach(null,t=>t.rebuildMember(e.ownerId))})}function H(){let e=f.default.getId();M.forEach(null,t=>t.rebuildMember(e))}function j(){return!0}class Y extends l.Ay.Store{static displayName="ChannelMemberStore";initialize(){this.waitFor(T.default,g.A,E.A,p.A,m.Ay,A.A,I.A,f.default,h.A,_.A,c.A),this.syncWith([I.A],H),this.syncWith([_.A],B)}getProps(e,t){let n=M.get(e,b(t));return{listId:`${n.guildId}:${n.listId}`,groups:n.groups,rows:n.rows,version:n.version}}getRows(e,t){return M.get(e,b(t)).rows}}let W=new Y(u.h,{CONNECTION_OPEN:x,OVERLAY_INITIALIZE:x,GUILD_MEMBER_LIST_UPDATE:P,GUILD_UPDATE:k,GUILD_DELETE:U,GUILD_ROLE_UPDATE:G,GUILD_MEMBER_UPDATE:F,CHANNEL_UPDATES:j})}