Files
owncast/static/web/_next/static/chunks/1899-3b9a903aaac3a42c.js
2022-09-10 03:28:47 +00:00

1 line
11 KiB
JavaScript

"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1899],{1899:function(e,n,t){t.d(n,{me:function(){return W},FI:function(){return w},Q:function(){return G},L4:function(){return Z},nk:function(){return k},w4:function(){return I},uy:function(){return T},ZA:function(){return F},g1:function(){return b},g8:function(){return V},ap:function(){return P},di:function(){return J},fE:function(){return m},pT:function(){return Y},hz:function(){return M},YW:function(){return j},We:function(){return U},RI:function(){return C},pH:function(){return B},Gt:function(){return L}});var r=t(47568),a=t(828),o=t(29815),i=t(70655),c=t(67294),s=t(4480),u=t(23917);var l=t(51438),f=function(){function e(){(0,l.Z)(this,e)}return e.getConfig=function(){return(0,r.Z)((function(){return(0,i.__generator)(this,(function(e){switch(e.label){case 0:return[4,fetch("http://localhost:8080/api/config")];case 1:return[4,e.sent().json()];case 2:return[2,e.sent()]}}))}))()},e}(),E=t(58827),d=function(){function e(){(0,l.Z)(this,e)}return e.getChatHistory=function(e){return(0,r.Z)((function(){return(0,i.__generator)(this,(function(n){switch(n.label){case 0:return[4,(0,E.$l)("".concat("/api/chat","?accessToken=").concat(e))];case 1:return[2,n.sent()]}}))}))()},e.registerUser=function(e){return(0,r.Z)((function(){var n,t;return(0,i.__generator)(this,(function(r){switch(r.label){case 0:return(t={}).method="POST",t.headers={"Content-Type":"application/json"},t.body=JSON.stringify({displayName:e}),n=t,[4,(0,E.$l)("/api/chat/register",n)];case 1:return[2,r.sent()]}}))}))()},e}(),h=t(11622),g=function(){function e(n,t){(0,l.Z)(this,e),this.accessToken=n,this.path=t,this.createAndConnect()}var n=e.prototype;return n.createAndConnect=function(){var e=new URL("ws://localhost:8080/ws");e.searchParams.append("accessToken",this.accessToken),console.debug("connecting to ",e.toString());var n=new WebSocket(e.toString());n.onopen=this.onOpen.bind(this),n.onerror=this.onError.bind(this),n.onmessage=this.onMessage.bind(this),this.websocket=n},n.onOpen=function(){this.websocketReconnectTimer&&clearTimeout(this.websocketReconnectTimer)},n.onError=function(e){var n;console.error(e),n="Socket error: ".concat(e),console.error("Chat has been disconnected and is likely not working for you. It's possible you were removed from chat. If this is a server configuration issue, visit troubleshooting steps to resolve. https://owncast.online/docs/troubleshooting/#chat-is-disabled: ".concat(n)),this.websocket.close()},n.onMessage=function(e){for(var n,t=e.data.split("\n"),r=0;r<t.length;r++){try{n=JSON.parse(t[r]),this.handleMessage&&this.handleMessage(n)}catch(a){return void console.error(a,a.data)}if(!n.type)return void console.error("No type provided",n);if(n.type===h.C.PING)return void this.sendPong()}},n.isConnected=function(){var e,n;return(null===(e=this.websocket)||void 0===e?void 0:e.readyState)===(null===(n=this.websocket)||void 0===n?void 0:n.OPEN)},n.send=function(e){e.type&&h.C[e.type]||console.warn('Outbound message: Unknown socket message type: "'.concat(e.type,'" sent.'));var n=JSON.stringify(e);this.websocket.send(n)},n.sendPong=function(){var e={type:h.C.PONG};this.send(e)},e}();var v=t(26042),p=t(4723);var y;!function(e){e.Loading="LOADING",e.Loaded="LOADED",e.Online="ONLINE",e.Offline="OFFLINE",e.NeedsRegister="NEEDS_REGISTER",e.Fail="FAIL"}(y||(y={}));var N=(0,p.C)({id:"appState",initial:"loading",predictableActionArguments:!0,states:{loading:{meta:(0,v.Z)({},{chatAvailable:!1,chatLoading:!1,videoAvailable:!1,appLoading:!0}),on:{NEEDS_REGISTER:{target:"loading"},LOADED:{target:"ready"},FAIL:{target:"serverFailure"}}},ready:{initial:"offline",states:{online:{meta:(0,v.Z)({},{chatAvailable:!0,chatLoading:!1,videoAvailable:!0,appLoading:!1}),on:{OFFLINE:{target:"goodbye"}}},offline:{meta:(0,v.Z)({},{chatAvailable:!1,chatLoading:!1,videoAvailable:!1,appLoading:!1}),on:{ONLINE:{target:"online"}}},goodbye:{on:{ONLINE:{target:"online"}},meta:(0,v.Z)({},{chatAvailable:!0,chatLoading:!1,videoAvailable:!1,appLoading:!1}),after:{3e5:{target:"offline"}}}}},serverFailure:{type:"final"},userfailure:{type:"final"}}}),S=t(73682);var O=function(e,n,t,r,a,o){var i=e.user,c=i.id,s=i.displayName,u=i.displayColor,l=i.scopes,f=i.authenticated;n(s),t(u),r(c),a(null===l||void 0===l?void 0:l.includes("MODERATOR")),o(f)},A=function(){function e(){(0,l.Z)(this,e)}return e.getStatus=function(){return(0,r.Z)((function(){return(0,i.__generator)(this,(function(e){switch(e.label){case 0:return[4,fetch("/api/status")];case 1:return[4,e.sent().json()];case 2:return[2,e.sent()]}}))}))()},e}();var _=function(e,n,t){t((0,o.Z)(n).concat([e]))},R="accessToken",C=(0,s.cn)({key:"serverStatusState",default:{online:!1,viewerCount:0,serverTime:new Date}}),b=(0,s.cn)({key:"clientConfigState",default:{name:"",summary:"",offlineMessage:"",logo:"",tags:[],version:"",nsfw:!1,extraPageContent:"",socialHandles:[],chatDisabled:!1,externalActions:[],customStyles:"",maxSocketPayloadSize:0,federation:{enabled:!1,account:"",followerCount:0},notifications:{browser:{enabled:!1,publicKey:""}},authentication:{indieAuthEnabled:!1}}}),I=(0,s.cn)({key:"chatDisplayName",default:null}),k=(0,s.cn)({key:"chatDisplayColor",default:null}),T=(0,s.cn)({key:"chatUserIdAtom",default:null}),m=(0,s.cn)({key:"isModeratorAtom",default:!1}),w=(0,s.cn)({key:"accessTokenAtom",default:null}),D=(0,s.cn)({key:"chatMessages",default:[]}),Z=(0,s.cn)({key:"chatAuthenticatedAtom",default:!1}),L=(0,s.cn)({key:"websocketServiceAtom",default:null}),G=(0,s.cn)({key:"appState",default:{chatAvailable:!1,chatLoading:!0,videoAvailable:!1,appLoading:!0}}),M=(0,s.cn)({key:"isMobileAtom",default:void 0}),F=(0,s.cn)({key:"chatVisibilityToggleAtom",default:!0}),U=(0,s.cn)({key:"isVideoPlayingAtom",default:!1}),P=(0,s.cn)({key:"fatalErrorStateAtom",default:null}),V=(0,s.cn)({key:"clockSkewAtom",default:0}),H=(0,s.cn)({key:"removedMessageIds",default:[]}),Y=(0,s.nZ)({key:"isChatVisibleSelector",get:function(e){var n=e.get,t=n(G),r=n(F);return n(w)&&t.chatAvailable&&r}}),J=(0,s.nZ)({key:"isChatAvailableSelector",get:function(e){var n=e.get,t=n(G);return n(w)&&t.chatAvailable}}),j=(0,s.nZ)({key:"isOnlineSelector",get:function(e){var n=e.get,t=n(G),r=n(U);return t.videoAvailable||r}}),B=(0,s.nZ)({key:"visibleChatMessagesSelector",get:function(e){var n=e.get,t=n(D),r=n(H);return t.filter((function(e){return!r.includes(e.id)}))}});var W=function(){var e,n=(0,a.Z)((0,u.e)(N),3),t=n[0],l=n[1],E=n[2],v=(0,s.Zl)(I),p=(0,s.Zl)(k),M=(0,s.Zl)(T),F=(0,s.Zl)(Z),U=(0,s.Zl)(m),Y=(0,s.Zl)(b),J=(0,s.Zl)(C),j=(0,s.Zl)(V),B=(0,a.Z)((0,s.FV)(D),2),W=B[0],Q=B[1],X=(0,a.Z)((0,s.FV)(w),2),$=X[0],q=X[1],x=(0,s.Zl)(G),K=(0,s.Zl)(P),z=(0,s.Zl)(L),ee=(0,a.Z)((0,s.FV)(H),2),ne=ee[0],te=ee[1],re=function(e,n){K({title:e,message:n})},ae=function(e){l({type:e})},oe=function(){var e=(0,r.Z)((function(){var e,n;return(0,i.__generator)(this,(function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,f.getConfig()];case 1:return e=t.sent(),Y(e),ae("LOADED"),K(null),[3,3];case 2:return n=t.sent(),re("Unable to reach Owncast server","Owncast cannot launch. Please make sure the Owncast server is running. ".concat(n)),console.error("ClientConfigService -> getConfig() ERROR: \n".concat(n)),[3,3];case 3:return[2]}}))}));return function(){return e.apply(this,arguments)}}(),ie=function(){var e=(0,r.Z)((function(){var e,n,t,r;return(0,i.__generator)(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,,3]),[4,A.getStatus()];case 1:return e=a.sent(),J(e),n=e.serverTime,t=new Date(n).getTime()-Date.now(),j(t),e.online?ae(y.Online):e.online||ae(y.Offline),K(null),[3,3];case 2:return r=a.sent(),ae(y.Fail),re("Unable to reach Owncast server","Owncast cannot launch. Please make sure the Owncast server is running. ".concat(r)),console.error("serverStatusState -> getStatus() ERROR: \n".concat(r)),[3,3];case 3:return[2,null]}}))}));return function(){return e.apply(this,arguments)}}(),ce=function(){var e=(0,r.Z)((function(e){var n,t,r,a,o,c;return(0,i.__generator)(this,(function(i){switch(i.label){case 0:if(n=(0,S.$o)(R))return q(n),[2];i.label=1;case 1:return i.trys.push([1,3,,4]),ae(y.NeedsRegister),[4,d.registerUser(e)];case 2:return t=i.sent(),console.log("ChatService -> registerUser() response: \n".concat(t)),r=t.accessToken,a=t.displayName,o=t.displayColor,r?(console.log("setting access token",r),q(r),(0,S.qQ)(R,r),v(a),p(o),[3,4]):[2];case 3:return c=i.sent(),ae(y.Fail),console.error("ChatService -> registerUser() ERROR: \n".concat(c)),[3,4];case 4:return[2]}}))}));return function(n){return e.apply(this,arguments)}}(),se=function(e){switch(e.type){case h.C.ERROR_NEEDS_REGISTRATION:(0,S.qQ)(R,""),q(""),ce();break;case h.C.CONNECTED_USER_INFO:O(e,v,p,M,U,F),Q((function(n){return(0,o.Z)(n).concat([e])}));break;case h.C.CHAT:Q((function(n){return(0,o.Z)(n).concat([e])}));break;case h.C.NAME_CHANGE:_(e,W,Q);break;case h.C.USER_JOINED:case h.C.SYSTEM:Q((function(n){return(0,o.Z)(n).concat([e])}));break;case h.C.VISIBILITY_UPDATE:!function(e){var n=e.ids;if(e.visible){var t=ne.filter((function(e){return!n.includes(e)}));te(t)}else{var r=(0,o.Z)(ne).concat((0,o.Z)(n));te(r)}}(e);break;default:console.error("Unknown socket message type: ",e.type)}},ue=function(){var e=(0,r.Z)((function(){var e,n;return(0,i.__generator)(this,(function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,d.getChatHistory($)];case 1:return e=t.sent(),Q((function(n){return(0,o.Z)(n).concat((0,o.Z)(e))})),[3,3];case 2:return n=t.sent(),console.error("ChatService -> getChatHistory() ERROR: \n".concat(n)),[3,3];case 3:return[2]}}))}));return function(){return e.apply(this,arguments)}}(),le=function(){var n=(0,r.Z)((function(){return(0,i.__generator)(this,(function(n){ae(y.Loading);try{(e=new g($,"/ws")).handleMessage=se,z(e),ae(y.Loaded)}catch(t){console.error("ChatService -> startChat() ERROR: \n".concat(t))}return[2]}))}));return function(){return n.apply(this,arguments)}}();return(0,c.useEffect)((function(){oe(),ce(),ie(),setInterval((function(){ie()}),5e3)}),[t]),(0,c.useEffect)((function(){$&&(ue(),le())}),[$]),(0,c.useEffect)((function(){E.onTransition((function(e){if(e.changed){var n,t=(n=e.meta,Object.keys(n).reduce((function(e,t){var r=n[t];return Object.assign(e,r),e}),{}));x(t)}}))})),null}},11622:function(e,n,t){var r;t.d(n,{C:function(){return r}}),function(e){e.CHAT="CHAT",e.PING="PING",e.NAME_CHANGE="NAME_CHANGE",e.COLOR_CHANGE="COLOR_CHANGE",e.PONG="PONG",e.SYSTEM="SYSTEM",e.USER_JOINED="USER_JOINED",e.CHAT_ACTION="CHAT_ACTION",e.FEDIVERSE_ENGAGEMENT_FOLLOW="FEDIVERSE_ENGAGEMENT_FOLLOW",e.FEDIVERSE_ENGAGEMENT_LIKE="FEDIVERSE_ENGAGEMENT_LIKE",e.FEDIVERSE_ENGAGEMENT_REPOST="FEDIVERSE_ENGAGEMENT_REPOST",e.CONNECTED_USER_INFO="CONNECTED_USER_INFO",e.ERROR_USER_DISABLED="ERROR_USER_DISABLED",e.ERROR_NEEDS_REGISTRATION="ERROR_NEEDS_REGISTRATION",e.ERROR_MAX_CONNECTIONS_EXCEEDED="ERROR_MAX_CONNECTIONS_EXCEEDED",e.VISIBILITY_UPDATE="VISIBILITY-UPDATE"}(r||(r={}))},73682:function(e,n,t){t.d(n,{$o:function(){return a},dA:function(){return r},qQ:function(){return o}});var r={username:"username",hasDisplayedNotificationModal:"HAS_DISPLAYED_NOTIFICATION_MODAL",userVisitCount:"USER_VISIT_COUNT"};function a(e){try{return localStorage.getItem(e)}catch(n){}return null}function o(e,n){try{return""!==n&&null!==n?localStorage.setItem(e,n):localStorage.removeItem(e),!0}catch(t){}return!1}}}]);