(function(e){function t(t){for(var s,r,i=t[0],c=t[1],l=t[2],u=0,m=[];ut.meta.index?"v-slide-y-reverse-transition":"v-slide-y-transition":this.transitionName=e.meta.topLevel?"v-slide-x-transition":"v-slide-x-reverse-transition"}},methods:{tryConnect:function(e,t,n,s,a,o){var r=this;this.isConnecting=!0,Te.socket&&(Te.socket.disconnect(),Te.socket.off("connect"),Te.socket.off("connect_error"),Te.socket.off("disconnect"));var i=Object(be["a"])(e+t,{forceNew:!0,reconnection:!1,withCredentials:!0,transports:s?["websocket"]:["polling","websocket"],path:a,parser:"msgpack"===o?ke.a:null,auth:n});i.once("connect",(function(){r.showConnectionModal=!1,r.connectionError="",r.isConnecting=!1,i.io.reconnection(!0),r.$store.commit("connection/saveConfig",{serverUrl:e,wsOnly:s,path:a,namespace:t,parser:o}),Te.socket=i,r.registerEventListeners(i)})),i.on("connect",(function(){r.$store.commit("connection/connect")})),i.on("connect_error",(function(e){(r.isConnecting||"invalid credentials"===e.message)&&(r.showConnectionModal=!0,r.connectionError=e.message),r.isConnecting=!1})),i.on("disconnect",(function(e){r.isConnecting&&(r.isConnecting=!1,r.connectionError=e),r.$store.commit("connection/disconnect")}))},registerEventListeners:function(e){var t=this;e.on("session",(function(e){t.$store.commit("connection/saveSessionId",e)})),e.on("config",(function(e){t.$store.commit("config/updateConfig",e)})),e.on("server_stats",(function(e){t.$store.commit("servers/onServerStats",e),t.$store.commit("main/onServerStats",e)})),e.on("all_sockets",(function(e){t.$store.commit("main/onAllSockets",e)})),e.on("socket_connected",(function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie();t.$store.commit("main/onSocketConnected",{timestamp:n,socket:e})})),e.on("socket_updated",(function(e){t.$store.commit("main/onSocketUpdated",e)})),e.on("socket_disconnected",(function(e,n,s){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Ie();t.$store.commit("main/onSocketDisconnected",{timestamp:a,nsp:e,id:n,reason:s})})),e.on("room_joined",(function(e,n,s){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Ie();t.$store.commit("main/onRoomJoined",{timestamp:a,nsp:e,room:n,id:s})})),e.on("room_left",(function(e,n,s){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Ie();t.$store.commit("main/onRoomLeft",{timestamp:a,nsp:e,room:n,id:s})})),e.on("event_received",(function(e,n,s,a){t.$store.commit("main/onEventReceived",{timestamp:a,nsp:e,id:n,args:s})})),e.on("event_sent",(function(e,n,s,a){t.$store.commit("main/onEventSent",{timestamp:a,nsp:e,id:n,args:s})}))},onSubmit:function(e){this.tryConnect(e.serverUrl,e.namespace,{username:e.username,password:e.password},e.wsOnly,e.path,e.parser)}},created:function(){if(this.$vuetify.theme.dark=this.$store.state.config.darkTheme,this.$vuetify.breakpoint.lgAndUp&&this.$store.commit("config/toggleNavigationDrawer"),this.serverUrl){var e=this.$store.state.connection.sessionId;this.tryConnect(this.serverUrl,this.namespace,{sessionId:e},this.wsOnly,this.path,this.parser)}else this.showConnectionModal=!0}},Re=Ee,Ne=n("7496"),Pe=n("a523"),Be=n("f6c4"),Ae=Object(b["a"])(Re,a,o,!1,null,null,null),Ue=Ae.exports;k()(Ae,{VApp:Ne["a"],VContainer:Pe["a"],VMain:Be["a"]});var Le=n("8c4f"),Me=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),n("v-container",{attrs:{fluid:""}},[n("v-row",[n("v-col",{attrs:{cols:"12",md:"6",lg:"4"}},[n("ClientsOverview")],1),n("v-col",{attrs:{cols:"12",md:"6",lg:"4"}},[n("ServersOverview")],1),n("v-col",{attrs:{cols:"12",md:"6",lg:"4"}},[n("NamespacesOverview")],1),e.hasAggregatedValues?n("v-col",{attrs:{cols:"12",md:"6"}},[n("ConnectionsHistogram")],1):e._e(),e.hasAggregatedValues?n("v-col",{attrs:{cols:"12",md:"6"}},[n("BytesHistogram")],1):e._e()],1)],1)],1)},He=[],qe=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",[n("v-card-title",{staticClass:"text-center"},[e._v(" "+e._s(e.$t("clients.title"))+" "),n("v-spacer"),e.developmentMode?n("v-btn",{attrs:{to:{name:"clients"},small:""}},[n("v-icon",[e._v("mdi-dots-horizontal")])],1):e._e()],1),n("v-card-text",[n("v-row",[n("Doughnut",{staticClass:"chart",attrs:{"chart-data":e.data,"chart-options":e.chartOptions}}),n("v-simple-table",{staticClass:"grow align-self-center",scopedSlots:e._u([{key:"default",fn:function(){return[n("tbody",[n("tr",[n("th",[e._v(e._s(e.$t("sockets.transport")))]),n("th",[e._v("#")])]),e._l(e.transports,(function(t){return n("tr",{key:t},[n("td",[n("Transport",{attrs:{transport:t}})],1),n("td",[n("div",[n("h2",[e._v(e._s(e.transportRepartition[t]))])]),n("div",[e._v(" "+e._s(e.percentage(e.transportRepartition[t],e.clientsCount))+" % ")])])])}))],2)]},proxy:!0}])})],1)],1)],1)},Fe=[],Je=(n("4de4"),n("d81d"),n("7b97")),ze=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-chip",{attrs:{small:"",color:e.color,outlined:""}},[e._v(e._s(e.label))])},We=[],Ge={name:"Transport",props:{transport:String},computed:{label:function(){switch(this.transport){case"polling":return"HTTP long-polling";case"websocket":return"WebSocket";default:return this.transport}},color:function(){switch(this.transport){case"polling":return v["a"].orange.base;case"websocket":return v["a"].green.base;default:return v["a"].grey.base}}}},Ke=Ge,Ze=Object(b["a"])(Ke,ze,We,!1,null,null,null),Qe=Ze.exports;k()(Ze,{VChip:_["a"]});var Xe=n("53ca"),Ye=(n("a15b"),n("a434"),n("caad"),n("2532"),n("b680"),n("1c8f")),et=function(){var e="test";try{return localStorage.setItem(e,e),localStorage.removeItem(e),!0}catch(t){return!1}},tt=et();function nt(e){var t=Math.ceil(Math.max(e,0)),n=Math.floor(t/86400),s=Math.floor((t-86400*n)/3600),a=Math.floor((t-86400*n-3600*s)/60),o=Math.ceil(t)-86400*n-3600*s-60*a,r=[];return n>0&&r.push(n+"d"),(n>0||s>0)&&r.push(s+"h"),(n>0||s>0||a>0)&&r.push(a+"m"),r.push(o+"s"),r.join(" ")}function st(e,t){var n="object"===Object(Xe["a"])(t)?Object(Ye["a"])(e,t):e.indexOf(t);return-1===n?[]:e.splice(n,1)}function at(e,t){e.includes(t)||e.push(t)}function ot(e,t){return 0===t?0:(e/t*100).toFixed(1)}var rt=n("9223"),it={name:"ClientsOverview",components:{Transport:Qe,Doughnut:Je["b"]},data:function(){return{transports:["websocket","polling"],chartOptions:{plugins:{legend:{display:!1}}}}},computed:Object(r["a"])(Object(r["a"])(Object(r["a"])({},Object(l["d"])({clients:function(e){return e.main.clients},darkTheme:function(e){return e.config.darkTheme},servers:function(e){return e.servers.servers}})),Object(l["b"])("config",["hasAggregatedValues","developmentMode"])),{},{clientsCount:function(){return this.hasAggregatedValues?Object(rt["a"])(this.servers,"clientsCount"):this.clients.length},transportRepartition:function(){if(this.hasAggregatedValues){var e=Object(rt["a"])(this.servers,"pollingClientsCount");return{polling:e,websocket:this.clientsCount-e}}return this.clients.map((function(e){return e.sockets[0]})).filter((function(e){return!!e})).reduce((function(e,t){return e[t.transport]++,e}),{websocket:0,polling:0})},data:function(){return{labels:["WebSocket","HTTP long-polling"],datasets:[{backgroundColor:[v["a"].green.base,v["a"].orange.base],borderColor:this.darkTheme?"black":"white",data:[this.transportRepartition["websocket"],this.transportRepartition["polling"]]}]}}}),methods:{percentage:ot}},ct=it,lt=(n("2bc7"),n("0fd9")),dt=n("1f4f"),ut=Object(b["a"])(ct,qe,Fe,!1,null,"68c0c5d5",null),mt=ut.exports;k()(ut,{VBtn:I["a"],VCard:Ce["a"],VCardText:xe["a"],VCardTitle:xe["b"],VIcon:le["a"],VRow:lt["a"],VSimpleTable:dt["a"],VSpacer:R["a"]});var pt=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",[n("v-card-title",{staticClass:"text-center"},[e._v(" "+e._s(e.$t("servers.title"))+" "),n("v-spacer"),n("v-btn",{attrs:{to:{name:"servers"},small:""}},[n("v-icon",[e._v("mdi-dots-horizontal")])],1)],1),n("v-card-text",[n("v-row",[n("Doughnut",{staticClass:"chart",attrs:{"chart-data":e.data,"chart-options":e.chartOptions}}),n("v-simple-table",{staticClass:"grow align-self-center",scopedSlots:e._u([{key:"default",fn:function(){return[n("tbody",[n("tr",[n("th",[e._v(e._s(e.$t("status")))]),n("th",[e._v("#")])]),n("tr",[n("td",[n("ServerStatus",{attrs:{healthy:""}})],1),n("td",[n("div",[n("h2",[e._v(e._s(e.healthyServers))])]),n("div",[e._v(e._s(e.percentage(e.healthyServers,e.totalServers))+" %")])])]),n("tr",[n("td",[n("ServerStatus")],1),n("td",[n("div",[n("h2",[e._v(e._s(e.totalServers-e.healthyServers))])]),n("div",[e._v(" "+e._s(e.percentage(e.totalServers-e.healthyServers,e.totalServers))+" % ")])])])])]},proxy:!0}])})],1)],1)],1)},vt=[],ft=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("Status",{attrs:{value:e.healthy,"ok-label":e.$t("servers.healthy"),"ko-label":e.$t("servers.unhealthy")}})},ht=[],bt={name:"ServerStatus",components:{Status:S},props:{healthy:Boolean}},gt=bt,kt=Object(b["a"])(gt,ft,ht,!1,null,null,null),_t=kt.exports,yt={name:"ServersOverview",components:{ServerStatus:_t,Doughnut:Je["b"]},data:function(){return{chartOptions:{plugins:{legend:{display:!1}}}}},computed:Object(r["a"])(Object(r["a"])({},Object(l["d"])({healthyServers:function(e){return e.servers.servers.filter((function(e){return e.healthy})).length},totalServers:function(e){return e.servers.servers.length},darkTheme:function(e){return e.config.darkTheme}})),{},{data:function(){return{labels:[this.$t("servers.healthy"),this.$t("servers.unhealthy")],datasets:[{backgroundColor:[v["a"].green.base,v["a"].red.base],borderColor:this.darkTheme?"black":"white",data:[this.healthyServers,this.totalServers-this.healthyServers]}]}}}),methods:{percentage:ot}},St=yt,Ot=(n("a86e"),Object(b["a"])(St,pt,vt,!1,null,"0ad5cc14",null)),Ct=Ot.exports;k()(Ot,{VBtn:I["a"],VCard:Ce["a"],VCardText:xe["a"],VCardTitle:xe["b"],VIcon:le["a"],VRow:lt["a"],VSimpleTable:dt["a"],VSpacer:R["a"]});var xt=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",{staticClass:"fill-height"},[n("v-card-title",{staticClass:"text-center"},[e._v(" "+e._s(e.$t("namespaces"))+" "),n("v-spacer"),e.developmentMode?n("v-btn",{attrs:{to:{name:"sockets"},small:""}},[n("v-icon",[e._v("mdi-dots-horizontal")])],1):e._e()],1),n("v-simple-table",{scopedSlots:e._u([{key:"default",fn:function(){return[n("thead",[n("tr",[n("th",[e._v(e._s(e.$t("name")))]),n("th",[e._v(e._s(e.$t("rooms.sockets-count")))])])]),n("tbody",e._l(e.namespaces,(function(t){return n("tr",{key:t.name},[n("td",{staticClass:"key-column"},[n("code",[e._v(e._s(t.name))])]),n("td",[e._v(e._s(t.socketsCount))])])})),0)]},proxy:!0}])})],1)},$t=[],jt=n("d66c"),wt={name:"NamespacesOverview",computed:Object(r["a"])(Object(r["a"])(Object(r["a"])(Object(r["a"])({},Object(l["d"])({plainNamespaces:function(e){return Object(jt["a"])(e.main.namespaces,"name").map((function(e){var t=e.name,n=e.sockets;return{name:t,socketsCount:n.length}}))}})),Object(l["b"])("config",["hasAggregatedValues","developmentMode"])),Object(l["b"])("servers",{liteNamespaces:"namespaces"})),{},{namespaces:function(){return this.hasAggregatedValues?this.liteNamespaces:this.plainNamespaces}})},Vt=wt,Dt=Object(b["a"])(Vt,xt,$t,!1,null,"11fe24be",null),Tt=Dt.exports;k()(Dt,{VBtn:I["a"],VCard:Ce["a"],VCardTitle:xe["b"],VIcon:le["a"],VSimpleTable:dt["a"],VSpacer:R["a"]});var It=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",[n("v-card-title",{staticClass:"text-center"},[e._v(" "+e._s(e.$t("dashboard.connectionsHistogram.title"))+" ")]),n("v-card-text",[n("v-row",[n("Bar",{staticStyle:{width:"100%"},attrs:{"chart-data":e.chartData,"chart-options":e.chartOptions,height:e.chartHeight}})],1)],1)],1)},Et=[],Rt=n("6b78");function Nt(e){return{x:e.timestamp,y:e.count}}var Pt={name:"ConnectionsHistogram",components:{Bar:Je["a"]},data:function(){return{chartHeight:120,chartOptions:{parsing:!1,scales:{x:{type:"time",time:{stepSize:1,unit:"minute"}},y:{type:"linear",beginAtZero:!0,suggestedMax:10,ticks:{precision:0}}}}}},computed:Object(r["a"])(Object(r["a"])({},Object(l["d"])("main",["aggregatedEvents"])),{},{connectionEvents:function(){return this.aggregatedEvents.filter((function(e){return"rawConnection"===e.type})).map(Nt)},disconnectionEvents:function(){return this.aggregatedEvents.filter((function(e){return"rawDisconnection"===e.type})).map(Nt)},chartData:function(){return{datasets:[{label:this.$i18n.t("events.type.connection"),backgroundColor:v["a"].green.base,data:this.connectionEvents},{label:this.$i18n.t("events.type.disconnection"),backgroundColor:v["a"].red.base,data:this.disconnectionEvents}]}}}),created:function(){this.updateChartBounds(),this.interval=setInterval(this.updateChartBounds,1e4)},beforeDestroy:function(){clearInterval(this.interval)},methods:{updateChartBounds:function(){var e=new Date;this.chartOptions.scales.x.min=Object(Rt["a"])(e,10),this.chartOptions.scales.x.max=e}}},Bt=Pt,At=Object(b["a"])(Bt,It,Et,!1,null,null,null),Ut=At.exports;k()(At,{VCard:Ce["a"],VCardText:xe["a"],VCardTitle:xe["b"],VRow:lt["a"]});var Lt=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",[n("v-card-title",{staticClass:"text-center"},[e._v(" "+e._s(e.$t("dashboard.bytesHistogram.title"))+" ")]),n("v-card-text",[n("v-row",[n("Bar",{staticStyle:{width:"100%"},attrs:{"chart-data":e.chartData,"chart-options":e.chartOptions,height:e.chartHeight}})],1)],1)],1)},Mt=[];function Ht(e){return{x:e.timestamp,y:e.count}}var qt={name:"BytesHistogram",components:{Bar:Je["a"]},data:function(){return{chartHeight:120,chartOptions:{parsing:!1,scales:{x:{type:"time",time:{stepSize:1,unit:"minute"}},y:{type:"linear",beginAtZero:!0,suggestedMax:1e3,ticks:{precision:0}}}}}},computed:Object(r["a"])(Object(r["a"])({},Object(l["d"])("main",["aggregatedEvents"])),{},{bytesIn:function(){return this.aggregatedEvents.filter((function(e){return"bytesIn"===e.type})).map(Ht)},bytesOut:function(){return this.aggregatedEvents.filter((function(e){return"bytesOut"===e.type})).map(Ht)},chartData:function(){return{datasets:[{label:this.$i18n.t("dashboard.bytesHistogram.bytesIn"),backgroundColor:v["a"].green.base,data:this.bytesIn},{label:this.$i18n.t("dashboard.bytesHistogram.bytesOut"),backgroundColor:v["a"].red.base,data:this.bytesOut}]}}}),created:function(){this.updateChartBounds(),this.interval=setInterval(this.updateChartBounds,1e4)},beforeDestroy:function(){clearInterval(this.interval)},methods:{updateChartBounds:function(){var e=new Date;this.chartOptions.scales.x.min=Object(Rt["a"])(e,10),this.chartOptions.scales.x.max=e}}},Ft=qt,Jt=Object(b["a"])(Ft,Lt,Mt,!1,null,null,null),zt=Jt.exports;k()(Jt,{VCard:Ce["a"],VCardText:xe["a"],VCardTitle:xe["b"],VRow:lt["a"]});var Wt={name:"Dashboard",components:{NamespacesOverview:Tt,ServersOverview:Ct,ClientsOverview:mt,ConnectionsHistogram:Ut,BytesHistogram:zt},computed:Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("dashboard.title"),disabled:!0}]}},Object(l["b"])("config",["hasAggregatedValues"]))},Gt=Wt,Kt=n("2bc5"),Zt=n("62ad"),Qt=Object(b["a"])(Gt,Me,He,!1,null,null,null),Xt=Qt.exports;k()(Qt,{VBreadcrumbs:Kt["a"],VCol:Zt["a"],VContainer:Pe["a"],VRow:lt["a"]});var Yt=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),n("v-card",[n("v-card-text",[n("NamespaceSelector")],1),n("v-data-table",{staticClass:"row-pointer",attrs:{headers:e.headers,items:e.sockets,"footer-props":e.footerProps},on:{"click:row":e.displayDetails},scopedSlots:e._u([{key:"item.transport",fn:function(e){var t=e.value;return[n("Transport",{attrs:{transport:t}})]}},{key:"item.actions",fn:function(t){var s=t.item;return[e.isSocketDisconnectSupported?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnect(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("sockets.disconnect")))])]):e._e()]}}])})],1)],1)},en=[],tn=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-select",{staticClass:"selector",attrs:{value:e.selectedNamespace,items:e.namespaces,"item-text":"name","item-value":"name",label:e.$t("select-namespace"),"persistent-hint":"","return-object":""},on:{change:e.selectNamespace}})},nn=[],sn={name:"NamespaceSelector",computed:Object(r["a"])({},Object(l["d"])({selectedNamespace:function(e){return e.main.selectedNamespace},namespaces:function(e){return Object(jt["a"])(e.main.namespaces,"name")}})),methods:Object(r["a"])({},Object(l["c"])("main",["selectNamespace"]))},an=sn,on=(n("f712"),Object(b["a"])(an,tn,nn,!1,null,"2c330798",null)),rn=on.exports;k()(on,{VSelect:F["a"]});var cn={name:"Sockets",components:{Transport:Qe,NamespaceSelector:rn},data:function(){return{footerProps:{"items-per-page-options":[20,100,-1]}}},computed:Object(r["a"])(Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("sockets.title"),disabled:!0}]},headers:function(){return[{text:"#",value:"id",align:"start"},{text:this.$t("sockets.address"),value:"handshake.address"},{text:this.$t("sockets.transport"),value:"transport"},{value:"actions",align:"end",sortable:!1}]}},Object(l["b"])("main",["sockets"])),Object(l["d"])({selectedNamespace:function(e){return e.main.selectedNamespace},isReadonly:function(e){return e.config.readonly},isSocketDisconnectSupported:function(e){return e.config.supportedFeatures.includes("DISCONNECT")}})),methods:{disconnect:function(e){Te.socket.emit("_disconnect",e.nsp,!1,e.id)},displayDetails:function(e){this.$router.push({name:"socket",params:{nsp:this.selectedNamespace.name,id:e.id}})}}},ln=cn,dn=(n("513c"),n("8fea")),un=n("3a2f"),mn=Object(b["a"])(ln,Yt,en,!1,null,"1d29c60a",null),pn=mn.exports;k()(mn,{VBreadcrumbs:Kt["a"],VBtn:I["a"],VCard:Ce["a"],VCardText:xe["a"],VDataTable:dn["a"],VIcon:le["a"],VTooltip:un["a"]});var vn=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),e.socket?n("v-container",{attrs:{fluid:""}},[n("v-row",[n("v-col",{attrs:{sm:"12",md:"6",lg:"4"}},[n("SocketDetails",{attrs:{socket:e.socket,client:e.client}})],1),n("v-col",{attrs:{sm:"12",md:"6",lg:"4"}},[n("InitialRequest",{attrs:{socket:e.socket}})],1),n("v-col",{attrs:{sm:"12",md:"6",lg:"4"}},[n("SocketRooms",{attrs:{socket:e.socket}})],1)],1)],1):e._e()],1)},fn=[],hn=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",{staticClass:"fill-height"},[n("v-card-title",[e._v(e._s(e.$t("rooms.title")))]),n("v-data-table",{staticClass:"row-pointer",attrs:{headers:e.headers,items:e.roomsAsObjects,dense:""},on:{"click:row":e.displayDetails},scopedSlots:e._u([{key:"item.actions",fn:function(t){var s=t.item;return[e.isSocketLeaveSupported?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.leave(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-tag-off-outline")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("sockets.leave")))])]):e._e()]}}])}),n("v-card-text",[n("form",{on:{submit:function(t){return t.preventDefault(),e.onSubmit(t)}}},[n("v-combobox",{staticClass:"select-room d-inline-block mr-3",attrs:{"search-input":e.newRoom,label:e.$t("sockets.join-a-room"),items:e.availableRooms,"item-value":"name","item-text":"name",disabled:e.isReadonly,"return-object":!1},on:{"update:searchInput":function(t){e.newRoom=t},"update:search-input":function(t){e.newRoom=t}}}),n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var s=t.on,a=t.attrs;return[n("v-btn",e._g(e._b({attrs:{type:"submit",small:"",disabled:e.isReadonly}},"v-btn",a,!1),s),[n("v-icon",[e._v("mdi-tag-plus-outline")])],1)]}}])},[n("span",[e._v(e._s(e.$t("sockets.join")))])])],1)])],1)},bn=[],gn=(n("fb6a"),n("1775")),kn={name:"SocketRooms",props:{socket:Object},data:function(){return{newRoom:""}},computed:Object(r["a"])(Object(r["a"])({headers:function(){return[{text:this.$t("id"),value:"name",align:"start"},{value:"actions",align:"end",sortable:!1}]},roomsAsObjects:function(){return this.socket.rooms.slice(0).sort().map((function(e){return{name:e}}))},availableRooms:function(){return Object(gn["a"])(this.findRoomsByNamespace(this.socket.nsp),this.roomsAsObjects,"name")}},Object(l["d"])({selectedNamespace:function(e){return e.main.selectedNamespace},isReadonly:function(e){return e.config.readonly},isSocketLeaveSupported:function(e){return e.config.supportedFeatures.includes("LEAVE")},isSocketDisconnectSupported:function(e){return e.config.supportedFeatures.includes("DISCONNECT")}})),Object(l["b"])("main",["findRoomsByNamespace"])),methods:{emit:function(){},onSubmit:function(){Te.socket.emit("join",this.socket.nsp,this.newRoom,this.socket.id),this.newRoom=""},leave:function(e){Te.socket.emit("leave",this.socket.nsp,e.name,this.socket.id)},disconnect:function(){Te.socket.emit("_disconnect",this.socket.nsp,!1,this.socket.id)},displayDetails:function(e){this.$router.push({name:"room",params:{nsp:this.socket.nsp,name:e.name}})}}},_n=kn,yn=(n("4a85"),n("2b5d")),Sn=Object(b["a"])(_n,hn,bn,!1,null,"5631eb89",null),On=Sn.exports;k()(Sn,{VBtn:I["a"],VCard:Ce["a"],VCardText:xe["a"],VCardTitle:xe["b"],VCombobox:yn["a"],VDataTable:dn["a"],VIcon:le["a"],VTooltip:un["a"]});var Cn=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",{staticClass:"fill-height"},[n("v-card-title",[e._v(e._s(e.$t("details")))]),n("v-card-text",[n("h4",[e._v(e._s(e.$t("sockets.client")))])]),n("v-simple-table",{attrs:{dense:""}},[[n("tbody",[n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("id")))]),n("td",[e.client.connected?n("router-link",{staticClass:"link",attrs:{to:e.toClient}},[e._v(e._s(e.client.id))]):n("span",[e._v(e._s(e.client.id))])],1),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("status")))]),n("td",[n("ConnectionStatus",{attrs:{connected:e.client.connected}})],1),n("td",{attrs:{align:"right"}},[e.isSocketDisconnectSupported&&e.client.connected?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var s=t.on,a=t.attrs;return[n("v-btn",e._g(e._b({attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnectClient()}}},"v-btn",a,!1),s),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!1,1004975867)},[n("span",[e._v(e._s(e.$t("clients.disconnect")))])]):e._e()],1)]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("sockets.transport")))]),n("td",[n("Transport",{attrs:{transport:e.socket.transport}})],1),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("sockets.address")))]),n("td",[e._v(e._s(e.socket.handshake.address))]),n("td")])])]],2),n("v-card-text",[n("h4",[e._v(e._s(e.$t("sockets.socket")))])]),n("v-simple-table",{attrs:{dense:""},scopedSlots:e._u([{key:"default",fn:function(){return[n("tbody",[n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("namespace")))]),n("td",[n("code",[e._v(e._s(e.socket.nsp))])]),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("id")))]),n("td",[e._v(e._s(e.socket.id))]),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("data")))]),n("td",[n("pre",[n("code",[e._v(e._s(JSON.stringify(e.socket.data,null,2)))])])]),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("status")))]),n("td",[n("ConnectionStatus",{attrs:{connected:e.socket.connected}})],1),n("td",{attrs:{align:"right"}},[e.isSocketDisconnectSupported&&e.socket.connected?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var s=t.on,a=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnectSocket()}}},"v-btn",a,!1),s),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!1,2351110648)},[n("span",[e._v(e._s(e.$t("sockets.disconnect")))])]):e._e()],1)]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("sockets.creation-date")))]),n("td",[e._v(e._s(e.creationDate))]),n("td")])])]},proxy:!0}])})],1)},xn=[],$n={name:"SocketDetails",components:{ConnectionStatus:$,Transport:Qe},props:{socket:Object,client:Object},computed:Object(r["a"])({toClient:function(){return{name:"client",params:{id:this.client.id}}},creationDate:function(){return new Date(this.socket.handshake.issued).toISOString()}},Object(l["d"])({isReadonly:function(e){return e.config.readonly},isSocketDisconnectSupported:function(e){return e.config.supportedFeatures.includes("DISCONNECT")}})),methods:{navigateToClient:function(){this.$router.push({name:"client",params:{id:this.client.id}})},disconnectClient:function(){Te.socket.emit("_disconnect",this.socket.nsp,!0,this.socket.id)},disconnectSocket:function(){Te.socket.emit("_disconnect",this.socket.nsp,!1,this.socket.id)}}},jn=$n,wn=(n("eb02"),Object(b["a"])(jn,Cn,xn,!1,null,"3c0dcfcd",null)),Vn=wn.exports;k()(wn,{VBtn:I["a"],VCard:Ce["a"],VCardText:xe["a"],VCardTitle:xe["b"],VIcon:le["a"],VSimpleTable:dt["a"],VTooltip:un["a"]});var Dn=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",{staticClass:"fill-height"},[n("v-card-title",[e._v(e._s(e.$t("sockets.initial-request")))]),n("v-card-text",[n("h4",[e._v(e._s(e.$t("sockets.headers")))])]),n("KeyValueTable",{attrs:{object:e.socket.handshake.headers}}),n("v-card-text",[n("h4",[e._v(e._s(e.$t("sockets.query-params")))])]),n("KeyValueTable",{attrs:{object:e.socket.handshake.query}})],1)},Tn=[],In=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-simple-table",{attrs:{dense:""},scopedSlots:e._u([{key:"default",fn:function(){return[n("thead",[n("tr",[n("th",[e._v(e._s(e.$t("name")))]),n("th",[e._v(e._s(e.$t("value")))])])]),n("tbody",e._l(e.items,(function(t){var s=t.key,a=t.value;return n("tr",{key:s},[n("td",{staticClass:"key-column"},[e._v(e._s(s))]),n("td",[e._v(e._s(a))])])})),0)]},proxy:!0}])})},En=[],Rn=(n("b64b"),{name:"KeyValueTable",props:{object:Object},computed:{items:function(){var e=this,t=Object.keys(this.object);return t.sort().map((function(t){return{key:t,value:e.object[t]}}))}}}),Nn=Rn,Pn=(n("786c"),Object(b["a"])(Nn,In,En,!1,null,"18284f59",null)),Bn=Pn.exports;k()(Pn,{VSimpleTable:dt["a"]});var An={name:"InitialRequest",components:{KeyValueTable:Bn},props:{socket:Object}},Un=An,Ln=Object(b["a"])(Un,Dn,Tn,!1,null,null,null),Mn=Ln.exports;k()(Ln,{VCard:Ce["a"],VCardText:xe["a"],VCardTitle:xe["b"]});var Hn={name:"Socket",components:{InitialRequest:Mn,SocketDetails:Vn,SocketRooms:On},data:function(){return{socket:null,client:null}},computed:Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("sockets.title"),to:{name:"sockets"}},{text:this.$t("sockets.details"),disabled:!0}]}},Object(l["b"])("main",["findSocketById","findClientById"])),mounted:function(){this.socket=this.findSocketById(this.$route.params.nsp,this.$route.params.id),this.socket&&(this.client=this.findClientById(this.socket.clientId))}},qn=Hn,Fn=Object(b["a"])(qn,vn,fn,!1,null,"14172ed0",null),Jn=Fn.exports;k()(Fn,{VBreadcrumbs:Kt["a"],VCol:Zt["a"],VContainer:Pe["a"],VRow:lt["a"]});var zn=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),n("v-card",[n("v-card-text",{staticClass:"d-flex"},[n("NamespaceSelector"),n("v-switch",{staticClass:"ml-3",attrs:{label:e.$t("rooms.show-private"),inset:"",dense:""},on:{change:e.onPrivateRoomsUpdate},model:{value:e.showPrivateRooms,callback:function(t){e.showPrivateRooms=t},expression:"showPrivateRooms"}})],1),n("v-data-table",{staticClass:"row-pointer",attrs:{headers:e.headers,items:e.filteredRooms,"footer-props":e.footerProps},on:{"click:row":e.displayDetails},scopedSlots:e._u([{key:"item.sockets",fn:function(t){var n=t.item;return[e._v(" "+e._s(n.sockets.length)+" ")]}},{key:"item.isPrivate",fn:function(e){var t=e.value;return[n("RoomType",{attrs:{"is-private":t}})]}},{key:"item.actions",fn:function(t){var s=t.item;return[e.isMultiLeaveSupported&&!s.isPrivate?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.clear(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-tag-off-outline")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("rooms.clear")))])]):e._e(),e.isMultiDisconnectSupported?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnect(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("rooms.disconnect")))])]):e._e()]}}])})],1)],1)},Wn=[],Gn=(n("5319"),n("ac1f"),function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("Status",{attrs:{value:!e.isPrivate,"ok-label":e.$t("rooms.public"),"ko-label":e.$t("rooms.private")}})}),Kn=[],Zn={name:"RoomType",components:{Status:S},props:{isPrivate:Boolean}},Qn=Zn,Xn=Object(b["a"])(Qn,Gn,Kn,!1,null,null,null),Yn=Xn.exports,es={name:"Rooms",components:{RoomType:Yn,NamespaceSelector:rn},data:function(){return{showPrivateRooms:!1,footerProps:{"items-per-page-options":[20,100,-1]}}},computed:Object(r["a"])(Object(r["a"])(Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("rooms.title"),disabled:!0}]},headers:function(){return[{text:this.$t("id"),value:"name",align:"start"},{text:this.$t("type"),value:"isPrivate"},{text:this.$t("rooms.sockets-count"),value:"sockets"},{value:"actions",align:"end",sortable:!1}]}},Object(l["b"])("main",["rooms"])),Object(l["d"])({selectedNamespace:function(e){return e.main.selectedNamespace},isReadonly:function(e){return e.config.readonly},isMultiLeaveSupported:function(e){return e.config.supportedFeatures.includes("MLEAVE")},isMultiDisconnectSupported:function(e){return e.config.supportedFeatures.includes("MDISCONNECT")}})),{},{filteredRooms:function(){var e=this.showPrivateRooms?this.rooms:this.rooms.filter((function(e){return!e.isPrivate}));return Object(jt["a"])(e,"name")}}),methods:{clear:function(e){Te.socket.emit("leave",this.selectedNamespace.name,e.name)},disconnect:function(e){Te.socket.emit("_disconnect",this.selectedNamespace.name,!1,e.name)},displayDetails:function(e){this.$router.push({name:"room",params:{nsp:this.selectedNamespace.name,name:e.name}})},onPrivateRoomsUpdate:function(e){var t=e?{p:1}:{};this.$router.replace({name:"rooms",query:t})}},mounted:function(){this.showPrivateRooms="1"===this.$route.query.p}},ts=es,ns=(n("3a99"),Object(b["a"])(ts,zn,Wn,!1,null,"29992f63",null)),ss=ns.exports;k()(ns,{VBreadcrumbs:Kt["a"],VBtn:I["a"],VCard:Ce["a"],VCardText:xe["a"],VDataTable:dn["a"],VIcon:le["a"],VSwitch:Q["a"],VTooltip:un["a"]});var as=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),n("v-card",[n("v-data-table",{staticClass:"row-pointer",attrs:{headers:e.headers,items:e.clients,"footer-props":e.footerProps},on:{"click:row":e.displayDetails},scopedSlots:e._u([{key:"item.address",fn:function(t){var s=t.item;return[s.sockets.length?n("span",[e._v(e._s(s.sockets[0].handshake.address))]):e._e()]}},{key:"item.transport",fn:function(t){var s=t.item;return[s.sockets.length?n("Transport",{attrs:{transport:s.sockets[0].transport}}):e._e()]}},{key:"item.sockets",fn:function(t){var n=t.item;return[e._v(" "+e._s(n.sockets.length)+" ")]}},{key:"item.actions",fn:function(t){var s=t.item;return[e.isSocketDisconnectSupported?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnect(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("clients.disconnect")))])]):e._e()]}}])})],1)],1)},os=[],rs={name:"Clients",components:{Transport:Qe},data:function(){return{footerProps:{"items-per-page-options":[20,100,-1]}}},computed:Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("clients.title"),disabled:!0}]},headers:function(){return[{text:"#",value:"id",align:"start"},{text:this.$t("sockets.address"),value:"address"},{text:this.$t("sockets.transport"),value:"transport"},{text:this.$t("clients.sockets-count"),value:"sockets"},{value:"actions",align:"end",sortable:!1}]}},Object(l["d"])({clients:function(e){return e.main.clients},isReadonly:function(e){return e.config.readonly},isSocketDisconnectSupported:function(e){return e.config.supportedFeatures.includes("DISCONNECT")}})),methods:{disconnect:function(e){var t=e.sockets[0];t&&Te.socket.emit("_disconnect",t.nsp,!0,t.id)},displayDetails:function(e){this.$router.push({name:"client",params:{id:e.id}})}}},is=rs,cs=(n("ff8e"),Object(b["a"])(is,as,os,!1,null,"57b53591",null)),ls=cs.exports;k()(cs,{VBreadcrumbs:Kt["a"],VBtn:I["a"],VCard:Ce["a"],VDataTable:dn["a"],VIcon:le["a"],VTooltip:un["a"]});var ds=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),e.client?n("v-container",{attrs:{fluid:""}},[n("v-row",[n("v-col",{attrs:{sm:"12",md:"6",lg:"4"}},[n("ClientDetails",{attrs:{client:e.client,socket:e.socket}})],1),n("v-col",{attrs:{sm:"12",md:"6",lg:"4"}},[e.socket?n("InitialRequest",{attrs:{socket:e.socket}}):e._e()],1),n("v-col",{attrs:{sm:"12",md:"6",lg:"4"}},[n("ClientSockets",{attrs:{sockets:e.client.sockets}})],1)],1)],1):e._e()],1)},us=[],ms=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",{staticClass:"fill-height"},[n("v-card-title",[e._v(e._s(e.$t("details")))]),n("v-simple-table",{attrs:{dense:""}},[[n("tbody",[n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("id")))]),n("td",[e._v(" "+e._s(e.client.id)+" ")]),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("status")))]),n("td",[n("ConnectionStatus",{attrs:{connected:e.client.connected}})],1),n("td",{attrs:{align:"right"}},[e.isSocketDisconnectSupported&&e.client.connected?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var s=t.on,a=t.attrs;return[n("v-btn",e._g(e._b({attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnectClient()}}},"v-btn",a,!1),s),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!1,1004975867)},[n("span",[e._v(e._s(e.$t("clients.disconnect")))])]):e._e()],1)]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("sockets.transport")))]),n("td",[n("Transport",{attrs:{transport:e.socket.transport}})],1),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("sockets.address")))]),n("td",[e._v(e._s(e.socket.handshake.address))]),n("td")])])]],2)],1)},ps=[],vs={name:"ClientDetails",components:{ConnectionStatus:$,Transport:Qe},props:{client:Object,socket:Object},computed:Object(r["a"])({},Object(l["d"])({isReadonly:function(e){return e.config.readonly},isSocketDisconnectSupported:function(e){return e.config.supportedFeatures.includes("DISCONNECT")}})),methods:{disconnectClient:function(){var e=this.client.sockets[0];e&&Te.socket.emit("_disconnect",e.nsp,!0,e.id)}}},fs=vs,hs=(n("6602"),Object(b["a"])(fs,ms,ps,!1,null,"8d2424e4",null)),bs=hs.exports;k()(hs,{VBtn:I["a"],VCard:Ce["a"],VCardTitle:xe["b"],VIcon:le["a"],VSimpleTable:dt["a"],VTooltip:un["a"]});var gs=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",[n("v-card-title",[e._v(e._s(e.$t("sockets.title")))]),n("v-data-table",{staticClass:"row-pointer",attrs:{headers:e.headers,items:e.sockets,dense:""},on:{"click:row":e.displayDetails},scopedSlots:e._u([{key:"item.nsp",fn:function(t){var s=t.value;return[n("code",[e._v(e._s(s))])]}},{key:"item.actions",fn:function(t){var s=t.item;return[e.isSocketDisconnectSupported?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnect(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("sockets.disconnect")))])]):e._e()]}}])})],1)},ks=[],_s={name:"ClientSockets",props:{sockets:Array},computed:Object(r["a"])({headers:function(){return[{text:"#",value:"id",align:"start"},{text:this.$t("namespace"),value:"nsp"},{value:"actions",align:"end",sortable:!1}]}},Object(l["d"])({isReadonly:function(e){return e.config.readonly},isSocketDisconnectSupported:function(e){return e.config.supportedFeatures.includes("DISCONNECT")}})),methods:{disconnect:function(e){Te.socket.emit("_disconnect",e.nsp,!1,e.id)},displayDetails:function(e){this.$router.push({name:"socket",params:{nsp:e.nsp,id:e.id}})}}},ys=_s,Ss=(n("1993"),Object(b["a"])(ys,gs,ks,!1,null,"38772079",null)),Os=Ss.exports;k()(Ss,{VBtn:I["a"],VCard:Ce["a"],VCardTitle:xe["b"],VDataTable:dn["a"],VIcon:le["a"],VTooltip:un["a"]});var Cs={name:"Client",components:{ClientSockets:Os,InitialRequest:Mn,ClientDetails:bs},data:function(){return{socket:null,client:null}},computed:Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("clients.title"),to:{name:"clients"},exact:!0},{text:this.$t("clients.details"),disabled:!0}]}},Object(l["b"])("main",["findClientById"])),mounted:function(){this.client=this.findClientById(this.$route.params.id),this.client&&(this.socket=this.client.sockets[0])}},xs=Cs,$s=Object(b["a"])(xs,ds,us,!1,null,"3d554d12",null),js=$s.exports;k()($s,{VBreadcrumbs:Kt["a"],VCol:Zt["a"],VContainer:Pe["a"],VRow:lt["a"]});var ws=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),n("v-card",[n("v-data-table",{attrs:{headers:e.headers,items:e.servers,"footer-props":e.footerProps},scopedSlots:e._u([{key:"item.uptime",fn:function(t){var n=t.value;return[e._v(" "+e._s(e.formatDuration(n))+" ")]}},{key:"item.lastPing",fn:function(t){var n=t.value;return[e._v(" "+e._s(e.delaySinceLastPing(n))+" ")]}},{key:"item.healthy",fn:function(e){var t=e.value;return[n("ServerStatus",{attrs:{healthy:t}})]}},{key:"item.actions",fn:function(t){var s=t.item;return[s.healthy?e._e():n("v-btn",{attrs:{small:""},on:{click:function(t){return e.removeServer(s)}}},[n("v-icon",[e._v("mdi-delete-outline")])],1)]}}])})],1)],1)},Vs=[],Ds={name:"Servers",components:{ServerStatus:_t},data:function(){return{footerProps:{"items-per-page-options":[20,100,-1]},now:Date.now()}},created:function(){var e=this;this.interval=setInterval((function(){e.now=Date.now()}),1e3)},beforeDestroy:function(){clearInterval(this.interval)},computed:Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("servers.title"),disabled:!0}]},headers:function(){return[{text:this.$t("id"),value:"serverId"},{text:this.$t("servers.hostname"),value:"hostname"},{text:this.$t("servers.pid"),value:"pid"},{text:this.$t("servers.uptime"),value:"uptime"},{text:this.$t("servers.clients-count"),value:"clientsCount"},{text:this.$t("servers.last-ping"),value:"lastPing"},{text:this.$t("status"),value:"healthy"},{value:"actions",align:"end",sortable:!1}]}},Object(l["d"])({servers:function(e){return Object(jt["a"])(e.servers.servers,"serverId")}})),methods:{formatDuration:nt,delaySinceLastPing:function(e){var t=this.now-e;return"".concat(nt(t/1e3)," ago")},removeServer:function(e){this.$store.commit("servers/removeServer",e.serverId)}}},Ts=Ds,Is=Object(b["a"])(Ts,ws,Vs,!1,null,null,null),Es=Is.exports;k()(Is,{VBreadcrumbs:Kt["a"],VBtn:I["a"],VCard:Ce["a"],VDataTable:dn["a"],VIcon:le["a"]});var Rs=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),e.room?n("v-container",{attrs:{fluid:""}},[n("v-row",[n("v-col",{attrs:{sm:"12",md:"4"}},[n("RoomDetails",{attrs:{room:e.room,nsp:e.$route.params.nsp}})],1),n("v-col",{attrs:{sm:"12",md:"8"}},[n("RoomSockets",{attrs:{room:e.room}})],1)],1)],1):e._e()],1)},Ns=[],Ps=function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.room?n("v-card",[n("v-card-title",[e._v(e._s(e.$t("sockets.title")))]),n("v-data-table",{staticClass:"row-pointer",attrs:{headers:e.headers,items:e.room.sockets,"footer-props":e.footerProps},on:{"click:row":e.displayDetails},scopedSlots:e._u([{key:"item.transport",fn:function(e){var t=e.value;return[n("Transport",{attrs:{transport:t}})]}},{key:"item.actions",fn:function(t){var s=t.item;return[e.isSocketLeaveSupported&&!e.room.isPrivate?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.leave(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-tag-off-outline")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("rooms.leave")))])]):e._e(),e.isSocketDisconnectSupported?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var a=t.on,o=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.disconnect(s)}}},"v-btn",o,!1),a),[n("v-icon",[e._v("mdi-logout")])],1)]}}],null,!0)},[n("span",[e._v(e._s(e.$t("sockets.disconnect")))])]):e._e()]}}],null,!1,1763569022)})],1):e._e()},Bs=[],As={name:"RoomSockets",components:{Transport:Qe},props:{room:Object},data:function(){return{footerProps:{"items-per-page-options":[20,100,-1]}}},computed:Object(r["a"])(Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("rooms.title"),to:{name:"rooms"}},{text:this.$t("rooms.details"),disabled:!0}]},headers:function(){return[{text:this.$t("id"),value:"id",align:"start"},{text:this.$t("sockets.address"),value:"handshake.address"},{text:this.$t("sockets.transport"),value:"transport"},{value:"actions",align:"end",sortable:!1}]}},Object(l["b"])("main",["findRoomByName"])),Object(l["d"])({isReadonly:function(e){return e.config.readonly},isSocketLeaveSupported:function(e){return e.config.supportedFeatures.includes("LEAVE")},isSocketDisconnectSupported:function(e){return e.config.supportedFeatures.includes("DISCONNECT")}})),methods:{leave:function(e){Te.socket.emit("leave",e.nsp,this.room.name,e.id)},disconnect:function(e){Te.socket.emit("_disconnect",e.nsp,!1,e.id)},displayDetails:function(e){this.$router.push({name:"socket",params:{nsp:this.$route.params.nsp,id:e.id}})}}},Us=As,Ls=(n("6e0b"),Object(b["a"])(Us,Ps,Bs,!1,null,"c9425064",null)),Ms=Ls.exports;k()(Ls,{VBtn:I["a"],VCard:Ce["a"],VCardTitle:xe["b"],VDataTable:dn["a"],VIcon:le["a"],VTooltip:un["a"]});var Hs=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-card",{staticClass:"fill-height"},[n("v-card-title",[e._v(e._s(e.$t("details")))]),n("v-simple-table",{attrs:{dense:""}},[[n("tbody",[n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("namespace")))]),n("td",[n("code",[e._v(e._s(e.nsp))])]),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("id")))]),n("td",[e._v(" "+e._s(e.room.name)+" ")]),n("td")]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("status")))]),n("td",[n("RoomStatus",{attrs:{active:e.room.active}})],1),n("td",{attrs:{align:"right"}},[e.isMultiLeaveSupported&&!e.room.isPrivate?n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function(t){var s=t.on,a=t.attrs;return[n("v-btn",e._g(e._b({staticClass:"ml-3",attrs:{disabled:e.isReadonly,small:""},on:{click:function(t){return e.clear()}}},"v-btn",a,!1),s),[n("v-icon",[e._v("mdi-tag-off-outline")])],1)]}}],null,!1,464351539)},[n("span",[e._v(e._s(e.$t("rooms.clear")))])]):e._e()],1)]),n("tr",[n("td",{staticClass:"key-column"},[e._v(e._s(e.$t("type")))]),n("td",[n("RoomType",{attrs:{"is-private":e.room.isPrivate}})],1),n("td")])])]],2)],1)},qs=[],Fs=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("Status",{attrs:{value:e.active,"ok-label":e.$t("rooms.active"),"ko-label":e.$t("rooms.deleted")}})},Js=[],zs={name:"RoomStatus",components:{Status:S},props:{active:Boolean}},Ws=zs,Gs=Object(b["a"])(Ws,Fs,Js,!1,null,null,null),Ks=Gs.exports,Zs={name:"RoomDetails",components:{RoomType:Yn,RoomStatus:Ks},props:{room:Object,nsp:String},computed:Object(r["a"])({},Object(l["d"])({isReadonly:function(e){return e.config.readonly},isMultiLeaveSupported:function(e){return e.config.supportedFeatures.includes("MLEAVE")}})),methods:{clear:function(){Te.socket.emit("leave",this.nsp,this.room.name)}}},Qs=Zs,Xs=Object(b["a"])(Qs,Hs,qs,!1,null,"7b3793ea",null),Ys=Xs.exports;k()(Xs,{VBtn:I["a"],VCard:Ce["a"],VCardTitle:xe["b"],VIcon:le["a"],VSimpleTable:dt["a"],VTooltip:un["a"]});var ea={name:"Sockets",components:{RoomDetails:Ys,RoomSockets:Ms},data:function(){return{room:null}},computed:Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("rooms.title"),to:{name:"rooms"}},{text:this.$t("rooms.details"),disabled:!0}]}},Object(l["b"])("main",["findRoomByName"])),mounted:function(){this.room=this.findRoomByName(this.$route.params.nsp,this.$route.params.name)}},ta=ea,na=Object(b["a"])(ta,Rs,Ns,!1,null,null,null),sa=na.exports;k()(na,{VBreadcrumbs:Kt["a"],VCol:Zt["a"],VContainer:Pe["a"],VRow:lt["a"]});var aa=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("v-breadcrumbs",{attrs:{items:e.breadcrumbItems}}),n("v-card",[n("v-card-text",[n("NamespaceSelector")],1),n("v-data-table",{attrs:{headers:e.headers,items:e.events,"footer-props":e.footerProps,"item-key":"eventId","sort-by":["timestamp","eventId"],"sort-desc":[!0,!0],"single-expand":"","show-expand":""},scopedSlots:e._u([{key:"item.type",fn:function(e){var t=e.value;return[n("EventType",{attrs:{type:t}})]}},{key:"item.id",fn:function(t){var s=t.value;return[n("router-link",{staticClass:"link",attrs:{to:e.socketDetailsRoute(s)}},[e._v(e._s(s))])]}},{key:"item.args",fn:function(t){var s=t.item,a=t.value;return[e.isExpandable(s)?n("span",[e._v(" "+e._s(e.$t("events.eventName"))+e._s(e.$t("separator"))),n("code",[e._v(e._s(s.eventName))])]):"disconnection"===s.type?n("span",[e._v(" "+e._s(e.$t("events.reason"))+e._s(e.$t("separator"))),n("code",[e._v(e._s(a))])]):"room_joined"===s.type||"room_left"===s.type?n("span",[e._v(" "+e._s(e.$t("events.room"))+e._s(e.$t("separator"))),n("code",[e._v(e._s(a))])]):n("span",[e._v(" "+e._s(a)+" ")])]}},{key:"item.data-table-expand",fn:function(t){var s=t.item,a=t.isExpanded,o=t.expand;return[e.isExpandable(s)&&!a?n("v-btn",{attrs:{icon:""},on:{click:function(e){return o(!0)}}},[n("v-icon",[e._v("mdi-chevron-down")])],1):e._e(),e.isExpandable(s)&&a?n("v-btn",{attrs:{icon:""},on:{click:function(e){return o(!1)}}},[n("v-icon",[e._v("mdi-chevron-up")])],1):e._e()]}},{key:"expanded-item",fn:function(t){var s=t.headers,a=t.item;return[n("td",{attrs:{colspan:s.length}},[n("div",{staticClass:"ma-3"},[e._v(" "+e._s(e.$t("events.eventArgs"))+e._s(e.$t("separator"))+" "),n("pre",[n("code",[e._v(e._s(a.args))])])])])]}}])})],1)],1)},oa=[],ra=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-chip",{attrs:{color:e.color,outlined:""}},[e._v(" "+e._s(e.$t("events.type."+e.type))+" ")])},ia=[],ca={name:"EventType",props:{type:String},computed:{color:function(){switch(this.type){case"connection":return v["a"].green.base;case"room_joined":return v["a"].teal.base;case"room_left":return v["a"].amber.base;case"disconnection":return v["a"].red.base;case"event_received":return v["a"].blue.base;case"event_sent":return v["a"].orange.base}return v["a"].gray.base}}},la=ca,da=Object(b["a"])(la,ra,ia,!1,null,null,null),ua=da.exports;k()(da,{VChip:_["a"]});var ma={name:"Events",components:{EventType:ua,NamespaceSelector:rn},data:function(){return{footerProps:{"items-per-page-options":[-1]}}},computed:Object(r["a"])(Object(r["a"])({breadcrumbItems:function(){return[{text:this.$t("events.title"),disabled:!0}]},headers:function(){return[{text:this.$t("timestamp"),value:"timestamp"},{text:this.$t("sockets.socket"),value:"id",sortable:!1},{text:this.$t("type"),value:"type",sortable:!1},{value:"args",sortable:!1},{text:"",value:"data-table-expand"}]}},Object(l["b"])("main",["events"])),Object(l["d"])({selectedNamespace:function(e){return e.main.selectedNamespace}})),methods:{socketDetailsRoute:function(e){return{name:"socket",params:{nsp:this.selectedNamespace.name,id:e}}},isExpandable:function(e){return["event_received","event_sent"].includes(e.type)}}},pa=ma,va=(n("76e7"),Object(b["a"])(pa,aa,oa,!1,null,"2c2337d4",null)),fa=va.exports;k()(va,{VBreadcrumbs:Kt["a"],VBtn:I["a"],VCard:Ce["a"],VCardText:xe["a"],VDataTable:dn["a"],VIcon:le["a"]}),s["a"].use(Le["a"]);var ha=[{path:"/",name:"dashboard",component:Xt,meta:{topLevel:!0,index:0}},{path:"/sockets/",name:"sockets",component:pn,meta:{topLevel:!0,index:1}},{path:"/n/:nsp/sockets/:id",name:"socket",component:Jn,meta:{topLevel:!1}},{path:"/rooms/",name:"rooms",component:ss,meta:{topLevel:!0,index:2}},{path:"/n/:nsp/rooms/:name",name:"room",component:sa,meta:{topLevel:!1}},{path:"/clients/",name:"clients",component:ls,meta:{topLevel:!0,index:3}},{path:"/clients/:id",name:"client",component:js,meta:{topLevel:!1}},{path:"/events/",name:"events",component:fa,meta:{topLevel:!0,index:4}},{path:"/servers/",name:"servers",component:Es,meta:{topLevel:!0,index:5}}],ba=new Le["a"]({mode:"hash",base:"",routes:ha}),ga=ba,ka=(n("159b"),n("d3b7"),n("ddb0"),n("466d"),n("a925"));function _a(){var e=n("49f8"),t={};return e.keys().forEach((function(n){var s=n.match(/([A-Za-z0-9-_]+)\./i);if(s&&s.length>1){var a=s[1];t[a]=e(n)}})),t}s["a"].use(ka["a"]);var ya=new ka["a"]({locale:"en",fallbackLocale:"en",messages:_a()}),Sa={namespaced:!0,state:{darkTheme:!1,readonly:!1,lang:"en",supportedFeatures:[],showNavigationDrawer:!1},getters:{developmentMode:function(e){return e.supportedFeatures.includes("ALL_EVENTS")||!e.supportedFeatures.includes("AGGREGATED_EVENTS")},hasAggregatedValues:function(e){return e.supportedFeatures.includes("AGGREGATED_EVENTS")}},mutations:{init:function(e){tt&&(e.darkTheme="true"===localStorage.getItem("dark_theme"),e.readonly="true"===localStorage.getItem("readonly"),e.lang=localStorage.getItem("lang")||"en")},selectTheme:function(e,t){e.darkTheme=t,tt&&localStorage.setItem("dark_theme",t)},selectLang:function(e,t){e.lang=t,tt&&localStorage.setItem("lang",t)},toggleReadonly:function(e){e.readonly=!e.readonly,tt&&localStorage.setItem("readonly",e.readonly)},updateConfig:function(e,t){e.supportedFeatures=t.supportedFeatures},toggleNavigationDrawer:function(e){e.showNavigationDrawer=!e.showNavigationDrawer}}},Oa=(n("8a79"),{namespaced:!0,state:{serverUrl:"",wsOnly:!1,path:"/socket.io",namespace:"/admin",parser:"default",sessionId:"",connected:!1},mutations:{init:function(e){tt&&(e.serverUrl=localStorage.getItem("server_url")||"",e.serverUrl.endsWith("/admin")?e.serverUrl=e.serverUrl.slice(0,-6):e.namespace=localStorage.getItem("namespace")||"/admin",e.wsOnly="true"===localStorage.getItem("ws_only"),e.sessionId=localStorage.getItem("session_id"),e.path=localStorage.getItem("path")||"/socket.io",e.parser=localStorage.getItem("parser")||"default")},saveConfig:function(e,t){var n=t.serverUrl,s=t.wsOnly,a=t.path,o=t.namespace,r=t.parser;e.serverUrl=n,e.wsOnly=s,e.path=a,e.namespace=o,e.parser=r,tt&&(localStorage.setItem("server_url",n),localStorage.setItem("ws_only",s),localStorage.setItem("path",a),localStorage.setItem("namespace",o),localStorage.setItem("parser",r))},saveSessionId:function(e,t){e.sessionId=t,tt&&localStorage.setItem("session_id",t)},connect:function(e){e.connected=!0},disconnect:function(e){e.connected=!1}}}),Ca=n("b85c"),xa=n("3835"),$a=n("0a94"),ja=n("a1a3"),wa=n("3a59"),Va=6e5,Da=function(e,t){var n=Object($a["a"])(e,{name:t});return n||(n={name:t,sockets:[],rooms:[],events:[]},e.push(n),n)},Ta=function(e,t){var n=Object($a["a"])(e.rooms,{name:t});return n||(n={name:t,active:!0,sockets:[]},e.rooms.push(n),n)},Ia=function(e,t){var n=Object($a["a"])(e,{id:t});return n||(n={id:t,connected:!0,sockets:[]},e.push(n),n)},Ea=function(e,t){var n=Da(e.namespaces,t.nsp);t.connected=!0,Object($a["a"])(n.sockets,{id:t.id})||n.sockets.push(t),t.rooms.forEach((function(e){var s=Ta(n,e);s.isPrivate=e===t.id,Object($a["a"])(s.sockets,{id:t.id})||s.sockets.push(t)}));var s=Ia(e.clients,t.clientId);Object($a["a"])(s.sockets,{id:t.id})||s.sockets.push(t)},Ra=1e3,Na=0,Pa=function(e,t){t.eventId=++Na,e.push(t),e.length>Ra&&e.shift()};function Ba(e){return e-e%1e4}var Aa={namespaced:!0,state:{namespaces:[],clients:[],selectedNamespace:null,aggregatedEvents:[]},getters:{findSocketById:function(e){return function(t,n){var s=Object($a["a"])(e.namespaces,{name:t});if(s)return Object($a["a"])(s.sockets,{id:n})}},findClientById:function(e){return function(t){return Object($a["a"])(e.clients,{id:t})}},findRoomByName:function(e){return function(t,n){var s=Object($a["a"])(e.namespaces,{name:t});if(s)return Object($a["a"])(s.rooms,{name:n})}},findRoomsByNamespace:function(e){return function(t){var n=Object($a["a"])(e.namespaces,{name:t});return n?n.rooms:[]}},sockets:function(e){return e.selectedNamespace?e.selectedNamespace.sockets:[]},rooms:function(e){return e.selectedNamespace?e.selectedNamespace.rooms:[]},events:function(e){return e.selectedNamespace?e.selectedNamespace.events:[]}},mutations:{selectNamespace:function(e,t){e.selectedNamespace=t},onAllSockets:function(e,t){e.namespaces.forEach((function(e){e.sockets.splice(0),e.rooms.splice(0)})),e.clients.splice(0),t.forEach((function(t){return Ea(e,t)})),e.selectedNamespace||(e.selectedNamespace=Object($a["a"])(e.namespaces,{name:"/"})||e.namespaces[0])},onSocketConnected:function(e,t){var n=t.timestamp,s=t.socket;Ea(e,s);var a=Da(e.namespaces,s.nsp);Pa(a.events,{type:"connection",timestamp:n,id:s.id})},onSocketUpdated:function(e,t){var n=Da(e.namespaces,t.nsp),s=Object($a["a"])(n.sockets,{id:t.id});s&&Object(ja["a"])(s,t)},onSocketDisconnected:function(e,t){var n=t.timestamp,s=t.nsp,a=t.id,o=t.reason,r=Da(e.namespaces,s),i=st(r.sockets,{id:a}),c=Object(xa["a"])(i,1),l=c[0];if(l){l.connected=!1;var d=Ia(e.clients,l.clientId);st(d.sockets,{id:a}),0===d.sockets.length&&(d.connected=!1,st(e.clients,{id:l.clientId}))}Pa(r.events,{type:"disconnection",timestamp:n,id:a,args:o})},onRoomJoined:function(e,t){var n=t.nsp,s=t.room,a=t.id,o=t.timestamp,r=Da(e.namespaces,n),i=Object($a["a"])(r.sockets,{id:a});if(i){at(i.rooms,s);var c=Ta(r,s);c.sockets.push(i)}Pa(r.events,{type:"room_joined",timestamp:o,id:a,args:s})},onRoomLeft:function(e,t){var n=t.timestamp,s=t.nsp,a=t.room,o=t.id,r=Da(e.namespaces,s),i=Object($a["a"])(r.sockets,{id:o});i&&st(i.rooms,a);var c=Ta(r,a);st(c.sockets,{id:o}),0===c.sockets.length&&(c.active=!1,st(r.rooms,{name:a})),Pa(r.events,{type:"room_left",timestamp:n,id:o,args:a})},onServerStats:function(e,t){if(t.aggregatedEvents){var n,s=Object(Ca["a"])(t.aggregatedEvents);try{for(s.s();!(n=s.n()).done;){var a=n.value,o=Ba(a.timestamp),r=Object($a["a"])(e.aggregatedEvents,{timestamp:o,type:a.type,subType:a.subType});r?r.count+=a.count:e.aggregatedEvents.push({timestamp:o,type:a.type,subType:a.subType,count:a.count})}}catch(i){s.e(i)}finally{s.f()}Object(wa["a"])(e.aggregatedEvents,(function(e){return e.timestamp