Build 574548stable
Module 480595
3,447 characters · in no known chunkDependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>k}),n(321073),n(938796);var i=n(812729),r=n.n(i),s=n(735438),a=n.n(s),o=n(665260),l=n(17928),u=n(228366),c=n(933958),d=n(182892),_=n(587895),h=n(685396),f=n(952818);let E=[n(732755).A],p=[];function m(){let e=[];for(let t of E){let n=t.getActivity();null!=n&&e.push(n)}return!r()(e,p)&&(p=e,!0)}class g extends l.Ay.Store{static displayName="FirstPartyRichPresenceStore";initialize(){this.syncWith(E,m)}getActivities(){return p}}let A=new g(u.h);var I=n(155718),T=n(871633),S=n(655116),N=n(885386),C=n(617617),y=n(616356),O=n(734057),R=n(760751),v=n(794383),b=n(309010),L=n(528767),D=n(652215);let w=[],P={},M=null;function x(){let e=[],t=N.G2.getSetting();null!=t&&("0"===t.expiresAtMs||new Date(Number(t.expiresAtMs)).getTime()-new Date().getTime()>0)&&e.push((0,h.F)(t));let n=A.getActivities();e.push(...n);let i=v.A.getStream();null!=i&&e.push({type:D.$pd.STREAMING,...i});let s=new Set;a().forEach(P,t=>{let[,n]=t;null!=n.application_id&&(s.add(n.name),e.push(n))});let o=null!=y.A.getCurrentUserActiveStream(),l=f.Ay.getVisibleGame();if(o){let e=y.A.getStreamerActiveStreamMetadata(),t=f.Ay.getVisibleRunningGames(),n=null;e?.pid!=null&&(n=t.find(t=>t.pid===e.pid)??null),null==n&&e?.id!=null&&(n=t.find(t=>t.id===e.id)??null),null!=n?(null==M&&(M=n.start??Date.now()),l=n):M=null}else M=null;let u=null!=l&&null!=l.name&&(s.has(l.name)||function(e,t){if(null===e.id||void 0===e.id)return!1;let n=_.A.getApplication(e.id);return null!=n&&null!=n.linkedGames&&n.linkedGames.length>0&&void 0!==n.linkedGames.find(e=>{var n;return e.type===I.Mh.LINKED&&(n=e.id,null!=t.find(e=>e.application_id===n))})}(l,[...e,...L.A.getRemoteActivities()])),c=null!=l&&l.isLauncher;if(null!=l&&null!=l.name&&!(u||c&&!o)){let t=R.A.findGame(l);e.push({type:D.$pd.PLAYING,name:l.name,application_id:l.id??t?.id,timestamps:{start:M??l.start},...(0,T.CO)(l)})}let d=S.A.getActivity();null!=d&&e.push({type:D.$pd.LISTENING,...d}),r()(w,e)||(w=e)}class U extends l.Ay.Store{static displayName="LocalActivityStore";initialize(){this.waitFor(_.A,y.A,O.A,c.Ay,v.A,A,R.A,f.Ay,b.A,L.A,S.A,C.A),this.syncWith([A],()=>x())}getActivities(){return w}getPrimaryActivity(){return w[0]}getApplicationActivity(e){return this.findActivity(t=>t.application_id===e)}getCustomStatusActivity(){return this.findActivity(e=>e.type===D.$pd.CUSTOM_STATUS)}findActivity(e){return w.find(e)}getApplicationActivities(){return P}getActivityForPID(e){for(let[t,n]of Object.values(P))if(t===e)return n;return null}}let k=new U(u.h,{ROBLOX_SUBGAME_UPDATE:x,ROBLOX_SUBGAME_APPLICATION_FETCH_SUCCESS:x,OVERLAY_INITIALIZE:function(e){let{localActivities:t}=e;P={...t},x()},START_SESSION:function(){P={},x()},LOCAL_ACTIVITY_UPDATE:function(e){let{socketId:t,pid:n,activity:i,partyPrivacy:s}=e;if(r()(P[t],[n,i,s]))return!1;null!=i?P[t]=[n,i,s]:delete P[t],x()},RPC_APP_DISCONNECTED:function(e){let{socketId:t}=e;delete P[t],x()},RUNNING_GAMES_CHANGE:x,LIBRARY_APPLICATION_FLAGS_UPDATE_SUCCESS:x,SPOTIFY_PLAYER_STATE:x,SPOTIFY_PLAYER_PLAY:x,STREAMING_UPDATE:x,USER_CONNECTIONS_UPDATE:x,STREAM_START:x,STREAM_STOP:x,USER_SETTINGS_PROTO_UPDATE:function(){!function(){let e={},t=!1;for(let[n,[i,r,s]]of Object.entries(P)){let a=r.flags??0,l=(0,d.E)(r,(0,o.Lt)(r?.flags??0,D.jUm.INSTANCE),r.platform===D.yTV.EMBEDDED,(0,d.e)(r),s);l!==a?(e[n]=[i,{...r,flags:l},s],t=!0):e[n]=[i,r,s]}t&&(P=e)}(),x()},EMBEDDED_ACTIVITY_CLOSE:x,RUNNING_GAME_TOGGLE_DETECTION:x})}