Build 586984stable
Module 998740
884 characters · in no known chunkDependencies
Source Raw
function(e,t,n){"use strict";let i;n.d(t,{A:()=>d});var r=n(17928),a=n(228366),s=n(287809);let l={};class o extends r.Ay.Store{initialize(){this.waitFor(s.default)}static displayName="HavenStore";get state(){return l}getRoom(e){return l[e]}isUserConnected(e){return null!=l[e]}get assets(){return i}getSongs(e){return i?.genres[e]?.songs}}let d=new o(a.h,{HAVEN_CONNECT:e=>{console.log("HAVEN_CONNECT",e),l[e.room.roomId]=e.room},HAVEN_DISCONNECT:e=>{if(console.log("HAVEN_DISCONNECT",e),null==l[e.roomId])return!1;let t=s.default.getCurrentUser();if(e.userId===t?.id)return void delete l[e.roomId];let n={...l[e.roomId]};n.participants=n.participants.filter(t=>t.userId!==e.userId),n.seats=n.seats.map(t=>t.claimedBy===e.userId?{...t,claimedBy:null}:t),l[e.roomId]=n},HAVEN_UPDATE:e=>{console.log("HAVEN_UPDATE",e),l[e.room.roomId]=e.room},HAVEN_GOT_ASSETS:function(e){i=e.assets}})}