openc3-cosmos-tool-cmdtlmserver 5.9.1 → 5.10.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,2 +1,2 @@
1
- (self["webpackChunk_openc3_cosmos_tool_cmdtlmserver"]=self["webpackChunk_openc3_cosmos_tool_cmdtlmserver"]||[]).push([[916],{3916:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return p}});t(7950),t(4908);function a(){var e="/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",n="6ab0d73706fa7c0dc987925b5fe31277b476ce6e",t=new Function("return this")(),l="__coverage__",s={path:"/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",statementMap:{0:{start:{line:1,column:13},end:{line:5,column:1}},1:{start:{line:1,column:39},end:{line:1,column:43}},2:{start:{line:1,column:47},end:{line:1,column:59}},3:{start:{line:1,column:60},end:{line:4,column:84}},4:{start:{line:1,column:330},end:{line:1,column:344}},5:{start:{line:6,column:22},end:{line:6,column:24}}},fnMap:{0:{name:"render",decl:{start:{line:1,column:22},end:{line:1,column:28}},loc:{start:{line:1,column:30},end:{line:5,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:314},end:{line:1,column:315}},loc:{start:{line:1,column:329},end:{line:1,column:345}},line:1}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0},f:{0:0,1:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"6ab0d73706fa7c0dc987925b5fe31277b476ce6e"},r=t[l]||(t[l]={});r[e]&&r[e].hash===n||(r[e]=s);var o=r[e];return a=function(){return o},o}a(),a().s[0]++;var l=function(){a().f[0]++;var e=(a().s[1]++,this),n=(a().s[2]++,e._self._c);return a().s[3]++,n("div",[n("v-card",[n("v-card-title",[e._v(" "+e._s(e.data.length)+" Metrics "),n("v-spacer"),n("v-text-field",{attrs:{"append-icon":"mdi-magnify",label:"Search","single-line":"","hide-details":""},model:{value:e.search,callback:function(n){a().f[1]++,a().s[4]++,e.search=n},expression:"search"}})],1),n("v-data-table",{attrs:{headers:e.headers,items:e.data,search:e.search,"items-per-page":10,"footer-props":{itemsPerPageOptions:[10,20,50,100,1e3],showFirstLastPage:!0},"calculate-widths":"","multi-sort":"","data-test":"metrics-table"}})],1)],1)},s=(a().s[5]++,[]),r=t(7302),o=(t(1245),t(5883),t(6728),t(4872)),i=t(8123);function c(){var e="/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",n="c538a4d97bd8f6141e1539fa3abd7ca8ae091605",t=new Function("return this")(),a="__coverage__",l={path:"/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",statementMap:{0:{start:{line:12,column:4},end:{line:35,column:5}},1:{start:{line:39,column:6},end:{line:43,column:7}},2:{start:{line:40,column:8},end:{line:40,column:44}},3:{start:{line:41,column:13},end:{line:43,column:7}},4:{start:{line:42,column:8},end:{line:42,column:43}},5:{start:{line:46,column:6},end:{line:46,column:43}},6:{start:{line:46,column:37},end:{line:46,column:43}},7:{start:{line:47,column:6},end:{line:52,column:8}},8:{start:{line:48,column:8},end:{line:48,column:22}},9:{start:{line:49,column:8},end:{line:51,column:9}},10:{start:{line:50,column:10},end:{line:50,column:60}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:11,column:2},end:{line:11,column:3}},loc:{start:{line:11,column:9},end:{line:36,column:3}},line:11},1:{name:"(anonymous_1)",decl:{start:{line:38,column:4},end:{line:38,column:5}},loc:{start:{line:38,column:29},end:{line:44,column:5}},line:38},2:{name:"(anonymous_2)",decl:{start:{line:45,column:4},end:{line:45,column:5}},loc:{start:{line:45,column:13},end:{line:53,column:5}},line:45},3:{name:"(anonymous_3)",decl:{start:{line:47,column:34},end:{line:47,column:35}},loc:{start:{line:47,column:47},end:{line:52,column:7}},line:47}},branchMap:{0:{loc:{start:{line:39,column:6},end:{line:43,column:7}},type:"if",locations:[{start:{line:39,column:6},end:{line:43,column:7}},{start:{line:41,column:13},end:{line:43,column:7}}],line:39},1:{loc:{start:{line:41,column:13},end:{line:43,column:7}},type:"if",locations:[{start:{line:41,column:13},end:{line:43,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:41},2:{loc:{start:{line:46,column:6},end:{line:46,column:43}},type:"if",locations:[{start:{line:46,column:6},end:{line:46,column:43}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:46}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0},f:{0:0,1:0,2:0,3:0},b:{0:[0,0],1:[0,0],2:[0,0]},inputSourceMap:{version:3,sources:["StatusTab.vue"],names:[],mappings:";AAwDA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",file:"StatusTab.vue",sourceRoot:"src/tools/CmdTlmServer",sourcesContent:["\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n \x3c!-- Use a container here so we can do cols=\"auto\" to resize v-select --\x3e\n <v-card>\n <v-card-title>\n {{ data.length }} Metrics\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"data\"\n :search=\"search\"\n :items-per-page=\"10\"\n :footer-props=\"{\n itemsPerPageOptions: [10, 20, 50, 100, 1000],\n showFirstLastPage: true,\n }\"\n calculate-widths\n multi-sort\n data-test=\"metrics-table\"\n >\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport Updater from './Updater'\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n api: new OpenC3Api(),\n apiStatus: [],\n apiHeaders: [\n { text: 'Port', value: 'port' },\n { text: 'Clients', value: 'clients' },\n { text: 'Requests', value: 'requests' },\n { text: 'Avg Request Time', value: 'avgTime' },\n { text: 'Server Threads', value: 'threads' },\n ],\n backgroundTasks: [],\n backgroundHeaders: [\n { text: 'Name', value: 'name' },\n { text: 'State', value: 'state' },\n { text: 'Status', value: 'status' },\n { text: 'Control', value: 'control' },\n ],\n search: '',\n data: [],\n headers: [\n { text: 'Metric', value: 'metric_name' },\n { text: 'Value', value: 'value' },\n ],\n }\n },\n methods: {\n taskControl(name, state) {\n if (state == 'Start') {\n this.api.start_background_task(name)\n } else if (state == 'Stop') {\n this.api.stop_background_task(name)\n }\n },\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_metrics().then((metrics) => {\n this.data = []\n for (const [key, value] of Object.entries(metrics)) {\n this.data.push({ metric_name: key, value: value })\n }\n })\n },\n },\n}\n<\/script>\n\n<style scoped>\n.container,\n.theme--dark.v-card,\n.theme--dark.v-sheet {\n background-color: var(--v-tertiary-darken2);\n}\n</style>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"c538a4d97bd8f6141e1539fa3abd7ca8ae091605"},s=t[a]||(t[a]={});s[e]&&s[e].hash===n||(s[e]=l);var r=s[e];return c=function(){return r},r}c();var u={mixins:[o.Z],props:{tabId:Number,curTab:Number},data:function(){return c().f[0]++,c().s[0]++,{api:new i.k,apiStatus:[],apiHeaders:[{text:"Port",value:"port"},{text:"Clients",value:"clients"},{text:"Requests",value:"requests"},{text:"Avg Request Time",value:"avgTime"},{text:"Server Threads",value:"threads"}],backgroundTasks:[],backgroundHeaders:[{text:"Name",value:"name"},{text:"State",value:"state"},{text:"Status",value:"status"},{text:"Control",value:"control"}],search:"",data:[],headers:[{text:"Metric",value:"metric_name"},{text:"Value",value:"value"}]}},methods:{taskControl:function(e,n){c().f[1]++,c().s[1]++,"Start"==n?(c().b[0][0]++,c().s[2]++,this.api.start_background_task(e)):(c().b[0][1]++,c().s[3]++,"Stop"==n?(c().b[1][0]++,c().s[4]++,this.api.stop_background_task(e)):c().b[1][1]++)},update:function(){var e=this;if(c().f[2]++,c().s[5]++,this.tabId!=this.curTab)return c().b[2][0]++,void c().s[6]++;c().b[2][1]++,c().s[7]++,this.api.get_metrics().then((function(n){c().f[3]++,c().s[8]++,e.data=[],c().s[9]++;for(var t=0,a=Object.entries(n);t<a.length;t++){var l=(0,r.Z)(a[t],2),s=l[0],o=l[1];c().s[10]++,e.data.push({metric_name:s,value:o})}}))}}},d=u,m=(t(460),t(3483)),A=(0,m.Z)(d,l,s,!1,null,"44b09238",null),p=A.exports},5883:function(e,n,t){var a=t(3103),l=t(7664).entries;a({target:"Object",stat:!0},{entries:function(e){return l(e)}})},825:function(e,n,t){"use strict";t.r(n);var a=t(9601),l=t.n(a),s=t(2609),r=t.n(s),o=r()(l());o.push([e.id,".container[data-v-44b09238],.theme--dark.v-card[data-v-44b09238],.theme--dark.v-sheet[data-v-44b09238]{background-color:var(--v-tertiary-darken2)}",""]),n["default"]=o},460:function(e,n,t){var a=t(825);a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[e.id,a,""]]),a.locals&&(e.exports=a.locals);var l=t(3514).Z;l("5f1a43b8",a,!0,{sourceMap:!1,shadowMode:!1})}}]);
1
+ (self["webpackChunk_openc3_cosmos_tool_cmdtlmserver"]=self["webpackChunk_openc3_cosmos_tool_cmdtlmserver"]||[]).push([[916],{3916:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return p}});t(7950),t(4908);function a(){var e="/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",n="6ab0d73706fa7c0dc987925b5fe31277b476ce6e",t=new Function("return this")(),l="__coverage__",s={path:"/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",statementMap:{0:{start:{line:1,column:13},end:{line:5,column:1}},1:{start:{line:1,column:39},end:{line:1,column:43}},2:{start:{line:1,column:47},end:{line:1,column:59}},3:{start:{line:1,column:60},end:{line:4,column:84}},4:{start:{line:1,column:330},end:{line:1,column:344}},5:{start:{line:6,column:22},end:{line:6,column:24}}},fnMap:{0:{name:"render",decl:{start:{line:1,column:22},end:{line:1,column:28}},loc:{start:{line:1,column:30},end:{line:5,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:314},end:{line:1,column:315}},loc:{start:{line:1,column:329},end:{line:1,column:345}},line:1}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0},f:{0:0,1:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"6ab0d73706fa7c0dc987925b5fe31277b476ce6e"},r=t[l]||(t[l]={});r[e]&&r[e].hash===n||(r[e]=s);var o=r[e];return a=function(){return o},o}a(),a().s[0]++;var l=function(){a().f[0]++;var e=(a().s[1]++,this),n=(a().s[2]++,e._self._c);return a().s[3]++,n("div",[n("v-card",[n("v-card-title",[e._v(" "+e._s(e.data.length)+" Metrics "),n("v-spacer"),n("v-text-field",{attrs:{"append-icon":"mdi-magnify",label:"Search","single-line":"","hide-details":""},model:{value:e.search,callback:function(n){a().f[1]++,a().s[4]++,e.search=n},expression:"search"}})],1),n("v-data-table",{attrs:{headers:e.headers,items:e.data,search:e.search,"items-per-page":10,"footer-props":{itemsPerPageOptions:[10,20,50,100,1e3],showFirstLastPage:!0},"calculate-widths":"","multi-sort":"","data-test":"metrics-table"}})],1)],1)},s=(a().s[5]++,[]),r=t(7302),o=(t(1245),t(5883),t(6728),t(4872)),i=t(8123);function c(){var e="/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",n="c538a4d97bd8f6141e1539fa3abd7ca8ae091605",t=new Function("return this")(),a="__coverage__",l={path:"/openc3/plugins/packages/openc3-cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue",statementMap:{0:{start:{line:12,column:4},end:{line:35,column:5}},1:{start:{line:39,column:6},end:{line:43,column:7}},2:{start:{line:40,column:8},end:{line:40,column:44}},3:{start:{line:41,column:13},end:{line:43,column:7}},4:{start:{line:42,column:8},end:{line:42,column:43}},5:{start:{line:46,column:6},end:{line:46,column:43}},6:{start:{line:46,column:37},end:{line:46,column:43}},7:{start:{line:47,column:6},end:{line:52,column:8}},8:{start:{line:48,column:8},end:{line:48,column:22}},9:{start:{line:49,column:8},end:{line:51,column:9}},10:{start:{line:50,column:10},end:{line:50,column:60}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:11,column:2},end:{line:11,column:3}},loc:{start:{line:11,column:9},end:{line:36,column:3}},line:11},1:{name:"(anonymous_1)",decl:{start:{line:38,column:4},end:{line:38,column:5}},loc:{start:{line:38,column:29},end:{line:44,column:5}},line:38},2:{name:"(anonymous_2)",decl:{start:{line:45,column:4},end:{line:45,column:5}},loc:{start:{line:45,column:13},end:{line:53,column:5}},line:45},3:{name:"(anonymous_3)",decl:{start:{line:47,column:34},end:{line:47,column:35}},loc:{start:{line:47,column:47},end:{line:52,column:7}},line:47}},branchMap:{0:{loc:{start:{line:39,column:6},end:{line:43,column:7}},type:"if",locations:[{start:{line:39,column:6},end:{line:43,column:7}},{start:{line:41,column:13},end:{line:43,column:7}}],line:39},1:{loc:{start:{line:41,column:13},end:{line:43,column:7}},type:"if",locations:[{start:{line:41,column:13},end:{line:43,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:41},2:{loc:{start:{line:46,column:6},end:{line:46,column:43}},type:"if",locations:[{start:{line:46,column:6},end:{line:46,column:43}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:46}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0},f:{0:0,1:0,2:0,3:0},b:{0:[0,0],1:[0,0],2:[0,0]},inputSourceMap:{version:3,sources:["StatusTab.vue"],names:[],mappings:";AAwDA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",file:"StatusTab.vue",sourceRoot:"src/tools/CmdTlmServer",sourcesContent:["\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n \x3c!-- Use a container here so we can do cols=\"auto\" to resize v-select --\x3e\n <v-card>\n <v-card-title>\n {{ data.length }} Metrics\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"data\"\n :search=\"search\"\n :items-per-page=\"10\"\n :footer-props=\"{\n itemsPerPageOptions: [10, 20, 50, 100, 1000],\n showFirstLastPage: true,\n }\"\n calculate-widths\n multi-sort\n data-test=\"metrics-table\"\n >\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport Updater from './Updater'\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n api: new OpenC3Api(),\n apiStatus: [],\n apiHeaders: [\n { text: 'Port', value: 'port' },\n { text: 'Clients', value: 'clients' },\n { text: 'Requests', value: 'requests' },\n { text: 'Avg Request Time', value: 'avgTime' },\n { text: 'Server Threads', value: 'threads' },\n ],\n backgroundTasks: [],\n backgroundHeaders: [\n { text: 'Name', value: 'name' },\n { text: 'State', value: 'state' },\n { text: 'Status', value: 'status' },\n { text: 'Control', value: 'control' },\n ],\n search: '',\n data: [],\n headers: [\n { text: 'Metric', value: 'metric_name' },\n { text: 'Value', value: 'value' },\n ],\n }\n },\n methods: {\n taskControl(name, state) {\n if (state == 'Start') {\n this.api.start_background_task(name)\n } else if (state == 'Stop') {\n this.api.stop_background_task(name)\n }\n },\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_metrics().then((metrics) => {\n this.data = []\n for (const [key, value] of Object.entries(metrics)) {\n this.data.push({ metric_name: key, value: value })\n }\n })\n },\n },\n}\n<\/script>\n\n<style scoped>\n.container,\n.theme--dark.v-card,\n.theme--dark.v-sheet {\n background-color: var(--v-tertiary-darken2);\n}\n</style>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"c538a4d97bd8f6141e1539fa3abd7ca8ae091605"},s=t[a]||(t[a]={});s[e]&&s[e].hash===n||(s[e]=l);var r=s[e];return c=function(){return r},r}c();var u={mixins:[o.Z],props:{tabId:Number,curTab:Number},data:function(){return c().f[0]++,c().s[0]++,{api:new i.k,apiStatus:[],apiHeaders:[{text:"Port",value:"port"},{text:"Clients",value:"clients"},{text:"Requests",value:"requests"},{text:"Avg Request Time",value:"avgTime"},{text:"Server Threads",value:"threads"}],backgroundTasks:[],backgroundHeaders:[{text:"Name",value:"name"},{text:"State",value:"state"},{text:"Status",value:"status"},{text:"Control",value:"control"}],search:"",data:[],headers:[{text:"Metric",value:"metric_name"},{text:"Value",value:"value"}]}},methods:{taskControl:function(e,n){c().f[1]++,c().s[1]++,"Start"==n?(c().b[0][0]++,c().s[2]++,this.api.start_background_task(e)):(c().b[0][1]++,c().s[3]++,"Stop"==n?(c().b[1][0]++,c().s[4]++,this.api.stop_background_task(e)):c().b[1][1]++)},update:function(){var e=this;if(c().f[2]++,c().s[5]++,this.tabId!=this.curTab)return c().b[2][0]++,void c().s[6]++;c().b[2][1]++,c().s[7]++,this.api.get_metrics().then((function(n){c().f[3]++,c().s[8]++,e.data=[],c().s[9]++;for(var t=0,a=Object.entries(n);t<a.length;t++){var l=(0,r.Z)(a[t],2),s=l[0],o=l[1];c().s[10]++,e.data.push({metric_name:s,value:o})}}))}}},d=u,m=(t(460),t(3483)),A=(0,m.Z)(d,l,s,!1,null,"44b09238",null),p=A.exports},5883:function(e,n,t){"use strict";var a=t(3103),l=t(7664).entries;a({target:"Object",stat:!0},{entries:function(e){return l(e)}})},825:function(e,n,t){"use strict";t.r(n);var a=t(9601),l=t.n(a),s=t(2609),r=t.n(s),o=r()(l());o.push([e.id,".container[data-v-44b09238],.theme--dark.v-card[data-v-44b09238],.theme--dark.v-sheet[data-v-44b09238]{background-color:var(--v-tertiary-darken2)}",""]),n["default"]=o},460:function(e,n,t){var a=t(825);a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[e.id,a,""]]),a.locals&&(e.exports=a.locals);var l=t(3514).Z;l("5f1a43b8",a,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
2
  //# sourceMappingURL=916.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"js/916.js","mappings":"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","sources":["webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue","webpack://@openc3/cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?0c8b","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?7de2","webpack://@openc3/cosmos-tool-cmdtlmserver/../../node_modules/core-js/modules/es.object.entries.js","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?82df","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?b814"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.data.length)+\" Metrics \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"items-per-page\":10,\"footer-props\":{\n itemsPerPageOptions: [10, 20, 50, 100, 1000],\n showFirstLastPage: true,\n },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"data-test\":\"metrics-table\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <!-- Use a container here so we can do cols=\"auto\" to resize v-select -->\n <v-card>\n <v-card-title>\n {{ data.length }} Metrics\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"data\"\n :search=\"search\"\n :items-per-page=\"10\"\n :footer-props=\"{\n itemsPerPageOptions: [10, 20, 50, 100, 1000],\n showFirstLastPage: true,\n }\"\n calculate-widths\n multi-sort\n data-test=\"metrics-table\"\n >\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport Updater from './Updater'\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n api: new OpenC3Api(),\n apiStatus: [],\n apiHeaders: [\n { text: 'Port', value: 'port' },\n { text: 'Clients', value: 'clients' },\n { text: 'Requests', value: 'requests' },\n { text: 'Avg Request Time', value: 'avgTime' },\n { text: 'Server Threads', value: 'threads' },\n ],\n backgroundTasks: [],\n backgroundHeaders: [\n { text: 'Name', value: 'name' },\n { text: 'State', value: 'state' },\n { text: 'Status', value: 'status' },\n { text: 'Control', value: 'control' },\n ],\n search: '',\n data: [],\n headers: [\n { text: 'Metric', value: 'metric_name' },\n { text: 'Value', value: 'value' },\n ],\n }\n },\n methods: {\n taskControl(name, state) {\n if (state == 'Start') {\n this.api.start_background_task(name)\n } else if (state == 'Stop') {\n this.api.stop_background_task(name)\n }\n },\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_metrics().then((metrics) => {\n this.data = []\n for (const [key, value] of Object.entries(metrics)) {\n this.data.push({ metric_name: key, value: value })\n }\n })\n },\n },\n}\n</script>\n\n<style scoped>\n.container,\n.theme--dark.v-card,\n.theme--dark.v-sheet {\n background-color: var(--v-tertiary-darken2);\n}\n</style>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StatusTab.vue?vue&type=template&id=44b09238&scoped=true&\"\nimport script from \"./StatusTab.vue?vue&type=script&lang=js&\"\nexport * from \"./StatusTab.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StatusTab.vue?vue&type=style&index=0&id=44b09238&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"44b09238\",\n null\n \n)\n\nexport default component.exports","var $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".container[data-v-44b09238],.theme--dark.v-card[data-v-44b09238],.theme--dark.v-sheet[data-v-44b09238]{background-color:var(--v-tertiary-darken2)}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusTab.vue?vue&type=style&index=0&id=44b09238&prod&scoped=true&lang=css&\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"5f1a43b8\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["cov_2ntlonrahl","actualCoverage","s","render","f","_vm","this","_c","_self","_v","_s","data","length","attrs","model","value","search","callback","$$v","expression","headers","itemsPerPageOptions","showFirstLastPage","staticRenderFns","mixins","Updater","props","tabId","Number","curTab","api","OpenC3Api","apiStatus","apiHeaders","text","backgroundTasks","backgroundHeaders","methods","taskControl","name","state","b","start_background_task","stop_background_task","update","_this","get_metrics","then","metrics","_i","_Object$entries","Object","entries","_Object$entries$_i","_slicedToArray","key","push","metric_name","component","$","$entries","target","stat","O","___CSS_LOADER_EXPORT___","module","id","content","__esModule","default","locals","exports","add"],"sourceRoot":""}
1
+ {"version":3,"file":"js/916.js","mappings":"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","sources":["webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue","webpack://@openc3/cosmos-tool-cmdtlmserver/src/tools/CmdTlmServer/StatusTab.vue","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?0c8b","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?7de2","webpack://@openc3/cosmos-tool-cmdtlmserver/../../node_modules/core-js/modules/es.object.entries.js","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?82df","webpack://@openc3/cosmos-tool-cmdtlmserver/./src/tools/CmdTlmServer/StatusTab.vue?b814"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.data.length)+\" Metrics \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"items-per-page\":10,\"footer-props\":{\n itemsPerPageOptions: [10, 20, 50, 100, 1000],\n showFirstLastPage: true,\n },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"data-test\":\"metrics-table\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <!-- Use a container here so we can do cols=\"auto\" to resize v-select -->\n <v-card>\n <v-card-title>\n {{ data.length }} Metrics\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"data\"\n :search=\"search\"\n :items-per-page=\"10\"\n :footer-props=\"{\n itemsPerPageOptions: [10, 20, 50, 100, 1000],\n showFirstLastPage: true,\n }\"\n calculate-widths\n multi-sort\n data-test=\"metrics-table\"\n >\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport Updater from './Updater'\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n api: new OpenC3Api(),\n apiStatus: [],\n apiHeaders: [\n { text: 'Port', value: 'port' },\n { text: 'Clients', value: 'clients' },\n { text: 'Requests', value: 'requests' },\n { text: 'Avg Request Time', value: 'avgTime' },\n { text: 'Server Threads', value: 'threads' },\n ],\n backgroundTasks: [],\n backgroundHeaders: [\n { text: 'Name', value: 'name' },\n { text: 'State', value: 'state' },\n { text: 'Status', value: 'status' },\n { text: 'Control', value: 'control' },\n ],\n search: '',\n data: [],\n headers: [\n { text: 'Metric', value: 'metric_name' },\n { text: 'Value', value: 'value' },\n ],\n }\n },\n methods: {\n taskControl(name, state) {\n if (state == 'Start') {\n this.api.start_background_task(name)\n } else if (state == 'Stop') {\n this.api.stop_background_task(name)\n }\n },\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_metrics().then((metrics) => {\n this.data = []\n for (const [key, value] of Object.entries(metrics)) {\n this.data.push({ metric_name: key, value: value })\n }\n })\n },\n },\n}\n</script>\n\n<style scoped>\n.container,\n.theme--dark.v-card,\n.theme--dark.v-sheet {\n background-color: var(--v-tertiary-darken2);\n}\n</style>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StatusTab.vue?vue&type=template&id=44b09238&scoped=true&\"\nimport script from \"./StatusTab.vue?vue&type=script&lang=js&\"\nexport * from \"./StatusTab.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StatusTab.vue?vue&type=style&index=0&id=44b09238&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"44b09238\",\n null\n \n)\n\nexport default component.exports","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".container[data-v-44b09238],.theme--dark.v-card[data-v-44b09238],.theme--dark.v-sheet[data-v-44b09238]{background-color:var(--v-tertiary-darken2)}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusTab.vue?vue&type=style&index=0&id=44b09238&prod&scoped=true&lang=css&\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"5f1a43b8\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["cov_2ntlonrahl","actualCoverage","s","render","f","_vm","this","_c","_self","_v","_s","data","length","attrs","model","value","search","callback","$$v","expression","headers","itemsPerPageOptions","showFirstLastPage","staticRenderFns","mixins","Updater","props","tabId","Number","curTab","api","OpenC3Api","apiStatus","apiHeaders","text","backgroundTasks","backgroundHeaders","methods","taskControl","name","state","b","start_background_task","stop_background_task","update","_this","get_metrics","then","metrics","_i","_Object$entries","Object","entries","_Object$entries$_i","_slicedToArray","key","push","metric_name","component","$","$entries","target","stat","O","___CSS_LOADER_EXPORT___","module","id","content","__esModule","default","locals","exports","add"],"sourceRoot":""}