Build 543408stable
Module 958720
6,112 characters · in no known chunkDependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>R}),n(321073);var i=n(17928),r=n(228366),s=n(320095),a=n(495544),o=n(734057),l=n(994500),u=n(309010),c=n(967198),d=n(287809),_=n(935208),f=n(256331),h=n(705448);let p=new Map,E=new Set,m=new Map,g=new Map,A=null,I=null,T=null,S=!1,N=new Set,y=0;function C(e,t){let n=p.get(e);if(null==n)return!1;let i=n.messageMetadataByMessageId.get(t);if(null!=i){let e=n.conversationMetadataById.get(i.conversationId);e?.hydratedMessages!=null&&(e.hydratedMessages=e.hydratedMessages.filter(e=>e.id!==t))}return n.messageMetadataByMessageId.delete(t)}function v(e){let t=p.delete(e);return E.delete(e)&&(t=!0),m.delete(e)&&(t=!0),g.delete(e)&&(t=!0),A===e&&(A=null),I?.channelId===e&&(I=null,t=!0),t}class O extends i.Ay.Store{static displayName="ConversationsStore";initialize(){this.waitFor(a.default,o.A,f.A,l.A,u.A,c.A,d.default)}hasChannelData(e){return p.has(e)}getChannelConversations(e){let t=p.get(e);return null==t?[]:t.conversations.map(e=>{let n=t.conversationMetadataById.get(e.id);return{conversation:e,color:n?.color??h.J["0"]}})}getConversationForMessage(e,t){return p.get(e)?.messageMetadataByMessageId.get(t)?.conversationId??null}getMessageMetadata(e,t){return p.get(e)?.messageMetadataByMessageId.get(t)??null}getConversationMetadata(e,t){return p.get(e)?.conversationMetadataById.get(t)??null}getScrollToConversation(e){return I?.channelId===e?{conversationId:I.conversationId,seq:I.seq}:null}hasMoreConversations(e,t){return!!p.has(e)&&("before"===t?!m.get(e):!g.get(e))}isPendingFetch(e){return E.has(e)}getSelectedConversation(e){return null==T?null:p.get(e)?.conversationMetadataById.get(T)?.conversation??null}getSelectedConversationColor(e){return null==T?null:p.get(e)?.conversationMetadataById.get(T)?.color??null}getHydratedMessages(e,t){let n=p.get(e)?.conversationMetadataById.get(t)?.hydratedMessages;return null!=n&&n.length>0?n:null}getHydratedMessageById(e,t){return p.get(e)?.messageMetadataByMessageId.get(t)?.message??null}isConversationFetchPending(e){return N.has(e)}isConversationExpanded(){return S}}let R=new O(r.h,{CONVERSATION_FETCH_START:function(e){let{conversationId:t}=e;N.add(t)},CONVERSATION_FETCH_SUCCESS:function(e){let{channelId:t,conversationId:n,conversation:i,messages:r}=e;N.delete(n);let a=p.get(t);if(null==a)return;let o=a.conversationMetadataById.get(n);null!=o&&(o.conversation=i);let l=r.map(e=>(0,s.rh)(e));for(let e of l){let t=a.messageMetadataByMessageId.get(e.id);null!=t?t.message=e:a.messageMetadataByMessageId.set(e.id,{conversationId:n,moderationLabel:null,message:e})}null!=o&&(o.hydratedMessages=l)},CONVERSATION_FETCH_FAILURE:function(e){let{conversationId:t}=e;N.delete(t)},CONVERSATIONS_FETCH_START:function(e){let{channelId:t}=e;E.add(t)},CONVERSATIONS_FETCH_SUCCESS:function(e){let{channelId:t,conversations:n,direction:i,beforeShortCircuited:r,afterShortCircuited:s,isStaleRefresh:a}=e;E.delete(t);let l=p.get(t)?.conversations??[];a&&(l=function(e,t){if(0===t.length)return e;let n=new Set(t.map(e=>e.id)),i=Math.min(...t.map(e=>_.default.extractTimestamp(e.startMessageId))),r=Math.max(...t.map(e=>_.default.extractTimestamp(e.startMessageId)));return e.filter(e=>{let t=_.default.extractTimestamp(e.startMessageId);return t<i||t>r||n.has(e.id)})}(l,n)),r&&("before"===i||"around"===i)&&m.set(t,!0),s&&("after"===i||"around"===i)&&g.set(t,!0);let u=function(e,t){let n=new Map;for(let t of e)n.set(t.id,t);for(let e of t)n.set(e.id,e);let i=Array.from(n.values());return i.sort((e,t)=>_.default.compare(e.startMessageId,t.startMessageId)),i}(l,n);p.set(t,function(e,t,n){let i=n?.guildId??t[0]?.guildId??o.A.getChannel(e)?.guild_id??null,r=new Map,s=new Map;for(let e of t){let t=n?.conversationMetadataById.get(e.id),i=t?.color??h.J[y++%h.J.length];r.set(e.id,{conversation:e,color:i,hydratedMessages:t?.hydratedMessages??null});let a=null;if(null!=e.moderation)for(let t of(a=new Map,e.moderation.flaggedMessageDetails)){let e=a.get(t.messageId);null!=e?e.push(t):a.set(t.messageId,[t])}for(let t of e.messageIds){let i=null;null!=e.moderation&&e.moderation.flaggedMessageIds.includes(t)&&null!=a&&(i=function(e){let t=e[0],n=e.map(e=>e.category??e.reason).filter(e=>null!=e),i=t?.severity??null,r=t?.confidence??null,s=[null!=i?`${i} severity`:null,null!=r?`${r} confidence`:null].filter(Boolean).join(", "),a=[n.length>0?n.join(", "):null,s.length>0?s:null].filter(Boolean).join(" \xb7 ");return a.length>0?a:"Moderation Failed"}(a.get(t)??[]));let r=n?.messageMetadataByMessageId.get(t)?.message??null;s.set(t,{conversationId:e.id,moderationLabel:i,message:r})}}return{guildId:i,conversations:t,conversationMetadataById:r,messageMetadataByMessageId:s}}(t,u,p.get(t)))},CONVERSATIONS_FETCH_FAILURE:function(e){let{channelId:t}=e;E.delete(t)},CHANNEL_SELECT:function(e){let{channelId:t}=e;if(A===t)return!1;T=null,S=!1,A=t??null},CHANNEL_DELETE:function(e){let{channel:t}=e;return v(t.id)},GUILD_DELETE:function(e){let{guild:t}=e;if("unavailable"in t&&!0===t.unavailable)return!1;let n=!1;for(let[e,i]of p)i.guildId===t.id&&v(e)&&(n=!0);return n},LOAD_MESSAGES_SUCCESS:function(e){let{channelId:t,jump:n}=e;return null!=n&&u.A.getChannelId()===t&&(m.delete(t),g.delete(t),!0)},SET_SELECTED_CONVERSATION:function(e){let{channelId:t,conversationId:n}=e;return T!==n&&(T=n,S=!1,null!=t&&null!=n&&(I={channelId:t,conversationId:n,seq:(I?.seq??0)+1}),!0)},SET_CONVERSATION_EXPANDED:function(e){let{expanded:t}=e;return S!==t&&(S=t,!0)},MESSAGE_UPDATE:function(e){let{message:t}=e,n=t.channel_id,i=t.id;if(null==n||null==i)return!1;let r=p.get(n),a=r?.messageMetadataByMessageId.get(i);if(a?.message==null)return!1;let o=(0,s.IU)(a.message,t);a.message=o;let l=r?.conversationMetadataById.get(a.conversationId);if(l?.hydratedMessages!=null){let e=l.hydratedMessages.findIndex(e=>e.id===i);-1!==e&&(l.hydratedMessages[e]=o)}return!0},MESSAGE_DELETE:function(e){let{channelId:t,id:n}=e;return C(t,n)},MESSAGE_DELETE_BULK:function(e){let{channelId:t,ids:n}=e,i=!1;for(let e of n)C(t,e)&&(i=!0);return i},LOGOUT:function(){p.clear(),E.clear(),m.clear(),g.clear(),N.clear(),A=null,T=null,S=!1,I=null,y=0}})}