openc3-tool-cmdtlmserver 5.0.10 → 5.0.11

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2 @@
1
+ (self["webpackChunk_openc3_tool_cmdtlmserver"]=self["webpackChunk_openc3_tool_cmdtlmserver"]||[]).push([[496],{4496:function(e,t,n){"use strict";function a(){var e="/openc3/plugins/packages/openc3-tool-cmdtlmserver/src/tools/CmdTlmServer/CmdTlmServer.vue",t="89cfa199a41895edf361e29411d5c212d2acbe57",n=new Function("return this")(),s="__coverage__",l={path:"/openc3/plugins/packages/openc3-tool-cmdtlmserver/src/tools/CmdTlmServer/CmdTlmServer.vue",statementMap:{0:{start:{line:1,column:13},end:{line:2,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:1,column:1036}},4:{start:{line:1,column:238},end:{line:1,column:252}},5:{start:{line:1,column:314},end:{line:1,column:400}},6:{start:{line:1,column:572},end:{line:1,column:593}},7:{start:{line:1,column:923},end:{line:1,column:951}},8:{start:{line:3,column:22},end:{line:3,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:2,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:222},end:{line:1,column:223}},loc:{start:{line:1,column:237},end:{line:1,column:253}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:294},end:{line:1,column:295}},loc:{start:{line:1,column:313},end:{line:1,column:401}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:556},end:{line:1,column:557}},loc:{start:{line:1,column:571},end:{line:1,column:594}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:906},end:{line:1,column:907}},loc:{start:{line:1,column:922},end:{line:1,column:952}},line:1}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0},f:{0:0,1:0,2:0,3:0,4:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"89cfa199a41895edf361e29411d5c212d2acbe57"},r=n[s]||(n[s]={});r[e]&&r[e].hash===t||(r[e]=l);var o=r[e];return a=function(){return o},o}n.r(t),n.d(t,{default:function(){return O}}),a(),a().s[0]++;var s=function(){a().f[0]++;var e=(a().s[1]++,this),t=(a().s[2]++,e._self._c);return a().s[3]++,t("div",[t("top-bar",{attrs:{menus:e.menus,title:e.title}}),t("v-card",[t("v-tabs",{attrs:{"fixed-tabs":""},model:{value:e.curTab,callback:function(t){a().f[1]++,a().s[4]++,e.curTab=t},expression:"curTab"}},e._l(e.tabs,(function(n,s){return a().f[2]++,a().s[5]++,t("v-tab",{key:s,attrs:{to:n.url}},[e._v(" "+e._s(n.name)+" ")])})),1),t("router-view",{attrs:{"refresh-interval":e.refreshInterval}}),t("v-dialog",{attrs:{"max-width":"300"},model:{value:e.optionsDialog,callback:function(t){a().f[3]++,a().s[6]++,e.optionsDialog=t},expression:"optionsDialog"}},[t("v-card",[t("v-system-bar",[t("v-spacer"),t("span",[e._v("Options")]),t("v-spacer")],1),t("div",{staticClass:"pa-3"},[t("v-text-field",{attrs:{min:"0",max:"10000",step:"100",type:"number",label:"Refresh Interval (ms)",value:e.refreshInterval},on:{change:function(t){a().f[4]++,a().s[7]++,e.refreshInterval=t}}})],1)],1)],1)],1),t("div",{staticStyle:{height:"20px"}}),t("log-messages")],1)},l=(a().s[8]++,[]),r=(n(7950),n(4908),function(){var e=this,t=e._self._c;return t("v-card",[t("v-card-title",[e._v(" Log Messages "),t("v-spacer"),t("v-select",{staticClass:"mr-2",attrs:{label:"Filter by Severity","hide-details":"",items:e.logLevels,"data-test":"log-messages-level"},model:{value:e.logLevel,callback:function(t){e.logLevel=t},expression:"logLevel"}}),t("v-spacer"),t("v-text-field",{attrs:{"append-icon":"mdi-magnify",label:"Search","single-line":"","hide-details":"","data-test":"search-log-messages"},model:{value:e.search,callback:function(t){e.search=t},expression:"search"}})],1),t("v-data-table",{attrs:{headers:e.headers,items:e.data,search:e.search,"calculate-widths":"","disable-pagination":"","hide-default-footer":"","multi-sort":"",dense:"",height:"45vh","data-test":"log-messages"},scopedSlots:e._u([{key:"item.timestamp",fn:function(n){var a=n.item;return[t("time",{attrs:{title:a.timestamp,datetime:a.timestamp}},[e._v(" "+e._s(a.timestamp)+" ")])]}},{key:"item.severity",fn:function(n){var a=n.item;return[t("span",{class:e.getColorClass(a.severity)},[e._v(e._s(a.severity))])]}}])})],1)}),o=[],i=(n(1245),n(9805),n(5342),n(8188),n(3450),n(8178),n(9413)),c=n(5488),u=n(5285),m=n(4948),d=n(4567),v=n(6812),A=n(7146);A.ju.staleThreshold=60;var p=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/openc3-api/cable";(0,d.Z)(this,e),this._cable=A.zD(t)}return(0,v.Z)(e,[{key:"disconnect",value:function(){this._cable.disconnect()}},{key:"createSubscription",value:function(e,t){var n=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then((function(){return n._cable.subscriptions.create((0,m.Z)({channel:e,scope:t,token:localStorage.openc3Token},s),a)}))}}]),e}(),f={components:{AstroBadge:u.Z},props:{history_count:{type:Number,default:200}},data:function(){return{data:[],logLevels:["DEBUG","INFO","WARN","ERROR"],logLevel:"INFO",search:"",headers:[{text:"Time",value:"timestamp",width:200},{text:"Severity",value:"severity"},{text:"Source",value:"microservice_name"},{text:"Message",value:"log"}],cable:new p,subscription:null}},watch:{logLevel:function(e,t){this.createSubscription()}},created:function(){this.createSubscription()},destroyed:function(){this.subscription&&this.subscription.unsubscribe(),this.cable.disconnect()},methods:{createSubscription:function(){var e=this;this.subscription&&(this.subscription.unsubscribe(),this.data=[]),this.cable.createSubscription("MessagesChannel",window.openc3Scope,{received:function(t){var n=JSON.parse(t);n.length>e.history_count&&n.splice(0,n.length-e.history_count),n=n.filter((function(t){switch(e.logLevel){case"DEBUG":return!0;case"INFO":if("DEBUG"!==t.severity)return!0;break;case"WARN":if("DEBUG"!==t.severity&&"INFO"!==t.severity)return!0;break;case"ERROR":if("DEBUG"!==t.severity&&"INFO"!==t.severity&&"WARN"!==t.severity)return!0;break}return!1})),n.map((function(t){t.timestamp=e.formatDate(t["@timestamp"])})),e.data=n.reverse().concat(e.data),e.data.length>e.history_count&&(e.data.length=e.history_count)}},{history_count:this.history_count}).then((function(t){e.subscription=t}))},formatDate:function(e){return(0,i.Z)((0,c.Z)(e),"yyyy-MM-dd HH:mm:ss.SSS")},getColorClass:function(e){return"INFO"===e?"openc3-green":"WARN"===e?"openc3-yellow":"ERROR"===e?"openc3-red":this.$vuetify.theme.dark?"openc3-white":"openc3-black"},getAstroStatus:function(e){return"INFO"===e?"normal":"WARN"===e?"caution":"ERROR"===e?"critical":void 0}}},h=f,b=n(3483),g=(0,b.Z)(h,r,o,!1,null,null,null),C=g.exports,_=function(){var e=this,t=e._self._c;return t("mounting-portal",{attrs:{"mount-to":"#openc3-menu",append:""}},[t("div",{staticClass:"v-toolbar__content"},[e._l(e.menus,(function(n,a){return t("v-menu",{key:a,attrs:{"offset-y":""},scopedSlots:e._u([{key:"activator",fn:function(a){var s=a.on,l=a.attrs;return[t("v-btn",e._g(e._b({staticClass:"mx-1",attrs:{outlined:"","data-test":e.formatDT("".concat(e.title," ").concat(n.label))}},"v-btn",l,!1),s),[t("span",{domProps:{textContent:e._s(n.label)}}),t("v-icon",{attrs:{right:""}},[e._v(" mdi-menu-down ")])],1)]}}],null,!0)},[t("v-list",[t("v-radio-group",{staticClass:"ma-0 pa-0",attrs:{value:n.radioGroup,"hide-details":"",dense:""}},[e._l(n.items,(function(a,s){return[a.divider?t("v-divider"):t("v-list-item",{key:s,attrs:{disabled:a.disabled,"data-test":e.formatDT("".concat(e.title," ").concat(n.label," ").concat(a.label))},on:{click:a.command}},[a.radio?t("v-list-item-action",[t("v-radio",{attrs:{color:"secondary",label:a.label,value:a.label}})],1):e._e(),a.checkbox?t("v-list-item-action",[t("v-checkbox",{attrs:{color:"secondary",label:a.label,value:a.label},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1):e._e(),a.icon?t("v-list-item-icon",[t("v-icon",{attrs:{disabled:a.disabled}},[e._v(e._s(a.icon))])],1):e._e(),a.radio||a.checkbox?e._e():t("v-list-item-title",{style:"cursor: pointer;"+(a.disabled?"opacity: 0.2":"")},[e._v(e._s(a.label))])],1)]}))],2)],1)],1)})),t("v-spacer"),t("v-toolbar-title",[e._v(e._s(e.title))]),t("v-spacer")],2)])},y=[],k=(n(5940),n(1639),{props:{menus:{type:Array,default:function(){return[]}},title:{type:String,default:""}},methods:{formatDT:function(e){return e.replaceAll(" ","-").toLowerCase()}},mounted:function(){document.title=this.title}}),S=k,T=(n(9824),(0,b.Z)(S,_,y,!1,null,"5fb8d7fb",null)),x=T.exports;function R(){var e="/openc3/plugins/packages/openc3-tool-cmdtlmserver/src/tools/CmdTlmServer/CmdTlmServer.vue",t="6b3a1c43d8e4fccab5b4e4efc71119b316584bc6",n=new Function("return this")(),a="__coverage__",s={path:"/openc3/plugins/packages/openc3-tool-cmdtlmserver/src/tools/CmdTlmServer/CmdTlmServer.vue",statementMap:{0:{start:{line:10,column:4},end:{line:55,column:5}},1:{start:{line:49,column:16},end:{line:49,column:41}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:9,column:2},end:{line:9,column:3}},loc:{start:{line:9,column:9},end:{line:56,column:3}},line:9},1:{name:"(anonymous_1)",decl:{start:{line:48,column:23},end:{line:48,column:24}},loc:{start:{line:48,column:29},end:{line:50,column:15}},line:48}},branchMap:{},s:{0:0,1:0},f:{0:0,1:0},b:{},inputSourceMap:{version:3,sources:["CmdTlmServer.vue"],names:[],mappings:";AAwDA;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;AACA;AACA;AACA;AACA;AACA",file:"CmdTlmServer.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--\x3e\n\n<template>\n <div>\n <top-bar :menus="menus" :title="title" />\n <v-card>\n <v-tabs v-model="curTab" fixed-tabs>\n <v-tab v-for="(tab, index) in tabs" :key="index" :to="tab.url">\n {{ tab.name }}\n </v-tab>\n </v-tabs>\n <router-view :refresh-interval="refreshInterval" />\n <v-dialog v-model="optionsDialog" max-width="300">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span>Options</span>\n <v-spacer />\n </v-system-bar>\n <div class="pa-3">\n <v-text-field\n min="0"\n max="10000"\n step="100"\n type="number"\n label="Refresh Interval (ms)"\n :value="refreshInterval"\n @change="refreshInterval = $event"\n />\n </div>\n </v-card>\n </v-dialog>\n </v-card>\n <div style="height: 20px" />\n <log-messages />\n </div>\n</template>\n\n<script>\nimport LogMessages from \'@openc3/tool-common/src/components/LogMessages\'\nimport TopBar from \'@openc3/tool-common/src/components/TopBar\'\nexport default {\n components: {\n LogMessages,\n TopBar,\n },\n data() {\n return {\n title: \'CmdTlmServer\',\n curTab: null,\n tabs: [\n {\n name: \'Interfaces\',\n url: \'/interfaces\',\n },\n {\n name: \'Targets\',\n url: \'/targets\',\n },\n {\n name: \'Cmd Packets\',\n url: \'/cmd-packets\',\n },\n {\n name: \'Tlm Packets\',\n url: \'/tlm-packets\',\n },\n {\n name: \'Routers\',\n url: \'/routers\',\n },\n {\n name: \'Status\',\n url: \'/status\',\n },\n ],\n updater: null,\n refreshInterval: 1000,\n optionsDialog: false,\n menus: [\n {\n label: \'File\',\n items: [\n {\n label: \'Options\',\n command: () => {\n this.optionsDialog = true\n },\n },\n ],\n },\n ],\n }\n },\n}\n<\/script>\n\n<style scoped>\n.v-list :deep(.v-label) {\n margin-left: 5px;\n}\n.v-list-item__icon {\n /* For some reason the default margin-right is huge */\n margin-right: 15px !important;\n}\n.v-list-item__title {\n color: white;\n}\n</style>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"6b3a1c43d8e4fccab5b4e4efc71119b316584bc6"},l=n[a]||(n[a]={});l[e]&&l[e].hash===t||(l[e]=s);var r=l[e];return R=function(){return r},r}R();var w={components:{LogMessages:C,TopBar:x},data:function(){var e=this;return R().f[0]++,R().s[0]++,{title:"CmdTlmServer",curTab:null,tabs:[{name:"Interfaces",url:"/interfaces"},{name:"Targets",url:"/targets"},{name:"Cmd Packets",url:"/cmd-packets"},{name:"Tlm Packets",url:"/tlm-packets"},{name:"Routers",url:"/routers"},{name:"Status",url:"/status"}],updater:null,refreshInterval:1e3,optionsDialog:!1,menus:[{label:"File",items:[{label:"Options",command:function(){R().f[1]++,R().s[1]++,e.optionsDialog=!0}}]}]}}},I=w,M=(n(501),(0,b.Z)(I,s,l,!1,null,"5b580c08",null)),O=M.exports},3961:function(e,t,n){"use strict";n.r(t);var a=n(9601),s=n.n(a),l=n(2609),r=n.n(l),o=r()(s());o.push([e.id,".v-list[data-v-5b580c08] .v-label{margin-left:5px}.v-list-item__icon[data-v-5b580c08]{margin-right:15px!important}.v-list-item__title[data-v-5b580c08]{color:#fff}",""]),t["default"]=o},363:function(e,t,n){"use strict";n.r(t);var a=n(9601),s=n.n(a),l=n(2609),r=n.n(l),o=r()(s());o.push([e.id,".v-list[data-v-5fb8d7fb] .v-label{margin-left:5px}.v-list-item__icon[data-v-5fb8d7fb]{margin-right:15px!important}.v-list-item__title[data-v-5fb8d7fb]{color:#fff}",""]),t["default"]=o},501:function(e,t,n){var a=n(3961);a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[e.id,a,""]]),a.locals&&(e.exports=a.locals);var s=n(3514).Z;s("e21160c8",a,!0,{sourceMap:!1,shadowMode:!1})},9824:function(e,t,n){var a=n(363);a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[e.id,a,""]]),a.locals&&(e.exports=a.locals);var s=n(3514).Z;s("7bc1978b",a,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
+ //# sourceMappingURL=496.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js/496.js","mappings":"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","sources":["webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/CmdTlmServer.vue","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/LogMessages.vue","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/services/cable.js","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/LogMessages.vue?4666","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/LogMessages.vue?971e","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/TopBar.vue","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/TopBar.vue?d3cb","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/TopBar.vue?a437","webpack://@openc3/tool-cmdtlmserver/src/tools/CmdTlmServer/CmdTlmServer.vue","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/CmdTlmServer.vue?9684","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/CmdTlmServer.vue?2c2b","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/CmdTlmServer.vue?eb55","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/TopBar.vue?ce29","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/CmdTlmServer.vue?41f2","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/components/TopBar.vue?37f7"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('top-bar',{attrs:{\"menus\":_vm.menus,\"title\":_vm.title}}),_c('v-card',[_c('v-tabs',{attrs:{\"fixed-tabs\":\"\"},model:{value:(_vm.curTab),callback:function ($$v) {_vm.curTab=$$v},expression:\"curTab\"}},_vm._l((_vm.tabs),function(tab,index){return _c('v-tab',{key:index,attrs:{\"to\":tab.url}},[_vm._v(\" \"+_vm._s(tab.name)+\" \")])}),1),_c('router-view',{attrs:{\"refresh-interval\":_vm.refreshInterval}}),_c('v-dialog',{attrs:{\"max-width\":\"300\"},model:{value:(_vm.optionsDialog),callback:function ($$v) {_vm.optionsDialog=$$v},expression:\"optionsDialog\"}},[_c('v-card',[_c('v-system-bar',[_c('v-spacer'),_c('span',[_vm._v(\"Options\")]),_c('v-spacer')],1),_c('div',{staticClass:\"pa-3\"},[_c('v-text-field',{attrs:{\"min\":\"0\",\"max\":\"10000\",\"step\":\"100\",\"type\":\"number\",\"label\":\"Refresh Interval (ms)\",\"value\":_vm.refreshInterval},on:{\"change\":function($event){_vm.refreshInterval = $event}}})],1)],1)],1)],1),_c('div',{staticStyle:{\"height\":\"20px\"}}),_c('log-messages')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-card-title',[_vm._v(\" Log Messages \"),_c('v-spacer'),_c('v-select',{staticClass:\"mr-2\",attrs:{\"label\":\"Filter by Severity\",\"hide-details\":\"\",\"items\":_vm.logLevels,\"data-test\":\"log-messages-level\"},model:{value:(_vm.logLevel),callback:function ($$v) {_vm.logLevel=$$v},expression:\"logLevel\"}}),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\",\"data-test\":\"search-log-messages\"},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,\"calculate-widths\":\"\",\"disable-pagination\":\"\",\"hide-default-footer\":\"\",\"multi-sort\":\"\",\"dense\":\"\",\"height\":\"45vh\",\"data-test\":\"log-messages\"},scopedSlots:_vm._u([{key:\"item.timestamp\",fn:function({ item }){return [_c('time',{attrs:{\"title\":item.timestamp,\"datetime\":item.timestamp}},[_vm._v(\" \"+_vm._s(item.timestamp)+\" \")])]}},{key:\"item.severity\",fn:function({ item }){return [_c('span',{class:_vm.getColorClass(item.severity)},[_vm._v(_vm._s(item.severity))])]}}])})],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\nimport * as ActionCable from '@rails/actioncable'\n//ActionCable.logger.enabled = true\nActionCable.ConnectionMonitor.staleThreshold = 60\n\nexport default class Cable {\n constructor(url = '/openc3-api/cable') {\n this._cable = ActionCable.createConsumer(url)\n }\n disconnect() {\n this._cable.disconnect()\n }\n createSubscription(channel, scope, callbacks = {}, additionalOptions = {}) {\n return OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then(() => {\n return this._cable.subscriptions.create(\n {\n channel,\n scope,\n token: localStorage.openc3Token,\n ...additionalOptions,\n },\n callbacks\n )\n })\n }\n}\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LogMessages.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LogMessages.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LogMessages.vue?vue&type=template&id=533943be&\"\nimport script from \"./LogMessages.vue?vue&type=script&lang=js&\"\nexport * from \"./LogMessages.vue?vue&type=script&lang=js&\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('mounting-portal',{attrs:{\"mount-to\":\"#openc3-menu\",\"append\":\"\"}},[_c('div',{staticClass:\"v-toolbar__content\"},[_vm._l((_vm.menus),function(menu,i){return _c('v-menu',{key:i,attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-1\",attrs:{\"outlined\":\"\",\"data-test\":_vm.formatDT(`${_vm.title} ${menu.label}`)}},'v-btn',attrs,false),on),[_c('span',{domProps:{\"textContent\":_vm._s(menu.label)}}),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\" mdi-menu-down \")])],1)]}}],null,true)},[_c('v-list',[_c('v-radio-group',{staticClass:\"ma-0 pa-0\",attrs:{\"value\":menu.radioGroup,\"hide-details\":\"\",\"dense\":\"\"}},[_vm._l((menu.items),function(option,j){return [(option.divider)?_c('v-divider'):_c('v-list-item',{key:j,attrs:{\"disabled\":option.disabled,\"data-test\":_vm.formatDT(`${_vm.title} ${menu.label} ${option.label}`)},on:{\"click\":option.command}},[(option.radio)?_c('v-list-item-action',[_c('v-radio',{attrs:{\"color\":\"secondary\",\"label\":option.label,\"value\":option.label}})],1):_vm._e(),(option.checkbox)?_c('v-list-item-action',[_c('v-checkbox',{attrs:{\"color\":\"secondary\",\"label\":option.label,\"value\":option.label},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1):_vm._e(),(option.icon)?_c('v-list-item-icon',[_c('v-icon',{attrs:{\"disabled\":option.disabled}},[_vm._v(_vm._s(option.icon))])],1):_vm._e(),(!option.radio && !option.checkbox)?_c('v-list-item-title',{style:('cursor: pointer;' + (option.disabled ? 'opacity: 0.2' : ''))},[_vm._v(_vm._s(option.label))]):_vm._e()],1)]})],2)],1)],1)}),_c('v-spacer'),_c('v-toolbar-title',[_vm._v(_vm._s(_vm.title))]),_c('v-spacer')],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TopBar.vue?vue&type=template&id=5fb8d7fb&scoped=true&\"\nimport script from \"./TopBar.vue?vue&type=script&lang=js&\"\nexport * from \"./TopBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TopBar.vue?vue&type=style&index=0&id=5fb8d7fb&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 \"5fb8d7fb\",\n null\n \n)\n\nexport default component.exports","<!--\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\n<template>\n <div>\n <top-bar :menus=\"menus\" :title=\"title\" />\n <v-card>\n <v-tabs v-model=\"curTab\" fixed-tabs>\n <v-tab v-for=\"(tab, index) in tabs\" :key=\"index\" :to=\"tab.url\">\n {{ tab.name }}\n </v-tab>\n </v-tabs>\n <router-view :refresh-interval=\"refreshInterval\" />\n <v-dialog v-model=\"optionsDialog\" max-width=\"300\">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span>Options</span>\n <v-spacer />\n </v-system-bar>\n <div class=\"pa-3\">\n <v-text-field\n min=\"0\"\n max=\"10000\"\n step=\"100\"\n type=\"number\"\n label=\"Refresh Interval (ms)\"\n :value=\"refreshInterval\"\n @change=\"refreshInterval = $event\"\n />\n </div>\n </v-card>\n </v-dialog>\n </v-card>\n <div style=\"height: 20px\" />\n <log-messages />\n </div>\n</template>\n\n<script>\nimport LogMessages from '@openc3/tool-common/src/components/LogMessages'\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nexport default {\n components: {\n LogMessages,\n TopBar,\n },\n data() {\n return {\n title: 'CmdTlmServer',\n curTab: null,\n tabs: [\n {\n name: 'Interfaces',\n url: '/interfaces',\n },\n {\n name: 'Targets',\n url: '/targets',\n },\n {\n name: 'Cmd Packets',\n url: '/cmd-packets',\n },\n {\n name: 'Tlm Packets',\n url: '/tlm-packets',\n },\n {\n name: 'Routers',\n url: '/routers',\n },\n {\n name: 'Status',\n url: '/status',\n },\n ],\n updater: null,\n refreshInterval: 1000,\n optionsDialog: false,\n menus: [\n {\n label: 'File',\n items: [\n {\n label: 'Options',\n command: () => {\n this.optionsDialog = true\n },\n },\n ],\n },\n ],\n }\n },\n}\n</script>\n\n<style scoped>\n.v-list :deep(.v-label) {\n margin-left: 5px;\n}\n.v-list-item__icon {\n /* For some reason the default margin-right is huge */\n margin-right: 15px !important;\n}\n.v-list-item__title {\n color: white;\n}\n</style>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CmdTlmServer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CmdTlmServer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CmdTlmServer.vue?vue&type=template&id=5b580c08&scoped=true&\"\nimport script from \"./CmdTlmServer.vue?vue&type=script&lang=js&\"\nexport * from \"./CmdTlmServer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CmdTlmServer.vue?vue&type=style&index=0&id=5b580c08&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 \"5b580c08\",\n null\n \n)\n\nexport default component.exports","// 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, \".v-list[data-v-5b580c08] .v-label{margin-left:5px}.v-list-item__icon[data-v-5b580c08]{margin-right:15px!important}.v-list-item__title[data-v-5b580c08]{color:#fff}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, \".v-list[data-v-5fb8d7fb] .v-label{margin-left:5px}.v-list-item__icon[data-v-5fb8d7fb]{margin-right:15px!important}.v-list-item__title[data-v-5fb8d7fb]{color:#fff}\", \"\"]);\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!./CmdTlmServer.vue?vue&type=style&index=0&id=5b580c08&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(\"e21160c8\", content, true, {\"sourceMap\":false,\"shadowMode\":false});","// 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!./TopBar.vue?vue&type=style&index=0&id=5fb8d7fb&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(\"7bc1978b\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["render","_vm","this","_c","_self","attrs","menus","title","model","value","curTab","callback","$$v","expression","_l","tabs","tab","index","key","url","_v","_s","name","refreshInterval","optionsDialog","staticClass","on","$event","staticStyle","staticRenderFns","logLevels","logLevel","search","headers","data","scopedSlots","_u","fn","item","timestamp","class","getColorClass","severity","ActionCable","Cable","_cable","disconnect","channel","scope","callbacks","additionalOptions","OpenC3Auth","updateToken","defaultMinValidity","then","subscriptions","create","token","localStorage","openc3Token","components","AstroBadge","props","history_count","type","default","text","width","cable","subscription","watch","created","destroyed","methods","createSubscription","window","received","messages","message","formatDate","getAstroStatus","component","menu","i","_g","_b","formatDT","label","domProps","radioGroup","items","option","j","divider","disabled","command","radio","_e","checkbox","checked","icon","style","mounted","document","LogMessages","TopBar","updater","___CSS_LOADER_EXPORT___","push","module","id","content","__esModule","locals","exports","add"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- "use strict";(self["webpackChunk_openc3_tool_cmdtlmserver"]=self["webpackChunk_openc3_tool_cmdtlmserver"]||[]).push([[575],{575:function(e,t,n){n.d(t,{k:function(){return v}});var r=n(6632),c=n(21),a=n(4948),s=n(6706),i=n(4567),u=n(6812),o=n(6274),_=(n(1372),n(1245),n(7950),n(9529),n(8188),n(3675),n(4898),n(5825),n(7170),n(8857),n(8329),n(6279),n(427),n(171),n(7093),n(1159),n(2516),n(4349),n(5273),n(6729),n(1801),n(574),n(5787),n(9271),n(3160),n(5688),n(3157),n(3333),n(315),n(556),n(9224),n(3450),n(7233),n(8673),n(5734),n(8233),n(1235),n(9644)),l=n.n(_),d=n(4091),h=new d["default"],g=l().create({baseURL:location.origin,timeout:6e4,params:{}});g.interceptors.response.use((function(e){return e}),(function(e){if(e.response){var t,n,r,c,a,s,i,u,o,_;if(401===e.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0),e.response.headers["ignore-errors"]&&e.response.headers["ignore-errors"].includes(e.response.status.toString()))return Promise.reject(e);var l="HTTP ".concat(e.response.status," - ");if(null!==(t=e.response)&&void 0!==t&&t.statusText&&(l+="".concat(e.response.statusText," ")),null!==(n=e.response)&&void 0!==n&&null!==(r=n.config)&&void 0!==r&&r.data&&(l+="".concat(e.response.config.data," ")),null!==(c=e.response)&&void 0!==c&&null!==(a=c.data)&&void 0!==a&&a.message)l+="".concat(e.response.data.message);else if(null!==(s=e.response)&&void 0!==s&&null!==(i=s.data)&&void 0!==i&&i.exception)l+="".concat(e.response.data.exception);else if(null!==(u=e.response)&&void 0!==u&&null!==(o=u.data)&&void 0!==o&&null!==(_=o.error)&&void 0!==_&&_.message)e.response.data.error.class&&(l+="".concat(e.response.data.error.class," ")),l+="".concat(e.response.data.error.message);else{var d;l+="".concat(null===(d=e.response)||void 0===d?void 0:d.data)}throw h.$notify.serious({title:"Network error",body:l}),e}throw e}));var f=g,v=function(){function e(){(0,i.Z)(this,e),(0,o.Z)(this,"id",1)}return(0,u.Z)(e,[{key:"exec",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t,n){var r,s,i,u,o=arguments;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:return r=o.length>2&&void 0!==o[2]?o[2]:{},s=o.length>3&&void 0!==o[3]?o[3]:{},e.prev=2,e.next=5,OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);case 5:e.next=10;break;case 7:e.prev=7,e.t0=e["catch"](2),OpenC3Auth.login();case 10:return this.id=this.id+1,e.prev=11,r["scope"]=window.openc3Scope,e.next=15,f.post("/openc3-api/api",{jsonrpc:"2.0",method:t,params:n,id:this.id,keyword_params:r},{headers:(0,a.Z)({Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc"},s)});case 15:return i=e.sent,e.abrupt("return",i.data.result);case 19:throw e.prev=19,e.t1=e["catch"](11),u=new Error,e.t1.response?(u.name=e.t1.response.data.error.data.class,u.message=e.t1.response.data.error.data.message):e.t1.request?(u.name="Request error",u.message="Request error, no response received"):u.name="Unknown error",u;case 24:case"end":return e.stop()}}),e,this,[[2,7],[11,19]])})));function t(t,n){return e.apply(this,arguments)}return t}()},{key:"decode_openc3_type",value:function(e){if(null!==e&&"object"===(0,r.Z)(e)&&"Float"==e.json_class&&e.raw){if("NaN"==e.raw)return NaN;if("Infinity"==e.raw)return 1/0;if("-Infinity"==e.raw)return-1/0}return null}},{key:"encode_openc3_type",value:function(e){return Number.isNaN(e)?{json_class:"Float",raw:"NaN"}:e==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:e==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}},{key:"get_all_interface_info",value:function(){return this.exec("get_all_interface_info",[])}},{key:"connect_interface",value:function(e){return this.exec("connect_interface",[e])}},{key:"disconnect_interface",value:function(e){return this.exec("disconnect_interface",[e])}},{key:"get_all_router_info",value:function(){return this.exec("get_all_router_info",[])}},{key:"connect_router",value:function(e){return this.exec("connect_router",[e])}},{key:"disconnect_router",value:function(e){return this.exec("disconnect_router",[e])}},{key:"get_all_target_info",value:function(){return this.exec("get_all_target_info",[])}},{key:"get_tlm_cnts",value:function(e){return this.exec("get_tlm_cnts",[e])}},{key:"get_item",value:function(e,t,n){return this.exec("get_item",[e,t,n])}},{key:"get_parameter",value:function(e,t,n){return this.exec("get_parameter",[e,t,n])}},{key:"get_all_packet_logger_info",value:function(){return this.exec("get_all_packet_logger_info",[])}},{key:"start_logging",value:function(){return this.exec("start_logging",[])}},{key:"stop_logging",value:function(){return this.exec("stop_logging",[])}},{key:"start_cmd_log",value:function(e){return this.exec("start_cmd_log",[e])}},{key:"start_tlm_log",value:function(e){return this.exec("start_tlm_log",[e])}},{key:"stop_cmd_log",value:function(e){return this.exec("stop_cmd_log",[e])}},{key:"stop_tlm_log",value:function(e){return this.exec("stop_tlm_log",[e])}},{key:"get_server_status",value:function(){return this.exec("get_server_status",[])}},{key:"get_limits_sets",value:function(){return this.exec("get_limits_sets",[])}},{key:"get_limits_set",value:function(){return this.exec("get_limits_set",[])}},{key:"set_limits_set",value:function(e){return this.exec("set_limits_set",[e])}},{key:"get_background_tasks",value:function(){return this.exec("get_background_tasks",[])}},{key:"start_background_task",value:function(e){return this.exec("start_background_task",[e])}},{key:"stop_background_task",value:function(e){return this.exec("stop_background_task",[e])}},{key:"get_oldest_logfile",value:function(){return this.exec("get_oldest_logfile",[])}},{key:"get_target",value:function(e){return this.exec("get_target",[e])}},{key:"get_target_list",value:function(){return this.exec("get_target_list",[])}},{key:"get_telemetry",value:function(e,t){return this.exec("get_telemetry",[e,t])}},{key:"get_all_telemetry",value:function(e){return this.exec("get_all_telemetry",[e])}},{key:"get_all_telemetry_names",value:function(e){return this.exec("get_all_telemetry_names",[e])}},{key:"get_tlm_packet",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t,n,r){var a,s,i,u;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,this.exec("get_tlm_packet",[t,n],{type:r});case 2:if(a=e.sent,null!=a)for(s=a.length,i=null,u=0;u<s;u++)i=this.decode_openc3_type(a[u][1]),null!==i&&(a[u][1]=i);return e.abrupt("return",a);case 5:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"get_packet_derived_items",value:function(e,t){return this.exec("get_packet_derived_items",[e,t])}},{key:"get_tlm_buffer",value:function(e,t){return this.exec("get_tlm_buffer",[e,t])}},{key:"get_tlm_values",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t){var n,r,a,s;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,this.exec("get_tlm_values",[t]);case 2:for(n=e.sent,r=n[0].length,a=null,s=0;s<r;s++)a=this.decode_openc3_type(n[0][s]),null!==a&&(n[0][s]=a);return e.abrupt("return",n);case 7:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"get_limits",value:function(e,t,n){return this.exec("get_limits",[e,t,n])}},{key:"tlm",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t,n,r){var a,s,i,u,o=arguments;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(a=o.length>3&&void 0!==o[3]?o[3]:"CONVERTED",s=null,void 0!==n){e.next=8;break}return e.next=5,this.exec("tlm",[t]);case 5:s=e.sent,e.next=24;break;case 8:if(void 0!==r){e.next=21;break}if(!["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(n)){e.next=15;break}return e.next=12,this.exec("tlm",[t],{type:n});case 12:s=e.sent,e.next=19;break;case 15:throw i=new Error,i.name="TypeError",i.message="Invalid data type ".concat(n,". Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS."),i;case 19:e.next=24;break;case 21:return e.next=23,this.exec("tlm",[t,n,r],{type:a});case 23:s=e.sent;case 24:return u=this.decode_openc3_type(s),null!==u&&(s=u),e.abrupt("return",s);case 27:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"get_all_commands",value:function(e){return this.exec("get_all_commands",[e])}},{key:"get_all_command_names",value:function(e){return this.exec("get_all_command_names",[e])}},{key:"get_command",value:function(e,t){return this.exec("get_command",[e,t])}},{key:"get_cmd_cnts",value:function(e){return this.exec("get_cmd_cnts",[e])}},{key:"get_cmd_value",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"CONVERTED";return this.exec("get_cmd_value",[e,t,n,r])}},{key:"get_cmd_buffer",value:function(e,t){return this.exec("get_cmd_buffer",[e,t])}},{key:"_cmd",value:function(e,t,n,r,c){var a=null;for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(a=this.encode_openc3_type(r[s]),null!==a&&(r[s]=a));return this.exec(e,[t,n,r],{},c)}},{key:"get_cmd_hazardous",value:function(e,t,n){return void 0===t?this.exec("get_cmd_hazardous",e):this._cmd("get_cmd_hazardous",e,t,n)}},{key:"cmd",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return void 0===t?this.exec("cmd",e,{},r):this._cmd("cmd",e,t,n,r)}},{key:"cmd_no_range_check",value:function(e,t,n){return void 0===t?this.exec("cmd_no_range_check",e):this._cmd("cmd_no_range_check",e,t,n)}},{key:"cmd_raw",value:function(e,t,n){return void 0===t?this.exec("cmd_raw",e):this._cmd("cmd_raw",e,t,n)}},{key:"cmd_raw_no_range_check",value:function(e,t,n){return void 0===t?this.exec("cmd_raw_no_range_check",e):this._cmd("cmd_raw_no_range_check",e,t,n)}},{key:"cmd_no_hazardous_check",value:function(e,t,n){return void 0===t?this.exec("cmd_no_hazardous_check",e):this._cmd("cmd_no_hazardous_check",e,t,n)}},{key:"cmd_no_checks",value:function(e,t,n){return void 0===t?this.exec("cmd_no_checks",e):this._cmd("cmd_no_checks",e,t,n)}},{key:"cmd_raw_no_hazardous_check",value:function(e,t,n){return void 0===t?this.exec("cmd_raw_no_hazardous_check",e):this._cmd("cmd_raw_no_hazardous_check",e,t,n)}},{key:"cmd_raw_no_checks",value:function(e,t,n){return void 0===t?this.exec("cmd_raw_no_checks",e):this._cmd("cmd_raw_no_checks",e,t,n)}},{key:"get_interface_names",value:function(){return this.exec("get_interface_names",[])}},{key:"send_raw",value:function(e,t){return this.exec("send_raw",[e,t])}},{key:"list_configs",value:function(e){return this.exec("list_configs",[e])}},{key:"load_config",value:function(e,t){return this.exec("load_config",[e,t])}},{key:"save_config",value:function(e,t,n){return this.exec("save_config",[e,t,n])}},{key:"delete_config",value:function(e,t){return this.exec("delete_config",[e,t])}},{key:"get_out_of_limits",value:function(){return this.exec("get_out_of_limits",[])}},{key:"get_overall_limits_state",value:function(e){return this.exec("get_overall_limits_state",[e])}},{key:"list_settings",value:function(){return this.exec("list_settings",[])}},{key:"get_all_settings",value:function(){return this.exec("get_all_settings",[])}},{key:"get_setting",value:function(e){return this.exec("get_setting",[e])}},{key:"get_settings",value:function(e){return this.exec("get_settings",e)}},{key:"save_setting",value:function(e,t){return this.exec("save_setting",[e,t])}},{key:"hashString",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t){var n,r,a;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(!window.isSecureContext){e.next=7;break}return n=(new TextEncoder).encode(t),e.next=4,crypto.subtle.digest("SHA-256",n);case 4:return r=e.sent,a=new Uint8Array(r),e.abrupt("return",Array.from(a).map((function(e){return e.toString(16).padStart(2,"0")})).join(""));case 7:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()}]),e}()}}]);
1
+ "use strict";(self["webpackChunk_openc3_tool_cmdtlmserver"]=self["webpackChunk_openc3_tool_cmdtlmserver"]||[]).push([[575],{575:function(e,t,n){n.d(t,{k:function(){return v}});var r=n(6632),c=n(21),a=n(4948),s=n(6706),i=n(4567),u=n(6812),o=n(6274),_=(n(1372),n(1245),n(7950),n(9529),n(8188),n(3675),n(4898),n(5825),n(7170),n(8857),n(8329),n(6279),n(427),n(171),n(7093),n(1159),n(2516),n(4349),n(5273),n(6729),n(1801),n(574),n(5787),n(9271),n(3160),n(5688),n(3157),n(3333),n(315),n(556),n(9224),n(3450),n(7233),n(8673),n(5734),n(8233),n(1235),n(9644)),l=n.n(_),d=n(4091),f=new d["default"],g=l().create({baseURL:location.origin,timeout:6e4,params:{}});g.interceptors.response.use((function(e){return e}),(function(e){if(e.response){var t,n,r,c,a,s,i,u,o,_;if(401===e.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0),e.response.headers["ignore-errors"]&&e.response.headers["ignore-errors"].includes(e.response.status.toString()))return Promise.reject(e);var l="HTTP ".concat(e.response.status," - ");if(null!==(t=e.response)&&void 0!==t&&t.statusText&&(l+="".concat(e.response.statusText," ")),null!==(n=e.response)&&void 0!==n&&null!==(r=n.config)&&void 0!==r&&r.data&&(l+="".concat(e.response.config.data," ")),null!==(c=e.response)&&void 0!==c&&null!==(a=c.data)&&void 0!==a&&a.message)l+="".concat(e.response.data.message);else if(null!==(s=e.response)&&void 0!==s&&null!==(i=s.data)&&void 0!==i&&i.exception)l+="".concat(e.response.data.exception);else if(null!==(u=e.response)&&void 0!==u&&null!==(o=u.data)&&void 0!==o&&null!==(_=o.error)&&void 0!==_&&_.message)e.response.data.error.class&&(l+="".concat(e.response.data.error.class," ")),l+="".concat(e.response.data.error.message);else{var d;l+="".concat(null===(d=e.response)||void 0===d?void 0:d.data)}throw f.$notify&&f.$notify.serious({title:"Network error",body:l}),e}throw e}));var h=g,v=function(){function e(){(0,i.Z)(this,e),(0,o.Z)(this,"id",1)}return(0,u.Z)(e,[{key:"exec",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t,n){var r,s,i,u,o=arguments;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:return r=o.length>2&&void 0!==o[2]?o[2]:{},s=o.length>3&&void 0!==o[3]?o[3]:{},e.prev=2,e.next=5,OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);case 5:e.next=10;break;case 7:e.prev=7,e.t0=e["catch"](2),OpenC3Auth.login();case 10:return this.id=this.id+1,e.prev=11,r["scope"]=window.openc3Scope,e.next=15,h.post("/openc3-api/api",{jsonrpc:"2.0",method:t,params:n,id:this.id,keyword_params:r},{headers:(0,a.Z)({Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc"},s)});case 15:return i=e.sent,e.abrupt("return",i.data.result);case 19:throw e.prev=19,e.t1=e["catch"](11),u=new Error,e.t1.response?(u.name=e.t1.response.data.error.data.class,u.message=e.t1.response.data.error.data.message):e.t1.request?(u.name="Request error",u.message="Request error, no response received"):u.name="Unknown error",u;case 24:case"end":return e.stop()}}),e,this,[[2,7],[11,19]])})));function t(t,n){return e.apply(this,arguments)}return t}()},{key:"decode_openc3_type",value:function(e){if(null!==e&&"object"===(0,r.Z)(e)&&"Float"==e.json_class&&e.raw){if("NaN"==e.raw)return NaN;if("Infinity"==e.raw)return 1/0;if("-Infinity"==e.raw)return-1/0}return null}},{key:"encode_openc3_type",value:function(e){return Number.isNaN(e)?{json_class:"Float",raw:"NaN"}:e==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:e==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}},{key:"get_all_interface_info",value:function(){return this.exec("get_all_interface_info",[])}},{key:"map_target_to_interface",value:function(e,t){return this.exec("map_target_to_interface",[e,t])}},{key:"connect_interface",value:function(e){return this.exec("connect_interface",[e])}},{key:"disconnect_interface",value:function(e){return this.exec("disconnect_interface",[e])}},{key:"get_all_router_info",value:function(){return this.exec("get_all_router_info",[])}},{key:"connect_router",value:function(e){return this.exec("connect_router",[e])}},{key:"disconnect_router",value:function(e){return this.exec("disconnect_router",[e])}},{key:"get_all_target_info",value:function(){return this.exec("get_all_target_info",[])}},{key:"get_tlm_cnts",value:function(e){return this.exec("get_tlm_cnts",[e])}},{key:"get_item",value:function(e,t,n){return this.exec("get_item",[e,t,n])}},{key:"get_parameter",value:function(e,t,n){return this.exec("get_parameter",[e,t,n])}},{key:"get_all_packet_logger_info",value:function(){return this.exec("get_all_packet_logger_info",[])}},{key:"start_logging",value:function(){return this.exec("start_logging",[])}},{key:"stop_logging",value:function(){return this.exec("stop_logging",[])}},{key:"start_cmd_log",value:function(e){return this.exec("start_cmd_log",[e])}},{key:"start_tlm_log",value:function(e){return this.exec("start_tlm_log",[e])}},{key:"stop_cmd_log",value:function(e){return this.exec("stop_cmd_log",[e])}},{key:"stop_tlm_log",value:function(e){return this.exec("stop_tlm_log",[e])}},{key:"get_server_status",value:function(){return this.exec("get_server_status",[])}},{key:"get_limits_sets",value:function(){return this.exec("get_limits_sets",[])}},{key:"get_limits_set",value:function(){return this.exec("get_limits_set",[])}},{key:"set_limits_set",value:function(e){return this.exec("set_limits_set",[e])}},{key:"get_background_tasks",value:function(){return this.exec("get_background_tasks",[])}},{key:"start_background_task",value:function(e){return this.exec("start_background_task",[e])}},{key:"stop_background_task",value:function(e){return this.exec("stop_background_task",[e])}},{key:"get_oldest_logfile",value:function(){return this.exec("get_oldest_logfile",[])}},{key:"get_target",value:function(e){return this.exec("get_target",[e])}},{key:"get_target_list",value:function(){return this.exec("get_target_list",[])}},{key:"get_telemetry",value:function(e,t){return this.exec("get_telemetry",[e,t])}},{key:"get_all_telemetry",value:function(e){return this.exec("get_all_telemetry",[e])}},{key:"get_all_telemetry_names",value:function(e){return this.exec("get_all_telemetry_names",[e])}},{key:"get_tlm_packet",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t,n,r){var a,s,i,u;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,this.exec("get_tlm_packet",[t,n],{type:r});case 2:if(a=e.sent,null!=a)for(s=a.length,i=null,u=0;u<s;u++)i=this.decode_openc3_type(a[u][1]),null!==i&&(a[u][1]=i);return e.abrupt("return",a);case 5:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"get_packet_derived_items",value:function(e,t){return this.exec("get_packet_derived_items",[e,t])}},{key:"get_tlm_buffer",value:function(e,t){return this.exec("get_tlm_buffer",[e,t])}},{key:"get_tlm_values",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t){var n,r,a,s;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,this.exec("get_tlm_values",[t]);case 2:for(n=e.sent,r=n[0].length,a=null,s=0;s<r;s++)a=this.decode_openc3_type(n[0][s]),null!==a&&(n[0][s]=a);return e.abrupt("return",n);case 7:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"get_limits",value:function(e,t,n){return this.exec("get_limits",[e,t,n])}},{key:"tlm",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t,n,r){var a,s,i,u,o=arguments;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(a=o.length>3&&void 0!==o[3]?o[3]:"CONVERTED",s=null,void 0!==n){e.next=8;break}return e.next=5,this.exec("tlm",[t]);case 5:s=e.sent,e.next=24;break;case 8:if(void 0!==r){e.next=21;break}if(!["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(n)){e.next=15;break}return e.next=12,this.exec("tlm",[t],{type:n});case 12:s=e.sent,e.next=19;break;case 15:throw i=new Error,i.name="TypeError",i.message="Invalid data type ".concat(n,". Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS."),i;case 19:e.next=24;break;case 21:return e.next=23,this.exec("tlm",[t,n,r],{type:a});case 23:s=e.sent;case 24:return u=this.decode_openc3_type(s),null!==u&&(s=u),e.abrupt("return",s);case 27:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"get_all_commands",value:function(e){return this.exec("get_all_commands",[e])}},{key:"get_all_command_names",value:function(e){return this.exec("get_all_command_names",[e])}},{key:"get_command",value:function(e,t){return this.exec("get_command",[e,t])}},{key:"get_cmd_cnts",value:function(e){return this.exec("get_cmd_cnts",[e])}},{key:"get_cmd_value",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"CONVERTED";return this.exec("get_cmd_value",[e,t,n,r])}},{key:"get_cmd_buffer",value:function(e,t){return this.exec("get_cmd_buffer",[e,t])}},{key:"_cmd",value:function(e,t,n,r,c){var a=null;for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(a=this.encode_openc3_type(r[s]),null!==a&&(r[s]=a));return this.exec(e,[t,n,r],{},c)}},{key:"get_cmd_hazardous",value:function(e,t,n){return void 0===t?this.exec("get_cmd_hazardous",e):this._cmd("get_cmd_hazardous",e,t,n)}},{key:"cmd",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return void 0===t?this.exec("cmd",e,{},r):this._cmd("cmd",e,t,n,r)}},{key:"cmd_no_range_check",value:function(e,t,n){return void 0===t?this.exec("cmd_no_range_check",e):this._cmd("cmd_no_range_check",e,t,n)}},{key:"cmd_raw",value:function(e,t,n){return void 0===t?this.exec("cmd_raw",e):this._cmd("cmd_raw",e,t,n)}},{key:"cmd_raw_no_range_check",value:function(e,t,n){return void 0===t?this.exec("cmd_raw_no_range_check",e):this._cmd("cmd_raw_no_range_check",e,t,n)}},{key:"cmd_no_hazardous_check",value:function(e,t,n){return void 0===t?this.exec("cmd_no_hazardous_check",e):this._cmd("cmd_no_hazardous_check",e,t,n)}},{key:"cmd_no_checks",value:function(e,t,n){return void 0===t?this.exec("cmd_no_checks",e):this._cmd("cmd_no_checks",e,t,n)}},{key:"cmd_raw_no_hazardous_check",value:function(e,t,n){return void 0===t?this.exec("cmd_raw_no_hazardous_check",e):this._cmd("cmd_raw_no_hazardous_check",e,t,n)}},{key:"cmd_raw_no_checks",value:function(e,t,n){return void 0===t?this.exec("cmd_raw_no_checks",e):this._cmd("cmd_raw_no_checks",e,t,n)}},{key:"get_interface_names",value:function(){return this.exec("get_interface_names",[])}},{key:"send_raw",value:function(e,t){return this.exec("send_raw",[e,t])}},{key:"list_configs",value:function(e){return this.exec("list_configs",[e])}},{key:"load_config",value:function(e,t){return this.exec("load_config",[e,t])}},{key:"save_config",value:function(e,t,n){return this.exec("save_config",[e,t,n])}},{key:"delete_config",value:function(e,t){return this.exec("delete_config",[e,t])}},{key:"get_out_of_limits",value:function(){return this.exec("get_out_of_limits",[])}},{key:"get_overall_limits_state",value:function(e){return this.exec("get_overall_limits_state",[e])}},{key:"list_settings",value:function(){return this.exec("list_settings",[])}},{key:"get_all_settings",value:function(){return this.exec("get_all_settings",[])}},{key:"get_setting",value:function(e){return this.exec("get_setting",[e])}},{key:"get_settings",value:function(e){return this.exec("get_settings",e)}},{key:"save_setting",value:function(e,t){return this.exec("save_setting",[e,t])}},{key:"hashString",value:function(){var e=(0,s.Z)((0,c.Z)().mark((function e(t){var n,r,a;return(0,c.Z)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(!window.isSecureContext){e.next=7;break}return n=(new TextEncoder).encode(t),e.next=4,crypto.subtle.digest("SHA-256",n);case 4:return r=e.sent,a=new Uint8Array(r),e.abrupt("return",Array.from(a).map((function(e){return e.toString(16).padStart(2,"0")})).join(""));case 7:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()}]),e}()}}]);
2
2
  //# sourceMappingURL=575.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"js/575.js","mappings":"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","sources":["webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/services/axios.js","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/services/openc3-api.js"],"sourcesContent":["/*\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\nimport axios from 'axios'\nimport Vue from 'vue'\n\nconst vueInstance = new Vue()\n\nconst axiosInstance = axios.create({\n baseURL: location.origin,\n timeout: 60000,\n params: {},\n})\n\naxiosInstance.interceptors.response.use(\n (response) => response,\n (error) => {\n if (error.response) {\n if (error.response.status === 401) {\n OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity, true)\n }\n // Individual tools can set 'Ignore-Errors' to an error code\n // they potentially expect, e.g. '500', in which case we ignore it\n // For example in CommandSender.vue:\n // obs = this.api.cmd(targetName, commandName, paramList, {\n // 'Ignore-Errors': '500',\n // })\n if (\n error.response.headers['ignore-errors'] &&\n error.response.headers['ignore-errors'].includes(\n error.response.status.toString()\n )\n ) {\n return Promise.reject(error)\n }\n let body = `HTTP ${error.response.status} - `\n if (error.response?.statusText) {\n body += `${error.response.statusText} `\n }\n if (error.response?.config?.data) {\n body += `${error.response.config.data} `\n }\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n throw error\n } else {\n throw error\n }\n }\n)\n\nexport default axiosInstance\n","/*\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\nimport axios from './axios.js'\n\nexport class OpenC3Api {\n id = 1\n\n constructor() {}\n\n // This is hacky Json-rpc for now. Should probably use a jsonrpc library.\n async exec(method, params, kwparams = {}, headerOptions = {}) {\n try {\n await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)\n } catch (error) {\n OpenC3Auth.login()\n }\n this.id = this.id + 1\n try {\n kwparams['scope'] = window.openc3Scope\n const response = await axios.post(\n '/openc3-api/api',\n {\n jsonrpc: '2.0',\n method: method,\n params: params,\n id: this.id,\n keyword_params: kwparams,\n },\n {\n headers: {\n Authorization: localStorage.openc3Token,\n 'Content-Type': 'application/json-rpc',\n ...headerOptions,\n },\n }\n )\n // var data = response.data\n // if (data.error) {\n // var err = new Error()\n // err.name = data.error.data.class\n // err.message = data.error.data.message\n // console.log(data.error.data.backtrace.join('\\n'))\n // throw err\n // }\n return response.data.result\n } catch (error) {\n var err = new Error()\n if (error.response) {\n // The request was made and the server responded with a\n // status code that falls out of the range of 2xx\n err.name = error.response.data.error.data.class\n err.message = error.response.data.error.data.message\n } else if (error.request) {\n // The request was made but no response was received, `error.request`\n // is an instance of XMLHttpRequest in the browser and an instance\n // of http.ClientRequest in Node.js\n err.name = 'Request error'\n err.message = 'Request error, no response received'\n } else {\n // Something happened in setting up the request and triggered an Error\n err.name = 'Unknown error'\n }\n // console.log(error)\n throw err\n }\n }\n\n decode_openc3_type(val) {\n if (val !== null && typeof val === 'object') {\n if (val.json_class == 'Float' && val.raw) {\n if (val.raw == 'NaN') {\n return NaN\n } else if (val.raw == 'Infinity') {\n return Infinity\n } else if (val.raw == '-Infinity') {\n return -Infinity\n }\n }\n }\n return null\n }\n\n encode_openc3_type(val) {\n if (Number.isNaN(val)) {\n return { json_class: 'Float', raw: 'NaN' }\n } else if (val == Number.POSITIVE_INFINITY) {\n return { json_class: 'Float', raw: 'Infinity' }\n } else if (val == Number.NEGATIVE_INFINITY) {\n return { json_class: 'Float', raw: '-Infinity' }\n }\n return null\n }\n\n // ***********************************************\n // The following APIs are used by the CmdTlmServer\n // ***********************************************\n get_all_interface_info() {\n return this.exec('get_all_interface_info', [])\n }\n\n connect_interface(interface_name) {\n return this.exec('connect_interface', [interface_name])\n }\n\n disconnect_interface(interface_name) {\n return this.exec('disconnect_interface', [interface_name])\n }\n\n get_all_router_info() {\n return this.exec('get_all_router_info', [])\n }\n\n connect_router(router_name) {\n return this.exec('connect_router', [router_name])\n }\n\n disconnect_router(router_name) {\n return this.exec('disconnect_router', [router_name])\n }\n\n get_all_target_info() {\n return this.exec('get_all_target_info', [])\n }\n\n get_tlm_cnts(target_commands) {\n return this.exec('get_tlm_cnts', [target_commands])\n }\n\n get_item(target, packet, item) {\n return this.exec('get_item', [target, packet, item])\n }\n\n get_parameter(target, packet, item) {\n return this.exec('get_parameter', [target, packet, item])\n }\n\n get_all_packet_logger_info() {\n return this.exec('get_all_packet_logger_info', [])\n }\n\n start_logging() {\n return this.exec('start_logging', [])\n }\n\n stop_logging() {\n return this.exec('stop_logging', [])\n }\n\n start_cmd_log(log_writer_name) {\n return this.exec('start_cmd_log', [log_writer_name])\n }\n\n start_tlm_log(log_writer_name) {\n return this.exec('start_tlm_log', [log_writer_name])\n }\n\n stop_cmd_log(log_writer_name) {\n return this.exec('stop_cmd_log', [log_writer_name])\n }\n\n stop_tlm_log(log_writer_name) {\n return this.exec('stop_tlm_log', [log_writer_name])\n }\n\n get_server_status() {\n return this.exec('get_server_status', [])\n }\n\n get_limits_sets() {\n return this.exec('get_limits_sets', [])\n }\n\n get_limits_set() {\n return this.exec('get_limits_set', [])\n }\n\n set_limits_set(limits_set) {\n return this.exec('set_limits_set', [limits_set])\n }\n\n get_background_tasks() {\n return this.exec('get_background_tasks', [])\n }\n\n start_background_task(name) {\n return this.exec('start_background_task', [name])\n }\n\n stop_background_task(name) {\n return this.exec('stop_background_task', [name])\n }\n\n // ***********************************************\n // End CmdTlmServer APIs\n // ***********************************************\n\n get_oldest_logfile() {\n return this.exec('get_oldest_logfile', [])\n }\n\n get_target(target_name) {\n return this.exec('get_target', [target_name])\n }\n\n get_target_list() {\n return this.exec('get_target_list', [])\n }\n\n get_telemetry(target_name, packet_name) {\n return this.exec('get_telemetry', [target_name, packet_name])\n }\n\n get_all_telemetry(target_name) {\n return this.exec('get_all_telemetry', [target_name])\n }\n\n get_all_telemetry_names(target_name) {\n return this.exec('get_all_telemetry_names', [target_name])\n }\n\n async get_tlm_packet(target_name, packet_name, value_type) {\n const data = await this.exec('get_tlm_packet', [target_name, packet_name], {\n type: value_type,\n })\n // Make sure data isn't null or undefined. Note this is the only valid use of == or !=\n if (data != null) {\n var len = data.length\n var converted = null\n for (var i = 0; i < len; i++) {\n converted = this.decode_openc3_type(data[i][1])\n if (converted !== null) {\n data[i][1] = converted\n }\n }\n }\n return data\n }\n\n get_packet_derived_items(target_name, packet_name) {\n return this.exec('get_packet_derived_items', [target_name, packet_name])\n }\n\n get_tlm_buffer(target_name, packet_name) {\n return this.exec('get_tlm_buffer', [target_name, packet_name])\n }\n\n async get_tlm_values(items) {\n const data = await this.exec('get_tlm_values', [items])\n var len = data[0].length\n var converted = null\n for (var i = 0; i < len; i++) {\n converted = this.decode_openc3_type(data[0][i])\n if (converted !== null) {\n data[0][i] = converted\n }\n }\n return data\n }\n\n get_limits(target_name, packet_name, item_name) {\n return this.exec('get_limits', [target_name, packet_name, item_name])\n }\n\n async tlm(target_name, packet_name, item_name, data_type = 'CONVERTED') {\n let data = null\n // Check for the single string syntax: tlm(\"TGT PKT ITEM\")\n if (packet_name === undefined) {\n data = await this.exec('tlm', [target_name])\n // Check for the single string syntax with type: tlm(\"TGT PKT ITEM\", \"RAW\")\n } else if (item_name === undefined) {\n if (\n ['RAW', 'CONVERTED', 'FORMATTED', 'WITH_UNITS'].includes(packet_name)\n ) {\n data = await this.exec('tlm', [target_name], { type: packet_name })\n } else {\n var err = new Error()\n err.name = 'TypeError'\n err.message = `Invalid data type ${packet_name}. Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS.`\n throw err\n }\n } else {\n data = await this.exec('tlm', [target_name, packet_name, item_name], {\n type: data_type,\n })\n }\n var converted = this.decode_openc3_type(data)\n if (converted !== null) {\n data = converted\n }\n return data\n }\n\n get_all_commands(target_name) {\n return this.exec('get_all_commands', [target_name])\n }\n\n get_all_command_names(target_name) {\n return this.exec('get_all_command_names', [target_name])\n }\n\n get_command(target_name, command_name) {\n return this.exec('get_command', [target_name, command_name])\n }\n\n get_cmd_cnts(target_commands) {\n return this.exec('get_cmd_cnts', [target_commands])\n }\n\n get_cmd_value(\n target_name,\n packet_name,\n parameter_name,\n value_type = 'CONVERTED'\n ) {\n return this.exec('get_cmd_value', [\n target_name,\n packet_name,\n parameter_name,\n value_type,\n ])\n }\n\n get_cmd_buffer(target_name, packet_name) {\n return this.exec('get_cmd_buffer', [target_name, packet_name])\n }\n\n // Implementation of functionality shared by cmd methods with param_lists.\n _cmd(method, target_name, command_name, param_list, headerOptions) {\n var converted = null\n for (var key in param_list) {\n if (Object.prototype.hasOwnProperty.call(param_list, key)) {\n converted = this.encode_openc3_type(param_list[key])\n if (converted !== null) {\n param_list[key] = converted\n }\n }\n }\n return this.exec(\n method,\n [target_name, command_name, param_list],\n {},\n headerOptions\n )\n }\n\n get_cmd_hazardous(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('get_cmd_hazardous', target_name)\n } else {\n return this._cmd(\n 'get_cmd_hazardous',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd(target_name, command_name, param_list, headerOptions = {}) {\n if (command_name === undefined) {\n return this.exec('cmd', target_name, {}, headerOptions)\n } else {\n return this._cmd(\n 'cmd',\n target_name,\n command_name,\n param_list,\n headerOptions\n )\n }\n }\n\n cmd_no_range_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_no_range_check', target_name)\n } else {\n return this._cmd(\n 'cmd_no_range_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_raw(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw', target_name)\n } else {\n return this._cmd('cmd_raw', target_name, command_name, param_list)\n }\n }\n\n cmd_raw_no_range_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw_no_range_check', target_name)\n } else {\n return this._cmd(\n 'cmd_raw_no_range_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_no_hazardous_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_no_hazardous_check', target_name)\n } else {\n return this._cmd(\n 'cmd_no_hazardous_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_no_checks(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_no_checks', target_name)\n } else {\n return this._cmd('cmd_no_checks', target_name, command_name, param_list)\n }\n }\n\n cmd_raw_no_hazardous_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw_no_hazardous_check', target_name)\n } else {\n return this._cmd(\n 'cmd_raw_no_hazardous_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_raw_no_checks(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw_no_checks', target_name)\n } else {\n return this._cmd(\n 'cmd_raw_no_checks',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n get_interface_names() {\n return this.exec('get_interface_names', [])\n }\n\n send_raw(interface_name, data) {\n return this.exec('send_raw', [interface_name, data])\n }\n\n list_configs(tool) {\n return this.exec('list_configs', [tool])\n }\n\n load_config(tool, name) {\n return this.exec('load_config', [tool, name])\n }\n\n save_config(tool, name, data) {\n return this.exec('save_config', [tool, name, data])\n }\n\n delete_config(tool, name) {\n return this.exec('delete_config', [tool, name])\n }\n\n get_out_of_limits() {\n return this.exec('get_out_of_limits', [])\n }\n\n get_overall_limits_state(ignored) {\n return this.exec('get_overall_limits_state', [ignored])\n }\n\n list_settings() {\n return this.exec('list_settings', [])\n }\n\n get_all_settings() {\n return this.exec('get_all_settings', [])\n }\n\n get_setting(name) {\n return this.exec('get_setting', [name])\n }\n\n get_settings(array) {\n return this.exec('get_settings', array)\n }\n\n save_setting(name, data) {\n return this.exec('save_setting', [name, data])\n }\n\n // TODO: Currently unused but seemed like a useful function\n async hashString(string) {\n if (window.isSecureContext) {\n // Encode the string as an arrayBuffer which the subtle crypto API uses\n const arrayBuffer = new TextEncoder().encode(string)\n // Use the subtle crypto API to perform a SHA256 Sum of the array buffer\n // The resulting hash is stored in an array buffer\n const hashAsArrayBuffer = await crypto.subtle.digest(\n 'SHA-256',\n arrayBuffer\n )\n // To create a string we will get the hexadecimal value of each byte of the array buffer\n // This gets us an array where each byte of the array buffer becomes one item in the array\n const uint8ViewOfHash = new Uint8Array(hashAsArrayBuffer)\n // We then convert it to a regular array so we can convert each item to hexadecimal strings\n // Where to characters of 0-9 or a-f represent a number between 0 and 16, containing 4 bits of information, so 2 of them is 8 bits (1 byte).\n return Array.from(uint8ViewOfHash)\n .map((b) => b.toString(16).padStart(2, '0'))\n .join('')\n }\n // else ?\n }\n}\n"],"names":["vueInstance","Vue","axiosInstance","axios","baseURL","location","origin","timeout","params","interceptors","response","use","error","status","OpenC3Auth","updateToken","defaultMinValidity","headers","includes","toString","Promise","reject","body","statusText","config","data","message","exception","class","$notify","serious","title","OpenC3Api","method","kwparams","headerOptions","login","this","id","window","openc3Scope","jsonrpc","keyword_params","Authorization","localStorage","openc3Token","result","err","Error","name","request","val","json_class","raw","NaN","Infinity","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","exec","interface_name","router_name","target_commands","target","packet","item","log_writer_name","limits_set","target_name","packet_name","value_type","type","len","length","converted","i","decode_openc3_type","items","item_name","data_type","undefined","command_name","parameter_name","param_list","key","Object","prototype","hasOwnProperty","call","encode_openc3_type","_cmd","tool","ignored","array","string","isSecureContext","arrayBuffer","TextEncoder","encode","crypto","subtle","digest","hashAsArrayBuffer","uint8ViewOfHash","Uint8Array","Array","from","map","b","padStart","join"],"sourceRoot":""}
1
+ {"version":3,"file":"js/575.js","mappings":"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","sources":["webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/services/axios.js","webpack://@openc3/tool-cmdtlmserver/../openc3-tool-common/src/services/openc3-api.js"],"sourcesContent":["/*\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\nimport axios from 'axios'\nimport Vue from 'vue'\n\nconst vueInstance = new Vue()\n\nconst axiosInstance = axios.create({\n baseURL: location.origin,\n timeout: 60000,\n params: {},\n})\n\naxiosInstance.interceptors.response.use(\n (response) => response,\n (error) => {\n if (error.response) {\n if (error.response.status === 401) {\n OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity, true)\n }\n // Individual tools can set 'Ignore-Errors' to an error code\n // they potentially expect, e.g. '500', in which case we ignore it\n // For example in CommandSender.vue:\n // obs = this.api.cmd(targetName, commandName, paramList, {\n // 'Ignore-Errors': '500',\n // })\n if (\n error.response.headers['ignore-errors'] &&\n error.response.headers['ignore-errors'].includes(\n error.response.status.toString()\n )\n ) {\n return Promise.reject(error)\n }\n let body = `HTTP ${error.response.status} - `\n if (error.response?.statusText) {\n body += `${error.response.statusText} `\n }\n if (error.response?.config?.data) {\n body += `${error.response.config.data} `\n }\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n if (vueInstance.$notify) {\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n }\n throw error\n } else {\n throw error\n }\n }\n)\n\nexport default axiosInstance\n","/*\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\nimport axios from './axios.js'\n\nexport class OpenC3Api {\n id = 1\n\n constructor() {}\n\n // This is hacky Json-rpc for now. Should probably use a jsonrpc library.\n async exec(method, params, kwparams = {}, headerOptions = {}) {\n try {\n await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)\n } catch (error) {\n OpenC3Auth.login()\n }\n this.id = this.id + 1\n try {\n kwparams['scope'] = window.openc3Scope\n const response = await axios.post(\n '/openc3-api/api',\n {\n jsonrpc: '2.0',\n method: method,\n params: params,\n id: this.id,\n keyword_params: kwparams,\n },\n {\n headers: {\n Authorization: localStorage.openc3Token,\n 'Content-Type': 'application/json-rpc',\n ...headerOptions,\n },\n }\n )\n // var data = response.data\n // if (data.error) {\n // var err = new Error()\n // err.name = data.error.data.class\n // err.message = data.error.data.message\n // console.log(data.error.data.backtrace.join('\\n'))\n // throw err\n // }\n return response.data.result\n } catch (error) {\n var err = new Error()\n if (error.response) {\n // The request was made and the server responded with a\n // status code that falls out of the range of 2xx\n err.name = error.response.data.error.data.class\n err.message = error.response.data.error.data.message\n } else if (error.request) {\n // The request was made but no response was received, `error.request`\n // is an instance of XMLHttpRequest in the browser and an instance\n // of http.ClientRequest in Node.js\n err.name = 'Request error'\n err.message = 'Request error, no response received'\n } else {\n // Something happened in setting up the request and triggered an Error\n err.name = 'Unknown error'\n }\n // console.log(error)\n throw err\n }\n }\n\n decode_openc3_type(val) {\n if (val !== null && typeof val === 'object') {\n if (val.json_class == 'Float' && val.raw) {\n if (val.raw == 'NaN') {\n return NaN\n } else if (val.raw == 'Infinity') {\n return Infinity\n } else if (val.raw == '-Infinity') {\n return -Infinity\n }\n }\n }\n return null\n }\n\n encode_openc3_type(val) {\n if (Number.isNaN(val)) {\n return { json_class: 'Float', raw: 'NaN' }\n } else if (val == Number.POSITIVE_INFINITY) {\n return { json_class: 'Float', raw: 'Infinity' }\n } else if (val == Number.NEGATIVE_INFINITY) {\n return { json_class: 'Float', raw: '-Infinity' }\n }\n return null\n }\n\n // ***********************************************\n // The following APIs are used by the CmdTlmServer\n // ***********************************************\n get_all_interface_info() {\n return this.exec('get_all_interface_info', [])\n }\n\n map_target_to_interface(target_name, interface_name) {\n return this.exec('map_target_to_interface', [target_name, interface_name])\n }\n\n connect_interface(interface_name) {\n return this.exec('connect_interface', [interface_name])\n }\n\n disconnect_interface(interface_name) {\n return this.exec('disconnect_interface', [interface_name])\n }\n\n get_all_router_info() {\n return this.exec('get_all_router_info', [])\n }\n\n connect_router(router_name) {\n return this.exec('connect_router', [router_name])\n }\n\n disconnect_router(router_name) {\n return this.exec('disconnect_router', [router_name])\n }\n\n get_all_target_info() {\n return this.exec('get_all_target_info', [])\n }\n\n get_tlm_cnts(target_commands) {\n return this.exec('get_tlm_cnts', [target_commands])\n }\n\n get_item(target, packet, item) {\n return this.exec('get_item', [target, packet, item])\n }\n\n get_parameter(target, packet, item) {\n return this.exec('get_parameter', [target, packet, item])\n }\n\n get_all_packet_logger_info() {\n return this.exec('get_all_packet_logger_info', [])\n }\n\n start_logging() {\n return this.exec('start_logging', [])\n }\n\n stop_logging() {\n return this.exec('stop_logging', [])\n }\n\n start_cmd_log(log_writer_name) {\n return this.exec('start_cmd_log', [log_writer_name])\n }\n\n start_tlm_log(log_writer_name) {\n return this.exec('start_tlm_log', [log_writer_name])\n }\n\n stop_cmd_log(log_writer_name) {\n return this.exec('stop_cmd_log', [log_writer_name])\n }\n\n stop_tlm_log(log_writer_name) {\n return this.exec('stop_tlm_log', [log_writer_name])\n }\n\n get_server_status() {\n return this.exec('get_server_status', [])\n }\n\n get_limits_sets() {\n return this.exec('get_limits_sets', [])\n }\n\n get_limits_set() {\n return this.exec('get_limits_set', [])\n }\n\n set_limits_set(limits_set) {\n return this.exec('set_limits_set', [limits_set])\n }\n\n get_background_tasks() {\n return this.exec('get_background_tasks', [])\n }\n\n start_background_task(name) {\n return this.exec('start_background_task', [name])\n }\n\n stop_background_task(name) {\n return this.exec('stop_background_task', [name])\n }\n\n // ***********************************************\n // End CmdTlmServer APIs\n // ***********************************************\n\n get_oldest_logfile() {\n return this.exec('get_oldest_logfile', [])\n }\n\n get_target(target_name) {\n return this.exec('get_target', [target_name])\n }\n\n get_target_list() {\n return this.exec('get_target_list', [])\n }\n\n get_telemetry(target_name, packet_name) {\n return this.exec('get_telemetry', [target_name, packet_name])\n }\n\n get_all_telemetry(target_name) {\n return this.exec('get_all_telemetry', [target_name])\n }\n\n get_all_telemetry_names(target_name) {\n return this.exec('get_all_telemetry_names', [target_name])\n }\n\n async get_tlm_packet(target_name, packet_name, value_type) {\n const data = await this.exec('get_tlm_packet', [target_name, packet_name], {\n type: value_type,\n })\n // Make sure data isn't null or undefined. Note this is the only valid use of == or !=\n if (data != null) {\n var len = data.length\n var converted = null\n for (var i = 0; i < len; i++) {\n converted = this.decode_openc3_type(data[i][1])\n if (converted !== null) {\n data[i][1] = converted\n }\n }\n }\n return data\n }\n\n get_packet_derived_items(target_name, packet_name) {\n return this.exec('get_packet_derived_items', [target_name, packet_name])\n }\n\n get_tlm_buffer(target_name, packet_name) {\n return this.exec('get_tlm_buffer', [target_name, packet_name])\n }\n\n async get_tlm_values(items) {\n const data = await this.exec('get_tlm_values', [items])\n var len = data[0].length\n var converted = null\n for (var i = 0; i < len; i++) {\n converted = this.decode_openc3_type(data[0][i])\n if (converted !== null) {\n data[0][i] = converted\n }\n }\n return data\n }\n\n get_limits(target_name, packet_name, item_name) {\n return this.exec('get_limits', [target_name, packet_name, item_name])\n }\n\n async tlm(target_name, packet_name, item_name, data_type = 'CONVERTED') {\n let data = null\n // Check for the single string syntax: tlm(\"TGT PKT ITEM\")\n if (packet_name === undefined) {\n data = await this.exec('tlm', [target_name])\n // Check for the single string syntax with type: tlm(\"TGT PKT ITEM\", \"RAW\")\n } else if (item_name === undefined) {\n if (\n ['RAW', 'CONVERTED', 'FORMATTED', 'WITH_UNITS'].includes(packet_name)\n ) {\n data = await this.exec('tlm', [target_name], { type: packet_name })\n } else {\n var err = new Error()\n err.name = 'TypeError'\n err.message = `Invalid data type ${packet_name}. Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS.`\n throw err\n }\n } else {\n data = await this.exec('tlm', [target_name, packet_name, item_name], {\n type: data_type,\n })\n }\n var converted = this.decode_openc3_type(data)\n if (converted !== null) {\n data = converted\n }\n return data\n }\n\n get_all_commands(target_name) {\n return this.exec('get_all_commands', [target_name])\n }\n\n get_all_command_names(target_name) {\n return this.exec('get_all_command_names', [target_name])\n }\n\n get_command(target_name, command_name) {\n return this.exec('get_command', [target_name, command_name])\n }\n\n get_cmd_cnts(target_commands) {\n return this.exec('get_cmd_cnts', [target_commands])\n }\n\n get_cmd_value(\n target_name,\n packet_name,\n parameter_name,\n value_type = 'CONVERTED'\n ) {\n return this.exec('get_cmd_value', [\n target_name,\n packet_name,\n parameter_name,\n value_type,\n ])\n }\n\n get_cmd_buffer(target_name, packet_name) {\n return this.exec('get_cmd_buffer', [target_name, packet_name])\n }\n\n // Implementation of functionality shared by cmd methods with param_lists.\n _cmd(method, target_name, command_name, param_list, headerOptions) {\n var converted = null\n for (var key in param_list) {\n if (Object.prototype.hasOwnProperty.call(param_list, key)) {\n converted = this.encode_openc3_type(param_list[key])\n if (converted !== null) {\n param_list[key] = converted\n }\n }\n }\n return this.exec(\n method,\n [target_name, command_name, param_list],\n {},\n headerOptions\n )\n }\n\n get_cmd_hazardous(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('get_cmd_hazardous', target_name)\n } else {\n return this._cmd(\n 'get_cmd_hazardous',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd(target_name, command_name, param_list, headerOptions = {}) {\n if (command_name === undefined) {\n return this.exec('cmd', target_name, {}, headerOptions)\n } else {\n return this._cmd(\n 'cmd',\n target_name,\n command_name,\n param_list,\n headerOptions\n )\n }\n }\n\n cmd_no_range_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_no_range_check', target_name)\n } else {\n return this._cmd(\n 'cmd_no_range_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_raw(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw', target_name)\n } else {\n return this._cmd('cmd_raw', target_name, command_name, param_list)\n }\n }\n\n cmd_raw_no_range_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw_no_range_check', target_name)\n } else {\n return this._cmd(\n 'cmd_raw_no_range_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_no_hazardous_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_no_hazardous_check', target_name)\n } else {\n return this._cmd(\n 'cmd_no_hazardous_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_no_checks(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_no_checks', target_name)\n } else {\n return this._cmd('cmd_no_checks', target_name, command_name, param_list)\n }\n }\n\n cmd_raw_no_hazardous_check(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw_no_hazardous_check', target_name)\n } else {\n return this._cmd(\n 'cmd_raw_no_hazardous_check',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n cmd_raw_no_checks(target_name, command_name, param_list) {\n if (command_name === undefined) {\n return this.exec('cmd_raw_no_checks', target_name)\n } else {\n return this._cmd(\n 'cmd_raw_no_checks',\n target_name,\n command_name,\n param_list\n )\n }\n }\n\n get_interface_names() {\n return this.exec('get_interface_names', [])\n }\n\n send_raw(interface_name, data) {\n return this.exec('send_raw', [interface_name, data])\n }\n\n list_configs(tool) {\n return this.exec('list_configs', [tool])\n }\n\n load_config(tool, name) {\n return this.exec('load_config', [tool, name])\n }\n\n save_config(tool, name, data) {\n return this.exec('save_config', [tool, name, data])\n }\n\n delete_config(tool, name) {\n return this.exec('delete_config', [tool, name])\n }\n\n get_out_of_limits() {\n return this.exec('get_out_of_limits', [])\n }\n\n get_overall_limits_state(ignored) {\n return this.exec('get_overall_limits_state', [ignored])\n }\n\n list_settings() {\n return this.exec('list_settings', [])\n }\n\n get_all_settings() {\n return this.exec('get_all_settings', [])\n }\n\n get_setting(name) {\n return this.exec('get_setting', [name])\n }\n\n get_settings(array) {\n return this.exec('get_settings', array)\n }\n\n save_setting(name, data) {\n return this.exec('save_setting', [name, data])\n }\n\n // TODO: Currently unused but seemed like a useful function\n async hashString(string) {\n if (window.isSecureContext) {\n // Encode the string as an arrayBuffer which the subtle crypto API uses\n const arrayBuffer = new TextEncoder().encode(string)\n // Use the subtle crypto API to perform a SHA256 Sum of the array buffer\n // The resulting hash is stored in an array buffer\n const hashAsArrayBuffer = await crypto.subtle.digest(\n 'SHA-256',\n arrayBuffer\n )\n // To create a string we will get the hexadecimal value of each byte of the array buffer\n // This gets us an array where each byte of the array buffer becomes one item in the array\n const uint8ViewOfHash = new Uint8Array(hashAsArrayBuffer)\n // We then convert it to a regular array so we can convert each item to hexadecimal strings\n // Where to characters of 0-9 or a-f represent a number between 0 and 16, containing 4 bits of information, so 2 of them is 8 bits (1 byte).\n return Array.from(uint8ViewOfHash)\n .map((b) => b.toString(16).padStart(2, '0'))\n .join('')\n }\n // else ?\n }\n}\n"],"names":["vueInstance","Vue","axiosInstance","axios","baseURL","location","origin","timeout","params","interceptors","response","use","error","status","OpenC3Auth","updateToken","defaultMinValidity","headers","includes","toString","Promise","reject","body","statusText","config","data","message","exception","class","$notify","serious","title","OpenC3Api","method","kwparams","headerOptions","login","this","id","window","openc3Scope","jsonrpc","keyword_params","Authorization","localStorage","openc3Token","result","err","Error","name","request","val","json_class","raw","NaN","Infinity","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","exec","target_name","interface_name","router_name","target_commands","target","packet","item","log_writer_name","limits_set","packet_name","value_type","type","len","length","converted","i","decode_openc3_type","items","item_name","data_type","undefined","command_name","parameter_name","param_list","key","Object","prototype","hasOwnProperty","call","encode_openc3_type","_cmd","tool","ignored","array","string","isSecureContext","arrayBuffer","TextEncoder","encode","crypto","subtle","digest","hashAsArrayBuffer","uint8ViewOfHash","Uint8Array","Array","from","map","b","padStart","join"],"sourceRoot":""}
@@ -1 +1 @@
1
- {"version":3,"file":"js/776.js","mappings":"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","sources":["webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/RoutersTab.vue","webpack://@openc3/tool-cmdtlmserver/src/tools/CmdTlmServer/RoutersTab.vue","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/RoutersTab.vue?a653","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/RoutersTab.vue?a9bb","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/internals/same-value.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/modules/es.string.search.js","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/Updater.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.data.length)+\" Routers \"),_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,\"custom-sort\":_vm.sortTable,\"items-per-page\":10,\"footer-props\":{ itemsPerPageOptions: [10, 20, -1] },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"data-test\":\"routers-table\"},scopedSlots:_vm._u([{key:\"item.connect\",fn:function({ item }){return [_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"primary\",\"disabled\":_vm.buttonsDisabled},on:{\"click\":function($event){return _vm.connectDisconnect(item)}}},[_vm._v(\" \"+_vm._s(item.connect)+\" \")])]}},{key:\"item.connected\",fn:function({ item }){return [_c('span',{class:item.connectedClass},[_vm._v(\" \"+_vm._s(item.connected)+\" \")])]}}])})],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\n<template>\n <v-card>\n <v-card-title>\n {{ data.length }} Routers\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 :custom-sort=\"sortTable\"\n :items-per-page=\"10\"\n :footer-props=\"{ itemsPerPageOptions: [10, 20, -1] }\"\n calculate-widths\n multi-sort\n data-test=\"routers-table\"\n >\n <template v-slot:item.connect=\"{ item }\">\n <v-btn\n block\n color=\"primary\"\n :disabled=\"buttonsDisabled\"\n @click=\"connectDisconnect(item)\"\n >\n {{ item.connect }}\n </v-btn>\n </template>\n <template v-slot:item.connected=\"{ item }\">\n <span :class=\"item.connectedClass\">\n {{ item.connected }}\n </span>\n </template>\n </v-data-table>\n </v-card>\n</template>\n\n<script>\nimport Updater from './Updater'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n search: '',\n data: [],\n buttonsDisabled: false,\n headers: [\n { text: 'Name', value: 'name' },\n {\n text: 'Connect / Disconnect',\n value: 'connect',\n sortable: false,\n filterable: false,\n },\n { text: 'Connected', value: 'connected' },\n { text: 'Clients', value: 'clients' },\n { text: 'Tx Q Size', value: 'tx_q_size' },\n { text: 'Rx Q Size', value: 'rx_q_size' },\n { text: 'Tx Bytes', value: 'tx_bytes' },\n { text: 'Rx Bytes', value: 'rx_bytes' },\n { text: 'Cmd Pkts', value: 'cmd_pkts' },\n { text: 'Tlm Pkts', value: 'tlm_pkts' },\n ],\n }\n },\n methods: {\n // Custom sort algorithm to allow the connected column to be sorted by CONNECTED first\n sortTable(items, index, isDesc) {\n items.sort((a, b) => {\n for (let i = 0; i < index.length; i++) {\n let column = index[i]\n let desc = isDesc[i]\n\n if (column === 'connected') {\n // Items are the same so continue to let subsequent column sorts apply\n if (a[column] === b[column]) {\n continue\n }\n if (!desc) {\n if (a[column] === 'CONNECTED') {\n return -1\n } else {\n return 1\n }\n } else {\n if (a[column] === 'CONNECTED') {\n return 1\n } else {\n return -1\n }\n }\n } else if (column === 'name') {\n // Items are the same so continue to let subsequent column sorts apply\n if (a[column] === b[column]) {\n continue\n }\n if (!desc) {\n // Strings so use localeCompare to sort\n return a[column].localeCompare(b[column])\n } else {\n return b[column].localeCompare(a[column])\n }\n } else {\n // Items are the same so continue to let subsequent column sorts apply\n if (a[column] === b[column]) {\n continue\n }\n if (!desc) {\n // The rest of the columns are numbers so just subtract to sort\n return a[column] - b[column]\n } else {\n return b[column] - a[column]\n }\n }\n }\n })\n return items\n },\n connectDisconnect(item) {\n this.buttonsDisabled = true\n if (item.connected === 'DISCONNECTED') {\n this.api.connect_router(item.name)\n } else {\n this.api.disconnect_router(item.name)\n }\n },\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_all_router_info().then((info) => {\n this.data = [] // Clear the old data\n for (let int of info) {\n let connect = null\n let connectedClass = null\n if (int[1] == 'DISCONNECTED') {\n connect = 'Connect'\n connectedClass = 'openc3-white'\n } else if (int[1] == 'CONNECTED') {\n connect = 'Disconnect'\n connectedClass = 'openc3-green'\n } else {\n connect = 'Cancel'\n connectedClass = 'openc3-red'\n }\n this.data.push({\n name: int[0],\n connect: connect,\n connectedClass: connectedClass,\n connected: int[1],\n clients: int[2],\n tx_q_size: int[3],\n rx_q_size: int[4],\n tx_bytes: int[5],\n rx_bytes: int[6],\n cmd_pkts: int[7],\n tlm_pkts: int[8],\n })\n }\n this.buttonsDisabled = false\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RoutersTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RoutersTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RoutersTab.vue?vue&type=template&id=1b755185&\"\nimport script from \"./RoutersTab.vue?vue&type=script&lang=js&\"\nexport * from \"./RoutersTab.vue?vue&type=script&lang=js&\"\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 null,\n null\n \n)\n\nexport default component.exports","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es-x/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","/*\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\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n props: {\n refreshInterval: {\n default: 1000,\n },\n },\n data() {\n return {\n updater: null,\n api: null,\n }\n },\n created() {\n this.api = new OpenC3Api()\n },\n mounted() {\n this.changeUpdater()\n },\n beforeDestroy() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n },\n watch: {\n // eslint-disable-next-line no-unused-vars\n refreshInterval: function (newVal, oldVal) {\n this.changeUpdater()\n },\n },\n methods: {\n changeUpdater() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n this.updater = setInterval(() => {\n this.update()\n }, this.refreshInterval)\n },\n },\n}\n","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}"],"names":["render","_vm","this","_c","_self","_v","_s","data","length","attrs","model","value","search","callback","$$v","expression","headers","sortTable","itemsPerPageOptions","scopedSlots","_u","key","fn","item","buttonsDisabled","on","$event","connectDisconnect","connect","class","connectedClass","connected","staticRenderFns","mixins","props","tabId","curTab","text","sortable","filterable","methods","items","index","isDesc","update","info","name","clients","tx_q_size","rx_q_size","tx_bytes","rx_bytes","cmd_pkts","tlm_pkts","component","module","exports","Object","is","x","y","call","fixRegExpWellKnownSymbolLogic","anObject","isNullOrUndefined","requireObjectCoercible","sameValue","toString","getMethod","regExpExec","SEARCH","nativeSearch","maybeCallNative","regexp","O","searcher","undefined","RegExp","string","rx","S","res","done","previousLastIndex","lastIndex","result","refreshInterval","default","updater","api","created","OpenC3Api","mounted","changeUpdater","beforeDestroy","clearInterval","watch","newVal","oldVal","setInterval","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","unsupportedIterableToArray","i","F","s","n","e","_e","f","TypeError","err","normalCompletion","didErr","step","next","_e2"],"sourceRoot":""}
1
+ {"version":3,"file":"js/776.js","mappings":"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","sources":["webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/RoutersTab.vue","webpack://@openc3/tool-cmdtlmserver/src/tools/CmdTlmServer/RoutersTab.vue","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/RoutersTab.vue?a653","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/RoutersTab.vue?a9bb","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/internals/same-value.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/modules/es.string.search.js","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/Updater.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.data.length)+\" Routers \"),_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,\"custom-sort\":_vm.sortTable,\"items-per-page\":10,\"footer-props\":{ itemsPerPageOptions: [10, 20, -1] },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"data-test\":\"routers-table\"},scopedSlots:_vm._u([{key:\"item.connect\",fn:function({ item }){return [_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"primary\",\"disabled\":_vm.buttonsDisabled},on:{\"click\":function($event){return _vm.connectDisconnect(item)}}},[_vm._v(\" \"+_vm._s(item.connect)+\" \")])]}},{key:\"item.connected\",fn:function({ item }){return [_c('span',{class:item.connectedClass},[_vm._v(\" \"+_vm._s(item.connected)+\" \")])]}}])})],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\n<template>\n <v-card>\n <v-card-title>\n {{ data.length }} Routers\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 :custom-sort=\"sortTable\"\n :items-per-page=\"10\"\n :footer-props=\"{ itemsPerPageOptions: [10, 20, -1] }\"\n calculate-widths\n multi-sort\n data-test=\"routers-table\"\n >\n <template v-slot:item.connect=\"{ item }\">\n <v-btn\n block\n color=\"primary\"\n :disabled=\"buttonsDisabled\"\n @click=\"connectDisconnect(item)\"\n >\n {{ item.connect }}\n </v-btn>\n </template>\n <template v-slot:item.connected=\"{ item }\">\n <span :class=\"item.connectedClass\">\n {{ item.connected }}\n </span>\n </template>\n </v-data-table>\n </v-card>\n</template>\n\n<script>\nimport Updater from './Updater'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n search: '',\n data: [],\n buttonsDisabled: false,\n headers: [\n { text: 'Name', value: 'name' },\n {\n text: 'Connect / Disconnect',\n value: 'connect',\n sortable: false,\n filterable: false,\n },\n { text: 'Connected', value: 'connected' },\n { text: 'Clients', value: 'clients' },\n { text: 'Tx Q Size', value: 'tx_q_size' },\n { text: 'Rx Q Size', value: 'rx_q_size' },\n { text: 'Tx Bytes', value: 'tx_bytes' },\n { text: 'Rx Bytes', value: 'rx_bytes' },\n { text: 'Cmd Pkts', value: 'cmd_pkts' },\n { text: 'Tlm Pkts', value: 'tlm_pkts' },\n ],\n }\n },\n methods: {\n // Custom sort algorithm to allow the connected column to be sorted by CONNECTED first\n sortTable(items, index, isDesc) {\n items.sort((a, b) => {\n for (let i = 0; i < index.length; i++) {\n let column = index[i]\n let desc = isDesc[i]\n\n if (column === 'connected') {\n // Items are the same so continue to let subsequent column sorts apply\n if (a[column] === b[column]) {\n continue\n }\n if (!desc) {\n if (a[column] === 'CONNECTED') {\n return -1\n } else {\n return 1\n }\n } else {\n if (a[column] === 'CONNECTED') {\n return 1\n } else {\n return -1\n }\n }\n } else if (column === 'name') {\n // Items are the same so continue to let subsequent column sorts apply\n if (a[column] === b[column]) {\n continue\n }\n if (!desc) {\n // Strings so use localeCompare to sort\n return a[column].localeCompare(b[column])\n } else {\n return b[column].localeCompare(a[column])\n }\n } else {\n // Items are the same so continue to let subsequent column sorts apply\n if (a[column] === b[column]) {\n continue\n }\n if (!desc) {\n // The rest of the columns are numbers so just subtract to sort\n return a[column] - b[column]\n } else {\n return b[column] - a[column]\n }\n }\n }\n })\n return items\n },\n connectDisconnect(item) {\n this.buttonsDisabled = true\n if (item.connected === 'DISCONNECTED') {\n this.api.connect_router(item.name)\n } else {\n this.api.disconnect_router(item.name)\n }\n },\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_all_router_info().then((info) => {\n this.data = [] // Clear the old data\n for (let int of info) {\n let connect = null\n let connectedClass = null\n if (int[1] == 'DISCONNECTED') {\n connect = 'Connect'\n connectedClass = 'openc3-white'\n } else if (int[1] == 'CONNECTED') {\n connect = 'Disconnect'\n connectedClass = 'openc3-green'\n } else {\n connect = 'Cancel'\n connectedClass = 'openc3-red'\n }\n this.data.push({\n name: int[0],\n connect: connect,\n connectedClass: connectedClass,\n connected: int[1],\n clients: int[2],\n tx_q_size: int[3],\n rx_q_size: int[4],\n tx_bytes: int[5],\n rx_bytes: int[6],\n cmd_pkts: int[7],\n tlm_pkts: int[8],\n })\n }\n this.buttonsDisabled = false\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RoutersTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RoutersTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RoutersTab.vue?vue&type=template&id=1b755185&\"\nimport script from \"./RoutersTab.vue?vue&type=script&lang=js&\"\nexport * from \"./RoutersTab.vue?vue&type=script&lang=js&\"\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 null,\n null\n \n)\n\nexport default component.exports","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","/*\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\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n props: {\n refreshInterval: {\n default: 1000,\n },\n },\n data() {\n return {\n updater: null,\n api: null,\n }\n },\n created() {\n this.api = new OpenC3Api()\n },\n mounted() {\n this.changeUpdater()\n },\n beforeDestroy() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n },\n watch: {\n // eslint-disable-next-line no-unused-vars\n refreshInterval: function (newVal, oldVal) {\n this.changeUpdater()\n },\n },\n methods: {\n changeUpdater() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n this.updater = setInterval(() => {\n this.update()\n }, this.refreshInterval)\n },\n },\n}\n","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}"],"names":["render","_vm","this","_c","_self","_v","_s","data","length","attrs","model","value","search","callback","$$v","expression","headers","sortTable","itemsPerPageOptions","scopedSlots","_u","key","fn","item","buttonsDisabled","on","$event","connectDisconnect","connect","class","connectedClass","connected","staticRenderFns","mixins","props","tabId","curTab","text","sortable","filterable","methods","items","index","isDesc","update","info","name","clients","tx_q_size","rx_q_size","tx_bytes","rx_bytes","cmd_pkts","tlm_pkts","component","module","exports","Object","is","x","y","call","fixRegExpWellKnownSymbolLogic","anObject","isNullOrUndefined","requireObjectCoercible","sameValue","toString","getMethod","regExpExec","SEARCH","nativeSearch","maybeCallNative","regexp","O","searcher","undefined","RegExp","string","rx","S","res","done","previousLastIndex","lastIndex","result","refreshInterval","default","updater","api","created","OpenC3Api","mounted","changeUpdater","beforeDestroy","clearInterval","watch","newVal","oldVal","setInterval","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","unsupportedIterableToArray","i","F","s","n","e","_e","f","TypeError","err","normalCompletion","didErr","step","next","_e2"],"sourceRoot":""}
@@ -1 +1 @@
1
- {"version":3,"file":"js/856.js","mappings":"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","sources":["webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/TargetsTab.vue","webpack://@openc3/tool-cmdtlmserver/src/tools/CmdTlmServer/TargetsTab.vue","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/TargetsTab.vue?ed66","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/TargetsTab.vue?3388","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/internals/same-value.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/modules/es.string.search.js","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/Updater.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.data.length)+\" Targets \"),_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\":{ itemsPerPageOptions: [10, 20, -1] },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"data-test\":\"targets-table\"}})],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\n<template>\n <v-card>\n <v-card-title>\n {{ data.length }} Targets\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=\"{ itemsPerPageOptions: [10, 20, -1] }\"\n calculate-widths\n multi-sort\n data-test=\"targets-table\"\n />\n </v-card>\n</template>\n\n<script>\nimport Updater from './Updater'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n search: '',\n data: [],\n headers: [\n { text: 'Target Name', value: 'name' },\n { text: 'Interface', value: 'interface' },\n { text: 'Command Count', value: 'cmd_count' },\n { text: 'Telemetry Count', value: 'tlm_count' },\n ],\n }\n },\n methods: {\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_all_target_info().then((info) => {\n this.data = []\n for (let x of info) {\n this.data.push({\n name: x[0],\n interface: x[1],\n cmd_count: x[2],\n tlm_count: x[3],\n })\n }\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TargetsTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TargetsTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TargetsTab.vue?vue&type=template&id=3045d39a&\"\nimport script from \"./TargetsTab.vue?vue&type=script&lang=js&\"\nexport * from \"./TargetsTab.vue?vue&type=script&lang=js&\"\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 null,\n null\n \n)\n\nexport default component.exports","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es-x/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","/*\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\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n props: {\n refreshInterval: {\n default: 1000,\n },\n },\n data() {\n return {\n updater: null,\n api: null,\n }\n },\n created() {\n this.api = new OpenC3Api()\n },\n mounted() {\n this.changeUpdater()\n },\n beforeDestroy() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n },\n watch: {\n // eslint-disable-next-line no-unused-vars\n refreshInterval: function (newVal, oldVal) {\n this.changeUpdater()\n },\n },\n methods: {\n changeUpdater() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n this.updater = setInterval(() => {\n this.update()\n }, this.refreshInterval)\n },\n },\n}\n","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}"],"names":["render","_vm","this","_c","_self","_v","_s","data","length","attrs","model","value","search","callback","$$v","expression","headers","itemsPerPageOptions","staticRenderFns","mixins","props","tabId","curTab","text","methods","update","info","name","interface","cmd_count","tlm_count","component","module","exports","Object","is","x","y","call","fixRegExpWellKnownSymbolLogic","anObject","isNullOrUndefined","requireObjectCoercible","sameValue","toString","getMethod","regExpExec","SEARCH","nativeSearch","maybeCallNative","regexp","O","searcher","undefined","RegExp","string","rx","S","res","done","previousLastIndex","lastIndex","result","index","refreshInterval","default","updater","api","created","OpenC3Api","mounted","changeUpdater","beforeDestroy","clearInterval","watch","newVal","oldVal","setInterval","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","unsupportedIterableToArray","i","F","s","n","e","_e","f","TypeError","err","normalCompletion","didErr","step","next","_e2"],"sourceRoot":""}
1
+ {"version":3,"file":"js/856.js","mappings":"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","sources":["webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/TargetsTab.vue","webpack://@openc3/tool-cmdtlmserver/src/tools/CmdTlmServer/TargetsTab.vue","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/TargetsTab.vue?ed66","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/TargetsTab.vue?3388","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/internals/same-value.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/core-js/modules/es.string.search.js","webpack://@openc3/tool-cmdtlmserver/./src/tools/CmdTlmServer/Updater.js","webpack://@openc3/tool-cmdtlmserver/../../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.data.length)+\" Targets \"),_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\":{ itemsPerPageOptions: [10, 20, -1] },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"data-test\":\"targets-table\"}})],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\n<template>\n <v-card>\n <v-card-title>\n {{ data.length }} Targets\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=\"{ itemsPerPageOptions: [10, 20, -1] }\"\n calculate-widths\n multi-sort\n data-test=\"targets-table\"\n />\n </v-card>\n</template>\n\n<script>\nimport Updater from './Updater'\n\nexport default {\n mixins: [Updater],\n props: {\n tabId: Number,\n curTab: Number,\n },\n data() {\n return {\n search: '',\n data: [],\n headers: [\n { text: 'Target Name', value: 'name' },\n { text: 'Interface', value: 'interface' },\n { text: 'Command Count', value: 'cmd_count' },\n { text: 'Telemetry Count', value: 'tlm_count' },\n ],\n }\n },\n methods: {\n update() {\n if (this.tabId != this.curTab) return\n this.api.get_all_target_info().then((info) => {\n this.data = []\n for (let x of info) {\n this.data.push({\n name: x[0],\n interface: x[1],\n cmd_count: x[2],\n tlm_count: x[3],\n })\n }\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TargetsTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TargetsTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TargetsTab.vue?vue&type=template&id=3045d39a&\"\nimport script from \"./TargetsTab.vue?vue&type=script&lang=js&\"\nexport * from \"./TargetsTab.vue?vue&type=script&lang=js&\"\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 null,\n null\n \n)\n\nexport default component.exports","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","/*\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\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\n\nexport default {\n props: {\n refreshInterval: {\n default: 1000,\n },\n },\n data() {\n return {\n updater: null,\n api: null,\n }\n },\n created() {\n this.api = new OpenC3Api()\n },\n mounted() {\n this.changeUpdater()\n },\n beforeDestroy() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n },\n watch: {\n // eslint-disable-next-line no-unused-vars\n refreshInterval: function (newVal, oldVal) {\n this.changeUpdater()\n },\n },\n methods: {\n changeUpdater() {\n if (this.updater != null) {\n clearInterval(this.updater)\n this.updater = null\n }\n this.updater = setInterval(() => {\n this.update()\n }, this.refreshInterval)\n },\n },\n}\n","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}"],"names":["render","_vm","this","_c","_self","_v","_s","data","length","attrs","model","value","search","callback","$$v","expression","headers","itemsPerPageOptions","staticRenderFns","mixins","props","tabId","curTab","text","methods","update","info","name","interface","cmd_count","tlm_count","component","module","exports","Object","is","x","y","call","fixRegExpWellKnownSymbolLogic","anObject","isNullOrUndefined","requireObjectCoercible","sameValue","toString","getMethod","regExpExec","SEARCH","nativeSearch","maybeCallNative","regexp","O","searcher","undefined","RegExp","string","rx","S","res","done","previousLastIndex","lastIndex","result","index","refreshInterval","default","updater","api","created","OpenC3Api","mounted","changeUpdater","beforeDestroy","clearInterval","watch","newVal","oldVal","setInterval","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","unsupportedIterableToArray","i","F","s","n","e","_e","f","TypeError","err","normalCompletion","didErr","step","next","_e2"],"sourceRoot":""}