Build 545032stable
Module 461213
3,163 characters · in no known chunkDependencies
Required by (37)
Lazily required by (0)none
Requires (19)
Lazily requires (0)none
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>V}),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(90644),d=n(655116),_=n(885386),f=n(617617),h=n(674378),p=n(760751),E=n(885576),m=n(189081),g=n(480595),A=n(290863),I=n(528767),T=n(652215);let S=!1,N=T.clD.ONLINE,y=T.clD.UNKNOWN,C=0,v=[],O=[],R=!1,b=!0,D=Object.freeze([]),L=Object.freeze([]),w=[],M=[];function P(e){if(0===e.length)return e;let t=[],n=[];for(let i of e)i.type===T.$pd.PLAYING?n.push(i):t.push(i);return 0===n.length||1===n.length?e:[...t,[...n].sort(A.m)[0]].sort(A.m)}function x(e){return(0,h.kv)(e,m.A)}function U(e){if((0,o.Lt)(e.flags??0,T.jUm.CONTEXTLESS))return!0;switch(e.type){case T.$pd.LISTENING:if((0,c.A)(e))return d.A.shouldShowActivity();if(null!=e.application_id)return x(e.application_id);return!1;case T.$pd.PLAYING:var t;let n;return null!=e.application_id?x(e.application_id):(t=e.name,1===(n=p.A.searchGamesByName(t)).length?x(n[0]):_.tz.getSetting());case T.$pd.STREAMING:case T.$pd.WATCHING:default:return null==e.application_id||x(e.application_id)}}function k(){if(C=E.A.getIdleSince()??0,R=E.A.isAFK(),b)N=y;else if(S)N=T.clD.INVISIBLE;else{let e=_.jP.getSetting();N=e!==T.clD.UNKNOWN?e:T.clD.ONLINE}N===T.clD.ONLINE&&C>0&&(N=T.clD.IDLE);let e=!1,t=b||N===T.clD.INVISIBLE?[]:g.A.getActivities().filter(U);r()(v,t)||(v=t,O=P(t),e=!0);let n=I.A.getRemoteActivities();D!==n&&(D=n,e=!0);let i=I.A.getHiddenActivities();L!==i&&(L=i),e&&(M=P(w=a()([...v,...D.filter(e=>e.type!==T.$pd.CUSTOM_STATUS)].sort(A.m)).uniqBy(e=>`${e.type}:${e.application_id}:${e.name}`).value()))}function G(){b=!1,y=T.clD.UNKNOWN,k(),A.A.setCurrentUserOnConnectionOpen(N,w)}class F extends l.Ay.Store{static displayName="SelfPresenceStore";initialize(){this.waitFor(p.A,E.A,m.A,g.A,A.A,I.A,d.A,f.A),this.syncWith([g.A],k)}getLocalPresence(){return{status:N,since:C,activities:O,afk:R}}getStatus(){return N}getActivities(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e?M:O}getUnfilteredActivities(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e?w:v}getHiddenActivities(){return L}getPrimaryActivity(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return this.getActivities(e)[0]}getApplicationActivity(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return this.findActivity(t=>t.application_id===e,t)}findActivity(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return this.getActivities(t).find(e)}}let V=new F(u.h,{START_SESSION:k,CONNECTION_OPEN:function(){G()},CONNECTION_OPEN_SUPPLEMENTAL:G,OVERLAY_INITIALIZE:G,CONNECTION_CLOSED:k,IDLE:k,AFK:k,RUNNING_GAMES_CHANGE:k,STREAMING_UPDATE:k,USER_SETTINGS_PROTO_UPDATE:k,LOCAL_ACTIVITY_UPDATE:k,SPOTIFY_PLAYER_STATE:k,SPOTIFY_PLAYER_PLAY:k,USER_CONNECTIONS_UPDATE:k,SESSIONS_REPLACE:k,RPC_APP_DISCONNECTED:k,LIBRARY_FETCH_SUCCESS:k,LIBRARY_APPLICATION_FLAGS_UPDATE_SUCCESS:k,LOGOUT:function(){b=!0,y=N,k()},FORCE_INVISIBLE:function(e){return S=e.invisible,k()},WINDOW_FOCUS:function(){return S=!1,k()},APP_STATE_UPDATE:function(e){if(e.state!==T.g6G.ACTIVE||!S)return!1;S=!1,k()}})}