Build 545032stable
Module 567761
9,443 characters · in no known chunkDependencies
Lazily required by (0)none
Requires (29)
Lazily requires (1)
Source Raw
function(e,t,n){"use strict";let i,r,s;n.d(t,{default:()=>ee}),n(321073);var a=n(989349),o=n.n(a),l=n(17928),u=n(713402),c=n(228366),d=n(695870),_=n(380335),f=n(157550);n(134528),n(947204);var h=n(626584),p=n(710195),E=n(427358),m=n(885386),g=n(617617),A=n(495544),I=n(734057),T=n(222823),S=n(994500),N=n(309010),y=n(543465),C=n(174459),v=n(945810),O=n(927813);let R=(0,v.mj)({name:"2026-01-reply-nudge",kind:"user",defaultConfig:{enabled:!1,displayNudges:!1,minUserDMAffinity:-1,maxNudgeCount:1,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:12*O.A.Millis.HOUR,minLatestMessageAgeMs:24*O.A.Millis.HOUR},variations:{0:{enabled:!0,displayNudges:!1,minUserDMAffinity:-1,maxNudgeCount:2,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:12*O.A.Millis.HOUR,minLatestMessageAgeMs:24*O.A.Millis.HOUR},1:{enabled:!0,displayNudges:!0,minUserDMAffinity:-1,maxNudgeCount:2,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:12*O.A.Millis.HOUR,minLatestMessageAgeMs:24*O.A.Millis.HOUR},2:{enabled:!0,displayNudges:!0,minUserDMAffinity:.05,maxNudgeCount:2,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:12*O.A.Millis.HOUR,minLatestMessageAgeMs:24*O.A.Millis.HOUR},3:{enabled:!0,displayNudges:!0,minUserDMAffinity:-1,maxNudgeCount:2,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:36*O.A.Millis.HOUR,minLatestMessageAgeMs:24*O.A.Millis.HOUR},4:{enabled:!0,displayNudges:!0,minUserDMAffinity:.05,maxNudgeCount:2,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:36*O.A.Millis.HOUR,minLatestMessageAgeMs:24*O.A.Millis.HOUR},5:{enabled:!0,displayNudges:!0,minUserDMAffinity:-1,maxNudgeCount:5,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:5*O.A.Millis.MINUTE,minLatestMessageAgeMs:5*O.A.Millis.MINUTE},6:{enabled:!0,displayNudges:!1,minUserDMAffinity:-1,maxNudgeCount:5,maxNudgeAge:3*O.A.Millis.DAY,minSinceReceiverMessageMs:6*O.A.Millis.HOUR,minLatestMessageAgeMs:6*O.A.Millis.HOUR}}}),b=7*O.A.Millis.DAY,D=-(3*O.A.Millis.HOUR);var L=n(652215);let w=new h.A("ReplyNudgeStore"),M=!1,P=!1,x={},U=new Set;function k(e,t){let{maxNudgeAge:i,maxNudgeCount:r}=t,s=Date.now(),a={},o=Object.entries(e);o.sort((e,t)=>t[1].timestamp-e[1].timestamp);let l=0;for(let[e,{timestamp:t,isActive:u,lastMessageId:c,affinity:d,authorId:_}]of o)if(null!=t&&s-t<b){let o=s-t,f=T.Ay.lastMessageId(e),h=u&&o>=i,p=u&&l>=r,E=u&&f!==c,m=u&&!h&&!p&&!E,g=null;if(h?g="aged_out":p?g="evicted_max_count":E&&(g="more_recent_message"),a[e]={timestamp:t,isActive:m,lastMessageId:c,affinity:d,authorId:_},m)l++;else if(u){let t=I.A.getChannel(e);Promise.resolve().then(n.bind(n,567761)).then(n=>{let{default:i}=n;C.default.track(L.HAw.REPLY_NUDGE_DISMISSED,{channel_id:e,channel_type:t?.type,guild_id:t?.guild_id,dismiss_method:g,nudge_age_ms:o,nudge_author_affinity:d,nudge_author_id:_,nudge_author_is_friend:S.A.isFriend(_),nudge_message_id:c,channel_dm_list_index:i.getPrivateChannelIds().indexOf(e)})})}}return w.info(`Pruned ${o.length-Object.keys(a).length} expired nudges`),a}function G(e,t){if(!(e in x))return!1;let i=x[e];if(!i.isActive)return!1;let r=Date.now()-i.timestamp;x[e].isActive=!1;let s=I.A.getChannel(e);return Promise.resolve().then(n.bind(n,567761)).then(n=>{let{default:a}=n;C.default.track(L.HAw.REPLY_NUDGE_DISMISSED,{channel_id:e,channel_type:s?.type,guild_id:s?.guild_id,dismiss_method:t,nudge_age_ms:r,nudge_author_affinity:i.affinity,nudge_author_id:i.authorId,nudge_message_id:i.lastMessageId,nudge_author_is_friend:S.A.isFriend(i.authorId),channel_dm_list_index:a.getPrivateChannelIds().indexOf(e)})}),!0}function F(){let e=[];for(let[t,{isActive:n}]of Object.entries(x))n&&e.push(t);return e}function V(){let{displayNudges:e,maxNudgeAge:t,maxNudgeCount:n}=R.getConfig({location:"handleNudgeVisibilityChange"}),i=!1!==m.LJ.getSetting()&&e;if(M===i)return!1;(M=i)&&(x=k(x,{maxNudgeAge:t,maxNudgeCount:n}),U=new Set(F())),!1===m.LJ.getSetting()&&(x={},U=new Set)}function B(){let e=!1;for(let t of Object.keys(x))if(y.Ay.isChannelMuted(null,t)){let i=x[t];if(i?.isActive){let e=I.A.getChannel(t);Promise.resolve().then(n.bind(n,567761)).then(n=>{let{default:r}=n;C.default.track(L.HAw.REPLY_NUDGE_DISMISSED,{channel_id:t,channel_type:e?.type,guild_id:e?.guild_id,dismiss_method:"channel_muted",nudge_age_ms:Date.now()-i.timestamp,nudge_author_affinity:i.affinity,nudge_author_id:i.authorId,nudge_message_id:i.lastMessageId,nudge_author_is_friend:S.A.isFriend(i.authorId),channel_dm_list_index:r.getPrivateChannelIds().indexOf(t)})})}delete x[t],e=!0}return e}class H extends l.Ay.PersistedStore{static displayName="ReplyNudgeStore";static persistKey="ReplyNudgeStore";initialize(e){x=e?.nudgedChannels??{},this.waitFor(p.A,A.default,I.A,T.Ay,S.A,N.A,E.A,y.Ay,g.A),this.syncWith([g.A,p.A],V),this.syncWith([y.Ay],B)}getState(){return{nudgedChannels:x}}getNudgeTimestamp(e){if(!M)return null;let t=x[e];return null==t?null:t.isActive||U.has(e)?x[e].timestamp??null:null}getNudgeDMTimestamp(e){let t=this.getNudgeTimestamp(e);return null==t?null:t+D}isChannelNudged(e){let{includeInvisible:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(!!M||!!t)&&x[e]?.isActive===!0}getChannelNudge(e){let{includeInvisible:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return M||t?x[e]??null:null}isNudgesInitialized(){return P}}let j=new H(c.h,{REPLY_NUDGE_SET:function(e){let{channelId:t,timestamp:i,lastMessageId:r,affinity:s,authorId:a}=e;if(y.Ay.isChannelMuted(null,t))return!1;let{maxNudgeAge:o,maxNudgeCount:l}=R.getConfig({location:"handleReplyNudgeSet"});if(t in(x=k(x,{maxNudgeAge:o,maxNudgeCount:l})))return!1;let u=F();if(u.length>=l){let e=u.at(-1),i=1/0;for(let t of u){let n=x[t];null!=n&&n.affinity<i&&(i=n.affinity,e=t)}if(s<i)return w.info("handleReplyNudgeSet: New nudge is lower than the lowest affinity. No space to nudge.",{channelId:t,lowestAffinity:i,newNudgeAffinity:s}),!1;w.info("handleReplyNudgeSet: Evicting nudge with lowest affinity",{channelId:t,lowestAffinity:i,newNudgeAffinity:s});let r=x[e];if(r?.isActive){let t=I.A.getChannel(e);Promise.resolve().then(n.bind(n,567761)).then(n=>{let{default:i}=n;C.default.track(L.HAw.REPLY_NUDGE_DISMISSED,{channel_id:e,channel_type:t?.type,guild_id:t?.guild_id,dismiss_method:"evicted_affinity",nudge_age_ms:Date.now()-r.timestamp,nudge_author_affinity:r.affinity,nudge_author_id:r.authorId,nudge_message_id:r.lastMessageId,nudge_author_is_friend:S.A.isFriend(r.authorId),channel_dm_list_index:i.getPrivateChannelIds().indexOf(e)})})}delete x[e]}x[t]={timestamp:i,isActive:!0,lastMessageId:r,affinity:s,authorId:a},U.add(t)},REPLY_NUDGE_CLEAR:function(e){let{channelId:t}=e;return G(t,"manual")},REPLY_NUDGES_INITIALIZED:function(){if(P)return!1;P=!0;let{maxNudgeAge:e,maxNudgeCount:t}=R.getConfig({location:"handleNudgesInitialized"});x=k(x,{maxNudgeAge:e,maxNudgeCount:t})},MESSAGE_CREATE:function(e){let{message:t}=e;return G(t.channel_id,"message_sent")},MESSAGE_REACTION_ADD:function(e){let{channelId:t,userId:n}=e;return n===A.default.getId()&&G(t,"reaction_added")},CHANNEL_SELECT:function(e){let{guildId:t,channelId:n}=e;return null!=n&&null==t&&G(n,"channel_opened")},CHANNEL_DELETE:function(e){let{channel:{id:t}}=e;return G(t,"channel_deleted")},LOGOUT:function(){x={},U=new Set,M=!1,P=!1}});var Y=n(95701),W=n(71393),K=n(287809),z=n(935208);let $=new u.J(e=>{let{isRequest:t,isFavorite:n}=e;return t?[]:[n?"FAVORITE":"DEFAULT"]},e=>{let{lastMessageId:t,nudgeTimestamp:n}=e;return-Math.max(z.default.extractTimestamp(t),n??0)});function q(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){let t=T.Ay.lastMessageId(e.id)??e.lastMessageId??e.id,n=e.isMessageRequestTimestamp;if(null!=n){let e=o()(n).valueOf(),i=z.default.fromTimestamp(e);return z.default.compare(t,i)>0?t:i}return t}(e);return{channelId:e.id,lastMessageId:t,isFavorite:!1,isRequest:_.A.isMessageRequest(e.id)||f.A.isSpam(e.id),nudgeTimestamp:j.getNudgeDMTimestamp(e.id)}}function Z(){$.clear(),Object.values(I.A.getMutablePrivateChannels()).forEach(e=>{$.set(e.id,q(e))})}function X(){let e=I.A.getMutablePrivateChannels();for(let t in e)$.set(t,q(e[t]))}let Q=(i=[],r=[],s=[],()=>{let e=$.values("FAVORITE"),t=$.values("DEFAULT");return(i!==e||r!==t)&&(s=[],e.forEach(e=>{let{channelId:t}=e;return s.push(t)}),i=e,t.forEach(e=>{let{channelId:t}=e;return s.push(t)}),r=t),s});class J extends l.Ay.Store{static displayName="PrivateChannelSortStore";initialize(){this.waitFor(I.A,W.A,_.A,T.Ay,f.A,y.Ay,K.default,j),this.syncWith([y.Ay,_.A,j],Z)}getPrivateChannelIds(){return Q()}getSortedChannels(){return[$.values("FAVORITE"),$.values("DEFAULT")]}serializeForOverlay(){let e={};return $.values().forEach(t=>{let{channelId:n,lastMessageId:i}=t;e[n]=i}),e}}let ee=new J(c.h,{CONNECTION_OPEN:Z,CONNECTION_OPEN_SUPPLEMENTAL:Z,OVERLAY_INITIALIZE:Z,CACHE_LOADED:X,CACHE_LOADED_LAZY:X,CHANNEL_UPDATES:function(e){let{channels:t}=e;t.forEach(e=>{((0,Y.Gw)(e.type)||$.has(e.id))&&$.set(e.id,q(e))})},CHANNEL_CREATE:function(e){let{channel:t}=e;if(!(0,Y.Gw)(t.type)||t.id===d.E)return!1;$.set(t.id,q(t))},CHANNEL_DELETE:function(e){let{channel:t}=e;return $.delete(t.id)},MESSAGE_CREATE:function(e){let{channelId:t,message:n}=e;if(!$.has(t))return!1;let i=I.A.getChannel(t);return null!=i&&$.set(t,q(i,n.id))},REPLY_NUDGE_SET:function(e){let{channelId:t}=e;if(!$.has(t))return!1;let n=I.A.getChannel(t);return null!=n&&$.set(t,q(n))},GUILD_CREATE:function(e){let t=e.guild.id;return $.delete(t)},LOGOUT:function(){$.clear()}})}