Build 573682stable
Module 493336
33,044 characters · in no known chunkDependencies
Required by (76)
54727162046521878242263433744632552949092492960105289136523138298141268145530167132180662187654190930191701225142242874243258249700287245307623308368314519326084348833349230352043367516403895428249436283436405448613463105483768490714518960519222538899545152545185578839583955659617672957685961706341715757715943720882722855724029735991739008743361743738750128751258763375774300775632795816803977835835837528885918889460917012928078978994981714
Lazily required by (0)none
Requires (86)
313798421792845787459385127153677691147139395561101392122906154049155718157559167189174459195880228366232835279208287809290863292348292446299091308528309010320095322683341662346542354287375708381941390248395780401755428262464578491001495544498642512599521427544180561844568548576705580745586660607399616356617710626584636537652215665260677413695870696292710969723176734057750385753738765178768349779185833291834757842241844944853145867455885918889137892768917878927813935208938796963852967198969632975571
Lazily requires (0)none
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>eq}),n(801541),n(938796);var i=n(889137),r=n(696292),s=n(665260),a=n(636537),o=n(765178),l=n(228366),u=n(155718),d=n(292446),c=n(779185),_=n(95561),h=n(723176),f=n(154049),E=n(586660),p=n(354287),m=n(695870),g=n(53677),A=n(892768),I=n(167189),T=n(833291),S=n(626584),N=n(390248),C=n(885918),y=n(341662),v=n(617710),R=n(607399),O=n(309010),b=n(967198),L=n(174459),D=n(652215);function P(e,t){L.default.track(D.HAw.APP_DIRECTORY_PROFILE_EMBED_SENT,{application_id:e,device_platform:R.Fr?"mobile_web":"desktop_web",guild_id:b.A.getGuildId(),channel_id:O.A.getChannelId(),section:t})}var w=n(834757),M=n(753738),x=n(51271),U=n(844944),k=n(122906),G=n(842241),V=n(346542),F=n(279208),B=n(917878),j=n(395780),H=n(320095);async function W(e){let{channelId:t,message:n,items:i,shouldUploadFailureSendNotification:r}=e,s=new j.A,a=(0,H.rh)({...n,id:s._file.id});s.on("start",e=>{l.h.dispatch({type:"UPLOAD_START",channelId:t,file:e,message:a,uploader:s})}),s.on("progress",e=>{l.h.dispatch({type:"UPLOAD_PROGRESS",channelId:t,file:e})}),s.on("error",(e,n,i,s)=>{l.h.dispatch({type:"UPLOAD_FAIL",channelId:t,file:e,messageId:a.id,shouldSendNotification:r})}),s.on("complete",e=>{s._aborted&&l.h.dispatch({type:"UPLOAD_COMPLETE",channelId:t,file:e,aborted:!0})});let o=await s.uploadFiles(i);if(!s._aborted)return{attachments:o,uploader:s}}var Y=n(521427),K=n(17928),$=n(69114),z=n(322683),q=n(734057),Z=n(498642),X=n(544180);let Q=new S.A("MessageRoundtripTrackerStore");function J(e){return null!=e.apiResponseTimestamp&&null!=e.gatewaySeenTimestamp}function ee(e){let t=q.A.getBasicChannel(e.channelId);if(null==t)return void Q.warn(`Ignoring a messageData for channel ${e.channelId} because we can't find that channel.`);if(Math.random()>.1)return;let n=null==e.apiResponseTimestamp?null:e.apiResponseTimestamp-e.initialSendTimestamp,i=null==e.gatewaySeenTimestamp?null:e.gatewaySeenTimestamp-e.initialSendTimestamp,r=(0,z.O)();L.default.track(D.HAw.SEND_MESSAGE_ROUNDTRIP,{...(0,$.A)(),api_latency_ms:n,gateway_latency_ms:i,channel_id:t.id,channel_type:t.type,guild_id:t.guild_id,guild_size:Z.A.getMemberCount(t.guild_id),mobile_network_type:X.A.getType(),num_attachments:e.attachmentCount,...null!=r&&{mobile_signal_strength_level:r}})}class et extends K.Ay.Store{initialize(){this.waitFor(q.A,Z.A,X.A)}pendingMessages=new Map;recordMessageSendAttempt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=(n.attachments?.length??0)+(n.attachmentsToUpload?.length??0),r={initialSendTimestamp:Date.now(),apiResponseTimestamp:null,gatewaySeenTimestamp:null,channelId:e,attachmentCount:i};this.pendingMessages.set(t,r),setTimeout(()=>{let e=this.pendingMessages.get(t);null!=e&&(ee(e),this.pendingMessages.delete(t))},3e4)}recordMessageSendApiResponse(e){let t=this.pendingMessages.get(e);if(null!=t){let n={...t,apiResponseTimestamp:Date.now()};J(n)?(ee(n),this.pendingMessages.delete(e)):this.pendingMessages.set(e,n)}}recordGatewayResponse(e){let t=this.pendingMessages.get(e);if(null!=t){let n={...t,gatewaySeenTimestamp:Date.now()};J(n)?(ee(n),this.pendingMessages.delete(e)):this.pendingMessages.set(e,n)}}}let en=new et(l.h,{MESSAGE_CREATE:function(e){let{optimistic:t,message:n}=e,i=n.nonce;t||null==i||en.recordGatewayResponse(i)}}),ei={init(){},donateSentMessage(e,t){},deleteAllInteractions(){}};var er=n(963852),es=n(195880);function ea(e){let t=null!=e.fileItems?e.fileItems.map(e=>e.mimeType??"unknown"):[],n=e.errorMessage??void 0,i=e.failureCode??void 0;(0,_.zV)(D.HAw.SEND_MESSAGE_FAILURE,{failure_code:i,error_message:n,attachment_mimetypes:t})}var eo=n(491001),el=n(512599),eu=n(3137),ed=n(969632),ec=n(45787),e_=n(308528);function eh(e){if(e!==m.E)return null;let t=q.A.getChannel(e);return null==t?null:e_.A.ensurePrivateChannel(t.recipients)}var ef=n(561844),eE=n(710969);n(853145);var ep=n(9842),em=n(750385),eg=n(677413),eA=n(867455),eI=n(464578),eT=n(616356),eS=n(495544);n(580745);var eN=n(71393),eC=n(299091),ey=n(232835),ev=n(576705),eR=n(290863),eO=n(568548),eb=n(101392),eL=n(287809),eD=n(927813),eP=n(45938),ew=n(975571),eM=n(428262),ex=n(935208),eU=n(292348),ek=n(157559),eG=n(768349),eV=n(401755),eF=n(381941),eB=n(375708);let ej=new S.A("MessageActionCreators"),eH=new S.A("MessageQueue"),eW=!1;class eY{completed=!1;markComplete(){this.completed=!0}}function eK(e){let{inviteKey:t,channelId:n,messageId:i,location:r,inviteAnalyticsMetadata:s,overrideProperties:a={}}=e,o=eS.default.getId(),l=eC.A.getInvite(t),u=(0,G.y$)(t),d=null!=l&&(0,V.oK)(l),c=l?.target_application?.id;null!=c&&d&&(0,p.KL)(c,eG.J.ACTIVITY_INVITE,o);let h=q.A.getChannel(n);if(null!=h){let e=null;h.isMultiUserDM()?e=D.G2g.GDM_INVITE:h.isPrivate()||(e=D.G2g.SERVER_INVITE);let t={};if(null!=l&&l.state===D.elq.RESOLVED&&null!=l.channel){let n=l.channel;t.invite_channel_id=n.id,t.invite_guild_id=l.guild?.id,t.invite_channel_type=n.type,null!=l.inviter&&(t.invite_inviter_id=l.inviter.id),null!=l.target_application&&(t.application_id=l.target_application.id);let i=eT.A.getLastActiveStream();if(null!=i&&i.channelId===n.id){e=D.G2g.STREAM,t.destination_user_id=i.ownerId;let n=(0,w.Ee)(i,eR.A);t.application_id=null!=n?n.id:null}}null!=s&&(null!=s.suggestionData&&(t.is_suggested=s.suggestionData.isAffinitySuggestion,t.row_num=s.suggestionData.rowNum,t.num_total=s.suggestionData.numTotal,t.num_affinity_connections=s.suggestionData.numAffinityConnections,t.is_filtered=s.suggestionData.isFiltered),t.source=s.source),t={...t,location:r,invite_type:e,invite_code:u.baseCode,guild_id:h.getGuildId(),channel_id:h.id,message_id:i,send_type:D.gfq.DIRECT_MESSAGE,invite_guild_scheduled_event_id:u.guildScheduledEventId,invite_instance_id:(0,G._U)(u.baseCode,i)??null,...a},_.Ay.trackWithMetadata(D.HAw.INVITE_SENT,t)}else{let e={};null!=l&&l.state===D.elq.RESOLVED&&null!=l.inviter&&(e.invite_inviter_id=l.inviter.id,null!=l.target_application&&(e.application_id=l.target_application.id),e={...e,location:r,invite_type:D.G2g.FRIEND_INVITE,invite_code:u.baseCode,message_id:i,send_type:D.gfq.DIRECT_MESSAGE,invite_guild_scheduled_event_id:u.guildScheduledEventId,invite_instance_id:(0,G._U)(u.baseCode,i)??null,...a},_.Ay.trackWithMetadata(D.HAw.INVITE_SENT,e))}}let e$={[D.t02.SLOWMODE_RATE_LIMITED]:{messageName:"SLOWMODE_RATE_LIMITED",messageGetter:e=>eB.intl.formatToPlainString(eB.t.IWntYg,{seconds:e.rateLimitPerUser})},[D.t02.INVALID_MESSAGE_SEND_NO_MUTUAL_GUILDS]:{messageName:"INVALID_MESSAGE_SEND_NO_MUTUAL_GUILDS",messageGetter:e=>{let t=ew.A.getArticleURL(D.MVz.DM_COULD_NOT_BE_DELIVERED),n=e.rawRecipients??[];return e.isDM()&&1===n.length&&n.some(e=>e.bot)?eB.intl.formatToPlainString(eB.t.SkGL7l,{helpUrl:t}):eB.intl.formatToPlainString(eB.t.llTkqr,{helpUrl:t})}},[D.t02.INVALID_MESSAGE_SEND_USER]:{messageName:"INVALID_MESSAGE_SEND_USER",messageGetter:()=>eB.intl.formatToPlainString(eB.t.SkGL7l,{helpUrl:ew.A.getArticleURL(D.MVz.DM_COULD_NOT_BE_DELIVERED)})},[D.t02.TOO_MANY_THREADS]:{messageName:"TOO_MANY_THREADS",messageGetter:e=>e.isForumLikeChannel()||e.isForumPost()?eB.intl.string(eB.t["/jUd2+"]):eB.intl.string(eB.t["5EMPA7"])},[D.t02.TOO_MANY_ANNOUNCEMENT_THREADS]:{messageName:"TOO_MANY_ANNOUNCEMENT_THREADS",messageGetter:()=>eB.intl.string(eB.t["aY+lLC"])},[D.t02.HARMFUL_LINK_MESSAGE_BLOCKED]:{messageName:"HARMFUL_LINK_MESSAGE_BLOCKED",messageGetter:()=>eB.intl.formatToPlainString(eB.t.zSG3Qy,{helpUrl:D.X7G.HARMFUL_LINKS})},[D.t02.HARMFUL_URL_BLOCKED]:{messageName:"HARMFUL_URL_BLOCKED",messageGetter:()=>eB.intl.string(eB.t.WxX2Fd)},[D.t02.EMAIL_VERIFICATION_REQUIRED]:{messageName:"BOT_REQUIRES_EMAIL_VERIFICATION",messageGetter:()=>eB.intl.string(eB.t.k1Cjqr)},[D.t02.GUILD_MESSAGE_UPDATE_RATE_LIMIT_EXCEEDED]:{messageName:"GUILD_MESSAGE_UPDATE_RATE_LIMIT_EXCEEDED",messageGetter:()=>eB.intl.string(eB.t.Z5SUuv)},[D.t02.RATE_LIMIT_DM_OPEN]:{messageName:"BOT_DM_RATE_LIMITED",messageGetter:()=>eB.intl.string(eB.t.E8nbNb)},[D.t02.SEND_MESSAGE_TEMPORARILY_DISABLED]:{messageName:"BOT_DM_SEND_MESSAGE_TEMPORARILY_DISABLED",messageGetter:()=>eB.intl.string(eB.t.aRUbah)},[D.t02.INVALID_MESSAGE_SEND_GAME_FRIEND_DM]:{messageName:"BOT_DM_SEND_MESSAGE_INVALID_FOR_GAME_FRIEND",messageGetter:()=>eB.intl.string(eB.t["/meGhR"])},[D.t02.INVALID_MESSAGE_SEND_PROVISIONAL_ACCOUNT_OFFLINE]:{messageName:"BOT_DM_SEND_MESSAGE_INVALID_OFFLINE_PROVISIONAL_ACCOUNT",messageGetter:()=>eB.intl.string(eB.t.Oc1Zjw)},[D.t02.TOTAL_ATTACHMENT_SIZE_TOO_LARGE]:{messageName:"TOTAL_ATTACHMENT_SIZE_TOO_LARGE",messageGetter:()=>eB.intl.formatToPlainString(eB.t.DYFPg2,{maxSizeMb:eU.YK})},[D.t02.CLOUD_UPLOAD_NOT_FOUND]:{messageName:"CLOUD_UPLOAD_NOT_FOUND",messageGetter:()=>eB.intl.string(eB.t.bQldfH)},[D.t02.INVALID_PERMISSIONS]:{messageName:"INVALID_PERMISSIONS",messageGetter:()=>eB.intl.string(eB.t.zl4Weq)}},ez={receiveMessage(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};l.h.dispatch({type:"MESSAGE_CREATE",channelId:e,message:t,optimistic:n,sendMessageOptions:i,isPushNotification:!1})},sendBotMessage(e,t,n,i){null!=n&&_.Ay.trackWithMetadata(D.HAw.AUTOMATED_MESSAGE_RECEIVED,{message_author:"Clyde",message_name:n}),ez.receiveMessage(e,(0,er.pO)({messageId:i,channelId:e,content:t,loggingName:n}))},sendNitroSystemMessage(e,t,n){let i=(0,er.Ay)({channelId:e,nonce:n,type:D.lAJ.NITRO_NOTIFICATION,content:t,flags:D.pr7.EPHEMERAL,author:{id:D.oIV,username:"Nitro Notification",discriminator:D.h3J,avatar:"nitro",bot:!0}});ez.receiveMessage(e,{...i,state:D.cmJ.SENT,channel_id:e},!0)},sendGiftingPromptSystemMessage(e,t){let n=(0,er.Ay)({channelId:e,type:D.lAJ.GIFTING_PROMPT,content:"",flags:D.pr7.EPHEMERAL,author:{id:D.oIV,username:"Gifting Prompt",discriminator:D.h3J,avatar:"gifting_prompt",bot:!0},giftingPrompt:t});ez.receiveMessage(e,{...n,state:D.cmJ.SENT},!0)},sendGuildBoostUpsellSystemMessage(e,t){let n=(0,er.Ay)({channelId:e,type:D.lAJ.GUILD_BOOST_UPSELL,content:"",flags:D.pr7.EPHEMERAL,author:{id:D.oIV,username:"Guild Boost Upsell",discriminator:D.h3J,avatar:"guild_boost_upsell",bot:!0},boostingPrompt:t});ez.receiveMessage(e,{...n,state:D.cmJ.SENT},!0)},sendClydeError(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=q.A.getChannel(e);if(null==n)return;let i=e$[t];null==i?ez.sendBotMessage(e,eB.intl.formatToPlainString(eB.t.SkGL7l,{helpUrl:ew.A.getArticleURL(D.MVz.DM_COULD_NOT_BE_DELIVERED)}),`SEND_FAILED (${t})`):ez.sendBotMessage(e,i.messageGetter(n),i.messageName)},sendExplicitMediaClydeError(e,t,n){let r=q.A.getChannel(e);if(null==r)return;let{message:s,messageName:a}=(0,i.YW)({isDM:r.isDM(),isGDM:r.isGroupDM()}).with({isDM:!0},()=>({message:eB.intl.string(eB.t["mktny/"]),messageName:"BOT_DM_EXPLICIT_CONTENT"})).with({isDM:!1,isGDM:!0},()=>({message:eB.intl.string(eB.t["mktny/"]),messageName:"BOT_GDM_EXPLICIT_CONTENT"})).otherwise(()=>({message:eB.intl.string(eB.t.i4AbAS),messageName:"BOT_GUILD_EXPLICIT_CONTENT"})),o=(0,es.m)();ez.sendBotMessage(e,s,a,o),(0,N.hv)({action:N.rY.EXPLICIT_MEDIA_FALSE_POSITIVE_CLYDE_MESSAGE_SENT,messageId:o,channelId:e,context:n}),null!=t&&t.length>0&&l.h.dispatch({type:"MESSAGE_EXPLICIT_CONTENT_FP_CREATE",messageId:o,channelId:e,attachments:t})},truncateMessages(e,t,n){l.h.dispatch({type:"TRUNCATE_MESSAGES",channelId:e,truncateBottom:t,truncateTop:n})},clearChannel(e){l.h.dispatch({type:"CLEAR_MESSAGES",channelId:e})},jumpToPresent(e,t){ez.trackJump(e,null,"Present");let n={present:!0};ey.A.hasPresent(e)?l.h.dispatch({type:"LOAD_MESSAGES_SUCCESS_CACHED",jump:n,channelId:e,limit:t}):ez.fetchMessages({channelId:e,limit:t,jump:n})},trackJump(e,t,n,i){_.Ay.trackWithMetadata(D.HAw.JUMP,{context:n,channel_id:e,message_id:t,...i})},jumpToMessage(e){let{channelId:t,messageId:n,flash:i=!1,offset:r,context:s,extraProperties:a=null,isPreload:o,returnMessageId:l,skipLocalFetch:u,jumpType:d,avoidInitialScroll:c,onJumpComplete:_}=e;return"string"==typeof s&&ez.trackJump(t,n,s,a),ez.fetchMessages({channelId:t,limit:D.d7Q,jump:{messageId:n,flash:i,offset:r,returnMessageId:l,jumpType:d,onJumpComplete:_},isPreload:o,skipLocalFetch:u,avoidInitialScroll:c})},focusMessage(e){let{channelId:t,messageId:n}=e;ez.fetchMessages({channelId:t,limit:D.d7Q,focus:{messageId:n}})},async fetchMessage(e){let{channelId:t,messageId:n}=e,i=await a.Bo.get({url:D.Rsh.MESSAGES(t),query:{limit:1,around:n},retries:2,oldFormErrors:!0,rejectWithError:!1});if(i.body.length>0)return(0,H.rh)(i.body[0])},fetchMessages(e){let{channelId:t,before:n,after:i,limit:r,jump:s,focus:o,isPreload:u,skipLocalFetch:c,truncate:_,forICYMI:h,avoidInitialScroll:f,feature:E,fetchKey:p}=e,g=q.A.getChannel(t),A=v.A.isConnectedOrOverlay(),I=Date.now();if(null!=g&&g.type===D.rbe.GUILD_STORE)return!1;if(t===m.E||(ej.log(`Fetching messages for ${t} between ${i} and ${n}. jump=${JSON.stringify(s)}`),ez._tryFetchMessagesCached({channelId:t,before:n,after:i,limit:r,jump:s,focus:o,truncate:_})))return;eI.A.fetchMessages.recordStart(),B.A.recordChannelFetchStart(t,p??I,n,i,r);let T=s??void 0;null==T&&null!=o&&(T={...o});let S=d.A.getOrCreate(t).loadStart(T);d.A.commit(S),l.h.dispatch({type:"LOAD_MESSAGES"});let N=T?.messageId,C=new eY;return c||this.fetchLocalMessages(t,p??I,n,i,r,C),a.Bo.get({url:D.Rsh.MESSAGES(t),query:{before:n,after:i,limit:r,around:N,preload:u,feature:E},retries:2,oldFormErrors:!0,rejectWithError:!1}).then(e=>(eI.A.fetchMessages.recordEnd(),eI.A.dispatchMessages.measure(()=>{let a=e.body,o=null!=n,u=null!=i,d=null==n&&null==i,c=null!=N||a.length===r&&(o||d),E=null!=N||u&&a.length===r;if(null!=N){let e=Math.floor(r/2),n=e+r%2,i=[N,...a.map(e=>{let{id:t}=e;return t})].filter((e,t,n)=>n.indexOf(e)===t).sort(ex.default.compare).indexOf(N);if(i<n-1&&(c=!1),a.length-i<e&&(E=!1),E&&a.length>0){let e=eO.Ay.lastMessageId(t);a[0].id===e&&(E=!1)}}ej.log(`Fetched ${a.length} messages for ${t} isBefore:${o} isAfter:${u}`),C.markComplete(),l.h.dispatch({type:"LOAD_MESSAGES_SUCCESS",channelId:t,messages:a,isBefore:o,isAfter:u,hasMoreBefore:c,hasMoreAfter:E,limit:r,jump:s,forICYMI:h,isStale:!A||v.A.lastTimeConnectedChanged()>=I,truncate:_,avoidInitialScroll:f}),B.A.recordChannelFetchedNetwork(t,p??I,n,i,r,a)}),!0),()=>(ej.log(`Failed to fetch messages for ${t}`),l.h.dispatch({type:"LOAD_MESSAGES_FAILURE",channelId:t}),!1))},async fetchLocalMessages(e,t,n,i,r,s){let a=q.A.getBasicChannel(e),o=d.A.getOrCreate(e),u=h.A.database();if(null==u||null==a||null!=n||null!=i)return void eI.A.addLocalMessages(e,-1);if(o.ready&&!o.cached)return void eI.A.addLocalMessages(e,-2);let c=await (0,f.kk)(()=>E.Ay.load(u,e,r));if(null==c)return void eI.A.addLocalMessages(e,-3);if(ej.log(`fetched ${c.messages.length} messages from local database (channel_id: ${e}, remote_fetch_completed: ${s.completed})`),eI.A.addLocalMessages(e,c.messages.length),!s.completed&&c.messages.length>0){let s=c.messages.length>=r&&c.connectionId===v.A.lastTimeConnectedChanged();B.A.recordChannelFetchedLocal(e,t,n,i,r,c.messages),l.h.dispatch({type:"LOCAL_MESSAGES_LOADED",guildId:a.guild_id,channelId:e,users:c.users,members:c.members,messages:c.messages,stale:!s})}},async fetchNewLocalMessages(e,t){let n=q.A.getBasicChannel(e),i=h.A.database();if(null==i||null==n)return;let r=d.A.getOrCreate(e);if(r.hasMoreAfter)return;let s=await (0,f.kk)(()=>E.Ay.load(i,e,t));if(null==s)return;r=d.A.getOrCreate(e);let a=r.last()?.id,o=null==a?s.messages:s.messages.filter(e=>ex.default.compare(e.id,a)>0);ej.log(`Fetched ${s.messages.length} messages from the cache after foregrounding. ${o.length} are new`),0!==o.length&&l.h.dispatch({type:"LOCAL_MESSAGES_LOADED",guildId:n.guild_id,channelId:e,users:s.users,members:s.members,messages:o,stale:!0,isForegroundCacheLoad:(0,eo.K)()})},_tryFetchMessagesCached(e){let{channelId:t,before:n,after:i,limit:r,jump:s,focus:a,truncate:o}=e,u=ey.A.getMessages(t);if(u.cached||!u.ready)return!1;if(s?.messageId!=null||a?.messageId!=null){if(s?.messageId!=null&&u.has(s.messageId,!1))return l.h.dispatch({type:"LOAD_MESSAGES_SUCCESS_CACHED",channelId:t,jump:s,limit:r,truncate:o}),!0;if(a?.messageId!=null)if(u.has(a.messageId,!1))return l.h.dispatch({type:"LOAD_MESSAGES_SUCCESS_CACHED",channelId:t,focus:a,limit:r,truncate:o}),!0;else s={...a};let e=s?.messageId!=null?ex.default.extractTimestamp(s?.messageId):0,n=u.first(),i=u.last();if(!u.hasMoreBefore&&null!=n&&ex.default.extractTimestamp(n.id)>=e||!u.hasMoreAfter&&null!=i&&ex.default.extractTimestamp(i.id)<=e||null!=n&&null!=i&&ex.default.extractTimestamp(n.id)<e&&ex.default.extractTimestamp(i.id)>e)return l.h.dispatch({type:"LOAD_MESSAGES_SUCCESS_CACHED",channelId:t,jump:s,limit:D.d7Q}),!0}else if(null!=n&&u.hasBeforeCached(n))return l.h.dispatch({type:"LOAD_MESSAGES_SUCCESS_CACHED",channelId:t,before:n,limit:r,truncate:o}),!0;else if(null!=i&&u.hasAfterCached(i))return l.h.dispatch({type:"LOAD_MESSAGES_SUCCESS_CACHED",channelId:t,after:i,limit:r,truncate:o}),!0;return!1},async sendMessage(e,t){let n=!(arguments.length>2)||void 0===arguments[2]||arguments[2],i=arguments.length>3?arguments[3]:void 0;if(t.reaction)return Promise.resolve();let r=await eh(e);if(null!=r)return ez.sendMessage(r,t,n,i);let s=i.nonce??(0,es.m)();i={...i,nonce:s};let a=function(){return ez._sendMessage(e,t,i)};return(en.recordMessageSendAttempt(e,s,i),ey.A.isReady(e))?a():n&&e!==m.E?(eH.info(`Waiting for channel ${e} to be ready before sending.`),new Promise((t,n)=>{ey.A.whenReady(e,()=>{eH.info(`Channel ${e} is ready for sending now.`),a().then(t,n)})})):a()},getSendMessageOptionsForReply:e=>null==e?{}:{messageReference:{guild_id:e.channel.getGuildId()??void 0,channel_id:e.channel.id,message_id:e.message.id},allowedMentions:e.shouldMention?void 0:{parse:Object.values(D.uw8),replied_user:!1},mediaMention:e.mediaMention},getSendMessageOptionsForStickers(e){let{isGif:t,stickers:n}=e;return null==n||0===n.length||t?{}:{stickerIds:n}},getSendMessageOptionsForScheduledMessage(e){let{scheduledTimestamp:t}=e;return null==t?{}:{scheduledTimestamp:t}},getSendMessageOptionsForAlsoForwardToChannel:e=>({alsoForwardToChannelId:e.alsoForwardToChannelId}),getSendMessageOptions(e){let t=ez.getSendMessageOptionsForReply(e.pendingReply),n=ez.getSendMessageOptionsForStickers({...e}),i=ez.getSendMessageOptionsForScheduledMessage({...e}),r=ez.getSendMessageOptionsForAlsoForwardToChannel({...e});return{...t,...n,...i,...r}},sendInvite(e,t,n,i,r){let s=(0,F.A)(t);return null!=r&&(s=`${r}
${s}`),ez._sendMessage(e,{content:s,tts:!1,validNonShortcutEmojis:[],invalidEmojis:[]},{location:n,inviteAnalyticsMetadata:i})},sendActivityBookmark:(e,t,n,i)=>ez._sendMessage(e,{content:t,tts:!1,validNonShortcutEmojis:[],invalidEmojis:[]},{location:n,inviteAnalyticsMetadata:i}),sendStickers(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],s="string"==typeof n?{content:n,invalidEmojis:[],validNonShortcutEmojis:[],tts:r}:{...n,tts:n.tts??r};return ez._sendMessage(e,s,{...i,stickerIds:t})},sendGreetMessage(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{messageReference:i,allowedMentions:r}=n;return a.Bo.post({url:D.Rsh.MESSAGES_GREET(e),body:{sticker_ids:[t],allowed_mentions:r,message_reference:i},oldFormErrors:!0,rejectWithError:!1,context:{location:eF.Hx.GREET}}).then(n=>(ei.donateSentMessage(n.body.content,e),ez.receiveMessage(e,n.body),l.h.dispatch({type:"STICKER_TRACK_USAGE",stickerIds:[t]}),n),t=>{throw ej.log("Failed to send greeting"),429!==t.status&&ez.sendClydeError(e,t.body.code),l.h.dispatch({type:"MESSAGE_SEND_FAILED",messageId:t.body.id,channelId:e}),t})},sendPollMessage(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return ez._sendMessage(e,{content:"",tts:!1,validNonShortcutEmojis:[],invalidEmojis:[]},{...n,poll:t,location:eF.Hx.POLL_CREATION})},validateMessage(e,t,n){let i,r;return e.some(e=>e.animated)&&!eM.Ay.canUseAnimatedEmojis(t)?(i=eB.intl.string(eB.t.msFJy8),r="INVALID_ANIMATED_EMOJI_BODY"):ev.A.canWithPartialContext(D.xBc.USE_EXTERNAL_EMOJIS,{channelId:n})?(i=eB.intl.string(eB.t.FzugNl),r="INVALID_EXTERNAL_EMOJI_BODY_UPGRADE"):(i=eB.intl.string(eB.t["Q87rI/"]),r="INVALID_EXTERNAL_EMOJI_BODY"),{errorMessage:i,errorMessageName:r}},async _sendMessage(e,t,n){let i,a=eh(e);if(null!=a)return eH.info("Converting channel to a private channel"),a.then(e=>(eH.info("Finished converting channel to a private channel"),ez._sendMessage(e,t,n)));let o=t.content,{invalidEmojis:u,validNonShortcutEmojis:d,tts:h=!1}=t,{activityAction:f,location:E,inviteAnalyticsMetadata:m,stickerIds:S,messageReference:v,allowedMentions:R,poll:O,sharedCustomTheme:b,contentInventoryEntry:w,attachments:G,attachmentsToUpload:V,onAttachmentUploadError:F,announcementSendOptions:B,withCheckpoint:j,mediaMention:K}=n,$=n.flags??0,[z,Z]=(0,eg.A)(o);z&&(o=Z,$=(0,s.UI)($,D.pr7.SUPPRESS_NOTIFICATIONS));let X=q.A.getChannel(e),Q=eN.A.getGuild(X?.guild_id);(0,Y.Zv)(Q,X,"_sendMessage")&&($=(0,s.UI)($,D.pr7.IS_GUILD_OFFICIAL));let J=!1,ee=n.messageReference?.type===D.SH7.FORWARD;if(""===o&&null==f&&null==S&&null==O&&null==b&&null==w&&!ee&&(null==G||0===G.length)&&!j&&(null==t.components||0===t.components.length))if(null==V||!(V.length>0))return Promise.resolve();else J=!0;let et=null!=v?D.lAJ.REPLY:D.lAJ.DEFAULT,eo=n.nonce??(0,es.m)(),ec=(0,er.Ay)({channelId:e,content:o,tts:h,type:et,messageReference:v,allowedMentions:R,flags:0!==$?$:void 0,nonce:eo,poll:(0,ed.G8)(O),sharedCustomTheme:b,mediaMention:K});if(!1!==n.eagerDispatch&&((0,el.iq)(e,ec.id),null!=S&&(ec.sticker_items=S.map(e=>em.A.getStickerById(e)).filter(e=>null!=e)),ez.receiveMessage(e,ec,!0,n)),!eW&&null!=u&&u.length>0){eW=!0;let t=eL.default.getCurrentUser(),{errorMessage:n,errorMessageName:i}=ez.validateMessage(u,t,e);ez.sendBotMessage(e,n,i)}let e_={type:null!=B?c.AZ.SEND_ANNOUNCEMENT:c.AZ.SEND,message:{channelId:e,content:o,nonce:eo,tts:h,message_reference:v,allowed_mentions:R,flags:$,analyticsLocation:E}};if(null!=t.components&&(e_.message.components=t.components),null!=B&&(e_.message.create_thread=B.createThread,e_.message.title=B.threadName,e_.message.publish=B.publish??!1),null!=f){let e,t=f?.activity.session_id;if(null!=(e=f.type===D.xL.JOIN_REQUEST||f.type===D.xL.STREAM_REQUEST||null!=t?t:eS.default.getSessionId())){let t={type:f.type,session_id:e,target_user_id:f.targetUserId},{activity:n}=f;null!=n.party&&null!=n.party.id&&(t.party_id=n.party.id),e_.message.application_id=n.application_id,e_.message.activity=t}}if(null!=O&&(e_.message.poll=O),null!=b&&(e_.message.shared_client_theme=b),null!=S&&(e_.message.sticker_ids=S),eu.A.isEnabled()&&(e_.message.has_poggermode_enabled=!0),j&&(e_.message.with_checkpoint=!0),null!=w&&(e_.message.content_inventory_entry=w),null!=K&&(e_.message.media_mention=K),null!=G&&G.length>0&&(e_.message.attachments=G),null!=V&&V.length>0)try{let t=await W({channelId:e,nonce:eo,items:V,message:ec,shouldUploadFailureSendNotification:!n.doNotNotifyOnError&&void 0});if(null==t)return;let r=t.attachments;if(i=t.uploader,J&&(null==r||0===r.length))return;null!=r&&(e_.message.attachments=r.map((e,t)=>(0,eU.OW)(e,t)))}catch(r){let{file:e,code:t,reason:n,responseBody:i}=r;ea({fileItems:e.items,failureCode:t,errorMessage:n?.msg}),F?.(e,t,n,i);return}return new Promise((t,s)=>{let a=Date.now(),u=c.Ay.length,h=Math.floor(1e4*Math.random());eH.info(`Queueing message to be sent LogId:${h}`),c.Ay.enqueue(e_,f=>{let R=Date.now()-a;if(f.ok){var b,G,F,B,j,W,Y;let s;ei.donateSentMessage(o,e),ez.receiveMessage(e,f.body,!0,{sendAnalytics:{duration:R,queueSize:u},poll:O}),null!=n.alsoForwardToChannelId&&C.A.sendForward((0,H.rh)(f.body),n.alsoForwardToChannelId).then(()=>{!function(e){let{referencedMessageId:t,guildId:n,channelId:i,destinationChannelId:r}=e;L.default.track(D.HAw.MESSAGE_ALSO_SEND_TO_CHANNEL_SENT,{referenced_message_id:t,guild_id:n,channel_id:i,destination_channel_id:r})}({referencedMessageId:f.body?.id,guildId:f.body?.guild_id,channelId:f.body?.channel_id,destinationChannelId:n.alsoForwardToChannelId})}).catch(t=>{ej.log(`Failed to forward thread message to parent channel LogId:${h}`,{referencedMessageId:f.body?.id,channelId:e,destinationChannelId:n.alsoForwardToChannelId,error:t.toString()})});let a=ex.default.cast(e),c=U.A.getRequest(a);if(null!=c){let{guildId:t,userId:n,applicationStatus:i}=c;(0,x.cK)({guildId:t,channelId:e,messageId:f.body.id,joinRequestStatus:i,joinRequestUserId:n})}en.recordMessageSendApiResponse(eo),l.h.dispatch({type:"SLOWMODE_RESET_COOLDOWN",slowmodeType:eb.R.SendMessage,channelId:e}),l.h.dispatch({type:"EMOJI_TRACK_USAGE",emojiUsed:d}),l.h.dispatch({type:"STICKER_TRACK_USAGE",stickerIds:S}),l.h.dispatch({type:"LOCAL_MESSAGE_CREATE",message:{channel_id:e,author:eL.default.getCurrentUser()}}),function(e){let{content:t,channelId:n,messageId:i,location:s,inviteAnalyticsMetadata:a,overrideProperties:o={}}=e,l=eS.default.getId();(0,T.Ay)(t).forEach(e=>{let{type:t,code:u,url:d}=e;if((0,A.Yf)(t)){let e=(0,A.kK)(t,u,d);if(null==e)return;let{applicationId:n}=e;switch(e.type){case I.I.APP_DIRECTORY_PROFILE:P(n),(0,p.KL)(u,eG.J.APP_DISCOVERY,l);break;case I.I.APP_DIRECTORY_STOREFRONT:P(n,"storefront");break;case I.I.APP_DIRECTORY_STOREFRONT_SKU:P(n,"storefront_sku");break;case I.I.ACTIVITY_BOOKMARK:{let{params:t}=e;(0,p.KL)(n,eG.J.ACTIVITY,t.referrerId??l,t.customId);break}case I.I.APP_OAUTH2_LINK:(0,p.KL)(n,eG.J.OAUTH,l),_.Ay.trackWithMetadata(D.HAw.APP_OAUTH2_LINK_EMBED_URL_SENT,{application_id:n})}}else switch(t){case I.I.INVITE:eK({inviteKey:u,channelId:n,messageId:i,location:s,inviteAnalyticsMetadata:a,overrideProperties:o});break;case I.I.TEMPLATE:{let e=k.A.getGuildTemplate(u);if(null==e||e.state===eV.QB.RESOLVING)return;_.Ay.trackWithMetadata(D.HAw.GUILD_TEMPLATE_LINK_SENT,{guild_template_code:u,guild_template_name:e.name,guild_template_description:e.description,guild_template_guild_id:e.sourceGuildId});break}case I.I.BUILD_OVERRIDE:case I.I.EXPERIMENT:case I.I.MANUAL_BUILD_OVERRIDE:case I.I.EVENT:case I.I.CHANNEL_LINK:break;case I.I.EMBEDDED_ACTIVITY_INVITE:(0,p.KL)(u,eG.J.ACTIVITY_INVITE,l);break;case I.I.GUILD_PRODUCT:case I.I.SERVER_SHOP:case I.I.SOCIAL_LAYER_STOREFRONT:case I.I.SOCIAL_LAYER_STOREFRONT_APP:break;case I.I.QUESTS_EMBED:{let e=(0,eE.L4)(r.u.QUESTS_EMBED);(0,ef.av)({questId:u,event:D.HAw.QUEST_LINK_SHARED,properties:{metadata_sealed:null!=e?e:null},trackGuildAndChannelMetadata:!0,sourceQuestContent:r.u.QUESTS_EMBED});break}case I.I.GAME_PROFILE:if(!y.A.getConfig({location:"trackCodedLinks"}).enabled)break;L.default.track(D.HAw.GAME_PROFILE_LINK_EMBED_SENT,{game_id:u});break;case I.I.COLLECTIBLES_SHOP:break;default:throw Error(`Unknown coded link type: ${t}`)}})}({content:o,channelId:e,messageId:f.body.id,location:E??"chat_input",inviteAnalyticsMetadata:m}),b=o,G=f.body.id,F=E??"chat_input",B=!!n.isGiftLinkSentOnBehalfOfUser,(0,eP.e7)(b).forEach(t=>{let n=q.A.getChannel(e);null!=n&&_.Ay.trackWithMetadata(D.HAw.GIFT_CODE_SENT,{location:F,gift_code:t,guild_id:n.getGuildId(),channel_id:n.id,channel_type:n.type,message_id:G,automatic_send:B})}),null!=n.gifMetadata&&(j=n.gifMetadata,W=f.body.id,Y=E??"chat_input",null!=(s=q.A.getChannel(e))&&L.default.track(D.HAw.MESSAGE_SENT_WITH_GIF,{location:Y,message_id:W,gif_provider:j.gif_provider,load_id:j.load_id,source_object:j.source_object,gif_url:j.gif_url,gif_id:j.gif_id,...(0,_.H$)(s.getGuildId()),...(0,_.dI)(s)})),function(e){let{channelId:t,messageId:n,attachments:i,attachmentsToUpload:r,messageReference:s}=e;if(i.length!==r.length)return;let a=q.A.getChannel(t);if(null==a)return;let o=ep.A.getMessageByReference(s);r.forEach((e,r)=>{let{clip:s}=e;if(null==s)return;let l=o.state===ep.a.LOADED&&o.message.attachments.some(e=>e.clip_remote_id===s.remoteClipId);L.default.track(D.HAw.CLIP_SHARED,{...g.Zy(s),...g.lc("trackClipsShared"),channel_id:t,guild_id:a.getGuildId(),channel_type:a.type,application_id:s.applicationId,clip_uuid:s.id,remote_clip_id:s.remoteClipId,message_id:n,attachment_id:i[r].id,is_distributed_clip_reply:l})})}({channelId:e,messageId:f.body.id,attachments:f.body.attachments??[],attachmentsToUpload:V??[],messageReference:v}),null!=i&&l.h.dispatch({type:"UPLOAD_COMPLETE",channelId:e,file:i._file,aborted:!1}),t(f)}else{let t;ej.log("Failed to send message",{hasErr:f.hasErr,status:f.status,code:f.body?.code,error:f.err});let r=!1;if(f.hasErr)"ABORTED"===f.err.code&&(r=!0);else if(f.status>=400&&f.status<500&&f.body)if(f.body.code===D.t02.SLOWMODE_RATE_LIMITED){let t=f.body.retry_after;null!=t&&t>0&&l.h.dispatch({type:"SLOWMODE_SET_COOLDOWN",channelId:e,slowmodeType:eb.R.SendMessage,cooldownMs:t*eD.A.Millis.SECOND})}else M.yf.has(f.body.code)?l.h.dispatch({type:"MESSAGE_SEND_FAILED_AUTOMOD",messageData:e_,errorResponseBody:{code:f.body.code,message:f.body.message}}):f.body.code===D.t02.POGGERMODE_TEMPORARILY_DISABLED?l.h.dispatch({type:"POGGERMODE_TEMPORARILY_DISABLED"}):f.body.code===D.t02.EXPLICIT_CONTENT?t=eF.ty.EXPLICIT_CONTENT:null!=O||ee||null!=w||ez.sendClydeError(e,f.body.code);r?ez.deleteMessage(e,eo,!0):(null!=i&&l.h.dispatch({type:"UPLOAD_FAIL",channelId:e,file:i._file,messageId:eo,reason:t,noSendFailed:!0}),f.hasErr||t!==eF.ty.EXPLICIT_CONTENT||ez.sendExplicitMediaClydeError(e,f.body?.attachments,N.SW.EXPLICIT_MEDIA_MESSAGE_SEND_BLOCKED),l.h.dispatch({type:"MESSAGE_SEND_FAILED",messageId:eo,channelId:e,shouldNotify:!n.doNotNotifyOnError,reason:t}),ea({failureCode:f.hasErr?void 0:f.status,errorMessage:f.hasErr?f.err.message:void 0}),c.Ay.cancelPendingSendRequests(e).forEach(e=>{ej.log("Cancelling pending message",e.nonce),l.h.dispatch({type:"MESSAGE_SEND_FAILED",messageId:e.nonce,channelId:e.channelId})})),s(f)}},h)})},startEditMessage(e,t,n,i){l.h.dispatch({type:"MESSAGE_START_EDIT",channelId:e,messageId:t,content:n,source:i})},startEditMessageRecord(e,t,n){if((0,s.Lt)(t.flags,D.pr7.IS_COMPONENTS_V2)){let i=t.components.filter(e=>e.type===u.I5.TEXT_DISPLAY);if(i.length>0){let r=i.map(e=>e.content).join("\n");l.h.dispatch({type:"MESSAGE_START_EDIT",channelId:e,messageId:t.id,content:r,source:n});return}}l.h.dispatch({type:"MESSAGE_START_EDIT",channelId:e,messageId:t.id,content:t.content,source:n})},updateEditMessage(e,t,n){l.h.dispatch({type:"MESSAGE_UPDATE_EDIT",channelId:e,textValue:t,richValue:n})},endEditMessage(e,t){l.h.dispatch({type:"MESSAGE_END_EDIT",channelId:e,response:t})},async editMessage(e,t,n){let i,{content:r,components:s}=n;await eA.A.unarchiveThreadIfNecessary(e);let a=function(e,t){let n=ey.A.getMessage(e,t);if(null==n||n.type!==D.lAJ.REPLY)return;let i=ep.A.getMessageByReference(n.messageReference);if(i.state===ep.a.LOADED&&!n.mentions.includes(i.message.author.id))return{parse:Object.values(D.uw8),replied_user:!1}}(e,t),u=null!=(i=ey.A.getMessage(e,t))&&i.hasFlag(D.pr7.CROSSPOSTED),d={channelId:e,messageId:t,content:r,isCrossposted:u,allowed_mentions:a,components:s};c.Ay.enqueue({type:c.AZ.EDIT,message:d},n=>{let i=!n.hasErr&&M.yf.has(n.body.code);if(i){let e={type:c.AZ.EDIT,message:d};l.h.dispatch({type:"MESSAGE_EDIT_FAILED_AUTOMOD",messageData:e,errorResponseBody:{code:n.body.code,message:n.body.message}})}n.hasErr?o.O.announce(eB.intl.string(eB.t.Atp7FP)):i?o.O.announce(eB.intl.string(eB.t.Hym4ix)):o.O.announce(eB.intl.string(eB.t["0x1HBD"])),ez.endEditMessage(e,n.hasErr?void 0:n),ez.focusMessage({channelId:e,messageId:t})})},async suppressEmbeds(e,t){await eA.A.unarchiveThreadIfNecessary(e);let n=ey.A.getMessage(e,t);null!=n&&a.Bo.patch({url:D.Rsh.MESSAGE(e,t),body:{flags:(0,s.lA)(n.flags,D.pr7.SUPPRESS_EMBEDS,!0)},oldFormErrors:!0,rejectWithError:!1})},async patchMessageGuildOfficial(e,t,n){await eA.A.unarchiveThreadIfNecessary(e);let i=ey.A.getMessage(e,t);null!=i&&a.Bo.patch({url:D.Rsh.MESSAGE(e,t),body:{flags:(0,s.lA)(i.flags,D.pr7.IS_GUILD_OFFICIAL,n)},oldFormErrors:!0,rejectWithError:!1})},async patchMessageAttachments(e,t,n){await eA.A.unarchiveThreadIfNecessary(e),a.Bo.patch({url:D.Rsh.MESSAGE(e,t),body:{attachments:n},oldFormErrors:!0,rejectWithError:!1})},async deleteMessage(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];function i(){l.h.dispatch({type:"MESSAGE_DELETE",id:t,channelId:e}).then(()=>{o.O.announce(eB.intl.string(eB.t.RYMs7s))})}n?i():(await eA.A.unarchiveThreadIfNecessary(e),a.Bo.del({url:D.Rsh.MESSAGE(e,t),oldFormErrors:!0,rejectWithError:!1}).then(()=>{i()}))},dismissAutomatedMessage(e){null!=e.loggingName&&_.Ay.trackWithMetadata(D.HAw.AUTOMATED_MESSAGE_DISMISSED,{message_name:e.loggingName,message_author:e.author.username}),(0,ec.np)(e.channel_id,e.id),this.deleteMessage(e.channel_id,e.id,!0)},revealMessage(e,t){l.h.dispatch({type:"MESSAGE_REVEAL",channelId:e,messageId:t})},async crosspostMessage(e,t){try{return await a.Bo.post({url:D.Rsh.MESSAGE_CROSSPOST(e,t),oldFormErrors:!0,failImmediatelyWhenRateLimited:!0,rejectWithError:!1})}catch(t){let e;e=429===t.status?eB.intl.formatToPlainString(eB.t["77cuqz"],{retryAfter:Math.floor(t.body.retry_after/60)}):eB.intl.string(eB.t.z2gyNF),ek.A.show({title:eB.intl.string(eB.t.Vd1hs6),body:e,confirmText:eB.intl.string(eB.t.BddRzS)})}},trackInvite:eK},eq=ez}