Build 545032stable
Module 970278
2,081 characters · in no known chunkDependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>I});var i=n(735438),r=n.n(i),s=n(17928),a=n(228366),o=n(95701),l=n(734057),u=n(935208);let c={},d=new Set;function _(e){return{id:e.id,parentId:e.parent_id}}function f(e){e in c&&delete c[e]}function h(e){null!=e.threads&&e.threads.length>0&&(c[e.id]={},e.threads.filter(e=>o.A_.has(e.type)).forEach(t=>p(e.id,t))),e.hasThreadsSubscription&&d.add(e.id)}function p(e,t){let n=c[e],i=t.parent_id;i in n||(n[i]={}),c[e][i][t.id]=_(t)}function E(e){let{channel:t}=e;if(!o.A_.has(t.type))return!1;if(t.threadMetadata?.archived===!0)return m(t);{let e=c[t.guild_id]??{};c[t.guild_id]={...e,[t.parent_id]:{...e[t.parent_id],[t.id]:_(t)}}}}function m(e){let{guild_id:t,parent_id:n,id:i}=e;if(null==t||null==n||!(t in c)||!(n in c[t])||!(i in c[t][n]))return!1;c[t]={...c[t],[n]:{...c[t][n]}},delete c[t][n][i],r().isEmpty(c[t][n])&&delete c[t][n]}let g={};class A extends s.Ay.Store{static displayName="ActiveThreadsStore";initialize(){this.waitFor(l.A)}isActive(e,t,n){return null!=e&&null!=this.getThreadsForParent(e,t)[n]}getThreadsForGuild(e){return c[e]??g}getThreadsForParent(e,t){return this.getThreadsForGuild(e)[t]??g}hasThreadsForChannel(e,t){return!r().isEmpty(this.getThreadsForParent(e,t))}forEachGuild(e){u.default.keys(c).forEach(t=>{e(t,c[t])})}hasLoaded(e){return d.has(e)}}let I=new A(a.h,{CONNECTION_OPEN:function(e){c={},d.clear(),e.guilds.forEach(e=>{h(e)})},OVERLAY_INITIALIZE:function(e){let{channels:t}=e;c={},r()(t).filter(e=>o.Le.has(e.type)).groupBy("guild_id").forEach((e,t)=>{c[t]={},e.forEach(e=>p(t,e))})},GUILD_CREATE:function(e){let{guild:t}=e;f(t.id),h(t)},GUILD_DELETE:function(e){let{guild:t}=e;f(t.id)},THREAD_CREATE:E,THREAD_UPDATE:E,THREAD_LIST_SYNC:function(e){let{guildId:t,threads:n,channelIds:i}=e;for(let e in null==i&&d.add(t),c[t]={...c[t]},c[t])c[t][e]={...c[t][e]};n.forEach(e=>p(t,e))},THREAD_DELETE:function(e){let{channel:t}=e;return m(t)},CHANNEL_DELETE:function(e){let{channel:t}=e;if(null==t.guild_id||!(t.guild_id in c))return!1;c[t.guild_id]={...c[t.guild_id]},delete c[t.guild_id][t.id]}})}