openc3-cosmos-tool-admin 5.18.0 → 5.20.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/tools/admin/js/143.js +2 -0
  3. data/tools/admin/js/143.js.map +1 -0
  4. data/tools/admin/js/163.js +2 -0
  5. data/tools/admin/js/163.js.map +1 -0
  6. data/tools/admin/js/352.js +2 -0
  7. data/tools/admin/js/352.js.map +1 -0
  8. data/tools/admin/js/542.js +1 -1
  9. data/tools/admin/js/542.js.map +1 -1
  10. data/tools/admin/js/56.js +1 -1
  11. data/tools/admin/js/569.js +2 -0
  12. data/tools/admin/js/569.js.map +1 -0
  13. data/tools/admin/js/612.js +1 -1
  14. data/tools/admin/js/612.js.map +1 -1
  15. data/tools/admin/js/627.js +2 -2
  16. data/tools/admin/js/627.js.map +1 -1
  17. data/tools/admin/js/698.js +2 -0
  18. data/tools/admin/js/698.js.map +1 -0
  19. data/tools/admin/js/722.js.map +1 -1
  20. data/tools/admin/js/742.js +2 -0
  21. data/tools/admin/js/742.js.map +1 -0
  22. data/tools/admin/js/816.js +1 -1
  23. data/tools/admin/js/816.js.map +1 -1
  24. data/tools/admin/js/842.js +2 -0
  25. data/tools/admin/js/842.js.map +1 -0
  26. data/tools/admin/js/949.js +1 -1
  27. data/tools/admin/js/949.js.map +1 -1
  28. data/tools/admin/js/983.js +2 -0
  29. data/tools/admin/js/983.js.map +1 -0
  30. data/tools/admin/js/app.js +1 -1
  31. data/tools/admin/js/app.js.map +1 -1
  32. metadata +18 -18
  33. data/tools/admin/js/142.js +0 -2
  34. data/tools/admin/js/142.js.map +0 -1
  35. data/tools/admin/js/361.js +0 -2
  36. data/tools/admin/js/361.js.map +0 -1
  37. data/tools/admin/js/55.js +0 -2
  38. data/tools/admin/js/55.js.map +0 -1
  39. data/tools/admin/js/565.js +0 -2
  40. data/tools/admin/js/565.js.map +0 -1
  41. data/tools/admin/js/584.js +0 -2
  42. data/tools/admin/js/584.js.map +0 -1
  43. data/tools/admin/js/712.js +0 -2
  44. data/tools/admin/js/712.js.map +0 -1
  45. data/tools/admin/js/838.js +0 -2
  46. data/tools/admin/js/838.js.map +0 -1
  47. data/tools/admin/js/953.js +0 -2
  48. data/tools/admin/js/953.js.map +0 -1
data/tools/admin/js/56.js CHANGED
@@ -1,2 +1,2 @@
1
- (self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[56],{2795:(t,e,s)=>{"use strict";s.d(e,{A:()=>i});var o=s(2673);const a=async function(t,e,{data:s,params:a={},headers:n,noAuth:r=!1,noScope:i=!1,onUploadProgress:l=!1}={}){if(!r){try{let t=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);t&&OpenC3Auth.setTokens()}catch(c){OpenC3Auth.login()}n["Authorization"]=localStorage.openc3Token}return n["manual"]=!0,i||a["scope"]||(a["scope"]=window.openc3Scope),(0,o.A)({method:t,url:e,data:s,params:a,headers:n,onUploadProgress:l})},n={Accept:"application/json"},r={...n,"Content-Type":"application/json"},i={get:function(t,{params:e,headers:s=n,noScope:o,noAuth:r,onUploadProgress:i}={}){return a("get",t,{params:e,headers:s,noScope:o,noAuth:r,onUploadProgress:i})},put:function(t,{data:e,params:s,headers:o=r,noScope:n,noAuth:i,onUploadProgress:l}={}){return a("put",t,{data:e,params:s,headers:o,noScope:n,noAuth:i,onUploadProgress:l})},post:function(t,{data:e,params:s,headers:o=r,noScope:n,noAuth:i,onUploadProgress:l}={}){return a("post",t,{data:e,params:s,headers:o,noScope:n,noAuth:i,onUploadProgress:l})},delete:function(t,{params:e,headers:s=n,noScope:o,noAuth:r,onUploadProgress:i}={}){return a("delete",t,{params:e,headers:s,noScope:o,noAuth:r,onUploadProgress:i})}}},2673:(t,e,s)=>{"use strict";s.d(e,{A:()=>i});var o=s(3816),a=s(1649);const n=new a["default"],r=o.A.create({baseURL:location.origin,timeout:6e4,params:{}});r.interceptors.response.use((t=>t),(t=>{if(t.response){if(401===t.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(t){t&&OpenC3Auth.setTokens()})),t.response.config.headers["Ignore-Errors"]&&t.response.config.headers["Ignore-Errors"].includes(t.response.status.toString()))return Promise.reject(t);let e=`HTTP ${t.response.status} - `;throw t.response?.statusText&&(e+=`${t.response.statusText} `),t.response?.config?.data&&(e+=`${t.response.config.data} `),t.response?.data?.message?e+=`${t.response.data.message}`:t.response?.data?.exception?e+=`${t.response.data.exception}`:t.response?.data?.error?.message?(t.response.data.error.class&&(e+=`${t.response.data.error.class} `),e+=`${t.response.data.error.message}`):e+=`${t.response?.data}`,n.$notify&&n.$notify.serious({title:"Network error",body:e}),t}throw t}));const i=r},3348:(t,e,s)=>{"use strict";s.d(e,{A:()=>c});var o=function(){var t=this,e=t._self._c;return e("v-dialog",{attrs:{width:t.width},model:{value:t.show,callback:function(e){t.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),t._v(" "),e("span",[t._v(" "+t._s(t.title)+" ")]),t._v(" "),e("v-spacer"),t._v(" "),e("div",{staticClass:"mx-2"},[e("v-tooltip",{attrs:{top:""},scopedSlots:t._u([{key:"activator",fn:function({on:s,attrs:o}){return[e("div",t._g(t._b({},"div",o,!1),s),[e("v-icon",{attrs:{"data-test":"downloadIcon"},on:{click:t.download}},[t._v("\n mdi-download\n ")])],1)]}}])},[t._v(" "),e("span",[t._v(" Download ")])])],1)],1),t._v(" "),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("span",{staticStyle:{"white-space":"pre-wrap"}},[t._v(t._s(t.text))])])]),t._v(" "),e("v-card-actions",[e("v-spacer"),t._v(" "),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(e){t.show=!t.show}}},[t._v(" Ok ")])],1)],1)],1)},a=[];s(3165),s(4541),s(4397),s(1412),s(1883),s(7905);const n={props:{value:Boolean,text:String,title:String,width:800},computed:{show:{get(){return this.value},set(t){this.$emit("input",t)}}},methods:{download:function(){const t=new Blob([this.text],{type:"text/plain"}),e=document.createElement("a");e.href=URL.createObjectURL(t),e.setAttribute("download",`${this.title}.txt`),e.click()}}},r=n;var i=s(2401),l=(0,i.A)(r,o,a,!1,null,null,null);const c=l.exports},3056:(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>k});var o=function(){var t=this,e=t._self._c;return e("div",[e("v-row",{staticClass:"px-2",attrs:{"no-gutters":"",align:"center"}},[e("v-col",[e("v-file-input",{ref:"fileInput",staticClass:"mx-2",attrs:{multiple:"","show-size":"",accept:".gem,.gz,.zip,.whl",label:"Click to select file(s) to add to COSMOS"},model:{value:t.files,callback:function(e){t.files=e},expression:"files"}})],1),t._v(" "),e("v-col",{staticClass:"ml-4 mr-2",attrs:{cols:"4"}},[e("rux-progress",{attrs:{value:t.progress}})],1),t._v(" "),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary","data-test":"packageUpload",disabled:t.files.length<1,loading:t.loadingPackage},on:{click:function(e){return t.upload()}},scopedSlots:t._u([{key:"loader",fn:function(){return[e("span",[t._v("Loading...")])]},proxy:!0}])},[e("v-icon",{attrs:{left:"",dark:""}},[t._v("mdi-cloud-upload")]),t._v(" "),e("span",[t._v(" Upload ")])],1)],1),t._v(" "),e("v-alert",{attrs:{dismissible:"",transition:"scale-transition",type:t.alertType},model:{value:t.showAlert,callback:function(e){t.showAlert=e},expression:"showAlert"}},[t._v(t._s(t.alert))]),t._v(" "),Object.keys(t.processes).length>0?e("v-list",{staticClass:"list",attrs:{"data-test":"process-list"}},[e("v-row",{staticClass:"px-4",attrs:{"no-gutters":""}},[e("v-col",{staticClass:"text-h6"},[t._v("Process List")]),t._v(" "),e("v-col",{attrs:{align:"right"}},[e("div",[t._v("Showing last 10 min of activity")])])],1),t._v(" "),t._l(t.processes,(function(s){return e("div",{key:s.name},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[e("span",{class:s.state.toLowerCase(),domProps:{textContent:t._s(`Processing ${s.process_type}: ${s.detail} - ${s.state}`)}})]),t._v(" "),e("v-list-item-subtitle",[e("span",{domProps:{textContent:t._s(" Updated At: "+t.formatDate(s.updated_at))}})])],1),t._v(" "),"Running"!==s.state?e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.showOutput(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-eye\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Show Output")])])],1):t._e()],1),t._v(" "),e("v-divider")],1)}))],2):t._e(),t._v(" "),e("v-list",{staticClass:"list",attrs:{"data-test":"packageList"}},[e("v-row",{staticClass:"px-4"},[e("v-col",{staticClass:"text-h6"},[t._v("Ruby Gems")])],1),t._v(" "),t._l(t.gems,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s))])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.deletePackage(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-delete\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Delete Package")])])],1)],1),t._v(" "),e("v-divider")],1)})),t._v(" "),e("v-row",{staticClass:"px-4"},[e("v-col",{staticClass:"text-h6"},[t._v("Python Packages")])],1),t._v(" "),t._l(t.python,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s))])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.deletePackage(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-delete\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Delete Package")])])],1)],1),t._v(" "),e("v-divider")],1)}))],2),t._v(" "),e("download-dialog",{model:{value:t.showDownloadDialog,callback:function(e){t.showDownloadDialog=e},expression:"showDownloadDialog"}}),t._v(" "),e("simple-text-dialog",{attrs:{title:"Process Output",text:t.processOutput},model:{value:t.showProcessOutput,callback:function(e){t.showProcessOutput=e},expression:"showProcessOutput"}})],1)},a=[],n=s(584),r=s(2509),i=s(2795),l=function(){var t=this,e=t._self._c;return e("v-dialog",{attrs:{width:"600"},model:{value:t.show,callback:function(e){t.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),t._v(" "),e("span",[t._v(" Download Gems ")]),t._v(" "),e("v-spacer")],1),t._v(" "),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("v-row",{staticClass:"my-2"},[t._v(" Select a download option ")]),t._v(" "),e("v-row",[e("v-col",[e("div",{staticClass:"px-2"},[e("v-btn",{attrs:{block:"","data-test":"searchGithub",color:"primary",disabled:t.disableSearch},on:{click:t.searchGithub}},[t._v("\n Github\n "),e("v-icon",{attrs:{right:"",dark:""}},[t._v(" mdi-github ")])],1)],1)])],1),t._v(" "),e("v-row",{staticClass:"mt-5"},[t._v(" Community Gems ")]),t._v(" "),t.listData.length<1?e("div",{staticClass:"mt-4"},[e("v-row",{staticClass:"mx-2"},[e("span",[t._v(" I’m sorry, Dave. No gems available.... ")])])],1):e("div",{staticClass:"mt-4"},t._l(t.listData,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s.name))])],1),t._v(" "),e("v-list-item-icon",[t.activeDownload?e("div",[e("v-progress-circular",{attrs:{indeterminate:"",color:"primary"}})],1):e("div",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({attrs:{disabled:t.activeDownload},on:{click:function(e){return t.downloadGem(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-cloud-download\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Download Gem")])])],1)])],1),t._v(" "),o<t.listData.length-1?e("v-divider",{key:o}):t._e()],1)})),0)],1)])],1)],1)},c=[],p=s(3816);const u={props:{value:Boolean},data(){return{url:"",type:null,response:null,activeDownload:!1,disableSearch:!1,expanded:[]}},computed:{show:{get(){return this.value},set(t){this.$emit("input",t)}},listData:function(){return this.response?"github"===this.type?this.parseGithub():this.parseRuby():[]}},methods:{parseGithub:function(){const t=/\w+.gem/;return this.response.tree.filter((e=>t.exec(e.path))).map((t=>({name:t.path,url:`https://raw.github.com/OpenC3/openc3-tools/main/${t.path}`})))},getResponse:function(){this.disableSearch=!0,p.A.get(this.url).then((t=>{this.response=t.data})),setTimeout((()=>{this.disableSearch=!1}),1e4)},searchGithub:function(){this.type="github",this.url="https://api.github.com/repos/OpenC3/openc3-tools/git/trees/main?recursive=1",this.getResponse()},downloadGem:function(t){const e=document.createElement("a");e.href=t.url,e.setAttribute("download",t.name),e.click(),e.remove()}}},d=u;var v=s(2401),h=(0,v.A)(d,l,c,!1,null,null,null);const m=h.exports;var _=s(3348);const g={components:{DownloadDialog:m,SimpleTextDialog:_.A},data(){return{showDownloadDialog:!1,showProcessOutput:!1,processOutput:"",files:[],loadingPackage:!1,progress:0,gems:[],python:[],processes:{},alert:"",alertType:"success",showAlert:!1}},mounted(){this.update(),this.updateProcesses()},methods:{showOutput:function(t){this.processOutput=t.output,this.showProcessOutput=!0},update(){i.A.get("/openc3-api/packages").then((t=>{this.gems=t.data.ruby,this.python=t.data.python}))},updateProcesses:function(){i.A.get("/openc3-api/process_status/package_?substr=true").then((t=>{this.processes=t.data,Object.keys(this.processes).length>0&&setTimeout((()=>{this.updateProcesses(),this.update()}),1e4)}))},formatDate(t){return(0,n.GP)((0,r.a)(parseInt(t)/1e6),"yyyy-MM-dd HH:mm:ss.SSS")},upload:function(){this.loadingPackage=!0,this.progress=0;let t=this;const e=this.files.map((e=>{const s=new FormData;return s.append("package",e,e.name),i.A.post("/openc3-api/packages",{data:s,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:function(e){var s=Math.round(100*e.loaded/e.total);t.progress=s}})}));Promise.all(e).then((t=>{this.progress=100,this.alert=`Uploaded ${t.length} package${t.length>1?"s":""}`,this.alertType="success",this.showAlert=!0,this.loadingPackage=!1,this.files=[],setTimeout((()=>{this.showAlert=!1,this.updateProcesses()}),5e3),this.update()})).catch((t=>{this.loadingPackage=!1}))},deletePackage:function(t){this.$dialog.confirm(`Are you sure you want to remove: ${t}`,{okText:"Delete",cancelText:"Cancel"}).then((function(e){return i.A.delete(`/openc3-api/packages/${t}`)})).then((e=>{this.alert=`Removed package ${t}`,this.alertType="success",this.showAlert=!0,setTimeout((()=>{this.showAlert=!1}),5e3),this.update()}))}}},f=g;s(4758);var w=(0,v.A)(f,o,a,!1,null,"3fdf3675",null);const k=w.exports},5582:(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>l});var o=s(6758),a=s.n(o),n=s(935),r=s.n(n),i=r()(a());i.push([t.id,".v-subheader[data-v-3fdf3675]{font-size:1rem}.list[data-v-3fdf3675]{background-color:var(--color-background-surface-default)!important}",""]);const l=i},4758:(t,e,s)=>{var o=s(5582);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[t.id,o,""]]),o.locals&&(t.exports=o.locals);var a=s(4825).A;a("29507692",o,!0,{sourceMap:!1,shadowMode:!1})}}]);
1
+ (self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[56],{2795:(t,e,s)=>{"use strict";s.d(e,{A:()=>i});var o=s(2673);const a=async function(t,e,{data:s,params:a={},headers:n,noAuth:r=!1,noScope:i=!1,onUploadProgress:l=!1}={}){if(!r){try{let t=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);t&&OpenC3Auth.setTokens()}catch(c){OpenC3Auth.login()}n["Authorization"]=localStorage.openc3Token}return n["manual"]=!0,i||a["scope"]||(a["scope"]=window.openc3Scope),(0,o.A)({method:t,url:e,data:s,params:a,headers:n,onUploadProgress:l})},n={Accept:"application/json"},r={...n,"Content-Type":"application/json"},i={get:function(t,{params:e,headers:s=n,noScope:o,noAuth:r,onUploadProgress:i}={}){return a("get",t,{params:e,headers:s,noScope:o,noAuth:r,onUploadProgress:i})},put:function(t,{data:e,params:s,headers:o=r,noScope:n,noAuth:i,onUploadProgress:l}={}){return a("put",t,{data:e,params:s,headers:o,noScope:n,noAuth:i,onUploadProgress:l})},post:function(t,{data:e,params:s,headers:o=r,noScope:n,noAuth:i,onUploadProgress:l}={}){return a("post",t,{data:e,params:s,headers:o,noScope:n,noAuth:i,onUploadProgress:l})},delete:function(t,{params:e,headers:s=n,noScope:o,noAuth:r,onUploadProgress:i}={}){return a("delete",t,{params:e,headers:s,noScope:o,noAuth:r,onUploadProgress:i})}}},2673:(t,e,s)=>{"use strict";s.d(e,{A:()=>i});var o=s(3816),a=s(1649);const n=new a["default"],r=o.A.create({baseURL:location.origin,timeout:6e4,params:{}});r.interceptors.response.use((t=>t),(t=>{if(t.response){if(401===t.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(t){t&&OpenC3Auth.setTokens()})),t.response.config.headers["Ignore-Errors"]&&t.response.config.headers["Ignore-Errors"].includes(t.response.status.toString()))return Promise.reject(t);let e=`HTTP ${t.response.status} - `;throw t.response?.statusText&&(e+=`${t.response.statusText} `),t.response?.config?.data&&(e+=`${t.response.config.data} `),t.response?.data?.message?e+=`${t.response.data.message}`:t.response?.data?.exception?e+=`${t.response.data.exception}`:t.response?.data?.error?.message?(t.response.data.error.class&&(e+=`${t.response.data.error.class} `),e+=`${t.response.data.error.message}`):e+=`${t.response?.data}`,n.$notify&&n.$notify.serious({title:"Network error",body:e}),t}throw t}));const i=r},3348:(t,e,s)=>{"use strict";s.d(e,{A:()=>c});var o=function(){var t=this,e=t._self._c;return e("v-dialog",{attrs:{width:t.width},model:{value:t.show,callback:function(e){t.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),t._v(" "),e("span",[t._v(" "+t._s(t.title)+" ")]),t._v(" "),e("v-spacer"),t._v(" "),e("div",{staticClass:"mx-2"},[e("v-tooltip",{attrs:{top:""},scopedSlots:t._u([{key:"activator",fn:function({on:s,attrs:o}){return[e("div",t._g(t._b({},"div",o,!1),s),[e("v-icon",{attrs:{"data-test":"downloadIcon"},on:{click:t.download}},[t._v("\n mdi-download\n ")])],1)]}}])},[t._v(" "),e("span",[t._v(" Download ")])])],1)],1),t._v(" "),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("span",{staticStyle:{"white-space":"pre-wrap"}},[t._v(t._s(t.text))])])]),t._v(" "),e("v-card-actions",[e("v-spacer"),t._v(" "),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(e){t.show=!t.show}}},[t._v(" Ok ")])],1)],1)],1)},a=[];s(3165),s(4541),s(4397),s(1412),s(1883),s(7905);const n={props:{value:Boolean,text:String,title:String,width:800},computed:{show:{get(){return this.value},set(t){this.$emit("input",t)}}},methods:{download:function(){const t=new Blob([this.text],{type:"text/plain"}),e=document.createElement("a");e.href=URL.createObjectURL(t),e.setAttribute("download",`${this.title}.txt`),e.click()}}},r=n;var i=s(2401),l=(0,i.A)(r,o,a,!1,null,null,null);const c=l.exports},3056:(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>k});var o=function(){var t=this,e=t._self._c;return e("div",[e("v-row",{staticClass:"px-2",attrs:{"no-gutters":"",align:"center"}},[e("v-col",[e("v-file-input",{ref:"fileInput",staticClass:"mx-2",attrs:{multiple:"","show-size":"",accept:".gem,.gz,.zip,.whl",label:"Click to select file(s) to add to COSMOS"},model:{value:t.files,callback:function(e){t.files=e},expression:"files"}})],1),t._v(" "),e("v-col",{staticClass:"ml-4 mr-2",attrs:{cols:"4"}},[e("rux-progress",{attrs:{value:t.progress}})],1),t._v(" "),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary","data-test":"packageUpload",disabled:t.files.length<1,loading:t.loadingPackage},on:{click:function(e){return t.upload()}},scopedSlots:t._u([{key:"loader",fn:function(){return[e("span",[t._v("Loading...")])]},proxy:!0}])},[e("v-icon",{attrs:{left:"",dark:""}},[t._v("mdi-cloud-upload")]),t._v(" "),e("span",[t._v(" Upload ")])],1)],1),t._v(" "),e("v-alert",{attrs:{dismissible:"",transition:"scale-transition",type:t.alertType},model:{value:t.showAlert,callback:function(e){t.showAlert=e},expression:"showAlert"}},[t._v(t._s(t.alert))]),t._v(" "),Object.keys(t.processes).length>0?e("v-list",{staticClass:"list",attrs:{"data-test":"process-list"}},[e("v-row",{staticClass:"px-4",attrs:{"no-gutters":""}},[e("v-col",{staticClass:"text-h6"},[t._v("Process List")]),t._v(" "),e("v-col",{attrs:{align:"right"}},[e("div",[t._v("Showing last 10 min of activity")])])],1),t._v(" "),t._l(t.processes,(function(s){return e("div",{key:s.name},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[e("span",{class:s.state.toLowerCase(),domProps:{textContent:t._s(`Processing ${s.process_type}: ${s.detail} - ${s.state}`)}})]),t._v(" "),e("v-list-item-subtitle",[e("span",{domProps:{textContent:t._s(" Updated At: "+t.formatDate(s.updated_at))}})])],1),t._v(" "),"Running"!==s.state?e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.showOutput(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-eye\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Show Output")])])],1):t._e()],1),t._v(" "),e("v-divider")],1)}))],2):t._e(),t._v(" "),e("v-list",{staticClass:"list",attrs:{"data-test":"packageList"}},[e("v-row",{staticClass:"px-4"},[e("v-col",{staticClass:"text-h6"},[t._v("Ruby Gems")])],1),t._v(" "),t._l(t.gems,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s))])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.deletePackage(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-delete\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Delete Package")])])],1)],1),t._v(" "),e("v-divider")],1)})),t._v(" "),e("v-row",{staticClass:"px-4"},[e("v-col",{staticClass:"text-h6"},[t._v("Python Packages")])],1),t._v(" "),t._l(t.python,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s))])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.deletePackage(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-delete\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Delete Package")])])],1)],1),t._v(" "),e("v-divider")],1)}))],2),t._v(" "),e("download-dialog",{model:{value:t.showDownloadDialog,callback:function(e){t.showDownloadDialog=e},expression:"showDownloadDialog"}}),t._v(" "),e("simple-text-dialog",{attrs:{title:"Process Output",text:t.processOutput},model:{value:t.showProcessOutput,callback:function(e){t.showProcessOutput=e},expression:"showProcessOutput"}})],1)},a=[],n=s(524),r=s(8494),i=s(2795),l=function(){var t=this,e=t._self._c;return e("v-dialog",{attrs:{width:"600"},model:{value:t.show,callback:function(e){t.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),t._v(" "),e("span",[t._v(" Download Gems ")]),t._v(" "),e("v-spacer")],1),t._v(" "),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("v-row",{staticClass:"my-2"},[t._v(" Select a download option ")]),t._v(" "),e("v-row",[e("v-col",[e("div",{staticClass:"px-2"},[e("v-btn",{attrs:{block:"","data-test":"searchGithub",color:"primary",disabled:t.disableSearch},on:{click:t.searchGithub}},[t._v("\n Github\n "),e("v-icon",{attrs:{right:"",dark:""}},[t._v(" mdi-github ")])],1)],1)])],1),t._v(" "),e("v-row",{staticClass:"mt-5"},[t._v(" Community Gems ")]),t._v(" "),t.listData.length<1?e("div",{staticClass:"mt-4"},[e("v-row",{staticClass:"mx-2"},[e("span",[t._v(" I’m sorry, Dave. No gems available.... ")])])],1):e("div",{staticClass:"mt-4"},t._l(t.listData,(function(s,o){return e("div",{key:o},[e("v-list-item",[e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(s.name))])],1),t._v(" "),e("v-list-item-icon",[t.activeDownload?e("div",[e("v-progress-circular",{attrs:{indeterminate:"",color:"primary"}})],1):e("div",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:a}){return[e("v-icon",t._g(t._b({attrs:{disabled:t.activeDownload},on:{click:function(e){return t.downloadGem(s)}}},"v-icon",a,!1),o),[t._v("\n mdi-cloud-download\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Download Gem")])])],1)])],1),t._v(" "),o<t.listData.length-1?e("v-divider",{key:o}):t._e()],1)})),0)],1)])],1)],1)},c=[],p=s(3816);const u={props:{value:Boolean},data(){return{url:"",type:null,response:null,activeDownload:!1,disableSearch:!1,expanded:[]}},computed:{show:{get(){return this.value},set(t){this.$emit("input",t)}},listData:function(){return this.response?"github"===this.type?this.parseGithub():this.parseRuby():[]}},methods:{parseGithub:function(){const t=/\w+.gem/;return this.response.tree.filter((e=>t.exec(e.path))).map((t=>({name:t.path,url:`https://raw.github.com/OpenC3/openc3-tools/main/${t.path}`})))},getResponse:function(){this.disableSearch=!0,p.A.get(this.url).then((t=>{this.response=t.data})),setTimeout((()=>{this.disableSearch=!1}),1e4)},searchGithub:function(){this.type="github",this.url="https://api.github.com/repos/OpenC3/openc3-tools/git/trees/main?recursive=1",this.getResponse()},downloadGem:function(t){const e=document.createElement("a");e.href=t.url,e.setAttribute("download",t.name),e.click(),e.remove()}}},d=u;var v=s(2401),h=(0,v.A)(d,l,c,!1,null,null,null);const m=h.exports;var _=s(3348);const g={components:{DownloadDialog:m,SimpleTextDialog:_.A},data(){return{showDownloadDialog:!1,showProcessOutput:!1,processOutput:"",files:[],loadingPackage:!1,progress:0,gems:[],python:[],processes:{},alert:"",alertType:"success",showAlert:!1}},mounted(){this.update(),this.updateProcesses()},methods:{showOutput:function(t){this.processOutput=t.output,this.showProcessOutput=!0},update(){i.A.get("/openc3-api/packages").then((t=>{this.gems=t.data.ruby,this.python=t.data.python}))},updateProcesses:function(){i.A.get("/openc3-api/process_status/package_?substr=true").then((t=>{this.processes=t.data,Object.keys(this.processes).length>0&&setTimeout((()=>{this.updateProcesses(),this.update()}),1e4)}))},formatDate(t){return(0,n.GP)((0,r.a)(parseInt(t)/1e6),"yyyy-MM-dd HH:mm:ss.SSS")},upload:function(){this.loadingPackage=!0,this.progress=0;let t=this;const e=this.files.map((e=>{const s=new FormData;return s.append("package",e,e.name),i.A.post("/openc3-api/packages",{data:s,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:function(e){var s=Math.round(100*e.loaded/e.total);t.progress=s}})}));Promise.all(e).then((t=>{this.progress=100,this.alert=`Uploaded ${t.length} package${t.length>1?"s":""}`,this.alertType="success",this.showAlert=!0,this.loadingPackage=!1,this.files=[],setTimeout((()=>{this.showAlert=!1,this.updateProcesses()}),5e3),this.update()})).catch((t=>{this.loadingPackage=!1}))},deletePackage:function(t){this.$dialog.confirm(`Are you sure you want to remove: ${t}`,{okText:"Delete",cancelText:"Cancel"}).then((function(e){return i.A.delete(`/openc3-api/packages/${t}`)})).then((e=>{this.alert=`Removed package ${t}`,this.alertType="success",this.showAlert=!0,setTimeout((()=>{this.showAlert=!1}),5e3),this.update()}))}}},f=g;s(4758);var w=(0,v.A)(f,o,a,!1,null,"3fdf3675",null);const k=w.exports},5582:(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>l});var o=s(6758),a=s.n(o),n=s(935),r=s.n(n),i=r()(a());i.push([t.id,".v-subheader[data-v-3fdf3675]{font-size:1rem}.list[data-v-3fdf3675]{background-color:var(--color-background-surface-default)!important}",""]);const l=i},4758:(t,e,s)=>{var o=s(5582);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[t.id,o,""]]),o.locals&&(t.exports=o.locals);var a=s(4825).A;a("29507692",o,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
2
  //# sourceMappingURL=56.js.map
@@ -0,0 +1,2 @@
1
+ (self["webpackChunk_openc3_cosmos_tool_admin"]=self["webpackChunk_openc3_cosmos_tool_admin"]||[]).push([[569],{2795:(t,e,o)=>{"use strict";o.d(e,{A:()=>r});var s=o(2673);const n=async function(t,e,{data:o,params:n={},headers:a,noAuth:i=!1,noScope:r=!1,onUploadProgress:l=!1}={}){if(!i){try{let t=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);t&&OpenC3Auth.setTokens()}catch(d){OpenC3Auth.login()}a["Authorization"]=localStorage.openc3Token}return a["manual"]=!0,r||n["scope"]||(n["scope"]=window.openc3Scope),(0,s.A)({method:t,url:e,data:o,params:n,headers:a,onUploadProgress:l})},a={Accept:"application/json"},i={...a,"Content-Type":"application/json"},r={get:function(t,{params:e,headers:o=a,noScope:s,noAuth:i,onUploadProgress:r}={}){return n("get",t,{params:e,headers:o,noScope:s,noAuth:i,onUploadProgress:r})},put:function(t,{data:e,params:o,headers:s=i,noScope:a,noAuth:r,onUploadProgress:l}={}){return n("put",t,{data:e,params:o,headers:s,noScope:a,noAuth:r,onUploadProgress:l})},post:function(t,{data:e,params:o,headers:s=i,noScope:a,noAuth:r,onUploadProgress:l}={}){return n("post",t,{data:e,params:o,headers:s,noScope:a,noAuth:r,onUploadProgress:l})},delete:function(t,{params:e,headers:o=a,noScope:s,noAuth:i,onUploadProgress:r}={}){return n("delete",t,{params:e,headers:o,noScope:s,noAuth:i,onUploadProgress:r})}}},2673:(t,e,o)=>{"use strict";o.d(e,{A:()=>r});var s=o(3816),n=o(1649);const a=new n["default"],i=s.A.create({baseURL:location.origin,timeout:6e4,params:{}});i.interceptors.response.use((t=>t),(t=>{if(t.response){if(401===t.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(t){t&&OpenC3Auth.setTokens()})),t.response.config.headers["Ignore-Errors"]&&t.response.config.headers["Ignore-Errors"].includes(t.response.status.toString()))return Promise.reject(t);let e=`HTTP ${t.response.status} - `;throw t.response?.statusText&&(e+=`${t.response.statusText} `),t.response?.config?.data&&(e+=`${t.response.config.data} `),t.response?.data?.message?e+=`${t.response.data.message}`:t.response?.data?.exception?e+=`${t.response.data.exception}`:t.response?.data?.error?.message?(t.response.data.error.class&&(e+=`${t.response.data.error.class} `),e+=`${t.response.data.error.message}`):e+=`${t.response?.data}`,a.$notify&&a.$notify.serious({title:"Network error",body:e}),t}throw t}));const r=i},1215:(t,e,o)=>{"use strict";o.d(e,{A:()=>c});var s=function(){var t=this,e=t._self._c;return e("v-dialog",{attrs:{width:"85vw"},model:{value:t.show,callback:function(e){t.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),t._v(" "),e("span",{domProps:{textContent:t._s(t.title)}}),t._v(" "),e("v-spacer"),t._v(" "),e("div",{staticClass:"mx-2"},[e("v-tooltip",{attrs:{top:""},scopedSlots:t._u([{key:"activator",fn:function({on:o,attrs:s}){return[e("div",t._g(t._b({},"div",s,!1),o),[e("v-icon",{attrs:{"data-test":"downloadIcon"},on:{click:t.download}},[t._v("\n mdi-download\n ")])],1)]}}])},[t._v(" "),e("span",[t._v(" Download ")])])],1)],1),t._v(" "),e("v-card-text",[e("pre",{ref:"editor",staticClass:"editor"})]),t._v(" "),e("v-card-actions",[e("v-spacer"),t._v(" "),e("v-btn",{attrs:{color:"primary"},on:{click:t.close}},[t._v(" Ok ")])],1)],1)],1)},n=[],a=(o(3165),o(4541),o(4397),o(1412),o(1883),o(7905),o(1841));o(2739),o(6049),o(5617),o(6717),o(9946);const i={props:{content:{type:String,required:!0},type:String,name:String,value:Boolean,filename:{type:String,required:!1}},data(){return{editor:null}},mounted(){const t=this.buildPluginMode();this.editor=a.edit(this.$refs.editor),this.editor.setTheme("ace/theme/twilight"),this.editor.session.setMode(new t),this.editor.session.setTabSize(2),this.editor.session.setUseWrapMode(!0),this.editor.$blockScrolling=1/0,this.editor.setHighlightActiveLine(!1),this.editor.setValue(this.content),this.editor.clearSelection(),this.editor.focus(),this.editor.setReadOnly(!0)},beforeDestroy(){this.editor&&this.editor.destroy()},computed:{show:{get(){return this.value},set(t){this.$emit("input",t)}},title:function(){return`${this.type}: ${this.name}`}},methods:{close:function(){this.show=!this.show},download:function(){const t=new Blob([this.editor.getValue()],{type:"text/plain"});let e=`${this.type.toLowerCase()}_${this.name.toLowerCase()}.json`;this.filename&&(e=this.filename);const o=document.createElement("a");o.href=URL.createObjectURL(t),o.setAttribute("download",e),o.click()},buildPluginMode(){let t=a.require("ace/lib/oop"),e=a.require("ace/mode/json_highlight_rules").JsonHighlightRules,o=a.require("ace/mode/matching_brace_outdent").MatchingBraceOutdent,s=a.require("ace/mode/behaviour/cstyle").CstyleBehaviour,n=a.require("ace/mode/folding/ruby").FoldMode,i=function(){this.HighlightRules=e,this.$outdent=new o,this.$behaviour=new s,this.foldingRules=new n,this.indentKeywords=this.foldingRules.indentKeywords},r=a.require("ace/mode/ruby").Mode;return t.inherits(i,r),function(){this.$id="ace/mode/openc3"}.call(i.prototype),i}}},r=i;o(518);var l=o(2401),d=(0,l.A)(r,s,n,!1,null,"6a293680",null);const c=d.exports},2569:(t,e,o)=>{"use strict";o.r(e),o.d(e,{default:()=>u});var s=function(){var t=this,e=t._self._c;return e("div",[e("v-row",{staticStyle:{"padding-left":"10px"},attrs:{"no-gutters":"",align:"center"}},[e("v-col",{attrs:{cols:"3"}},[e("v-btn",{attrs:{block:"",color:"primary","data-test":"toolAdd",disabled:!t.name||!t.url||!t.icon},on:{click:function(e){return t.add()}}},[t._v("\n Add\n "),e("v-icon",{attrs:{right:"",dark:""}},[t._v(t._s(t.icon))])],1)],1),t._v(" "),e("v-col",{attrs:{cols:"3"}},[e("v-text-field",{staticClass:"px-2",attrs:{label:"Tool Icon"},model:{value:t.icon,callback:function(e){t.icon=e},expression:"icon"}})],1),t._v(" "),e("v-col",{attrs:{cols:"3"}},[e("v-text-field",{staticClass:"px-2",attrs:{label:"Tool Name"},model:{value:t.name,callback:function(e){t.name=e},expression:"name"}})],1),t._v(" "),e("v-col",{staticClass:"px-2",attrs:{cols:"3"}},[e("v-text-field",{attrs:{label:"Tool Url"},model:{value:t.url,callback:function(e){t.url=e},expression:"url"}})],1)],1),t._v(" "),e("span",{staticClass:"text-body1 pa-3"},[t._v("Drag and drop to reorder tools in the NavBar. Note: 'Base' and 'Admin'\n can't be reordered. A browser refresh is required to see the new tool\n order.")]),t._v(" "),e("v-list",{staticClass:"list",attrs:{"data-test":"toolList",id:"toollist"}},t._l(t.tools,(function(o,s){return e("div",{key:o},[e("v-list-item",{class:{filter:"Base"===o||"Admin"===o}},[e("v-list-item-icon",[e("v-icon",[t._v(" mdi-drag-horizontal ")])],1),t._v(" "),e("v-list-item-content",[e("v-list-item-title",[t._v(t._s(o))])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:s,attrs:n}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.editTool(o)}}},"v-icon",n,!1),s),[t._v("\n mdi-pencil\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Edit Tool")])])],1),t._v(" "),e("v-list-item-icon",[e("v-tooltip",{attrs:{bottom:""},scopedSlots:t._u([{key:"activator",fn:function({on:s,attrs:n}){return[e("v-icon",t._g(t._b({on:{click:function(e){return t.deleteTool(o)}}},"v-icon",n,!1),s),[t._v("\n mdi-delete\n ")])]}}],null,!0)},[t._v(" "),e("span",[t._v("Delete Tool")])])],1)],1),t._v(" "),s<t.tools.length-1?e("v-divider",{key:s}):t._e()],1)})),0),t._v(" "),t.showDialog?e("output-dialog",{attrs:{content:t.jsonContent,type:"Tool",name:t.dialogTitle},on:{submit:t.dialogCallback},model:{value:t.showDialog,callback:function(e){t.showDialog=e},expression:"showDialog"}}):t._e()],1)},n=[],a=o(2795),i=o(1215),r=o(3571);const l={components:{OutputDialog:i.A},data(){return{name:null,icon:"$astro-add-small",url:null,tools:[],jsonContent:"",dialogTitle:"",showDialog:!1,tool_id:null}},mounted(){this.update();var t=document.getElementById("toollist");r.Ay.create(t,{filter:".filter",onUpdate:this.sortChanged})},methods:{sortChanged(t){a.A.post(`/openc3-api/tools/position/${this.tools[t.oldIndex]}`,{data:{position:t.newIndex},params:{scope:"DEFAULT"}}).then((e=>{this.$notify.normal({title:`Reordered tool ${this.tools[t.oldIndex]}`}),this.update()}))},update(){a.A.get("/openc3-api/tools",{params:{scope:"DEFAULT"}}).then((t=>{this.tools=t.data,this.name="",this.url=""}))},add(){a.A.post("/openc3-api/tools",{data:{id:this.name,json:JSON.stringify({name:this.name,icon:this.icon,url:this.url,window:"NEW"})},params:{scope:"DEFAULT"}}).then((t=>{this.$notify.normal({title:`Added tool ${this.name}`}),this.update()}))},editTool(t){a.A.get(`/openc3-api/tools/${t}`,{params:{scope:"DEFAULT"}}).then((e=>{this.tool_id=t,this.jsonContent=JSON.stringify(e.data,null,"\t"),this.dialogTitle=t,this.showDialog=!0}))},dialogCallback(t){if(this.showDialog=!1,null!==t){let e=JSON.parse(t),o="put",s=`/openc3-api/tools/${this.tool_id}`;e["name"]!==this.tool_id&&(o="post",s="/openc3-api/tools"),a.A[o](s,{data:{json:t},params:{scope:"DEFAULT"}}).then((t=>{this.$notify.normal({title:`Modified tool ${e["name"]}`}),this.update()}))}},deleteTool(t){this.$dialog.confirm(`Are you sure you want to remove: ${t}`,{okText:"Delete",cancelText:"Cancel"}).then((function(e){return a.A.delete(`/openc3-api/tools/${t}`,{params:{scope:"DEFAULT"}})})).then((e=>{this.$notify.normal({title:`Removed tool ${t}`}),this.update()}))}}},d=l;o(650);var c=o(2401),p=(0,c.A)(d,s,n,!1,null,"706d544d",null);const u=p.exports},990:(t,e,o)=>{"use strict";o.r(e),o.d(e,{default:()=>l});var s=o(6758),n=o.n(s),a=o(935),i=o.n(a),r=i()(n());r.push([t.id,".editor[data-v-6a293680]{height:75vh;width:80vw;position:relative;font-size:16px}.v-textarea[data-v-6a293680] textarea{padding:5px}",""]);const l=r},8485:(t,e,o)=>{"use strict";o.r(e),o.d(e,{default:()=>l});var s=o(6758),n=o.n(s),a=o(935),i=o.n(a),r=i()(n());r.push([t.id,".list[data-v-706d544d]{background-color:var(--color-background-surface-default)!important}",""]);const l=r},518:(t,e,o)=>{var s=o(990);s.__esModule&&(s=s.default),"string"===typeof s&&(s=[[t.id,s,""]]),s.locals&&(t.exports=s.locals);var n=o(4825).A;n("e5235e94",s,!0,{sourceMap:!1,shadowMode:!1})},650:(t,e,o)=>{var s=o(8485);s.__esModule&&(s=s.default),"string"===typeof s&&(s=[[t.id,s,""]]),s.locals&&(t.exports=s.locals);var n=o(4825).A;n("fe4603ba",s,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
+ //# sourceMappingURL=569.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js/569.js","mappings":"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","sources":["webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/api.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/services/axios.js","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/OutputDialog.vue","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/OutputDialog.vue?215b","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/OutputDialog.vue?4892","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/ToolsTab.vue","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/ToolsTab.vue?6b01","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/ToolsTab.vue?dc3d","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/OutputDialog.vue?01af","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/ToolsTab.vue?a3c7","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/components/OutputDialog.vue?aa0b","webpack://@openc3/cosmos-tool-admin/../openc3-tool-common/src/tools/admin/tabs/ToolsTab.vue?c0b8"],"sourcesContent":["/*\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport axios from './axios.js'\n\nconst request = async function (\n method,\n url,\n {\n data,\n params = {},\n headers,\n noAuth = false,\n noScope = false,\n onUploadProgress = false,\n } = {}\n) {\n if (!noAuth) {\n try {\n let refreshed = await OpenC3Auth.updateToken(\n OpenC3Auth.defaultMinValidity\n )\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n } catch (error) {\n OpenC3Auth.login()\n }\n headers['Authorization'] = localStorage.openc3Token\n }\n // Everything from the front-end is manual by default\n // The various api methods decide whether to pass the manual\n // flag to the authorize routine\n headers['manual'] = true\n if (!noScope && !params['scope']) {\n params['scope'] = window.openc3Scope\n }\n return axios({\n method,\n url,\n data,\n params,\n headers,\n onUploadProgress,\n })\n}\n\nconst acceptOnlyDefaultHeaders = {\n Accept: 'application/json',\n}\n\nconst fullDefaultHeaders = {\n ...acceptOnlyDefaultHeaders,\n 'Content-Type': 'application/json',\n}\n\nexport default {\n get: function (\n path,\n {\n params,\n headers = acceptOnlyDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('get', path, {\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n put: function (\n path,\n {\n data,\n params,\n headers = fullDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('put', path, {\n data,\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n post: function (\n path,\n {\n data,\n params,\n headers = fullDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('post', path, {\n data,\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n\n delete: function (\n path,\n {\n params,\n headers = acceptOnlyDefaultHeaders,\n noScope,\n noAuth,\n onUploadProgress,\n } = {}\n ) {\n return request('delete', path, {\n params,\n headers,\n noScope,\n noAuth,\n onUploadProgress,\n })\n },\n}\n","/*\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport axios from 'axios'\nimport Vue from 'vue'\n\nconst vueInstance = new Vue()\n\nconst axiosInstance = axios.create({\n baseURL: location.origin,\n timeout: 60000,\n params: {},\n})\n\naxiosInstance.interceptors.response.use(\n (response) => response,\n (error) => {\n if (error.response) {\n if (error.response.status === 401) {\n OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity, true).then(\n function (refreshed) {\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n },\n )\n }\n // Individual tools can set 'Ignore-Errors' to an error code\n // they potentially expect, e.g. '500', in which case we ignore it\n // For example in CommandSender.vue:\n // obs = this.api.cmd(targetName, commandName, paramList, {\n // headers: {\n // 'Ignore-Errors': '404',\n // },\n // })\n if (\n error.response.config.headers['Ignore-Errors'] &&\n error.response.config.headers['Ignore-Errors'].includes(\n error.response.status.toString(),\n )\n ) {\n return Promise.reject(error)\n }\n let body = `HTTP ${error.response.status} - `\n if (error.response?.statusText) {\n body += `${error.response.statusText} `\n }\n if (error.response?.config?.data) {\n body += `${error.response.config.data} `\n }\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n if (vueInstance.$notify) {\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n }\n throw error\n } else {\n throw error\n }\n },\n)\n\nexport default axiosInstance\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{attrs:{\"width\":\"85vw\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[_c('v-system-bar',[_c('v-spacer'),_vm._v(\" \"),_c('span',{domProps:{\"textContent\":_vm._s(_vm.title)}}),_vm._v(\" \"),_c('v-spacer'),_vm._v(\" \"),_c('div',{staticClass:\"mx-2\"},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('div',_vm._g(_vm._b({},'div',attrs,false),on),[_c('v-icon',{attrs:{\"data-test\":\"downloadIcon\"},on:{\"click\":_vm.download}},[_vm._v(\"\\n mdi-download\\n \")])],1)]}}])},[_vm._v(\" \"),_c('span',[_vm._v(\" Download \")])])],1)],1),_vm._v(\" \"),_c('v-card-text',[_c('pre',{ref:\"editor\",staticClass:\"editor\"})]),_vm._v(\" \"),_c('v-card-actions',[_c('v-spacer'),_vm._v(\" \"),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.close}},[_vm._v(\" Ok \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputDialog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OutputDialog.vue?vue&type=template&id=6a293680&scoped=true\"\nimport script from \"./OutputDialog.vue?vue&type=script&lang=js\"\nexport * from \"./OutputDialog.vue?vue&type=script&lang=js\"\nimport style0 from \"./OutputDialog.vue?vue&type=style&index=0&id=6a293680&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6a293680\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('v-row',{staticStyle:{\"padding-left\":\"10px\"},attrs:{\"no-gutters\":\"\",\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"primary\",\"data-test\":\"toolAdd\",\"disabled\":!_vm.name || !_vm.url || !_vm.icon},on:{\"click\":function($event){return _vm.add()}}},[_vm._v(\"\\n Add\\n \"),_c('v-icon',{attrs:{\"right\":\"\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.icon))])],1)],1),_vm._v(\" \"),_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-text-field',{staticClass:\"px-2\",attrs:{\"label\":\"Tool Icon\"},model:{value:(_vm.icon),callback:function ($$v) {_vm.icon=$$v},expression:\"icon\"}})],1),_vm._v(\" \"),_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-text-field',{staticClass:\"px-2\",attrs:{\"label\":\"Tool Name\"},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}})],1),_vm._v(\" \"),_c('v-col',{staticClass:\"px-2\",attrs:{\"cols\":\"3\"}},[_c('v-text-field',{attrs:{\"label\":\"Tool Url\"},model:{value:(_vm.url),callback:function ($$v) {_vm.url=$$v},expression:\"url\"}})],1)],1),_vm._v(\" \"),_c('span',{staticClass:\"text-body1 pa-3\"},[_vm._v(\"Drag and drop to reorder tools in the NavBar. Note: 'Base' and 'Admin'\\n can't be reordered. A browser refresh is required to see the new tool\\n order.\")]),_vm._v(\" \"),_c('v-list',{staticClass:\"list\",attrs:{\"data-test\":\"toolList\",\"id\":\"toollist\"}},_vm._l((_vm.tools),function(tool,index){return _c('div',{key:tool},[_c('v-list-item',{class:{ filter: tool === 'Base' || tool === 'Admin' }},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\" mdi-drag-horizontal \")])],1),_vm._v(\" \"),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(tool))])],1),_vm._v(\" \"),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.editTool(tool)}}},'v-icon',attrs,false),on),[_vm._v(\"\\n mdi-pencil\\n \")])]}}],null,true)},[_vm._v(\" \"),_c('span',[_vm._v(\"Edit Tool\")])])],1),_vm._v(\" \"),_c('v-list-item-icon',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-icon',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.deleteTool(tool)}}},'v-icon',attrs,false),on),[_vm._v(\"\\n mdi-delete\\n \")])]}}],null,true)},[_vm._v(\" \"),_c('span',[_vm._v(\"Delete Tool\")])])],1)],1),_vm._v(\" \"),(index < _vm.tools.length - 1)?_c('v-divider',{key:index}):_vm._e()],1)}),0),_vm._v(\" \"),(_vm.showDialog)?_c('output-dialog',{attrs:{\"content\":_vm.jsonContent,\"type\":\"Tool\",\"name\":_vm.dialogTitle},on:{\"submit\":_vm.dialogCallback},model:{value:(_vm.showDialog),callback:function ($$v) {_vm.showDialog=$$v},expression:\"showDialog\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ToolsTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ToolsTab.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ToolsTab.vue?vue&type=template&id=706d544d&scoped=true\"\nimport script from \"./ToolsTab.vue?vue&type=script&lang=js\"\nexport * from \"./ToolsTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./ToolsTab.vue?vue&type=style&index=0&id=706d544d&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"706d544d\",\n null\n \n)\n\nexport default component.exports","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.editor[data-v-6a293680]{height:75vh;width:80vw;position:relative;font-size:16px}.v-textarea[data-v-6a293680] textarea{padding:5px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.list[data-v-706d544d]{background-color:var(--color-background-surface-default)!important}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputDialog.vue?vue&type=style&index=0&id=6a293680&prod&scoped=true&lang=css\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"e5235e94\", content, true, {\"sourceMap\":false,\"shadowMode\":false});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ToolsTab.vue?vue&type=style&index=0&id=706d544d&prod&scoped=true&lang=css\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"fe4603ba\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["request","async","method","url","data","params","headers","noAuth","noScope","onUploadProgress","refreshed","OpenC3Auth","updateToken","defaultMinValidity","setTokens","error","login","localStorage","openc3Token","window","openc3Scope","axios","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","path","put","post","delete","vueInstance","Vue","axiosInstance","create","baseURL","location","origin","timeout","interceptors","response","use","status","then","config","includes","toString","Promise","reject","body","statusText","message","exception","class","$notify","serious","title","render","_vm","this","_c","_self","attrs","model","value","show","callback","$$v","expression","_v","domProps","_s","staticClass","scopedSlots","_u","key","fn","on","_g","_b","download","ref","close","staticRenderFns","props","content","type","String","required","name","Boolean","filename","editor","mounted","openPluginMode","buildPluginMode","ace","$refs","setTheme","session","setMode","setTabSize","setUseWrapMode","$blockScrolling","Infinity","setHighlightActiveLine","setValue","clearSelection","focus","setReadOnly","beforeDestroy","destroy","computed","set","$emit","methods","blob","Blob","getValue","toLowerCase","link","document","createElement","href","URL","createObjectURL","setAttribute","click","oop","JsonHighlightRules","MatchingBraceOutdent","CstyleBehaviour","FoldMode","Mode","HighlightRules","$outdent","$behaviour","foldingRules","indentKeywords","RubyMode","inherits","$id","call","prototype","component","staticStyle","icon","$event","add","_l","tools","tool","index","filter","editTool","deleteTool","length","_e","showDialog","jsonContent","dialogTitle","dialogCallback","components","OutputDialog","tool_id","update","el","getElementById","Sortable","onUpdate","sortChanged","evt","Api","oldIndex","position","newIndex","scope","normal","id","json","JSON","stringify","parsed","parse","$dialog","confirm","okText","cancelText","dialog","___CSS_LOADER_EXPORT___","push","module","__esModule","default","locals","exports"],"sourceRoot":""}