Module 584569

1,997 characters · in d81cf62d3772c525.js
Dependencies
Lazily required by (0)none
Lazily requires (0)none
Source Raw
function(e,t,n){n.d(t,{A:()=>v});var i=n(17928),l=n(459838),s=n(228366),r=n(194862),a=n(259464),o=n(288737),u=n(562153),d=n(734057),c=n(763827),h=n(287809),g=n(977997),A=n(607567),f=n(652215),E=n(806931);let I=new r.A,S=new r.A,m=new Set;function p(e,t,n){let i=new o.A({userId:e.id,channelId:n}),l=(0,A.RQ)(i,t??f.ME,e.id);I.set(e.id,l);let s={type:E.lp.USER,user:e,id:e.id,streamId:null,voiceState:i,voicePlatform:null,speaking:!1,lastSpoke:0,soundsharing:!1,ringing:!1,userNick:u.Ay.getName(t,n,e),userAvatarDecoration:(0,a.U)(e,t),localVideoDisabled:!1,isPoppedOut:!1};S.set(e.id,s)}function C(e){let t=I.delete(e),n=S.delete(e),i=m.delete(e);return t||n||i}function _(){let e=c.A.getChannelId();if(null==e)return!1;let t=d.A.getChannel(e)?.getGuildId(),n=!1;return m.forEach(i=>{if(null!=g.A.getVoiceStateForChannel(e,i))return void m.delete(i);let l=h.default.getUser(i);null!=l&&(n=!0,m.delete(i),p(l,t,e))}),n}function N(){I.clear(),S.clear(),m.clear()}class T extends i.Ay.Store{static displayName="RTCConnectionDesyncStore";initialize(){this.waitFor(g.A,h.default,d.A,c.A),this.syncWith([h.default],_)}get desyncedVoiceStatesCount(){return I.size()}getDesyncedUserIds(){return I.keys()}getDesyncedVoiceStates(){return I.values()}getDesyncedParticipants(){return S.values()}}let v=new T(s.h,{CONNECTION_OPEN:function(){N()},VOICE_CHANNEL_SELECT:N,RTC_CONNECTION_STATE:function(e){let{state:t,context:n}=e;if(n!==l.x.DEFAULT||t!==f.S7L.DISCONNECTED)return!1;N()},VOICE_STATE_UPDATES:function(e){let{voiceStates:t}=e,n=c.A.getChannelId();return null!=n&&t.reduce((e,t)=>{let{userId:i,channelId:l}=t;return l===n&&!!C(i)||e},!1)},RTC_CONNECTION_CLIENT_CONNECT:function(e){let{userIds:t,guildId:n,channelId:i,context:s}=e;return s===l.x.DEFAULT&&t.reduce((e,t)=>{if(null!=g.A.getVoiceStateForChannel(i,t))return e;let l=h.default.getUser(t);return null==l?(m.add(t),e):(p(l,n,i),!0)},!1)},RTC_CONNECTION_CLIENT_DISCONNECT:function(e){let{userId:t,context:n}=e;return n===l.x.DEFAULT&&C(t)}})}