cosmosc2-tool-admin 5.0.2 → 5.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"js/306.js","mappings":"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","sources":["webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/services/api.js","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/services/axios.js","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?940a","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/EditDialog.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?6e57","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?8533","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?41fe"],"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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\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 await CosmosAuth.updateToken(CosmosAuth.defaultMinValidity)\n } catch (error) {\n CosmosAuth.login()\n }\n headers['Authorization'] = localStorage.cosmosToken\n }\n if (!noScope && !params['scope']) {\n params['scope'] = localStorage.scope\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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\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: 10000,\n params: {},\n})\n\naxiosInstance.interceptors.response.use(\n (response) => response,\n (error) => {\n if (error.response.status === 401) {\n delete localStorage.cosmosToken\n CosmosAuth.login(location.href)\n } else {\n let body = `HTTP ${error.response.status} - `\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n }\n throw error\n }\n)\n\nexport default axiosInstance\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"600\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('v-system-bar',[_c('v-spacer'),_c('span',{domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('v-spacer'),_c('div',{staticClass:\"mx-2\"},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('div',_vm._g(_vm._b({},'div',attrs,false),on),[_c('v-icon',{attrs:{\"data-test\":\"downloadIcon\"},on:{\"click\":_vm.download}},[_vm._v(\" mdi-download \")])],1)]}}])},[_c('span',[_vm._v(\" Download \")])])],1)],1),_c('v-card-text',[_c('div',{staticClass:\"pa-3\"},[_c('v-row',{staticClass:\"mt-3\"},[_vm._v(\" Upload a file. \")]),_c('v-row',{attrs:{\"no-gutters\":\"\",\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"success\",\"disabled\":!_vm.file || _vm.loadingFile || _vm.readonly,\"loading\":_vm.loadingFile,\"data-test\":\"editScreenLoadBtn\"},on:{\"click\":_vm.loadFile},scopedSlots:_vm._u([{key:\"loader\",fn:function(){return [_c('span',[_vm._v(\"Loading...\")])]},proxy:true}])},[_vm._v(\" Load \")])],1),_c('v-col',{attrs:{\"cols\":\"9\"}},[_c('v-file-input',{attrs:{\"accept\":\".json\",\"label\":\"Click to select .json file.\",\"disabled\":_vm.readonly},model:{value:(_vm.file),callback:function ($$v) {_vm.file=$$v},expression:\"file\"}})],1)],1),_c('v-row',[_vm._v(\" Edit json content \")]),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-textarea',{attrs:{\"rows\":\"15\",\"readonly\":_vm.readonly,\"data-test\":\"editTextInput\"},model:{value:(_vm.json_content),callback:function ($$v) {_vm.json_content=$$v},expression:\"json_content\"}})],1),_c('v-row',{staticClass:\"my-3\"},[_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.error),expression:\"error\"}],staticClass:\"red--text\",domProps:{\"textContent\":_vm._s(_vm.error)}})]),_c('v-row',[_c('v-spacer'),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"outlined\":\"\",\"data-test\":\"editCancelBtn\"},on:{\"click\":function($event){$event.preventDefault();return _vm.close.apply(null, arguments)}}},[_vm._v(\" Cancel \")]),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"color\":\"primary\",\"type\":\"submit\",\"data-test\":\"editSubmitBtn\",\"disabled\":!!_vm.error || _vm.readonly}},[_vm._v(\" Save \")])],1)],1)])],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <v-dialog persistent v-model=\"show\" width=\"600\">\n <v-card>\n <form v-on:submit.prevent=\"submit\">\n <v-system-bar>\n <v-spacer />\n <span v-text=\"title\" />\n <v-spacer />\n <div class=\"mx-2\">\n <v-tooltip top>\n <template v-slot:activator=\"{ on, attrs }\">\n <div v-on=\"on\" v-bind=\"attrs\">\n <v-icon data-test=\"downloadIcon\" @click=\"download\">\n mdi-download\n </v-icon>\n </div>\n </template>\n <span> Download </span>\n </v-tooltip>\n </div>\n </v-system-bar>\n\n <v-card-text>\n <div class=\"pa-3\">\n <v-row class=\"mt-3\"> Upload a file. </v-row>\n <v-row no-gutters align=\"center\">\n <v-col cols=\"3\">\n <v-btn\n block\n color=\"success\"\n @click=\"loadFile\"\n :disabled=\"!file || loadingFile || readonly\"\n :loading=\"loadingFile\"\n data-test=\"editScreenLoadBtn\"\n >\n Load\n <template v-slot:loader>\n <span>Loading...</span>\n </template>\n </v-btn>\n </v-col>\n <v-col cols=\"9\">\n <v-file-input\n v-model=\"file\"\n accept=\".json\"\n label=\"Click to select .json file.\"\n :disabled=\"readonly\"\n />\n </v-col>\n </v-row>\n <v-row> Edit json content </v-row>\n <v-row no-gutters>\n <v-textarea\n v-model=\"json_content\"\n rows=\"15\"\n :readonly=\"readonly\"\n data-test=\"editTextInput\"\n />\n </v-row>\n <v-row class=\"my-3\">\n <span class=\"red--text\" v-show=\"error\" v-text=\"error\" />\n </v-row>\n <v-row>\n <v-spacer />\n <v-btn\n @click.prevent=\"close\"\n outlined\n class=\"mx-2\"\n data-test=\"editCancelBtn\"\n >\n Cancel\n </v-btn>\n <v-btn\n class=\"mx-2\"\n color=\"primary\"\n type=\"submit\"\n data-test=\"editSubmitBtn\"\n :disabled=\"!!error || readonly\"\n >\n Save\n </v-btn>\n </v-row>\n </div>\n </v-card-text>\n </form>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n content: {\n type: String,\n required: true,\n },\n title: String,\n value: Boolean, // value is the default prop when using v-model\n readonly: Boolean,\n },\n data() {\n return {\n json_content: this.content,\n }\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit('input', value) // input is the default event when using v-model\n },\n },\n error: function () {\n if (this.json_content === '' && !this.file) {\n return 'Input can not be blank.'\n }\n return null\n },\n },\n methods: {\n submit: function () {\n $emit('submit', json_content)\n this.json_content = null\n this.show = !this.show\n },\n close: function () {\n this.json_content = null\n this.show = !this.show\n },\n download: function () {\n const blob = new Blob([this.json_content], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', `${this.title}.json`)\n link.click()\n },\n },\n}\n</script>\n\n<style scoped>\n.v-card {\n background-color: var(--v-tertiary-darken2);\n}\n.v-textarea >>> textarea {\n padding: 5px;\n background-color: var(--v-tertiary-darken1) !important;\n}\n</style>\n","import mod from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditDialog.vue?vue&type=template&id=2c7bef4b&scoped=true&\"\nimport script from \"./EditDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./EditDialog.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditDialog.vue?vue&type=style&index=0&id=2c7bef4b&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c7bef4b\",\n null\n \n)\n\nexport default component.exports","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/@vue/cli-service/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-card[data-v-2c7bef4b]{background-color:var(--v-tertiary-darken2)}.v-textarea[data-v-2c7bef4b] textarea{padding:5px;background-color:var(--v-tertiary-darken1)!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/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[2]!../../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[3]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDialog.vue?vue&type=style&index=0&id=2c7bef4b&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(\"fc8e1770\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["request","method","url","data","params","headers","noAuth","noScope","CosmosAuth","updateToken","defaultMinValidity","login","localStorage","cosmosToken","scope","axios","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","path","put","post","delete","vueInstance","Vue","axiosInstance","baseURL","location","origin","timeout","interceptors","response","use","error","status","href","body","message","exception","class","$notify","serious","title","render","_vm","this","_h","$createElement","_c","_self","attrs","model","value","callback","$$v","show","expression","on","$event","preventDefault","submit","apply","arguments","domProps","_s","staticClass","scopedSlots","_u","key","fn","ref","_g","_b","download","_v","file","loadingFile","readonly","loadFile","proxy","json_content","directives","name","rawName","close","staticRenderFns","props","content","type","String","required","Boolean","computed","set","$emit","methods","link","URL","createObjectURL","blob","setAttribute","click","component","___CSS_LOADER_EXPORT___","push","module","id","__esModule","default","locals","exports","add"],"sourceRoot":""}
1
+ {"version":3,"file":"js/306.js","mappings":"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","sources":["webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/services/api.js","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/services/axios.js","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?940a","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/EditDialog.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?6e57","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?8533","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/EditDialog.vue?41fe"],"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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\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 await CosmosAuth.updateToken(CosmosAuth.defaultMinValidity)\n } catch (error) {\n CosmosAuth.login()\n }\n headers['Authorization'] = localStorage.cosmosToken\n }\n if (!noScope && !params['scope']) {\n params['scope'] = localStorage.scope\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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\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: 10000,\n params: {},\n})\n\naxiosInstance.interceptors.response.use(\n (response) => response,\n (error) => {\n if (error.response.status === 401) {\n delete localStorage.cosmosToken\n CosmosAuth.login(location.href)\n } else {\n let body = `HTTP ${error.response.status} - `\n if (error.response?.statusText) {\n body += `${error.response.statusText} `\n }\n if (error.response?.config?.data) {\n body += `${error.response.config.data} `\n }\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n }\n throw error\n }\n)\n\nexport default axiosInstance\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"600\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('v-system-bar',[_c('v-spacer'),_c('span',{domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('v-spacer'),_c('div',{staticClass:\"mx-2\"},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('div',_vm._g(_vm._b({},'div',attrs,false),on),[_c('v-icon',{attrs:{\"data-test\":\"downloadIcon\"},on:{\"click\":_vm.download}},[_vm._v(\" mdi-download \")])],1)]}}])},[_c('span',[_vm._v(\" Download \")])])],1)],1),_c('v-card-text',[_c('div',{staticClass:\"pa-3\"},[_c('v-row',{staticClass:\"mt-3\"},[_vm._v(\" Upload a file. \")]),_c('v-row',{attrs:{\"no-gutters\":\"\",\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"success\",\"disabled\":!_vm.file || _vm.loadingFile || _vm.readonly,\"loading\":_vm.loadingFile,\"data-test\":\"editScreenLoadBtn\"},on:{\"click\":_vm.loadFile},scopedSlots:_vm._u([{key:\"loader\",fn:function(){return [_c('span',[_vm._v(\"Loading...\")])]},proxy:true}])},[_vm._v(\" Load \")])],1),_c('v-col',{attrs:{\"cols\":\"9\"}},[_c('v-file-input',{attrs:{\"accept\":\".json\",\"label\":\"Click to select .json file.\",\"disabled\":_vm.readonly},model:{value:(_vm.file),callback:function ($$v) {_vm.file=$$v},expression:\"file\"}})],1)],1),_c('v-row',[_vm._v(\" Edit json content \")]),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-textarea',{attrs:{\"rows\":\"15\",\"readonly\":_vm.readonly,\"data-test\":\"editTextInput\"},model:{value:(_vm.json_content),callback:function ($$v) {_vm.json_content=$$v},expression:\"json_content\"}})],1),_c('v-row',{staticClass:\"my-3\"},[_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.error),expression:\"error\"}],staticClass:\"red--text\",domProps:{\"textContent\":_vm._s(_vm.error)}})]),_c('v-row',[_c('v-spacer'),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"outlined\":\"\",\"data-test\":\"editCancelBtn\"},on:{\"click\":function($event){$event.preventDefault();return _vm.close.apply(null, arguments)}}},[_vm._v(\" Cancel \")]),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"color\":\"primary\",\"type\":\"submit\",\"data-test\":\"editSubmitBtn\",\"disabled\":!!_vm.error || _vm.readonly}},[_vm._v(\" Save \")])],1)],1)])],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <v-dialog persistent v-model=\"show\" width=\"600\">\n <v-card>\n <form v-on:submit.prevent=\"submit\">\n <v-system-bar>\n <v-spacer />\n <span v-text=\"title\" />\n <v-spacer />\n <div class=\"mx-2\">\n <v-tooltip top>\n <template v-slot:activator=\"{ on, attrs }\">\n <div v-on=\"on\" v-bind=\"attrs\">\n <v-icon data-test=\"downloadIcon\" @click=\"download\">\n mdi-download\n </v-icon>\n </div>\n </template>\n <span> Download </span>\n </v-tooltip>\n </div>\n </v-system-bar>\n\n <v-card-text>\n <div class=\"pa-3\">\n <v-row class=\"mt-3\"> Upload a file. </v-row>\n <v-row no-gutters align=\"center\">\n <v-col cols=\"3\">\n <v-btn\n block\n color=\"success\"\n @click=\"loadFile\"\n :disabled=\"!file || loadingFile || readonly\"\n :loading=\"loadingFile\"\n data-test=\"editScreenLoadBtn\"\n >\n Load\n <template v-slot:loader>\n <span>Loading...</span>\n </template>\n </v-btn>\n </v-col>\n <v-col cols=\"9\">\n <v-file-input\n v-model=\"file\"\n accept=\".json\"\n label=\"Click to select .json file.\"\n :disabled=\"readonly\"\n />\n </v-col>\n </v-row>\n <v-row> Edit json content </v-row>\n <v-row no-gutters>\n <v-textarea\n v-model=\"json_content\"\n rows=\"15\"\n :readonly=\"readonly\"\n data-test=\"editTextInput\"\n />\n </v-row>\n <v-row class=\"my-3\">\n <span class=\"red--text\" v-show=\"error\" v-text=\"error\" />\n </v-row>\n <v-row>\n <v-spacer />\n <v-btn\n @click.prevent=\"close\"\n outlined\n class=\"mx-2\"\n data-test=\"editCancelBtn\"\n >\n Cancel\n </v-btn>\n <v-btn\n class=\"mx-2\"\n color=\"primary\"\n type=\"submit\"\n data-test=\"editSubmitBtn\"\n :disabled=\"!!error || readonly\"\n >\n Save\n </v-btn>\n </v-row>\n </div>\n </v-card-text>\n </form>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n content: {\n type: String,\n required: true,\n },\n title: String,\n value: Boolean, // value is the default prop when using v-model\n readonly: Boolean,\n },\n data() {\n return {\n json_content: this.content,\n }\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit('input', value) // input is the default event when using v-model\n },\n },\n error: function () {\n if (this.json_content === '' && !this.file) {\n return 'Input can not be blank.'\n }\n return null\n },\n },\n methods: {\n submit: function () {\n $emit('submit', json_content)\n this.json_content = null\n this.show = !this.show\n },\n close: function () {\n this.json_content = null\n this.show = !this.show\n },\n download: function () {\n const blob = new Blob([this.json_content], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', `${this.title}.json`)\n link.click()\n },\n },\n}\n</script>\n\n<style scoped>\n.v-card {\n background-color: var(--v-tertiary-darken2);\n}\n.v-textarea >>> textarea {\n padding: 5px;\n background-color: var(--v-tertiary-darken1) !important;\n}\n</style>\n","import mod from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditDialog.vue?vue&type=template&id=2c7bef4b&scoped=true&\"\nimport script from \"./EditDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./EditDialog.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditDialog.vue?vue&type=style&index=0&id=2c7bef4b&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c7bef4b\",\n null\n \n)\n\nexport default component.exports","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/@vue/cli-service/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-card[data-v-2c7bef4b]{background-color:var(--v-tertiary-darken2)}.v-textarea[data-v-2c7bef4b] textarea{padding:5px;background-color:var(--v-tertiary-darken1)!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/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[2]!../../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[3]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDialog.vue?vue&type=style&index=0&id=2c7bef4b&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(\"fc8e1770\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["request","method","url","data","params","headers","noAuth","noScope","CosmosAuth","updateToken","defaultMinValidity","login","localStorage","cosmosToken","scope","axios","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","path","put","post","delete","vueInstance","Vue","axiosInstance","baseURL","location","origin","timeout","interceptors","response","use","error","status","href","body","statusText","config","message","exception","class","$notify","serious","title","render","_vm","this","_h","$createElement","_c","_self","attrs","model","value","callback","$$v","show","expression","on","$event","preventDefault","submit","apply","arguments","domProps","_s","staticClass","scopedSlots","_u","key","fn","ref","_g","_b","download","_v","file","loadingFile","readonly","loadFile","proxy","json_content","directives","name","rawName","close","staticRenderFns","props","content","type","required","computed","set","methods","$emit","link","component","___CSS_LOADER_EXPORT___","push","module","id","__esModule","default","locals","exports","add"],"sourceRoot":""}
@@ -1 +1 @@
1
- {"version":3,"file":"js/337.js","mappings":"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","sources":["webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/MicroservicesTab.vue?a4bc","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue?6e97","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue?5d3c","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue?cd43","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/tabs/MicroservicesTab.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/MicroservicesTab.vue?30be","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/MicroservicesTab.vue"],"sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-alert',{attrs:{\"type\":_vm.alertType,\"dismissible\":\"\",\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),_c('v-list',{attrs:{\"data-test\":\"microserviceList\"}},_vm._l((_vm.microservices),function(microservice,index){return _c('div',{key:microservice},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',{domProps:{\"textContent\":_vm._s(microservice)}}),(_vm.microservice_status[microservice])?_c('v-list-item-subtitle',[_vm._v(\" Updated: \"+_vm._s(_vm.microservice_status[microservice].updated_at)+\", State: \"+_vm._s(_vm.microservice_status[microservice].state)+\", Count: \"+_vm._s(_vm.microservice_status[microservice].count)+\" \")]):_vm._e()],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!!_vm.microservice_status[microservice].error),expression:\"!!microservice_status[microservice].error\"}]},[_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.showMicroserviceError(microservice)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-alert \")])]}}],null,true)},[_c('span',[_vm._v(\"View Error\")])])],1)],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.editMicroservice(microservice)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-pencil \")])]}}],null,true)},[_c('span',[_vm._v(\"Edit Microservice\")])])],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.deleteMicroservice(microservice)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-delete \")])]}}],null,true)},[_c('span',[_vm._v(\"Delete Microservice\")])])],1)],1),(index < _vm.microservices.length - 1)?_c('v-divider',{key:index}):_vm._e()],1)}),0),_c('v-alert',{attrs:{\"dismissible\":\"\",\"type\":_vm.alertType,\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),(_vm.showDialog)?_c('edit-dialog',{attrs:{\"content\":_vm.jsonContent,\"title\":(\"Microservice: \" + _vm.dialogTitle)},on:{\"submit\":_vm.dialogCallback},model:{value:(_vm.showDialog),callback:function ($$v) {_vm.showDialog=$$v},expression:\"showDialog\"}}):_vm._e(),(_vm.showError)?_c('text-box-dialog',{attrs:{\"text\":_vm.jsonContent,\"title\":_vm.dialogTitle},model:{value:(_vm.showError),callback:function ($$v) {_vm.showError=$$v},expression:\"showError\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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'),_c('span',[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('v-spacer'),_c('div',{staticClass:\"mx-2\"},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('div',_vm._g(_vm._b({},'div',attrs,false),on),[_c('v-icon',{attrs:{\"data-test\":\"downloadIcon\"},on:{\"click\":_vm.download}},[_vm._v(\" mdi-download \")])],1)]}}])},[_c('span',[_vm._v(\" Download \")])])],1)],1),_c('div',{staticClass:\"pa-2\"},[_c('v-card-text',[_c('v-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"15\",\"data-test\":\"dialogText\"},model:{value:(_vm.dialogText),callback:function ($$v) {_vm.dialogText=$$v},expression:\"dialogText\"}})],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.show = !_vm.show}}},[_vm._v(\" Ok \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <v-dialog v-model=\"show\" width=\"600\">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span> {{ title }} </span>\n <v-spacer />\n <div class=\"mx-2\">\n <v-tooltip top>\n <template v-slot:activator=\"{ on, attrs }\">\n <div v-on=\"on\" v-bind=\"attrs\">\n <v-icon data-test=\"downloadIcon\" @click=\"download\">\n mdi-download\n </v-icon>\n </div>\n </template>\n <span> Download </span>\n </v-tooltip>\n </div>\n </v-system-bar>\n <div class=\"pa-2\">\n <v-card-text>\n <v-textarea\n v-model=\"dialogText\"\n readonly\n rows=\"15\"\n data-test=\"dialogText\"\n />\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn class=\"mx-2\" color=\"primary\" @click=\"show = !show\"> Ok </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n value: Boolean, // value is the default prop when using v-model\n text: String,\n title: String,\n },\n computed: {\n dialogText: function () {\n return this.text\n },\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit('input', value) // input is the default event when using v-model\n },\n },\n },\n methods: {\n download: function () {\n const blob = new Blob([this.dialogText], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', `${this.title}__error.txt`)\n link.click()\n },\n },\n}\n</script>\n","import mod from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TextBoxDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TextBoxDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TextBoxDialog.vue?vue&type=template&id=3c689779&\"\nimport script from \"./TextBoxDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./TextBoxDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/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","<!--\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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <div>\n <v-alert\n :type=\"alertType\"\n v-model=\"showAlert\"\n dismissible\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <v-list data-test=\"microserviceList\">\n <div v-for=\"(microservice, index) in microservices\" :key=\"microservice\">\n <v-list-item>\n <v-list-item-content>\n <v-list-item-title v-text=\"microservice\" />\n <v-list-item-subtitle v-if=\"microservice_status[microservice]\">\n Updated: {{ microservice_status[microservice].updated_at }},\n State: {{ microservice_status[microservice].state }}, Count:\n {{ microservice_status[microservice].count }}\n </v-list-item-subtitle>\n </v-list-item-content>\n <div v-show=\"!!microservice_status[microservice].error\">\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"showMicroserviceError(microservice)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-alert\n </v-icon>\n </template>\n <span>View Error</span>\n </v-tooltip>\n </v-list-item-icon>\n </div>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"editMicroservice(microservice)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-pencil\n </v-icon>\n </template>\n <span>Edit Microservice</span>\n </v-tooltip>\n </v-list-item-icon>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"deleteMicroservice(microservice)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-delete\n </v-icon>\n </template>\n <span>Delete Microservice</span>\n </v-tooltip>\n </v-list-item-icon>\n </v-list-item>\n <v-divider v-if=\"index < microservices.length - 1\" :key=\"index\" />\n </div>\n </v-list>\n <v-alert\n dismissible\n v-model=\"showAlert\"\n :type=\"alertType\"\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <edit-dialog\n v-model=\"showDialog\"\n v-if=\"showDialog\"\n :content=\"jsonContent\"\n :title=\"`Microservice: ${dialogTitle}`\"\n @submit=\"dialogCallback\"\n />\n <text-box-dialog\n v-model=\"showError\"\n v-if=\"showError\"\n :text=\"jsonContent\"\n :title=\"dialogTitle\"\n />\n </div>\n</template>\n\n<script>\nimport Api from '@cosmosc2/tool-common/src/services/api'\nimport EditDialog from '@/tools/CosmosAdmin/EditDialog'\nimport TextBoxDialog from '@cosmosc2/tool-common/src/components/TextBoxDialog'\n\nexport default {\n components: {\n EditDialog,\n TextBoxDialog,\n },\n data() {\n return {\n microservices: [],\n microservice_status: {},\n microservice_id: null,\n alert: '',\n alertType: 'success',\n showAlert: false,\n jsonContent: '',\n dialogTitle: '',\n showDialog: false,\n showError: false,\n }\n },\n mounted() {\n this.update()\n },\n methods: {\n update: function () {\n Api.get('/cosmos-api/microservice_status/all').then((response) => {\n this.microservice_status = response.data\n })\n Api.get('/cosmos-api/microservices').then((response) => {\n this.microservices = response.data\n })\n },\n editMicroservice: function (name) {\n Api.get(`/cosmos-api/microservices/${name}`).then((response) => {\n this.microservice_id = name\n this.dialogTitle = name\n this.jsonContent = JSON.stringify(response.data, null, '\\t')\n this.showDialog = true\n })\n },\n showMicroserviceError: function (name) {\n this.dialogTitle = name\n const e = this.microservice_status[name].error\n this.jsonContent = JSON.stringify(e, null, '\\t')\n this.showError = true\n },\n dialogCallback: function (content) {\n this.showDialog = false\n if (content !== null) {\n let parsed = JSON.parse(content)\n let method = 'put'\n let url = `/cosmos-api/microservices/${this.microservice_id}`\n if (parsed['name'] !== this.microservice_id) {\n method = 'post'\n url = '/cosmos-api/microservices'\n }\n\n Api[method](url, {\n data: {\n json: content,\n },\n }).then((response) => {\n this.alert = 'Modified Microservice'\n this.alertType = 'success'\n this.showAlert = true\n setTimeout(() => {\n this.showAlert = false\n }, 5000)\n this.update()\n })\n }\n },\n deleteMicroservice: function (name) {\n this.$dialog\n .confirm(`Are you sure you want to remove: ${name}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then(function (dialog) {\n return Api.delete(`/cosmos-api/microservices/${name}`)\n })\n .then((response) => {\n this.alert = `Removed microservice ${name}`\n this.alertType = 'success'\n this.showAlert = true\n setTimeout(() => {\n this.showAlert = false\n }, 5000)\n this.update()\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MicroservicesTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MicroservicesTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MicroservicesTab.vue?vue&type=template&id=1e5cb256&\"\nimport script from \"./MicroservicesTab.vue?vue&type=script&lang=js&\"\nexport * from \"./MicroservicesTab.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/cli-service/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"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","alertType","model","value","callback","$$v","showAlert","expression","_v","_s","alert","_l","microservice","index","key","domProps","microservice_status","updated_at","state","count","_e","directives","name","rawName","error","scopedSlots","_u","fn","ref","on","_g","_b","$event","showMicroserviceError","editMicroservice","deleteMicroservice","microservices","length","jsonContent","dialogTitle","dialogCallback","showDialog","showError","staticRenderFns","show","title","staticClass","download","dialogText","props","Boolean","text","String","computed","get","set","$emit","methods","type","link","href","URL","createObjectURL","blob","setAttribute","click","component","components","EditDialog","TextBoxDialog","data","microservice_id","mounted","update","Api","then","JSON","stringify","e","content","parsed","method","url","json","setTimeout","$dialog","confirm","okText","cancelText"],"sourceRoot":""}
1
+ {"version":3,"file":"js/337.js","mappings":"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","sources":["webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/MicroservicesTab.vue?a4bc","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue?6e97","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue?5d3c","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TextBoxDialog.vue?cd43","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/tabs/MicroservicesTab.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/MicroservicesTab.vue?30be","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/MicroservicesTab.vue"],"sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-alert',{attrs:{\"type\":_vm.alertType,\"dismissible\":\"\",\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),_c('v-list',{attrs:{\"data-test\":\"microserviceList\"}},_vm._l((_vm.microservices),function(microservice,index){return _c('div',{key:microservice},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',{domProps:{\"textContent\":_vm._s(microservice)}}),(_vm.microservice_status[microservice])?_c('v-list-item-subtitle',[_vm._v(\" Updated: \"+_vm._s(_vm.microservice_status[microservice].updated_at)+\", State: \"+_vm._s(_vm.microservice_status[microservice].state)+\", Count: \"+_vm._s(_vm.microservice_status[microservice].count)+\" \")]):_vm._e()],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!!_vm.microservice_status[microservice].error),expression:\"!!microservice_status[microservice].error\"}]},[_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.showMicroserviceError(microservice)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-alert \")])]}}],null,true)},[_c('span',[_vm._v(\"View Error\")])])],1)],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.editMicroservice(microservice)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-pencil \")])]}}],null,true)},[_c('span',[_vm._v(\"Edit Microservice\")])])],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.deleteMicroservice(microservice)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-delete \")])]}}],null,true)},[_c('span',[_vm._v(\"Delete Microservice\")])])],1)],1),(index < _vm.microservices.length - 1)?_c('v-divider',{key:index}):_vm._e()],1)}),0),_c('v-alert',{attrs:{\"dismissible\":\"\",\"type\":_vm.alertType,\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),(_vm.showDialog)?_c('edit-dialog',{attrs:{\"content\":_vm.jsonContent,\"title\":(\"Microservice: \" + _vm.dialogTitle)},on:{\"submit\":_vm.dialogCallback},model:{value:(_vm.showDialog),callback:function ($$v) {_vm.showDialog=$$v},expression:\"showDialog\"}}):_vm._e(),(_vm.showError)?_c('text-box-dialog',{attrs:{\"text\":_vm.jsonContent,\"title\":_vm.dialogTitle},model:{value:(_vm.showError),callback:function ($$v) {_vm.showError=$$v},expression:\"showError\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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'),_c('span',[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('v-spacer'),_c('div',{staticClass:\"mx-2\"},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('div',_vm._g(_vm._b({},'div',attrs,false),on),[_c('v-icon',{attrs:{\"data-test\":\"downloadIcon\"},on:{\"click\":_vm.download}},[_vm._v(\" mdi-download \")])],1)]}}])},[_c('span',[_vm._v(\" Download \")])])],1)],1),_c('div',{staticClass:\"pa-2\"},[_c('v-card-text',[_c('v-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"15\",\"data-test\":\"dialogText\"},model:{value:(_vm.dialogText),callback:function ($$v) {_vm.dialogText=$$v},expression:\"dialogText\"}})],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"mx-2\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.show = !_vm.show}}},[_vm._v(\" Ok \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <v-dialog v-model=\"show\" width=\"600\">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span> {{ title }} </span>\n <v-spacer />\n <div class=\"mx-2\">\n <v-tooltip top>\n <template v-slot:activator=\"{ on, attrs }\">\n <div v-on=\"on\" v-bind=\"attrs\">\n <v-icon data-test=\"downloadIcon\" @click=\"download\">\n mdi-download\n </v-icon>\n </div>\n </template>\n <span> Download </span>\n </v-tooltip>\n </div>\n </v-system-bar>\n <div class=\"pa-2\">\n <v-card-text>\n <v-textarea\n v-model=\"dialogText\"\n readonly\n rows=\"15\"\n data-test=\"dialogText\"\n />\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn class=\"mx-2\" color=\"primary\" @click=\"show = !show\"> Ok </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n value: Boolean, // value is the default prop when using v-model\n text: String,\n title: String,\n },\n computed: {\n dialogText: function () {\n return this.text\n },\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit('input', value) // input is the default event when using v-model\n },\n },\n },\n methods: {\n download: function () {\n const blob = new Blob([this.dialogText], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', `${this.title}__error.txt`)\n link.click()\n },\n },\n}\n</script>\n","import mod from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TextBoxDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TextBoxDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TextBoxDialog.vue?vue&type=template&id=3c689779&\"\nimport script from \"./TextBoxDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./TextBoxDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/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","<!--\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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <div>\n <v-alert\n :type=\"alertType\"\n v-model=\"showAlert\"\n dismissible\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <v-list data-test=\"microserviceList\">\n <div v-for=\"(microservice, index) in microservices\" :key=\"microservice\">\n <v-list-item>\n <v-list-item-content>\n <v-list-item-title v-text=\"microservice\" />\n <v-list-item-subtitle v-if=\"microservice_status[microservice]\">\n Updated: {{ microservice_status[microservice].updated_at }},\n State: {{ microservice_status[microservice].state }}, Count:\n {{ microservice_status[microservice].count }}\n </v-list-item-subtitle>\n </v-list-item-content>\n <div v-show=\"!!microservice_status[microservice].error\">\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"showMicroserviceError(microservice)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-alert\n </v-icon>\n </template>\n <span>View Error</span>\n </v-tooltip>\n </v-list-item-icon>\n </div>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"editMicroservice(microservice)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-pencil\n </v-icon>\n </template>\n <span>Edit Microservice</span>\n </v-tooltip>\n </v-list-item-icon>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"deleteMicroservice(microservice)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-delete\n </v-icon>\n </template>\n <span>Delete Microservice</span>\n </v-tooltip>\n </v-list-item-icon>\n </v-list-item>\n <v-divider v-if=\"index < microservices.length - 1\" :key=\"index\" />\n </div>\n </v-list>\n <v-alert\n dismissible\n v-model=\"showAlert\"\n :type=\"alertType\"\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <edit-dialog\n v-model=\"showDialog\"\n v-if=\"showDialog\"\n :content=\"jsonContent\"\n :title=\"`Microservice: ${dialogTitle}`\"\n @submit=\"dialogCallback\"\n />\n <text-box-dialog\n v-model=\"showError\"\n v-if=\"showError\"\n :text=\"jsonContent\"\n :title=\"dialogTitle\"\n />\n </div>\n</template>\n\n<script>\nimport Api from '@cosmosc2/tool-common/src/services/api'\nimport EditDialog from '@/tools/CosmosAdmin/EditDialog'\nimport TextBoxDialog from '@cosmosc2/tool-common/src/components/TextBoxDialog'\n\nexport default {\n components: {\n EditDialog,\n TextBoxDialog,\n },\n data() {\n return {\n microservices: [],\n microservice_status: {},\n microservice_id: null,\n alert: '',\n alertType: 'success',\n showAlert: false,\n jsonContent: '',\n dialogTitle: '',\n showDialog: false,\n showError: false,\n }\n },\n mounted() {\n this.update()\n },\n methods: {\n update: function () {\n Api.get('/cosmos-api/microservice_status/all').then((response) => {\n this.microservice_status = response.data\n })\n Api.get('/cosmos-api/microservices').then((response) => {\n this.microservices = response.data\n })\n },\n editMicroservice: function (name) {\n Api.get(`/cosmos-api/microservices/${name}`).then((response) => {\n this.microservice_id = name\n this.dialogTitle = name\n this.jsonContent = JSON.stringify(response.data, null, '\\t')\n this.showDialog = true\n })\n },\n showMicroserviceError: function (name) {\n this.dialogTitle = name\n const e = this.microservice_status[name].error\n this.jsonContent = JSON.stringify(e, null, '\\t')\n this.showError = true\n },\n dialogCallback: function (content) {\n this.showDialog = false\n if (content !== null) {\n let parsed = JSON.parse(content)\n let method = 'put'\n let url = `/cosmos-api/microservices/${this.microservice_id}`\n if (parsed['name'] !== this.microservice_id) {\n method = 'post'\n url = '/cosmos-api/microservices'\n }\n\n Api[method](url, {\n data: {\n json: content,\n },\n }).then((response) => {\n this.alert = 'Modified Microservice'\n this.alertType = 'success'\n this.showAlert = true\n setTimeout(() => {\n this.showAlert = false\n }, 5000)\n this.update()\n })\n }\n },\n deleteMicroservice: function (name) {\n this.$dialog\n .confirm(`Are you sure you want to remove: ${name}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then(function (dialog) {\n return Api.delete(`/cosmos-api/microservices/${name}`)\n })\n .then((response) => {\n this.alert = `Removed microservice ${name}`\n this.alertType = 'success'\n this.showAlert = true\n setTimeout(() => {\n this.showAlert = false\n }, 5000)\n this.update()\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MicroservicesTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MicroservicesTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MicroservicesTab.vue?vue&type=template&id=1e5cb256&\"\nimport script from \"./MicroservicesTab.vue?vue&type=script&lang=js&\"\nexport * from \"./MicroservicesTab.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/cli-service/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"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","alertType","model","value","callback","$$v","showAlert","expression","_v","_s","alert","_l","microservice","index","key","domProps","microservice_status","updated_at","state","count","_e","directives","name","rawName","error","scopedSlots","_u","fn","ref","on","_g","_b","$event","showMicroserviceError","editMicroservice","deleteMicroservice","microservices","length","jsonContent","dialogTitle","dialogCallback","showDialog","showError","staticRenderFns","show","title","staticClass","download","dialogText","props","text","computed","get","set","methods","type","link","component","components","EditDialog","TextBoxDialog","data","microservice_id","mounted","update","Api","method","url","json","then","setTimeout","confirm","okText","cancelText"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self["webpackChunk_cosmosc2_tool_admin"]=self["webpackChunk_cosmosc2_tool_admin"]||[]).push([[34],{9985:function(e,n,o){var t=o(8373),s=o(9490),a=(o(5047),o(2741)),r=function(){var e=(0,s.Z)(regeneratorRuntime.mark((function e(n,o){var t,s,r,i,c,l,d,u,m,p=arguments;return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(t=p.length>2&&void 0!==p[2]?p[2]:{},s=t.data,r=t.params,i=void 0===r?{}:r,c=t.headers,l=t.noAuth,d=void 0!==l&&l,u=t.noScope,m=void 0!==u&&u,d){e.next=11;break}return e.prev=2,e.next=5,CosmosAuth.updateToken(CosmosAuth.defaultMinValidity);case 5:e.next=10;break;case 7:e.prev=7,e.t0=e["catch"](2),CosmosAuth.login();case 10:c["Authorization"]=localStorage.cosmosToken;case 11:return m||i["scope"]||(i["scope"]=localStorage.scope),e.abrupt("return",(0,a.Z)({method:n,url:o,data:s,params:i,headers:c}));case 13:case"end":return e.stop()}}),e,null,[[2,7]])})));return function(n,o){return e.apply(this,arguments)}}(),i={Accept:"application/json"},c=(0,t.Z)((0,t.Z)({},i),{},{"Content-Type":"application/json"});n["Z"]={get:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=n.params,t=n.headers,s=void 0===t?i:t,a=n.noScope,c=n.noAuth;return r("get",e,{params:o,headers:s,noScope:a,noAuth:c})},put:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=n.data,t=n.params,s=n.headers,a=void 0===s?c:s,i=n.noScope,l=n.noAuth;return r("put",e,{data:o,params:t,headers:a,noScope:i,noAuth:l})},post:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=n.data,t=n.params,s=n.headers,a=void 0===s?c:s,i=n.noScope,l=n.noAuth;return r("post",e,{data:o,params:t,headers:a,noScope:i,noAuth:l})},delete:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=n.params,t=n.headers,s=void 0===t?i:t,a=n.noScope,c=n.noAuth;return r("delete",e,{params:o,headers:s,noScope:a,noAuth:c})}}},2741:function(e,n,o){var t=o(9644),s=o.n(t),a=o(4091),r=new a["default"],i=s().create({baseURL:location.origin,timeout:1e4,params:{}});i.interceptors.response.use((function(e){return e}),(function(e){if(401===e.response.status)delete localStorage.cosmosToken,CosmosAuth.login(location.href);else{var n,o,t,s,a,i,c,l,d,u,m="HTTP ".concat(e.response.status," - ");if(null!==(n=e.response)&&void 0!==n&&n.statusText&&(m+="".concat(e.response.statusText," ")),null!==(o=e.response)&&void 0!==o&&null!==(t=o.config)&&void 0!==t&&t.data&&(m+="".concat(e.response.config.data," ")),null!==(s=e.response)&&void 0!==s&&null!==(a=s.data)&&void 0!==a&&a.message)m+="".concat(e.response.data.message);else if(null!==(i=e.response)&&void 0!==i&&null!==(c=i.data)&&void 0!==c&&c.exception)m+="".concat(e.response.data.exception);else if(null!==(l=e.response)&&void 0!==l&&null!==(d=l.data)&&void 0!==d&&null!==(u=d.error)&&void 0!==u&&u.message)e.response.data.error.class&&(m+="".concat(e.response.data.error.class," ")),m+="".concat(e.response.data.error.message);else{var p;m+="".concat(null===(p=e.response)||void 0===p?void 0:p.data)}r.$notify.serious({title:"Network error",body:m})}throw e})),n["Z"]=i},2034:function(e,n,o){o.r(n),o.d(n,{default:function(){return u}});var t=function(){var e=this,n=e.$createElement,o=e._self._c||n;return o("div",[o("v-card",[o("v-card-title",[e._v(" Send Raw Redis Commands ")]),o("v-card-subtitle",[e._v(" THIS IS DANGEROUS. This allows you to interact directly with the underlying Redis database, making it easy to modify or delete data. "),o("br"),o("br"),e._v(" Enter commands like you would at the Redis cli prompt: "),o("code",[e._v("ping")]),e._v(" or "),o("code",[e._v("hget cosmos__settings version")])]),o("v-card-text",{staticClass:"pb-0 ml-2"},[o("v-text-field",{attrs:{label:"Redis command"},on:{keydown:e.commandKeydown},model:{value:e.redisCommandText,callback:function(n){e.redisCommandText=n},expression:"redisCommandText"}}),e.redisResponse?o("span",[e._v(" Response: "+e._s(e.redisResponse)+" ")]):e._e()],1),o("v-card-actions",[o("v-btn",{staticClass:"ml-2",attrs:{disabled:!e.redisCommandText.length,color:"success",text:""},on:{click:e.executeRaw}},[e._v(" Execute ")])],1)],1)],1)},s=[],a=o(9985);function r(){var e="/cosmos/plugins/packages/cosmosc2-tool-admin/src/tools/CosmosAdmin/tabs/RedisTab.vue",n="71d8c1e1ad99ecbf172e29b7d1d9ff2255cc67e5",o=new Function("return this")(),t="__coverage__",s={path:"/cosmos/plugins/packages/cosmosc2-tool-admin/src/tools/CosmosAdmin/tabs/RedisTab.vue",statementMap:{0:{start:{line:60,column:4},end:{line:63,column:5}},1:{start:{line:67,column:6},end:{line:67,column:49}},2:{start:{line:70,column:6},end:{line:70,column:31}},3:{start:{line:71,column:6},end:{line:79,column:8}},4:{start:{line:78,column:8},end:{line:78,column:49}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:59,column:2},end:{line:59,column:3}},loc:{start:{line:59,column:9},end:{line:64,column:3}},line:59},1:{name:"(anonymous_1)",decl:{start:{line:66,column:20},end:{line:66,column:21}},loc:{start:{line:66,column:38},end:{line:68,column:5}},line:66},2:{name:"(anonymous_2)",decl:{start:{line:69,column:16},end:{line:69,column:17}},loc:{start:{line:69,column:28},end:{line:80,column:5}},line:69},3:{name:"(anonymous_3)",decl:{start:{line:77,column:14},end:{line:77,column:15}},loc:{start:{line:77,column:28},end:{line:79,column:7}},line:77}},branchMap:{0:{loc:{start:{line:67,column:6},end:{line:67,column:49}},type:"binary-expr",locations:[{start:{line:67,column:6},end:{line:67,column:28}},{start:{line:67,column:32},end:{line:67,column:49}}],line:67}},s:{0:0,1:0,2:0,3:0,4:0},f:{0:0,1:0,2:0,3:0},b:{0:[0,0]},inputSourceMap:{version:3,sources:["RedisTab.vue"],names:[],mappings:";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuDA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",file:"RedisTab.vue",sourceRoot:"src/tools/CosmosAdmin/tabs",sourcesContent:['\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n--\x3e\n\n<template>\n <div>\n <v-card>\n <v-card-title> Send Raw Redis Commands </v-card-title>\n <v-card-subtitle>\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 <br /><br />\n Enter commands like you would at the Redis cli prompt:\n <code>ping</code> or\n <code>hget cosmos__settings version</code>\n </v-card-subtitle>\n <v-card-text class="pb-0 ml-2">\n <v-text-field\n label="Redis command"\n v-model="redisCommandText"\n @keydown="commandKeydown"\n />\n <span v-if="redisResponse"> Response: {{ redisResponse }} </span>\n </v-card-text>\n <v-card-actions>\n <v-btn\n :disabled="!redisCommandText.length"\n @click="executeRaw"\n color="success"\n text\n class="ml-2"\n >\n Execute\n </v-btn>\n </v-card-actions>\n </v-card>\n </div>\n</template>\n\n<script>\nimport Api from \'@cosmosc2/tool-common/src/services/api\'\n\nexport default {\n data() {\n return {\n redisCommandText: \'\',\n redisResponse: null,\n }\n },\n methods: {\n commandKeydown: function ($event) {\n $event.key === \'Enter\' && this.executeRaw()\n },\n executeRaw: function () {\n this.redisResponse = null\n Api.post(\'/cosmos-api/redis/exec\', {\n data: this.redisCommandText,\n headers: {\n Accept: \'application/json\',\n \'Content-Type\': \'plain/text\',\n },\n }).then((response) => {\n this.redisResponse = response.data.result\n })\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"71d8c1e1ad99ecbf172e29b7d1d9ff2255cc67e5"},a=o[t]||(o[t]={});a[e]&&a[e].hash===n||(a[e]=s);var i=a[e];return r=function(){return i},i}r();var i={data:function(){return r().f[0]++,r().s[0]++,{redisCommandText:"",redisResponse:null}},methods:{commandKeydown:function(e){r().f[1]++,r().s[1]++,r().b[0][0]++,"Enter"===e.key&&(r().b[0][1]++,this.executeRaw())},executeRaw:function(){var e=this;r().f[2]++,r().s[2]++,this.redisResponse=null,r().s[3]++,a.Z.post("/cosmos-api/redis/exec",{data:this.redisCommandText,headers:{Accept:"application/json","Content-Type":"plain/text"}}).then((function(n){r().f[3]++,r().s[4]++,e.redisResponse=n.data.result}))}}},c=i,l=o(3287),d=(0,l.Z)(c,t,s,!1,null,null,null),u=d.exports}}]);
2
+ //# sourceMappingURL=34.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js/34.js","mappings":"kLAqBMA,EAAO,kDAAG,WACdC,EACAC,GAFc,uJAGoD,GAAhEC,EAHY,EAGZA,KAHY,IAGNC,OAAAA,OAHM,MAGG,GAHH,EAGOC,EAHP,EAGOA,QAHP,IAGgBC,OAAAA,OAHhB,aAGgCC,QAAAA,OAHhC,SAKTD,EALS,0CAOJE,WAAWC,YAAYD,WAAWE,oBAP9B,0DASVF,WAAWG,QATD,QAWZN,EAAQ,iBAAmBO,aAAaC,YAX5B,eAaTN,GAAYH,EAAO,WACtBA,EAAO,SAAWQ,aAAaE,OAdnB,mBAgBPC,EAAAA,EAAAA,GAAM,CACXd,OAAAA,EACAC,IAAAA,EACAC,KAAAA,EACAC,OAAAA,EACAC,QAAAA,KArBY,yDAAH,wDAyBPW,EAA2B,CAC/BC,OAAQ,oBAGJC,GAAqB,kBACtBF,GADmB,IAEtB,eAAgB,qBAGlB,QACEG,IAAK,SACHC,GAEA,6DADkE,GAAhEhB,EACF,EADEA,OACF,IADUC,QAAAA,OACV,MADoBW,EACpB,EAD8CT,EAC9C,EAD8CA,QAASD,EACvD,EADuDA,OAEvD,OAAON,EAAQ,MAAOoB,EAAM,CAAEhB,OAAAA,EAAQC,QAAAA,EAASE,QAAAA,EAASD,OAAAA,KAG1De,IAAK,SACHD,GAEA,6DADkE,GAAhEjB,EACF,EADEA,KAAMC,EACR,EADQA,OACR,IADgBC,QAAAA,OAChB,MAD0Ba,EAC1B,EAD8CX,EAC9C,EAD8CA,QAASD,EACvD,EADuDA,OAEvD,OAAON,EAAQ,MAAOoB,EAAM,CAAEjB,KAAAA,EAAMC,OAAAA,EAAQC,QAAAA,EAASE,QAAAA,EAASD,OAAAA,KAGhEgB,KAAM,SACJF,GAEA,6DADkE,GAAhEjB,EACF,EADEA,KAAMC,EACR,EADQA,OACR,IADgBC,QAAAA,OAChB,MAD0Ba,EAC1B,EAD8CX,EAC9C,EAD8CA,QAASD,EACvD,EADuDA,OAEvD,OAAON,EAAQ,OAAQoB,EAAM,CAAEjB,KAAAA,EAAMC,OAAAA,EAAQC,QAAAA,EAASE,QAAAA,EAASD,OAAAA,KAGjEiB,OAAQ,SACNH,GAEA,6DADkE,GAAhEhB,EACF,EADEA,OACF,IADUC,QAAAA,OACV,MADoBW,EACpB,EAD8CT,EAC9C,EAD8CA,QAASD,EACvD,EADuDA,OAEvD,OAAON,EAAQ,SAAUoB,EAAM,CAAEhB,OAAAA,EAAQC,QAAAA,EAASE,QAAAA,EAASD,OAAAA,O,sDC3DzDkB,EAAc,IAAIC,EAAAA,WAElBC,EAAgBX,IAAAA,OAAa,CACjCY,QAASC,SAASC,OAClBC,QAAS,IACT1B,OAAQ,KAGVsB,EAAcK,aAAaC,SAASC,KAClC,SAACD,GAAD,OAAcA,KACd,SAACE,GACC,GAA8B,MAA1BA,EAAMF,SAASG,cACVvB,aAAaC,YACpBL,WAAWG,MAAMiB,SAASQ,UACrB,yBACDC,EAAO,QAAH,OAAWH,EAAMF,SAASG,OAA1B,OAOR,GANA,UAAID,EAAMF,gBAAV,OAAI,EAAgBM,aAClBD,GAAQ,GAAJ,OAAOH,EAAMF,SAASM,WAAtB,MAEN,UAAIJ,EAAMF,gBAAV,iBAAI,EAAgBO,cAApB,OAAI,EAAwBpC,OAC1BkC,GAAQ,GAAJ,OAAOH,EAAMF,SAASO,OAAOpC,KAA7B,MAEN,UAAI+B,EAAMF,gBAAV,iBAAI,EAAgB7B,YAApB,OAAI,EAAsBqC,QACxBH,GAAQ,GAAJ,OAAOH,EAAMF,SAAS7B,KAAKqC,cAC1B,aAAIN,EAAMF,gBAAV,iBAAI,EAAgB7B,YAApB,OAAI,EAAsBsC,UAC/BJ,GAAQ,GAAJ,OAAOH,EAAMF,SAAS7B,KAAKsC,gBAC1B,aAAIP,EAAMF,gBAAV,iBAAI,EAAgB7B,YAApB,iBAAI,EAAsB+B,aAA1B,OAAI,EAA6BM,QAClCN,EAAMF,SAAS7B,KAAK+B,MAAMQ,QAC5BL,GAAQ,GAAJ,OAAOH,EAAMF,SAAS7B,KAAK+B,MAAMQ,MAAjC,MAENL,GAAQ,GAAJ,OAAOH,EAAMF,SAAS7B,KAAK+B,MAAMM,aAChC,OACLH,GAAQ,GAAJ,iBAAOH,EAAMF,gBAAb,aAAO,EAAgB7B,MAE7BqB,EAAYmB,QAAQC,QAAQ,CAC1BC,MAAO,gBACPR,KAAAA,IAGJ,MAAMH,KAIV,U,kECjEA,IAAIY,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,SAAS,CAACA,EAAG,eAAe,CAACJ,EAAIM,GAAG,+BAA+BF,EAAG,kBAAkB,CAACJ,EAAIM,GAAG,0IAA0IF,EAAG,MAAMA,EAAG,MAAMJ,EAAIM,GAAG,4DAA4DF,EAAG,OAAO,CAACJ,EAAIM,GAAG,UAAUN,EAAIM,GAAG,QAAQF,EAAG,OAAO,CAACJ,EAAIM,GAAG,qCAAqCF,EAAG,cAAc,CAACG,YAAY,aAAa,CAACH,EAAG,eAAe,CAACI,MAAM,CAAC,MAAQ,iBAAiBC,GAAG,CAAC,QAAUT,EAAIU,gBAAgBC,MAAM,CAACC,MAAOZ,EAAoB,iBAAEa,SAAS,SAAUC,GAAMd,EAAIe,iBAAiBD,GAAKE,WAAW,sBAAuBhB,EAAiB,cAAEI,EAAG,OAAO,CAACJ,EAAIM,GAAG,cAAcN,EAAIiB,GAAGjB,EAAIkB,eAAe,OAAOlB,EAAImB,MAAM,GAAGf,EAAG,iBAAiB,CAACA,EAAG,QAAQ,CAACG,YAAY,OAAOC,MAAM,CAAC,UAAYR,EAAIe,iBAAiBK,OAAO,MAAQ,UAAU,KAAO,IAAIX,GAAG,CAAC,MAAQT,EAAIqB,aAAa,CAACrB,EAAIM,GAAG,gBAAgB,IAAI,IAAI,IACliCgB,EAAkB,G,y3ICwDtB,OACAlE,KADA,WAEA,OADA,sBACA,CACA2D,iBAAAA,GACAG,cAAAA,OAGAK,QAAAA,CACAb,eAAAA,SAAAA,GAAA,sBACA,kEAEAW,WAAAA,WAAA,iCACA,wBADA,WAEAG,EAAAA,EAAAA,KAAAA,yBAAAA,CACApE,KAAAA,KAAAA,iBACAE,QAAAA,CACAY,OAAAA,mBACA,+BAEAuD,MAAA,kCACA,oCC7E4Y,I,UCOxYC,GAAY,OACd,EACA3B,EACAuB,GACA,EACA,KACA,KACA,MAIF,EAAeI,EAAiB","sources":["webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/services/api.js","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/services/axios.js","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/RedisTab.vue?0359","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/tabs/RedisTab.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/RedisTab.vue?1daf","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/RedisTab.vue"],"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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\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 await CosmosAuth.updateToken(CosmosAuth.defaultMinValidity)\n } catch (error) {\n CosmosAuth.login()\n }\n headers['Authorization'] = localStorage.cosmosToken\n }\n if (!noScope && !params['scope']) {\n params['scope'] = localStorage.scope\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# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\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: 10000,\n params: {},\n})\n\naxiosInstance.interceptors.response.use(\n (response) => response,\n (error) => {\n if (error.response.status === 401) {\n delete localStorage.cosmosToken\n CosmosAuth.login(location.href)\n } else {\n let body = `HTTP ${error.response.status} - `\n if (error.response?.statusText) {\n body += `${error.response.statusText} `\n }\n if (error.response?.config?.data) {\n body += `${error.response.config.data} `\n }\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n }\n throw error\n }\n)\n\nexport default axiosInstance\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-card',[_c('v-card-title',[_vm._v(\" Send Raw Redis Commands \")]),_c('v-card-subtitle',[_vm._v(\" THIS IS DANGEROUS. This allows you to interact directly with the underlying Redis database, making it easy to modify or delete data. \"),_c('br'),_c('br'),_vm._v(\" Enter commands like you would at the Redis cli prompt: \"),_c('code',[_vm._v(\"ping\")]),_vm._v(\" or \"),_c('code',[_vm._v(\"hget cosmos__settings version\")])]),_c('v-card-text',{staticClass:\"pb-0 ml-2\"},[_c('v-text-field',{attrs:{\"label\":\"Redis command\"},on:{\"keydown\":_vm.commandKeydown},model:{value:(_vm.redisCommandText),callback:function ($$v) {_vm.redisCommandText=$$v},expression:\"redisCommandText\"}}),(_vm.redisResponse)?_c('span',[_vm._v(\" Response: \"+_vm._s(_vm.redisResponse)+\" \")]):_vm._e()],1),_c('v-card-actions',[_c('v-btn',{staticClass:\"ml-2\",attrs:{\"disabled\":!_vm.redisCommandText.length,\"color\":\"success\",\"text\":\"\"},on:{\"click\":_vm.executeRaw}},[_vm._v(\" Execute \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <div>\n <v-card>\n <v-card-title> Send Raw Redis Commands </v-card-title>\n <v-card-subtitle>\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 <br /><br />\n Enter commands like you would at the Redis cli prompt:\n <code>ping</code> or\n <code>hget cosmos__settings version</code>\n </v-card-subtitle>\n <v-card-text class=\"pb-0 ml-2\">\n <v-text-field\n label=\"Redis command\"\n v-model=\"redisCommandText\"\n @keydown=\"commandKeydown\"\n />\n <span v-if=\"redisResponse\"> Response: {{ redisResponse }} </span>\n </v-card-text>\n <v-card-actions>\n <v-btn\n :disabled=\"!redisCommandText.length\"\n @click=\"executeRaw\"\n color=\"success\"\n text\n class=\"ml-2\"\n >\n Execute\n </v-btn>\n </v-card-actions>\n </v-card>\n </div>\n</template>\n\n<script>\nimport Api from '@cosmosc2/tool-common/src/services/api'\n\nexport default {\n data() {\n return {\n redisCommandText: '',\n redisResponse: null,\n }\n },\n methods: {\n commandKeydown: function ($event) {\n $event.key === 'Enter' && this.executeRaw()\n },\n executeRaw: function () {\n this.redisResponse = null\n Api.post('/cosmos-api/redis/exec', {\n data: this.redisCommandText,\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'plain/text',\n },\n }).then((response) => {\n this.redisResponse = response.data.result\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/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/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/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=a8c37f58&\"\nimport script from \"./RedisTab.vue?vue&type=script&lang=js&\"\nexport * from \"./RedisTab.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/cli-service/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"],"names":["request","method","url","data","params","headers","noAuth","noScope","CosmosAuth","updateToken","defaultMinValidity","login","localStorage","cosmosToken","scope","axios","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","path","put","post","delete","vueInstance","Vue","axiosInstance","baseURL","location","origin","timeout","interceptors","response","use","error","status","href","body","statusText","config","message","exception","class","$notify","serious","title","render","_vm","this","_h","$createElement","_c","_self","_v","staticClass","attrs","on","commandKeydown","model","value","callback","$$v","redisCommandText","expression","_s","redisResponse","_e","length","executeRaw","staticRenderFns","methods","Api","then","component"],"sourceRoot":""}
@@ -1 +1 @@
1
- {"version":3,"file":"js/442.js","mappings":"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","sources":["webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/CosmosAdmin.vue?7dad","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?228d","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?adab","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?dfc0","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/CosmosAdmin.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/CosmosAdmin.vue?2f73","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/CosmosAdmin.vue","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?b2db","webpack://@cosmosc2/tool-admin/../../node_modules/core-js/modules/es.string.replace-all.js","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?5429"],"sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('top-bar',{attrs:{\"title\":_vm.title}}),_c('v-card',[_c('v-tabs',{attrs:{\"fixed-tabs\":\"\"},model:{value:(_vm.curTab),callback:function ($$v) {_vm.curTab=$$v},expression:\"curTab\"}},_vm._l((_vm.tabs),function(tab,index){return _c('v-tab',{key:index,attrs:{\"to\":tab.path}},[_vm._v(\" \"+_vm._s(tab.displayName)+\" \")])}),1),_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('mounting-portal',{attrs:{\"mount-to\":\"#cosmos-menu\",\"append\":\"\"}},[_c('div',{staticClass:\"v-toolbar__content\"},[_vm._l((_vm.menus),function(menu,i){return _c('v-menu',{key:i,attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-1\",attrs:{\"outlined\":\"\",\"data-test\":_vm.formatDT((_vm.title + \" \" + (menu.label)))}},'v-btn',attrs,false),on),[_c('span',{domProps:{\"textContent\":_vm._s(menu.label)}}),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\" mdi-menu-down \")])],1)]}}],null,true)},[_c('v-list',[_c('v-radio-group',{staticClass:\"ma-0 pa-0\",attrs:{\"value\":menu.radioGroup,\"hide-details\":\"\",\"dense\":\"\"}},[_vm._l((menu.items),function(option,j){return [(option.divider)?_c('v-divider',{key:j}):_c('v-list-item',{key:j,attrs:{\"disabled\":option.disabled,\"data-test\":_vm.formatDT((_vm.title + \" \" + (menu.label) + \" \" + (option.label)))},on:{\"click\":option.command}},[(option.radio)?_c('v-list-item-action',[_c('v-radio',{attrs:{\"color\":\"secondary\",\"label\":option.label,\"value\":option.label}})],1):_vm._e(),(option.checkbox)?_c('v-list-item-action',[_c('v-checkbox',{attrs:{\"color\":\"secondary\",\"label\":option.label,\"value\":option.label},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1):_vm._e(),(option.icon)?_c('v-list-item-icon',[_c('v-icon',{attrs:{\"disabled\":option.disabled},domProps:{\"textContent\":_vm._s(option.icon)}})],1):_vm._e(),(!option.radio && !option.checkbox)?_c('v-list-item-title',{style:('cursor: pointer;' + (option.disabled ? 'opacity: 0.2' : '')),domProps:{\"textContent\":_vm._s(option.label)}}):_vm._e()],1)]})],2)],1)],1)}),_c('v-spacer'),_c('v-toolbar-title',{domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('v-spacer')],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <mounting-portal mount-to=\"#cosmos-menu\" append>\n <div class=\"v-toolbar__content\">\n <v-menu offset-y v-for=\"(menu, i) in menus\" :key=\"i\">\n <template v-slot:activator=\"{ on, attrs }\">\n <v-btn\n outlined\n v-bind=\"attrs\"\n v-on=\"on\"\n class=\"mx-1\"\n :data-test=\"formatDT(`${title} ${menu.label}`)\"\n >\n <span v-text=\"menu.label\" />\n <v-icon right> mdi-menu-down </v-icon>\n </v-btn>\n </template>\n <v-list>\n <!-- The radio-group is necessary in case the application wants radio buttons -->\n <v-radio-group\n :value=\"menu.radioGroup\"\n hide-details\n dense\n class=\"ma-0 pa-0\"\n >\n <template v-for=\"(option, j) in menu.items\">\n <v-divider v-if=\"option.divider\" :key=\"j\" />\n <v-list-item\n v-else\n @click=\"option.command\"\n :key=\"j\"\n :disabled=\"option.disabled\"\n :data-test=\"formatDT(`${title} ${menu.label} ${option.label}`)\"\n >\n <v-list-item-action\n v-if=\"option.radio\"\n >\n <v-radio\n color=\"secondary\"\n :label=\"option.label\"\n :value=\"option.label\"\n />\n </v-list-item-action>\n <v-list-item-action\n v-if=\"option.checkbox\"\n >\n <v-checkbox\n v-model=\"checked\"\n color=\"secondary\"\n :label=\"option.label\"\n :value=\"option.label\"\n />\n </v-list-item-action>\n <v-list-item-icon v-if=\"option.icon\">\n <v-icon v-text=\"option.icon\" :disabled=\"option.disabled\" />\n </v-list-item-icon>\n <v-list-item-title\n v-if=\"!option.radio && !option.checkbox\"\n :style=\"\n 'cursor: pointer;' + (option.disabled ? 'opacity: 0.2' : '')\n \"\n v-text=\"option.label\"\n />\n </v-list-item>\n </template>\n </v-radio-group>\n </v-list>\n </v-menu>\n <v-spacer />\n <v-toolbar-title v-text=\"title\" />\n <v-spacer />\n </div>\n </mounting-portal>\n</template>\n\n<script>\nexport default {\n props: {\n menus: {\n type: Array,\n default: function () {\n return []\n },\n },\n title: {\n type: String,\n default: '',\n },\n },\n methods: {\n // Convert the string to a standard data-test format\n formatDT: function(string) {\n return string.replaceAll(' ', '-').toLowerCase()\n },\n }\n}\n</script>\n\n<style scoped>\n.v-list >>> .v-label {\n margin-left: 5px;\n}\n.v-list-item__icon {\n /* For some reason the default margin-right is huge */\n margin-right: 15px !important;\n}\n.v-list-item__title {\n color: white;\n}\n</style>\n","import mod from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TopBar.vue?vue&type=template&id=e3bb7458&scoped=true&\"\nimport script from \"./TopBar.vue?vue&type=script&lang=js&\"\nexport * from \"./TopBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TopBar.vue?vue&type=style&index=0&id=e3bb7458&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e3bb7458\",\n null\n \n)\n\nexport default component.exports","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <div>\n <top-bar :title=\"title\" />\n <v-card>\n <v-tabs v-model=\"curTab\" fixed-tabs>\n <v-tab v-for=\"(tab, index) in tabs\" :key=\"index\" :to=\"tab.path\">\n {{ tab.displayName }}\n </v-tab>\n </v-tabs>\n <router-view />\n </v-card>\n </div>\n</template>\n\n<script>\nimport TopBar from '@cosmosc2/tool-common/src/components/TopBar'\nimport { TabsList } from './tabs'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Administrator Console',\n curTab: null,\n tabs: TabsList,\n }\n },\n methods: {},\n}\n</script>\n","import mod from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CosmosAdmin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CosmosAdmin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CosmosAdmin.vue?vue&type=template&id=407ede2a&\"\nimport script from \"./CosmosAdmin.vue?vue&type=script&lang=js&\"\nexport * from \"./CosmosAdmin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/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","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".v-list[data-v-e3bb7458] .v-label{margin-left:5px}.v-list-item__icon[data-v-e3bb7458]{margin-right:15px!important}.v-list-item__title[data-v-e3bb7458]{color:#fff}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar isCallable = require('../internals/is-callable');\nvar isRegExp = require('../internals/is-regexp');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\nvar getSubstitution = require('../internals/get-substitution');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar TypeError = global.TypeError;\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar max = Math.max;\n\nvar stringIndexOf = function (string, searchValue, fromIndex) {\n if (fromIndex > string.length) return -1;\n if (searchValue === '') return fromIndex;\n return indexOf(string, searchValue, fromIndex);\n};\n\n// `String.prototype.replaceAll` method\n// https://tc39.es/ecma262/#sec-string.prototype.replaceall\n$({ target: 'String', proto: true }, {\n replaceAll: function replaceAll(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var IS_REG_EXP, flags, replacer, string, searchString, functionalReplace, searchLength, advanceBy, replacement;\n var position = 0;\n var endOfLastMatch = 0;\n var result = '';\n if (searchValue != null) {\n IS_REG_EXP = isRegExp(searchValue);\n if (IS_REG_EXP) {\n flags = toString(requireObjectCoercible(getRegExpFlags(searchValue)));\n if (!~indexOf(flags, 'g')) throw TypeError('`.replaceAll` does not allow non-global regexes');\n }\n replacer = getMethod(searchValue, REPLACE);\n if (replacer) {\n return call(replacer, searchValue, O, replaceValue);\n } else if (IS_PURE && IS_REG_EXP) {\n return replace(toString(O), searchValue, replaceValue);\n }\n }\n string = toString(O);\n searchString = toString(searchValue);\n functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n searchLength = searchString.length;\n advanceBy = max(1, searchLength);\n position = stringIndexOf(string, searchString, 0);\n while (position !== -1) {\n replacement = functionalReplace\n ? toString(replaceValue(searchString, position, string))\n : getSubstitution(searchString, string, position, [], undefined, replaceValue);\n result += stringSlice(string, endOfLastMatch, position) + replacement;\n endOfLastMatch = position + searchLength;\n position = stringIndexOf(string, searchString, position + advanceBy);\n }\n if (endOfLastMatch < string.length) {\n result += stringSlice(string, endOfLastMatch);\n }\n return result;\n }\n});\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[2]!../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[3]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=style&index=0&id=e3bb7458&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(\"a2f2c426\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","title","model","value","callback","$$v","curTab","expression","_l","tab","index","key","path","_v","_s","displayName","staticRenderFns","staticClass","menu","i","scopedSlots","_u","fn","ref","on","_g","_b","formatDT","domProps","label","radioGroup","option","j","disabled","command","_e","checked","icon","radio","checkbox","style","props","menus","type","Array","default","String","methods","string","replaceAll","toLowerCase","component","components","TopBar","data","tabs","___CSS_LOADER_EXPORT___","push","module","id","$","global","call","uncurryThis","requireObjectCoercible","isCallable","isRegExp","toString","getMethod","getRegExpFlags","getSubstitution","wellKnownSymbol","IS_PURE","REPLACE","TypeError","indexOf","replace","stringSlice","slice","max","Math","stringIndexOf","searchValue","fromIndex","length","target","proto","replaceValue","IS_REG_EXP","flags","replacer","searchString","functionalReplace","searchLength","advanceBy","replacement","O","position","endOfLastMatch","result","undefined","content","__esModule","locals","exports","add"],"sourceRoot":""}
1
+ {"version":3,"file":"js/442.js","mappings":"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","sources":["webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/CosmosAdmin.vue?7dad","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?228d","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?adab","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?dfc0","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/CosmosAdmin.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/CosmosAdmin.vue?2f73","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/CosmosAdmin.vue","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?b2db","webpack://@cosmosc2/tool-admin/../../node_modules/core-js/modules/es.string.replace-all.js","webpack://@cosmosc2/tool-admin/../cosmosc2-tool-common/src/components/TopBar.vue?5429"],"sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('top-bar',{attrs:{\"title\":_vm.title}}),_c('v-card',[_c('v-tabs',{attrs:{\"fixed-tabs\":\"\"},model:{value:(_vm.curTab),callback:function ($$v) {_vm.curTab=$$v},expression:\"curTab\"}},_vm._l((_vm.tabs),function(tab,index){return _c('v-tab',{key:index,attrs:{\"to\":tab.path}},[_vm._v(\" \"+_vm._s(tab.displayName)+\" \")])}),1),_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('mounting-portal',{attrs:{\"mount-to\":\"#cosmos-menu\",\"append\":\"\"}},[_c('div',{staticClass:\"v-toolbar__content\"},[_vm._l((_vm.menus),function(menu,i){return _c('v-menu',{key:i,attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-1\",attrs:{\"outlined\":\"\",\"data-test\":_vm.formatDT((_vm.title + \" \" + (menu.label)))}},'v-btn',attrs,false),on),[_c('span',{domProps:{\"textContent\":_vm._s(menu.label)}}),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\" mdi-menu-down \")])],1)]}}],null,true)},[_c('v-list',[_c('v-radio-group',{staticClass:\"ma-0 pa-0\",attrs:{\"value\":menu.radioGroup,\"hide-details\":\"\",\"dense\":\"\"}},[_vm._l((menu.items),function(option,j){return [(option.divider)?_c('v-divider',{key:j}):_c('v-list-item',{key:j,attrs:{\"disabled\":option.disabled,\"data-test\":_vm.formatDT((_vm.title + \" \" + (menu.label) + \" \" + (option.label)))},on:{\"click\":option.command}},[(option.radio)?_c('v-list-item-action',[_c('v-radio',{attrs:{\"color\":\"secondary\",\"label\":option.label,\"value\":option.label}})],1):_vm._e(),(option.checkbox)?_c('v-list-item-action',[_c('v-checkbox',{attrs:{\"color\":\"secondary\",\"label\":option.label,\"value\":option.label},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1):_vm._e(),(option.icon)?_c('v-list-item-icon',[_c('v-icon',{attrs:{\"disabled\":option.disabled},domProps:{\"textContent\":_vm._s(option.icon)}})],1):_vm._e(),(!option.radio && !option.checkbox)?_c('v-list-item-title',{style:('cursor: pointer;' + (option.disabled ? 'opacity: 0.2' : '')),domProps:{\"textContent\":_vm._s(option.label)}}):_vm._e()],1)]})],2)],1)],1)}),_c('v-spacer'),_c('v-toolbar-title',{domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('v-spacer')],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <mounting-portal mount-to=\"#cosmos-menu\" append>\n <div class=\"v-toolbar__content\">\n <v-menu offset-y v-for=\"(menu, i) in menus\" :key=\"i\">\n <template v-slot:activator=\"{ on, attrs }\">\n <v-btn\n outlined\n v-bind=\"attrs\"\n v-on=\"on\"\n class=\"mx-1\"\n :data-test=\"formatDT(`${title} ${menu.label}`)\"\n >\n <span v-text=\"menu.label\" />\n <v-icon right> mdi-menu-down </v-icon>\n </v-btn>\n </template>\n <v-list>\n <!-- The radio-group is necessary in case the application wants radio buttons -->\n <v-radio-group\n :value=\"menu.radioGroup\"\n hide-details\n dense\n class=\"ma-0 pa-0\"\n >\n <template v-for=\"(option, j) in menu.items\">\n <v-divider v-if=\"option.divider\" :key=\"j\" />\n <v-list-item\n v-else\n @click=\"option.command\"\n :key=\"j\"\n :disabled=\"option.disabled\"\n :data-test=\"formatDT(`${title} ${menu.label} ${option.label}`)\"\n >\n <v-list-item-action\n v-if=\"option.radio\"\n >\n <v-radio\n color=\"secondary\"\n :label=\"option.label\"\n :value=\"option.label\"\n />\n </v-list-item-action>\n <v-list-item-action\n v-if=\"option.checkbox\"\n >\n <v-checkbox\n v-model=\"checked\"\n color=\"secondary\"\n :label=\"option.label\"\n :value=\"option.label\"\n />\n </v-list-item-action>\n <v-list-item-icon v-if=\"option.icon\">\n <v-icon v-text=\"option.icon\" :disabled=\"option.disabled\" />\n </v-list-item-icon>\n <v-list-item-title\n v-if=\"!option.radio && !option.checkbox\"\n :style=\"\n 'cursor: pointer;' + (option.disabled ? 'opacity: 0.2' : '')\n \"\n v-text=\"option.label\"\n />\n </v-list-item>\n </template>\n </v-radio-group>\n </v-list>\n </v-menu>\n <v-spacer />\n <v-toolbar-title v-text=\"title\" />\n <v-spacer />\n </div>\n </mounting-portal>\n</template>\n\n<script>\nexport default {\n props: {\n menus: {\n type: Array,\n default: function () {\n return []\n },\n },\n title: {\n type: String,\n default: '',\n },\n },\n methods: {\n // Convert the string to a standard data-test format\n formatDT: function(string) {\n return string.replaceAll(' ', '-').toLowerCase()\n },\n }\n}\n</script>\n\n<style scoped>\n.v-list >>> .v-label {\n margin-left: 5px;\n}\n.v-list-item__icon {\n /* For some reason the default margin-right is huge */\n margin-right: 15px !important;\n}\n.v-list-item__title {\n color: white;\n}\n</style>\n","import mod from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TopBar.vue?vue&type=template&id=e3bb7458&scoped=true&\"\nimport script from \"./TopBar.vue?vue&type=script&lang=js&\"\nexport * from \"./TopBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TopBar.vue?vue&type=style&index=0&id=e3bb7458&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e3bb7458\",\n null\n \n)\n\nexport default component.exports","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <div>\n <top-bar :title=\"title\" />\n <v-card>\n <v-tabs v-model=\"curTab\" fixed-tabs>\n <v-tab v-for=\"(tab, index) in tabs\" :key=\"index\" :to=\"tab.path\">\n {{ tab.displayName }}\n </v-tab>\n </v-tabs>\n <router-view />\n </v-card>\n </div>\n</template>\n\n<script>\nimport TopBar from '@cosmosc2/tool-common/src/components/TopBar'\nimport { TabsList } from './tabs'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Administrator Console',\n curTab: null,\n tabs: TabsList,\n }\n },\n methods: {},\n}\n</script>\n","import mod from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CosmosAdmin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CosmosAdmin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CosmosAdmin.vue?vue&type=template&id=407ede2a&\"\nimport script from \"./CosmosAdmin.vue?vue&type=script&lang=js&\"\nexport * from \"./CosmosAdmin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/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","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".v-list[data-v-e3bb7458] .v-label{margin-left:5px}.v-list-item__icon[data-v-e3bb7458]{margin-right:15px!important}.v-list-item__title[data-v-e3bb7458]{color:#fff}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar isCallable = require('../internals/is-callable');\nvar isRegExp = require('../internals/is-regexp');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\nvar getSubstitution = require('../internals/get-substitution');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar TypeError = global.TypeError;\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar max = Math.max;\n\nvar stringIndexOf = function (string, searchValue, fromIndex) {\n if (fromIndex > string.length) return -1;\n if (searchValue === '') return fromIndex;\n return indexOf(string, searchValue, fromIndex);\n};\n\n// `String.prototype.replaceAll` method\n// https://tc39.es/ecma262/#sec-string.prototype.replaceall\n$({ target: 'String', proto: true }, {\n replaceAll: function replaceAll(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var IS_REG_EXP, flags, replacer, string, searchString, functionalReplace, searchLength, advanceBy, replacement;\n var position = 0;\n var endOfLastMatch = 0;\n var result = '';\n if (searchValue != null) {\n IS_REG_EXP = isRegExp(searchValue);\n if (IS_REG_EXP) {\n flags = toString(requireObjectCoercible(getRegExpFlags(searchValue)));\n if (!~indexOf(flags, 'g')) throw TypeError('`.replaceAll` does not allow non-global regexes');\n }\n replacer = getMethod(searchValue, REPLACE);\n if (replacer) {\n return call(replacer, searchValue, O, replaceValue);\n } else if (IS_PURE && IS_REG_EXP) {\n return replace(toString(O), searchValue, replaceValue);\n }\n }\n string = toString(O);\n searchString = toString(searchValue);\n functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n searchLength = searchString.length;\n advanceBy = max(1, searchLength);\n position = stringIndexOf(string, searchString, 0);\n while (position !== -1) {\n replacement = functionalReplace\n ? toString(replaceValue(searchString, position, string))\n : getSubstitution(searchString, string, position, [], undefined, replaceValue);\n result += stringSlice(string, endOfLastMatch, position) + replacement;\n endOfLastMatch = position + searchLength;\n position = stringIndexOf(string, searchString, position + advanceBy);\n }\n if (endOfLastMatch < string.length) {\n result += stringSlice(string, endOfLastMatch);\n }\n return result;\n }\n});\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[2]!../../../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12[0].rules[0].use[3]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=style&index=0&id=e3bb7458&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(\"a2f2c426\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","title","model","value","callback","$$v","curTab","expression","_l","tab","index","key","path","_v","_s","displayName","staticRenderFns","staticClass","menu","i","scopedSlots","_u","fn","ref","on","_g","_b","formatDT","domProps","label","radioGroup","option","j","disabled","command","_e","checked","icon","radio","checkbox","style","props","menus","type","default","methods","component","components","TopBar","data","tabs","___CSS_LOADER_EXPORT___","push","module","id","$","global","call","uncurryThis","requireObjectCoercible","isCallable","isRegExp","toString","getMethod","getRegExpFlags","getSubstitution","wellKnownSymbol","IS_PURE","REPLACE","TypeError","indexOf","replace","stringSlice","slice","max","Math","stringIndexOf","string","searchValue","fromIndex","length","target","proto","replaceAll","replaceValue","IS_REG_EXP","flags","replacer","searchString","functionalReplace","searchLength","advanceBy","replacement","O","position","endOfLastMatch","result","undefined","content","__esModule","locals","exports","add"],"sourceRoot":""}
@@ -1 +1 @@
1
- {"version":3,"file":"js/49.js","mappings":"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","sources":["webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/InterfacesTab.vue?0c00","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/tabs/InterfacesTab.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/InterfacesTab.vue?b934","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/InterfacesTab.vue"],"sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-alert',{attrs:{\"type\":_vm.alertType,\"dismissible\":\"\",\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),_c('v-list',{attrs:{\"data-test\":\"interfaceList\"}},_vm._l((_vm.interfaces),function(cosmos_interface,index){return _c('div',{key:cosmos_interface},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',{domProps:{\"textContent\":_vm._s(cosmos_interface)}})],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.showInterface(cosmos_interface)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-eye \")])]}}],null,true)},[_c('span',[_vm._v(\"Show Interface Details\")])])],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.deleteInterface(cosmos_interface)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-delete \")])]}}],null,true)},[_c('span',[_vm._v(\"Delete Interface\")])])],1)],1),(index < _vm.interfaces.length - 1)?_c('v-divider',{key:index}):_vm._e()],1)}),0),_c('v-alert',{attrs:{\"type\":_vm.alertType,\"dismissible\":\"\",\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),(_vm.showDialog)?_c('edit-dialog',{attrs:{\"content\":_vm.jsonContent,\"title\":(\"Interface: \" + _vm.dialogTitle),\"readonly\":\"\"},on:{\"submit\":_vm.dialogCallback},model:{value:(_vm.showDialog),callback:function ($$v) {_vm.showDialog=$$v},expression:\"showDialog\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <div>\n <v-alert\n :type=\"alertType\"\n v-model=\"showAlert\"\n dismissible\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <v-list data-test=\"interfaceList\">\n <div\n v-for=\"(cosmos_interface, index) in interfaces\"\n :key=\"cosmos_interface\"\n >\n <v-list-item>\n <v-list-item-content>\n <v-list-item-title v-text=\"cosmos_interface\" />\n </v-list-item-content>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"showInterface(cosmos_interface)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-eye\n </v-icon>\n </template>\n <span>Show Interface Details</span>\n </v-tooltip>\n </v-list-item-icon>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"deleteInterface(cosmos_interface)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-delete\n </v-icon>\n </template>\n <span>Delete Interface</span>\n </v-tooltip>\n </v-list-item-icon>\n </v-list-item>\n <v-divider v-if=\"index < interfaces.length - 1\" :key=\"index\" />\n </div>\n </v-list>\n <v-alert\n :type=\"alertType\"\n v-model=\"showAlert\"\n dismissible\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <edit-dialog\n :content=\"jsonContent\"\n :title=\"`Interface: ${dialogTitle}`\"\n readonly\n v-model=\"showDialog\"\n v-if=\"showDialog\"\n @submit=\"dialogCallback\"\n />\n </div>\n</template>\n\n<script>\nimport Api from '@cosmosc2/tool-common/src/services/api'\nimport EditDialog from '@/tools/CosmosAdmin/EditDialog'\nexport default {\n components: { EditDialog },\n data() {\n return {\n interfaces: [],\n alert: '',\n alertType: 'success',\n showAlert: false,\n jsonContent: '',\n dialogTitle: '',\n showDialog: false,\n }\n },\n mounted() {\n this.update()\n },\n methods: {\n update() {\n Api.get('/cosmos-api/interfaces').then((response) => {\n this.interfaces = response.data\n })\n },\n showInterface(name) {\n Api.get(`/cosmos-api/interfaces/${name}`).then((response) => {\n this.jsonContent = JSON.stringify(response.data, null, '\\t')\n this.dialogTitle = name\n this.showDialog = true\n })\n },\n dialogCallback(content) {\n this.showDialog = false\n },\n deleteInterface(name) {\n this.$dialog\n .confirm(`Are you sure you want to remove: ${name}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then(function (dialog) {\n return Api.delete(`/cosmos-api/interfaces/${name}`)\n })\n .then((response) => {\n this.alert = `Removed interface ${name}`\n this.alertType = 'success'\n this.showAlert = true\n setTimeout(() => {\n this.showAlert = false\n }, 5000)\n this.update()\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InterfacesTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InterfacesTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InterfacesTab.vue?vue&type=template&id=ca69a7f2&\"\nimport script from \"./InterfacesTab.vue?vue&type=script&lang=js&\"\nexport * from \"./InterfacesTab.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/cli-service/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"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","alertType","model","value","callback","$$v","showAlert","expression","_v","_s","alert","_l","cosmos_interface","index","key","domProps","scopedSlots","_u","fn","ref","on","_g","_b","$event","showInterface","deleteInterface","interfaces","length","_e","jsonContent","dialogTitle","dialogCallback","showDialog","staticRenderFns","components","EditDialog","data","mounted","update","methods","Api","then","name","content","$dialog","confirm","okText","cancelText","setTimeout","component"],"sourceRoot":""}
1
+ {"version":3,"file":"js/49.js","mappings":"mLAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,UAAU,CAACE,MAAM,CAAC,KAAON,EAAIO,UAAU,YAAc,GAAG,WAAa,oBAAoBC,MAAM,CAACC,MAAOT,EAAa,UAAEU,SAAS,SAAUC,GAAMX,EAAIY,UAAUD,GAAKE,WAAW,cAAc,CAACb,EAAIc,GAAG,IAAId,EAAIe,GAAGf,EAAIgB,OAAO,OAAOZ,EAAG,SAAS,CAACE,MAAM,CAAC,YAAY,kBAAkBN,EAAIiB,GAAIjB,EAAc,YAAE,SAASkB,EAAiBC,GAAO,OAAOf,EAAG,MAAM,CAACgB,IAAIF,GAAkB,CAACd,EAAG,cAAc,CAACA,EAAG,sBAAsB,CAACA,EAAG,oBAAoB,CAACiB,SAAS,CAAC,YAAcrB,EAAIe,GAAGG,OAAsB,GAAGd,EAAG,mBAAmB,CAACA,EAAG,YAAY,CAACE,MAAM,CAAC,OAAS,IAAIgB,YAAYtB,EAAIuB,GAAG,CAAC,CAACH,IAAI,YAAYI,GAAG,SAASC,GACxsB,IAAIC,EAAKD,EAAIC,GACTpB,EAAQmB,EAAInB,MAChB,MAAO,CAACF,EAAG,SAASJ,EAAI2B,GAAG3B,EAAI4B,GAAG,CAACF,GAAG,CAAC,MAAQ,SAASG,GAAQ,OAAO7B,EAAI8B,cAAcZ,MAAqB,SAASZ,GAAM,GAAOoB,GAAI,CAAC1B,EAAIc,GAAG,mBAAmB,MAAK,IAAO,CAACV,EAAG,OAAO,CAACJ,EAAIc,GAAG,+BAA+B,GAAGV,EAAG,mBAAmB,CAACA,EAAG,YAAY,CAACE,MAAM,CAAC,OAAS,IAAIgB,YAAYtB,EAAIuB,GAAG,CAAC,CAACH,IAAI,YAAYI,GAAG,SAASC,GAChV,IAAIC,EAAKD,EAAIC,GACTpB,EAAQmB,EAAInB,MAChB,MAAO,CAACF,EAAG,SAASJ,EAAI2B,GAAG3B,EAAI4B,GAAG,CAACF,GAAG,CAAC,MAAQ,SAASG,GAAQ,OAAO7B,EAAI+B,gBAAgBb,MAAqB,SAASZ,GAAM,GAAOoB,GAAI,CAAC1B,EAAIc,GAAG,sBAAsB,MAAK,IAAO,CAACV,EAAG,OAAO,CAACJ,EAAIc,GAAG,yBAAyB,IAAI,GAAIK,EAAQnB,EAAIgC,WAAWC,OAAS,EAAG7B,EAAG,YAAY,CAACgB,IAAID,IAAQnB,EAAIkC,MAAM,MAAK,GAAG9B,EAAG,UAAU,CAACE,MAAM,CAAC,KAAON,EAAIO,UAAU,YAAc,GAAG,WAAa,oBAAoBC,MAAM,CAACC,MAAOT,EAAa,UAAEU,SAAS,SAAUC,GAAMX,EAAIY,UAAUD,GAAKE,WAAW,cAAc,CAACb,EAAIc,GAAG,IAAId,EAAIe,GAAGf,EAAIgB,OAAO,OAAQhB,EAAc,WAAEI,EAAG,cAAc,CAACE,MAAM,CAAC,QAAUN,EAAImC,YAAY,MAAS,cAAgBnC,EAAIoC,YAAa,SAAW,IAAIV,GAAG,CAAC,OAAS1B,EAAIqC,gBAAgB7B,MAAM,CAACC,MAAOT,EAAc,WAAEU,SAAS,SAAUC,GAAMX,EAAIsC,WAAW3B,GAAKE,WAAW,gBAAgBb,EAAIkC,MAAM,IACtyBK,EAAkB,G,i3PCqFtB,OACAC,WAAAA,CAAAC,WAAAA,EAAAA,GACAC,KAFA,WAGA,OADA,sBACA,CACAV,WAAAA,GACAhB,MAAAA,GACAT,UAAAA,UACAK,WAAAA,EACAuB,YAAAA,GACAC,YAAAA,GACAE,YAAAA,IAGAK,QAbA,WAaA,sBACA,eAEAC,QAAAA,CACAC,OADA,WACA,iCACAC,EAAAA,EAAAA,IAAAA,0BAAAA,MAAAA,SAAAA,GAAA,sBACA,wBAGAhB,cANA,SAMAiB,GAAA,iCACAD,EAAAA,EAAAA,IAAAA,0BAAAA,OAAAA,IAAAA,MAAAA,SAAAA,GAAA,sBACA,+CADA,WAEA,gBAFA,WAGA,oBAGAT,eAbA,SAaAW,GAAA,sBACA,oBAEAjB,gBAhBA,SAgBAgB,GAAA,iCACA,aACAE,QADA,2CACAF,GAAA,CACAG,OAAAA,SACAC,WAAAA,WAEAC,MAAA,YACA,OADA,uBACA,sDAEAA,MAAA,mCACA,uCADA,YAEA,sBAFA,YAGA,eAHA,YAIAC,YAAAA,WAAA,wBACA,iBACA,KANA,YAOA,iBC5IiZ,I,UCO7YC,GAAY,OACd,EACAvD,EACAwC,GACA,EACA,KACA,KACA,MAIF,EAAee,EAAiB","sources":["webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/InterfacesTab.vue?0c00","webpack://@cosmosc2/tool-admin/src/tools/CosmosAdmin/tabs/InterfacesTab.vue","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/InterfacesTab.vue?b934","webpack://@cosmosc2/tool-admin/./src/tools/CosmosAdmin/tabs/InterfacesTab.vue"],"sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-alert',{attrs:{\"type\":_vm.alertType,\"dismissible\":\"\",\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),_c('v-list',{attrs:{\"data-test\":\"interfaceList\"}},_vm._l((_vm.interfaces),function(cosmos_interface,index){return _c('div',{key:cosmos_interface},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',{domProps:{\"textContent\":_vm._s(cosmos_interface)}})],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.showInterface(cosmos_interface)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-eye \")])]}}],null,true)},[_c('span',[_vm._v(\"Show Interface Details\")])])],1),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.deleteInterface(cosmos_interface)}}},'v-icon',attrs,false),on),[_vm._v(\" mdi-delete \")])]}}],null,true)},[_c('span',[_vm._v(\"Delete Interface\")])])],1)],1),(index < _vm.interfaces.length - 1)?_c('v-divider',{key:index}):_vm._e()],1)}),0),_c('v-alert',{attrs:{\"type\":_vm.alertType,\"dismissible\":\"\",\"transition\":\"scale-transition\"},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(\" \"+_vm._s(_vm.alert)+\" \")]),(_vm.showDialog)?_c('edit-dialog',{attrs:{\"content\":_vm.jsonContent,\"title\":(\"Interface: \" + _vm.dialogTitle),\"readonly\":\"\"},on:{\"submit\":_vm.dialogCallback},model:{value:(_vm.showDialog),callback:function ($$v) {_vm.showDialog=$$v},expression:\"showDialog\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This program may also be used under the terms of a commercial or\n# enterprise edition license of COSMOS if purchased from the\n# copyright holder\n-->\n\n<template>\n <div>\n <v-alert\n :type=\"alertType\"\n v-model=\"showAlert\"\n dismissible\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <v-list data-test=\"interfaceList\">\n <div\n v-for=\"(cosmos_interface, index) in interfaces\"\n :key=\"cosmos_interface\"\n >\n <v-list-item>\n <v-list-item-content>\n <v-list-item-title v-text=\"cosmos_interface\" />\n </v-list-item-content>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"showInterface(cosmos_interface)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-eye\n </v-icon>\n </template>\n <span>Show Interface Details</span>\n </v-tooltip>\n </v-list-item-icon>\n <v-list-item-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-icon\n @click=\"deleteInterface(cosmos_interface)\"\n v-bind=\"attrs\"\n v-on=\"on\"\n >\n mdi-delete\n </v-icon>\n </template>\n <span>Delete Interface</span>\n </v-tooltip>\n </v-list-item-icon>\n </v-list-item>\n <v-divider v-if=\"index < interfaces.length - 1\" :key=\"index\" />\n </div>\n </v-list>\n <v-alert\n :type=\"alertType\"\n v-model=\"showAlert\"\n dismissible\n transition=\"scale-transition\"\n >\n {{ alert }}\n </v-alert>\n <edit-dialog\n :content=\"jsonContent\"\n :title=\"`Interface: ${dialogTitle}`\"\n readonly\n v-model=\"showDialog\"\n v-if=\"showDialog\"\n @submit=\"dialogCallback\"\n />\n </div>\n</template>\n\n<script>\nimport Api from '@cosmosc2/tool-common/src/services/api'\nimport EditDialog from '@/tools/CosmosAdmin/EditDialog'\nexport default {\n components: { EditDialog },\n data() {\n return {\n interfaces: [],\n alert: '',\n alertType: 'success',\n showAlert: false,\n jsonContent: '',\n dialogTitle: '',\n showDialog: false,\n }\n },\n mounted() {\n this.update()\n },\n methods: {\n update() {\n Api.get('/cosmos-api/interfaces').then((response) => {\n this.interfaces = response.data\n })\n },\n showInterface(name) {\n Api.get(`/cosmos-api/interfaces/${name}`).then((response) => {\n this.jsonContent = JSON.stringify(response.data, null, '\\t')\n this.dialogTitle = name\n this.showDialog = true\n })\n },\n dialogCallback(content) {\n this.showDialog = false\n },\n deleteInterface(name) {\n this.$dialog\n .confirm(`Are you sure you want to remove: ${name}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then(function (dialog) {\n return Api.delete(`/cosmos-api/interfaces/${name}`)\n })\n .then((response) => {\n this.alert = `Removed interface ${name}`\n this.alertType = 'success'\n this.showAlert = true\n setTimeout(() => {\n this.showAlert = false\n }, 5000)\n this.update()\n })\n },\n },\n}\n</script>\n","import mod from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InterfacesTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InterfacesTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InterfacesTab.vue?vue&type=template&id=ca69a7f2&\"\nimport script from \"./InterfacesTab.vue?vue&type=script&lang=js&\"\nexport * from \"./InterfacesTab.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/cli-service/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"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","alertType","model","value","callback","$$v","showAlert","expression","_v","_s","alert","_l","cosmos_interface","index","key","domProps","scopedSlots","_u","fn","ref","on","_g","_b","$event","showInterface","deleteInterface","interfaces","length","_e","jsonContent","dialogTitle","dialogCallback","showDialog","staticRenderFns","components","EditDialog","data","mounted","methods","update","Api","name","content","confirm","okText","cancelText","then","setTimeout","component"],"sourceRoot":""}