openc3-cosmos-tool-admin 5.16.1 → 5.17.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5b07edf2835e0aef5bad21d40f49d8ca34c5cf6594c7e75e166519311fd083fb
4
- data.tar.gz: 61dbf6e397180fddedfe46aaae1f8ea869c0b0059207285a5d44771f35bca694
3
+ metadata.gz: aca8889b37952845558a94fcbc17e0454d6aed738ec57fd03fc5f0184a60d363
4
+ data.tar.gz: c828be5a5d8fc8d61b98d98113213bc5d8ba059cc9a025df32269618f7218b50
5
5
  SHA512:
6
- metadata.gz: b6a299089f34eddcd213eb5c5c1e4117363a3a79a0476bb0005f16918fe46f48e294028529260b29a73e56c03eac07b7d905f790547e8a1a5108a1ea7c9ffc4c
7
- data.tar.gz: c248770c55dd324389b742f99ded9878ac9a88e6fd8270a6411d090c0317707dc4d8e3753f2e1f3fecf22b0f102a7a3d0c060f2070d655204a1359f3a0091921
6
+ metadata.gz: 57b239eaaf56223320f2779a1dbf0a9c42b87516d0e8adff49757cb53c255443423232cc71c01e980707bc9157fac5e24d526db4bc7d9f7694efb647608d64b0
7
+ data.tar.gz: 20eee1e21a2de29b5891cee5ceb33786bffc0d0c6aed448f678a2eaa7e52d3e749a8007078c9f1aaffde259fb17cf00d4fcf90313b98e88e6e97791091569482
@@ -0,0 +1,2 @@
1
+ (self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[246],{2795:(t,e,s)=>{"use strict";s.d(e,{A:()=>r});var o=s(2673);const a=async function(t,e,{data:s,params:a={},headers:n,noAuth:i=!1,noScope:r=!1,onUploadProgress:l={}}={}){if(!i){try{let t=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);t&&OpenC3Auth.setTokens()}catch(c){OpenC3Auth.login()}n["Authorization"]=localStorage.openc3Token}return r||a["scope"]||(a["scope"]=window.openc3Scope),(0,o.A)({method:t,url:e,data:s,params:a,headers:n,onUploadProgress:l})},n={Accept:"application/json"},i={...n,"Content-Type":"application/json"},r={get:function(t,{params:e,headers:s=n,noScope:o,noAuth:i,onUploadProgress:r}={}){return a("get",t,{params:e,headers:s,noScope:o,noAuth:i,onUploadProgress:r})},put:function(t,{data:e,params:s,headers:o=i,noScope:n,noAuth:r,onUploadProgress:l}={}){return a("put",t,{data:e,params:s,headers:o,noScope:n,noAuth:r,onUploadProgress:l})},post:function(t,{data:e,params:s,headers:o=i,noScope:n,noAuth:r,onUploadProgress:l}={}){return a("post",t,{data:e,params:s,headers:o,noScope:n,noAuth:r,onUploadProgress:l})},delete:function(t,{params:e,headers:s=n,noScope:o,noAuth:i,onUploadProgress:r}={}){return a("delete",t,{params:e,headers:s,noScope:o,noAuth:i,onUploadProgress:r})}}},2673:(t,e,s)=>{"use strict";s.d(e,{A:()=>r});var o=s(3816),a=s(1649);const n=new a["default"],i=o.A.create({baseURL:location.origin,timeout:6e4,params:{}});i.interceptors.response.use((t=>t),(t=>{if(t.response){var e,s,o,a,i;if(401===t.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(t){t&&OpenC3Auth.setTokens()})),t.response.config.headers["Ignore-Errors"]&&t.response.config.headers["Ignore-Errors"].includes(t.response.status.toString()))return Promise.reject(t);let l=`HTTP ${t.response.status} - `;if(null!==(e=t.response)&&void 0!==e&&e.statusText&&(l+=`${t.response.statusText} `),null!==(s=t.response)&&void 0!==s&&null!==(s=s.config)&&void 0!==s&&s.data&&(l+=`${t.response.config.data} `),null!==(o=t.response)&&void 0!==o&&null!==(o=o.data)&&void 0!==o&&o.message)l+=`${t.response.data.message}`;else if(null!==(a=t.response)&&void 0!==a&&null!==(a=a.data)&&void 0!==a&&a.exception)l+=`${t.response.data.exception}`;else if(null!==(i=t.response)&&void 0!==i&&null!==(i=i.data)&&void 0!==i&&null!==(i=i.error)&&void 0!==i&&i.message)t.response.data.error.class&&(l+=`${t.response.data.error.class} `),l+=`${t.response.data.error.message}`;else{var r;l+=`${null===(r=t.response)||void 0===r?void 0:r.data}`}throw n.$notify&&n.$notify.serious({title:"Network error",body:l}),t}throw t}));const r=i},3348:(t,e,s)=>{"use strict";s.d(e,{A:()=>c});var o=function(){var t=this,e=t._self._c;return e("v-dialog",{attrs:{width:t.width},model:{value:t.show,callback:function(e){t.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),t._v(" "),e("span",[t._v(" "+t._s(t.title)+" ")]),t._v(" "),e("v-spacer"),t._v(" "),e("div",{staticClass:"mx-2"},[e("v-tooltip",{attrs:{top:""},scopedSlots:t._u([{key:"activator",fn:function({on:s,attrs:o}){return[e("div",t._g(t._b({},"div",o,!1),s),[e("v-icon",{attrs:{"data-test":"downloadIcon"},on:{click:t.download}},[t._v("\n mdi-download\n ")])],1)]}}])},[t._v(" "),e("span",[t._v(" Download ")])])],1)],1),t._v(" "),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("span",{staticStyle:{"white-space":"pre-wrap"}},[t._v(t._s(t.text))])])]),t._v(" "),e("v-card-actions",[e("v-spacer"),t._v(" "),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(e){t.show=!t.show}}},[t._v(" Ok ")])],1)],1)],1)},a=[];s(7010),s(3165),s(4541),s(4397),s(1412),s(1883),s(7905);const n={props:{value:Boolean,text:String,title:String,width:800},computed:{show:{get(){return this.value},set(t){this.$emit("input",t)}}},methods:{download:function(){const t=new Blob([this.text],{type:"text/plain"}),e=document.createElement("a");e.href=URL.createObjectURL(t),e.setAttribute("download",`${this.title}.txt`),e.click()}}},i=n;var r=s(2401),l=(0,r.A)(i,o,a,!1,null,null,null);const c=l.exports},1246:(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>k});var o=function(){var t=this,e=t._self._c;return e("div",[e("v-row",{staticClass:"px-2",attrs:{"no-gutters":"",align:"center"}},[e("v-col",[e("v-file-input",{ref:"fileInput",staticClass:"mx-2",attrs:{multiple:"","show-size":"",accept:".gem,.gz,.zip,.whl",label:"Click to select file(s) to add to COSMOS"},model:{value:t.files,callback:function(e){t.files=e},expression:"files"}})],1),t._v(" "),e("v-col",{staticClass:"ml-4 mr-2",attrs:{cols:"4"}},[e("rux-progress",{attrs:{value:t.progress}})],1),t._v(" "),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary","data-test":"packageUpload",disabled:t.files.length<1,loading:t.loadingPackage},on:{click:function(e){return t.upload()}},scopedSlots:t._u([{key:"loader",fn:function(){return[e("span",[t._v("Loading...")])]},proxy:!0}])},[e("v-icon",{attrs:{left:"",dark:""}},[t._v("mdi-cloud-upload")]),t._v(" "),e("span",[t._v(" Upload ")])],1)],1),t._v(" "),e("v-alert",{attrs:{dismissible:"",transition:"scale-transition",type:t.alertType},model:{value:t.showAlert,callback:function(e){t.showAlert=e},expression:"showAlert"}},[t._v(t._s(t.alert))]),t._v(" "),Object.keys(t.processes).length>0?e("v-list",{staticClass:"list",attrs:{"data-test":"process-list"}},[e("v-row",{staticClass:"px-4",attrs:{"no-gutters":""}},[e("v-col",{staticClass:"text-h6"},[t._v("Process List")]),t._v(" "),e("v-col",{attrs:{align:"right"}},[e("div",[t._v("Showing last 10 min of activity")])])],1),t._v(" "),t._l(t.processes,(function(s){return e("div",{key:s.name},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[e("span",{class:s.state.toLowerCase(),domProps:{textContent:t._s(`Processing ${s.process_type}: ${s.detail} - ${s.state}`)}})]),t._v(" "),e("v-list-item-subtitle",[e("span",{domProps:{textContent:t._s(" Updated At: "+t.formatDate(s.updated_at))}})])],1),t._v(" "),"Running"!==s.state?e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.showOutput(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-eye\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Show Output")])])],1):t._e()],1),t._v(" "),e("v-divider")],1)}))],2):t._e(),t._v(" "),e("v-list",{staticClass:"list",attrs:{"data-test":"packageList"}},[e("v-row",{staticClass:"px-4"},[e("v-col",{staticClass:"text-h6"},[t._v("Ruby Gems")])],1),t._v(" "),t._l(t.gems,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s))])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.deletePackage(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-delete\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Delete Package")])])],1)],1),t._v(" "),e("v-divider")],1)})),t._v(" "),e("v-row",{staticClass:"px-4"},[e("v-col",{staticClass:"text-h6"},[t._v("Python Packages")])],1),t._v(" "),t._l(t.python,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s))])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.deletePackage(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-delete\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Delete Package")])])],1)],1),t._v(" "),e("v-divider")],1)}))],2),t._v(" "),e("download-dialog",{model:{value:t.showDownloadDialog,callback:function(e){t.showDownloadDialog=e},expression:"showDownloadDialog"}}),t._v(" "),e("simple-text-dialog",{attrs:{title:"Process Output",text:t.processOutput},model:{value:t.showProcessOutput,callback:function(e){t.showProcessOutput=e},expression:"showProcessOutput"}})],1)},a=[],n=(s(7010),s(584)),i=s(2509),r=s(2795),l=function(){var t=this,e=t._self._c;return e("v-dialog",{attrs:{width:"600"},model:{value:t.show,callback:function(e){t.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),t._v(" "),e("span",[t._v(" Download Gems ")]),t._v(" "),e("v-spacer")],1),t._v(" "),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("v-row",{staticClass:"my-2"},[t._v(" Select a download option ")]),t._v(" "),e("v-row",[e("v-col",[e("div",{staticClass:"px-2"},[e("v-btn",{attrs:{block:"","data-test":"searchGithub",color:"primary",disabled:t.disableSearch},on:{click:t.searchGithub}},[t._v("\n Github\n "),e("v-icon",{attrs:{right:"",dark:""}},[t._v(" mdi-github ")])],1)],1)])],1),t._v(" "),e("v-row",{staticClass:"mt-5"},[t._v(" Community Gems ")]),t._v(" "),t.listData.length<1?e("div",{staticClass:"mt-4"},[e("v-row",{staticClass:"mx-2"},[e("span",[t._v(" I’m sorry, Dave. No gems available.... ")])])],1):e("div",{staticClass:"mt-4"},t._l(t.listData,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s.name))])],1),t._v(" "),e("v-list-item-icon",[t.activeDownload?e("div",[e("v-progress-circular",{attrs:{indeterminate:"",color:"primary"}})],1):e("div",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({attrs:{disabled:t.activeDownload},on:{click:function(e){return t.downloadGem(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-cloud-download\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Download Gem")])])],1)])],1),t._v(" "),o<t.listData.length-1?e("v-divider",{key:o}):t._e()],1)})),0)],1)])],1)],1)},c=[],p=s(3816);const u={props:{value:Boolean},data(){return{url:"",type:null,response:null,activeDownload:!1,disableSearch:!1,expanded:[]}},computed:{show:{get(){return this.value},set(t){this.$emit("input",t)}},listData:function(){return this.response?"github"===this.type?this.parseGithub():this.parseRuby():[]}},methods:{parseGithub:function(){const t=/\w+.gem/;return this.response.tree.filter((e=>t.exec(e.path))).map((t=>({name:t.path,url:`https://raw.github.com/OpenC3/openc3-tools/main/${t.path}`})))},getResponse:function(){this.disableSearch=!0,p.A.get(this.url).then((t=>{this.response=t.data})),setTimeout((()=>{this.disableSearch=!1}),1e4)},searchGithub:function(){this.type="github",this.url="https://api.github.com/repos/OpenC3/openc3-tools/git/trees/main?recursive=1",this.getResponse()},downloadGem:function(t){const e=document.createElement("a");e.href=t.url,e.setAttribute("download",t.name),e.click(),e.remove()}}},d=u;var v=s(2401),h=(0,v.A)(d,l,c,!1,null,null,null);const m=h.exports;var _=s(3348);const g={components:{DownloadDialog:m,SimpleTextDialog:_.A},data(){return{showDownloadDialog:!1,showProcessOutput:!1,processOutput:"",files:[],loadingPackage:!1,progress:0,gems:[],python:[],processes:{},alert:"",alertType:"success",showAlert:!1}},mounted(){this.update(),this.updateProcesses()},methods:{showOutput:function(t){this.processOutput=t.output,this.showProcessOutput=!0},update(){r.A.get("/openc3-api/packages").then((t=>{this.gems=t.data.ruby,this.python=t.data.python}))},updateProcesses:function(){r.A.get("/openc3-api/process_status/package_?substr=true").then((t=>{this.processes=t.data,Object.keys(this.processes).length>0&&setTimeout((()=>{this.updateProcesses(),this.update()}),1e4)}))},formatDate(t){return(0,n.GP)((0,i.a)(parseInt(t)/1e6),"yyyy-MM-dd HH:mm:ss.SSS")},upload:function(){this.loadingPackage=!0,this.progress=0;let t=this;const e=this.files.map((e=>{const s=new FormData;return s.append("package",e,e.name),r.A.post("/openc3-api/packages",{data:s,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:function(e){var s=Math.round(100*e.loaded/e.total);t.progress=s}})}));Promise.all(e).then((t=>{this.alert=`Uploaded ${t.length} package${t.length>1?"s":""}`,this.alertType="success",this.showAlert=!0,this.loadingPackage=!1,this.files=[],setTimeout((()=>{this.showAlert=!1,this.updateProcesses()}),5e3),this.update()})).catch((t=>{this.loadingPackage=!1}))},deletePackage:function(t){this.$dialog.confirm(`Are you sure you want to remove: ${t}`,{okText:"Delete",cancelText:"Cancel"}).then((function(e){return r.A.delete(`/openc3-api/packages/${t}`)})).then((e=>{this.alert=`Removed package ${t}`,this.alertType="success",this.showAlert=!0,setTimeout((()=>{this.showAlert=!1}),5e3),this.update()}))}}},f=g;s(824);var w=(0,v.A)(f,o,a,!1,null,"60e13575",null);const k=w.exports},5616:(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>l});var o=s(6758),a=s.n(o),n=s(935),i=s.n(n),r=i()(a());r.push([t.id,".v-subheader[data-v-60e13575]{font-size:1rem}.list[data-v-60e13575]{background-color:var(--color-background-surface-default)!important}",""]);const l=r},824:(t,e,s)=>{var o=s(5616);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[t.id,o,""]]),o.locals&&(t.exports=o.locals);var a=s(4825).A;a("497748a7",o,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
+ //# sourceMappingURL=246.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js/246.js","mappings":"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","sources":["webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/api.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/axios.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/SimpleTextDialog.vue","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/SimpleTextDialog.vue?abaa","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/SimpleTextDialog.vue?5fff","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/PackagesTab.vue","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/DownloadDialog.vue","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/DownloadDialog.vue?bac1","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/DownloadDialog.vue?83fa","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/PackagesTab.vue?1715","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/PackagesTab.vue?cbd0","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/PackagesTab.vue?d546","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/PackagesTab.vue?46b6"],"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# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport axios from './axios.js'\n\nconst request = async function (\n method,\n url,\n {\n data,\n params = {},\n headers,\n noAuth = false,\n noScope = false,\n onUploadProgress = {},\n } = {}\n) {\n if (!noAuth) {\n try {\n let refreshed = await OpenC3Auth.updateToken(\n OpenC3Auth.defaultMinValidity\n )\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n } catch (error) {\n OpenC3Auth.login()\n }\n headers['Authorization'] = localStorage.openc3Token\n }\n if (!noScope && !params['scope']) {\n params['scope'] = window.openc3Scope\n }\n return axios({\n method,\n url,\n data,\n params,\n headers,\n onUploadProgress,\n })\n}\n\nconst acceptOnlyDefaultHeaders = {\n Accept: 'application/json',\n}\n\nconst fullDefaultHeaders = {\n ...acceptOnlyDefaultHeaders,\n 'Content-Type': 'application/json',\n}\n\nexport default {\n get: function (\n path,\n {\n params,\n headers = acceptOnlyDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('get', path, {\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n put: function (\n path,\n {\n data,\n params,\n headers = fullDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('put', path, {\n data,\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n post: function (\n path,\n {\n data,\n params,\n headers = fullDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('post', path, {\n data,\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n delete: function (\n path,\n {\n params,\n headers = acceptOnlyDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('delete', path, {\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\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# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\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).then(\n function (refreshed) {\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n },\n )\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 // headers: {\n // 'Ignore-Errors': '404',\n // },\n // })\n if (\n error.response.config.headers['Ignore-Errors'] &&\n error.response.config.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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{attrs:{\"width\":_vm.width},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[_c('v-system-bar',[_c('v-spacer'),_vm._v(\" \"),_c('span',[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_vm._v(\" \"),_c('v-spacer'),_vm._v(\" \"),_c('div',{staticClass:\"mx-2\"},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('div',_vm._g(_vm._b({},'div',attrs,false),on),[_c('v-icon',{attrs:{\"data-test\":\"downloadIcon\"},on:{\"click\":_vm.download}},[_vm._v(\"\\n mdi-download\\n \")])],1)]}}])},[_vm._v(\" \"),_c('span',[_vm._v(\" Download \")])])],1)],1),_vm._v(\" \"),_c('v-card-text',[_c('div',{staticClass:\"pa-3\"},[_c('span',{staticStyle:{\"white-space\":\"pre-wrap\"}},[_vm._v(_vm._s(_vm.text))])])]),_vm._v(\" \"),_c('v-card-actions',[_c('v-spacer'),_vm._v(\" \"),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.show = !_vm.show}}},[_vm._v(\" Ok \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SimpleTextDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SimpleTextDialog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SimpleTextDialog.vue?vue&type=template&id=4cd697cc\"\nimport script from \"./SimpleTextDialog.vue?vue&type=script&lang=js\"\nexport * from \"./SimpleTextDialog.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('div',[_c('v-row',{staticClass:\"px-2\",attrs:{\"no-gutters\":\"\",\"align\":\"center\"}},[_c('v-col',[_c('v-file-input',{ref:\"fileInput\",staticClass:\"mx-2\",attrs:{\"multiple\":\"\",\"show-size\":\"\",\"accept\":\".gem,.gz,.zip,.whl\",\"label\":\"Click to select file(s) to add to COSMOS\"},model:{value:(_vm.files),callback:function ($$v) {_vm.files=$$v},expression:\"files\"}})],1),_vm._v(\" \"),_c('v-col',{staticClass:\"ml-4 mr-2\",attrs:{\"cols\":\"4\"}},[_c('rux-progress',{attrs:{\"value\":_vm.progress}})],1),_vm._v(\" \"),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"color\":\"primary\",\"data-test\":\"packageUpload\",\"disabled\":_vm.files.length < 1,\"loading\":_vm.loadingPackage},on:{\"click\":function($event){return _vm.upload()}},scopedSlots:_vm._u([{key:\"loader\",fn:function(){return [_c('span',[_vm._v(\"Loading...\")])]},proxy:true}])},[_c('v-icon',{attrs:{\"left\":\"\",\"dark\":\"\"}},[_vm._v(\"mdi-cloud-upload\")]),_vm._v(\" \"),_c('span',[_vm._v(\" Upload \")])],1)],1),_vm._v(\" \"),_c('v-alert',{attrs:{\"dismissible\":\"\",\"transition\":\"scale-transition\",\"type\":_vm.alertType},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(_vm._s(_vm.alert))]),_vm._v(\" \"),(Object.keys(_vm.processes).length > 0)?_c('v-list',{staticClass:\"list\",attrs:{\"data-test\":\"process-list\"}},[_c('v-row',{staticClass:\"px-4\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"text-h6\"},[_vm._v(\"Process List\")]),_vm._v(\" \"),_c('v-col',{attrs:{\"align\":\"right\"}},[_c('div',[_vm._v(\"Showing last 10 min of activity\")])])],1),_vm._v(\" \"),_vm._l((_vm.processes),function(process){return _c('div',{key:process.name},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',[_c('span',{class:process.state.toLowerCase(),domProps:{\"textContent\":_vm._s(\n `Processing ${process.process_type}: ${process.detail} - ${process.state}`\n )}})]),_vm._v(\" \"),_c('v-list-item-subtitle',[_c('span',{domProps:{\"textContent\":_vm._s(' Updated At: ' + _vm.formatDate(process.updated_at))}})])],1),_vm._v(\" \"),(process.state !== 'Running')?_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.showOutput(process)}}},'v-icon',attrs,false),on),[_vm._v(\"\\n mdi-eye\\n \")])]}}],null,true)},[_vm._v(\" \"),_c('span',[_vm._v(\"Show Output\")])])],1):_vm._e()],1),_vm._v(\" \"),_c('v-divider')],1)})],2):_vm._e(),_vm._v(\" \"),_c('v-list',{staticClass:\"list\",attrs:{\"data-test\":\"packageList\"}},[_c('v-row',{staticClass:\"px-4\"},[_c('v-col',{staticClass:\"text-h6\"},[_vm._v(\"Ruby Gems\")])],1),_vm._v(\" \"),_vm._l((_vm.gems),function(gem,index){return _c('div',{key:index},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(gem))])],1),_vm._v(\" \"),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.deletePackage(gem)}}},'v-icon',attrs,false),on),[_vm._v(\"\\n mdi-delete\\n \")])]}}],null,true)},[_vm._v(\" \"),_c('span',[_vm._v(\"Delete Package\")])])],1)],1),_vm._v(\" \"),_c('v-divider')],1)}),_vm._v(\" \"),_c('v-row',{staticClass:\"px-4\"},[_c('v-col',{staticClass:\"text-h6\"},[_vm._v(\"Python Packages\")])],1),_vm._v(\" \"),_vm._l((_vm.python),function(pkg,index){return _c('div',{key:index},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(pkg))])],1),_vm._v(\" \"),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.deletePackage(pkg)}}},'v-icon',attrs,false),on),[_vm._v(\"\\n mdi-delete\\n \")])]}}],null,true)},[_vm._v(\" \"),_c('span',[_vm._v(\"Delete Package\")])])],1)],1),_vm._v(\" \"),_c('v-divider')],1)})],2),_vm._v(\" \"),_c('download-dialog',{model:{value:(_vm.showDownloadDialog),callback:function ($$v) {_vm.showDownloadDialog=$$v},expression:\"showDownloadDialog\"}}),_vm._v(\" \"),_c('simple-text-dialog',{attrs:{\"title\":\"Process Output\",\"text\":_vm.processOutput},model:{value:(_vm.showProcessOutput),callback:function ($$v) {_vm.showProcessOutput=$$v},expression:\"showProcessOutput\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{attrs:{\"width\":\"600\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[_c('v-system-bar',[_c('v-spacer'),_vm._v(\" \"),_c('span',[_vm._v(\" Download Gems \")]),_vm._v(\" \"),_c('v-spacer')],1),_vm._v(\" \"),_c('v-card-text',[_c('div',{staticClass:\"pa-3\"},[_c('v-row',{staticClass:\"my-2\"},[_vm._v(\" Select a download option \")]),_vm._v(\" \"),_c('v-row',[_c('v-col',[_c('div',{staticClass:\"px-2\"},[_c('v-btn',{attrs:{\"block\":\"\",\"data-test\":\"searchGithub\",\"color\":\"primary\",\"disabled\":_vm.disableSearch},on:{\"click\":_vm.searchGithub}},[_vm._v(\"\\n Github\\n \"),_c('v-icon',{attrs:{\"right\":\"\",\"dark\":\"\"}},[_vm._v(\" mdi-github \")])],1)],1)])],1),_vm._v(\" \"),_c('v-row',{staticClass:\"mt-5\"},[_vm._v(\" Community Gems \")]),_vm._v(\" \"),(_vm.listData.length < 1)?_c('div',{staticClass:\"mt-4\"},[_c('v-row',{staticClass:\"mx-2\"},[_c('span',[_vm._v(\" I’m sorry, Dave. No gems available.... \")])])],1):_c('div',{staticClass:\"mt-4\"},_vm._l((_vm.listData),function(data,index){return _c('div',{key:index},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(data.name))])],1),_vm._v(\" \"),_c('v-list-item-icon',[(_vm.activeDownload)?_c('div',[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"primary\"}})],1):_c('div',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-icon',_vm._g(_vm._b({attrs:{\"disabled\":_vm.activeDownload},on:{\"click\":function($event){return _vm.downloadGem(data)}}},'v-icon',attrs,false),on),[_vm._v(\"\\n mdi-cloud-download\\n \")])]}}],null,true)},[_vm._v(\" \"),_c('span',[_vm._v(\"Download Gem\")])])],1)])],1),_vm._v(\" \"),(index < _vm.listData.length - 1)?_c('v-divider',{key:index}):_vm._e()],1)}),0)],1)])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DownloadDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DownloadDialog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DownloadDialog.vue?vue&type=template&id=5f1d58fe\"\nimport script from \"./DownloadDialog.vue?vue&type=script&lang=js\"\nexport * from \"./DownloadDialog.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","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PackagesTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PackagesTab.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./PackagesTab.vue?vue&type=template&id=60e13575&scoped=true\"\nimport script from \"./PackagesTab.vue?vue&type=script&lang=js\"\nexport * from \"./PackagesTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./PackagesTab.vue?vue&type=style&index=0&id=60e13575&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 \"60e13575\",\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-subheader[data-v-60e13575]{font-size:1rem}.list[data-v-60e13575]{background-color:var(--color-background-surface-default)!important}`, \"\"]);\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!./PackagesTab.vue?vue&type=style&index=0&id=60e13575&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(\"497748a7\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["request","async","method","url","data","params","headers","noAuth","noScope","onUploadProgress","refreshed","OpenC3Auth","updateToken","defaultMinValidity","setTokens","error","login","localStorage","openc3Token","window","openc3Scope","axios","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","path","put","post","delete","vueInstance","Vue","axiosInstance","create","baseURL","location","origin","timeout","interceptors","response","use","_error$response","_error$response2","_error$response3","_error$response4","_error$response5","status","then","config","includes","toString","Promise","reject","body","statusText","message","exception","class","_error$response6","$notify","serious","title","render","_vm","this","_c","_self","attrs","width","model","value","show","callback","$$v","expression","_v","_s","staticClass","scopedSlots","_u","key","fn","on","_g","_b","download","staticStyle","text","$event","staticRenderFns","props","Boolean","String","computed","set","$emit","methods","blob","Blob","type","link","document","createElement","href","URL","createObjectURL","setAttribute","click","component","ref","files","progress","length","loadingPackage","upload","proxy","alertType","showAlert","alert","Object","keys","processes","_l","process","name","state","toLowerCase","domProps","process_type","detail","formatDate","updated_at","showOutput","_e","gems","gem","index","deletePackage","python","pkg","showDownloadDialog","processOutput","showProcessOutput","disableSearch","searchGithub","listData","activeDownload","downloadGem","expanded","parseGithub","parseRuby","gemRegEx","tree","filter","f","exec","map","getResponse","setTimeout","remove","components","DownloadDialog","SimpleTextDialog","mounted","update","updateProcesses","output","Api","ruby","nanoSecs","format","toDate","parseInt","self","promises","file","formData","FormData","append","progressEvent","percentCompleted","Math","round","loaded","total","all","responses","catch","$dialog","confirm","okText","cancelText","dialog","___CSS_LOADER_EXPORT___","push","module","id","content","__esModule","default","locals","exports","add"],"sourceRoot":""}
data/tools/admin/js/25.js CHANGED
@@ -1,2 +1,2 @@
1
- (self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[25],{2795:(e,s,t)=>{"use strict";t.d(s,{A:()=>i});var a=t(2673);const o=async function(e,s,{data:t,params:o={},headers:n,noAuth:r=!1,noScope:i=!1}={}){if(!r){try{let e=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);e&&OpenC3Auth.setTokens()}catch(d){OpenC3Auth.login()}n["Authorization"]=localStorage.openc3Token}return i||o["scope"]||(o["scope"]=window.openc3Scope),(0,a.A)({method:e,url:s,data:t,params:o,headers:n})},n={Accept:"application/json"},r={...n,"Content-Type":"application/json"},i={get:function(e,{params:s,headers:t=n,noScope:a,noAuth:r}={}){return o("get",e,{params:s,headers:t,noScope:a,noAuth:r})},put:function(e,{data:s,params:t,headers:a=r,noScope:n,noAuth:i}={}){return o("put",e,{data:s,params:t,headers:a,noScope:n,noAuth:i})},post:function(e,{data:s,params:t,headers:a=r,noScope:n,noAuth:i}={}){return o("post",e,{data:s,params:t,headers:a,noScope:n,noAuth:i})},delete:function(e,{params:s,headers:t=n,noScope:a,noAuth:r}={}){return o("delete",e,{params:s,headers:t,noScope:a,noAuth:r})}}},2673:(e,s,t)=>{"use strict";t.d(s,{A:()=>i});var a=t(4625),o=t(1649);const n=new o["default"],r=a.A.create({baseURL:location.origin,timeout:6e4,params:{}});r.interceptors.response.use((e=>e),(e=>{if(e.response){var s,t,a,o,r;if(401===e.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(e){e&&OpenC3Auth.setTokens()})),e.response.config.headers["Ignore-Errors"]&&e.response.config.headers["Ignore-Errors"].includes(e.response.status.toString()))return Promise.reject(e);let d=`HTTP ${e.response.status} - `;if(null!==(s=e.response)&&void 0!==s&&s.statusText&&(d+=`${e.response.statusText} `),null!==(t=e.response)&&void 0!==t&&null!==(t=t.config)&&void 0!==t&&t.data&&(d+=`${e.response.config.data} `),null!==(a=e.response)&&void 0!==a&&null!==(a=a.data)&&void 0!==a&&a.message)d+=`${e.response.data.message}`;else if(null!==(o=e.response)&&void 0!==o&&null!==(o=o.data)&&void 0!==o&&o.exception)d+=`${e.response.data.exception}`;else if(null!==(r=e.response)&&void 0!==r&&null!==(r=r.data)&&void 0!==r&&null!==(r=r.error)&&void 0!==r&&r.message)e.response.data.error.class&&(d+=`${e.response.data.error.class} `),d+=`${e.response.data.error.message}`;else{var i;d+=`${null===(i=e.response)||void 0===i?void 0:i.data}`}throw n.$notify&&n.$notify.serious({title:"Network error",body:d}),e}throw e}));const i=r},8025:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>p});var a=function(){var e=this,s=e._self._c;return s("div",[s("v-card",[s("v-card-title",[e._v(" Send Raw Redis Commands ")]),e._v(" "),s("v-card-subtitle",[e._v("\n THIS IS DANGEROUS. This allows you to interact directly with the\n underlying Redis database, making it easy to modify or delete data.\n "),s("br"),s("br"),e._v("\n Enter commands like you would at the Redis cli prompt:\n "),s("code",[e._v("ping")]),e._v(" or\n "),s("code",[e._v("hget openc3__settings version")])]),e._v(" "),s("v-card-text",{staticClass:"pb-0 ml-2"},[s("v-text-field",{staticClass:"monospace",attrs:{label:"Redis command"},on:{keydown:e.commandKeydown},model:{value:e.redisCommandText,callback:function(s){e.redisCommandText=s},expression:"redisCommandText"}}),e._v(" "),e.redisResponse?s("span",{staticClass:"monospace"},[e._v("\n Response: "+e._s(e.redisResponse)+"\n ")]):e._e()],1),e._v(" "),s("v-card-actions",[s("v-btn",{staticClass:"ml-2 mr-3",attrs:{disabled:!e.redisCommandText.length,color:"success",text:""},on:{click:e.executeRaw}},[e._v("\n Execute\n ")]),e._v(" "),s("v-radio-group",{staticClass:"mt-0",attrs:{row:"","hide-details":""},model:{value:e.redisEndpoint,callback:function(s){e.redisEndpoint=s},expression:"redisEndpoint"}},[s("v-radio",{attrs:{label:"Persistent",value:"/openc3-api/redis/exec","data-test":"persistent-radio"}}),e._v(" "),s("v-radio",{attrs:{label:"Ephemeral",value:"/openc3-api/redis/exec?ephemeral=1","data-test":"ephemeral-radio"}})],1)],1),e._v(" "),s("v-data-table",{staticClass:"monospace",attrs:{headers:e.headers,items:e.commands,"item-class":"monospace","calculate-widths":"","disable-pagination":"","hide-default-footer":"",dense:"",height:"45vh"}})],1)],1)},o=[],n=(t(7534),t(2795));const r={data(){return{redisCommandText:"",redisResponse:null,redisEndpoint:"/openc3-api/redis/exec",headers:[{text:"Redis",value:"redis",width:150},{text:"Command",value:"command"},{text:"Response",value:"response"}],commands:[]}},methods:{commandKeydown:function(e){"Enter"===e.key&&this.executeRaw()},executeRaw:function(){this.redisResponse=null,n.A.post(this.redisEndpoint,{data:this.redisCommandText,headers:{Accept:"application/json","Content-Type":"plain/text"}}).then((e=>{this.redisResponse=e.data.result;let s="Ephemeral";"/openc3-api/redis/exec"===this.redisEndpoint&&(s="Persistent"),this.commands.unshift({redis:s,command:this.redisCommandText,response:this.redisResponse})}))}}},i=r;t(1982);var d=t(2401),c=(0,d.A)(i,a,o,!1,null,"cebcf450",null);const p=c.exports},6726:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>d});var a=t(6758),o=t.n(a),n=t(935),r=t.n(n),i=r()(o());i.push([e.id,".monospace[data-v-cebcf450]{font-family:monospace;font-size:20px}",""]);const d=i},1982:(e,s,t)=>{var a=t(6726);a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[e.id,a,""]]),a.locals&&(e.exports=a.locals);var o=t(4825).A;o("7049c74e",a,!0,{sourceMap:!1,shadowMode:!1})}}]);
1
+ (self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[25],{2795:(e,s,o)=>{"use strict";o.d(s,{A:()=>d});var t=o(2673);const a=async function(e,s,{data:o,params:a={},headers:n,noAuth:r=!1,noScope:d=!1,onUploadProgress:i={}}={}){if(!r){try{let e=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);e&&OpenC3Auth.setTokens()}catch(p){OpenC3Auth.login()}n["Authorization"]=localStorage.openc3Token}return d||a["scope"]||(a["scope"]=window.openc3Scope),(0,t.A)({method:e,url:s,data:o,params:a,headers:n,onUploadProgress:i})},n={Accept:"application/json"},r={...n,"Content-Type":"application/json"},d={get:function(e,{params:s,headers:o=n,noScope:t,noAuth:r,onUploadProgress:d}={}){return a("get",e,{params:s,headers:o,noScope:t,noAuth:r,onUploadProgress:d})},put:function(e,{data:s,params:o,headers:t=r,noScope:n,noAuth:d,onUploadProgress:i}={}){return a("put",e,{data:s,params:o,headers:t,noScope:n,noAuth:d,onUploadProgress:i})},post:function(e,{data:s,params:o,headers:t=r,noScope:n,noAuth:d,onUploadProgress:i}={}){return a("post",e,{data:s,params:o,headers:t,noScope:n,noAuth:d,onUploadProgress:i})},delete:function(e,{params:s,headers:o=n,noScope:t,noAuth:r,onUploadProgress:d}={}){return a("delete",e,{params:s,headers:o,noScope:t,noAuth:r,onUploadProgress:d})}}},2673:(e,s,o)=>{"use strict";o.d(s,{A:()=>d});var t=o(3816),a=o(1649);const n=new a["default"],r=t.A.create({baseURL:location.origin,timeout:6e4,params:{}});r.interceptors.response.use((e=>e),(e=>{if(e.response){var s,o,t,a,r;if(401===e.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(e){e&&OpenC3Auth.setTokens()})),e.response.config.headers["Ignore-Errors"]&&e.response.config.headers["Ignore-Errors"].includes(e.response.status.toString()))return Promise.reject(e);let i=`HTTP ${e.response.status} - `;if(null!==(s=e.response)&&void 0!==s&&s.statusText&&(i+=`${e.response.statusText} `),null!==(o=e.response)&&void 0!==o&&null!==(o=o.config)&&void 0!==o&&o.data&&(i+=`${e.response.config.data} `),null!==(t=e.response)&&void 0!==t&&null!==(t=t.data)&&void 0!==t&&t.message)i+=`${e.response.data.message}`;else if(null!==(a=e.response)&&void 0!==a&&null!==(a=a.data)&&void 0!==a&&a.exception)i+=`${e.response.data.exception}`;else if(null!==(r=e.response)&&void 0!==r&&null!==(r=r.data)&&void 0!==r&&null!==(r=r.error)&&void 0!==r&&r.message)e.response.data.error.class&&(i+=`${e.response.data.error.class} `),i+=`${e.response.data.error.message}`;else{var d;i+=`${null===(d=e.response)||void 0===d?void 0:d.data}`}throw n.$notify&&n.$notify.serious({title:"Network error",body:i}),e}throw e}));const d=r},8025:(e,s,o)=>{"use strict";o.r(s),o.d(s,{default:()=>l});var t=function(){var e=this,s=e._self._c;return s("div",[s("v-card",[s("v-card-title",[e._v(" Send Raw Redis Commands ")]),e._v(" "),s("v-card-subtitle",[e._v("\n THIS IS DANGEROUS. This allows you to interact directly with the\n underlying Redis database, making it easy to modify or delete data.\n "),s("br"),s("br"),e._v("\n Enter commands like you would at the Redis cli prompt:\n "),s("code",[e._v("ping")]),e._v(" or\n "),s("code",[e._v("hget openc3__settings version")])]),e._v(" "),s("v-card-text",{staticClass:"pb-0 ml-2"},[s("v-text-field",{staticClass:"monospace",attrs:{label:"Redis command"},on:{keydown:e.commandKeydown},model:{value:e.redisCommandText,callback:function(s){e.redisCommandText=s},expression:"redisCommandText"}}),e._v(" "),e.redisResponse?s("span",{staticClass:"monospace"},[e._v("\n Response: "+e._s(e.redisResponse)+"\n ")]):e._e()],1),e._v(" "),s("v-card-actions",[s("v-btn",{staticClass:"ml-2 mr-3",attrs:{disabled:!e.redisCommandText.length,color:"success",text:""},on:{click:e.executeRaw}},[e._v("\n Execute\n ")]),e._v(" "),s("v-radio-group",{staticClass:"mt-0",attrs:{row:"","hide-details":""},model:{value:e.redisEndpoint,callback:function(s){e.redisEndpoint=s},expression:"redisEndpoint"}},[s("v-radio",{attrs:{label:"Persistent",value:"/openc3-api/redis/exec","data-test":"persistent-radio"}}),e._v(" "),s("v-radio",{attrs:{label:"Ephemeral",value:"/openc3-api/redis/exec?ephemeral=1","data-test":"ephemeral-radio"}})],1)],1),e._v(" "),s("v-data-table",{staticClass:"monospace",attrs:{headers:e.headers,items:e.commands,"item-class":"monospace","calculate-widths":"","disable-pagination":"","hide-default-footer":"",dense:"",height:"45vh"}})],1)],1)},a=[],n=(o(7534),o(2795));const r={data(){return{redisCommandText:"",redisResponse:null,redisEndpoint:"/openc3-api/redis/exec",headers:[{text:"Redis",value:"redis",width:150},{text:"Command",value:"command"},{text:"Response",value:"response"}],commands:[]}},methods:{commandKeydown:function(e){"Enter"===e.key&&this.executeRaw()},executeRaw:function(){this.redisResponse=null,n.A.post(this.redisEndpoint,{data:this.redisCommandText,headers:{Accept:"application/json","Content-Type":"plain/text"}}).then((e=>{this.redisResponse=e.data.result;let s="Ephemeral";"/openc3-api/redis/exec"===this.redisEndpoint&&(s="Persistent"),this.commands.unshift({redis:s,command:this.redisCommandText,response:this.redisResponse})}))}}},d=r;o(1982);var i=o(2401),p=(0,i.A)(d,t,a,!1,null,"cebcf450",null);const l=p.exports},6726:(e,s,o)=>{"use strict";o.r(s),o.d(s,{default:()=>i});var t=o(6758),a=o.n(t),n=o(935),r=o.n(n),d=r()(a());d.push([e.id,".monospace[data-v-cebcf450]{font-family:monospace;font-size:20px}",""]);const i=d},1982:(e,s,o)=>{var t=o(6726);t.__esModule&&(t=t.default),"string"===typeof t&&(t=[[e.id,t,""]]),t.locals&&(e.exports=t.locals);var a=o(4825).A;a("7049c74e",t,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
2
  //# sourceMappingURL=25.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"js/25.js","mappings":"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","sources":["webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/api.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/axios.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?6315","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?5bcd","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?51ab","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?6d40"],"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# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport axios from './axios.js'\n\nconst request = async function (\n method,\n url,\n { data, params = {}, headers, noAuth = false, noScope = false } = {}\n) {\n if (!noAuth) {\n try {\n let refreshed = await OpenC3Auth.updateToken(\n OpenC3Auth.defaultMinValidity\n )\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n } catch (error) {\n OpenC3Auth.login()\n }\n headers['Authorization'] = localStorage.openc3Token\n }\n if (!noScope && !params['scope']) {\n params['scope'] = window.openc3Scope\n }\n return axios({\n method,\n url,\n data,\n params,\n headers,\n })\n}\n\nconst acceptOnlyDefaultHeaders = {\n Accept: 'application/json',\n}\n\nconst fullDefaultHeaders = {\n ...acceptOnlyDefaultHeaders,\n 'Content-Type': 'application/json',\n}\n\nexport default {\n get: function (\n path,\n { params, headers = acceptOnlyDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('get', path, { params, headers, noScope, noAuth })\n },\n\n put: function (\n path,\n { data, params, headers = fullDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('put', path, { data, params, headers, noScope, noAuth })\n },\n\n post: function (\n path,\n { data, params, headers = fullDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('post', path, { data, params, headers, noScope, noAuth })\n },\n\n delete: function (\n path,\n { params, headers = acceptOnlyDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('delete', path, { params, headers, noScope, noAuth })\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# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\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).then(\n function (refreshed) {\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n },\n )\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 // headers: {\n // 'Ignore-Errors': '404',\n // },\n // })\n if (\n error.response.config.headers['Ignore-Errors'] &&\n error.response.config.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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('v-card',[_c('v-card-title',[_vm._v(\" Send Raw Redis Commands \")]),_vm._v(\" \"),_c('v-card-subtitle',[_vm._v(\"\\n THIS IS DANGEROUS. This allows you to interact directly with the\\n underlying Redis database, making it easy to modify or delete data.\\n \"),_c('br'),_c('br'),_vm._v(\"\\n Enter commands like you would at the Redis cli prompt:\\n \"),_c('code',[_vm._v(\"ping\")]),_vm._v(\" or\\n \"),_c('code',[_vm._v(\"hget openc3__settings version\")])]),_vm._v(\" \"),_c('v-card-text',{staticClass:\"pb-0 ml-2\"},[_c('v-text-field',{staticClass:\"monospace\",attrs:{\"label\":\"Redis command\"},on:{\"keydown\":_vm.commandKeydown},model:{value:(_vm.redisCommandText),callback:function ($$v) {_vm.redisCommandText=$$v},expression:\"redisCommandText\"}}),_vm._v(\" \"),(_vm.redisResponse)?_c('span',{staticClass:\"monospace\"},[_vm._v(\"\\n Response: \"+_vm._s(_vm.redisResponse)+\"\\n \")]):_vm._e()],1),_vm._v(\" \"),_c('v-card-actions',[_c('v-btn',{staticClass:\"ml-2 mr-3\",attrs:{\"disabled\":!_vm.redisCommandText.length,\"color\":\"success\",\"text\":\"\"},on:{\"click\":_vm.executeRaw}},[_vm._v(\"\\n Execute\\n \")]),_vm._v(\" \"),_c('v-radio-group',{staticClass:\"mt-0\",attrs:{\"row\":\"\",\"hide-details\":\"\"},model:{value:(_vm.redisEndpoint),callback:function ($$v) {_vm.redisEndpoint=$$v},expression:\"redisEndpoint\"}},[_c('v-radio',{attrs:{\"label\":\"Persistent\",\"value\":\"/openc3-api/redis/exec\",\"data-test\":\"persistent-radio\"}}),_vm._v(\" \"),_c('v-radio',{attrs:{\"label\":\"Ephemeral\",\"value\":\"/openc3-api/redis/exec?ephemeral=1\",\"data-test\":\"ephemeral-radio\"}})],1)],1),_vm._v(\" \"),_c('v-data-table',{staticClass:\"monospace\",attrs:{\"headers\":_vm.headers,\"items\":_vm.commands,\"item-class\":\"monospace\",\"calculate-widths\":\"\",\"disable-pagination\":\"\",\"hide-default-footer\":\"\",\"dense\":\"\",\"height\":\"45vh\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RedisTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RedisTab.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./RedisTab.vue?vue&type=template&id=cebcf450&scoped=true\"\nimport script from \"./RedisTab.vue?vue&type=script&lang=js\"\nexport * from \"./RedisTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./RedisTab.vue?vue&type=style&index=0&id=cebcf450&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 \"cebcf450\",\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, `.monospace[data-v-cebcf450]{font-family:monospace;font-size:20px}`, \"\"]);\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!./RedisTab.vue?vue&type=style&index=0&id=cebcf450&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(\"7049c74e\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["request","async","method","url","data","params","headers","noAuth","noScope","refreshed","OpenC3Auth","updateToken","defaultMinValidity","setTokens","error","login","localStorage","openc3Token","window","openc3Scope","axios","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","path","put","post","delete","vueInstance","Vue","axiosInstance","create","baseURL","location","origin","timeout","interceptors","response","use","_error$response","_error$response2","_error$response3","_error$response4","_error$response5","status","then","config","includes","toString","Promise","reject","body","statusText","message","exception","class","_error$response6","$notify","serious","title","render","_vm","this","_c","_self","_v","staticClass","attrs","on","commandKeydown","model","value","redisCommandText","callback","$$v","expression","redisResponse","_s","_e","length","executeRaw","redisEndpoint","commands","staticRenderFns","text","width","methods","$event","key","Api","result","redis","unshift","command","component","___CSS_LOADER_EXPORT___","push","module","id","content","__esModule","default","locals","exports","add"],"sourceRoot":""}
1
+ {"version":3,"file":"js/25.js","mappings":"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","sources":["webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/api.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/axios.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?6315","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?5bcd","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?51ab","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/RedisTab.vue?6d40"],"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# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport axios from './axios.js'\n\nconst request = async function (\n method,\n url,\n {\n data,\n params = {},\n headers,\n noAuth = false,\n noScope = false,\n onUploadProgress = {},\n } = {}\n) {\n if (!noAuth) {\n try {\n let refreshed = await OpenC3Auth.updateToken(\n OpenC3Auth.defaultMinValidity\n )\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n } catch (error) {\n OpenC3Auth.login()\n }\n headers['Authorization'] = localStorage.openc3Token\n }\n if (!noScope && !params['scope']) {\n params['scope'] = window.openc3Scope\n }\n return axios({\n method,\n url,\n data,\n params,\n headers,\n onUploadProgress,\n })\n}\n\nconst acceptOnlyDefaultHeaders = {\n Accept: 'application/json',\n}\n\nconst fullDefaultHeaders = {\n ...acceptOnlyDefaultHeaders,\n 'Content-Type': 'application/json',\n}\n\nexport default {\n get: function (\n path,\n {\n params,\n headers = acceptOnlyDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('get', path, {\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n put: function (\n path,\n {\n data,\n params,\n headers = fullDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('put', path, {\n data,\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n post: function (\n path,\n {\n data,\n params,\n headers = fullDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('post', path, {\n data,\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n delete: function (\n path,\n {\n params,\n headers = acceptOnlyDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('delete', path, {\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\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# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\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).then(\n function (refreshed) {\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n },\n )\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 // headers: {\n // 'Ignore-Errors': '404',\n // },\n // })\n if (\n error.response.config.headers['Ignore-Errors'] &&\n error.response.config.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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('v-card',[_c('v-card-title',[_vm._v(\" Send Raw Redis Commands \")]),_vm._v(\" \"),_c('v-card-subtitle',[_vm._v(\"\\n THIS IS DANGEROUS. This allows you to interact directly with the\\n underlying Redis database, making it easy to modify or delete data.\\n \"),_c('br'),_c('br'),_vm._v(\"\\n Enter commands like you would at the Redis cli prompt:\\n \"),_c('code',[_vm._v(\"ping\")]),_vm._v(\" or\\n \"),_c('code',[_vm._v(\"hget openc3__settings version\")])]),_vm._v(\" \"),_c('v-card-text',{staticClass:\"pb-0 ml-2\"},[_c('v-text-field',{staticClass:\"monospace\",attrs:{\"label\":\"Redis command\"},on:{\"keydown\":_vm.commandKeydown},model:{value:(_vm.redisCommandText),callback:function ($$v) {_vm.redisCommandText=$$v},expression:\"redisCommandText\"}}),_vm._v(\" \"),(_vm.redisResponse)?_c('span',{staticClass:\"monospace\"},[_vm._v(\"\\n Response: \"+_vm._s(_vm.redisResponse)+\"\\n \")]):_vm._e()],1),_vm._v(\" \"),_c('v-card-actions',[_c('v-btn',{staticClass:\"ml-2 mr-3\",attrs:{\"disabled\":!_vm.redisCommandText.length,\"color\":\"success\",\"text\":\"\"},on:{\"click\":_vm.executeRaw}},[_vm._v(\"\\n Execute\\n \")]),_vm._v(\" \"),_c('v-radio-group',{staticClass:\"mt-0\",attrs:{\"row\":\"\",\"hide-details\":\"\"},model:{value:(_vm.redisEndpoint),callback:function ($$v) {_vm.redisEndpoint=$$v},expression:\"redisEndpoint\"}},[_c('v-radio',{attrs:{\"label\":\"Persistent\",\"value\":\"/openc3-api/redis/exec\",\"data-test\":\"persistent-radio\"}}),_vm._v(\" \"),_c('v-radio',{attrs:{\"label\":\"Ephemeral\",\"value\":\"/openc3-api/redis/exec?ephemeral=1\",\"data-test\":\"ephemeral-radio\"}})],1)],1),_vm._v(\" \"),_c('v-data-table',{staticClass:\"monospace\",attrs:{\"headers\":_vm.headers,\"items\":_vm.commands,\"item-class\":\"monospace\",\"calculate-widths\":\"\",\"disable-pagination\":\"\",\"hide-default-footer\":\"\",\"dense\":\"\",\"height\":\"45vh\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RedisTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RedisTab.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./RedisTab.vue?vue&type=template&id=cebcf450&scoped=true\"\nimport script from \"./RedisTab.vue?vue&type=script&lang=js\"\nexport * from \"./RedisTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./RedisTab.vue?vue&type=style&index=0&id=cebcf450&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 \"cebcf450\",\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, `.monospace[data-v-cebcf450]{font-family:monospace;font-size:20px}`, \"\"]);\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!./RedisTab.vue?vue&type=style&index=0&id=cebcf450&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(\"7049c74e\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["request","async","method","url","data","params","headers","noAuth","noScope","onUploadProgress","refreshed","OpenC3Auth","updateToken","defaultMinValidity","setTokens","error","login","localStorage","openc3Token","window","openc3Scope","axios","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","path","put","post","delete","vueInstance","Vue","axiosInstance","create","baseURL","location","origin","timeout","interceptors","response","use","_error$response","_error$response2","_error$response3","_error$response4","_error$response5","status","then","config","includes","toString","Promise","reject","body","statusText","message","exception","class","_error$response6","$notify","serious","title","render","_vm","this","_c","_self","_v","staticClass","attrs","on","commandKeydown","model","value","redisCommandText","callback","$$v","expression","redisResponse","_s","_e","length","executeRaw","redisEndpoint","commands","staticRenderFns","text","width","methods","$event","key","Api","result","redis","unshift","command","component","___CSS_LOADER_EXPORT___","push","module","id","content","__esModule","default","locals","exports","add"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- "use strict";(self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[383],{2673:(e,t,s)=>{s.d(t,{A:()=>i});var r=s(4625),n=s(1649);const o=new n["default"],a=r.A.create({baseURL:location.origin,timeout:6e4,params:{}});a.interceptors.response.use((e=>e),(e=>{if(e.response){var t,s,r,n,a;if(401===e.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(e){e&&OpenC3Auth.setTokens()})),e.response.config.headers["Ignore-Errors"]&&e.response.config.headers["Ignore-Errors"].includes(e.response.status.toString()))return Promise.reject(e);let l=`HTTP ${e.response.status} - `;if(null!==(t=e.response)&&void 0!==t&&t.statusText&&(l+=`${e.response.statusText} `),null!==(s=e.response)&&void 0!==s&&null!==(s=s.config)&&void 0!==s&&s.data&&(l+=`${e.response.config.data} `),null!==(r=e.response)&&void 0!==r&&null!==(r=r.data)&&void 0!==r&&r.message)l+=`${e.response.data.message}`;else if(null!==(n=e.response)&&void 0!==n&&null!==(n=n.data)&&void 0!==n&&n.exception)l+=`${e.response.data.exception}`;else if(null!==(a=e.response)&&void 0!==a&&null!==(a=a.data)&&void 0!==a&&null!==(a=a.error)&&void 0!==a&&a.message)e.response.data.error.class&&(l+=`${e.response.data.error.class} `),l+=`${e.response.data.error.message}`;else{var i;l+=`${null===(i=e.response)||void 0===i?void 0:i.data}`}throw o.$notify&&o.$notify.serious({title:"Network error",body:l}),e}throw e}));const i=a},7699:(e,t,s)=>{s.r(t),s.d(t,{default:()=>U});var r=function(){var e=this,t=e._self._c;return t("div",[t("v-card",[t("v-card-title",[e._v(" Reset suppressed warnings ")]),e._v(" "),t("v-card-subtitle",[e._v('\n This resets "don\'t show this again" dialogs on this browser\n ')]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[e.suppressedWarnings.length?[t("v-checkbox",{staticClass:"mt-0",attrs:{label:"Select all","data-test":"select-all-suppressed-warnings"},model:{value:e.selectAllSuppressedWarnings,callback:function(t){e.selectAllSuppressedWarnings=t},expression:"selectAllSuppressedWarnings"}}),e._v(" "),e._l(e.suppressedWarnings,(function(s){return t("v-checkbox",{key:s.key,staticClass:"mt-0",attrs:{label:s.text,value:s.key,dense:""},model:{value:e.selectedSuppressedWarnings,callback:function(t){e.selectedSuppressedWarnings=t},expression:"selectedSuppressedWarnings"}})}))]:[e._v(" No warnings to reset ")]],2),e._v(" "),t("v-card-actions",[t("v-btn",{staticClass:"ml-2",attrs:{disabled:!e.selectedSuppressedWarnings.length,color:"warning",text:"","data-test":"reset-suppressed-warnings"},on:{click:e.resetSuppressedWarnings}},[e._v("\n Reset\n ")])],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Clear default configs ")]),e._v(" "),t("v-card-subtitle",[e._v("\n This clears the default tool configs on this browser\n ")]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[e.lastConfigs.length?[t("v-checkbox",{staticClass:"mt-0",attrs:{label:"Select all","data-test":"select-all-default-configs"},model:{value:e.selectAllLastConfigs,callback:function(t){e.selectAllLastConfigs=t},expression:"selectAllLastConfigs"}}),e._v(" "),e._l(e.lastConfigs,(function(s){return t("v-checkbox",{key:s.key,staticClass:"mt-0",attrs:{label:s.text,value:s.key,dense:""},model:{value:e.selectedLastConfigs,callback:function(t){e.selectedLastConfigs=t},expression:"selectedLastConfigs"}})}))]:[e._v(" No configs to clear ")]],2),e._v(" "),t("v-card-actions",[t("v-btn",{staticClass:"ml-2",attrs:{disabled:!e.selectedLastConfigs.length,color:"warning",text:"","data-test":"clear-default-configs"},on:{click:e.clearLastConfigs}},[e._v("\n Clear\n ")])],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("astro-settings"),e._v(" "),t("v-divider"),e._v(" "),t("classification-banner-settings"),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Source code URL ")]),e._v(" "),t("v-card-subtitle",[e._v('\n This sets the URL for the "Source" link in the footer. This is required\n under the AGPL license.\n ')]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[t("v-text-field",{attrs:{label:"Source URL","data-test":"source-url"},model:{value:e.sourceUrl,callback:function(t){e.sourceUrl=t},expression:"sourceUrl"}})],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-source-url"},on:{click:e.saveSourceUrl}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.sourceUrlErrorSaving,callback:function(t){e.sourceUrlErrorSaving=t},expression:"sourceUrlErrorSaving"}},[e._v("\n Error saving\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.sourceUrlSuccessSaving,callback:function(t){e.sourceUrlSuccessSaving=t},expression:"sourceUrlSuccessSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Rubygems URL ")]),e._v(" "),t("v-card-subtitle",[e._v("\n This sets the URL for installing dependency rubygems. Also used for\n rubygem discovery.\n ")]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[t("v-text-field",{attrs:{label:"Rubygems URL","data-test":"rubygems-url"},model:{value:e.rubygemsUrl,callback:function(t){e.rubygemsUrl=t},expression:"rubygemsUrl"}})],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-rubygems-url"},on:{click:e.saveRubygemsUrl}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.rubygemsUrlErrorSaving,callback:function(t){e.rubygemsUrlErrorSaving=t},expression:"rubygemsUrlErrorSaving"}},[e._v("\n Error saving\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.rubygemsUrlSuccessSaving,callback:function(t){e.rubygemsUrlSuccessSaving=t},expression:"rubygemsUrlSuccessSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Pypi URL ")]),e._v(" "),t("v-card-subtitle",[e._v("\n This sets the URL for installing dependency python packages. Also used\n for package discovery.\n ")]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[t("v-text-field",{attrs:{label:"Pypi URL","data-test":"pypi-url"},model:{value:e.pypiUrl,callback:function(t){e.pypiUrl=t},expression:"pypiUrl"}})],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-pypi-url"},on:{click:e.savePypiUrl}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.pypiUrlErrorSaving,callback:function(t){e.pypiUrlErrorSaving=t},expression:"pypiUrlErrorSaving"}},[e._v("\n Error saving\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.pypiUrlSuccessSaving,callback:function(t){e.pypiUrlSuccessSaving=t},expression:"pypiUrlSuccessSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1)],1)},n=[],o=(s(4293),s(8715),s(7010),s(814)),a=(s(7107),s(2482),s(7067),s(4147),s(2682),s(785),s(8357),s(6196),s(821),s(6554),s(8472),s(7404),s(5803),s(3912),s(2673));class i{constructor(){(0,o.A)(this,"id",1)}async exec(e,t,s={},r={},n=6e4){try{let e=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);e&&OpenC3Auth.setTokens()}catch(i){OpenC3Auth.login()}this.id=this.id+1;try{s["scope"]=window.openc3Scope;const o=await a.A.post("/openc3-api/api",{jsonrpc:"2.0",method:e,params:t,id:this.id,keyword_params:s},{headers:{Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc",...r},timeout:n});return o.data.result}catch(i){var o=new Error;throw i.response?(o.name=i.response.data.error.data.class,o.message=i.response.data.error.data.message):i.request?(o.name="Request error",o.message="Request error, no response received"):o.name="Unknown error",o}}decode_openc3_type(e){if(null!==e&&"object"===typeof 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}encode_openc3_type(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}ensure_offline_access(){this.offline_access_needed().then((e=>{e&&(localStorage.openc3OfflineToken?this.set_offline_access(localStorage.openc3OfflineToken).then((()=>{delete localStorage.openc3OfflineToken})):OpenC3Auth.getOfflineAccess())}))}offline_access_needed(){return this.exec("offline_access_needed",[])}set_offline_access(e){return this.exec("set_offline_access",[e])}get_all_interface_info(){return this.exec("get_all_interface_info",[])}map_target_to_interface(e,t){return this.exec("map_target_to_interface",[e,t])}connect_interface(e,...t){return t.length>0?this.exec("connect_interface",[e,...t]):this.exec("connect_interface",[e])}disconnect_interface(e){return this.exec("disconnect_interface",[e])}interface_cmd(e,t,...s){return this.exec("interface_cmd",[e,t,...s])}get_all_router_info(){return this.exec("get_all_router_info",[])}connect_router(e){return this.exec("connect_router",[e])}disconnect_router(e){return this.exec("disconnect_router",[e])}get_target_interfaces(){return this.exec("get_target_interfaces",[])}get_all_target_info(){return this.exec("get_all_target_info",[])}get_tlm_cnts(e){return this.exec("get_tlm_cnts",[e])}get_item(e,t,s){return this.exec("get_item",[e,t,s])}get_param(e,t,s){return this.exec("get_param",[e,t,s])}get_parameter(e,t,s){return this.exec("get_parameter",[e,t,s])}get_limits_sets(){return this.exec("get_limits_sets",[])}get_limits_set(){return this.exec("get_limits_set",[])}set_limits_set(e){return this.exec("set_limits_set",[e])}get_target(e){return this.exec("get_target",[e])}get_target_names(){return this.exec("get_target_names",[])}get_target_list(){return this.exec("get_target_list",[])}get_tlm(e,t){return this.exec("get_tlm",[e,t])}get_telemetry(e,t){return this.exec("get_telemetry",[e,t])}get_all_tlm(e){return this.exec("get_all_tlm",[e])}get_all_telemetry(e){return this.exec("get_all_telemetry",[e])}get_all_tlm_names(e){return this.exec("get_all_tlm_names",[e])}get_all_telemetry_names(e){return this.exec("get_all_telemetry_names",[e])}async get_tlm_packet(e,t,s,r=30){const n=await this.exec("get_tlm_packet",[e,t],{type:s,stale_time:r});if(null!=n)for(var o=n.length,a=null,i=0;i<o;i++)a=this.decode_openc3_type(n[i][1]),null!==a&&(n[i][1]=a);return n}get_packet_derived_items(e,t){return this.exec("get_packet_derived_items",[e,t])}get_tlm_buffer(e,t){return this.exec("get_tlm_buffer",[e,t])}async get_tlm_values(e,t=30,s=null){let r={stale_time:t};null!==s&&(r["cache_timeout"]=s);const n=await this.exec("get_tlm_values",[e],r,{},1e4);for(var o=n[0].length,a=null,i=0;i<o;i++)a=this.decode_openc3_type(n[0][i]),null!==a&&(n[0][i]=a);return n}get_limits(e,t,s){return this.exec("get_limits",[e,t,s])}async tlm(e,t,s,r="CONVERTED"){let n=null;if(void 0===t)n=await this.exec("tlm",[e]);else if(void 0===s){if(!["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(t)){var o=new Error;throw o.name="TypeError",o.message=`Invalid data type ${t}. Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS.`,o}n=await this.exec("tlm",[e],{type:t})}else n=await this.exec("tlm",[e,t,s],{type:r});var a=this.decode_openc3_type(n);return null!==a&&(n=a),n}async inject_tlm(e,t,s=null,r="CONVERTED"){data=await this.exec("inject_tlm",[e,t,s],{type:r})}set_tlm(e,t,s,r){return this.exec("set_tlm",[e,t,s],{type:r})}override_tlm(e,t,s,r){return this.exec("override_tlm",[e,t,s],{type:r})}get_overrides(){return this.exec("get_overrides")}normalize_tlm(e,t,s,r){return this.exec("normalize_tlm",[e,t,s],{type:r})}get_all_cmds(e){return this.exec("get_all_cmds",[e])}get_all_commands(e){return this.exec("get_all_commands",[e])}get_all_cmd_names(e){return this.exec("get_all_cmd_names",[e])}get_all_command_names(e){return this.exec("get_all_command_names",[e])}get_cmd(e,t){return this.exec("get_cmd",[e,t])}get_command(e,t){return this.exec("get_command",[e,t])}get_cmd_cnts(e){return this.exec("get_cmd_cnts",[e])}get_cmd_value(e,t,s,r="CONVERTED"){return this.exec("get_cmd_value",[e,t,s,r])}get_cmd_buffer(e,t){return this.exec("get_cmd_buffer",[e,t])}_cmd(e,t,s,r,n){var o=null;for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(o=this.encode_openc3_type(r[a]),null!==o&&(r[a]=o));return this.exec(e,[t,s,r],{},n)}get_cmd_hazardous(e,t,s){return void 0===t?this.exec("get_cmd_hazardous",e):this._cmd("get_cmd_hazardous",e,t,s)}cmd(e,t,s,r={}){return void 0===t?this.exec("cmd",e,{},r):this._cmd("cmd",e,t,s,r)}cmd_no_range_check(e,t,s){return void 0===t?this.exec("cmd_no_range_check",e):this._cmd("cmd_no_range_check",e,t,s)}cmd_raw(e,t,s){return void 0===t?this.exec("cmd_raw",e):this._cmd("cmd_raw",e,t,s)}cmd_raw_no_range_check(e,t,s){return void 0===t?this.exec("cmd_raw_no_range_check",e):this._cmd("cmd_raw_no_range_check",e,t,s)}cmd_no_hazardous_check(e,t,s){return void 0===t?this.exec("cmd_no_hazardous_check",e):this._cmd("cmd_no_hazardous_check",e,t,s)}cmd_no_checks(e,t,s){return void 0===t?this.exec("cmd_no_checks",e):this._cmd("cmd_no_checks",e,t,s)}cmd_raw_no_hazardous_check(e,t,s){return void 0===t?this.exec("cmd_raw_no_hazardous_check",e):this._cmd("cmd_raw_no_hazardous_check",e,t,s)}cmd_raw_no_checks(e,t,s){return void 0===t?this.exec("cmd_raw_no_checks",e):this._cmd("cmd_raw_no_checks",e,t,s)}build_cmd(e,t,s){return void 0===t?this.exec("build_cmd",e):this._cmd("build_cmd",e,t,s)}build_command(e,t,s){return void 0===t?this.exec("build_command",e):this._cmd("build_command",e,t,s)}get_interface_names(){return this.exec("get_interface_names",[])}send_raw(e,t){return this.exec("send_raw",[e,t])}list_configs(e){return this.exec("list_configs",[e])}load_config(e,t){return this.exec("load_config",[e,t])}save_config(e,t,s){return this.exec("save_config",[e,t,s])}delete_config(e,t){return this.exec("delete_config",[e,t])}enable_limits(e,t,s){return this.exec("enable_limits",[e,t,s])}disable_limits(e,t,s){return this.exec("disable_limits",[e,t,s])}get_out_of_limits(){return this.exec("get_out_of_limits",[])}get_overall_limits_state(e){return this.exec("get_overall_limits_state",[e])}list_settings(){return this.exec("list_settings",[])}get_all_settings(){return this.exec("get_all_settings",[])}get_setting(e){return this.exec("get_setting",[e])}get_settings(e){return this.exec("get_settings",e)}set_setting(e,t){return this.exec("set_setting",[e,t])}save_setting(e,t){return this.exec("save_setting",[e,t])}get_metrics(){return this.exec("get_metrics",[])}async hashString(e){if(window.isSecureContext){const t=(new TextEncoder).encode(e),s=await crypto.subtle.digest("SHA-256",t),r=new Uint8Array(s);return Array.from(r).map((e=>e.toString(16).padStart(2,"0"))).join("")}}}var l=function(){var e=this,t=e._self._c;return t("v-card",[t("v-card-title",[e._v("Astro Settings")]),e._v(" "),t("v-card-text",{staticClass:"pb-0"},[t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorLoading,callback:function(t){e.errorLoading=t},expression:"errorLoading"}},[e._v("\n Error loading previous configuration due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-container",{staticClass:"pb-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-switch",{attrs:{label:"Hide Astro Clock","data-test":"hide-astro-clock"},model:{value:e.hideClock,callback:function(t){e.hideClock=t},expression:"hideClock"}})],1)],1)],1)],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-astro-settings"},on:{click:e.save}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorSaving,callback:function(t){e.errorSaving=t},expression:"errorSaving"}},[e._v("\n Error saving due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.successSaving,callback:function(t){e.successSaving=t},expression:"successSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1)},c=[];const u="astro",d={data(){return{api:null,errorLoading:!1,errorSaving:!1,errorText:"",successSaving:!1,hideClock:!1}},computed:{saveObj:function(){return JSON.stringify({hideClock:this.hideClock})}},created(){this.api=new i,this.load()},methods:{load:function(){this.api.get_setting(u).then((e=>{if(this.errorLoading=!1,e){const t=JSON.parse(e);this.hideClock=t.hideClock}})).catch((e=>{this.errorText=e,this.errorLoading=!0}))},save:function(){this.api.set_setting(u,this.saveObj).then((()=>{this.errorSaving=!1,this.successSaving=!0})).catch((e=>{this.errorText=e,this.errorSaving=!0}))}}},_=d;var g=s(2401),v=(0,g.A)(_,l,c,!1,null,null,null);const p=v.exports;var h=function(){var e=this,t=e._self._c;return t("v-card",[t("v-card-title",[e._v("Classification Banner Settings")]),e._v(" "),t("v-card-text",{staticClass:"pb-0"},[t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorLoading,callback:function(t){e.errorLoading=t},expression:"errorLoading"}},[e._v("\n Error loading previous configuration due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-container",{staticClass:"pb-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-text-field",{attrs:{label:"Text","data-test":"classification-banner-text"},model:{value:e.text,callback:function(t){e.text=t},expression:"text"}})],1)],1),e._v(" "),t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-select",{attrs:{label:"Background color",items:e.colors,"data-test":"classification-banner-background-color"},scopedSlots:e._u([e.selectedBackgroundColor?{key:"prepend-inner",fn:function(){return[t("v-icon",{attrs:{color:e.selectedBackgroundColor}},[e._v(" mdi-square ")])]},proxy:!0}:null,{key:"item",fn:function(s){return[s.item.value?t("v-icon",{staticClass:"pr-1",attrs:{color:s.item.value}},[e._v("\n mdi-square\n ")]):e._e(),e._v("\n "+e._s(s.item.text)+"\n ")]}}],null,!0),model:{value:e.selectedBackgroundColor,callback:function(t){e.selectedBackgroundColor=t},expression:"selectedBackgroundColor"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Custom background color",hint:e.customColorHint,disabled:!1!==e.selectedBackgroundColor,rules:[e.rules.customColor],"data-test":"classification-banner-custom-background-color"},scopedSlots:e._u([{key:"prepend-inner",fn:function(){return[t("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.selectedBackgroundColor,expression:"!selectedBackgroundColor"}],attrs:{color:e.customBackgroundColor}},[e._v("\n mdi-square\n ")])]},proxy:!0}]),model:{value:e.customBackgroundColor,callback:function(t){e.customBackgroundColor=t},expression:"customBackgroundColor"}})],1),e._v(" "),t("v-col",[t("v-select",{attrs:{label:"Font color",items:e.colors,"data-test":"classification-banner-font-color"},scopedSlots:e._u([e.selectedFontColor?{key:"prepend-inner",fn:function(){return[t("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.selectedFontColor,expression:"selectedFontColor"}],attrs:{color:e.selectedFontColor}},[e._v("\n mdi-square\n ")])]},proxy:!0}:null,{key:"item",fn:function(s){return[s.item.value?t("v-icon",{staticClass:"pr-1",attrs:{color:s.item.value}},[e._v("\n mdi-square\n ")]):e._e(),e._v("\n "+e._s(s.item.text)+"\n ")]}}],null,!0),model:{value:e.selectedFontColor,callback:function(t){e.selectedFontColor=t},expression:"selectedFontColor"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Custom font color",hint:e.customColorHint,disabled:!1!==e.selectedFontColor,rules:[e.rules.customColor],"data-test":"classification-banner-custom-font-color"},scopedSlots:e._u([{key:"prepend-inner",fn:function(){return[t("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.selectedFontColor,expression:"!selectedFontColor"}],attrs:{color:e.customFontColor}},[e._v("\n mdi-square\n ")])]},proxy:!0}]),model:{value:e.customFontColor,callback:function(t){e.customFontColor=t},expression:"customFontColor"}})],1)],1),e._v(" "),t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-switch",{attrs:{label:"Display top banner","data-test":"display-top-banner"},model:{value:e.displayTopBanner,callback:function(t){e.displayTopBanner=t},expression:"displayTopBanner"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Top height",disabled:!e.displayTopBanner,type:"number",suffix:"px","data-test":"classification-banner-top-height"},model:{value:e.topHeight,callback:function(t){e.topHeight=t},expression:"topHeight"}})],1),e._v(" "),t("v-col",[t("v-switch",{attrs:{label:"Display bottom banner","data-test":"display-bottom-banner"},model:{value:e.displayBottomBanner,callback:function(t){e.displayBottomBanner=t},expression:"displayBottomBanner"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Bottom height",disabled:!e.displayBottomBanner,type:"number",suffix:"px","data-test":"classification-banner-bottom-height"},model:{value:e.bottomHeight,callback:function(t){e.bottomHeight=t},expression:"bottomHeight"}})],1)],1)],1)],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{disabled:!e.formValid,color:"success",text:"","data-test":"save-classification-banner"},on:{click:e.save}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorSaving,callback:function(t){e.errorSaving=t},expression:"errorSaving"}},[e._v("\n Error saving due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.successSaving,callback:function(t){e.successSaving=t},expression:"successSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1)},m=[];const f="classification_banner",x={data(){return{api:null,errorLoading:!1,errorSaving:!1,errorText:"",successSaving:!1,text:"",displayTopBanner:!1,displayBottomBanner:!1,topHeight:0,bottomHeight:0,selectedBackgroundColor:"red",customBackgroundColor:"",selectedFontColor:"white",customFontColor:"",customColorHint:"Enter a 3 or 6-digit hex color code",colors:[{text:"Yellow",value:"yellow"},{text:"Orange",value:"orange"},{text:"Red",value:"red"},{text:"Purple",value:"purple"},{text:"Blue",value:"blue"},{text:"Green",value:"green"},{text:"Black",value:"black"},{text:"White",value:"white"},{text:"Custom",value:!1}],rules:{customColor:e=>/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(e)||this.customColorHint}}},computed:{saveObj:function(){return JSON.stringify({text:this.text,fontColor:this.selectedFontColor||this.customFontColor,backgroundColor:this.selectedBackgroundColor||this.customBackgroundColor,topHeight:this.displayTopBanner?this.topHeight:0,bottomHeight:this.displayBottomBanner?this.bottomHeight:0})},formValid:function(){return(this.selectedFontColor||!0===this.rules.customColor(this.customFontColor))&&(this.selectedBackgroundColor||!0===this.rules.customColor(this.customBackgroundColor))}},watch:{displayTopBanner:function(e){this.topHeight=e?20:0},displayBottomBanner:function(e){this.bottomHeight=e?20:0},customFontColor:function(e){e&&e.length&&!e.startsWith("#")&&(this.customFontColor=`#${e}`)},customBackgroundColor:function(e){e&&e.length&&!e.startsWith("#")&&(this.customBackgroundColor=`#${e}`)}},created(){this.api=new i,this.load()},methods:{load:function(){this.api.get_setting(f).then((e=>{if(this.errorLoading=!1,e){const t=JSON.parse(e);this.text=t.text,this.topHeight=t.topHeight,this.bottomHeight=t.bottomHeight,this.displayTopBanner=0!==t.topHeight,this.displayBottomBanner=0!==t.bottomHeight,t.backgroundColor&&t.backgroundColor.startsWith("#")?(this.customBackgroundColor=t.backgroundColor,this.selectedBackgroundColor=!1):this.selectedBackgroundColor=t.backgroundColor,t.fontColor&&t.fontColor.startsWith("#")?(this.customFontColor=t.fontColor,this.selectedFontColor=!1):this.selectedFontColor=t.fontColor}})).catch((e=>{this.errorText=e,this.errorLoading=!0}))},save:function(){this.api.set_setting(f,this.saveObj).then((()=>{this.errorSaving=!1,this.successSaving=!0})).catch((e=>{this.errorText=e,this.errorSaving=!0}))}}},b=x;var y=(0,g.A)(b,h,m,!1,null,null,null);const C=y.exports,S={components:{AstroSettings:p,ClassificationBannerSettings:C},data(){return{api:new i,suppressedWarnings:[],selectedSuppressedWarnings:[],selectAllSuppressedWarnings:!1,lastConfigs:[],selectedLastConfigs:[],selectAllLastConfigs:!1,sourceUrl:"",rubygemsUrl:"",pypiUrl:"",sourceUrlErrorSaving:!1,sourceUrlSuccessSaving:!1,rubygemsUrlErrorSaving:!1,rubygemsUrlSuccessSaving:!1,pypiUrlErrorSaving:!1,pypiUrlSuccessSaving:!1}},watch:{selectAllSuppressedWarnings:function(e){this.selectedSuppressedWarnings=e?this.suppressedWarnings.map((e=>e.key)):[]},selectAllLastConfigs:function(e){this.selectedLastConfigs=e?this.lastConfigs.map((e=>e.key)):[]}},created(){this.loadSuppressedWarnings(),this.loadLastConfigs(),this.loadSourceUrl(),this.loadRubygemsUrl(),this.loadPypiUrl()},methods:{loadSuppressedWarnings:function(){this.suppressedWarnings=Object.keys(localStorage).filter((e=>e.startsWith("suppresswarning__"))).map(this.localStorageKeyToDisplayObject),this.selectedSuppressedWarnings=[]},resetSuppressedWarnings:function(){this.deleteLocalStorageKeys(this.selectedSuppressedWarnings),this.loadSuppressedWarnings()},loadLastConfigs:function(){this.lastConfigs=Object.keys(localStorage).filter((e=>e.endsWith("__default"))).map((e=>{const t=e.split("__")[0].replaceAll("_"," ");return{key:e,text:t.charAt(0).toUpperCase()+t.slice(1)}})),this.selectedLastConfigs=[]},clearLastConfigs:function(){this.deleteLocalStorageKeys(this.selectedLastConfigs),this.loadLastConfigs()},deleteLocalStorageKeys:function(e){for(const t of e)delete localStorage[t]},localStorageKeyToDisplayObject:function(e){const t=e.split("__")[0].replaceAll("_"," ");return{key:e,text:t.charAt(0).toUpperCase()+t.slice(1),value:localStorage[e]}},loadSourceUrl:function(){this.api.get_setting("source_url").then((e=>{this.sourceUrl=e})).catch((()=>{this.sourceUrl="https://github.com/OpenC3/cosmos"}))},saveSourceUrl:function(){this.api.set_setting("source_url",this.sourceUrl).then((()=>{this.sourceUrlErrorSaving=!1,this.sourceUrlSuccessSaving=!0})).catch((()=>{this.sourceUrlErrorSaving=!0}))},loadRubygemsUrl:function(){this.api.get_setting("rubygems_url").then((e=>{this.rubygemsUrl=e})).catch((()=>{this.rubygemsUrl="https://rubygems.org"}))},saveRubygemsUrl:function(){this.api.set_setting("rubygems_url",this.rubygemsUrl).then((()=>{this.rubygemsUrlErrorSaving=!1,this.rubygemsUrlSuccessSaving=!0})).catch((()=>{this.rubygemsUrlErrorSaving=!0}))},loadPypiUrl:function(){this.api.get_setting("pypi_url").then((e=>{this.pypiUrl=e})).catch((()=>{this.pypiUrl="https://pypi.org"}))},savePypiUrl:function(){this.api.set_setting("pypi_url",this.pypiUrl).then((()=>{this.pypiUrlErrorSaving=!1,this.pypiUrlSuccessSaving=!0})).catch((()=>{this.pypiUrlErrorSaving=!0}))}}},k=S;var w=(0,g.A)(k,r,n,!1,null,null,null);const U=w.exports},286:(e,t,s)=>{var r=s(4578),n=TypeError;e.exports=function(e,t){if(r(t,e))return e;throw new n("Incorrect invocation")}},7825:(e,t,s)=>{var r=s(6881);e.exports=r([].slice)},9295:(e,t,s)=>{var r=s(7825),n=Math.floor,o=function(e,t){var s=e.length;if(s<8){var a,i,l=1;while(l<s){i=l,a=e[l];while(i&&t(e[i-1],a)>0)e[i]=e[--i];i!==l++&&(e[i]=a)}}else{var c=n(s/2),u=o(r(e,0,c),t),d=o(r(e,c),t),_=u.length,g=d.length,v=0,p=0;while(v<_||p<g)e[v+p]=v<_&&p<g?t(u[v],d[p])<=0?u[v++]:d[p++]:v<_?u[v++]:d[p++]}return e};e.exports=o},997:(e,t,s)=>{var r=s(4530),n=s(4466);e.exports=function(e,t,s){return s.get&&r(s.get,t,{getter:!0}),s.set&&r(s.set,t,{setter:!0}),n.f(e,t,s)}},4320:(e,t,s)=>{var r=s(7509);e.exports=function(e,t,s){for(var n in t)r(e,n,t[n],s);return e}},5821:(e,t,s)=>{var r=s(5691),n=s(4977),o=s(9055),a=r(r.bind);e.exports=function(e,t){return n(e),void 0===t?e:o?a(e,t):function(){return e.apply(t,arguments)}}},5691:(e,t,s)=>{var r=s(8689),n=s(6881);e.exports=function(e){if("Function"===r(e))return n(e)}},9874:(e,t,s)=>{var r=s(5438),n=s(2913),o=s(4318),a=s(9164),i=s(4282),l=i("iterator");e.exports=function(e){if(!o(e))return n(e,l)||n(e,"@@iterator")||a[r(e)]}},2350:(e,t,s)=>{var r=s(9944),n=s(4977),o=s(3770),a=s(3174),i=s(9874),l=TypeError;e.exports=function(e,t){var s=arguments.length<2?i(e):t;if(n(s))return o(r(s,e));throw new l(a(e)+" is not iterable")}},8146:(e,t,s)=>{var r=s(4282),n=s(9164),o=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(n.Array===e||a[o]===e)}},473:(e,t,s)=>{var r=s(831),n=s(8689),o=s(4282),a=o("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[a])?!!t:"RegExp"===n(e))}},3113:(e,t,s)=>{var r=s(9944),n=s(4418),o=s(4578),a=s(4932),i=RegExp.prototype;e.exports=function(e){var t=e.flags;return void 0!==t||"flags"in i||n(e,"flags")||!o(i,e)?t:r(a,e)}},8715:(e,t,s)=>{var r=s(5613),n=s(9944),o=s(6881),a=s(9509),i=s(4188),l=s(4318),c=s(473),u=s(2618),d=s(2913),_=s(3113),g=s(1113),v=s(4282),p=s(1942),h=v("replace"),m=TypeError,f=o("".indexOf),x=o("".replace),b=o("".slice),y=Math.max;r({target:"String",proto:!0},{replaceAll:function(e,t){var s,r,o,v,C,S,k,w,U,T=a(this),B=0,E=0,A="";if(!l(e)){if(s=c(e),s&&(r=u(a(_(e))),!~f(r,"g")))throw new m("`.replaceAll` does not allow non-global regexes");if(o=d(e,h),o)return n(o,e,T,t);if(p&&s)return x(u(T),e,t)}v=u(T),C=u(e),S=i(t),S||(t=u(t)),k=C.length,w=y(1,k),B=f(v,C);while(-1!==B)U=S?u(t(C,B,v)):g(C,v,B,[],void 0,t),A+=b(v,E,B)+U,E=B+k,B=B+w>v.length?-1:f(v,C,B+w);return E<v.length&&(A+=b(v,E)),A}})}}]);
1
+ "use strict";(self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[383],{2673:(e,t,s)=>{s.d(t,{A:()=>i});var r=s(3816),n=s(1649);const o=new n["default"],a=r.A.create({baseURL:location.origin,timeout:6e4,params:{}});a.interceptors.response.use((e=>e),(e=>{if(e.response){var t,s,r,n,a;if(401===e.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(e){e&&OpenC3Auth.setTokens()})),e.response.config.headers["Ignore-Errors"]&&e.response.config.headers["Ignore-Errors"].includes(e.response.status.toString()))return Promise.reject(e);let l=`HTTP ${e.response.status} - `;if(null!==(t=e.response)&&void 0!==t&&t.statusText&&(l+=`${e.response.statusText} `),null!==(s=e.response)&&void 0!==s&&null!==(s=s.config)&&void 0!==s&&s.data&&(l+=`${e.response.config.data} `),null!==(r=e.response)&&void 0!==r&&null!==(r=r.data)&&void 0!==r&&r.message)l+=`${e.response.data.message}`;else if(null!==(n=e.response)&&void 0!==n&&null!==(n=n.data)&&void 0!==n&&n.exception)l+=`${e.response.data.exception}`;else if(null!==(a=e.response)&&void 0!==a&&null!==(a=a.data)&&void 0!==a&&null!==(a=a.error)&&void 0!==a&&a.message)e.response.data.error.class&&(l+=`${e.response.data.error.class} `),l+=`${e.response.data.error.message}`;else{var i;l+=`${null===(i=e.response)||void 0===i?void 0:i.data}`}throw o.$notify&&o.$notify.serious({title:"Network error",body:l}),e}throw e}));const i=a},7699:(e,t,s)=>{s.r(t),s.d(t,{default:()=>U});var r=function(){var e=this,t=e._self._c;return t("div",[t("v-card",[t("v-card-title",[e._v(" Reset suppressed warnings ")]),e._v(" "),t("v-card-subtitle",[e._v('\n This resets "don\'t show this again" dialogs on this browser\n ')]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[e.suppressedWarnings.length?[t("v-checkbox",{staticClass:"mt-0",attrs:{label:"Select all","data-test":"select-all-suppressed-warnings"},model:{value:e.selectAllSuppressedWarnings,callback:function(t){e.selectAllSuppressedWarnings=t},expression:"selectAllSuppressedWarnings"}}),e._v(" "),e._l(e.suppressedWarnings,(function(s){return t("v-checkbox",{key:s.key,staticClass:"mt-0",attrs:{label:s.text,value:s.key,dense:""},model:{value:e.selectedSuppressedWarnings,callback:function(t){e.selectedSuppressedWarnings=t},expression:"selectedSuppressedWarnings"}})}))]:[e._v(" No warnings to reset ")]],2),e._v(" "),t("v-card-actions",[t("v-btn",{staticClass:"ml-2",attrs:{disabled:!e.selectedSuppressedWarnings.length,color:"warning",text:"","data-test":"reset-suppressed-warnings"},on:{click:e.resetSuppressedWarnings}},[e._v("\n Reset\n ")])],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Clear default configs ")]),e._v(" "),t("v-card-subtitle",[e._v("\n This clears the default tool configs on this browser\n ")]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[e.lastConfigs.length?[t("v-checkbox",{staticClass:"mt-0",attrs:{label:"Select all","data-test":"select-all-default-configs"},model:{value:e.selectAllLastConfigs,callback:function(t){e.selectAllLastConfigs=t},expression:"selectAllLastConfigs"}}),e._v(" "),e._l(e.lastConfigs,(function(s){return t("v-checkbox",{key:s.key,staticClass:"mt-0",attrs:{label:s.text,value:s.key,dense:""},model:{value:e.selectedLastConfigs,callback:function(t){e.selectedLastConfigs=t},expression:"selectedLastConfigs"}})}))]:[e._v(" No configs to clear ")]],2),e._v(" "),t("v-card-actions",[t("v-btn",{staticClass:"ml-2",attrs:{disabled:!e.selectedLastConfigs.length,color:"warning",text:"","data-test":"clear-default-configs"},on:{click:e.clearLastConfigs}},[e._v("\n Clear\n ")])],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("astro-settings"),e._v(" "),t("v-divider"),e._v(" "),t("classification-banner-settings"),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Source code URL ")]),e._v(" "),t("v-card-subtitle",[e._v('\n This sets the URL for the "Source" link in the footer. This is required\n under the AGPL license.\n ')]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[t("v-text-field",{attrs:{label:"Source URL","data-test":"source-url"},model:{value:e.sourceUrl,callback:function(t){e.sourceUrl=t},expression:"sourceUrl"}})],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-source-url"},on:{click:e.saveSourceUrl}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.sourceUrlErrorSaving,callback:function(t){e.sourceUrlErrorSaving=t},expression:"sourceUrlErrorSaving"}},[e._v("\n Error saving\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.sourceUrlSuccessSaving,callback:function(t){e.sourceUrlSuccessSaving=t},expression:"sourceUrlSuccessSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Rubygems URL ")]),e._v(" "),t("v-card-subtitle",[e._v("\n This sets the URL for installing dependency rubygems. Also used for\n rubygem discovery.\n ")]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[t("v-text-field",{attrs:{label:"Rubygems URL","data-test":"rubygems-url"},model:{value:e.rubygemsUrl,callback:function(t){e.rubygemsUrl=t},expression:"rubygemsUrl"}})],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-rubygems-url"},on:{click:e.saveRubygemsUrl}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.rubygemsUrlErrorSaving,callback:function(t){e.rubygemsUrlErrorSaving=t},expression:"rubygemsUrlErrorSaving"}},[e._v("\n Error saving\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.rubygemsUrlSuccessSaving,callback:function(t){e.rubygemsUrlSuccessSaving=t},expression:"rubygemsUrlSuccessSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1),e._v(" "),t("v-divider"),e._v(" "),t("v-card",[t("v-card-title",[e._v(" Pypi URL ")]),e._v(" "),t("v-card-subtitle",[e._v("\n This sets the URL for installing dependency python packages. Also used\n for package discovery.\n ")]),e._v(" "),t("v-card-text",{staticClass:"pb-0 ml-2"},[t("v-text-field",{attrs:{label:"Pypi URL","data-test":"pypi-url"},model:{value:e.pypiUrl,callback:function(t){e.pypiUrl=t},expression:"pypiUrl"}})],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-pypi-url"},on:{click:e.savePypiUrl}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.pypiUrlErrorSaving,callback:function(t){e.pypiUrlErrorSaving=t},expression:"pypiUrlErrorSaving"}},[e._v("\n Error saving\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.pypiUrlSuccessSaving,callback:function(t){e.pypiUrlSuccessSaving=t},expression:"pypiUrlSuccessSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1)],1)},n=[],o=(s(4293),s(8715),s(7010),s(814)),a=(s(7107),s(2482),s(7067),s(4147),s(2682),s(785),s(8357),s(6196),s(821),s(6554),s(8472),s(7404),s(5803),s(3912),s(2673));class i{constructor(){(0,o.A)(this,"id",1)}async exec(e,t,s={},r={},n=6e4){try{let e=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);e&&OpenC3Auth.setTokens()}catch(i){OpenC3Auth.login()}this.id=this.id+1;try{s["scope"]=window.openc3Scope;const o=await a.A.post("/openc3-api/api",{jsonrpc:"2.0",method:e,params:t,id:this.id,keyword_params:s},{headers:{Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc",...r},timeout:n});return o.data.result}catch(i){var o=new Error;throw i.response?(o.name=i.response.data.error.data.class,o.message=i.response.data.error.data.message):i.request?(o.name="Request error",o.message="Request error, no response received"):o.name="Unknown error",o}}decode_openc3_type(e){if(null!==e&&"object"===typeof 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}encode_openc3_type(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}ensure_offline_access(){this.offline_access_needed().then((e=>{e&&(localStorage.openc3OfflineToken?this.set_offline_access(localStorage.openc3OfflineToken).then((()=>{delete localStorage.openc3OfflineToken})):OpenC3Auth.getOfflineAccess())}))}offline_access_needed(){return this.exec("offline_access_needed",[])}set_offline_access(e){return this.exec("set_offline_access",[e])}get_all_interface_info(){return this.exec("get_all_interface_info",[])}map_target_to_interface(e,t){return this.exec("map_target_to_interface",[e,t])}connect_interface(e,...t){return t.length>0?this.exec("connect_interface",[e,...t]):this.exec("connect_interface",[e])}disconnect_interface(e){return this.exec("disconnect_interface",[e])}interface_cmd(e,t,...s){return this.exec("interface_cmd",[e,t,...s])}get_all_router_info(){return this.exec("get_all_router_info",[])}connect_router(e){return this.exec("connect_router",[e])}disconnect_router(e){return this.exec("disconnect_router",[e])}get_target_interfaces(){return this.exec("get_target_interfaces",[])}get_all_target_info(){return this.exec("get_all_target_info",[])}get_tlm_cnts(e){return this.exec("get_tlm_cnts",[e])}get_item(e,t,s){return this.exec("get_item",[e,t,s])}get_param(e,t,s){return this.exec("get_param",[e,t,s])}get_parameter(e,t,s){return this.exec("get_parameter",[e,t,s])}get_limits_sets(){return this.exec("get_limits_sets",[])}get_limits_set(){return this.exec("get_limits_set",[])}set_limits_set(e){return this.exec("set_limits_set",[e])}get_target(e){return this.exec("get_target",[e])}get_target_names(){return this.exec("get_target_names",[])}get_target_list(){return this.exec("get_target_list",[])}get_tlm(e,t){return this.exec("get_tlm",[e,t])}get_telemetry(e,t){return this.exec("get_telemetry",[e,t])}get_all_tlm(e){return this.exec("get_all_tlm",[e])}get_all_telemetry(e){return this.exec("get_all_telemetry",[e])}get_all_tlm_names(e){return this.exec("get_all_tlm_names",[e])}get_all_telemetry_names(e){return this.exec("get_all_telemetry_names",[e])}async get_tlm_packet(e,t,s,r=30){const n=await this.exec("get_tlm_packet",[e,t],{type:s,stale_time:r});if(null!=n)for(var o=n.length,a=null,i=0;i<o;i++)a=this.decode_openc3_type(n[i][1]),null!==a&&(n[i][1]=a);return n}get_packet_derived_items(e,t){return this.exec("get_packet_derived_items",[e,t])}get_tlm_buffer(e,t){return this.exec("get_tlm_buffer",[e,t])}async get_tlm_values(e,t=30,s=null){let r={stale_time:t};null!==s&&(r["cache_timeout"]=s);const n=await this.exec("get_tlm_values",[e],r,{},1e4);for(var o=n[0].length,a=null,i=0;i<o;i++)a=this.decode_openc3_type(n[0][i]),null!==a&&(n[0][i]=a);return n}get_limits(e,t,s){return this.exec("get_limits",[e,t,s])}async tlm(e,t,s,r="CONVERTED"){let n=null;if(void 0===t)n=await this.exec("tlm",[e]);else if(void 0===s){if(!["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(t)){var o=new Error;throw o.name="TypeError",o.message=`Invalid data type ${t}. Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS.`,o}n=await this.exec("tlm",[e],{type:t})}else n=await this.exec("tlm",[e,t,s],{type:r});var a=this.decode_openc3_type(n);return null!==a&&(n=a),n}async inject_tlm(e,t,s=null,r="CONVERTED"){data=await this.exec("inject_tlm",[e,t,s],{type:r})}set_tlm(e,t,s,r){return this.exec("set_tlm",[e,t,s],{type:r})}override_tlm(e,t,s,r){return this.exec("override_tlm",[e,t,s],{type:r})}get_overrides(){return this.exec("get_overrides")}normalize_tlm(e,t,s,r){return this.exec("normalize_tlm",[e,t,s],{type:r})}get_all_cmds(e){return this.exec("get_all_cmds",[e])}get_all_commands(e){return this.exec("get_all_commands",[e])}get_all_cmd_names(e){return this.exec("get_all_cmd_names",[e])}get_all_command_names(e){return this.exec("get_all_command_names",[e])}get_cmd(e,t){return this.exec("get_cmd",[e,t])}get_command(e,t){return this.exec("get_command",[e,t])}get_cmd_cnts(e){return this.exec("get_cmd_cnts",[e])}get_cmd_value(e,t,s,r="CONVERTED"){return this.exec("get_cmd_value",[e,t,s,r])}get_cmd_buffer(e,t){return this.exec("get_cmd_buffer",[e,t])}_cmd(e,t,s,r,n){var o=null;for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(o=this.encode_openc3_type(r[a]),null!==o&&(r[a]=o));return this.exec(e,[t,s,r],{},n)}get_cmd_hazardous(e,t,s){return void 0===t?this.exec("get_cmd_hazardous",e):this._cmd("get_cmd_hazardous",e,t,s)}cmd(e,t,s,r={}){return void 0===t?this.exec("cmd",e,{},r):this._cmd("cmd",e,t,s,r)}cmd_no_range_check(e,t,s){return void 0===t?this.exec("cmd_no_range_check",e):this._cmd("cmd_no_range_check",e,t,s)}cmd_raw(e,t,s){return void 0===t?this.exec("cmd_raw",e):this._cmd("cmd_raw",e,t,s)}cmd_raw_no_range_check(e,t,s){return void 0===t?this.exec("cmd_raw_no_range_check",e):this._cmd("cmd_raw_no_range_check",e,t,s)}cmd_no_hazardous_check(e,t,s){return void 0===t?this.exec("cmd_no_hazardous_check",e):this._cmd("cmd_no_hazardous_check",e,t,s)}cmd_no_checks(e,t,s){return void 0===t?this.exec("cmd_no_checks",e):this._cmd("cmd_no_checks",e,t,s)}cmd_raw_no_hazardous_check(e,t,s){return void 0===t?this.exec("cmd_raw_no_hazardous_check",e):this._cmd("cmd_raw_no_hazardous_check",e,t,s)}cmd_raw_no_checks(e,t,s){return void 0===t?this.exec("cmd_raw_no_checks",e):this._cmd("cmd_raw_no_checks",e,t,s)}build_cmd(e,t,s){return void 0===t?this.exec("build_cmd",e):this._cmd("build_cmd",e,t,s)}build_command(e,t,s){return void 0===t?this.exec("build_command",e):this._cmd("build_command",e,t,s)}get_interface_names(){return this.exec("get_interface_names",[])}send_raw(e,t){return this.exec("send_raw",[e,t])}list_configs(e){return this.exec("list_configs",[e])}load_config(e,t){return this.exec("load_config",[e,t])}save_config(e,t,s){return this.exec("save_config",[e,t,s])}delete_config(e,t){return this.exec("delete_config",[e,t])}enable_limits(e,t,s){return this.exec("enable_limits",[e,t,s])}disable_limits(e,t,s){return this.exec("disable_limits",[e,t,s])}get_out_of_limits(){return this.exec("get_out_of_limits",[])}get_overall_limits_state(e){return this.exec("get_overall_limits_state",[e])}list_settings(){return this.exec("list_settings",[])}get_all_settings(){return this.exec("get_all_settings",[])}get_setting(e){return this.exec("get_setting",[e])}get_settings(e){return this.exec("get_settings",e)}set_setting(e,t){return this.exec("set_setting",[e,t])}save_setting(e,t){return this.exec("save_setting",[e,t])}get_metrics(){return this.exec("get_metrics",[])}async hashString(e){if(window.isSecureContext){const t=(new TextEncoder).encode(e),s=await crypto.subtle.digest("SHA-256",t),r=new Uint8Array(s);return Array.from(r).map((e=>e.toString(16).padStart(2,"0"))).join("")}}}var l=function(){var e=this,t=e._self._c;return t("v-card",[t("v-card-title",[e._v("Astro Settings")]),e._v(" "),t("v-card-text",{staticClass:"pb-0"},[t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorLoading,callback:function(t){e.errorLoading=t},expression:"errorLoading"}},[e._v("\n Error loading previous configuration due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-container",{staticClass:"pb-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-switch",{attrs:{label:"Hide Astro Clock","data-test":"hide-astro-clock"},model:{value:e.hideClock,callback:function(t){e.hideClock=t},expression:"hideClock"}})],1)],1)],1)],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{color:"success",text:"","data-test":"save-astro-settings"},on:{click:e.save}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorSaving,callback:function(t){e.errorSaving=t},expression:"errorSaving"}},[e._v("\n Error saving due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.successSaving,callback:function(t){e.successSaving=t},expression:"successSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1)},c=[];const u="astro",d={data(){return{api:null,errorLoading:!1,errorSaving:!1,errorText:"",successSaving:!1,hideClock:!1}},computed:{saveObj:function(){return JSON.stringify({hideClock:this.hideClock})}},created(){this.api=new i,this.load()},methods:{load:function(){this.api.get_setting(u).then((e=>{if(this.errorLoading=!1,e){const t=JSON.parse(e);this.hideClock=t.hideClock}})).catch((e=>{this.errorText=e,this.errorLoading=!0}))},save:function(){this.api.set_setting(u,this.saveObj).then((()=>{this.errorSaving=!1,this.successSaving=!0})).catch((e=>{this.errorText=e,this.errorSaving=!0}))}}},_=d;var g=s(2401),v=(0,g.A)(_,l,c,!1,null,null,null);const p=v.exports;var h=function(){var e=this,t=e._self._c;return t("v-card",[t("v-card-title",[e._v("Classification Banner Settings")]),e._v(" "),t("v-card-text",{staticClass:"pb-0"},[t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorLoading,callback:function(t){e.errorLoading=t},expression:"errorLoading"}},[e._v("\n Error loading previous configuration due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-container",{staticClass:"pb-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-text-field",{attrs:{label:"Text","data-test":"classification-banner-text"},model:{value:e.text,callback:function(t){e.text=t},expression:"text"}})],1)],1),e._v(" "),t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-select",{attrs:{label:"Background color",items:e.colors,"data-test":"classification-banner-background-color"},scopedSlots:e._u([e.selectedBackgroundColor?{key:"prepend-inner",fn:function(){return[t("v-icon",{attrs:{color:e.selectedBackgroundColor}},[e._v(" mdi-square ")])]},proxy:!0}:null,{key:"item",fn:function(s){return[s.item.value?t("v-icon",{staticClass:"pr-1",attrs:{color:s.item.value}},[e._v("\n mdi-square\n ")]):e._e(),e._v("\n "+e._s(s.item.text)+"\n ")]}}],null,!0),model:{value:e.selectedBackgroundColor,callback:function(t){e.selectedBackgroundColor=t},expression:"selectedBackgroundColor"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Custom background color",hint:e.customColorHint,disabled:!1!==e.selectedBackgroundColor,rules:[e.rules.customColor],"data-test":"classification-banner-custom-background-color"},scopedSlots:e._u([{key:"prepend-inner",fn:function(){return[t("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.selectedBackgroundColor,expression:"!selectedBackgroundColor"}],attrs:{color:e.customBackgroundColor}},[e._v("\n mdi-square\n ")])]},proxy:!0}]),model:{value:e.customBackgroundColor,callback:function(t){e.customBackgroundColor=t},expression:"customBackgroundColor"}})],1),e._v(" "),t("v-col",[t("v-select",{attrs:{label:"Font color",items:e.colors,"data-test":"classification-banner-font-color"},scopedSlots:e._u([e.selectedFontColor?{key:"prepend-inner",fn:function(){return[t("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.selectedFontColor,expression:"selectedFontColor"}],attrs:{color:e.selectedFontColor}},[e._v("\n mdi-square\n ")])]},proxy:!0}:null,{key:"item",fn:function(s){return[s.item.value?t("v-icon",{staticClass:"pr-1",attrs:{color:s.item.value}},[e._v("\n mdi-square\n ")]):e._e(),e._v("\n "+e._s(s.item.text)+"\n ")]}}],null,!0),model:{value:e.selectedFontColor,callback:function(t){e.selectedFontColor=t},expression:"selectedFontColor"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Custom font color",hint:e.customColorHint,disabled:!1!==e.selectedFontColor,rules:[e.rules.customColor],"data-test":"classification-banner-custom-font-color"},scopedSlots:e._u([{key:"prepend-inner",fn:function(){return[t("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.selectedFontColor,expression:"!selectedFontColor"}],attrs:{color:e.customFontColor}},[e._v("\n mdi-square\n ")])]},proxy:!0}]),model:{value:e.customFontColor,callback:function(t){e.customFontColor=t},expression:"customFontColor"}})],1)],1),e._v(" "),t("v-row",{attrs:{dense:""}},[t("v-col",[t("v-switch",{attrs:{label:"Display top banner","data-test":"display-top-banner"},model:{value:e.displayTopBanner,callback:function(t){e.displayTopBanner=t},expression:"displayTopBanner"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Top height",disabled:!e.displayTopBanner,type:"number",suffix:"px","data-test":"classification-banner-top-height"},model:{value:e.topHeight,callback:function(t){e.topHeight=t},expression:"topHeight"}})],1),e._v(" "),t("v-col",[t("v-switch",{attrs:{label:"Display bottom banner","data-test":"display-bottom-banner"},model:{value:e.displayBottomBanner,callback:function(t){e.displayBottomBanner=t},expression:"displayBottomBanner"}})],1),e._v(" "),t("v-col",[t("v-text-field",{attrs:{label:"Bottom height",disabled:!e.displayBottomBanner,type:"number",suffix:"px","data-test":"classification-banner-bottom-height"},model:{value:e.bottomHeight,callback:function(t){e.bottomHeight=t},expression:"bottomHeight"}})],1)],1)],1)],1),e._v(" "),t("v-card-actions",[t("v-container",{staticClass:"pt-0"},[t("v-row",{attrs:{dense:""}},[t("v-col",{staticClass:"pl-0"},[t("v-btn",{attrs:{disabled:!e.formValid,color:"success",text:"","data-test":"save-classification-banner"},on:{click:e.save}},[e._v("\n Save\n ")])],1)],1),e._v(" "),t("v-alert",{attrs:{type:"error",dismissible:"",dense:""},model:{value:e.errorSaving,callback:function(t){e.errorSaving=t},expression:"errorSaving"}},[e._v("\n Error saving due to "+e._s(e.errorText)+"\n ")]),e._v(" "),t("v-alert",{attrs:{type:"success",dismissible:"",dense:""},model:{value:e.successSaving,callback:function(t){e.successSaving=t},expression:"successSaving"}},[e._v("\n Saved! (Refresh the page to see changes)\n ")])],1)],1)],1)},m=[];const f="classification_banner",x={data(){return{api:null,errorLoading:!1,errorSaving:!1,errorText:"",successSaving:!1,text:"",displayTopBanner:!1,displayBottomBanner:!1,topHeight:0,bottomHeight:0,selectedBackgroundColor:"red",customBackgroundColor:"",selectedFontColor:"white",customFontColor:"",customColorHint:"Enter a 3 or 6-digit hex color code",colors:[{text:"Yellow",value:"yellow"},{text:"Orange",value:"orange"},{text:"Red",value:"red"},{text:"Purple",value:"purple"},{text:"Blue",value:"blue"},{text:"Green",value:"green"},{text:"Black",value:"black"},{text:"White",value:"white"},{text:"Custom",value:!1}],rules:{customColor:e=>/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(e)||this.customColorHint}}},computed:{saveObj:function(){return JSON.stringify({text:this.text,fontColor:this.selectedFontColor||this.customFontColor,backgroundColor:this.selectedBackgroundColor||this.customBackgroundColor,topHeight:this.displayTopBanner?this.topHeight:0,bottomHeight:this.displayBottomBanner?this.bottomHeight:0})},formValid:function(){return(this.selectedFontColor||!0===this.rules.customColor(this.customFontColor))&&(this.selectedBackgroundColor||!0===this.rules.customColor(this.customBackgroundColor))}},watch:{displayTopBanner:function(e){this.topHeight=e?20:0},displayBottomBanner:function(e){this.bottomHeight=e?20:0},customFontColor:function(e){e&&e.length&&!e.startsWith("#")&&(this.customFontColor=`#${e}`)},customBackgroundColor:function(e){e&&e.length&&!e.startsWith("#")&&(this.customBackgroundColor=`#${e}`)}},created(){this.api=new i,this.load()},methods:{load:function(){this.api.get_setting(f).then((e=>{if(this.errorLoading=!1,e){const t=JSON.parse(e);this.text=t.text,this.topHeight=t.topHeight,this.bottomHeight=t.bottomHeight,this.displayTopBanner=0!==t.topHeight,this.displayBottomBanner=0!==t.bottomHeight,t.backgroundColor&&t.backgroundColor.startsWith("#")?(this.customBackgroundColor=t.backgroundColor,this.selectedBackgroundColor=!1):this.selectedBackgroundColor=t.backgroundColor,t.fontColor&&t.fontColor.startsWith("#")?(this.customFontColor=t.fontColor,this.selectedFontColor=!1):this.selectedFontColor=t.fontColor}})).catch((e=>{this.errorText=e,this.errorLoading=!0}))},save:function(){this.api.set_setting(f,this.saveObj).then((()=>{this.errorSaving=!1,this.successSaving=!0})).catch((e=>{this.errorText=e,this.errorSaving=!0}))}}},b=x;var y=(0,g.A)(b,h,m,!1,null,null,null);const C=y.exports,S={components:{AstroSettings:p,ClassificationBannerSettings:C},data(){return{api:new i,suppressedWarnings:[],selectedSuppressedWarnings:[],selectAllSuppressedWarnings:!1,lastConfigs:[],selectedLastConfigs:[],selectAllLastConfigs:!1,sourceUrl:"",rubygemsUrl:"",pypiUrl:"",sourceUrlErrorSaving:!1,sourceUrlSuccessSaving:!1,rubygemsUrlErrorSaving:!1,rubygemsUrlSuccessSaving:!1,pypiUrlErrorSaving:!1,pypiUrlSuccessSaving:!1}},watch:{selectAllSuppressedWarnings:function(e){this.selectedSuppressedWarnings=e?this.suppressedWarnings.map((e=>e.key)):[]},selectAllLastConfigs:function(e){this.selectedLastConfigs=e?this.lastConfigs.map((e=>e.key)):[]}},created(){this.loadSuppressedWarnings(),this.loadLastConfigs(),this.loadSourceUrl(),this.loadRubygemsUrl(),this.loadPypiUrl()},methods:{loadSuppressedWarnings:function(){this.suppressedWarnings=Object.keys(localStorage).filter((e=>e.startsWith("suppresswarning__"))).map(this.localStorageKeyToDisplayObject),this.selectedSuppressedWarnings=[]},resetSuppressedWarnings:function(){this.deleteLocalStorageKeys(this.selectedSuppressedWarnings),this.loadSuppressedWarnings()},loadLastConfigs:function(){this.lastConfigs=Object.keys(localStorage).filter((e=>e.endsWith("__default"))).map((e=>{const t=e.split("__")[0].replaceAll("_"," ");return{key:e,text:t.charAt(0).toUpperCase()+t.slice(1)}})),this.selectedLastConfigs=[]},clearLastConfigs:function(){this.deleteLocalStorageKeys(this.selectedLastConfigs),this.loadLastConfigs()},deleteLocalStorageKeys:function(e){for(const t of e)delete localStorage[t]},localStorageKeyToDisplayObject:function(e){const t=e.split("__")[0].replaceAll("_"," ");return{key:e,text:t.charAt(0).toUpperCase()+t.slice(1),value:localStorage[e]}},loadSourceUrl:function(){this.api.get_setting("source_url").then((e=>{this.sourceUrl=e})).catch((()=>{this.sourceUrl="https://github.com/OpenC3/cosmos"}))},saveSourceUrl:function(){this.api.set_setting("source_url",this.sourceUrl).then((()=>{this.sourceUrlErrorSaving=!1,this.sourceUrlSuccessSaving=!0})).catch((()=>{this.sourceUrlErrorSaving=!0}))},loadRubygemsUrl:function(){this.api.get_setting("rubygems_url").then((e=>{this.rubygemsUrl=e})).catch((()=>{this.rubygemsUrl="https://rubygems.org"}))},saveRubygemsUrl:function(){this.api.set_setting("rubygems_url",this.rubygemsUrl).then((()=>{this.rubygemsUrlErrorSaving=!1,this.rubygemsUrlSuccessSaving=!0})).catch((()=>{this.rubygemsUrlErrorSaving=!0}))},loadPypiUrl:function(){this.api.get_setting("pypi_url").then((e=>{this.pypiUrl=e})).catch((()=>{this.pypiUrl="https://pypi.org"}))},savePypiUrl:function(){this.api.set_setting("pypi_url",this.pypiUrl).then((()=>{this.pypiUrlErrorSaving=!1,this.pypiUrlSuccessSaving=!0})).catch((()=>{this.pypiUrlErrorSaving=!0}))}}},k=S;var w=(0,g.A)(k,r,n,!1,null,null,null);const U=w.exports},286:(e,t,s)=>{var r=s(4578),n=TypeError;e.exports=function(e,t){if(r(t,e))return e;throw new n("Incorrect invocation")}},7825:(e,t,s)=>{var r=s(6881);e.exports=r([].slice)},9295:(e,t,s)=>{var r=s(7825),n=Math.floor,o=function(e,t){var s=e.length;if(s<8){var a,i,l=1;while(l<s){i=l,a=e[l];while(i&&t(e[i-1],a)>0)e[i]=e[--i];i!==l++&&(e[i]=a)}}else{var c=n(s/2),u=o(r(e,0,c),t),d=o(r(e,c),t),_=u.length,g=d.length,v=0,p=0;while(v<_||p<g)e[v+p]=v<_&&p<g?t(u[v],d[p])<=0?u[v++]:d[p++]:v<_?u[v++]:d[p++]}return e};e.exports=o},997:(e,t,s)=>{var r=s(4530),n=s(4466);e.exports=function(e,t,s){return s.get&&r(s.get,t,{getter:!0}),s.set&&r(s.set,t,{setter:!0}),n.f(e,t,s)}},4320:(e,t,s)=>{var r=s(7509);e.exports=function(e,t,s){for(var n in t)r(e,n,t[n],s);return e}},5821:(e,t,s)=>{var r=s(5691),n=s(4977),o=s(9055),a=r(r.bind);e.exports=function(e,t){return n(e),void 0===t?e:o?a(e,t):function(){return e.apply(t,arguments)}}},5691:(e,t,s)=>{var r=s(8689),n=s(6881);e.exports=function(e){if("Function"===r(e))return n(e)}},9874:(e,t,s)=>{var r=s(5438),n=s(2913),o=s(4318),a=s(9164),i=s(4282),l=i("iterator");e.exports=function(e){if(!o(e))return n(e,l)||n(e,"@@iterator")||a[r(e)]}},2350:(e,t,s)=>{var r=s(9944),n=s(4977),o=s(3770),a=s(3174),i=s(9874),l=TypeError;e.exports=function(e,t){var s=arguments.length<2?i(e):t;if(n(s))return o(r(s,e));throw new l(a(e)+" is not iterable")}},8146:(e,t,s)=>{var r=s(4282),n=s(9164),o=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(n.Array===e||a[o]===e)}},473:(e,t,s)=>{var r=s(831),n=s(8689),o=s(4282),a=o("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[a])?!!t:"RegExp"===n(e))}},3113:(e,t,s)=>{var r=s(9944),n=s(4418),o=s(4578),a=s(4932),i=RegExp.prototype;e.exports=function(e){var t=e.flags;return void 0!==t||"flags"in i||n(e,"flags")||!o(i,e)?t:r(a,e)}},8715:(e,t,s)=>{var r=s(5613),n=s(9944),o=s(6881),a=s(9509),i=s(4188),l=s(4318),c=s(473),u=s(2618),d=s(2913),_=s(3113),g=s(1113),v=s(4282),p=s(1942),h=v("replace"),m=TypeError,f=o("".indexOf),x=o("".replace),b=o("".slice),y=Math.max;r({target:"String",proto:!0},{replaceAll:function(e,t){var s,r,o,v,C,S,k,w,U,T=a(this),B=0,E=0,A="";if(!l(e)){if(s=c(e),s&&(r=u(a(_(e))),!~f(r,"g")))throw new m("`.replaceAll` does not allow non-global regexes");if(o=d(e,h),o)return n(o,e,T,t);if(p&&s)return x(u(T),e,t)}v=u(T),C=u(e),S=i(t),S||(t=u(t)),k=C.length,w=y(1,k),B=f(v,C);while(-1!==B)U=S?u(t(C,B,v)):g(C,v,B,[],void 0,t),A+=b(v,E,B)+U,E=B+k,B=B+w>v.length?-1:f(v,C,B+w);return E<v.length&&(A+=b(v,E)),A}})}}]);
2
2
  //# sourceMappingURL=383.js.map