Module 312006

2,501 characters · in no known chunk
Dependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{Ay:()=>P});var r=n(735438),i=n.n(r),s=n(311907),a=n(73153),o=n(734057),l=n(696451),u=n(317525),c=n(71393),d=n(287809),_=n(977997),f=n(488926),p=n(233993),h=n(105530),m=n(418208);let E={},g={speaker:!1,moderator:!1};function A(e,t){let n=_.A.getVoiceStateForChannel(t,e);return(0,h.eY)(n)===h.zF.ON_STAGE}function I(e,t,n){return f.$3({permission:p.QY,user:e,context:t,overwrites:n.permissionOverwrites,roles:u.A.getUnsafeMutableRoles(t.id)})}function T(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=o.A.getChannel(t),i=r?.getGuildId(),s=c.A.getGuild(i);return null!=s&&null!=r&&r.isGuildStageVoice()?{speaker:A(e,t),moderator:n?I(e,s,r):null}:g}function S(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];null==E[t]&&(E[t]={});let r=T(e,t,n);return E[t][e]=r,r}function y(e,t){if(null==t)return!1;let n=o.A.getChannel(t);return null!=n&&!!n.isGuildStageVoice()&&(delete E[t]?.[e],!0)}function v(e,t){for(let n in E){let r=o.A.getBasicChannel(n);null!=r&&r.guild_id===t&&delete E[n][e]}return!0}function N(e){let t=Object.values(o.A.getMutableGuildChannelsForGuild(e)).filter(e=>e.isGuildStageVoice());for(let e of t)delete E[e.id];return t.length>0}function C(e){let{channels:t}=e;for(let e of t)delete E[e.id]}function R(e){let{guildId:t}=e;N(t)}function O(e){let{guildId:t,user:n}=e;return null!=n&&null!=t&&v(n.id,t)}function b(e){let{voiceStates:t}=e;return!i().isEmpty(E)&&t.reduce((e,t)=>{let{userId:n,channelId:r}=t;return y(n,r)||e},!1)}function D(e){return N(e.guildId)}function L(){E={}}function w(e){let{guild:t}=e;for(let e in E){let n=o.A.getBasicChannel(e);(null==n||n.guild_id===t.id)&&delete E[e]}}class M extends s.Ay.Store{static displayName="StageChannelRoleStore";initialize(){this.waitFor(l.Ay,o.A,c.A,d.default,_.A,u.A)}isSpeaker(e,t){return this.getPermissionsForUser(e,t).speaker}isModerator(e,t){return this.getPermissionsForUser(e,t,!0).moderator??!1}isAudienceMember(e,t){let n=this.getPermissionsForUser(e,t);return!n.speaker&&!n.moderator}getPermissionsForUser(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(null==e||null==t||e===d.default.getCurrentUser()?.id&&(0,m.o$)())return g;let r=E[t]?.[e];if(null!=r)if(n&&null==r.moderator)return S(e,t,!0);else return r;return S(e,t,n)}}let P=new M(a.h,{CHANNEL_UPDATES:C,CONNECTION_OPEN:L,GUILD_MEMBER_REMOVE:O,GUILD_MEMBER_UPDATE:O,GUILD_ROLE_UPDATE:R,PASSIVE_UPDATE_V2:D,VOICE_STATE_UPDATES:b,GUILD_CREATE:w,GUILD_DELETE:w})}